La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Maria Pia FANTI Dipartimento di Elettrotecnica ed Elettronica Modelling by Petri nets Polytechnic of Bari, ITALY.

Presentazioni simili


Presentazione sul tema: "Maria Pia FANTI Dipartimento di Elettrotecnica ed Elettronica Modelling by Petri nets Polytechnic of Bari, ITALY."— Transcript della presentazione:

1 Maria Pia FANTI Dipartimento di Elettrotecnica ed Elettronica Modelling by Petri nets Polytechnic of Bari, ITALY

2 Outline What are Petri Nets? Definitions and basic concepts Modelling with Petri Nets: main structures High level Petri nets and Timed Petri nets Conclusions

3 Petri Nets Petri Nets (PN) offer advantages because of their twofold representation: graphical and mathematical. It is a graphical and mathematical tool for the formal description of the logical interactions and the dynamics of complex systems. PN are particularly suited to model: Concurrency; Conflict; Sequencing; Synchronization; Sharing of limited resources; Mutual exclusion.

4 Petri Nets Petri Nets (PN) originated from the Phd thesis of Carl Adam Petri in 1962. A web service on PN is managed at the University of Aarhus in Denmark, where a bibliography with more that 8,500 items can be found. http://www.daimi.au.dk/PetriNets/ The main International Conference: ATPN - Application and Theory of PN Other conferences: Int. IFAC conference, IEEE SMC conference, IEEE CASE, WODES, etc.

5 Main references about definitions and properties of ordinary Petri nets Murata T., (1989), Petri nets: properties, analysis and applications, IEEE Proceedings, Vol. 77, no. 4, 541-580. Peterson, J.L., (1981), Petri Net Theory and the Modeling of Systems, Prentice Hall, Englewood Cliffs, NJ, USA.

6 Definitions A Petri net is a bipartite directed graph consisting of two kinds of nodes: places and transitions – –Places typically represent conditions within the system being modeled. They are represented by circles. – –Transitions represent events occurring in the system that may cause change in the condition of the system. They are represented by bars. – –Arcs connect places to transitions and transitions to places (never an arc from a place to a place or from a transition to a transition).

7 Definitions Input arcs are directed arcs drawn from places to transitions, representing the conditions that need to be satisfied for the event to be activated Output arcs are directed arcs drawn from transitions to places, representing the conditions resulting from the occurrence of the event

8 Definitions Input places of a transition are the set of places that are connected to the transition through input arcs Output places of a transition are the set of places to which output arcs arrive from the transition

9 Example of a PN p1 – resource idle p2 – resource busy t1 – task arrives t2 – task completes p1 t2 p2 t1

10 Definitions More formally, a Petri net is described by the four-tuple PN=(P, T, Pre, Post) where: P P is the set of places and |P|=m T is the set of transitions and |T|=n Pre: P×T N is the pre incidence matrix, that specifies the arcs directed from places to transitions Post: P×T N is the post incidence matrix, that specifies the arcs directed from transitions to places

11 Example of Petri net

12 Incidence Matrix

13 Tokens are dots (or integers) associated with places; a place containing tokens indicates that the corresponding condition holds Marking is a function M: P N that associates to each place a non negative number. It is a vector listing the number of tokens in each place of the net PN Definitions

14 M 0 is the initial marking A net system is a dynamical system PN Definitions

15 When input places of a transition have the required number of tokens, the transition is enabled. An enabled transition may fire (event happens) removing one or more tokens from each input place and depositing one or more tokens in each of its output place. PN dynamics 2 p1 p2 t1 3 3 2

16 Example of a PN p1 – resource idle p2 – resource busy p3 – user t1 – task starts t2 – task completes p1 t2 p2 t1 p3

17 Transition t 2 is enabled at M 0 because M 0 Pre(.,t 2 ). An enabled transition may fire (event happens) removing one token from each input place and depositing one token in each of its output place. Enabling condition

18 Firing

19 Introducing the firing vector It holds: M=M 0 + C u

20 Sequence Modelling by Petri nets: main structures Concurrency (or Parallelism)

21 Choice (non determinism) Modelling by Petri nets: main structures

22 Synchronization

23 Limited Resources Modelling by Petri nets: main structures

24 Producer/consumer Modelling by Petri nets

25 Transmitter/receiver process Modelling by Petri nets

26 Mutual exclusion or choice Modelling by Petri nets: main structures

27 Insiemi di posti t={p P Pre(p,t)>0} è linsieme dei posti in ingresso a t t ={p P Post(p,t)>0}è linsieme dei posti in uscita da t Insiemi di transizioni p={t T Post(p,t)>0} è linsieme delle transizioni in ingresso a p p ={t T Pre(p,t)>0}è linsieme dei delle transizioni in uscita da p Alcune definizioni

28 A marking M is reachable from M if there exists a firing sequence s=t 1 t 2..t n starting from M that results in the new marking M Hence: M=M+Cu where u is the firing vector associated to s. The reachability set of a PN system is the set of all markings that are reachable from its initial marking Reachability Analysis

29 A reachability graph is a directed graph whose nodes are the markings in the reachability set, with directed arcs between the markings representing the marking-to- marking transitions The directed arcs are labeled with the corresponding transition whose firing results in a change of the marking from the original marking to the new marking 7ab15e

30 Reachability Analysis If the reachability set is infinite then the nodes of the reachability graph are infinite in number: it is necessary to build a coverability graph. Several analysis are based on the reachability graph: behavioral analysis. By properly identifying the frontier nodes, the generation of the reachability graph involves a finite number of steps, even if the PN is unbounded. Three type of frontier nodes: terminal (dead) nodes: no transition is enabled; duplicate nodes: already generated; infinitely reproducible nodes.

31 Reachability graph

32 Structural properties The structural properties are the properties that depend on the structure of the net and on the initial marking. Reachability Bundness Liveness Conservativeness Deadlock Analysis may be based on the rechability graph or on the state equation

33 Posto k-limitato Un posto di una rete di Petri (PN) si dice k-limitato se in tutte le marcature raggiungibili dalla rete il numero di token presenti nel posto non supera mai un valore prefissato k. Rete k-limitata e limitata Una rete si dice k-limitata se tutti i posti sono k-limitati. Una rete si dice limitata se è limitata per qualche k finito. Una rete 1-limitata si dice sana o binaria. Proprietà comportamentali (I) Sono quelle proprietà che dipendono dalla struttura della rete e dalla marcatura iniziale Raggiungibilità Problema della raggiungibilità: data una rete marcata, è possibile raggiungere M da M 0 ? Limitatezza

34 Una rete marcata è limitata se e solo se ha un insieme di raggiungibilità finito. Proprietà comportamentali (II) Reversibilità: Una rete di Petri con marcatura iniziale M 0 è detta reversibile se per ogni marcatura M raggiungibile da M 0, M 0 è raggiungibile da M.

35 Conservatività stretta Una rete marcata è strettamente conservativa se per ogni marcatura raggiungibile M R(N,M 0 ) il nr. di gettoni che la rete contiene non varia: p P M(p)= p P M 0 (p) Conservatività Una rete marcata è conservativa se esiste un vettore di interi positivi x tale per ogni marcatura raggiungibile M R(N,M 0 ) vale: x T M=x T M 0 Cioè il numero di gettoni pesato con x non varia. Se una rete marcata è conservativa allora essa è limitata. Proprietà comportamentali (III)

36 VIVEZZA Transizione quasi viva Una transizione t è quasi viva se e solo se esiste almeno una marcatura M R(N,M 0 ) tale che t è abilitata in M. Transizione viva Una transizione t è viva se e solo se per ogni M R(N,M 0 ) esiste M raggiungibile da M tale che t è abilitata in M. Transizione morta Una transizione t è morta se e solo se non esiste M R(N,M 0 ) tale che t è abilitata in M. Proprietà comportamentali (IV)

37 VIVEZZA Rete morta Una rete R(N,M 0 ) è morta se ogni t è morta. Rete quasi viva Una rete R(N,M 0 ) è quasi viva se e solo se tutte le transizioni sono quasi vive Rete viva Una rete R(N,M 0 ) è viva se tutte le transizioni sono vive. Rete bloccante Una rete R(N,M 0 ) è bloccante se esiste una transizione raggiungibile morta (in cui nessuna transizione è abilitata). Proprietà comportamentali (V)

38 Si vogliono caratterizzare le situazioni in cui sequenze di transizioni portano ad incrementare alcune componenti della marcatura. Si considera allora un nuovo vettore con il simbolo che si può pensare come un simbolo di infinito. Si dice una -marcatura di una rete un vettore M in cui una o più componenti può assumere il valore. Per determinare se t è abilitata da una -marcatura M>Pre(.,t) si deve tener conto che per ogni n N vale >n e ±n=. Perdendo alcune informazioni sulla raggiungibilità, si costruisce il grafo di copertura. Il grafo di copertura

39 Grafo di copertura 1-Si parta dalla marcatura iniziale M 0 2-Si consideri una marcatura M senza etichetta 2.1 - per ogni t abilitata da M - si calcoli M raggiunta da M scattando t - si consideri il cammino che parte dal nodo radice e arriva a M, se questo cammino ha un nodo M*<M allora si sostituisca ad M il nodo M il vettore ottenuto da M in cui tutte le componenti strettamente maggiori delle componenti di M si sostituiscono con il simbolo - si aggiunga un arco t tra M e M - se esiste già un nodo M nel grafo si elimini il nuovo nodo e si aggiunga larco tra M e M già esistente 2.2 -si etichetti come vecchio il nodo M e si torni a 2

40 Grafo di copertura: alcune proprietà Data una marcatura M si dice che è -coperta da M se M (p)=M(p) per ogni p tale che M (p) tale relazione si indica con M M. M è raggiungibile allora esiste nel grafo M che copre M. M è raggiungibile se M è un nodo del grafo. Se M R(N,M 0 ) esiste nel grafo un cammino orientato da M 0 ad M, con M coperta da M. M R(N,M 0 ) solo se esiste nel grafo un cammino orientato da M 0 ad M.

41 Una rete marcata è limitata se e solo se ha un insieme di raggiungibilità finito. Si consideri la rete marcata ed il suo grafo di copertura: un posto p è k-limitato se e solo se per ogni M 0 vale M (p)<k. La rete marcata è limitata se e solo se nessun nodo del grafo contiene il simbolo (il grafo di copertura è un grafo di raggiungibilità). Proprietà comportamentali con il grafo di copertura

42 P-invariante Si dice P-invariante di una PN un vettore colonna x di m elementi non negativi tale che x T C=0. Tale equazione può avere infinite soluzioni: se x è un P-invariante anche kx è un P-invariante Il supporto di un P-invariante x è linsieme dei posti corrispondenti agli elementi non-nulli di x. Analisi basata sulla matrice di incidenza (I) P-invariante a supporto minimo Un P-invariante è a supporto minimo se il suo supporto non contiene quello di nessun altro P-invariante della rete.

43 Proprietà strutturali (I) Sono quelle proprietà che dipendono dalla struttura della rete Rete coperta da P-invarianti Una rete si dice coperta da p-invarianti se ogni posto della rete appartiene al supporto di almeno un p-invariante. N è strutturalmente strettamente conservativa se il vettore 1 è un p-invariante. N è strutturalmente conservativa se esiste un vettore p-invariante x il cui supporto contenga tutti i posti.

44 T-invariante Si dice T-invariante di una rete un vettore colonna y di dimensione n soluzione della seguente equazione Cy=0 ovvero M=M 0 +Cy=M 0 Un T-invariante indica che se fosse possibile fare scattare ogni transizione del supporto di y, tante volte quante indicate da y, la rete tornerebbe alla marcatura iniziale.

45 Insieme potenzialmente raggiungibile di PR(N,M 0 )={M m | y n : M=M 0 +Cy Ovvero linsieme dei vettori M per cui esiste y che soddisfa lequazione di stato Vale: R(N,M 0 ) PR(N,M 0 ) ANALISI MEDIANTE EQUAZIONE DI STATO Linsieme PR(N,M 0 ) può aiutare a verificare la raggiungibilità di una marcatura. Ad esempio se lequazione M=M 0 +Cy non ammette soluzione allora M non è raggiungibile. Insieme di raggiungibilità di R(N,M 0 )={M m | T* : M 0 [ >M Ovvero linsieme delle marcature che possono essere raggiunte dalla marcatura iniziale.

46 Analisi basata sulla matrice di incidenza (I) Sia una PN e sia X= x 1 x 2 …x k la matrice formata dalle colonne dei p-invarianti x i per i=1,…,k. Linsieme X-invariante di è I X (N,M 0 )={M m | X T M=X T M 0 Ovvero linsieme dei vettori M tali che x i T M=x i T M 0 per ogni x i Vale: R(N,M 0 ) PR(N,M 0 ) I X (N,M 0 )

47 Classi di reti di Petri Una PN è detta: Ordinaria se ogni arco ha molteplicità unitaria cioè Pre(p,t)=0 o =1 e Post(p,t)=0 o =1. Pura se per ogni posto p e t vale Pre(p,t)Post(p,t)=0, cioè se la rete non contiene alcun cappio. Ristretta se è pura e ordinaria. Una macchina di stato è una rete ordinaria in cui ogni transizione ha esattamente un arco in ingresso ed un arco in uscita. Un grafo marcato è una rete ordinaria in cui ogni posto ha esattamente un arco in ingresso ed uno in uscita.

48 Le strutture di temporizzazione per estendere le reti di Petri sono molte: i tempi di ritardo possono essere associati a posti, transizioni o archi. Caso più frequente: temporizzazione associata alle transizioni. Scatto in 3 fasi: 1-le marche sono prelevate dal posto di ingresso, 2- trascorre il tempo associato alla transizione, 3-le marche sono depositate nel posto di uscita. Scatto atomico: le marche arrivano nel posto di ingresso, abilitano la transizione e vi rimangono il tempo di ritardo associato alla transizione. Se al termine del ritardo laabilitazione sussiste la transizione scatta. Soluzione semplice dei conflitti. Reti di Petri temporizzate: TPN

49 Transizione immediata: scatta appena è abilitata, ad essa è associato ritardo nullo. Transizione deterministica: ad essa è associato un ritardo deterministico di solito costante. Transizione stocastica: al ritardo è associata una variabile aleatoria con funzione di distribuzione di probabilità nota. Se ha distribuzione esponenziale f( )= e - il tempo medio di ritardo è pari a 1/. Classifica delle transizioni temporizzate

50 Serventi infiniti: ogni transizione è come un servente che può eseguire infinite operazioni in parallelo. Servente singolo: ogni transizione è come un servente che può eseguire una sola operazione alla volta Semantica del servente Servente multiplo: ogni transizione è come un servente che può eseguire k operazioni alla volta

51 Memoria totale: la transizione ricorda di essere stata abilitata in precedenza. Memoria di abilitazione: la transizione ha memoria solo dellattuale abilitazione Memoria della transizione t1 t2 t3 esempio

52 Una transizione t i è abilitata da M j se per ogni p P si ha M j Pre(.,t i ). Il grado di abilitazione a i (j) di ti abilitata da M j è il più grande numero intero k tale che M j kPre(.,t i ). Evoluzione dinamica Detto o i il più piccolo degli orologi associati a t i, esso rappresenta il tempo che deve passare a partire dallistante attuale, prima del prossimo scatto di t i, se t i non viene disabilitata prima che trascorra il tempo o i. Ad ogni transizione t i sono associati, allistante j, a i (j) orologi, ogni orologio viene inizializzato ogni volta che la transizione viene abilitata ai valori indicati dalla temporizzazione.

53 Allistante j la TPN abbia la marcatura M j e per ogni t i siano noti i valori minimi o i degli orologi associati. Determinare o*=min i [o i ] sia t* la transizione corrispondente Il tempo avanza j+1 = j +o* la nuova marcatura è M j+1 =M j +C(.,t*) Gli orologi vengono aggiornati: Se a i (j+1)< a i (j) allora sono scartati gli a i (j)-a i (j+1) orologi con i valori più alti, gli altri sono diminuiti di o* Se a i (j+1)>a i (j) allora a i (j+1)-a i (j) orologi vengono aggiunti a ti, gli altri sono diminuiti di o*. Evoluzione dinamica: serventi infiniti, memoria di abilitazione

54 Grafo Marcato temporizzato (GMT) Un grafo marcato temporizzato è una rete ordinaria in cui ogni posto ha esattamente un arco in ingresso ed uno in uscita. Un grafo marcato temporizzato fortemente connesso (GMTFC) è un GMT con le seguenti proprietà: La rete è fortemente connessa, ovvero esiste un cammino orientato da un qualunque nodo ad ogni altro nodo, quindi ogni posto ed ogni transizione appartengono ad un ciclo orientato. La struttura di temporizzazione se deterministica è costituita da sequenze di ritardi costanti.

55 Analisi delle prestazioni Un modello utilizzato per la determinazione delle prestazioni è il GMT ed il GMTFC. In un GMT il numero di marche in ogni ciclo rimane costante per ogni sequenza di scatto. Tempo di ciclo: Il tempo di ciclo di una transizione C(ti) di una transizione ti di una GMT è definito sulla base del suo k.mo tempo di scatto ik C(t i )=lim k ik /k In una GMT tutte le transizioni appartenenti ad un ciclo j hanno il medesimo tempo di ciclo C, definito come il rapporto tra la somma dei tempi di ritardo delle transizioni che formano j e il numero delle marche che circolano in esso, ossia: C j =somma dei ritardi associati alle transizioni/ somma delle marcature dei posti del ciclo In una GMTFC in condizioni stazionarie tutte le transizioni hanno lo stesso tempo di ciclo dato da C=max C j, Che identifica il massimo fra I tempi di ciclo di tutti I cicli elementari della GMTFC, ovvero tutte le transizioni hanno a regime frequenza di scatto =1/C

56 Main advantage of the Petri net modeling: linear algebraic structure While the state of a DES is non numerical the state of a Petri net is a vector The model of an machine that may fails:

57 Main advantage of the Petri net modeling: linear algebraic structure We can express qualitative specification numerically: the two machines can not work simultaneously M(p 2 )+M(p 5 ) 1

58 Powerful modeling tools: High Level (colored) Petri Nets In standard PN tokens are indistinguishable entities. The semantics of the model does not allow to follow the behavior of an individual token through the PN. High Level PN overcome this limitation by assigning to each individual token an attribute (color). Places, arcs and transitions can have functions and guards depending on the colors.

59 For performance and dependability analysis it is necessary to introduce the duration of the events associated to PN transitions. Hence Petri nets are extended by associating time with the firing of transitions, resulting in timed Petri nets. Deterministic timed transitions are typically represented by black boxes Powerful modeling tools: timed Petri Nets t1t2 2 s

60 A special case of timed Petri nets are stochastic Petri nets where the firing times are considered random variables. A special case of stochastic Petri net (SPN) is where the firing times are exponentially distributed. The marking process is mapped into a continuous time Markov chain with state space isomorphic to the reachability graph of the PN. Stochastic timed transitions are represented by boxes Stochastic Petri Nets (SPN)

61 From PN to CTMC: A Simple Example

62 The Continuous and Hybrid Petri Net Models Hybrid Petri nets are an extension of PN able to model the coexistence of discrete and continuous variables. Main advantages: increasing computational efficiency for simulation, reducing the dimension of the state space, defining optimization problems of polynomial complexity Places, transitions and arcs are partitioned in two groups: discrete places and transitions handing discrete tokens (as in standard PN); continuous places and transitions handling continuous quantities.

63 Hybrid Petri Nets tap

64 Main references Ajmone Marsan, G. Balbo, G. Conte, S. Donatelli, G.Franceschini, Modeling with Generalized Stochastic Petri Nets. J. Wiley & sons, Great Britain, 1996. K. Jensen, Colored Petri nets: basic concepts, analysis methods and practical use. Vol. 1, New York Springer, 1992, Vol. 2, New York Springer, 1995. Balduzzi, F., Giua, A., Menga, G., 2000. Modelling and Control with First Order Hybrid Petri Nets. IEEE Transactions on Robotics and Automation, vol. 4, no. 16, 382-399. H. Alla and R. David, Continuous and hybrid Petri nets, Journal of Circuits, Systems and Computers, vol. 8, no. 1, pp. 159-188, 1998. Silva, M., Recalde, L., 2004. On the Fluidification of Petri Nets: from Discrete to Hybrid and Continuous Models. Annual Reviews in Control, vol. 28, no. 2, 253-266.


Scaricare ppt "Maria Pia FANTI Dipartimento di Elettrotecnica ed Elettronica Modelling by Petri nets Polytechnic of Bari, ITALY."

Presentazioni simili


Annunci Google