Sei sulla pagina 1di 171

ARCHITETTURA DECISIONALE/FUNZIONALE DEI PROCESSI PRODUTTIVI

 GENERALITÀ SUI PROCESSI PRODUTTIVI DISCRETI

Un SISTEMA PRODUTTIVO è un sistema che prende materiale grezzo e lo trasforma in prodotti.


 Un SISTEMA che prende delle scatolette vuote, delle conserve di pomodoro, e le trasforma in
scatole di conserva di pomodoro con alcune operazioni elementari, quali il riempimento, la chiusura,
l’impacchettamento, l’etichettatura etc…

I PROCESSI PRODUTTIVI DISCRETI sono quelli in cui gli OGGETTI che vengono prodotti si
misurano come ENTITÀ DISCRETE: una penna biro, un telefono, un’automobile, una lattina di pomodoro,
un litro di latte [più o meno quasi tutti gli oggetti che compriamo costosi sono per natura discreti].

Un qualcosa che noi compriamo che non è un’entità discreta è l’elettricità, l’energia, il carburante: questi
vengono definiti PRODOTTI CONTINUI.
 Il Mercato di oggi si è spostato, per lo più, sui beni discreti.

I PROCESSI PRODUTTIVI DISCRETI vengono anche chiamati “MANUFACTURING


PROCESSES”.
L’approccio tradizionale ai Processi Produttivi è sempre stato quello di realizzare un prodotto tramite una
sequenza prefissata di operazioni, definita LINEA o CATENA DI MONTAGGIO o ASSEMBLAGGIO.
Questo tipo di produzione è piuttosto rigida, ovvero finalizzata alla realizzazione di un numero assai limitato
di tipologie di prodotti, perché le operazioni sono sempre le stesse e se cambia il prodotto bisogna cambiare
tutto. È rigida sia nel TEMPO sia nella DIVERSIFICAZIONE.

I SISTEMI PRODUTTIVI non possono essere basati sull’ipotesi di una domanda poco diversificata
(ovvero poche tipologie di prodotti, e comunque simili tra loro) e scarsamente variabile nel tempo.
La realtà è quella per una domanda fortemente diversificata, quasi su COMMESSA (Ordinazione) e
certamente molto variabile nel tempo.

 CLASSIFICAZIONE DEI PROCESSI PRODUTTIVI DISCRETI


Una prima classificazione, legata anche alle considerazioni fatte nel paragrafo precedente, si basa sulla
quantificazione dei volumi prodotti e sulla diversificazione delle tipologie di prodotti.

1) PROTOTYPE PRODUCTION
2) MAKE-TO-ORDER
3) BATCH PRODUCTION
4) MAKE-TO-STOCK
5) FLOW PRODUCTION
1) PROTOTYPE PRODUCTION Si tratta di processi produttivi con volumi assai limitati
(al limite, “pezzi” singoli) per ogni tipologia di prodotto;
2) PRODUZIONE MAKE-TO-ORDER [m.t.o] Si tratta della cosiddetta
“PRODUZIONE SU COMMESSA”, in cui differenti tipologie di prodotti vengono realizzati sulla
base di richieste specifiche (commesse od ordini) espresse dai clienti (un esempio sono le
automobili);
3) BATCH PRODUCTION È una situazione intermedia rispetto alla produzione make-to-
order e quella make-to-stock. In pratica, è quando l’azienda shifta da un piano produttivo a un altro
(dall’uovo di Pasqua ai panettoni)
4) PRODUZIONE MAKE-TO-STOCK [m.t.s] Si tratta della cosiddetta
“PRODUZIONE A MAGAZZINO”, in cui si presume che si voglia ottimizzare la gestione del
processo produttivo nell’assunzione che la domanda dei diversi tipi di prodotto sia costante e nota;
5) FLOW PRODUCTION È il caso in cui si ha una produzione assai poco diversificata (al
limite, una sola tipologia di prodotti), che può essere pensata come un flusso continuo; i volumi
prodotti sono assai elevati (Un esempio è la Coca-Cola).

 La Produzione Vera e Propria è sempre parzialmente “make-to-stock” e parzialmente “make-to-


order”: le fasi iniziali sono quasi tutti “make-to-stock” e le fasi finali sono quasi tutte “make-to-
order”.

STRUTTURA GERARCHICA DELLE FUNZIONI DECISIONALI DEI


PROCESSI PRODUTTIVI DISCRETI
Possono essere identificate differenti funzioni decisionali, che possono essere inquadrate secondo lo schema
gerarchico seguente:
I BLOCCHI RETTANGOLARI rappresentano funzioni e procedure decisionali, mentre le FRECCE
rappresentano flussi informativi. Le frecce più spesse indicano flussi informativi prescrittivi (ovvero, che
forniscono indicazioni operative), mentre le frecce più sottili indicano i flussi informativi che
rappresentano informazioni utili per le funzioni decisionali.

 LIVELLO DECISIONALE STRATEGICO [Pianificazione a Lungo Termine]:


è quello in cui vengono elaborate le decisioni fondamentali riguardanti la configurazione del sistema
produttivo. Inoltre, a fianco di questa funzione abbiamo la PROGETTAZIONE dei prodotti e dei
processi di fabbricazione e il MARKETING.
 LIVELLO DECISIONALE TATTICO [Pianificazione a Medio Termine]:
è quello in cui viene pianificata l’attività produttiva a medio termine (alcune settimane, alcuni mesi),
ovvero quello in cui vengono prese decisioni riguardanti i volumi di produzione per le singole
tipologie di prodotto e l’allocazione di massima delle risorse del sistema produttivo alle lavorazioni
da effettuare.
 LIVELLO DECISIONALE OPERATIVO [Gestione della Produzione]:
competono tutte le decisioni riguardanti la gestione dei processi produttivi (secondo le indicazioni
fornite dal livello superiore), inclusa la programmazione della produzione a breve termine.
 LIVELLO DI CONTROLLO IN TEMPO REALE:
e funge da interfaccia fra il livello operativo e l’impianto e ha la funzione di implementare
effettivamente le decisioni prese al livello operativo, tenendo presenti le caratteristiche dell’impianto

[Leggere]:
 Ora vediamo tutti questi concetti in un modo Formale:

Nella descrizione del processo produttivo si assume che debbano essere realizzati prodotti appartenenti
a N tipologie differenti e predefinite, indicate con P1…, PN. Due prodotti della medesima tipologia sono
considerati del tutto indistinguibili. Il processo produttivo (predefinito) dei prodotti delle diverse classi è
rappresentabile attraverso il grafo delle operazioni:

In questo tipo di grafici si suppone che ad ogni (tipo di) operazione sia associata una part-type (operazione
Oi, part-type pti), ovvero una tipologia di componente fisico circolante nell’impianto.

Le frecce entranti nel nodo che rappresenta un’operazione possono corrispondere a COMPONENTI DI
BASE (ovvero componenti acquistate all’esterno, non li compro io) o a PART-TYPE (è un tipo di oggetto)
prodotte da qualche operazione (in questo caso si parla di componenti o prodotti intermedi).
- cbi indica il componente di base i-esimo.

Nel caso in cui nel nodo di un’operazione entri una sola freccia, l’operazione si dice di semplice lavorazione,
nel caso in cui invece entrino più frecce, si parla di operazione di assemblaggio (nel modello considerato non
sono previste operazioni di disassemblaggio).

I grafi considerati sono sempre aciclici. I nodi terminali corrispondono a classi di prodotti (ma anche i nodi
non terminali possono corrispondere a classi di prodotti). Si noti che nello stesso grafo possono “coesistere”
diverse classi di prodotti.
 Ogni operazione è caratterizzata dal fatto che esce una part-type specifica per l’operazione stessa
(ex. Una mezza penna rossa)
È importante il concetto di COMMONALITY: Il modello considerato è invece caratterizzato dalla possibile
presenza di commonality. Questo termine indica una situazione in cui il processo di fabbricazione di due
diverse tipologie di prodotti è in larga misura comune. Questo fatto implica che diversi componenti di base e
prodotti intermedi possono essere considerati come riferibili alle due tipologie di prodotti.
[leggere]:

LE RISORSE DI LAVORAZIONE
In un Impianto ci sono oggetti PERMANENTI e TRANSEUNTI.
Gli oggetti permanenti sono i SERVITORI, le MACCHINE, le RISORSE;
Mentre gli oggetti transeunti sono quelli che richiedono il servizio e poi se ne vanno: i PRODOTTI.

Esistono diversi criteri per la classificazione delle risorse.


Uno di questi è legato alla possibilità di eseguire più operazioni contemporaneamente.
Questo criterio porta alla seguente classificazione:

 RISORSA NON CONDIVISIBILE: In questo caso le risorse possono eseguire una sola
operazione per volta [Ex. Il prof non può fare lezione qua e anche da un’altra parte, anche l’aula è
una risorsa non condivisibile];
 RISORSA MULTISERVIZIO: In questo caso la risorsa può eseguire anche più operazioni
contemporaneamente. Condivisibili, ma con discontinuità;
 RISORSA CONDIVISIBILE CON CONTINUITÀ: la risorsa può eseguire un numero anche
elevato di operazioni in contemporanea; la condivisione della risorsa può aver luogo, in questo caso,
secondo frazioni che corrispondono a numeri reali [Sono le risorse che posso separare in porzioni più
o meno grandi a seconda delle necessità].

Un’operazione è rappresentata come un processo che ha un istante di inizio e un istante finale, coerentemente
con quanto è previsto in un modello ad eventi discreti.
Per una risorsa che può eseguire differenti funzioni (è il caso generale, come si è detto), è in generale
necessario un TEMPO di SET-UP (o di attrezzaggio) per il passaggio da una funzione all’altra.
[Non è necessario alcun set-up quando la risorsa (o il server di una risorsa multipla) passa da un’operazione
ad un’altra che richiede la medesima funzione].

Accanto alle risorse di lavorazione, giocano un ruolo fondamentale in un impianto produttivo le RISORSE
DI TRASPORTO o MOVIMENTAZIONE INTERNA.
Tali risorse hanno il compito di trasportare i semilavorati da una risorsa di lavorazione dove è appena stato
completato un servizio, ad un’altra dove dovrà essere effettuato il servizio successivo.

 INDICI DI PRESTAZIONE
Che cosa vogliamo ottenere dai nostri impianti? La cosa migliore da fare è considerare separatamente gli
indici di separazione per il modello Make-to-order e per il modello Make-to-stock.

MODELLO MAKE-TO-ORDER
In questo modello ad ogni classe di operazioni corrisponde una singola operazione.
Ogni prodotto è quindi da considerarsi in modo individuale ed è caratterizzato da parametri e informazioni
specifici (committente, costo, data di consegna, ecc.).

Per evitare ambiguità, in questo contesto, si preferirà quindi il termine “job” in luogo di quello di “prodotto”.
Le (macro-)operazioni necessarie per la realizzazione dei job verranno qui chiamate “task” (i).
In questo caso io divido i miei JOB (che rappresentano una singola commessa) mediante una sequenza di
lavorazioni o operazioni che chiamo TASK.

Supponiamo che le RISORSE o MACCHINE sono 3: M1, M2 e M3.


Le compatibilità dei TASK con le MACCHINE sono quelle riportate sotto.

Come assegno queste operazioni alle diverse macchine e come le sequenzio?


La rappresentazione dell’esecuzione dei diversi task (e quindi dei job) sulle diverse risorse può essere
formalizzata tramite un DIAGRAMMA DI GANTT [Diagramma in cui sull’asse orizzontale abbiamo il
tempo e sull’asse verticale abbiamo quello che fa la singola risorsa per intervallo di tempo].
La rappresentazione tramite diagramma di Gantt definisce in modo non ambiguo lo schedule del processo.
Ad esempio, un possibile schedule è quello riportato di seguito:

[Gli intervalli azzurri sopra sono gli intervallo di IDLENESS].


Si definiscono per ciascuno dei job Ji, i=1..N (sia N il numero dei job)

ai = activation time del job Ji = istante in cui ha inizio l’esecuzione del primo task di Ji

Ci = completion time del job Ji = istante in cui si completa l’esecuzione dell’ultimo task di Ji

Le sequenze di servizio per le tre macchine nello schedule rappresentato in figura sono:

M1 : (  )

M2 : ( )

M3 : (  )


La durata dell’esecuzione dei singoli task sulle macchine, corrispondente alla larghezza dei rettangoli
corrispondenti si considera deterministica e nota. In generale, se esistono alternative di assegnazione, il
tempo di esecuzione del task considerato è diverso per le diverse macchine cui può essere assegnato.
Lezione 27/09/2021

Vi sono altri Indici di Prestazione, per il modello m.t.o., basati sull’INVENTORY (Giacenza della
Roba).

 Nw: è il numero medio di job che stanno aspettando: più alto è questo numero medio e peggio è.

Altri indici di prestazione per il modello m.t.o. sono quelli basati sull’UTILIZZAZIONE DELLE
MACCHINE.

 L’UTILIZZAZIONE DELLA MACCHINA non è altro che il rapporto tra i Tempi di


esecuzione che quella macchina ha fornito come servizio e la Durata intera del Processo
[CMAX].

 L’UTILIZZAZIONE MINIMA della macchina devo cercarla di MASSIMIZZARE (se


l’utilizzazione minima è al 97% significa che il processo è quasi perfettamente
parallelizzato).

 In linea di massima, ai fini dell’ottimizzazione del sistema, i primi due indici dovrebbero
essere massimizzati, mentre il terzo indice dovrebbe essere minimizzato.
 MODELLO MAKE-TO-STOCK
[Il Modello Make-to-Order è intrinsecamente riferito ad un TRANSITORIO, ossia io mi
preoccupo di ottimizzare le prestazioni di un sistema su un asse temporale finito legato alle quantità
di commesse che sono nel mio portafoglio].

Il Modello Make-to-Stock è intrinsecamente qualcosa che devo pensare come un’ottimizzazione a


regime. In questo caso mi immagino che per un periodo di tempo sufficientemente lungo un
impianto si comporti in maniera tutto sommato stazionaria.

Qui entra in gioco il concetto di REGIME STOCASTICO:


[EX: immaginiamo che io definisca un nuovo corso di studi, per esempio, Ingegneria Mineraria. Al
primo anno si iscrivono 100 studenti, il secondo anno invece 80, il terzo 60 e così via.
Quand’è che io posso dire che questa iniziativa ha avuto successo?
Quando dopo 10 anni il numero di studenti è ragionevolmente costante e non irrilevante. Quindi io
non devo valutare il successo il primo o il secondo anno, ma dopo che il sistema si è assestato.

Un EQUILIBRIO STOCASTICO è definito dal fatto che c’è una variabile aleatoria che continua a
realizzarsi e diventa stazionaria, nel senso che i valori estratti ogni volta cambiano, ma la
media/varianza/distribuzione di probabilità non cambia [il lancio di un dado è un processo in
equilibrio stocastico fin dall’inizio, perché la distribuzione di probabilità della variabile aleatori del
numero di faccia che esce è stazionario fin dall’inizio].

Un indicatore di prestazione piuttosto importante per sistemi m.t.s. è il THROUGHPUT [Flusso


d’Uscita] (produttività), che può essere definito in relazione a ciascuna classe di prodotti.
 Il concetto di CLASSE DI PRODOTTO è relativo solo al modello make-to-stock e non
order.
 TEOREMA DI LITTLE
Questo teorema vale sotto le condizioni di EQUILIBRIO STOCASTICO: tale condizione
corrisponde ad una situazione in cui le variabili di stato del sistema continuano a variare, ma in ogni
istante il valore di ciascuna di tali variabili può essere rappresentato come una variabile aleatoria
con pdf (probability density function) indipendente dal tempo, ossia in condizioni stazionarie.

 Questo Teorema è importantissimo e mi dice che il Numero Medio dei Clienti della classe
i-esima presenti nel sistema è uguale al THROUGHTPUT in uscita (che è anche uguale a
quello di ingresso) per il tempo di permanenza media.

Immaginiamo di avere in sistema dove ci sono vari servitori (che disegniamo come una macchina
più la coda). Immaginiamo che ci siano dei flussi: X1, X2 e X3 etc...

 Il fatto che rappresenti i flussi in ingresso con la stessa lettera dei flussi in uscita è
congruente con le ipotesi che sono in equilibrio stocastico [se sono in regime stocastico i
flussi in ingresso e i flussi in uscita, che sono quantità medie, devono essere uguali, perché
se no non siamo in equilibrio stocastico].

Ogni flusso mantiene la propria indipendenza e non si mischia con un altro.


Inoltre, supponiamo che non ci siano abbandoni, ossia non ci sono flussi in uscita (freccia basso).

Questo teorema mi dice che se io misuro FT che è il tempo di permanenza e lo moltiplico per il
flusso (numero clienti all’ora) e faccio questo prodotto questo mi deve dare il numero medio di
clienti nel sistema (Che è un numero puro)  N = X FT
LEZIONE 28/09/2021

 MODELLI DINAMICI AD EVENTI DISCRETI


Adesso parliamo di “Simulazione ad Eventi Discreti” [Perché esiste anche quella Continua].
I Modelli di Sistemi Dinamici ad Eventi Discreti sono caratterizzati da:
 VARIABILI DI STATO che assumono sempre valori discreti;
 TRANSIZIONI DA UNO STATO ALL’ALTRO che hanno luogo in istanti discreti
(generalmente non equispaziati) corrispondenti al verificarsi di eventi.

Un EVENTO è un qualcosa di istantaneo, infatti è chiamato ACCADIMENTO ISTANTANEO


(non ha una durata, che invece è attribuibile ad un processo), generato da fenomeni esterni o interni
al sistema considerato, il cui effetto è quello di dar luogo ad una transizione dello stato del sistema.
Si assume che non possano mai verificarsi eventi contemporanei.
[Un Processo è una lezione, uno Spostamento].
Ex. La partenza/arrivo in aeroporto è un evento, mentre il tragitto Milano - New York è un processo
perché ha una durata!

Consideriamo un semplice esempio di sistema dinamico ad eventi discreti: la coda singola


monoserver (cioè con un solo servitore), la cui schematizzazione è rappresentata:

Si assume di conoscere il processo degli arrivi ed il processo di servizio, che i clienti (customers)
siano tutti della medesima classe, che la macchina sia sempre operativa (ovvero non ci siano mai
guasti), e che funzioni secondo una POLITICA DI SERVIZIO FIFO (first-in first-out) ed un
“regime” work-conserving (ovvero la macchina non può essere inattiva quando vi sono clienti in
attesa di servizio).

 I Sistemi sono caratterizzati da una Politica di Servizio.


 Gli arrivi sono caratterizzati da una serie di eventi caratterizzata da variabili discrete.
 Ho due processi da modellare: Arrivi e Servizi.

Il Processo degli Arrivi e quello di Servizio sono supposti corrispondere a sequenze di variabili
aleatorie INDIPENDENTI IDENTICAMENTE DISTRIBUITE (I.I.D.).
Inoltre, assumiamo che i due processi siano indipendenti tra loro.

EX. Immaginiamo il lancio del dado. Quello che esce al primo lancio è una variabile aleatoria,
quello che esce al secondo lancio è una variabile aleatori e così via.
La PDF della variabile aleatoria è vista come un impulso di Dirac di area 1/6.
 Un processo stocastico è una sequenza di variabili aleatorie indipendenti e indistinguibili.

Ex. Pensiamo alla temperatura misurata alle 16:00, poi 17:00, 18:00 e così via.
Questa temperatura la indico come una sequenza discreta di variabili aleatorie a valori continui.
Questa sequenza di variabili aleatorie posso definirla come una sequenza IID?
Sicuramente No! Indipendenti No, perché se la temperatura alle 16:00 mi segna 18°C è poco
probabile che alle 17:00 mi segni -15°C.
Sono indipendentemente distribuite?
No, perché più andiamo sul tardi più le temperature si abbassano.

Consideriamo la temperatura alle 16:00 di oggi, 28 settembre 2021 e la temperatura alle 16:00
dell’anno dopo, settembre 2022, e così via.
Questa sequenza di variabili aleatori, campionate su un anno, sono indipendenti tra loro?
Probabilmente si (a meno di un cambiamento climatico drastico), perché sapere che oggi la
temperatura è 25°C non ci da nessuna informazione sulla temperatura dell’anno dopo.
Sono Identicamente distribuite? Probabilmente Sì, la pdf sarà più o meno la stessa.

 Quindi una stessa variabile aleatori, inserita in un contesto stocastico diverso, da luogo a
processi diversi [non IID o IID].

 ALGORITMO DELLA SIMULAZIONE AD EVENTI DISCRETI


Questo modello ad eventi discreti ha lo stesso significato concettuale di un’equazione differenziale
in un contesto modello a tempo continuo.
Innanzitutto, è necessario individuare le variabili di stato del sistema, che sono già state considerate
nel paragrafo precedente.
In secondo luogo, è necessario determinare le classi di eventi il cui Accadimento Istantaneo da
luogo alle Transizioni di Stato. In questo esempio, tali classi sono soltanto due:

 e1 evento “arrivo di un cliente dall’esterno”;


 e2  evento “fine servizio”.

 Si potrebbe definire anche una classe per l’evento “inizio servizio”, tuttavia l’introduzione
di tale classe di eventi è del tutto inutile, in quanto non si tratterebbe di un evento
indipendente; un evento “inizio servizio” coincide sempre infatti con un evento “fine
servizio” o con un evento “arrivo di un cliente dall’esterno” (almeno nell’ambito delle
ipotesi introdotte a proposito del sistema considerato)

Ci sono, quindi, due eventi che possiamo inserire nella LISTA DELLE CLASSI DI EVENTI, ossia:
𝐿𝐶𝐸 = {𝑒1, 𝑒2}

Poi abbiamo un’ulteriore lista, ossia la LISTA DEGLI EVENTI ATTIVI (ALL’ISTANTE t).
Tale lista elenca le classi di eventi per cui, all’istante t, vi è un evento schedulato (ovvero il cui
istante di accadimento è stato già prestabilito). Si noti che, di regola, si assume che, per ogni classe
di evento, vi sia al più un singolo evento schedulato.

La lista degli eventi attivi all’istante t può essere, ad esempio, la seguente:


𝐿𝐸𝐴(𝑡) = {𝑒1,𝑒2 }

In tal caso, evidentemente, sono già stati schedulati, per il futuro (rispetto all’istante t), due eventi,
uno di classe 𝑒1 e uno di classe 𝑒2.
 Si noti che la LEA(t), a differenza della LCE, è una lista dinamica.

[Guarda poi le Dispense fino alla fine del paragrafo: leggile veloce].
LEZIONE 04/10/2021

La volta scorsa abbiamo visto un processo di questo genere: una cosa singola in cui arriva un
qualche flusso ed esce e va da qualche parte.

Tendenzialmente quello che ci interessa è la variabile di stato n’(t), ossia il numero complessivo dei
clienti all’istante t del sistema.
L’algoritmo della simulazione ad eventi discreti prevede:
- DEFINIZIONE DI VARIABILE DI STATO (nel nostro caso era una sola);
- DEFINIZIONE DELLE CLASSI DI EVENTI, ossia specificare che cosa può succedere:
o E1  ARRIVO DALL’ESTERNO di un cliente (ovviamente della stessa classe);
o E2  FINE DEL SERVIZIO.
- STESURA DEL “MODELLO” (speudo-codice) DELLE TRANSIZIONI per ogni tipo di
classe di eventi.

Questo, sostanzialmente, è il filo logico che seguiamo.

ESERCIZIO: simulazione di un processo manifatturiero modellato come una rete di code aperta.

[Una rete di coda aperta vuol dire: “RETE DI CODE” vuol dire sistemi connessi (come abbiamo
visto), “APERTA” vuol dire che abbiamo un numero di clienti che non è costante.

Esempio:
Immaginiamo un sistema manifatturiero/produttivo in cui abbiamo un certo numero di servitori, un
certo flusso in ingresso di clienti, poi abbiamo una macchina di carico/scarico [load/unload] che
ogni volta che esce un cliente mi riporta all’inizio del processo, ovviamente abbiamo un altro flusso
di cliente dove abbiamo un’altra macchina si scarico/carico e abbiamo il flusso del cliente che
rientra.
Se per ogni cliente che esce di ogni tipo rientra il materiale grezzo corrispondente al cliente che è
appena uscito la rete di code si chiama CHIUSA, quindi parleremo di numero di clienti costante
[N1/N2]. Una rete di code APERTA, invece, è una rete come quella sopra a inizio lezione, la coda
singola, in cui il numero di clienti è variabile. Una rete di code aperte ha un numero di clienti (che
sono le entità transeunte su cui devono essere eseguite le operazioni) che possono essere anche
infiniti.
Quale sono le ipotesi che facciamo su questo esercizio?

Vogliamo simulare un processo produttivo caratterizzato dalle seguenti ipotesi:


1. i prodotti che devono essere realizzati appartengono a N classi diverse;
2. la rete di code è aperta, ovvero il numero di clienti nel sistema complessivo non è costante; i
processi di arrivo sono assunti tutti indipendenti dallo stato del sistema ed indipendenti fra loro;
ogni processo di arrivo è modellato come una sequenza di variabili aleatorie i.i.d. (con distribuzione
nota); gli arrivi hanno tutti luogo nella macchina M1;
3. tutte le operazioni sono semplici lavorazioni (non sono presenti assemblaggi né disassemblaggi);
4. le operazioni che devono essere eseguite su ogni tipo di prodotto sono rigidamente sequenziate in
modo prefissato (si veda la Figura 4);

5. vi sono K risorse nel sistema; le risorse non sono condivisibili (cioè corrispondono a delle
macchine mono-server);
6. ogni operazione Oi,j è associata univocamente ad un’unica risorsa Mk, con k = (i,j); in tal
modo, nel modello non sono presenti variabili decisionali riguardanti l’assegnazione delle
operazioni alle macchine;
7. la politica di servizio è FIFO per ogni macchina; ogni macchina opera in regime “work
conserving”;
8. il sistema di trasporto è ideale (tempo di trasporto nullo e capacità di trasporto infinita);
9. i minimi e i massimi waiting time sono, rispettivamente, 0 e +∞, per ogni coppia di operazioni
legate da un vincolo di precedenza;
10. non sono necessari tempi di attrezzaggio;
11. ogni macchina ha un buffer di ingresso con capacità infinita; non sono presenti buffer di uscita;
12. le macchine sono sempre perfettamente affidabili: non si rompono mai e non sono mai necessari
interventi di manutenzione;
13. l’esecuzione delle operazioni è non-preemptive (ovvero, non può essere mai interrotta);
14. ogni macchina compare al più una sola volta nella sequenza dei servizi relativi ad una certa
classe di prodotti, ovvero ∄ (j,l),j≠l :  (i,j) =  (i,l), per alcun i = 1,…,N; 1
5. tutti i prodotti finiti escono dalla macchina MK;
16. tutti i processi di servizio sono sequenze di variabili aleatorie i.i.d. e sono fra loro indipendenti.
Questa è l’idea che vogliamo rappresentare:

 Per esempio, c’è una classe di clienti P1 (quella rossa) che va da M1, poi M2, M3,…, Mk.
Invece, la classe di clienti P2 (Blu) entra in M1, poi va da M3, poi va su M2 e poi torna
avanti.
In questo caso vediamo che non è necessariamente vero che l’ordine delle macchine tra i
diversi clienti sia lo stesso.I clienti gialli non passano da M2, perché non abbiamo supposto
che tutte le macchine devono essere visitate da tutte le categorie di clienti.

Si suppone che le informazioni che si vogliono ricavare dall’esperimento simulativo, di durata


(simulata) prefissata pari a T , siano:
 numero di clienti complessivamente prodotti, per ogni classe [questo indicatore di prestazione mi
dice quanto sto producendo]
 utilizzazione di ciascuna risorsa (macchina) [questo indicatore mi dice quanto correttamente
sono usate le singole risorse];
 lunghezza di coda media su ciascuna macchina [mi dice qual è il livello di congestione delle
singole risorse].
La costruzione del modello di simulazione prevede, al primo passo, l’identificazione delle variabili
di stato [quello visto a inizio lezione].

Possiamo distinguere, in questo caso, 2 insiemi di variabili di stato.


Possiamo distinguere, in questo caso e in generale, due insiemi di variabili di stato:
1) VARIABILI DI STATO ESSENZIALI  Con tale denominazione si indicano quelle
variabili il cui comportamento deve essere necessariamente rappresentato, pena
l’impossibilità di “propagare” l’informazione necessaria alla descrizione della dinamica del
sistema considerato.
------------------------------------------------------------------------------------------------------------------------
EXCURSUS:
Immaginiamo un circuito RLC. Come rappresentiamo lo stato di un sistema fatto in questo modo?
Per scrivere l’equazione di stato del sistema, quali variabili di stato dobbiamo determinare? Se non
ho queste variabili di stato non riesco a capire che cosa succede al sistema.

Le variabili di stato sono quell’insieme minimale che l’analista del sistema deve possedere per poter
capire che cosa succede da un certo istante in poi.
Questo è l’analogo delle variabili di stato essenziali.
Dopodiché ci sono altre variabili (in questo esempio V3) che non è una variabile di stato, ma è una
variabile di uscita.
L’analogo di queste variabili che chiamiamo d’uscita sono le variabili di stato non essenziali che
sono quelle che a me interessa determinare con risultati dell’esperimento.
------------------------------------------------------------------------------------------------------------------------

Le variabili di stato essenziali sono, in questo caso:


 σk(t )  che indica lo “stato” ed eventualmente il tipo di lavorazione della macchina Mk,
h

nell’intervallo [t h ,th+1); il valore di questa variabile è definito pari a zero se la macchina è


inattiva, mentre si definisce pari a i, se la macchina sta eseguendo un’operazione relativa alla classe
Pi di prodotti; k = 1,…,K;

Disegno: inizialmente sta lavorando un cliente della classe P2, poi P1, poi P4.
Se la macchina marcasse il valore zero significa che è IDLE, è inattiva.
 Zk(t )  che indica il numero di posizioni occupate nella fila di attesa (buffer) relativa alla
h

macchina Mk, nell’intervallo [t h ,th+1); k = 1,…,K;

[non è R ma h]

 Un VETTORE che ha tante posizioni quante sono le posizioni occupate dal buffer in quel momento:

Questo vettore rappresenta lo “stato” del buffer relativo alla macchina Mk in [t h ,th+1); il valore
della componente generica bufk,l(t h ) è dato dalla classe di prodotti (o semilavorati) cui appartiene
il prodotto nella l-esima posizione del buffer; si noti che la rappresentazione dello stato del buffer è
essenziale a causa dell’assunzione che le code alle varie macchine vengano gestite secondo una
politica di tipo FIFO.

2) VARIABILI DI STATO SECONDARIE  Il secondo insieme di variabili di stato è quello


delle variabili di stato secondarie, la rappresentazione della cui evoluzione è opportuna allo
scopo di ottenere “automaticamente”, alla fine dell’esperimento simulativo, i dati desiderati.
In linea di principio, sarebbe possibile ottenere queste informazioni esaminando, alla fine
dell’esperimento simulativo, la cosiddetta “TRACCIA” della simulazione, ovvero
l’andamento, durante tutta la durata dell’esperimento simulativo, opportunamente registrato,
delle variabili di stato essenziali, e traendo da esso le informazioni desiderate. Questo
approccio risulterebbe però assai macchinoso e “time consuming”. Per tale ragione, è in
generale opportuno ricorrere alle variabili di stato secondarie.

Disegno per capire:


Immaginiamo di fare la simulazione di tutto questo orizzonte temporale, da 0 a T.
Io determino la simulazione e alla fine io ho quella che si chiama TRACCIA DELLA
SIMULAZIONE. A questo punto il mio esperimento mi dà l’andamento della variabile che mi
interessa e quindi posso determinare tutta l’evoluzione dello stato del sistema fino a T. questo
grafico ideale è quella che si chiama traccia delle simulazioni.
Le variabili di stato secondarie sono, in questo caso:
 NUMi(t) = numero di clienti appartenenti alla classe Pi usciti dalla macchina MK (quindi
prodotti finiti) nell’intervallo [0,t]; i = 1,…,N;
 Uk(t) = utilizzazione media della k-esima risorsa nell’intervallo [0,t]; k = 1,…,K;
 Lk(t) = lunghezza media della coda, alla macchina Mk, nell’intervallo [0,t]; k = 1,…,K.

Si noti che queste variabili di stato secondarie debbono tutte essere inizializzate con il valore zero.
La lista delle classi di eventi corrisponde in questo caso a
𝐿𝐶𝐸 = {𝑒1,𝑒2, … ,𝑒𝑁, ,𝑒𝑁+1, … ,𝑒𝑁+𝐾,𝑒𝑁+𝐾+1,}

dove:
 e1,..,eN sono gli eventi “arrivo di clienti dall’esterno” (rispettivamente delle classi P1,…,PN);
 eN+1,…,eN+K sono gli eventi “fine servizio” (rispettivamente sulle macchine M1,…,MK);
 eN+K+1 è l’evento “fine simulazione”.

Per quanto riguarda le transizioni di stato leggi le dispense!

Questo MAPPING è definibile perché non abbiamo mai alternative di assegnazione: quindi se qui
c’è un cliwnte di tipo Pi io automaticamente so dove vede andare 8in questo caso la macchina Mp).
Inoltre, ogni cliente di tipo i passa la massimo una sola volta sulla macchina Mk.

A questo punto eseguo per la macchina P le stesse variazioni di stato della macchina 1 al caso
precedente.

[ved. tutte le dispense sotto la figura: leggere veloce eh].


LEZIONE 05/10/2021

La scorsa lezione abbiamo visto come costruire un modello di simulazione, ossia come realizzare
un programma. Un SIMULATORE è un programma e come tale deve avere un’esecuzione
programmata, cioè perfettamente programmata senza gradi di libertà. Quando si costruisce un
simulatore e si fa un RUN del simulatore è come si facesse un’ESPERIMENTO fisico. Ogni
esperimento deve essere ripetibile, ma deve essere anche un esperimento stocastico, ossia deve
essere realizzato in condizioni che riproducano le aleatorietà del processo che io sto cercando di
simulare.

Noi pilotiamo il nostro sistema attraverso SEQUENZE PSEUDO-CASUALI.


Le “Sequenze Pseudo-Casuali” sono sequenze di realizzazioni di variabili [Per esempio: X1, X2,…,
Xn] tali che si possano ottenere attraverso una Ricorsione [Per esempio: Xi+1 = f(Xi)], quindi non c’è
bisogno di effettuare qualche sorta di esperimento aleatorio vero e proprio, ma si possono ottenere
in maniera tale che le proprietà statistiche di queste sequenze si avvicinano moltissimo a quelle di
una sequenza casuale vera e propria. Quindi sono delle sequenze casuali mascherate.

[ESEMPIO  Sono andato a giocare alla Roulette e i numeri usciti erano: 3, 3, 3, 3 oppure 3, 6, 9,
12… pensiamo che sia una farsa. Se invece esce 3, 65, 34, 52 allora è più plausibile e non pensiamo
ad una farsa anche se questa sequenza ha la stessa identica probabilità di realizzarsi delle altre. Il
trucco è che quest’ultima sequenza assomiglia ad una sequenza generata casualmente. È una finta
sequenza generata casualmente, che però passa un test].

La generazione di variabili aleatorie nel corso di un esperimento simulativo riveste la massima importanza
in quanto condiziona in modo assai rilevante la correttezza e la significatività dei risultati.
In pratica, nella costruzione dei programmi di simulazione, si utilizzano generatori di sequenze pseudo-
aleatorie in grado di approssimare in modo soddisfacente le distribuzioni desiderate.

Si tratta comunque — è bene ricordarlo — di sequenze deterministiche, e come tali, quindi, ripetibili (il che,
tra l’altro, assicura la ripetibilità dell’esperimento simulativo).

Una qualunque sequenza pseudo-casuale (che approssima una qualsiasi distribuzione) può sempre essere
ottenuta a partire sa una sequenza pseudo-casuale che approssima una distribuzione uniforme tra 0 e 1.

Se io riesco a rappresentare in maniera soddisfacente il processo di estrazione di una PDF uniforme


tra 0 e 1, allora riesco a fare qualunque cosa. Soddisfacente vuol dire che il mio algoritmo di
generazione deve dare dei risultati paragonabili a quelli che io avrei se effettivamente estraessi un
numero uniforme tra 0 e 1. Un esperimento che potrebbe generare un numero tra 0 e 1 in maniera
uniforme è: “io estraggo una cifra tra 0-9 con un dado. È sicuramente un numero maggiore di 0e
sicuramente minore di 1”. Naturalmente quella che ottengo non è una vera distribuzione a valori
continui, perché se io mi fermo alla 10° cifra, cioè al 10° lancio del dado, quanti possibili valori
posso avere? 10^10. Quindi la distribuzione a valori discreti tra 0 e 1 è 10^10 quindi quasi continua.
4.1 Generazione di sequenze pseudo-casuali che approssimano una sequenza di variabili
aleatorie i.i.d. con distribuzione uniforme tra 0 e 1

Per approssimare questa distribuzione, vengono generate sequenze deterministiche (“pseudorandom”) che
hanno proprietà statistiche soddisfacenti, rispetto a quelle che caratterizzano la distribuzione “teorica”. Le
sequenze pseudo-random differiscono dalle “vere” sequenze random per diversi aspetti, quali:

Quello che la gente si è sforzata di fare in quest’ambito è quella di creare degli ALGORITMINI
che approssimano una sequenza di variabili aleatorie IID con distribuzione uniforme tra 0 e 1.

Che caratteristiche devono avere questi generatori di sequenza pseudo-casuali?

 i valori generati dalla sequenza pseudo-random non hanno una distribuzione realmente uniforme;
 i valori generati hanno in realtà una distribuzione discreta invece che continua;
 vi sono scostamenti tra la media e la varianza “sperimentali” e quelle “teoriche”;
 i valori generati nella sequenza pseudo-casuale presentano variazioni cicliche che danno luogo, ad es., a:
o autocorrelazioni [in realtà c’è qualcosa di fastidioso: ogni variabile dipende dalle precedenti];
o “gruppi” di valori “alti” seguiti da “gruppi” di valori “bassi”;
o presenza di coppie “alto-basso” ripetute.

Un buon algoritmo per la generazione di sequenze pseudo-casuali che approssimano una sequenza con le
caratteristiche considerate in questo paragrafo deve avere le seguenti caratteristiche:
 essere “veloce” dal punto di vista degli oneri computazionali;
 avere un “ciclo” sufficientemente lungo (le sequenze pseudo-casuali sono sempre sequenze cicliche);
 essere replicabile;
 avere buone caratteristiche statistiche (rispetto a quelle della sequenza “teorica”).

Poi c’è un esempio chiamato “Metodo di Congruenza Lineare” [ved. dispense], ma


è solo un Esempio.

4.2 Generazione di sequenze pseudo-casuali che approssimano una sequenza di variabili


aleatorie i.i.d. con distribuzione arbitraria assegnata

Questo perché non tutte le sequenze sono uniformi tra 0 e 1, molto spesso le sequenze sono con
PDF arbitraria.

Per esempio, la variabile aleatoria X ha una PDF [fx(t)] con un andamento come in figura.
Non possono generarla come se fosse uniforme: se fosse uniforme non avrei quel picco.
C’è un metodo, chiamato METODO DELLA TRASFROMAZIONE INVERSA, che mi permette a
partire da una distribuzione uniforme tra 0 e 1 di generare una distribuzione qualsivoglia. Quindi
trasformare una sequenza di realizzazione 0-1 in una sequenza di realizzazioni congruente con una
qualsivoglia distribuzione assegnata liberamente.

La tecnica più generale è il metodo della trasformazione inversa, in cui si suppone di disporre di un
generatore di sequenze pseudo-casuali, con distribuzione uniforme fra 0 e 1, pienamente “affidabile”.

L’idea è quella di supporre ovviamente di conoscere la distribuzione (pdf fX(x)e distribuzione cumulativa
FX(x)) di cui si vogliono generare le realizzazioni. Il metodo della trasformazione inversa corrisponde alla
procedura rappresentata in Figura 8, dove le realizzazioni R1,R2,R3,…della variabile X con distribuzione
assegnata vengono create sulla base dei valori forniti dal generatore uniforme fra 0 e 1. I valori U1, U2, U3
sono ottenuti da un generatore uniforme fra 0 e 1 e corrispondono ai valori che si leggono in ordinata

[In figura ho rappresentato l’andamento della funzione cumulativa. Come ogni funzione cumulativa
che si rispetti questa qui parte da 0 e poi raggiungerà asintoticamente il valore 1].
Adesso immaginiamo di essere in grado di generare in maniera affidabile attraverso un buon
generatore di realizzazioni di una distribuzione di una variabile aleatoria uniforme tra 0 e 1.
Questo generatore uniforme tra 0 e 1 mi spara qua delle realizzazioni U1, U2, U3: tutte comprese
tra 0 e 1. Non è mica detto che queste realizzazioni siano crescenti (vedi l’ordine: 2, 3, 1).
Dopodiché intercettiamo questa curva qua con queste realizzazioni e andiamo a prendere i punti
corrispondenti sull’asse delle ordinate. Queste sono le realizzazioni delle variabili aleatorie X
caratterizzate da una PDF assegnata e rappresentata in maniera grafica].

Per provare la correttezza del metodo vedi le slide!


DISTRIBUZIONE ESPONENZIALE (ved dispense)
Come applicazione del metodo della trasformazione inversa, si consideri la generazione di sequenze
di variabili aleatorie distribuite secondo la distribuzione esponenziale.

La distribuzione esponenziale è caratterizzata da:

Quindi, applicando il metodo della trasformazione inversa, la relazione fra la generica realizzazione Ui del
generatore uniforme e la corrispondente realizzazione Ri del generatore esponenziale è

Il metodo della trasformazione inversa si può utilizzare anche per la generazione di realizzazioni di variabili
aleatorie distribuite in modo “empirico”, ovvero secondo distribuzioni rappresentate da istogrammi ottenuti
raccogliendo dati sperimentali e per la generazione di variabili aleatorie distribuite in modo discreto.

Poi abbiamo un altro metodo: METODO DELLA TRASFORMAZIONE DIRETTA (ved. dispense).

4 Analisi statistica dei risultati di esperimenti simulativi [leggi le dispense]


Immaginiamo di aver costruito bene il nostro modello di simulazione.
A questo punto sia in condizioni di condurre un esperimento simulativo.
LEZIONE 11/10/2021
L’ultima volta abbiamo stretto l’ambito di interesse alla sola ANALISI DI REGIME.
 L’analisi di regime è chiedersi cosa succede ai nostri indicatori di prestazione quando il
nostro sistema si è assestato e si è esaurito l’eventuale transitorio.

L’EQUILIBRIO STOCASTICO non è altro che una situazione in cui il sistema è caratterizzato da
variabili di stato che sono variabili del tempo la cui PDF non cambia [se non cambia la PDF non
cambia neanche la media e la varianza di queste variabili].

Immaginiamo di restringere il campo di interesse all’analisi prestazionale in condizioni di equilibrio


stocastico. Questo tipo di analisi si riferisce alle prestazioni di un sistema sul lungo periodo.

Il SIMULATORE (è un sistema finto che approssima quello vero) è l’ANALIZZATORE DI


PRESTAZIONI e non un “Ottimizzatore di Prestazioni”.
 Se ci rendiamo conto che con un certo tipo di progetto le prestazioni non sono soddisfacenti
allora occorre cambiare progetto.

Quante simulazioni devo fare prima di potermi fidare dei risultati?


Bisogna ripetere l’esperimento simulativo un certo numero di volte in maniera indipendente l’una
dall’altra, usando delle inizializzazioni per le variabili aleatorie differenti e analizzare la serie di
risultati che ottengo per capire se il numero di provo che ho effettuato è suffiziente o meno.

In questo caso la variabile aleatoria è l’indicatore di prestazione che noi vogliamo.


Un simulatore è un oggetto che trasforma delle PDF in ingresso e ottiene delle altre PDF che sono
gli INDICATORI DI PRESTAZIONE.

In altre parole, un Simulatore è un Esperimento Aleatorio che determina una realizzazione


dell’indicatore di prestazione che voglio ottenere. Non è un qualcosa che mi dà un numero, ma mi
dà una realizzazione di quell’indicatore di prestazione con un determinato input e dati.
A interessa stimare la PDF di quella variabile aleatoria.

Siano x1,…,xn n osservazioni (realizzazioni) indipendenti di una data variabile aleatoria X [le
realizzazioni sono i risultati degli esperimenti simulativi].
Si può così definire la cosiddetta MEDIA CAMPIONARIA.

La MEDIA non è altro che una stima. Esistono due tipi di medie: “Average”, che è quella
aritmetica, ed “Expectation” per indicare il valore atteso. L’Expectation e l’Average coincidono
quando in numero di realizzazioni tende ad infinito per la cosiddetta legge dei grandi numeri.

La formula sopra costituisce uno STIMATORE NON POLARIZZATO, ossia uno stimatore che
in media ci azzecca. Questo vuol dire che l’Expectation di questo stimatore a sua volta è una
variabile aleatoria, perché le X sono realizzazioni (quindi una variabile aleatoria).
ESEMPIO
La temperatura qui fuori misurata alle 10:00 del mattino di un giorno di ottobre ha una PDF
stazionaria non dipendente dal tempo, perché supponiamo che più o meno tutti i giorni di ottobre
sono uguali. Se io il giorno dopo misuro la temperatura ottengo una realizzazione di questa variabile
aleatoria. La realizzazione è un numero. Prima che io domani misuro questa temperatura, la
realizzazione è essa stessa una variabile aleatoria. Questo vuol dire che prima di realizzare gli
esperimenti e prima di ottenere questi valori qua, questi sono variabili aleatorie.
Quindi 𝜃̂n, che è una funzione semplice di variabile aleatoria, è essa stessa una variabile aleatoria.

Dalla Formula 4 si deduce che la varianza del mio stimatore è uguale al rapporta tra la varianza
della variabile che voglio stimare e n^2.
Successivamente è utile valutare l’INTERVALLO DI CONFIDENZA per capire quanto ci
possiamo fidare di questa stima 𝜃̂n.
Introduciamo, così, il TEOREMA DEL LIMITE CENTRALE.

Questo Teorema ci dice che se io ho un numero molto alto di variabili distribuite in qualunque
modo allora la variabile aleatoria che è la somma di queste variabili converge asintoticamente alla
distribuzione normale. In particolare, se queste variabili sono depurate del valore medio e
normalizzate alla direzione standard convergono alla normale standard N[0,1].
Questo vuol dire che:

Dalle tavole numeriche relative alla distribuzione gaussiana “standard” possiamo allora ricavare i
valori zα∕2 e -z α∕2 (si veda la Figura 10), per assegnato valore di α.
CAPITOLO 3°: LE CATENE DI MARKOV
Le Catene di Markov sono processi stocastici che godono di una particolare proprietà, detta
“Markov Property” e possono essere visti in 4 modi diversi:
 PROCESSO A STATO CONTINUO/DISCRETO;
 PROCESSO A TEMPO CONTINUO/DISCRETO.

ESEMPIO
Pensiamo alla temperatura misurata fuori è un processo stocastico se noi immaginiamo che venga
misurata ad un’ora ben definita (10:00 mattino) ogni giorno. In questo caso la temperatura è un
processo stocastico a stato continuo, perché idealmente la temperatura è una variabile reale.
Se la misuro alle 10:00 ogni giorno questo è un processo stocastico a tempo discreto.
Il meteo, quando prevede la temperatura, dà una stima con un numero intero e non come un
termometro che usa valori reali: siamo quindi nel caso di un processo a stato discreto e tempo
discreto. Se immagino di misurare di continuo la temperatura qui fuori ho un processo stocastico a
tempo continuo e stato dipendente dalla strumentazione.

Noi ci occuperemo di processi a stato discreto. I Processi a Stato Discreto, che godono della
proprietà di Markov, si chiamano CATENE DI MARKOV, perché si possono rappresentare
sostanzialmente con delle strutture grafiche che assomigliano a delle catene.

Prima bisogna introdurre il concetto di PROCESSI DI POISSON.


Un PROCESSO DI POISSON è un processo puntuale, ossia un processo che corrisponde ad una
serie di eventi che si realizzano.

Per esempio, il processo degli arrivi in cui ho una serie di eventi non sincronizzati e questi arrivi
sono quello che noi chiamiamo una sequenza di fatti che avvengono e che rappresentano in
manifestarsi/concretizzarsi dei nostri processi.

Il PROCESSO DI POISSON è un “Processo Puntuale” [POINT PROCESS o COUNTING


PROCESS].

Il Processo consiste nel considerare quando si realizzano certi eventi, ovviamente in maniera
asincrona senza nessuna pretesa di regolarità, su un orizzonte temporale il Processo stocastico è
sempre di una variabile dipendente dal tempo. In questo caso la chiamiamo N(t) che rappresenta il
numero di eventi che si realizzano nell’intervallo di tempo (0, t]. Un processo stocastico non è altro
che la rappresentazione matematica riguardo l’incertezza di quello che può accadere nel futuro.
Si consideri una sequenza di eventi discreti a partire da un certo istante.
Sia {N(t)} un processo stocastico di conteggio che, appunto, conta gli eventi che accadono in (0,t].
Si ha allora N(t1) ≤ 𝑁(t2) ∀ 𝑡1 ,𝑡2: ∀ t1 ≤t2. Si definisce N(t1,t2) = N(t2) - N(t1).
Si introducono ora le seguenti assunzioni:

1) in ogni istante può verificarsi al massimo un singolo evento (cioè non ci sono eventi
contemporanei);
2) presi due intervalli arbitrari non sovrapposti (t1,t2] e (t3,t4], tali che t1 < t2 ≤t3 < t4, le variabili
aleatorie N(t1,t2) e N(t3,t4) sono indipendenti fra loro [EX. Quello che si realizza alle 8-9 di sera è
indipendente da quello che si realizza alle 10-11 di sera];
3) la probabilità Pr{N(t1,t2) = n} dipende solamente dalla differenza (t2 – t1), oltre che,
ovviamente, da n.

 Un processo stocastico come quello descritto e che soddisfa le assunzioni viste sopra si dice
processo di conteggio (counting process) stazionario con incrementi indipendenti, o
processo di Poisson [I Processi di conteggio possono essere visti come Processi
Poissoniani].

[Leggere questi Risultati  Sono proprietà derivate da Poisson]:


 Quindi se io so che una serie di eventi accadono con tempi di INTER-EVENTO distribuiti
in modo esponenziale e queste realizzazioni sono una sequenza di variabili aleatorie IID
questo implica che il processo degli arrivi/eventi è un PROCESSO DI POISSON e quindi
gode delle tre assunzioni precedenti e viceversa.

 Dal punto di vista concettuale e matematico un processo di Poisson e una distribuzione


esponenziale sono sostanzialmente la stessa cosa: sono due facce della stessa medaglia.

 Qua abbiamo il risultato della cosiddetta PROPRIETÀ MEMORYLESS.


Immaginiamo di avere un apparato elettrico (Lampadina) i cui tempi di Inter-Guasto siano
distribuiti in modo esponenziale. Questo vuol dire che tra un guasto e l’altro c’è un tempo
che è una variabile aleatoria che è una PDF esponenziale. Se un tale oggetto esiste allora si
dimostra che l’assunzione che la PDF sia esponenziale implica che l’informazione relativa a
quanto tempo ha già funzionata la lampadina sia irrilevante ai fini della valutazione del
prossimo tempo residuo prima del guasto.

ESEMPIO
Se esistesse una lampadina esponenziale e la lascio ininterrottamente accesa per 3 anni, poi ne
compro una uguale e la metto in cucina: quindi una è accesa da 3 anni e una da 10 minuti.
La probabilità che non si verifichi un guasto delle due lampadine nella prossima ora è la stessa.
Questo è un modello teorico a cui corrisponde la distribuzione esponenziale.
 Questa proprietà 3 evidenzia che il processo di Poisson è un costrutto teorico difficilmente
identificabile in maniera esatta con una qualche realtà sperimentale.

ESEMPIO
Io sono in un certo istante di tempo in cui si è verificato un certo evento e ho osservato che per un
intervallo di tempo pari a Z non si è verificato nessun evento, quindi è qualcosa che ho acquisito.
A questo punto mi chiedo qual è la probabilità che V sia minore o uguale di Z+t condizionata
all’osservazione fatta che V è maggiore di Z [ V è il tempo di inter-evento, ossia una congettura
sul tempo che ci sarà tra l’istante iniziale e il prossimo evento che non so quando si verificherà].
La probabilità che V<Z+t è la probabilità che si verifichi un evento prima dell’istante in cui finisce t.

 Consideriamo un processo di Poisson che è la somma di processi di Poisson.


Per esempio, una stazione di rifornimento: il processo stocastico delle auto, delle moto e dei
tir supponiamo che siano indipendenti tra loro con frequenze differenti. Questi tre processi
possono essere sommati dicendo che il processo che mi interessa è l’arrivo di qualcosa.
L’arrivo di qualcosa si manifesta se arriva un auto, una moto o un tir. La frequenza di questo
arrivo di qualcosa è la somma delle 3 frequenze. Il processo che ottengo è ancora un
processo di Poisson con le stesse caratteristiche dei componenti.
LEZIONE 12/10/2021
 La prima parte della Lezione comprendeva un Recap della lezione scorsa: ho aggiunto le
cose in più.

CATENE DI MARKOV A TEMPO DISCRETO

 I sistemi in cui lo stato è discreto si possono sempre rappresentare come SISTEMI


SCALARI, ovvero con una singola variabile di stato.

Se io avessi, per esempio, una rete di code, come quella fatta in figura, con processi di arrivi, anche
se i clienti fossero tutti della medesima classe il vettore di stato è un vettore [N1 N2 N3].
Come faccio a rappresentare questo vettore come uno scalare?
La risposta è che se queste variabili fossero discrete, potrei definire una qualche codifica che fa
corrispondere queste variabili ad un'unica variabile.
Dopodiché chiamo lo stato 0, lo stato 1, lo stato 2 e così via.

Una catena di Markov a tempo discreto (DTMC) è un sistema a stato e tempo discreti in cui
l’evoluzione della singola variabile di stato Xk è caratterizzata dal fatto che vale la seguente
proprietà (Markov property):

𝑃𝑟{𝑋𝑘+1 = 𝑥𝑘+1 |𝑋𝑘 = 𝑥𝑘, … , 𝑋0 = 𝑥0 } = 𝑃𝑟{𝑋𝑘+1 = 𝑥𝑘+1 |𝑋𝑘 = 𝑥𝑘 }


Questa proprietà dice che la variabile di stato aleatoria 𝑋𝑘+1 può essere rappresentata come una
transizione da uno stato ad un altro ad un altro ancora. Inoltre, la probabilità di essere all’istante 𝑋𝑘+1
in un certo valore che chiamo 𝑥𝑘+1 condizionata dal fatto che all’istante K io stessi in un certo
valore, in K-1 in un altro e così via fino all’istante 0, quindi condizionata da tutta la storia di dove
mi trovavo io dall’origine 0 fino all’istante k è uguale alla probabilità di essere nello stato 𝑥𝑘+1
condizionata all’ultimo stato in cui sono.
 Questa proprietà mi dice sostanzialmente che se il processo è una CTMC la probabilità che
io ho di transire da uno stato ad un altro non dipende da dove io sia stato prima di quello
stato. Tutto il passato di quello stato può essere dimenticato.

 Lo stato in un certo istante mi da tutta l’informazione che posso aver bisogno per capire, in
maniera stocastica, quello che accadrà nel futuro.

ESEMPIO
Immaginiamo che io faccia come mestiere il commesso viaggiatore e che per qualche ragione io
devo viaggiare tra le città d’Italia (numero finito). Il sistema è a tempo discreto, quindi io sto
considerando dove mi trovo la sera del giorno k-esimo (in quale città dormo).
Quello che sto dicendo è che se sono nello Stato 2 (variabile = 2) la probabilità che vada nello Stato
3 (altra città) è 0,2, quella di andare dallo Stato 2 allo stato 4 è 0,7 e quella di andare dallo Stato 2
allo Stato 5 è 0,1 [La Somma deve dare 1  0,2 + 0,7 + 0,1 = 1]. Quello che sto dicendo è che
queste tre probabilità non dipendono da dove sono stato nelle sere precedenti: la storia precedente
può essere completamente dimenticata ai fini della valutazione di queste probabilità di transizione
[le probabilità di transizione non dipendono da dove sono stato, ma solo da dove mi trovo adesso,
ossia nello stato attuale]  Questo è il concetto di SISTEMA MARKOVIANO.

 Un SISTEMA MARKOVIANO è un Sistema Stocastico in cui lo STATO è stato ben


definito.
 La probabilità di transire da uno Stato K ad uno Stato K+n è dato dalla sommatoria sopra.
ESEMPIO
La probabilità di essere in 𝑋𝑘+𝑛 = j dato che all’istante k sono all’istante i, cioè la probabilità di
passare da i a j, cioè dall’istante k all’istante k+n è uguale alla probabilità di passare dallo stato i
allo stato r e poi allo stato j per tutti i possibili stati intermedi. Quindi la probabilità di transire da
Viterbo a Foggia, dal 10 marzo al 20 aprile, è uguale alla sommatoria su tutti i possibili stati
appartenenti a S della probabilità di andare da i a r e poi da r a j sommata su tutte le possibili tappe
intermedie che posso fare il 2 aprile.

Finire di leggere le dispense del paragrafo e anche “RISULTATO 4” dove si parla del TEMPO
DI PERMAMENZA NELLO STATO i.
LEZIONE 25/10/2021

ALTRO ESEMPIO CATENA MARKOV


Si tratta di sistemi che hanno una variabile di stato sola, sistemi scalari, perché sappiamo che un
sistema a Stato Discreto può essere sempre rappresentato come un sistema a Stato Scalare.

 Questo è un CASO STAZIONARIO in cui le Probabilità di Transizione ad un passo non


cambiano col tempo. È un sistema la cui Evoluzione del tempo non è deterministica!
 Si tratta di un SIASTEMA DINAMICO, perché le Transizioni dipendono dallo Stato [la
probabilità di andare a 3 è diversa se io parto da 0 o da 1].

Dall’equazione di Chapman-Kolmogorov si ha allora: 𝐻(𝑛) = 𝐻(𝑛 − 1)𝐻(1)


Ovviamente pi,j,1 = pi,j . H(1) = [pi,j] verrà indicata semplicemente come P .
Si ha quindi
𝐻(2) = 𝐻(1)^2 = 𝑃^2  [H(2) è la matrice delle probabilità di transizione a due passi per n generico]
𝐻(3) = 𝐻(1)^3 = 𝑃^3 …
𝐻(𝑛) = 𝐻(1)^𝑛 = 𝑃^n
Che dice che la PROBABILITÀ DI TRANSIZIONE a n passi è data dalla Probabilità di
Transizione ad 1 passo elevata alla n.

La Matrice P ha la caratteristica che la somma di ogni riga deve dare 1  Questo perché la somma
delle probabilità degli archi uscenti deve essere 1 per ogni stato.
Come si usa la formula: 𝐻(2) = 𝑃^2?
H(2) è una matrice il cui generico elemento è sulla riga i e sulla colonna j

Per esempio, vogliamo valutare P23,2 ossia la probabilità di passare dallo Stato 2 allo Stato 3 in due
salti
Altro Esempio:

Si consideri adesso la variabile aleatoria V (i) corrispondente al numero di istanti di campionamento


(o stadi) di permanenza nello stato i, quando tale stato viene visitato [Attenzione: questa Variabile
Aleatoria non ha niente a che fare con la frequenza con cui questo stato è visitato].

La distribuzione di probabilità dello Stato cambia nel Tempo: si tratta di un’incertezza dinamica.
ESEMPIO:
Immaginiamo un sistema con 3 stati.

Immaginiamo che qualcuno ci dia lo Stato Iniziale: immaginiamo che il Sistema sia nello Stato 0.

Se guardiamo Π(0) (situazione certa), Π(1), Π(2) notiamo che la distribuzione dello Stato, da 0 a 2,
diventa sempre più incerta.

2.2 Classificazione degli stati in una DTMC


ESEMPIO DI SOTTOINSIEME CHIUSO, perché la probabilità di passare da uno Stato
appartenente a S ad uno stato fuori da S è nulla.

Definizione 3 Uno stato i è detto ricorrente se i = 1. Se i < 1, lo stato i è detto transiente.


ESEMPIO:

ESERCIZIO:
LEZIONE 26/10/2021

La definizione di Stato Transiente o Ricorrente è basata sul valore del parametro ρi (rò), dove ρik è
la probabilità che il tempo Tii sia uguale a k [Tii è il tempo di ritorno].

Se ρi < 1 vuol dire che quando io esco da Viterbo (da uno Stato), non sono sicuro di tornarci e lo
stato si dice TRANSIENTE  magari ci torno un numero molto elevato di volte, ma se per una
volta si realizza l’eventualità che io esco da quello stato. O meglio esco dall’insieme di stati che
sono comunicanti con quello stato, vorrà dire che non ci tornerò mai più.

Siccome sono interessato in questo caso di studi al regime stocastico del sistema, gli STATI
TRANSIENTI non hanno nessuna rilevanza per quanto riguarda l’analisi delle prestazioni dei
sistemi, ma solo gli STATI RICORRENTI hanno rilevanza.

Se ρi = 1 lo stato si dice RICORRENTE  se io sono a Viterbo sono sicuro che quando esco da
Viterbo ci tornerò presto o tardi.

Poi abbiamo una DICOTOMIA:


 Se l’EXPECTATION della variabile aleatoria Tii è minore di infinito, cioè una quantità
finita, allora si dice RICORRENTE POSITIVA;
 Se l’EXPECTATION della variabile aleatoria Tii è una quantità infinita, allora si dice
RICORRENTE NULLO.

ESEMPIO:
La condizione per cui il sistema ammetta un regime è che gli stati siano tutti ricorrenti positivi, però
non basta. Abbiamo bisogno di un’altra condizione: la CONDIZIONE DI APERIODICITÀ.

P00,1 = 0, perché non c’è un Auto-Ciclo.


P00,2 = 0, perché non c’è un percorso con due salti che mi porti a 0.
P00,3 = 0,5 > 0
P00,4 = 0,5 > 0
P00,5 = 0

Consideriamo questo insieme Z0, ossia l’insieme per n>0 tale che P00,n>0:

Poi prendiamo il MASSIMO COMUNE DIVISORE mcd di questo insieme:


mcd Z0 = 1  perché c’è 2 e 3 che sono primi tra loro [basta avere due numeri primi tra loro allora
l’mcd vale 1].
Per inciso, se avessi avuto un AUTO-CICLO:

Questo vuol dire che quando c’è un Auto-Ciclo sullo Stato che sto considerando compare
necessariamente il numero 1 in questo insieme di n. ogni volta che c’è un Auto-Ciclo l’mcd vale
necessariamente 1, ma non è detto che se non c’è l’auto-ciclo che l’mcd non valga 1.

ESEMPI:
ALTRO ESEMPIO:

[In questo caso lo STATO 0 e lo STATO 1 sono periodici di periodo 2].

Ora vediamo come mai questo concetto di Aperiodicità è importante. È importante perché noi
vogliamo caratterizzare un equilibrio stocastico auspicabilmente indipendente dallo stato iniziale.

Noi abbiamo un Sistema che ha un certo numero di Stati e lo immaginiamo in un certo stato iniziale
Π(0), che è la condizione iniziale sulle probabilità:
Poi ci poniamo delle domande:

[Perché se non fosse indipendente vorrebbe dire che io ho un sistema le condizioni iniziale
dipenderebbero tra loro].

Immaginiamo che il sistema sia periodico di periodo 2:

Per tutti gli Stati pari la probabilità è maggiore di 0, mentre per tutti gli stati dispari la probabilità è
0. Questo non vuol dire che l’andamento della Π sia periodica, è imprevedibile, però sono sicuro
che in certi istanti che si ripetono con regolarità il sistema non può essere in quello stato.

Se il periodo fosse 15 io sono sicuro che lo stato 0 prima dell’istante 15, 30, 45 non si può ripetere.
Quindi questo è qualcosa che impedisce di trovare un limite di Π(k), perché queste Π(k)
continueranno ad oscillare se quello stato è periodico e se tutti gli stati sono periodici; quindi, non si
raggiungerebbe una convergenza a priori.

 PER QUESTO L’APERIODICITÀ È UNA CONDIZIONE IMPORTANTE PER LA


CONVERGENZA.
 Noi sappiamo che le Π vengono generate a partire da un’0equazione ricorsiva del tipo:

Equilibrio Stocastico: è una distribuzione di valori dello stato che in qualche modo rimane costante
[per K che tende a infinito il processo stocastico diventa un processo stocastico stazionario].
ESERCIZIO: Vogliamo trovare la distribuzione a regime.

Con le tre domande [tre condizioni affinché esista il regime stocastico] che ci siamo posti in alto
abbiamo capito che esiste la distribuzione a regime e che si può trovare risolvendo il sistema.

 Notiamo che lo Stato più probabile è lo stato 0: quasi il 50% dei casi il sistema si trova nello
stato 0.
LEZIONE 02/11/2021

CATENA A TEMPO DISCRETO BIRTH-DEATH

Corrisponde ad un sistema che ha un numero infinito di stati. La caratteristica di questo sistema è


che ogni stato confina con due soli stati che sono quelli adiacenti.
Si chiama Birth-Death, perché si può interpretare p come la probabilità di morte e decadimento
nello stato precedente e 1-p come la probabilità di nascita, cioè di salto allo stato successivo.
[se p fosse maggiore di 0,5 questo si sarebbe un sistema che tenderebbe a rendere più probabile il
decremento del valore nello stato piuttosto che l’incremento].

 L’unica eccezione è lo Stato 0 che ovviamente non può decadere ad uno stato -1 in cui vi è
un autociclo dove p è la probabilità di tornare a se stesso.
Essendoci un autociclo, la condizione di aperiodicità è sicuramente rispettata.
Abbiamo visto un teorema che dice che se gli stati sono tutti comunicanti tra loro a coppie e gli stati
sono in numero finito allora sono tutti ricorrenti positivi, ma qui sono infiniti gli stati, quindi, non è
detto che siano tutti ricorrenti positivi. L’esistenza o meno del regime stocastico è messe in
discussione solamente per quanto riguarda la possibilità di assicurare che gli stati siano tutti
ricorrenti positivi.
Immaginiamo di rappresentare una cosa, una macchina, per semplicità Monoserver, con una coda di
clienti e immaginiamo di campionare lo stato x(k) di questo sistema nei vari istanti di k.
Se lo stato fosse j, cioè x(k) = j, la probabilità che x(k+1) sia uguale a j+1, condizionata dal fatto
che x(k) sia uguale a j, rappresenta la probabilità che dallo stato j io passi allo stato j+1 che è la
probabilità che abbiamo disegnato con 1-p.
Osserviamo che se l’intervallo di tempo Λt sia sufficientemente grande non è mica detto che io
posso passare da 2 a 3 o da 2 a 1, potrei passare anche da 2 a 8, perché nel frattempo sono arrivati 6
clienti invece che uno solo. Allora questo tipo di schema che stiamo rappresentando che può servire
a modellare la coda singola in cui un solo servitore è chiamato a servire un insieme di clienti che
arrivano che poi vanno via dopo il servizio questo tipo di schema ha senso solo quando Λt è molto
piccolo. Se Λt è molto piccolo la probabilità che entrino due clienti nel sistema è molto piccola.
[EX. Se campiono il numero di studenti in questa stanza a intervalli di tempo discreti, se il tempo di
campionamento è 10 minuti ora siamo in 20 e fra 10 minuti possiamo essere benissimo in 32, ne
sono arrivati 12. Ma se l’intervallo di tempo è 5 secondi, a meno di flussi intensi, la probabilità che
arrivino 2 nello stesso intervallo di 5 secondi è abbastanza piccola, quasi trascurabile].
Quindi l’idea dietro alla quale questo sistema modelli la coda singola è che l’intervallo di tempo sia
sufficientemente piccolo per escludere che esitano variazioni, positive o negative, di una unità.
Si tratta di una matrice semi-infinita in due direzioni, perché gli stati sono infiniti.
Si tratta di una MATRICE A BANDA, perché:
 La diagonale principale è composta tutti da zeri tranne il primo elemento che vale p;
 La diagonale sopra è tutta di 1-p;
 La diagonale sotto è tutta di p.
 Il resto sono tutti zeri.
Il problema che subentra è risolvere il sistema Π = Πp, perché si tratta di un sistema con infinite
incognite. Per risolvere dobbiamo far finta che sia infinito:
CATENE DI MARKOV A TEMPO CONTINUO [CTMC]
Una catena di Markov a Tempo Continuo è costituita da un sistema, anche in questo caso stocastico
e con un numero di stati finito o numerabile, con delle possibili transizioni tra uno e l’altro stato, ma
in questo caso c’è la parola CONTINUO che implica che le TRANSIZIONI possono aver luogo in
qualunque instante di tempo sull’asse reale.

Considero adesso il mio sistema: c’è la solita variabile scalare x(t) in funzione di t che rappresenta
lo stato del sistema che assume valori interi e l’andamento nel tempo di questa variabile è un
andamento costante a tratti, ma gli intervalli di tempo in cui permane nello stesso stato sono, in
linea generale, completamente differenti tra di loro. Le transizioni possono avvenire in istanti
qualsiasi.

 È esattamente la stessa proprietà dei casi precedenti, solo che qua, invece che essere K, K-1
etc. che sono particolari valori interi, qua sono tk, tk-1, che sono qualunque scelta possibile
che valori, anche reali, della variabile temporale.
Consideriamo il grafico sotto:
immaginiamo di essere all’istante tk. Ho osservato il mio sistema ed ho raccolto un certo numero di
misure dello Stato. Quello che ho osservato è il Passato. Dopo c’è il Futuro: quello su cui posso fare
delle congetture. Notiamo come questi istanti siano volutamente rappresentati con intervalli non
omogenei, in maniera asincrona. Immaginiamo di voler stimare la probabilità che x(tk+1) sia uguale
ad un particolare valore di xk+1condizionata a tutto il passato uguale alla probabilità che x(tk+1) sia
uguale a xk+1 condizionata solamente all’ultima informazione che ho acquisito, ossia che x(tk) sia
uguale a xk.

 Quindi il passato, ossia la parte più vecchia di xk, me lo posso completamente dimenticare:
quello che mi serve sarà il presente. Per conoscere quale sarà l’evoluzione futuro mi serve
conoscere solamente lo stato attuale del sistema. La conoscenza dello stato attuale è
sufficiente a condensare tutte le informazioni che ho raccolto in precedenza, al fine della
valutazione probabilistica di quello che avverrà da questo istante in poi.

Se questo è vero, per qualunque scelta di questo istante questo sistema di chiama “Catena di
Markov a Tempo Continuo”. È un sistema in cui non è utile tenere conto di un’informazioni più
vecchia dello stato attuale del sistema.
LEZIONE 08/11/2021

Finora abbiamo introdotto un modello, che è quello delle CATENE DI MARKOV A TEMPO
CONTINUO, in cui abbiamo sempre lo Stato Discreto e Scalare. Inoltre, abbiamo il Tempo
Continuo. Le TRANSIZIONI da uno Stato all’altro (che sono Transizioni a Gradino) possono
avvenire in un istante qualsiasi, non in istanti di campionamento prefissati, come nel caso del
Tempo Discreto.

Successivamente abbiamo ristretto il nostro interesse alle Catene di Markov a Tempo Continuo
Omogenee, ovvero stazionarie (tempo invarianti), ovvero le cui proprietà non cambiano nel tempo.
Per questa ragione noi siamo in grado di affermare che il sistema è caratterizzato da
un’informazione di questo genere:

Il significato di questa funzione di τ è il seguente:


supponiamo di avere due istanti di tempo generici s e s+τ, il cui intervallo che separa questi due
istanti di tempo è τ. Noi supponiamo di conoscere qual è il valore della X (che è la nostra variabile
di stato scalare) all’istante s e ci chiediamo qual è la probabilità che X(s+τ) sia uguale a j.

Questa probabilità noi la consideriamo solamente funzione di τ e non di s.


È la probabilità di transire (in un’ora) da i a j: in questo caso devo intendere che non
necessariamente non ci deve essere un passaggio intermedio.

La probabilità di transire da i a j è la stessa per ogni intervallo di tempo che considero, ma non
dipende dall’istante iniziale in cui io considero questa possibile transizione.
Come tale, quindi, l’informazione che mi serve per caratterizzare il sistema è Pij(τ) per ogni i e j e
per ogni τ > 0.

 Per caratterizzare un sistema di questo genere noi dobbiamo fornire un numero elevato
(idealmente infinito) di funzioni di una variabile. Quindi, un sistema strutturalmente
semplice come la catena di Markov a tempo continuo necessita per la sua rappresentazione
senza ambiguità di un numero di funzioni, quindi una quantità di informazione,
estremamente vasta. Un’informazione di tipo funzionale e non parametrica.
Attraverso queste condizioni noi siamo in grado di scrivere l’equazione differenziale che
caratterizza l’evoluzione della P [EQUAZIONE DIFFERENZIALE FORWARD DI CHAPMAN-
KOLMOGOROV].

Come posso utilizzare l’informazione di Q per conoscere P(τ)?


Attraverso la definzione!

Si consideri ora la variabile aleatoria V (i) corrispondente al tempo di permanenza nello stato i,
quando tale stato viene raggiunto. E’ assai semplice dimostrare il seguente risultato.

Risultato 9 La variabile aleatoria V (i) è distribuita in modo esponenziale.


Quindi il tempo di permanenza in uno stato, quando questo stato viene raggiunto, è una variabile
aleatoria esponenziale.

Esempio: la durata di una telefonata è distribuita in modo esponenziale. Cioè via via che aumenta la
durata diventa meno probabile che si abbia quella probabilità lì. Via via che aumenta la durata, la
densità di probabilità [PDF] tende a 0.
Quindi:

Un Λ grande vuol dire una tendenza ad uscire rapidamente da quello stato; mentre un Λ piccolo
vuol dire una tendenza ad uscire lentamente da quello stato.

Come dimostro questa affermazione?


Si osservi che, sulla base di definizione della CTMC, la lunghezza dell’intervallo di tempo per cui
la CTMC è già stata nello stato presente non dà alcun contributo informativo. Poiché la
distribuzione esponenziale è l’unica distribuzione che gode della memoryless property (si veda il
Risultato 3), ne deriva che V (i) è distribuito in modo esponenziale.

A questo punto facciamo uno sforzo per comprendere quale possa essere il significato degli
elementi della matrice Q. per fare questo occorre modellare l’andamento del nostro sistema.

Rappresentiamo il nostro sistema nel seguente modo:


cominciamo a rappresentare un’ipotetica storia del nostro sistema e rappresentiamo su un intervallo
temporale con dei rettangolini l’intervallo di tempo in cui il sistema permane in un certo stato.
Immaginiamo di fare una restrizione del tempo e immaginiamo di rappresentare su questo asse
temporale, in cui abbiamo compattato i fenomeni che ci interessano, solamente gli intervalli di
tempo il cui sistema è stato nello stato i, conservo la larghezza di questi intervalli, ma li rappresenta
in modo compatto come se fossero tutti adiacenti. Quindi ho la stessa struttura di prima con le stesse
lunghezze. Questi intervalli sono separati da alcuni elementi, che rappresento con delle frecce, che
posso considerare eventi.

Queste lunghezze qui non sono altro che REALIZZAZIONI SUCESSIVE DELLA VARIABILE
ALEATORIA DEL TEMPO DI PERMANENZA DELLO STATO V(i) che è distribuita in
modo esponenziale.

Quello che abbiamo appena rappresentato è un PROCESSO DI POISSON.


Un Processo di Poisson associato ad una serie di realizzazioni di una variabile aleatoria distribuita
in modo esponenziale non è altro che una SERIE DI EVENTI PUNTUALI che accadono dopo
ogni rappresentazione.

 Quindi compattando in questo modo l’asse dei tempi individuiamo degli eventi che
corrispondono ad un Processo di Poisson con parametro Λ(i) che è quello della distribuzione
esponenziale.

Quindi questo Processo di Poisson che possiamo chiamare PROCESSO DI POISSON “FUGA
DALLO STATO i” è il processo che rappresenta probabilisticamente come il sistema se ne va
dallo Stato i.
Immaginiamo di rappresentare lo Stato i di prima.
Adesso immaginiamo di focalizzarci sugli intervalli di tempo a seguito dei quali c’è lo Stato j.
Comincio, poi, col rappresentare il compattamento temporale con i relativi eventi che rappresentano
il processo puntuale di Poisson.

Successivamente, operiamo una seconda restrizione in cui prendiamo in considerazione solamente


gli intervalli di tempo che sono stati seguiti dallo Stato j (trascureremo il terzo stato) in cui abbiamo
a nostra volta degli eventi  questo è il PROCESSO DI POISSON “FUGA DA i PER ANDARE
A j”.
E quindi:
 qii è l’elemento generico della matrice Q

LEZIONE 09/11/2021

Ogni riga i-esima ha somma zero [leggere dispense].


ESEMPIO: “COSTRUZIONE DELLA MATRICE Q”

Il Nostro Sistema è un Sistema molto semplice in cui abbiamo due entità che in questo caso
consideriamo due lampadine che vogliamo mantenere sempre accese. Per ogni lampadina avremo
due stati possibili: lampadina accesa [1] e lampadina spenta [0] (vedere tabella stati possibili  per
convenzione assegniamo alla prima coppia lo stato 0, poi lo stato 1 etc. come vediamo abbiamo
un’assegnazione di stati che potrebbero essere rappresentati tramite un vettore che codifichiamo
come un’unica variabile).

Lo spazio degli stati è finito ed uguale a S={0, 1, 2, 3}, ossia 4 stati (cardinalità 4).

Come rappresentiamo questo processo?


Supponiamo che queste lampadine siano esponenziali, quindi il tempo di vita residuo non dipnede
da quanto sono state accese.

Possiamo rappresentare lo stato di una lampadina (evoluzione di una lampadina), per esempio L1,
come una sequenza di eventi, sull’istante di tempo t, in cui abbiamo diversi intervalli di tempo in
cui la lampadina sta funzionando e altri intervalli in cui la lampadina L1 è spenta.

Questi rettangolini rossi (L1 accesa) sono realizzazioni della variabile aleatoria “Tempo di Vita
della Lampadina 1”, mentre i rettangoli verdi (L2 spenta) sono realizzazioni della variabile aleatoria
“tempo di riparazione della lampadina 1”. Noi supponiamo che queste due variabili aleatorie
abbiano entrambe distribuzione esponenziale. L’ipotesi è che entrambe queste variabili aleatoria
sono distribuite in modo esponenziale con dei parametri.
Supporremo, per esempio, che il tempo di vita medio della lampadina 1 sia noto.
Analogamente avremo il tempo di riparazione medio della lampadina 1.
[queste quantità devono essere note].
Lo stesso si potrebbe dire per la lampadina due.

Sostanzialmente stiamo parlando di 4 processi di Poisson elementari.


Possiamo rappresentare in maniera strutturale come CTMC questo tipo di Sistema?
Consideriamo lo Stato 0 che è lo stato in cui entrambe le lampadine sono accese.

Quali processi sono attivi in questo stato?


I processi di riparazione no, perché non c’è niente da riparare, ma sono attivi i processi di guasto,
gli stati che possono essere raggiunti da questo stato 0 sono lo Stato 1 e lo Stato 2, perché se volessi
raggiungere lo Stato 3 ammetterei che ci siano due guasti simultanei e questo non è possibile nel
nostro modello in cui gli eventi non sono mai contemporanei.
[Ricorda che il parametro del processo di Poisson è l’inverso del tempo di inter-evento di quel
processo]
 Dallo Stato 1 si può andare dallo Stato 0 o allo Stato 3.
 Dallo Stato 2 possiamo andare allo Stato 3 oppure allo Stato 0.
 Dallo Stato 3 possiamo andare allo Stato 2 o allo Stato 1.

A questo punto ottengo la matrice Q mettendo i λ corrispondenti.


[N.B. i termini che il prof ha indicato con le frecce servono per azzerare la riga].
Osservazione:
immaginiamo di essere nello Stato 0 in cui entrambe le lampadine sono accese.
In questo caso sono attimi due processi di fuga dallo Stato per andare o allo Stato 1 o allo Stato 2.
I due processi concorrenti li possiamo veramente ipotizzare come dei cavalli e la corsa per vincere è
data dalla realizzazione di queste due variabili aleatorie: c’è un cavallo più veloce e uno più lento.
Entrambi i tempi di percorrenza hanno distribuzione esponenziale.

Qual è la probabilità che vinca A? sicuramente è più alta di quella di B, ma non è 1.


 La Probabilità che vinca A su B è data dalla probabilità che la realizzazione di Ta sia minore
di Tb.
Dico minore e non minore-uguale, perché la probabilità che le due realizzazioni siano uguali
è zero, non perché sia impossibile, ma perché la distribuzione è a valori continui e la
probabilità che estraendo due variabili a valori continui io abbia la stessa realizzazione è
zero.

Naturalmente, nel momento in cui un cavallo vince sull’altro, l’0altro processo viene azzerato.
Allora abbiamo due processi concorrenti: L1 e L2. Ipotizziamo che vinca L1 (si guasta prima L1) e
si entra in un altro Stato: in questo caso nello Stato 2 dove ci sono altri due Processi concorrenti,
ossia il processo di riparazione di 0 e il processo di guasto di 1.

Si potrebbe pensare che la 1 stava già lavorando da prima (è un po’ stanco questo cavallo): No!
Errore! Perché si sta parlando di variabili Aleatoria distribuite in maniera esponenziale.
Quindi il fatto che nello Stato 2 io sia entrato dallo Stato 0 in cui la lampadina 2 stava già lavorando
è irrilevante ai fini della previsione di quanto ancora lavorerà la lampadina 2.
Per questo dico che i processi che non hanno vinto vengono in qualche modo azzerati.

 Ricordati che la CTMC alle frecce sono associati non dei numeri, ma delle frequenze (dei
Rate).
Tutto questo mi dà la possibilità di introdurre un nuovo concetto: “DTMC embedded nella
CTMC”.
Infine, si definiscano per una CTMC le “probabilità di transizione a tempo discreto” come segue:
ESEMPIO:
Immaginiamo che arrivino alla mia stazione di servizio Auto, Tir, Moto.
Io sono in un certo istante t: qual è la probabilità che il prossimo arrivo sia un arrivo di auto.

Questo è un concetto che posso estendere a tutti i casi in cui ho un processo di Poisson che è somma
di tanti processi. La probabilità che il prossimo evento sia un evento di tipo λij?
Il posso condensare la CTMC in un DTMC EMBEDDED, dove nelle frecce non metto, ad
esempio, il RATE con cui passo da 0 a 1, ma la probabilità che ho da 0 a 1.
[P01 è la probabilità che il prossimo stato, partendo da 0, sia 1].

Osservazione:
Né DTMC EMBEDDED, né le CTMC hanno mai auto-cicli  non esistono gli auto-cicli quando
parliamo di questi due Modelli, perché rimanere nello stesso Stato non è un evento.
Un’altra osservazione è che la DTMC Embedded è un impoverimento dell’informazione di una
CTMC, perché se invece che parlare di h^-1, parlassi di giorni^-1, quindi cambiassi unità di misura
temporale, i valori delle P tilde che ci sono qua rimarrebbero gli stessi.
Il rapporto rimane uguale: la DTMC in pratica è invariante rispetto a variazioni della scala
temporale. una CTMC in cui tutti i processi di Poisson costituenti sono tutti ugualmente più lenti o
veloci della CTMC originaria danno origine alla stessa DTMC.
Anche in questo caso [DTMC] siamo in grado di trovare la distribuzione a regime etc.
ESEMPIO:
Abbiamo una macchina monoserver M in cui si ha un unico servitore i cui tempi di servizio sono
esponenziali con parametro P. poi abbiamo un processo degli arrivi, che è un processo di Poisson,
con parametro λ. Poi abbiamo una Failure Process f (processo di guasto) che immaginiamo sia
attivo solamente quando la macchina è attiva (ipotizziamo che la macchina non possa guastarsi
quando sia IDLE) e anche un processo di riparazione r. Poi abbiamo il Throughput in uscita X.
Immaginiamo che tutti questi processi di Poisson, ovvero caratterizzati da tempi di inter-evento in
modo esponenziale indipendenti tra di loro.

Poi ipotizziamo che la macchina non abbia Buffer, quindi che ci sia un Flusso Perso: ossia quando
un cliente arriva la macchina è in o FAILURE o attiva quindi non c’è la possibilità di accomodare
il cliente sulla macchina, il flusso viene perso.

Cosa succede quando c’è un guasto?


Immaginiamo che anche qui ci sia un guasto: il cliente che si trova sulla macchina quando si
realizza un guasto viene perso. Quindi abbiamo due flussi persi.
Rappresentiamo tramite diagramma degli stati il nostro sistema.
La prima cosa da fare è capire quanti stati ci sono nel sistema: noi abbiamo solamente la macchina
che è monoserver  abbiamo 3 stati.
Ora cerchiamo le prestazioni a regime del Sistema:
Poi vogliamo determinare il THROUGHTPUT del Sistema:
Esso è dato dal prodotto della probabilità di essere nell’unico stato in cui la macchina sta lavorando,
ossia lo Stato 1, e il Rate di Servizio della macchina [P].

Vogliamo anche trovare i due flussi persi:


Il Flusso perso effettivo è la probabilità di essere in un certo stato e che si realizzi un arrivo.
Quali sono gli stati in cui gli arrivi vengono buttati via? Stato 1 e 2.
Il Flusso perso 2 è la probabilità di essere in un certo stato, es stato 1, e di evolvere verso lo stato 2

Ora calcoliamo il tempo di attraversamento media del sistema per clienti che escono correttamente:
LEZIONE 15/11/2021
(ha continuato l’esempio fatto qualche pagina prima)

Strutturata come quella nel caso a Tempo Discreto, dove però ci sono dei RATE λ che sono delle
frequenze che chiamo RATE DI NASCITA e poi abbiamo i μ (mi) che sono i RATE DI
DECADIMENTO.

Questi coefficienti sono in generale STATO-VARIANTI, ossia dipendono dallo stato.


Ogni stato può transire negli stati contigui, tranne lo stato zero. Nel caso a tempo continuo non c’è
l’autociclo, perché gli autocicli nel caso continuo non hanno ragione di esserci perché la
permanenza in uno stato non è un evento e quindi non va modellato.
LEZIONE 16/11/2021
CAPITOLO 4°: CODE E RETI DI CODE

Per individuare sinteticamente il modello di coda, si utilizza la notazione di Kendall:


Lo studio dei sistemi a coda e delle reti di code è finalizzato alla determinazione delle proprietà
statistiche di alcune grandezze di interesse. A questo proposito, occorre introdurre la seguente
notazione:
 Il COEFFICIENTE DI CARICO è una misura di quanto un sistema sia stressato rispetto
alle sue capacità di servizio.
LEZIONE 22/11/2021
 CODA M/M/1
Adesso facciamo l’ipotesi che la CODA sia M/M/1:
ESEMPIO
Immaginiamo di avere una coda MM1 caratterizzata da un RATE medio di servizio μ, da un
processo di arrivi λ e da un buffer uguale a infinito. Noi abbiamo trovato Πn.

Quindi la probabilità di avere più o uguale a 5 clienti è uguale al 3%.


Questo è un modo per dimensionare nella realtà i buffer di questo sistema, perché se il buffer fosse
lungo 3 allora io più di 4 non posso avere. Quindi rispetto al mio modello io devo scartare nel 3%
delle situazioni possibili di equilibrio stocastico un cliente che arriva deve essere scartato. Una
soluzione è aumentare la capacità del buffer.

CODA M/M/m
È la CODA con processo degli arrivi e dei servizi esponenziale, ma m servitori in parallelo.
CODA M/M/∞

 Un Modello di questo genere serve a rappresentare processi di servizio in cui non viene mai
rifiutato o bloccato un cliente. Immaginiamo un servizio fornito da un Nastro Trasportatore
o da una Passerella: non accade mai che uno aspetti.
CODA M/M/1/K
È una CODA con BUFFER LIMITATO: quando non c’è più spazio i Clienti vengono buttati via
oppure viene interrotto il Processo degli arrivi. Si noti che K rappresenti il numero massimo di
postazioni nell’intero sistema.

[saltare la proprietà Memory sotto].


TEOREMA DI BURKE
Se noi abbiamo una CODA MM1 Noi sappiamo che il processo dei servizi e degli arrivi sono
Processi di Poisson. In particolare, se noi abbiamo la storia degli eventi di arrivo che si sono
verificati noi sappiamo che questo è un processo di Poisson. Analogamente, se noi avessimo la
storia dei tempi di servizio che si sono verificati e che magari hanno avuto la storia delle attività di
questo servitore: questi tempi di servizio sono tutte realizzazioni di una variabile aleatoria
distribuita in maniera esponenziale.
Quello che otteniamo in uscita è un altro processo puntuale che sono gli stati di uscita: che processo
rappresenta?
Immaginiamo che a valle di questa coda ce ne sia un’altra che magari anche essa è distribuita
esponenzialmente come tempi di servizio.
A questo punto il processo che entra sarà un processo di Poisson? Se non lo fosse non potrei
applicare i vari risultati.
In questo caso esiste un teorema: TEOREMA DI BURKE, che dice che anche il PROCESSO DI
USCITA è un Processo di POISSON dove λ è lo stesso.
Questo è fondamentale perché posso utilizzare il processo di uscita come input di un altro processo:
se no non riusciremo a collegare le code.
Questa proprietà vale per le code MM1, MMm e MM/∞, ma non vale per la Coda MM1K, ossia nel
caso di Buffer finito, che fa si che l’uscita non sia più Poissoniana.
 Abbiamo così terminato le CODE SINGOLE.

RETE DI CODE MARKOVIANE

 RETE DI CODE MARKOVIANE APERTE


Una RETE di CODE APERTE è un insieme di Nodi, che sono le macchine della Rete, ciascuna
con un Buffer infinito (quindi siamo nel Modello di Jackson). Per ogni nodo abbiamo un parametro
μ che rappresenta il RATE dei servitori e un parametro m che rappresenta la molteplicità dei
servitori.
Poi abbiamo uno o più processi di arrivi di Poisson λ. Tutti i clienti appartengono alla medesima
classe. Poi abbiamo una MATRICE DI GESTIONE DEI FLUSSI rij.
Se queste condizioni non sono verificate per tutti i nodi il sistema non può essere in Equilibrio
Stocastico.
 La 39 vuol dire che la Produttoria delle distribuzioni marginali è uguale alla distribuzione
congiunta.
ESERCIZIO
LEZIONE 30/11/2021
RETE DI CODE MARKOVIANE CHIUSE
 MODELLO DI GORDON E NEWELL
Innanzitutto, il MODELLO DI JACKSON è quelle delle cosiddette RETI DI CODE APERTE
(Markoviane).
Il MODELLO DI GORDON E NEWELL è quello con cui vengono trattate le RETI DI CODE
CHIUSE (Markoviane).
ESEMPIO:
immaginiamo di avere una cosa M1, M2, M3, con relativi buffer ed una propria gestione dei flussi.
La caratteristica delle RETI a CODE CHIUSE è che il Processo di arrivo non viene dall’esterno,
ma dall’interno: ci si immagini che ci sia una macchina L/U, detta LOAD/UNLOAD, che fa da
interfaccia col mondo esterno. La caratteristica di un sistema di questo genere è che il numero K di
clienti presenti nel sistema è COSTANTE: per un client e che entra, un cliente deve uscire.
Essendo Costante è anche BOUNDED. Quindi il numero di STATI di questo sistema sarà finito
per definizione. Non è più vero che ogni NODO può essere studiato indipendentemente.
La rete di Code chiuse ha comunque i suoi vantaggi: è un modello che permette di tenere d’occhio
in maniera precisa il WORKING PROGRESS, ossia la quantità di semi-lavoranti che circolano
nell’impianto (in questo caso sono K).
La Matrice nell’esempio non è del tipo di quella sopra, ma se facciamo la permutazione e scriviamo
una nuova R. se notiamo questa matrice è partizionabile in matrici che hanno la struttura richiesta.
In una situazione di questo genere, asintoticamente tutti i Clienti K andranno tutti nella macchina 3
e non usciranno più: una macchina di questo genere non va bene. Bisogna immaginare che non
esistano Stati che scompaiono.
 N è il numero di NODI, ossia il numero di Macchine.

In questo esempio, ho 15 possibili modi con cui possiamo suddividere 4 oggetti indistinguibili (es
palline) in tre scatole.

Esiste quindi una distribuzione di probabilità a regime dello stato, ed essa è data da:
La FORMULA 46 è quella del Bilanciamento del Flusso all’interno della Rete.

Nel modello di Jackson c’è una differenza: c’è un termine λ che indica il flusso esterno.
In assenza di λ, queste equazioni sono risolubili a meno di una costante moltiplicativa arbitraria.
Questo tipo di soluzioni è una soluzione che non ci permette di trovare i valori, ma solo i rapporti.
LEZIONE 02/12/2021
ESEMPIO: Analisi di Code Markoviane Chiuse.
Consideriamo due macchine con le relative probabilità. Poi abbiamo una macchina di
Carico/scarico, che supponiamo ideale. Consideriamo i buffer infinito.
 Β1 e β2 sono dei coefficienti numerici che devo mettere nella Formula 44 che mi dà la
distribuzione di probabilità. Non ha un significato fisico vero è proprio.
Un metodo alternativo a quello di Gordon e Newell per risolvere il problema dell’analisi delle rete
di code markoviane chiuse è il caso in cui abbiamo tutte macchine Monoserver, che è un caso
semplice.

Si tratta del METODO di DENNING E BUZEN:


LEZIONE 06/12/2021

 MACCHINA BOTTLENECK:
è la macchina più stressata di tutto l’impianto: quella che è più utilizzata e le prestazioni,
potenzialmente, rallentano tutto il sistema.
ESEMPIO:
CAPITOLO 5: RETI DI PETRI

I NODI possono essere rappresentati da TONDI [NODI POSTI] o SBARRETTE [NODI


TRANSIZIONI].
I POSTI rappresentano CONDIZIONI, mentre le TRANSIZIONI rappresentano, invece,
PROCESSI o EVENTI.
ESEMPIO:
Consideriamo il seguente Sistema: abbiamo dei Token e delle Transizioni: t1, t2, t3. Tutte e tre le
Transizioni sono abilitate. In questo stato non c’è nessuna regola che mi dica quale transizioni scatta
per prima.

Quando scatta la transizione t1, la t2 diventa è ancora abilitata, ma se scatta t1 e t3 la t2 non è più
abilitata. Se scatta t2 disabilita t1 e t3. Una Transizione che scatta rimuove il Token dai posti a
monte. Quindi qua c’è una competizione fra tre transizioni e non viene detto nel modello quale
transizione ha la meglio. Questo perché la Rete di Petri è un formalismo in cui si definiscono i
VINCOLI cui deve sottostare l’evoluzione dello stato del sistema, ma non si dice come avverrà
l’evoluzione dello stato. Rimangono dei gradi di libertà.
Le transizioni, per noi, sono qualcosa che fa cambiare lo stato del sistema quando avvengono.
Ma le transizioni sono un evento o un processo?
 Con le RETE DI PETRI si riescono a modellare sistemi che con le RETE DI CODE non
si riescono a modellare.
2. Capacità di rappresentazione del modello base di rete di Petri

 Le RETI DI PETRI non sono un sistema dinamico vero e proprio, ma rappresentano delle
condizioni secondo le quali può evolvere un sistema dinamico. Sono un sistema sotto-
determinato. [leggi esempi sulle dispense]
LEZIONE 07/12/2021

 N rappresenta la struttura Topologica della rete, quindi quanti posti, quante transizioni,
quanti archi, il peso degli archi etc.
 M0 rappresenta il Market iniziale
 Quindi è la coppia (N, M0) che definisce la Rete di Petri
 Il Marking è rappresentato congenialmente con una serie di numeri interi che rappresentano
il numero di token in ciascun posto ordinato
Quante trasnzioini abilitate ci sono in questo marking?
Solo t2, perché t1 non è abilitata in quanto non c’è nessun Token in p2. Stesso discorso t3.
Il Firing di t2 che stato produce?
Tolgo il token in p1 e lo metto in p2, così ottengo 110 (questo è il nuovo Marking).
In questo marking, dove c’è un Token in p1 e un token in p2 quante sono le transizioni abilitate?
Sono abilitate t2 e t3, mentre t1 non è abilitata perché non c’è un token in p3.
Ho poi due strade! Perché ho dei gradi di libertà!
Così via.
ESEMPIO:
LEZIONE 14/12/2021

In molti casi, soprattutto nei casi in cui vogliamo calcolare le prestazioni del Sistema, il TEMPO è
importante, perché è legato agli indicatori di prestazione.
Occorre rendere il MODELLO GENERALE, che è puramente logico, introdurre il MODELLO
TEMPORIZZATO.
Per introdurre questa TEMPORIZZAZIONE abbiamo DUE SCELTE:
1) La prima è quella di mettere la Temporizzazione nei POSTI, dicendo che nei posti abbiamo
un “MINIMUM HOLDING TIME”, ossia un tempo minimo di permanenza del TOKEN
nel posto prima di essere fruibile per far scattare la transizione [non useremo questa scelta].
2) La seconda scelta è quella di associare il FIRING ad alcune TRANSIZIONI, mentre le
altre verranno modellate come eventi (ossia qualcosa che non ha una durata oppure ha una
durata trascurabile).
LEZIONE 14/12/2021
ESERCIZIO NUMERO 1 DEL 4/2/2019
ESERCIZIO NUMERO 2 DEL 4/2/2019

Potrebbero piacerti anche