Sei sulla pagina 1di 10

Automi a Stati Finiti: limiti

Modello computazionale a memoria finita (proporzionale al numero degli stati) Il numero di stati aumenta velocemente all'aumentare della complessit del sistema

RETI DI PETRI

componendo automi che descrivono sottosistemi, l'automa globale ha N x M stati (a meno di minimizzazioni) a cui per in pratica si ovvia gerarchizzando gli automi

Natura intrinsecamente sequenziale


lo stato corrente di un automa singolo, concentrato l'automa pu effettuare una sola transizione per volta

Difficile modellare sistemi concorrenti in cui pi parti evolvono indipendentemente, con tempi propri

ASF: esempio di composizione (1/2)


SISTEMA produttore + consumatore + magazzino di capacit 2

ASF: esempio di composizione (2/2)

I tre sottosistemi a lato hanno rispettivamente: 2 stati 2 stati 3 stati

Il sistema globale risultante dalla loro composizione ha 12 stati = 2 x 2 x 3

Reti di Petri
Origine storica: Adam Petri (Germania), ~1960 Le reti di Petri sono un modello formale del flusso delle informazioni in un sistema Sono usate per modellare sistemi ad eventi e sistemi concorrenti asincroni In particolare le reti modellano due aspetti dei sistemi: eventi e condizioni e le relazioni che sussistono tra questi In generale le reti di Petri vengono rappresentate attraverso un grafo
Arco
p1 t1 t2

Esempio (1/2)
Posto
2

Transizione
p5 3 3 t3

p3 t4

p2

p4

Questo grafo modella solo le propriet statiche del sistema

Esempio (2/2)
TOKEN
p1 t1 t2 p5 3 3 p2 p4 t3 2 p3 t4

Reti di Petri: Concetti di base


Concetto di stato distribuito graficamente, il cerchio non rappresenta pi lo stato, ma il nuovo concetto di POSTO ogni POSTO pu contenere zero o pi TOKEN (gettoni)
3

Concetto di transizione gli archi non collegano pi i cerchi direttamente, ma attraverso il nuovo concetto di TRANSIZIONE ogni TRANSIZIONE pu riunire pi archi Modello intrinsecamente concorrente Memoria non necessariamente finita

Le propriet dinamiche sono il risultato dellesecuzione della rete. Lesecuzione della rete controllata dalla posizione e dal movimento dei token nella rete stessa

Reti di Petri "Posti / Transizioni"


Una RETE POSTI/TRANSIZIONI (RPT) composta da: un insieme di POSTI P = {p1, p2, , pn} un insieme di TRANSIZIONI T = {t1, t2, , tm} un insieme di archi di ingresso AI P T un insieme di archi di uscita AO T P una funzione peso W : AI AO N - {0} che d un peso a ogni arco una funzione marcatura iniziale M0 : P N che stabilisce il numero iniziale di token di ogni posto pi 0 pi tj 1 2 pi tj

Significato dei componenti (1/2)


I posti rappresentano le condizioni operative delle entit (processi e risorse) che costituiscono il sistema modellato.

Le transizioni rappresentano gli eventi o le azioni che possono tj pi verificarsi nel sistema, unitamente alle condizioni che li abilitano. Gli archi orientati pongono in relazione posti e transizioni, ovvero evidenziano in quali condizioni possono presentarsi certi eventi e come il manifestarsi di questi eventi modifichi lo stato del sistema.

Significato dei componenti (2/2)


Una marcatura rappresenta la distribuzione dei token nei posti e definisce lo stato del sistema La marcatura un vettore M = (M1, M2, M3, , Mn) che fornisce per ogni posto pi il numero di token. M(pi) il numero di token nel posto pi La marcatura M0 definisce lo stato iniziale del sistema.

Regole di evoluzione (1/2)


In una data marcatura Mk, una transizione tj abilitata se in ciascun posto di ingresso di tj presente un numero di token maggiore o uguale al peso del corrispondente arco:

Mk(pi) W(<pi,tj>)

pi :<pi,tj> AI

In ogni marcatura, possono esserci zero o pi transizioni abilitate Una transizione abilitata pu (non necessariamente deve) scattare Una sola transizione alla volta pu scattare. Il comportamento dinamico del sistema, evidenziato dalle successive marcature M1, M2, raggiungibili da quella iniziale, definito dalle seguenti regole di evoluzione: Se in una data marcatura sono abilitate due o pi transizioni, la scelta di quale debba scattare non-deterministica.

Regole di evoluzione (2/2)


Lo scatto di una transizione Mk d luogo ad una nuova marcatura Mk+1 che si ottiene:
rimuovendo da ciascun posto di ingresso un numero di token uguale al peso dellarco che collega tale posto alla transizione; depositando in ciascun posto di uscita un numero di token uguale al peso dellarco che collega tale posto alla transizione.

Sequenza e Concorrenza
sequenza: lo scatto di t1 precede necessariamente lo scatto di t2 concorrenza strutturale (dipende solo dalla topologia della rete): due transizioni non condividono posti di ingresso, quindi lo scatto delluna non impedisce lo scatto dellaltra concorrenza non strutturale ma effettiva: due transizioni condividono uno o pi posti di ingresso, ma esiste una marcatura per cui lo scatto di una t1 t2 t1 t2 t1 t2

In formule:
Mk+1(pi) = Mk(pi) Mk+1(pi) = Mk(pi) W(pi,tj) Mk+1(pi) = Mk(pi) + W(tj ,pi) pi :<pi,tj> AI, <tj,pi> AO pi :<pi,tj> AI, <tj,pi> AO pi :<pi,tj> AI, <tj,pi> AO

Mk+1(pi) = Mk(pi) - W(pi,tj) + W(tj ,pi) pi :<pi,tj> AI, <tj,pi> AO

transizione non disabilita laltra.

L'esempio produttori/consumatori
NP processi produttori generano dei messaggi e li inviano tramite un buffer a NP processi consumatori
ogni produttore alterna nel tempo lattivit di produzione con quella di deposito nel buffer di Cp messaggi per volta ogni consumatore alterna nel tempo lattivit di prelievo dal buffer di Cc messaggi per volta (se esistono) con quella di consumo dei messaggi prelevati. p1: p2: p3: p4: p5:

Produttori / consumatori (1/3)


P = {p1, p2, p3, p4, p5} produttore pronto al deposito produttore in fase di produzione consumatore pronto al prelievo consumatore in fase di consumo numero di messaggi nel buffer t1 : t2 : t3 : t4 : T = {t1, t2, t3, t4} completamento produzione deposito prelievo completamento consumo

AI = {<p1,t2>,<p2,t1>,<p3,t3>,<p4,t4>,<p5,t3>} AO = {<t1,p1>,<t2,p2>,<t2,p5>,<t3,p4>,<t4,p3>} W = {1,1,1,1,Cc ; 1,1,Cp,1,1} M0 = {0, Np, Nc, 0,0}

Condizioni iniziali:
buffer vuoto tutti i consumatori pronti al prelievo tutti i produttori in fase di produzione

Produttori / consumatori (2/3)


Np = 3 Nc = 2
2 p1 t1 t2 p5 3 3 p2 p4 t3 p3 t4

Produttori / consumatori (3/3)


P/T t1 p1 0 p2 1 p3 0 p4 0 p5 0 t2 1 0 0 0 0 t3 0 0 1 0 Cc t4 0 0 0 1 0 P/T t1 p1 1 p2 0 p3 0 p4 0 p5 0 t2 0 1 0 0 Cp t3 0 0 0 1 0 t4 0 0 1 0 0
P p1 p2 p3 p4 p5 0 Np Nc 0 0

M = {0, 3, 2, 0, 0}

M0

Gli elementi non nulli nella colonna jma della matrice di ingresso I e della matrice di uscita O corrispondono ai posti di ingresso I(tj) e ai posti di uscita O(tj) della transizione tj Il valore Iij e Oij di ciascuno coincide con il peso dellarco relativo:

Iij = W(<pi,tj>) se <pi,tj> AI Oij = W(<tj ,pi >) se <tj ,pi > AO

Iij = 0 se <pi,tj> AI Oij = 0 se <tj ,pi > AO

Matrice di incidenza e Reti pure


Utilizzando la notazione matriciale, in una marcatura Mk una transizione tj abilitata se M k I.,j Utilizzando la notazione matriciale, lo scatto in Mk della transizione tj d luogo alla marcatura Mk+1 cos definita: M k+1 = M k - I.,j + O.,j = M k + C.,j

Produttori / consumatori: evoluzione (1/4)


SITUAZIONE INIZIALE: produttore in fase di produzione (p2), consumatore pronto al prelievo (p3)

M0 = {0,1,1,0,0}

Transizioni abilitate in M0: E(M0) = {t1}


2

p1 t1 t2 p5 3 3 p2 t3

p3 t4

dove C = O - I detta matrice di incidenza


La matrice di incidenza C definisce completamente la topologia di una rete soltanto se la rete pura, ossia se in essa non esistono posti che siano contemporaneamente di ingresso e di uscita per una stessa transizione.

p4

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

Produttori / consumatori: evoluzione (2/4)


SITUAZIONE DOPO IL 1 PASSO: produttore pronto al deposito (p1), consumatore pronto al prelievo (p3)

Produttori / consumatori: evoluzione (3/4)


SITUAZIONE DOPO IL 2 PASSO: 3 messaggi nel buffer (p5), produttore in fase di produzione (p2), consumatore pronto al prelievo (p3)

M1 = {1,0,1,0,0}

Transizioni abilitate in M1: E(M1) = {t2}


2

M2 = {0,1,1,0,3}

Transizioni abilitate in M2: E(M1) = {t1,t3}


2

p1 t1 t2 p5 3 3 p2 t3

p3 t4 t1

p1 t2 p5 3 3 t3

p3 t4

p4

p2

p4

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

Produttori / consumatori: evoluzione (3/4)


SITUAZIONE DOPO IL 2 PASSO: 3 messaggi nel buffer (p5), produttore in fase di produzione (p2), consumatore pronto al prelievo (p3)

Produttori / consumatori: evoluzione (4/4)


SITUAZIONE DOPO IL 3 PASSO: 1 messaggio nel buffer (p5), produttore in fase di produzione (p2), consumatore in fase di consumo(p4)

M2 = {0,1,1,0,3}

Transizioni abilitate in M2: E(M1) = {t1,t3}


2

M3 = {0,1,0,3,1}

Transizioni abilitate in M3: E(M1) = {t1,t4}


2

t1

Supponiamop t che scatti t3


2

p1

p3
5

p1 t4 t1 t2 p5 3 3 t3

p3 t4

t3

3 p2 p4 p2

p4

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

Produttori / consumatori: evoluzione (4/4)


SITUAZIONE DOPO IL 3 PASSO: 1 messaggio nel buffer (p5), produttore in fase di produzione (p2), consumatore in fase di consumo(p4)

Automi a Stati Finiti vs Reti di Petri


Entrambi i formalismi sono operazionali, ossia costituiscono una specifica di comportamento eseguibile Le reti di Petri sussumono il formalismo degli automi: ogni ASF facilmente modellabile da una rete di Petri:
ogni transizione ha un solo posto d'ingresso e un solo posto di uscita tutti gli archi hanno peso unitario tutte le marcature prevedono un unico token: la sua posizione in un posto o nell'altro determina lo stato

M3 = {0,1,0,3,1}

Transizioni abilitate in M3: E(M1) = {t1,t4}


2

p1 t1 t2

p3

e pcos via
5

t3

t4

3 3 p2 p4

Tuttavia, nelle reti di Petri i concetti di stato e di cambiamento di stato sono distribuiti:
negli automi, un cambiamento di stato ne esclude un altro, nelle reti di Petri invece pu esistere concorrenza

LEGENDA: p1: produttore pronto al deposito p3: consumatore pronto al prelievo

p5: numero di messaggi nel buffer p2: produttore in fase di produzione p4: consumatore in fase di consumo

Reti di Petri: ulteriori osservazioni


Il tempo non modellato esplicitamente (esiste solo un ordinamento temporale parziale fra eventi) possibilit di modellare eventi asincroni concetto di sequenza (ad esempio, lo scatto di t1 precede quello di t2) Vi pu essere concorrenza strutturale (come nell'esempio fra t1 produzione e t4 consumo) quando pi transizioni sono abilitate in contemporanea facile modellare meccanismi di sincronizzazione (mutua esclusione, condivisione controllata di risorse, etc) semplice comporre pi reti il numero di posti e transizioni di una rete composta cresce linearmente con quelli delle reti componenti

Reti di Petri: ANALIZZABILIT


Le reti di Petri sono analizzabili formalmente possibilit di dimostrare propriet del sistema PROPRIET FONDAMENTALI
Raggiungibilit (e Copertura) Limitatezza Vitalit

ALTRE PROPRIET
Reversibilit e Stato di accettazione Persistenza Conservazione

RAGGIUNGIBILIT
M0

(IR)RAGGIUNGIBILIT e DEADLOCK
0,1,1,0,0

Una marcatura M' si dice raggiungibile da M se esiste una sequenza di scatti da cui si raggiunge M' a partire da M. L'insieme delle marcature raggiungibili da quella iniziale si chiama insieme di raggiungibilit (con M0 R(M0)) Esso rappresentato da un grafo di raggiungibilit
i vertici evidenziano le marcature raggiungibili da ogni altra gli archi indicano le transizioni corrispondenti.

Il grafo di raggiungibilit un utile strumento di analisi delle reti di Petri, poich evidenzia: eventuali stati (marcature) indesiderati raggiungibili eventuali stati (marcature) desiderati irraggiungibili

t1 produzione t2 deposito t3 prelievo t4 consumo

1,0,1,0,0

R(M0)

0,1,1,0,3

eventuali situazioni di "deadlock" ossia situazioni in cui da una data marcatura non si pu pi proseguire.

0,1,0,3,1

1,0,1,0,3

1,0,0,3,1

0,1,1,0,1

1,0,1,0,1

NOTA: spesso, per, il grafo di raggiungibilit infinito. Per renderlo comunque finito, si introduce il simbolo a rappresentare il numero "illimitato" di token che possono accumularsi in certi posti, tipicamente a causa di "loop"; cos, un unico nodo del grafo cattura infinite marcature. Si pu dimostrare che il grafo risultante sempre finito.

Raggiungibilit e Deadlock: esempio (1/4)


SITUAZIONE INIZIALE (marcatura M0)

Raggiungibilit e Deadlock: esempio (2/4)


SITUAZIONE DOPO LO SCATTO DI t1 (marcatura M1)

L'unica transizione abilitata t1, quindi supponiamo che scatti.

Sono abilitate le transizioni t1,t2. Supponiamo che scatti t2.

Raggiungibilit e Deadlock: esempio (3/4)


SITUAZIONE DOPO LO SCATTO DI t2 (marcatura M2)

Raggiungibilit e Deadlock: esempio (4/4)


SITUAZIONE DOPO LO SCATTO DI t3 (marcatura M3)

Non vi sono pi transizioni abilitate! DEADLOCK!


M0 M1 M2 M3

Sono abilitate le transizioni t3,t4. Supponiamo che scatti t3.

1, 0, 0

t1

1, 0, 2
t1

t2

0, 1, 2
t4

t3

0, 1, 0

RAGGIUNGIBILIT e COPERTURA
Il problema della raggiungibilit probabilmente il pi rilevante in una Rete di Petri, dato che molti altri si riconducono ad esso. Un problema collegato ad esempio quello della determinazione di una marcatura di copertura, ossia della determinazione di una marcatura M' che "copra" una marcatura M data nel senso che ogni posto di M' ha un numero di token non inferiore a quelli che ha in M

LIMITATEZZA
Se per ogni marcatura R(M0) il numero di token in un posto non supera mai un certo valore K, tale posto detto k-limitato.

tale propriet cattura l'idea dell'esistenza di un limite al numero di risorse necessarie all'evoluzione del sistema

Per estensione, una RETE k-limitata se TUTTI i suoi posti sono k-limitati.

questa propriet importante perch garantisce che tutte le altre propriet siano computabili ci diretta conseguenza del fatto che, in una rete limitata, anche il numero di marcature raggiungibili limitato, perci una tale rete equivalente a un automa a stati finiti. se k=1, la rete si dice sicura (safe)

LIMITATEZZA IMPOSTA

LIMITATEZZA: ESEMPIO (1/2)


Rete base (non limitata) Una possibile sequenza: P1 1 1 1 1 P2 0 1 2 Un'altra possibile sequenza:
t1 t2

sempre possibile limitare artificialmente una rete a un valore k prefissato, mediante la tecnica dei posti complementari.

per ogni posto P, si introduce il posto complementare P' e lo si collega opportunamente alle stesse transizioni di P si definisce la marcatura iniziale M0 in modo che il numero di token nel posto P' sia M0(P') = k M0(P) cos facendo, la somma dei token in P e P' costante = k e quindi la rete nel complesso limitata.

P1

P1 1 1 2 2 3 P2 0 1 0 1 0 Per limitarla occorre:

P2

limitare P2 (facile) limitare P1 (possibile, ma al prezzo di bloccare la rete)

Esempio

LIMITATEZZA: ESEMPIO (2/2)


Una possibile sequenza: P1 1 1 1 2 3 4 P2 0 1 4 3 2 1 P'1 3 3 3 2 1 0 deadlock P'2 4 3 0 1 2 3 Un'altra possibile sequenza: P1 1 1 1 2 3 3 3 4 P2 0 1 4 3 2 3 4 3 P'1 3 3 3 2 1 1 1 0 deadlock P'2 4 3 0 1 2 1 0 1 Rete limitata a k = 4
P'1 k-M0(P1)

VITALIT (LIVENESS)
Mentre la propriet di limitatezza riferita ai POSTI, la propriet di vitalit riferita alle TRANSIZIONI. Questa propriet esprime il "grado di possibilit" che una data transizione sia abilitata. La vitalit tipicamente necessaria nei sistemi in funzionamento permanente, o in cui l'indisponibilit di un certo servizio implica un errore o un blocco.

P1 t1 P2 t2

In particolare, questa propriet include la verifica della presenza di eventuali situazioni di deadlock, essendo queste ultime caratterizzate proprio dal fatto di non avere alcuna transizione abilitata.
k-M0(P2)

P'2

La vitalit si articola in 5 gradi


(da 0 = transizione morta a 4 = transizione sempre viva )

GRADI DI VITALIT delle transizioni


Grado 0 (transizione morta)
La transizione non pu mai scattare in alcuna marcatura raggiungibile.

GRADI DI VITALIT delle transizioni


Grado 0 (transizione morta)
La transizione non pu mai scattare in alcuna marcatura raggiungibile.

Grado 1
Esiste almeno una marcatura raggiungibile in cui la transizione pu scattare.

Grado 1
Esiste almeno una marcatura raggiungibile in cui la transizione pu scattare.

Grado 2
Per ogni intero N, esiste almeno una sequenza di scatti in cui la transizione scatta N volte.

Grado 2

Per ogni intero N, esiste almeno una sequenza di scatti in cui la Se TUTTE le transizioni di transizione scatta N volte. una rete sono vive, si dice

Grado 3
Esiste almeno una sequenza di scatti in cui la transizione scatta infinite volte.

Grado 3

che LA RETE VIVA

Esiste almeno una sequenza di scatti in cui la transizione scatta infinite volte.

Grado 4 (transizione viva)


Esiste sempre una sequenza di scatti che abilita la transizione a partire da qualunque marcatura raggiungibile.

Grado 4 (transizione viva)


Esiste sempre una sequenza di scatti che abilita la transizione a partire da qualunque marcatura raggiungibile.

ALTRE PROPRIET
Reversibilit:
quando la marcatura iniziale M0 raggiungibile da ogni marcatura M dell'insieme di raggiungibilit.

DECIDIBILIT delle PROPRIET


PROBLEMA DI FONDO: le propriet viste sono decidibili ? TEOREMI raggiungibilit e vitalit sono propriet decidibili anche se con algoritmi di complessit esponenziale. la limitatezza di una rete una propriet decidibile (tecnica dell'albero di copertura) MA stabilire se l'insieme di raggiungibilit di una rete includa quello di unaltra (e quindi in particolare se i due siano uguali) un problema indecidibile.

Stato di accettazione:
una marcatura M costituisce uno stato di accettazione se raggiungibile da ogni altra marcatura dell'insieme di raggiungibilit.

Persistenza:
se, prese due transizioni abilitate qualsiasi, lo scatto dell'una non disabilita l'altra (ergo, una volta che una transizione abilitata, tale rimane fino a quando scatta)

Conservazione:
quando il numero di token complessivo, calcolato pesando secondo una certa funzione di costo i token dei singoli posti, rimane globalmente costante durante l'evoluzione della rete.

DECIDIBILIT : CONFRONTO
Il formalismo delle Reti di Petri si colloca a "met strada" fra Automi a Stati Finiti (dove tutte le propriet sono decidibili) e Macchine di Turing (dove quasi nessuna propriet lo ) molto utilizzato e apprezzato proprio perch unisce elevata espressivit (>ASF) ad analizzabilit tuttavia una situazione in certo modo "al limite": se si aumenta anche di poco l'espressivit (come accade in alcune varianti del formalismo base), il formalismo diventa Turing-equivalente e immediatamente le propriet diventano indecidibili.

LIMITI delle RETI DI PETRI e TEST A ZERO


Una Rete di Petri non pu, in generale, risolvere il problema del cosiddetto TEST A ZERO TEST A ZERO: possibilit di abilitare una transizione in corrispondenza alla assenza di token in un dato posto di ingresso. Solo se la rete limitata, il test a zero possibile tramite l'introduzione di posti complementari ovvio! una rete limitata equivalente a un ASF! L'incapacit di modellare il TEST A ZERO ci che rende le Reti di Petri NON Turing-eqv e che permette per la decidibilit delle propriet. Le estensioni delle Reti di Petri capaci di modellare il TEST A ZERO sono Turing-eqv indecidibilit

ESTENSIONE 1: RETI CON ARCHI INIBITORI


Con il formalismo base, non si riesce a imporre al consumatore di consumare tutti i messaggi prima che il produttore possa tornare in funzione. La Rete con arco inibitore invece ci riesce, condizionando l'abilitazione della transizione all'assenza di token nel posto P2.

ESTENSIONE 2: RETI COLORATE


Un'altra estensione delle Reti di Petri costituita dalle Reti di Petri COLORATE In una rete colorata non c' un unico tipo di token: ci sono token di diversi "colori", cio di diversi tipi I token colorati intervengono nell'abilitazione delle transizioni, in quanto gli archi sono etichettati: per far scattare una transizione occorrono token di un certo tipo

se il numero di colori FINITO, la rete colorata riconducibile a una rete ordinaria se invece il numero di colori INFINITO, il formalismo diventa Turing-equivalente

Conseguenza: la marcatura conseguente allo scatto di una transizione non necessariamente unica

ESTENSIONE 3: RETI CON PRIORIT

L'INTRODUZIONE DEL TEMPO

Un'ulteriore estensione delle Reti di Petri costituita dalle Reti di Petri CON PRIORIT In tali reti, la scelta di quale fra le transizioni abilitate debba scattare deterministica e precisamente basata sulla priorit di tali transizioni. Di nuovo, questa estensione Turing-equivalente e conseguentemente le tre propriet fondamentali (raggiungibilit, limitatezza, vitalit) diventano indecidibili.
TEOREMA: sempre possibile trasformare una rete con priorit in una rete con archi inibitori, e viceversa.

Le Reti di Petri classiche non modellano il tempo: danno solo un ordinamento temporale parziale fra gli eventi. Poich per molti sistemi richiedono, per essere ben modellati, la presenza esplicita della dimensione tempo, sono state definite Reti di Petri temporizzate Come gi per le estensioni precedenti, anche l'introduzione del tempo rende per questi formalismi Turingequivalenti e comporta quindi l'indecidibilit delle tre propriet fondamentali (raggiungibilit, limitatezza, vitalit) Le Reti di Petri temporizzate si dividono in due categorie: Reti temporizzate deterministiche Reti temporizzate stocastiche

TIPI DI RETI TEMPORIZZATE

TIME PETRI NETS (Merlin, 1976)

Reti temporizzate deterministiche: i valori o gli


intervalli temporali sono dati in modo deterministico

In una TIME Petri Net, ogni transizione etichettata con due istanti di tempo tmin , tmax

TIME PETRI NETS (Merlin, 1976) TIMED PETRI NETS (Ramchandani, 1980)

per poter scattare, una transizione deve rimanere abilitata almeno per il tempo tmin se al tempo tmax essa ancora abilitata, deve scattare

Reti temporizzate stocastiche: i valori o gli


intervalli temporali sono dati in modo probabilistico

STOCHASTIC PETRI NETS (Molloy, 1982) GENERALIZED STOCHASTIC PETRI NETS (Ajmone Marsan, Balbo, Conte, 1984)

Le reti classiche corrispondono al caso tmin= 0, tmax = L'insieme di raggiungibilit contenuto in (o al pi coincidente con) quello della rete priva di temporizzazione

TIMED PETRI NETS (Ramchandani, 1980)

STOCHASTIC PETRI NETS (1982)

In una TIMED Petri Net, ogni transizione ha una durata t

una transizione deve scattare immediatamente appena abilitata lo scatto non istantaneo, ma dura il tempo t

Ogni transizione ha un tempo di scatto non prefissato, ma distribuito esponenzialmente

a ogni transizione associata una variabile aleatoria a valori reali non negativi, che esprime il tempo che intercorre fra l'istante di abilitazione della transizione e l'istante di scatto Se pi transizioni sono abilitate, scatta quella con tempo di scatto minore

all'inizio si rimuovono i token dai posti di ingresso poi la transizione permane in fase di scatto per il tempo t infine emette i token nei posti di uscita

Le reti stocastiche sono isomorfe ai processi di Markov tempo-continui

Modello utile per effettuare valutazioni di prestazioni di sistemi ciclici (ad es. protocolli di comunicazione)

possibilit di calcolare il tempo minimo di ciclo per reti limitate, validazione delle specifiche e check di vitalit

Il grafo di raggiungibilit di una rete stocastica limitata isomorfo a una catena di Markov finita possibile calcolare propriet quali la probabilit di una particolare condizione, il valore atteso del numero di token, il numero medio di scatti di una transizione nell'unit di tempo

GENERALIZED STOCHASTIC PETRI NETS


(Ajmone Marsan, Balbo, Conte - 1984)

RETI e ANALIZZABILIT: RISULTATI (1/2)

Le transizioni sono immediate o temporizzate

Le transizioni temporizzate funzionano come nelle reti stocastiche semplici Le transizioni immediate scattano immediatamente appena abilitate

Le transizioni immediate modellano quelle attivit con tempi di esecuzione trascurabili rispetto agli altri

se sono abilitate transizioni di entrambi i tipi, scattano solo quelle immediate se fra quelle immediate ve ne sono alcune in conflitto, la scelta di quali far scattare dipende da una distribuzione di probabilit detta distribuzione di selezione Vantaggio: le marcature con transizioni immediate "durano poco" e vengono trascurate analisi semplificata

RETI e ANALIZZABILIT: RISULTATI (2/2)


(segue)

10