2 Simulazione. rappresentare sistemi reali anche complessi tenendo conto anche delle sorgenti di incertezza;

Documenti analoghi
Processi decisionali e modelli di simulazione

Modelli e Metodi per la Simulazione (MMS)

Simulazione. rappresentare sistemi reali anche complessi tenendo conto anche delle sorgenti di incertezza;

La simulazione è l'imitazione di un processo o di un sistema reale per un

Un nuovo concetto di classe

Modulo Simulazione Parte 1. Simulazione ad Eventi Discreti: Concetti Base. Organizzazione del modulo

Teoria e tecniche dei test

λ è detto intensità e rappresenta il numero di eventi che si

MODELLISTICA DI IMPIANTI E SISTEMI Syllabus e Testi di Riferimento Prof. Giuseppe Iazeolla

Reti di Telecomunicazioni 1

Politecnico di Milano Dipartimento di Elettronica e Informazione Introduzione. Laboratorio di Reti di Telecomunicazione

Distribuzioni e inferenza statistica

Tre esempi di sistemi di congestione. Analisi delle loro simulazioni in linguaggio Simula

Il concetto di calcolatore e di algoritmo

Distribuzioni campionarie. Antonello Maruotti

Il processo inferenziale consente di generalizzare, con un certo grado di sicurezza, i risultati ottenuti osservando uno o più campioni

I Diagrammi di Flusso OO

PROBLEMI ALGORITMI E PROGRAMMAZIONE

Metodologie e modelli di progetto

Il calcolo del VAR operativo mediante la metodologia stocastica parametrica. Simona Cosma

Calcolo della Concentrazione Rappresentativa della Sorgente (CRS)

2. Simulazione discreta: entità ed operazioni

Il campionamento e l inferenza. Il campionamento e l inferenza

La distribuzione delle frequenze. T 10 (s)

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

Programmi e Oggetti Software

Modelli matematici e Data Mining

Laboratorio di Calcolo B 68

a) 36/100 b) 1/3 c)

PROVE SCRITTE DI MATEMATICA APPLICATA, ANNO 2006/07

La Statistica: introduzione e approfondimenti

Esercitazione 4 Distribuzioni campionarie e introduzione ai metodi Monte Carlo

Studio di stabilità per una curva di luce ottenuta con CCD SBIG ST10XME e software di elaborazione MaximDL. (A cura di Fabio Zara)

Distribuzioni di probabilità

Rappresentazione con i diagrammi di flusso (Flow - chart)

SIMULAZIONE DI SISTEMI CASUALI 2 parte. Processi stocastici e teoria delle code. Processi stocastici

STATISTICHE, DISTRIBUZIONI CAMPIONARIE E INFERENZA

Classe seconda NUMERI. (Nucleo tematico) CONTENUTI (Conoscenze) ABILITÀ (Competenze specifiche) VALUTAZIONE DELLE COMPETENZE.

Corso di Ingegneria del Software. Modelli di produzione del software

DISTRIBUZIONI DI PROBABILITA

Sistemi e modelli. Sistemi

Elementi di base su modello binomiale e modello normale

CURRICOLO VERTICALE MATEMATICA RELAZIONI/ DATI E PREVISIONI/ MISURA

Statistica 1 A.A. 2015/2016

TOPOGRAFIA 2013/2014. Prof. Francesco-Gaspare Caputo

Algoritmi. Pagina 1 di 5

IL CRITERIO DELLA MASSIMA VEROSIMIGLIANZA

SIMULAZIONE DISCRETA

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

a.a. 2014/2015 Docente: Stefano Bifaretti

Schema lezione 5 Intervalli di confidenza

L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:

La simulazione con DERIVE Marcello Pedone LE SIMULAZIONI DEL LANCIO DI DADI CON DERIVE

CURRICOLO MATEMATICA - CLASSE QUARTA-

Principi di analisi causale Lezione 3

standardizzazione dei punteggi di un test

Progettazione di basi di dati

1 4 Esempio 2. Si determini la distribuzione di probabilità della variabile casuale X = punteggio ottenuto lanciando un dado. Si ha immediatamente:

ANALISI DEI SISTEMI AD EVENTI

PROGRAMMAZIONE DI MATEMATICA 2016/2017

SCUOLA SECONDARIA DI I GRADO ALIGHIERI - TANZI MOLA DI BARI ANNO SCOLASTICO 2011/1012

Derivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III)

FISICA. Elaborazione dei dati sperimentali. Autore: prof. Pappalardo Vincenzo docente di Matematica e Fisica

Istituto Comprensivo di Sissa Trecasali Allegato 2.E al Piano Triennale dell Offerta Formativa 2016/19 CURRICOLO DI SCIENZE SCUOLA DELL INFANZIA

Campionamento La statistica media campionaria e la sua distribuzione. Paola Giacomello Dip. Scienze Sociali ed Economiche Uniroma1

Localizzazione di una esplosione

T E C N O L O G I A CURRICULUM SCUOLA PRIMARIA E SECONDARIA. INTERVENIRE E TRASFORMARE C1 - Realizzare un oggetto in cartoncino.

Fogli Elettronici: MS Excel

APPROPRIATEZZA EFFICACIA EFFICIENZA in Sanità

Didattica di laboratorio scientifico per la scuola secondaria di primo grado aprile 2014 Anna Maria Ferluga

CURRICOLO SCIENZE SCUOLA PRIMARIA

Università del Piemonte Orientale. Corso di laurea in biotecnologie. Corso di Statistica Medica. Le distribuzioni teoriche di probabilità.

LA GESTIONE DELL INNOVAZIONE TECNOLOGICA NELLA PICCOLA E MEDIA IMPRESA

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

UDA MATEMATICA. Progettazione per unità di apprendimento. Percorso di istruzione di primo livello primo periodo didattica PROF:...

Traguardi per lo sviluppo delle competenze. Obiettivi operativi. essenziali

LA METAFORA DELL UFFICIO

Indagine statistica. Indagine Totale Indagine Campionaria Fasi dell indagine

OBIETTIVI MINIMI CLASSI PRIME

Classe Prima. Concetti topologici. Confronti Classificazioni Grafici. Confronti, ordinamenti e grandezze misurabili

L indagine campionaria Lezione 3

Possibili fasi di studio

MODELLO e RAPPRESENTAZIONE

CURRICOLO DI MATEMATICA SCUOLA SECONDARIA DI PRIMO GRADO

ISTITUTO OMNICOMPRENSIVO ALTO ORVIETANO FABRO PROGRAMMAZIONE ANNUALE MATEMATICA CLASSE II SECONDARIA I GRADO

MATEMATICA CLASSE NUMERO Contare sia in senso progressivo sia in senso regressivo.

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

IV Circolo Didattico G. Marconi di Trapani Anno Scolastico 2013/14

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E.

Elementi di Teoria dei Sistemi. Definizione di sistema dinamico. Cosa significa Dinamico? Sistema dinamico a tempo continuo

CURRICOLO DIPARTIMENTO INFORMATICA PRIMO BIENNIO

Le rappresentazioni e le proprietà dei numeri reali

Distribuzione Gaussiana - Facciamo un riassunto -

Carte di controllo CUSUM. Le carte a somme cumulate risultano utili quando occorre individuare scostamenti dal valore centrale di piccola entità.

Esercizio 1. Stima intervallare: IC per la media incognita (varianza ignota)

NUMERI SCUOLA SECONDARIA I GRADO

CURRICOLO DI MATEMATICA CLASSE PRIMA

Calcolo numerico e programmazione Rappresentazione dei numeri

FUNZIONI BOOLEANE. Vero Falso

Transcript:

2 Simulazione Con il termine simulazione si intende la riproduzione del comportamento di un sistema. In generale, si parla di simulazione sia nel caso in cui viene utilizzato un modello concreto, sia nel caso in cui viene utilizzato un modello astratto che riproduce la realtà mediante l uso del computer. Un esempio di modello concreto è il modello in scala di una nave che viene poi posto in un apposita vasca per effettuare prove simulate allo scopo di stimare opportune misure di prestazione. È chiaro che esistono, leggi teoriche della fisica dalle quali ottenere informazioni sulle prestazioni della nave, ma le analisi di queste leggi è spesso troppo complicata, per essere effettuata; naturalmente, è anche impraticabile (o quanto meno non conveniente) la costruzione reale della nave e la prova diretta in mare. All interno della Ricerca Operativa, la simulazione utilizza modelli astratti che vengono costruiti al fine di replicare le caratteristiche di un sistema. Essa gioca un ruolo molto importante soprattutto nel progettare un sistema stocastico e nel definirne le procedure operative: il funzionamento di un sistema è simulato utilizzando distribuzioni di probabilità per generare casualmente eventi del sistema e dal sistema simulato si ottengono osservazioni statistiche sulle prestazioni dello stesso. Naturalmente affinché ciò possa essere realizzato è necessario costruire un modello di simulazione, che permetta di descrivere le operazioni di un sistema e come esse devono essere simulate. Gli aspetti rilevanti che fanno della simulazione uno strumento largamente utilizzato sono legati al fatto che essa permette di rappresentare sistemi reali anche complessi tenendo conto anche delle sorgenti di incertezza; 119

120 SIMULAZIONE riprodurre il comportamento di un sistema in riferimento a situazioni che non sono sperimentabili direttamente. D altra parte deve essere sempre tenuto sempre ben presente il fatto che la simulazione fornisce indicazioni sul comportamento del sistema, ma non risposte esatte; l analisi dell output di una simulazione potrebbe essere complessa e potrebbe essere difficile individuare quale può essere la configurazione migliore; l implementazione di un modello di simulazione potrebbe essere laboriosa ed inoltre potrebbero essere necessari elevati tempi di calcolo per effettuare una simulazione significativa. 2.1 GENERALITÀ SUI MODELLI DI SIMULAZIONE Come abbiamo già osservato, per simulare il comportamento di un sistema è necessario costruire un modello di simulazione. Il modello dovrà essere sufficientementre complesso da rispondere alle esigenze dal caso, ma deve comunque rimanere il più semplice possibile. Devono inotre essere chiari i limiti di utilizzo del modello stesso. 2.1.1 Elementi di un modello di simulazione Vediamo ora gli elementi che costituiscono un modello di simulazione. Variabili di stato Innanzitutto ricordiamo che un sistema è descritto in ogni istante di tempo da un insieme di variabili che prendono nome di variabili di stato. Quindi, ad esempio, in riferimento ad un sistema a coda, è una variabile di stato il numero degli utenti presenti nel sistema in un certo istante di tempo. Ricordiamo, inoltre, che esistono sistemi discreti in cui le variabili cambiano istantaneamente in corrispondenza di precisi istanti di tempo che sono finiti oppure appartenenti ad un insieme numerabile e sistemi continui in cui le variabili variano con continuità rispetto al tempo. Si osservi fin d ora che la scelta di un modello continuo o discreto da utilizzare non è necessariamente obbligata dalla tipologia del sistema; si può infatti decidere, ad esempio, di costruire un modello discreto per un sistema continuo, a seconda dello studio che si vuole effettuare. Un esempio tipico è il caso in cui nel rappresentare una linea ferroviaria, la posizione del treno può essere descritta da una variabile reale che fornisce la distanza dalla stazione di origine, oppure da variabili binarie che descrivono lo stato libero occupato di ciascuna delle sezioni di blocco in cui è divisa la linea.

GENERALITÀ SUI MODELLI DI SIMULAZIONE 121 Eventi Si definisce evento un qualsiasi accadimento istantaneo che fa cambiare il valore di almeno una delle variabili di stato. L arrivo di un utente ad un sistema a coda è un evento, così come il completamento di un servizio. Esistono eventi esterni al sistema (eventi esogeni) ed eventi interni (eventi endogeni). Ad esempio, l inizio del servizio ad un utente che è in coda in un sistema a coda è un evento endogeno, perché interno al sistema; l arrivo di un utente ad un sistema a coda è un evento esogeno. Entità e attributi Le entità sono singoli elementi del sistema che devono essere definiti. Un esempio di entità è un utente presso un sistema a coda, oppure può essere un servente. Nel primo caso l entità fluisce all interno del sistema e si parla di entità dinamica, nel secondo caso si parla di entità statica. Le entità possono essere caratterizzate da attributi che forniscono un valore di un dato assegnato all entità stessa. Ad esempio, in un sistema a coda monoservente dove le entità sono il servente e gli utenti, un attributo di un entità utente potrebbe essere il suo tempo di arrivo al sistema, mentre il servente è caratterizzato dall attributo status che può assumere valore di libero o occupato. È chiaro che alcuni attributi possono essere di interesse in alcuni casi e non in altri. Le entità possono essere raggruppate in classi che sono insiemi di entità dello stesso tipo, ovvero si possono raggruppare le entità in base ad attributi. Se, ad esempio, consideriamo persone di sesso maschile e femminile come utenti di un sistema a coda, essendo le entità le persone, esse possono essere raggruppate in dua classi in base all attributo sesso. Risorse Le risorse sono elementi del sistema che forniscono un servizio alle entità. Un entità può richiedere una o più unità di risorsa e se questa non è disponibile l entità dovrà mettersi, ad esempio, in una coda in attesa che si renda disponibile, oppure intraprendere un altra azione. Se invece la risorsa è disponibile, essa viene catturata dall entità, trattenuta per il tempo necessario e poi rilasciata. Un esempio di risorsa potrebbe essere data da un operaio che sovrintende il funzionamento di una macchina che non può funzionare senza l operaio stesso; quando è richiesto l utilizzo di questa macchina, se la risora operaio è disponibile allora l esecuzione del lavoro è effettuata altrimenti si attende che ci sia risorsa (operaio) disponibile. L operaio verrà trattenuto per la durata dell esecuzione del lavoro e poi rilasciato. Si osservi che, in generale, un elemento del modello potrebbe essere considerato parimenti un entità o una risorsa. Questo, ovviamente, dipende da come si è scelto di costruire un modello.

122 SIMULAZIONE Attività e ritardi Un attività è un operazione la cui durata è nota a priori all inizio dell esecuzione dell attività stessa. Tale durata può essere una costante, un valore aleatorio generato da una distribuzione di probabilità, oppure data in input o calcolata in base ad altri eventi che accadono nel sistema. Un esempio è dato dal tempo di servizio in un sistema a coda. Un ritardo è un periodo di tempo di durata indefinita che è determinata dalle condizioni stesse del sistema. Il tempo che un entità trascorre presso una coda prima che si liberi una risorsa della quale necessita è un ritardo. 2.1.2 Classificazione dei modelli si simulazione I modelli di simulazione si possono classificare in base a diversi criteri; una prima distinzione già vista è tra modelli continui, in cui le variabili variano con continuità; modelli discreti, in cui il valore delle variabili cambia in ben definiti istanti di tempo. Un altra distinzione è tra: modelli statici, che rappresentano un sistema in un particolare istante di tempo; modelli dinamici, che rappresentano un sistema in evoluzione nel tempo. Infine, si possono distinguere modelli deterministici, che non contengono componenti probabilistici; modelli stocastici, che presentano elementi soggetti ad aleatorietà. In questa trattazione considereremo modelli di simulazione discreti, dinamici, stocastici che vengono comunemente chiamati modelli di simulazione ad eventi discreti. Molte applicazioni sono ben rappresentate da modelli di questo tipo ed inoltre approssimando variazioni continue con variazioni discrete è possibile utilizzare modelli ad eventi discreti anche per approssimare il comportamento di sistemi continui semplificando quindi molto l analisi. 2.1.3 Simulazione ad eventi discreti Nella simulazione ad eventi discreti il sistema è rappresentato, nella sua evoluzione nel tempo, con variabili che cambiano instantaneamente il loro valore in ben definiti istanti di tempo appartenenti ad un insieme numerabile. Questi istanti sono quelli nei quali accadono gli eventi. È chiaro che, essendo questi modelli di natura dinamica, è necessario registrare, ovvero tenere memoria, del tempo

GENERALITÀ SUI MODELLI DI SIMULAZIONE 123 (simulato) che procede. In particolare sarà necessario definire un meccanismo di avanzamento del tempo per far procedere il tempo simulato da un valore ad un altro. La variabile che in un modello di simulazione fornisce il valore corrente del Simulation tempo simulato si chiama simulation clock, ed esistono due modi per definire clock il suo avanzamento: avanzamento del tempo al prossimo evento, avanzamento del tempo ad incrementi prefissati. Il primo è quello più diffuso ed è quello a cui faremo riferimento. In questo caso il simulation clock è inizializzato a zero e viene avanzato al tempo dell accadimento del primo degli eventi futuri; poi il sistema viene aggiornato tenendo conto dell evento che è accaduto, si aggiornano i tempi degli eventi futuri e si itera il procedimento. A differenza dell avanzamento ad incrementi prefissati, i periodi di inattività non vengono considerati. Un esempio può essere visto considerando un sistema di code in cui gli eventi sono l arrivo di un cliente, la conclusione di un servizio; entrambi sono eventi perché provocano il cambiamento di valore di qualche variabile di stato. Il meccanismo di avanzamento del tempo segue in questo caso l accadere di questi due eventi nell ordine cronologico in cui essi si verificano. Un esempio di simulazione ad eventi discreti Vediamo, ora, un semplice esempio di come si realizza un simulazione ad eventi discreti. Consideriamo a tale scopo un sistema a coda costituito da una coda e da un singolo servente e supponiamo che i tempi di interarrivo siano uniformemente distribuiti tra 1 e 3 minuti e che anche i tempi di servizio siano uniformemente distribuiti tra 0.5 e 2 minuti. Vediamo, ora, come si può effettuare una simulazione di questo sistema. Poiché si tratta di un sistema regolato da due processi stocastici (gli arrivi e i servizi) per generare gli eventi è necessario generare osservazioni casuali dalle due distribuzioni di probabilità che regolano i due processi (come questo può essere effettuato sarà oggetto di considerazioni successive nel paragrafo 2.4). Supponiamo di avere a disposizione le due liste che forniscono, rispettivamente i tempi di interarrivo generati casualmente dalla distribuzione corrispondente e i tempi di servizio anch essi generati casualmente dalla distribuzione corrispondente: Tempi di interarrivo Tempi di servizio 1.9 1.7 1.3 1.8 1.1 1.5 1.0 0.9..

124 SIMULAZIONE Supponendo che al tempo t = 0 nessun utente è presente nel sistema. Osservando i valori campionati riportati nelle due liste, si ricava facilmente la successione degli eventi: Tempo t Eventi 1.9 arriva un utente inizia il servizio 3.2 arriva un utente e si pone in coda 3.6 finisce un servizio e il primo utente in coda inizia il servizio 4.3 arriva un utente e si pone in coda 5.3 arriva un utente e si pone in coda 5.4 finisce un servizio e il primo utente in coda inizia il servizio.. Limitando questa semplice simulazione al tempo t = 5.4 (in modo che due utenti sono entrati e hanno completato il servizio), possiamo calcolare, ad esempio, il tempo medio di permanenza nel sistema: il primo utente rimane nel sistema 1.7 minuti, il secondo 2.2 minuti e quindi il valore medio è 1.95. Questa stima, ovviamente non ha alcun senso perché ottenuta dalla particolare sequenza di numeri casuali delle due liste. Quindi, se l esempio da un lato vuole mettere evidenza il meccanismo di una simulazione ad eventi discreti, dall altro mette fin d ora in evidenza un errore che si potrebbe commettere nel reputare affidabili i risultati di una sola esecuzione e che ha avuto una durata arbitraria. D altra parte c è anche da tener presente che se siamo interessati a valutare misure di prestazioni del sistema a regime, ovvero quando sono state raggiunte condizioni di stazionarietà, sarà necessario non prendere in considerazione il sistema durante il periodo iniziale di transitorio. Queste problematiche rappresentano un elemento chiave di ogni simulazione e saranno considerate in dettaglio nel seguito. 2.1.4 Schema dello studio di un problema basato sulla simulazione In questo paragrafo riportiamo uno schema che descrive la successione delle varie fasi che caratterizzano uno studio basato sulla simulazione. 1. Analisi del problema Consiste nel comprendere il problema cercando di capire quali sono gli scopi dello studio e di identificare quali sono le componenti essenziali e quali sono le misure di prestazione che interessano. Naturalmente, se una versione del sistema è già operativa, si deve osservare tale sistema per dedurne le caratteristiche fondamentali. 2. Formulazione del modello di simulazione Poiché stiamo trattando sistemi stocastici, per formulare un modello di si-

GENERALITÀ SUI MODELLI DI SIMULAZIONE 125 mulazione è necessario conoscere le distribuzioni di probabilità delle quantità di interesse. Infatti, per generare vari scenari rappresentativi di come un sistema funziona, è essenziale che una simulazione generi osservazioni casuali da queste distribuzioni. Ad esempio, nei sistemi a coda è necessaria la distribuzione dei tempi di interarrivo e i tempi di servizio; nella gestione delle scorte è necessaria la distribuzione della richiesta dei prodotti e la distribuzione del tempo tra un ordine e il ricevimento della merce; nella gestione dei sistemi di produzione con macchine che occasionalmente possono guastarsi, sarà necessario conoscere la distribuzione del tempo fino a che una macchina si guasta e la distribuzione dei tempi di riparazione. Generalmente è possibile solo stimare queste distribuzioni derivandole, ad esempio, dall osservazione di sistemi simili già esistenti. Se dall analisi dei dati si vede che la forma di questa distribuzione approssima una distribuzione tipo standard, si può utilizzare la distribuzione teorica standard effettuando un test statistico per verificare se i dati possono essere rappresentati bene mediante quella distribuzione di probabilità. Se non esistono sistemi simili dai quali ottenere dati osservabili si deve far ricorso ad altre fonti di informazioni: specifiche delle macchine, manuali di istruzioni delle stesse, studi sperimentali, etc. La costruzione di un modello di simulazione è un procedimento complesso. In particolare, facendo riferimento alla simulazione ad eventi discreti, la costruzione di un modello prevede le seguenti fasi: (a) Definizione delle variabili di stato. (b) Identificazione dei valori che possono essere assunti dalle variabili di stato. (c) Identificazione dei possibili eventi che fanno cambiare lo stato del sistema. (d) Realizzazione di una misura del tempo simulato, simulation clock, che registra lo scorrimento del tempo simulato. (e) Realizzazione di un metodo per generare casualmente gli eventi. (f) Identificazione delle transizioni di stato generate dagli eventi. 3. Analisi del modello di simulazione Nella fase di analisi del modello deve essere verificata l accuratezza del modello realizzato con diverse modalità. Di solito ciò viene fatto attraverso un analisi concettuale del modello che può essere effettuata insieme agli esperti del settore applicativo in modo da evidenziare eventuali errori e/o omissioni.

126 SIMULAZIONE 4. Scelta del software e costruzione di un programma Dopo aver costruito il modello, esso deve essere tradotto in un programma. A tale scopo è possibile utilizzare diversi strumenti. Linguaggi general purpose. Linguaggi come C++, FORTRAN, etc. Erano molto utilizzati alla nascita della simulazione ma richiedono molto tempo di programmazione e quindi si preferisce, in genere, utilizzare linguaggi specifici per la simulazione. Linguaggi di simulazione generali. Forniscono molte caratteristiche necessarie per realizzare un modello di simulazione riducendo così il tempo di realizzazione; esempi sono MODSIM, GPSS, SIMSCRIPT, etc. Anche se meno flessibili dei linguaggi general purpose sono il modo più naturale per realizzare un modello di simulazione. Simulatori. Sono packages per la simulazione orientati alle applicazioni. Esistono numerosi pacchetti software di tipo interattivo per la simulazione come ARENA, WITNESS, EXTEND, MICRO SAINT. Alcuni sono abbastanza generali anche se dedicati a specifici tipi di sistemi come impianti industriali, sistemi di comunicazione, altri invece sono molto specifici come, ad esempio, nel caso di simulatori di centrali nucleari o di simulatori della fisiologia cardiovascolare. I simulatori permettono di costruire un programma di simulazione utilizzando menù grafici senza bisogno di programmare. Sono abbastanza facili da imparare e un inconveniente che molti di essi hanno è di essere limitati a modellare quei sistemi previsti dalle loro caratteristiche standard. In ogni caso alcuni simulatori prevedono la possibilità di incorporare routines scritte in un linguaggio general purpose per trattare elementi non standard. Spesso hanno anche capacità di animazione per mostrare la simulazione in azione e questo permette di illustrare facilmente la simulazione anche a persone non esperte. Fogli elettronici (spreadsheets). Quando si hanno problemi di piccole dimensioni si possono anche utilizzare fogli elettronici, come ad esempio Excel, per avere un idea del funzionamento di un sistema. 5. Validazione del modello di simulazione Nella fase successiva è necessario verificare se il modello che è stato realizzato fornisce risultati validi per il sistema in esame. Più in particolare si deve verificare se le misure di prestazione del sistema reale sono bene approssimate dalle misure generate dal modello di simulazione. Ciò è molto

GENERALITÀ SUI MODELLI DI SIMULAZIONE 127 difficile da effettuare, specialmente in fase di progettazione quando il sistema reale non esiste. 6. Progettazione della simulazione Prima di passare all esecuzione della simulazione è necessario decidere come condurre la simulazione. Spesso una simulazione è un processo che evolve durante la sua realizzazione e dove i risultati iniziali aiutano a condurre la simulazione verso configurazioni più complesse. Ci sono inoltre problematiche di tipo statistico: la determinazione della lunghezza del transitorio del sistema prima di raggiungere condizioni di stazionarietà, momento dal quale si inizia a raccogliere dati se si vogliono misure di prestazione del sistema a regime; la determinazione della lunghezza della simulazione (durata) dopo che il sistema ha raggiunto l equilibrio. Infatti, si deve sempre tener presente che la simulazione non produce valori esatti delle misure di prestazione di un sistema in quanto ogni singola simulazione può essere vista come un esperimento statistico che genera osservazioni statistiche sulle prestazioni del sistema. Queste osservazioni sono poi utilizzate per produrre stime delle misure di prestazione e naturalmente aumentando la durata della simulazione può aumentare la precisione di queste stime. 7. Esecuzione della simulazione e analisi dei risultati L output della simulazione fornisce stime statistiche delle misure di prestazione di un sistema. Un punto fondamentale è che ogni misura sia accompagnata dall intervallo di confidenza all interno del quale essa può variare. Questi risultati potrebbero evidenziare subito una configurazione del sistema migliore delle altre, ma più spesso verranno identificate più di una configurazione candidata ad essere la migliore. In questo caso potrebbero essere necessarie ulteriori indagini per confrontare queste configurazioni. 8. Presentazione delle conclusioni In conclusione, è necessario redigere una relazione ed una presentazione che riassuma lo studio effettuato, come è stato condotto e includendo la documentazione necessaria. Includere nella presentazione un animazione di una simulazione è di solito molto efficace. 2.1.5 Applicazioni tipiche della simulazione La simulazione è uno strumento molto flessibile: può essere utilizzata per studiare la maggior parte dei sistemi esistenti. È impossibile enumerare tutte le aree

128 SIMULAZIONE specifiche in cui la simulazione può essere utilizzata. Come esempi, riportiamo, di seguito, solo alcune importanti tipiche categorie di applicazioni in cui si usa la simulazione. Progettazione e definizione delle procedure operative di un sistema di servizio. Gestione di sistemi di scorte. Progetto e definizione delle procedure operative di sistemi di produzione. Progetto e funzionamento del sistemi di distribuzione. Analisi dei rischi finanziari. Gestione dei progetti.