9. Reti di Petri (rdP)

Transcript

9. Reti di Petri (rdP)
9. Reti di Petri (rdP)
Maria Paola Cabasino, Dicembre 2010
Le rdP sono un modello di sistemi ad eventi discreti
che trae origine dal lavoro di Carl Adam Petri.
Vantaggi delle rdP:
• Le rdP sono un formalismo grafico e matematico
allo stesso tempo.
• Permettono di dare una rappresentazione
compatta di sistemi con grande spazio di stato.
•Consentono di rappresentare il concetto di
concorrenza.
•Consentono una rappresentazione modulare.
1
Con il termine “rete di Petri” si indica un’ampia
classe di modelli ad eventi discreti. Noi
tratteremo il modello logico delle di Petri (rete
di posto/transizione) e il modello temporizzato,
ottenuto dal modello logico associando
all’evoluzione della rete una struttura di
temporizzazione.
Reti di Petri: modello temporizzato
deterministico
stocastico
2
Reti di Petri: Modello logico
Una rdP è un grafo bipartito e pesato. I due tipi di
vertici sono detti: posti (rappresentati da cerchi) e
transizioni (rappresentate da barre).
Definizione: Una rete posto/transizione è una
struttura N=(P,T,Pre,Post) dove:
• P: insieme dei posti (|P|=m),
• T: insieme delle transizioni (|T|=n),
• Pre: P x T  N: è la matrice di pre-incidenza che
specifica gli archi diretti dai posti alle transizioni.
• Post: P x T  N: è la matrice di post-incidenza che
specifica gli archi diretti dalle transizioni ai posti.
Hp: P  T   e P  T  
3
Esempio: P={p1,p2,p3,p4} T={t1,t2,t3,t4,t5}
1
0
Pr e  
0

0
1 0 0 0
0 1 1 0 
0 0 0 1

0 0 0 1
1
0
P ost  
0

0
0 0 0 1
2 0 0 0 
0 1 0 0

0 0 1 0
t3
Notazione:
Pre(p2,t2)=2
Pre(p,  )
p3
t5
2
t1
p1
t2
p2
t4
p4
4
Matrice di incidenza C: P x T  Z
C= Post-Pre
Esempio:
 0 1 0 0 1 
 0 2 1 1 0 

C
 0 0 1 0 1


 0 0 0 1 1
NB: La matrice di incidenza perde qualche
informazione sulla struttura della rete (es cappi).
5
Data una transizione tT si definiscono i seguenti
insiemi di posti:
 t={pP | Pre(p,t) > 0}: è l’insieme dei posti in
ingresso a t;
 t ={pP | Post(p,t) > 0}: è l’insieme dei posti in
uscita da t.
Dato un posto pP si definiscono i seguenti insiemi
di transizioni:
  p={tT | Post(p,t) > 0}: è l’insieme delle
transizioni in ingresso a p;
 p  ={tT | Pre(p,t) > 0}: è l’insieme delle
transizioni in uscita da p.
Esempio: t2={p1}, t2={p2},  p2={t2} e p2={t3,t4} (vedi
rdP pag.4).
6
Marcatura e sistema di rete
La marcatura definisce lo stato della rdP.
Marcatura: E’ una funzione M : P  N che assegna
a ogni posto un numero intero non negativo di
marche (o gettoni).
t3
p3
t5
2

t1
p1
t2
p2
t4
p4
Una rete N con una marcatura iniziale M0 è detta
una rete marcata o sistema di rete, e viene
indicata come N,M0.
Abilitazione e scatto
Una transizione t è abilitata dalla marcatura M se
M  Pre (,t)
cioè se ogni posto pP della rete contiene un
numero di marche pari o superiore a Pre(p,t).
Notazione: M[t indica che t è abilitata da M;
M[t’ indica che t’ non è abilitata da M.
Una transizione sorgente è sempre abilitata.
Una transizione t abilitata da M può scattare
portando alla marcatura
M’= M - Pre(,t) + Post(,t) =M + C(,t)
Una sequenza di transizioni =tj1tj2tjr T* è
abilitata da una marcatura M se: la transizione tj1
è abilitata da M e il suo scatto porta a
M1=M+C(,tj1); la transizione tj2 è abilitata da M1 e
il suo scatto porta a M2=M1+C(,tj1); ecc
Una sequenza abilitata  viene anche detta
sequenza di scatto e ad essa corrisponde la
traiettoria:
M[tj1 M1[tj2 M2  [tjrMr = M[Mr
La sequenza vuota  (cioè la sequenza di lunghezza
zero) è abilitata da ogni marcatura M e vale
M[ M
9
Il comportamento (o linguaggio) di una rete
marcata N,M0 è l’insieme delle sequenze di
scatto abilitate dalla marcatura iniziale:
L(N,M0)={T*| M0[}.
Una marcatura M è raggiungibile in N,M0 se
esiste una sequenza di scatto  tale che M0[M.
L’ insieme di raggiungibilità di una rete marcata
N,M0 è l’insieme delle marcature che possono
venir raggiunte da M0:
R(N,M0)={MNm|    L(N,M0): M0[M }
NB: Poichè M0[ M0, vale dunque M0  R(N,M0)
10
Esempi:
p1
t1
p2
r
t1
p1
t2
p2
p2
t2
p3
p1
t2
t3
t1
p3
(a)
(b)
(c)
(a): linguaggio infinito, insieme di ragg. finito
(b): linguaggio infinito, insieme di ragg. infinito
(c): linguaggio finito, insieme di ragg. finito
11
Sia N,M0 una rete marcata e sia C la sua matrice
di incidenza. Se M è raggiungibile da M0 scattando
la sequenza di transizioni  vale

M=M0+C
Conflitto strutturale
t
p
t’
Se  t  t  
Equazione di stato
Conflitto effettivo
t
p
t’
Se M  Pre (,t) e M  Pre (,t’)
ma M  Pre (,t)+ Pre (,t’)
12
Strutture elementari di reti di Petri
e1
e2
e3
(a)
par
begin
(b)
e1
e1
e2
e2
e3
e3
Sequenzialità
par
end
Parallelismo
(c)
e1
Sincronizzazione
e2
e3
(d)
Scelta
13
Strutture elementari di reti di Petri
latte
ruote
veicolo
4
besciamella
burro
farina
telaio
(a)
(b) Smontaggio
Montaggio
t1
carica
M1
t3
robot
carica
M2
t2
t4
(c)
Mutua esclusione
14
Esempi di modellazione
pronto
inviare
pronto
ricevere
canale 1
invia
messaggio
ricevi
messaggio
attesa
conferma
messaggio
ricevuto
ricevi
conferma
emittente
invia
conferma
canale 2
ricevente
Processo emittente-ricevente
15
Esempi di modellazione
inattivo
inattiv o

s
leggi
in
lettura
termina
lettura
lettori
scrivi
S n
n
n
in
scrittura
termina
scrittura
scrittori
Processo lettori-scrittori
16
t1
t2
p1
t1
p’
k
p2
p1
t4
Esempi di modellazione
2
t3
t1
t2
p
t1
p
(b)
Macchina non
affidabile
Magazz. capac.
infinita
t3
(c)
t3
2
Magazz.
multiclasse
Magazz.
capac. k
t4
t4
p2
(d)
lavorazione
Pa
Pa
Pa
lavorata
disponibile
Pab
disponibile smontaggio
p’
k
t2
p3
(a)
t2
(e) Cella di
montaggio
manifattura
macchina
t1
t2
t5
t6
t7
t8
Pb
Pb
lavorazione
lavorata
disponibile
Pb
17
Grafo di raggiungibilità
Algoritmo: Il grafo di raggiungibilità di una rete
marcata N,M0 con matrice di incidenza C si
costruisce con la seguente procedura.
1. Il nodo radice del grafo è M0. Questo nodo non è
inizialmente etichettato.
2. Si consideri un nodo M del grafo senza etichetta.
a) Per ogni t abilitata da M, cioè t.c. MPre(,t):
i.
Si calcoli la marcatura M’=M+C(,t)
raggiunta da M scattando t
ii. Se  già un nodo etichettato M’ nel grafo, si
aggiunga il nodo M’ al grafo.
iii. Si aggiunga un arco tra M ed M’.
18
b) Si etichetti il nodo M “vecchio”.
3) Se esistono nodi senza etichetta si ritorni a 2.
4) Si rimuovano tutte le etichette dai nodi.
NB: Tale procedura termina dopo un numero finito di
passi se e solo se la rete marcata ha un insieme di
raggiungibilità finito. In particolare, il passo 2
viene ripetuto tante volte quante sono le
marcature raggiungibili.
19
Esempio:
t1
p1
p2
t3
p3
(a) N,M0
t2
t2
[1 1 0]
[2 0 0]
t1
t2
t1 t3
[0 2 0]
t3
[1 0 1]
t2
t1
(b) Grafo di
raggiungibilità
[0 1 1]
t3
[0 0 2]
20
Proposizione: Si consideri una rete marcata N,M0
e il suo grafo di raggiungibilità (se esiste finito).
a) La marcatura M appartiene all’insieme di
raggiungibilità R(N,M0) SE E SOLO SE M è un
nodo del grafo.
b) Data MR(N,M0), la sequenza =tj1tj2
appartiene al linguaggio L(N,M) e può essere
generata con la traiettoria M[tj1 M1[tj2 M2 
SE E SOLO SE esiste nel grafo un cammino
orientato  = M tj1 M’ tj2 M’’ 
Da questa proposizione seguono i seguenti risultati.
21
Corollario: Si consideri una rete marcata N,M0 e il
suo grafo di raggiungibilità (se esiste finito).
a) La marcatura M’ è raggiungibile da una
marcatura MR(N,M0) SE E SOLO SE esistono
nel grafo due nodi M ed M’ ed esiste almeno un
cammino orientato che va da M a M’.
b) La transizione t è abilitata da una marcatura
MR(N,M0) SE E SOLO SE esiste nel grafo un
nodo M da cui esce un arco t.
NB: Se l’insieme delle marcature raggiungibili è
infinito, il grafo che rappresenta lo spazio di
stato della rete è detto grafo di copertura.
22
Proprietà comportamentali: dipendono sia dalla
struttura della rete sia dalla marcatura iniziale.
raggiungibilità
limitatezza
ripetitività
reversibilità
vivezza
23
Raggiungibilità:
Il problema della raggiungibilità di una marcatura
M da M0 può essere risolto mediante la
costruzione del grafo di raggiungibilità nel caso la
rete abbia uno spazio di stato finito.
Limitatezza:
Un posto p è k-limitato in N,M0 se per ogni
MR(N,M0) vale M(p)  k. Un posto 1-limitato è
detto sano. Una rete marcata N,M0 è k-limitata
se ogni suo posto è k-limitato. Una rete 1-limitata
è detta sana.
Una rete è limitata se e solo se ha spazio di
raggiungibilità finito.
24
Ripetitività:
Data una rete marcata N,M0, sia  una sequenza
di transizioni non vuota e M  R(N,M0) una
marcatura da cui essa è abilitata. La sequenza  è
ripetitiva se essa può essere eseguita un numero
infinito di volte da M.
Una rete marcata N,M0 è ripetitiva se esiste una
sequenza ripetitiva in L(N,M0).
Reversibilità:
Una rete marcata N,M0 è reversibile se per ogni
marcatura M  R(N,M0) vale M0  R(N,M), cioè se
da ogni marcatura raggiungibile è possibile tornare
alla marcatura iniziale M0.
25
Vivezza e blocco
Data una rete marcata N,M0, si dice che una sua
transizione è:
 morta, se non esiste alcuna marcatura raggiungibile M
 R(N,M0) che abilita tale transizione;
 quasi-viva, se esiste almeno una marcatura
raggiungibile M  R(N,M0) che abilita tale transizione;
 viva, se per ogni marcatura raggiungibile M  R(N,M0)
la transizione t è quasi-viva.
26
Una rete marcata N,M0 è:
 morta, se tutte le transizioni sono morte;
 non quasi-viva, se contiene transizioni morte e quasivive;
 quasi-viva, se tutte le sue transizioni sono quasi-vive;
 viva, se tutte le sue transizioni sono vive.
27
Reti di Petri temporizzate (RdPT)
Si usano per la valutazione delle prestazioni di un
sistema.
Sono rdP a cui è associata una struttura di
temporizzazione.
Scatto atomico: la temporizzazione è realizzata
associando ad ogni transizione un ritardo che
corrisponde al tempo che deve trascorrere tra la
sua abilitazione e il conseguente scatto. La marche
rimangono nei posti di ingresso fino allo scatto, a
meno che un’altra transizione le preveli scattando a
sua volta. Solo se al termine del ritardo la
condizione di abilitazione continua a sussistere, la
transizione scatta effettivamente, facendo sì che le
marche prelevate dai posti in ingresso siano
28
depositate nei posti di uscita.
NB: Se due transizioni che vengono abilitate
contemporaneamente sono in conflitto effettivo, la
transizione con il ritardo minore scatta per prima
disabilitando l’altra.
Supponiamo che una transizione ti rappresenti una
certa attività che richiede un certo tempo i per
essere svolta  affinchè la transizione possa
scattare, deve trascorrere un tempo i dall’istante in
cui ti viene abilitata. i può essere costante, può
cambiare (secondo una legge nota a priori) ogni volta
che la transizione viene abilitata, o può essere una
variabile aleatoria con funzione di distribuzione
nota.
Temporizzazione deterministica o
temporizzazione stocastica.
29
Una transizione ti di una RdPT è detta:
 immediata ( ), se scatta appena viene abilitata, cioè
se i =0;
 deterministica ( ), se ad essa è associato un tempo di
ritardo i scelto in modo deterministico. Esso può
essere costante, variabile secondo una sequenza nota o
raramente funzione della marcatura;
 stocastica ( ), se il tempo di ritardo i è una
variabile aleatoria con una funzione di probabilità nota.
Se i ha distribuzione esponenziale fi(x)= i e-ix la
transizione ti è detta stocastica esponenziale: il tempo
medio di ritardo è pari all’inverso della frequenza di
scatto i, cioè i =1/ i . La transizione è detta
stocastica estesa se il suo ritardo è una v.a. con
30
distribuzione diversa dall’esponenziale.
Esempi:
31
Semantica di servente della RdPT
• Serventi infiniti: ogni transizione rappresenta
un’operazione che può essere eseguita da un numero
infinito di unità operative che lavorano in parallelo.
• Servente singolo: ogni transizione rappresenta
un’operazione che può essere eseguita da una
singola unità operativa.
• Serventi multipli: ogni transizione rappresenta
un’operazione che può essere eseguita da un numero
finito k di unità operative che lavorano in parallelo.
NB: Nel libro viene utilizzata come nozione di base la
semantica a serventi infiniti: a partire da questa nozione
è possibile rappresentare anche le altre due per mezzo
di opportuni posti che limitano il massimo grado di
32
abilitazione della generica transizione.
Esempi:
33
Memoria totale e di abilitazione
Hp: 2 < 1 < 22
Da M0 (all’istante 0) t1 e t2
sono entrambe abilitate,
quindi all’istante 1= 2 la
transizione t2 scatta e si
raggiunge la marcatura [0 0 1]T. Dopo un ritardo pari
a 3, cioè all’istante 2 = 1+ 3, scatta t3 e si ritorna
a M0. Successivamente:
1. Memoria totale: t1 “ricorda” di essere stata
abilitata per un intervallo di tempo pari a 2 e
scatterà dopo un ritardo 1 -2 .
2. Memoria di abilitazione: t1 ha memoria solo
dell’attuale abilitazione
non scatterà mai!!
34
Reti di Petri temporizzate deterministiche (RdPTD)
Definizione: Una RdPTD è caratterizzata dalla
struttura algebrica Nd=(N,) dove:
• N=(P,T,Pre,Post) è una rete P/T;
•  = {i : ti T}, con i ={i,1,i,2,…}, tiT, i,2 R+  {0},
k  N+ è una struttura di orologio (o temporizzazione)
deterministica. Se i ritardi sono costanti, allora il
generico elemento i,k è indicato con i, k  N+.
Una RdPTD Nd con una marcatura M0 all’istante di
tempo iniziale 0 è detta RdPTD marcata e viene
indicata come Nd,M0.
35
Evoluzione temporale di una RdPTD
Una transizione ti è detta abilitata da una
marcatura Mj se ogni posto pP della rete contiene
un numero di marche pari o superiore a Pre(p,ti),
cioè se Mj Pre(,ti).
Il grado di abilitazione di una transizione ti
abilitata da una marcatura Mj è il più grande
numero intero k tale che Mj  k Pre(,ti). Il grado
di abilitazione di ti da Mj viene indicato con i(j).
In ogni istante di tempo ogni transizione ti ha
associato un numero di orologi pari al suo grado di
abilitazione corrente; tale numero cambia con il
grado di abilitazione, quindi può variare ogni volta
che la rete evolve da una marcatura ad un’altra,
cioè ogni volta che una transizione scatta.
36
Esempi:
(a) 1(j)= (transiz. sorgente)
(b) 1(0)=2
(c) 3(0)=0
(c)
37
Algoritmo x l’evoluzione di una RdPTD (mem. abilitaz,  serv)
Si assume che la RdPTD abbia all’istante j una
determinata marcatura Mj e che siano noti i valori
minimi degli orologi associati alle transizioni oi=min{oi,1,
…, oi,i(j)}, ti T. L’evoluzione dello stato della RdPTD
avviene attraverso la ripetizione dei seguenti passi:
1. Individuare
o*=mini:ti T {oi}
come il minimo tra i valori di orologio oi associati alle
transizioni abilitate da Mj. Se o* non è unico più
transizioni si trovano a scattare contemporaneamente,
secondo una sequenza che deve essere specificata a
priori (se la rete non è persistente, ossia se lo scatto di
una transizione può disabilitarne altre).
38
2. All’istante j+1= j+o* la transizione t* scatta portando
alla marcatura Mj+1=Mj+C(,t*).
3. Raggiunta Mj+1, l’orologio associato a t* viene
scartato. Gli orologi associati alle transizioni tiT
vengono aggiornati come segue:
• Se i(j+1) nella marcatura raggiunta Mj+1 è
inferiore a i(j) allora devono essere scartati
[i(j)- i(j+1)] orologi associati a ti: vengono
eliminati dall’insieme {oi,1, …, oi,i(j)} gli [i(j)i(j+1)] orologi che hanno i valori più alti;
• Se i(j+1) > i(j), [i(j+1) - i(j)] nuovi orologi sono
associati a ti e impostati ai valori definiti da ;
• Se i(j+1) = i(j) non faccio nulla.
4. Ripetere dal passo 1 ponendo j+1j
39
NB1: Se la transizione ti non è abilitata in una data
marcatura, non ha orologi associati, ossia non ha
orologi attivi.
NB2: Se in Mj il valore minimo di orologi oi di una
transizione ti corrisponde a k, ciò significa che se ti
sarà la prossima a scattare, essa scatterà k volte
contemporaneamente.
NB3: Se considerassimo il caso di memoria totale
l’algoritmo andrebbe modificato solo al passo 2.
NB4: Se considerassimo il caso di servente singolo a
ogni transizione sarebbe associato un solo orologio.
Se invece considerassimo il caso di servente multiplo
il numero degli orologi associati sarebbe il minimo tra
il grado di abilitazione e il numero dei serventi.
40
Esempi:
p1
t1
p2
1=2
41
Esempi:
p2
p1
t1
1=2
p2
t2
1=1
42
Grafi marcati temporizzati (GMT)
Un grafo marcato (GM) è una rdP in cui ogni posto ha
una sola transizione in ingresso e una sola transizione in
uscita e tutti gli archi hanno peso unitario.
Esempio: sistema a coda modellato mediante un GMT
p4
p3
1
p1
t1 arrivo cliente
p2
t2 inizio servizio
3
t3 fine servizio
43
Definizione: Un grafo marcato temporizzato
deterministico fortemente connesso (GMTFC) è una
rdPTD Nd che soddisfa le seguenti proprietà:
• la strutture della rete Nd è un grafo marcato
temporizzato;
•la rete è fortemente connessa, cioè esiste un cammino
orientato da un qualunque nodo a ogni altro nodo: ciò
implica che ogni posto e ogni transizione della rete
appartengono ad un ciclo orientato. L’insieme dei cicli
orientati è denotato ={1, …, r}.
• la struttura di temporizzazione  associata alle
transizioni è deterministica e costituita da sequenze di
ritardi costanti.
44
Analisi delle prestazioni
In un GMT il numero di marche in ogni ciclo rimane
costante per ogni sequenza di scatto.
Definizione: Il tempo di ciclo C(ti) di una transizione ti
di un GMT è definito sulla base del generico k-esimo
tempo di scatto i,k come
 i ,k
C (ti )  lim k 
k
N.B: i,k è l’istante di tempo in cui ti scatta per la kesima volta a partire dall’istante iniziale 0
45
Teorema: In un GMT, tutte le transizioni appartenenti
ad un ciclo i  hanno il medesimo tempo di ciclo Cj,
definito come il rapporto tra la somma dei tempi di
ritardo delle transizioni che formano j e il numero di
marche che circolano in esso, ossia
 ( j )
C ( j ) 
M ( j )
dove:
 ( j ) 
 
ti 
M ( j ) 
i
è il tempo di ritardo di ciclo;
j
 M ( p )
k
pk 
è la marcatura del ciclo j.
j
46
Teorema di Chretienne: In un GMTFC in condizioni
stazionarie, tutte le transizioni hanno il medesimo
tempo di ciclo C, dato dalla relazione
C  max 
j 
  t   i 


i
j
C j  max   

j
  pk  j M ( pk ) 
che identifica il massimo fra i tempi di ciclo di tutti i
cicli elementari del GMTFC; in altre parole, tutte le
transizioni hanno a regime frequenza di scatto r=1/C.
 Tutti i cicli tendono a sincronizzarsi, a regime, sul
più “lento” di essi (deriva dalle caratteristiche
strutturali dei GMTFC).
47
Esempio:
Consideriamo il seguente sistema produttivo. Vogliamo
calcolare la frequenza delle transizioni della RdPTD a
regime.
48
I cicli elementari che compongono l’insieme  sono:
1: p7t1p2t2p7
2: p2t2p3t3p10t1p2
3: p8t3p4t4p8
4: p9t4p5t5p9
5: p5t5p6t6p11t4p5
6: p1t1p2t2p3t3p4t4p5t5p6t6p1
I tempi di ciclo sono rispettivamente:
C1=11; C2=12; C3=1; C4=21; C5=22; C6=11,3.
Da cui la frequenza di scatto a regime risulta:
1
1
1
r  

 0, 045
C max  j  C j 22
49
Reti di Petri temporizzate stocastiche (RdPTS)
Definizione: Una RdPTS è una struttura algebrica
Ns=(N,) dove:
• N=(P,T,Pre,Post) è una rete P/T;
•  = [1 2 ] è il vettore delle frequenze di scatto
delle transizioni; gli elementi i = i(Mk), k +.
Per una RdPTS le regole di scatto sono uguali a quelle di
una RdP e la scelta delle prossima transizione da
scattare è fatta sulla base delle probabilità di scatto
delle singole transizioni.
Prob. di scatto della
i ( M k )
transizione ti abilitata da Mk
Pr{ti | M k } 
  j (M k )
t j  ( M k )
A(Mk):insieme delle
transizioni abilitate da Mk
50
Una RdPTS è equivalente ad una CMTC.
Teorema 1: In un RdPTS, i tempi di permanenza in ogni
marcatura sono distribuiti in maniera esponenziale.
Teorema 2: L’evoluzione nel tempo di una RdPTS può
essere descritta da una CMTC nella quale ogni stato
corrisponde ad una marcatura raggiungibile dalla
RdPTS.
51
Una CM equivalente ad una RdPTS si può ottenere
applicando il seguente algoritmo:
Algoritmo:
1. Individua una corrispondenza biunivoca tra gli stati
della CMTC e l’insieme di raggiungibilità R(N,M0)
facendo corrispondere ad ogni marcatura Mk uno
stato xk X.
2. Fissa come distribuzione iniziale di probabilità
0(0)=1, ossia assegna max probabilità allo stato x0
corrispondente a M0.
3. Imposta gli elementi della matrice Q pari a:
qkk   t  ( M ) i ( M k )
i
k
qkj   t 
i
j (Mk
)
i ( M k )
dove Aj(Mk) = {tiA(Mk) | Mkti Mj}
52
Esempio:
Consideriamo un centro di
lavorazione costituito da una
sola macchina:
p1: macchina disponibile
p2: macchina in lavorazione
p3: macchina in riparazione
t1: inizio lavorazione (tasso di scatto )
t2: fine lavorazione (tasso di scatto )
t3: guasto della macchina (tasso di scatto )
t4: riparazione completata (tasso di scatto )
53
Gli stati in cui può trovarsi il sistema sono:
•x0= macchina disponibile, corrispondente alla
marcatura M0=[1 0 0]T;
•x1= macchina al lavoro, corrispondente alla marcatura
M1=[0 1 0]T;
•x2= macchina guasta, corrispondente alla marcatura
M2=[0 0 1]T. La CMTC equivalente alla RdPTS è la
seguente:
54
La CMTC nella precedente pagina si può ottenere
semplicemente dal grafo di raggiungibilità della RdPTS
sostituendo ad ogni marcatura lo stato corrispondente
nella CMTC equivalente e ad ogni transizione della
RdPTS il parametro che caratterizza la distribuzione
esponenziale dei suoi tempi di scatto.
RdPTS limitata
 CMTC finita
Grafo di raggiungibilità RdP fortemente connesso
CMTC ergodica

55
Analisi strutturale e analisi prestazionale
Sappiamo che una CMTC omogenea finita e irriducibile
risulta sempre ergodica. Quindi un grafo marcato di una
rete limitata fortemente connesso corrisponde a una
CMTC ergodica.
L’analisi di un modello RdPTS è di solito mirata alla
misura di indici di prestazione:
1. La probabilità di un evento e definito in funzione della
marcatura (ad es: nessuna marca in un sottoinsieme di
posti, o almeno una marca in un posto quando in un altro
non ce ne sono, ecc) si calcola sommando la probabilità di
tutte le marcature che soddisfano l’evento:
Pr{e} 

k
M k  e
dove Me è l’insieme di
marcature per cui la definizione di e è soddisfatta
56
2. La probabilità di avere un certo numero di marche in
un posto pi si può calcolare considerandola come uno
speciale evento; pertanto, se definiamo ei,j l’evento di
avere j marche nel posto pi, il numero medio di marche
nel posto pi è dato da:
ni   j Pr{ei , j }
j
3. La frequenza di scatto fj di una transizione tj, ossia
il numero medio di volte che la transizione scatta
nell’unità di tempo in condizioni di regime è la somma
pesata dei tassi di scatto delle transizioni abilitate in
ogni marcatura Mi:
fj 

i:t j  ( M i )
 j ( M i ) i
57
Esempio:
Consideriamo la seguente RdPTS dove i=1 per
i=1,2,3,4. Vogliamo calcolare: 1) la probabilità che a
regime i posti p2 e p3 siano contemporaneamente
marcati; 2) la frequenza di scatto a regime della
transizione t2 e 3) il numero medio di marche nel posto
p5 a regime.
58
Costruiamo il grafo di raggiungibilità della RdPTS:
M0=[1 0 0 0 0]T
M1=[0 1 1 0 0]T
M2=[0 0 1 1 0]T
M3=[0 1 0 0 1]T
M4=[0 0 0 1 1]T
La RdPTS è limitata e il grafo è fortemente connesso,
quindi la CMTC equivalente è ergodica, quindi posso
calcolare le probabilità di stato a regime risolvendo il

sistema:
Q  0
{  1
 j
59
x j X
Risolvendo il sistema ottengo: 0= 4=2/7 e 1= 2=
3=1/7, da cui:
1) la probabilità che a regime i posti p2 e p3 siano
contemporaneamente marcati è pari a 1=1/7.
2) la frequenza di scatto a regime della transizione t2
è : 2*(1+ 3)= 2/7
3) il numero medio di marche nel posto p5 a regime è
pari a: 1*(3)+1*(4)=3/7
60