ESERCITAZIONE N°1 STUDIO DI UN SISTEMA DI CODA M/M/1 1. Introduzione Per poter studiare un sistema di coda occorre necessariamente simulare gli arrivi, le partenze e i tempi di ingresso nel sistema e di servizio, attraverso opportune funzioni di probabilità. Una prima funzione di probabilità alla quale si fa riferimento per lo studio dei sistemi di coda è l’esponenziale negativa . Essa è definita nel seguente modo: ⎧⎪ λ ⋅ e − λ ⋅t f ( t; λ ) = ⎨ ⎪⎩0 t≥0 t<0 dove f(t) è la funzione di densità di probabilità. La funzione di distribuzione F(t), è data dall’integrale fra meno infinito e t della f(t): F( t ) = 1 − e −λt L’ esponenziale negativa è una distribuzione di probabilità continua e positiva, cioè la variabile t assume solo valori in ℜ + . Il parametro λ è detto intensità e rappresenta il numero di eventi che si verificano per unità di tempo. Gli eventi in questione possono essere, ad esempio, le telefonate che arrivano ad un centralino, i veicoli che sopraggiungono ad un casello autostradale, ecc.. La distribuzione esponenziale è stata introdotta ed usata come modello per la descrizione probabilistica degli intervalli di tempo intercorrenti tra successive manifestazioni di diversi fenomeni sia naturali che artificiali. La variabile esponenziale negativa è legata alla variabile casuale di Poisson in quanto, se il numero di eventi favorevoli in un determinato intervallo di tempo è distribuito secondo una legge di Poisson, con parametro λ , allora l’intervallo di tempo che intercorre fra due eventi successivi è distribuito secondo una esponenziale negativa di parametro λ , e viceversa. La distribuzione di Poisson è una distribuzione di probabilità discreta ad un parametro, utilizzata per rappresentare una vasta gamma di fenomeni casuali, in particolare quelli connessi ad un qualche "conteggio" di eventi (ad esempio il numero di errori, di incidenti o nell’ambito idrologico il numero di perturbazioni) in un prefissato periodo di tempo. Quindi, la distribuzione esponenziale negativa non fornisce la probabilità di avere k eventi nel tempo, ma si limita al calcolo della probabilità che un certo evento si verifichi o meno nell’intervallo di tempo considerato. La probabilità che si verifichino k eventi nel tempo t è quindi determinata attraverso la distribuzione di Poisson : ( λ ⋅ t )k ⋅ e −λ ⋅t p( k ) = k! La distribuzione di Poisson è discreta, cioè la variabile aleatoria può assumere solo valori interi e discreti. Processi stocastici - Catene di Markov Il legame tra la distribuzione esponenziale e di Poisson caratterizza quello che viene comunemente definito come processo stocastico di Poisson, ossia un processo per il quale la distribuzione di probabilità delle variabili casuali presenta la caratteristica di essere dipendente dal tempo. La teoria sui processi di Poisson può essere utilizzata ogni qual volta un sistema che si trova inizialmente in uno stato A, può evolvere in nuovo stato B. Se si considera un processo Poissoniano, di parametro λ, il periodo di tempo T intercorrente tra due successi consecutivi è una variabile casuale che si distribuisce con legge esponenziale. L’espressione della funzione di probabilità cumulata dell’esponenziale negativa può essere facilmente ricavata a partire dall’espressione della distribuzione di Poisson. Considerando che la probabilità che la v.c. T superi un certo valore t è pari alla probabilità (calcolata con Poisson) che nessun evento si verifichi nell’intervallo di tempo di lunghezza t, si ha: p(T < t ) = 1 − F( t ) = p( x = 0) = (λt )0 ⋅ e −λt 0! = e − λt da cui si ottiene: F( t ) = 1 − e −λt La legge esponenziale negativa è l’unica funzione di probabilità che non ha “memoria”, ossia il tempo già speso in un dato stato non influenza lo stato corrente. Per capirne il significato si assuma di avere un processo di Poisson e che sia passato un tempo s dall’ultimo evento verificatosi. Ci si chiede quale sia la probabilità che passi ancora almeno un tempo t prima che si verifichi il prossimo evento. La proprietà di assenza di memoria per la distribuzione esponenziale ci dice che la probabilità cercata è indipendente dal valore di s: cioè è come se il processo iniziasse nel momento in cui ci troviamo. Dal punto di vista analitico, un Processo Stocastico è semplicemente definito come una famiglia di variabili aleatorie {Xt}, con t ∈ T . In particolare il processo è detto a parametro discreto se l’insieme T è un insieme discreto (ad esempio T ={1, 2, . . .} oppure T = {1, 2, . . . , m}), a parametro continuo se T è un intervallo non singolare dei numeri reali (ad esempio T = [0, 1]). I processi stocastici sono altresì classificati a seconda della natura delle variabili aleatorie {Xt}, si parlerà quindi di processi discreti se esse sono variabili discrete, di processi continui se sono continue. Un processo stocastico discreto {Xt}, t ∈ T = {0, 1, 2, . . .}, avente un insieme di stati S numerabile, è detto Catena di Markov se verifica le seguenti proprietà: ∗ proprietà di Markov: la probabilità di transizione che determina il passaggio ad uno stato di sistema dipende unicamente dallo stato di sistema immediatamente precedente e non dal come si è giunti a tale stato (in quest' ultima ipotesi si parla di processo non markoviano). Ecco perché le catene di Marcov fanno riferimento ad una distribuzione di probabilità esponenziale negativa. ∗ probabilità di transizione stazionarie : la stazionarietà delle probabilità di transizione indica che queste ultime non cambiano nel tempo. I sistemi di coda M/M/1 (Marcov Marcov1) sono sistemi in cui gli arrivi sono poissoniani e i tempi di arrivo e di servizio sono distribuiti secondo una legge esponenziale negativa; il numero 1 indica la presenza di un unico canale di coda. Metodo dell’inversione Il metodo dell’inversione consente, data una distribuzione uniforme di numeri casuali, generati ricorrendo ad esempio alla funzione CASUALE di Excel, di trasformare tali numeri in valori di F(t), al fine di ottenere una serie di numeri casuali distribuiti secondo la funzione di probabilità voluta (in questo caso una esponenziale negativa). Sia x il numero casuale, compreso fra 0 ed 1, generato dalla funzione di excel; il corrispondente F(t) si ottiene attraverso la seguente relazione: x = 1 − e − λ t ⇒ e − λt = 1 − x ⇒ t = − ln(1 − x ) λ Poiché il numero casuale, come specificato già in precedenza, è compreso fra 0 ed 1, si può ricorrere alla seguente relazione semplificata: 1 − F( t ) = e −λt ⇒ x = e −λt ⇒ t = − ln( x ) λ Questo valore di t rappresenta l’intervallo di tempo che intercorre fra due arrivi successivi. Le precedenti considerazioni valgono sia per i tempi di arrivo nel sistema che per i tempi di servizio. Si procede, quindi, generando due serie di numeri casuali relativamente alle quali si eseguono le medesime operazioni. Il tempo di uscita dal sistema per ogni utente, poi, è dato dal massimo della somma fra il tempo di ingresso nel sistema e il tempo di servizio, e fra il tempo di uscita dell’utente precedente e quello di servizio. Se gli arrivi sono distribuiti secondo una legge esponenziale con parametro λ e i tempi di servizio secondo una legge analoga, con parametro µ , il processo si definisce stazionario solo se λ < µ ; in caso contrario la coda si propagherà teoricamente all’infinito. 2. Problema in esame e relativa procedura di risoluzione Nel presente elaborato si intende simulare il sistema di coda ad un casello autostradale in 5 ore, sapendo che la legge degli arrivi è caratterizzata da un parametro λ = 10 , mentre quella dei tempi di servizio è caratterizzata da un parametro µ = 15 . Si ripropone poi il medesimo calcolo per λ = 10 , µ = 12 e un tempo di simulazione di 30 ore. Innanzitutto si procede alla generazione dei numeri casuali in un foglio elettronico di Excel; utilizzando la relazione fornita dal metodo di inversione si ottiene una distribuzione esponenziale negativa dei tempi di ingresso nel sistema e di servizio: t = − Infine si determina: ln( x ) λ { . ∗ il tempo di uscita dal sistema : t uscitadalsistema = max t a + t s ; t uprecedente + t s ∗ il tempo speso in coda da ciascun utente: t coda = t a − t u λ µ 10 0,167 15 0,25 arrivi all'ora arrivi al minuto partenze all'ora partenze al minuto } I dati sono stati ricavati per tutto il tempo della simulazione; di seguito si riporta una rappresentazione grafica del sistema di coda studiato: Andamento arrivi/partenze 900 800 700 600 tempi 500 Arrivi Partenze 400 300 200 100 0 0 20 40 60 80 100 120 140 160 La procedura è stata poi ripetuta variando i parametri della distribuzione e per un tempo di simulazione di 30 ore. I risultati sono i seguenti: λ µ 10 0,167 12 0,2 arrivi all'ora arrivi al minuto partenze all'ora partenze al minuto I dati della tabella precedente sono solo una parte della simulazione complessiva fino al raggiungimento delle 30 ore fissate. Il grafico che rappresenta gli andamenti degli arrivi e delle partenze, in questo secondo esempio, è il seguente: Andamento arrivi/partenze 2500 2000 tempi 1500 Arrivi Partenze 1000 500 0 0 50 100 150 200 250 300 350