8. Reti di Code Nella maggior parte dei processi produttivi risulta troppo restrittivo considerare una sola risorsa. Esempio: linea tandem arrivi 1 v partenze Vi sono diverse stazioni in cui una parte meccanica deve venire pulita, verniciata, lucidata, asciugata, ecc.
Esempio: linea con riciclo arrivi dall’esterno 1 2 partenze riciclo Vi sono due macchine in cascata. La prima esegue una certa operazione e la seconda verifica che tale operazione sia stata eseguita correttamente. Nel caso in cui vi sia qualche imperfezione nella lavorazione, questa deve essere eseguita nuovamente.
Le reti di code vengono distinte in reti di code aperte reti di code chiuse Vi sono arrivi dall’esterno e vi sono parti che vengono instradate al di fuori del sistema. Il sistema è isolato: non vi sono né arrivi dall’esterno né parti che vengono instradate al di fuori del sistema.
Esempio: rete di code aperta 1 2 3 Esempio: rete di code chiusa 1 2
Come visto in precedenza la teoria delle code consente di calcolare in modo sistematico le grandezze caratteristiche a regime delle risorse ergodiche nel caso in cui sia i tempi di inter-arrivo che i tempi di servizio sono esponenziali. Tali risultati non sono in genere applicabili alle reti di code in cui gli arrivi in alcune risorse sono strettamente legati alle uscite delle altre risorse e non godono quindi necessariamente della proprietà di markovianeità.
Esiste tuttavia un importante teorema relativo alle code M/M/m che consente di utilizzare nello studio delle reti di code M/M/m i risultati visti in precedenza. Teorema di Burke: In una risorsa M/M/m ergodica e a regime, il processo di uscita è un processo poissoniano caratterizzato dallo stesso parametro del processo di ingresso.
Esempio: linea tandem a due stati con risorse M/M/1 1 2 La risorsa 2 vede in ingresso degli arrivi poissoniani che sono l’uscita dalla risorsa 1. Ogni singola risorsa può venire studiata separatamente. Numero medio di utenti nelle singole risorse a regime
Numero medio di utenti nella rete a regime Tempo medio di attraversamento della rete a regime
Reti di Code Markoviane Aperte Sono costituite da v risorse M/M/m. La i-esima risorsa ha tasso di servizio i e tasso di ingresso complessivo i . Il processo degli arrivi dall’esterno è poissoniano per ciascuna risorsa. Indichiamo con iin quello relativo alla i-esima risorsa. All’uscita dalla i-esima risorsa il cliente viene instradato alla risorsa j-esima con probabilità rij oppure viene instradato all’esterno con probabilità ri0. Chiaramente per ogni i, risulta
Esempio: rete aperta composta da tre risorse M/M/1 1 2 3 1 2 3 1in 2in 3in 0.5 v=3, 1in = 2in = 7, 3in = 14 Valgono inoltre le seguenti relazioni:
In generale, data una rete aperta markoviana con v risorse, possiamo scrivere v equazioni del tipo Equazioni di traffico della rete. Le probabilità rij vengono dette probabilità di instradamento o di routing.
Introducendo i vettori riga e definendo Matrice di routing le equazioni di traffico possono essere riscritte in forma matriciale come
da cui risulta che Per quanto riguarda l’ergodicità di una rete aperta vale il seguente Teorema: Una rete aperta è ergodica se e solo se è ergodica ogni singola risorsa. Si dimostra che se una rete è ergodica la matrice (I-R) è non singolare (condizione necessaria per l’ergodicità della rete).
Essendo tale condizione solo necessaria, può aversi che det(I-R) 0 senza che la rete sia ergodica. Esempio 1 2 Tale sistema non è però ergodico per ogni valore di , 1 e 2. Ad esempio non lo è se > 1 oppure > 2 .
Definiamo stato di una rete di code con v risorse, un vettore riga x con v componenti, la cui i-esima componente x(i) rappresenta il numero di utenti nella i-esima risorsa. La probabilità di stato di una rete di code è definita come
Teorema di Jackson: In una rete aperta di code markoviane, ergodica e a regime . la probabilità che vi siano xi utenti nella i-esima risorsa può ricavarsi come se la risorsa fosse isolata e avesse tasso di arrivo i, dove i è soluzione di . la probabilità che la rete sia nello stato è si calcola con le formule viste per le code isolate.
Si dice pertanto che le reti di code markoviane ed ergodiche godono della forma prodotto. Se una rete è ergodica vale ancora la Legge di Little
Legge di Little in grande Sia in il tasso medio degli arrivi a regime nella rete e iin il tasso medio degli arrivi a regime nella i-esima risorsa Sia x il numero medio di utenti a regime nella rete e xi il numero medio di utenti a regime nella i-esima risorsa dove indica il tempo medio di attraversamento dell’intera rete di code.
Esempio: rete aperta composta da tre risorse M/M/1 1 2 3 1 2 3 1in 2in 3in 0.5 1in = 2in = 7, 3in = 14
Siano 1 = 20, 2 = 32, 3 = 33 allora 1 = 9/10, 2 = 1/2, 3 = 2/3. Inoltre e poiché vale la forma prodotto
1in = 1in + 2in + 3in = 7 + 7 + 14 = 28 Tempo medio di attraversamento dell’intera risorsa.
Reti di Code Markoviane Chiuse Non vi sono arrivi dall’esterno, pertanto iin = 0, per ogni i = 1, … , v. Non vi sono partenze verso l’esterno, ossia ri0 = 0, per ogni i = 1, … , v. In numero di clienti all’interno del sistema rimane costante. Lo spazio di stato di una rete chiusa con v risorse e n utenti è finito e si denota con N v,n.
Esempio: v=2, n=3. N v,n = { (3,0), (2,1), (1,2), (0,3) }
Studiando le reti di code aperte Markoviane abbiamo visto che, se queste sono ergodiche, possono essere studiate esaminando le singole risorse singolarmente poiché in virtù del teorema di Jackson le singole risorse sono statisticamente indipendenti. Nelle reti chiuse invece questo non è più vero e le risorse non sono più indipendenti. Infatti: ossia il numero di utenti nella rete è costante.
Una possibilità per studiare una rete di code Markoviane chiuse consiste nell’associare ad essa una particolare catena di Markov a tempo continuo. Sia il generico stato della rete. Costruiamo un grafo con tanti vertici quanti sono gli stati della rete. j-esimo stato k rkj k-esimo stato
La frequenza con cui si passa dallo stato k-esimo allo stato j-esimo è pari a k rkj Infatti per definizione rkj rappresenta la probabilità che un utente che esce dalla k-esima risorsa vada alla j-esima, k rappresenta il tasso delle partenze dalla k-esima risorsa.
Esempio 1 2 1-p p v=2, n=3 La rete può trovarsi in 4 diversi stati. La prima risorsa ha un solo servente, la seconda ne ha 2 (m1=1, m2=2).
1 3,0 2,1 0,3 1,2 p 2 2 p 2 x1 x2 x4 x3 Catena di Markov associata alla rete di code chiusa Poiché il grafo associato a tale CMTC ammette un’unica componente ergodica possiamo concludere che la rete è ergodica. Nello studio di questa rete possiamo quindi applicare i risultati visti per le CMTC.
Sia 1 = 10, 2 = 6, p = 0.5 Distribuzione limite
Alternativamente possiamo basarci sulle equazioni di traffico della rete: che in forma matriciale possono essere scritte come dove R è la matrice di routing che gode della seguente proprietà La matrice R associata ad una rete di code chiusa ha sempre un autovalore = 1.
Teorema: Una rete di code markoviane chiusa è ergodica se e solo se: l’autovalore = 1 di R è semplice. Questo teorema è molto importante perché ci permette di stabilire se una rete è ergodica semplicemente calcolando gli autovalori della matrice R che ha dimensioni pari al numero di risorse. Se invece associamo alla rete una CMTC e applichiamo il criterio degli autovalori dobbiamo determinare gli autovalori di Q che ha dimensioni pari al numero di stati.
Esempio 1 2 1-p p sempre ergodica
Vediamo ora come calcolare le probabilità di stato a regime utilizzando le equazioni di traffico della rete. Diamo prima le seguenti definizioni preliminari. Sia soluzione di coefficiente di traffico della i-esima risorsa i(xi) è una funzione che dipende dal numero di serventi della i-esima risorsa
Se la i-esima risorsa è a servente singolo Se la i-esima risorsa ha mi serventi
Teorema di Gordon e Newell: In una rete di code markoviane chiusa ed ergodica, la distribuzione di probabilità di stato a regime è dove C è una costante di normalizzazione che si determina imponendo che
Osservazioni 1) La probabilità di stato a regime è anche nel caso delle reti chiuse nella forma prodotto. Tuttavia in questo caso le variabili di stato aleatorie xi non sono indipendenti e quindi non è possibile scrivere la probabilità come prodotto delle v probabilità marginali. 2) La determinazione della costante di normalizzazione C richiede l’enumerazione di tutti i possibili stati della rete e risulta pertanto non agevole poiché la cardinalità dello spazio di stato risulta molto elevata anche per piccoli valori di n e v.
Esempio 1 2 1-p p Sia n=3, 1 = 10, 2 = 6, p = 0.5.
Tale distribuzione coincide con quella trovata associando una CMTC alla rete.