Introduzione alla Simulazione Numerica



Похожие документы
Automazione Industriale (scheduling+mms) scheduling+mms.

TECNICHE DI SIMULAZIONE

Introduzione al package ARENA

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Parte 4. Progettazione di una simulazione

Tecniche di Simulazione: Introduzione. N. Del Buono:

11. Analisi statistica degli eventi idrologici estremi

CHIUSURE di MAGAZZINO di FINE ANNO

Un gioco con tre dadi

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

Esercizio 1: trading on-line

TECNICHE DI SIMULAZIONE

Sistemi di Servizio e Simulazione

Aprire WEKA Explorer Caricare il file circletrain.arff Selezionare random split al 66% come modalità di test Selezionare J48 come classificatore e

La categoria «ES» presenta (di solito) gli stessi comandi

Regressione Mario Guarracino Data Mining a.a. 2010/2011

Relazioni statistiche: regressione e correlazione

LA STATISTICA si interessa del rilevamento, dell elaborazione e dello studio dei dati; studia ciò che accade o come è fatto un gruppo numeroso di

Facciamo qualche precisazione

Scheduling della CPU

Il memory manager. Gestione della memoria centrale

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Un po di statistica. Christian Ferrari. Laboratorio di Matematica

Temi di Esame a.a Statistica - CLEF

Corso di Amministrazione di Reti A.A. 2002/2003

Corso di. Dott.ssa Donatella Cocca

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Università degli Studi di Milano Bicocca CdS ECOAMM Corso di Metodi Statistici per l Amministrazione delle Imprese CARTE DI CONTROLLO PER VARIABILI

Elementi di Psicometria con Laboratorio di SPSS 1

Esempi di algoritmi. Lezione III

OSSERVAZIONI TEORICHE Lezione n. 4

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Ing. Simone Giovannetti

Cosa dobbiamo già conoscere?

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

GESTIONE DELLE TECNOLOGIE AMBIENTALI PER SCARICHI INDUSTRIALI ED EMISSIONI NOCIVE LEZIONE 10. Angelo Bonomi

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

PROGRAMMA SVOLTO NELLA SESSIONE N.

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Gestione del processore e dei processi

Funzioni in C. Violetta Lonati

Progettaz. e sviluppo Data Base

Cenni su algoritmi, diagrammi di flusso, strutture di controllo

Cosa è un foglio elettronico

Testi di Esercizi e Quesiti 1

Potenza dello studio e dimensione campionaria. Laurea in Medicina e Chirurgia - Statistica medica 1

Soluzione dell esercizio del 2 Febbraio 2004

INFORMATICA 1 L. Mezzalira

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 12 La regressione lineare semplice

Statistica. Lezione 6

Fasi di creazione di un programma

FONDAMENTI di INFORMATICA L. Mezzalira

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

Esercitazione #5 di Statistica. Test ed Intervalli di Confidenza (per una popolazione)

FIRESHOP.NET. Gestione del taglia e colore.

Introduzione alle relazioni multivariate. Introduzione alle relazioni multivariate

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

CAPITOLO 8 LA VERIFICA D IPOTESI. I FONDAMENTI

VALORE DELLE MERCI SEQUESTRATE

Università del Piemonte Orientale. Corsi di Laurea Triennale di area tecnica. Corso di Statistica Medica

Scheduling della CPU:

1 Processo, risorsa, richiesta, assegnazione 2 Concorrenza 3 Grafo di Holt 4 Thread 5 Sincronizzazione tra processi

Gestione Iter Manuale Sistemista. Gestione Iter Manuale Sistemista

Tesina di Identificazione dei Modelli e Analisi dei Dati

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1

LEZIONE n. 5 (a cura di Antonio Di Marco)

11. Evoluzione del Software

Corso di Laurea in Ingegneria Informatica Anno Accademico 2014/2015 Calcolo delle Probabilità e Statistica Matematica

Problematiche connesse alla normativa e alle procedure antiriciclaggio per i professionisti

Esercitazione 1 del corso di Statistica 2 Prof. Domenico Vistocco

come nasce una ricerca

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

LE CARTE DI CONTROLLO (4)

Probabilità condizionata: p(a/b) che avvenga A, una volta accaduto B. Evento prodotto: Evento in cui si verifica sia A che B ; p(a&b) = p(a) x p(b/a)

La candela accesa. Descrizione generale. Obiettivi. Sequenza didattica e metodo di lavoro. Esperimenti sulla crescita delle piante

SPC e distribuzione normale con Access

Verifica e Validazione del Simulatore

Corso di Automazione Industriale 1. Capitolo 4

Istruzioni (1): L elaborato verrà letto, compilato e fatto girare per verificare la correttezza della sintassi e delle operazioni svolte

Metodi e Modelli Matematici di Probabilità per la Gestione

12. Evoluzione del Software

Appunti di Sistemi Elettronici

La variabile casuale Binomiale

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Metodi statistici per le ricerche di mercato

COLLI. Gestione dei Colli di Spedizione. Release 5.20 Manuale Operativo

Posizionamento ottimale di sensori per il monitoraggio degli inquinanti nelle reti idriche

SCHEDULATORI DI PROCESSO

Nozione di algoritmo. Gabriella Trucco

Транскрипт:

Introduzione alla Simulazione Numerica Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 1.0 - Novembre 2001 Simulazione numerica Tecnica che permette di eseguire esperimenti su un modello (realizzato al computer) che imita il funzionamento di un sistema reale Applicata a sistemi molto complessi dinamici e non stazionari risorse scarse e sistemi di code non possibili un modelli analitici soddisfacenti La simulazione è uno degli strumenti maggiormente usati nella pianificazione e gestione di sistemi produttivi e logistici Simul.2 1

Simulazione numerica (2) La simulazione di un sistema prevede la rappresentazione cronologica degli stati attraverso cui esso evolve nel tempo Il modello di simulazione è un programma che riproduce il funzionamento del sistema: Consente di modellare il sistema in modo fedele e dettagliato Consente l inclusione esplicita nel modello di non stazionarietà, stocasticità ed evoluzione nel tempo Simul.3 Inconvenienti della simulazione Non sono modelli analitici: consentono di ottenere solo stime dei valori che si vogliono osservare I fenomeni stocastici nel modello sono descritti medianti distribuzioni di probabilità I risultati che si ottengono sono variabili aleatorie (simulando più volte il sistema si hanno risultati diversi) Replicazione degli esperimenti ed analisi con metodi statistici dei risultati che si ottengono dagli esperimenti di simulazione Simul. 2

Esempio: stazione di servizio 2 blocchi per il rifornimento (risorse) unica coda FIFO per l attesa delle auto (entità) terminato il servizio le auto escono dal sistema STAZIONE 1 STAZIONE 2 Simul.5 Stazione di servizio (2) Scopo: valutare il dimensionamento dell impianto tempo in coda lunghezza media e massima della coda proporzione del tempo in cui le stazioni sono occupate Dimensionamento soddisfacente? Individuazione dei colli di bottiglia del sistema Modifica e verifica di configurazione alternative Definizione dell unità di misura del tempo Simul.6 3

Stazione di servizio (3) Se ci sono già NMAX auto in coda l auto che arriva rinuncia al servizio Reperimento di dati sui tempi del sistema frequenza degli arrivi tempo di servizio Osservazioni e/o descrizione mediante variabili casuali con distribuzioni di probabilità tipiche Ipotesi: tempo (t) espresso in minuti sistema inizialmente (t = 0) vuoto ed inattivo Simul.7 Stazione di servizio () Esempio di dati di input (noti, osservati) in minuti auto arrivo interarrivo t attesa t servizio uscita 1 0 9 9 2 7 11 3 7 3 2 18 27 13 6 12 25 5 17 8 11 36 6 21 6 5 32 7 23 2 Rinuncia 23 Simul.8

Comportamento dinamico auto arrivo interarrivo t attesa t servizio uscita 1 0 9 9 2 7 11 NMAX = 2 3 7 13 3 6 2 18 12 27 25 5 17 8 11 36 6 21 6 5 32 7 23 2 Rinuncia 23 A 1 I 1 A 2 I 2 A 3 I 3 A I A 5 A 6 A 7 I 5 I 6 rinuncia S1 S2 t F 1 F 2 F F 3 F 6 F 5 0 7 9 11 13 17 21 23 25 27 32 36 Simul.9 Input del modello dati deterministici: numero delle risorse capacità delle code tempi di trasferimento, servizio, interarrivo (??) dati stocastici: tempi di trasferimento, servizio, interarrivo (??) da descrivere mediante distribuzioni tipiche quali? con quali parametri caratteristici? vengono generati nel corso della simulazione input stocastico output stocastico: Simul.10 5

Raccolta dati Fase difficile, costosa, lunga spesso frustrante il sistema può non esistere (impossibile osservarlo) dati non disponibili o incompleti (modifica del modello) Sensitività dell output all incertezza dell input Correlazione tra modello e dati disponibili Costo della raccolta dati da considerare nel budget del progetto Garbage In, Garbage Out (GIGO) Simul.11 Raccolta dati (2) Uso diretto dei dati disponibili nella simulazione lettura da file dei dati osservati (tempi, interarrivi ) tutti i dati usati sono veri non si possono generare dati non osservati potrebbero non essere abbastanza per più prove associazione dei dati a distribuzioni tipiche (fit) vengono generati valori casuali per dati non è detto che si ottenga un buon fit dei dati si possono ottenere valori non osservati si possono generare quanti dati si vogliono Simul.12 6

Fitting dei dati a distribuzioni Le distribuzioni tipiche sono definite da una forma analitica dipentente da un limitato numero di parametri Dato un insieme di osservazioni determinare la distribuzione (uniforme, esponenziale ) determinarne i parametri Valutazione della qualità del fitting scarto tra valori osservati e generati massima verosimiglianza, minimi quadrati Simul.13 Distribuzione uniforme f(x) 1/(b a) a b x f(x) = 1/(b a) per a x b, f(x) = 0 altrimenti parametri: a, b Simul.1 7

Distribuzione esponenziale λx f(x) = λ e per x 0 parametro: λ distribuzione degli intervalli di tempo con cui si verificano fenomeni rari ed indipendenti es. arrivi delle auto alla stazione di servizio λ = tempo medio di interarrivo Simul.15 f ( x ) = σ Distribuzione normale ( x µ ) 1 2 2σ e 2 π 2 parametri: µ, σ tipico andamento a campana descrive fenomeni somma di valori casuali indipendenti es. errori di diametro di pezzi prodotti Simul.16 8

Stazione di servizio: dati Arrivo delle auto: interarrivo distribuito esponenzialmente con v.m. λ Servizio: durata distribuita uniformemente in [T1, T2] Esperimento: dati λ, T1, T2, determinare tempo medio in coda delle auto numero di auto che non si fermano Simul.17 Modello di simulazione Suddivide un sistema in un insieme di elementi (entità) interagenti tra loro per l uso delle risorse scarse del sistema, cui sono associate code le entità hanno particolari caratteristiche (attributi) Ne descrive il funzionamento in termini di: attività che producono variazioni nello stato del Sistema (Eventi) percorso seguiti dalle entità nel transito all interno del Sistema (Processi) Simul.18 9

Entità Elementi di un modello (1) attori che si muovono nel sistema, ne cambiano lo stato ed interagiscono con altre entità Sono oggetti dinamici: entrano (creazione) ed escono (distruzione) dal sistema Normalmente rappresentano entità reali (es. auto, pezzi) In un dato istante esistono più entità dello stesso tipo Possono esserci diversi tipi di entità nel sistema (es. aerei,piloti,bagagli, passeggeri) Simul.19 Attributi Elementi di un modello (2) sono le caratteristiche descrittive ed identificative delle entità Tutte le entità dello stesso tipo hanno lo stesso insieme di attributi ma ciascuna ha valori diversi istante di arrivo istante di consegna accumulatori statistici possono essere immaginati come dati locali relativi a ciascuna entità Simul.20 10

Elementi di un modello (3) Variabili (globali) caratteristiche del modello complessivo (non delle entità) numero delle stazioni di servizio capacità massima della coda istante corrente del tempo simulato dati globali accessibili a tutte le parti del modello Simul.21 Risorse Elementi di un modello () ciò per cui le entità competono: stazioni di servizio spazio, operatori, macchine le entità ottengono una risorsa, la usano e la rilasciano sono parti permanenti del sistema (vita più lunga delle entità) Una risorsa può essere presente in più copie stazioni di servizio posti di un ristorante il numero può variare nel corso della simulazione Simul.22 11

C ode Elementi di un modello (5) luoghi nei quali le entità attendono la liberazione delle risorse generalmente sono collegate alle risorse Capacità infinita Capacità finita (cosa succede alle entità che arrivano a coda piena?) Politica di gestione della coda: FIFO (First In First Out) LIFO (Last In First Out) ordinata in base a valori degli attributi Simul.23 Elementi di un modello (6) Accumulatori statistici memorizzano le informazioni che si desidera osservare tempo medio nel sistema delle entità tempo medio in coda delle entità lunghezze medie delle code numero di entità simulate sono assimilabili a variabili globali Simul.2 12

Costruzione del modello (1) Richiede un elevato grado di conoscenza del sistema da simulare Diagramma di flusso per descrivere evoluzione e relazioni causa-effetto del sistema Individuazione delle componenti fondamentali (descrizione statica) Collegamento tra le componenti (descrizione dinamica) Regole operative che determinano il comportamento dei componenti ed il verificarsi degli eventi Definizione di distribuzioni di probabilitá Simul.25 Costruzione del modello (2) Non sempre un modello molto dettagliato consente di ottenere un maggior grado di informazione sul sistema Se il comportamento di un elemento non puó essere descritto in modo deterministico, meglio usare un fenomeno casuale piuttosto che valori medi Il modello puó essere formalizzato ottenendo un Programma di Simulazione eseguibile su calcolatore Simul.26 13

Costruzione del modello (3) Il programma viene attivato usando numeri casuali per generare eventi simulati nel tempo Ripetendo l esperimento si possono ottenere informazioni statistiche sul comportamento del sistlema Cambiando configurazione, si identifica la più promettente Simul.27 Programmazione degli Eventi (1) Evento: Istante in cui avviene una modifica dello stato (arrivo di un auto.) Sottoprogramma che contiene le istruzioni da eseguire nell istante in cui l evento avviene Eventi esogeni: esecuzione causata dall esterno (es. inizio simulazione, fine simulazione) Eventi endogeni: esecuzione causata da altri eventi (es. arrivo di un auto, fine servizio) Simul.28 1

Programmazione degli Eventi (2) Quando si verifica un evento si considerano tutte le sue possibili implicazioni sul sistema: aggiornamento dello stato (variabili globali, risorse) aggiornamento accumulatori statistici aggiornamento orologio del sistema Ogni evento determina quali eventi debbano avvenire nel futuro: dello stesso tipo di tipo diverso ed in quale istante avvengono (li innesca ) Simul.29 Programmazione degli Eventi (3) Coda del tempo: insieme ordinato degli eventi che devono avvenire (innescati) Al termine dell esecuzione di un evento si manda in esecuzione il prossimo prelevandolo dalla coda E necessario specificare la regola di terminazione spegnimento del sistema (coda del tempo vuota) trascorso un certo tempo simulato Simul.30 15

Diagramma degli inneschi sintetizza il comportamento dinamico del sistema Non c è coda INIZIO ARRIVO AUTO INIZIO SERVIZIO FINE C è coda SERVIZIO Simul.31 Stazione di servizio: eventi (1) Inizio Simulazione evento esogeno lettura dei parametri di ingresso (λ, T1, T2, NMAX, ) inizializzazione dello stato del sistema (stato stazioni, numero auto nel sistema, ) inizializzazione delle code avviamento del sistema (innesco del primo arrivo di un auto) Simul.32 16

Diagramma di flusso (1) INIZIO I leggi i parametri di ingresso; inizializza lo stato del sistema; innesca il primo evento ARRIVO subito; U Simul.33 Stazione di servizio: eventi (2) Arrivo di un auto evento endogeno generazione ritardo e innesco prossimo ARRIVO creazione entità auto arrivata se esiste stazione libera (K): occupala ed innesca un evento INIZIO SERVIZIO per l auto, altrimenti se coda contiene meno di NMAX auto: inserisci l auto in coda, altrimenti distruggi l auto (esce dal sistema) Simul.3 17

Diagramma di flusso (2) I ARRIVO F T:= valore casuale con disp. esp. V.M. λ; innesca prossimoarrivo con ritardo T Stampa le statistiche Ci sono NMAX auto in CODA? NO SI Raccogli le statistiche Considerate tutte le auto? NO SI Genera l auto Esiste stazione K libera? NO SI Occupa la stazione K; innesca un evento INIZIO_SERVIZIO per l auto e la stazione K con ritardo 0 U Inserisci l auto nell insieme CODA Simul.35 Stazione di servizio: eventi (3) Inizio servizio evento endogeno occupazione della stazione generazione ritardo e innesco evento FINE SERVIZIO INIZIO SERVIZIO I T:= valore casuale con distr. unif. in[t1,t2]; innesca un FINE SERVIZIO per l auto sulla stazione corrente con ritardo T; U Simul.36 18

Stazione di servizio: eventi () Fine servizio evento endogeno raccolta statistiche e distruzione auto che termina il servizio (esce dal sistema) se CODA contiene auto in attesa: preleva la prima auto da CODA innesca un inizio servizio per l auto e la stazione altrimenti (CODA vuota): libera la stazione Simul.37 Diagramma di flusso (3) I FINE SERVIZIO Raccogli le statistiche; distruggi l auto Considerate tutte le auto? NO SI Stampa le statistiche F Insieme CODA vuoto? NO SI Libera la stazione estrai la prima auto da CODA; innesca evento INIZIO SERVIZIO per l auto estratta e la stazione corrente con ritardo 0 U Simul.38 19

Processo: Interazione dei Processi (1) Eventi (ordinati cronologicamente) rappresentazione di ciò che succede ad un entità tipica nel sistema Comportamento complessivo del sistema descrivibile da processi interagenti tra loro I processi realizzano più azioni di durata maggiore di zero e interagiscono tra loro Istruzioni: attiva, ritarda di., aspetta fino a. Diagramma di flusso lineare che descrive il transito delle entità nel sistema stesso Simul.39 Interazione dei Processi (2) 1. Crea auto a intervalli distr. esp. di v.m. λ 2. Se stazione occupata inserisci auto in CODA (di capacità NMAX) 3. Occupa stazione; ritarda di un tempo distr. unif. in [T1,T2]. Libera stazione; se c è auto in coda attivala (dal punto 3) 5. Esci dal sistema Simul.0 20