modelling by petri nets - roma tre university

Post on 05-Nov-2021

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Maria Pia FANTI

Dipartimento di Elettrotecnica ed Elettronica

Modelling by Petri netsModelling by Petri nets

Polytechnic of Bari, ITALY

OutlineOutline

What are Petri Nets?

Definitions and basic concepts

Modelling with Petri Nets: main structures

Timed Petri nets

Conclusions

Petri NetsPetri 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.

Petri NetsPetri 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.

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.

DefinitionsDefinitionsA 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).

DefinitionsDefinitionsA 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 transitionsPost: P×T→N is the post incidence matrix, that specifies the arcs directed from transitions to places

Example of Petri netExample of Petri net

Incidence MatrixIncidence Matrix

Tokens are dots (or integers) associated with places; a place containing tokens indicates that the corresponding condition holdsMarking 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 DefinitionsPN Definitions

M0 is the initial marking

A net system <PN, M0 > is a dynamical system

PN DefinitionsPN Definitions

When input places of a transition have the required number of tokens, the transition is enabled.

An enabled transition may fire (event happens) removingone or more tokens from each input place and depositing one or more tokens in each of its output place.

PN dynamicsPN dynamics

2

p1p1

p1

p2

p2

t1

t1

3

3

2

SequenceSequence

Modelling by Petri nets: main structuresModelling by Petri nets: main structures

Concurrency (or Parallelism)Concurrency (or Parallelism)

Choice (non determinism)Choice (non determinism)

Modelling by Petri nets: main structuresModelling by Petri nets: main structures

SynchronizationSynchronization

Modelling by Petri nets: main structuresModelling by Petri nets: main structures

Limited ResourcesLimited Resources

Modelling by Petri nets: main structuresModelling by Petri nets: main structures

For performance and dependability analysis it is necessary to introduce the duration of the events associated with PN transitions.

The structures to extend the PN by time are different.

Delay times can be associated with places, transitions or arcs.

Typically time is associated with timed transitions.

Powerful Powerful modelingmodeling tools: Timed Petri Nets (TPN)tools: Timed Petri Nets (TPN)

Firing in 3 phases: 1- tokens are removed from the input places, 2- the delay time associated with the transition elapses, 3- tokens are deposed in the output place.

Firing in one phase: tokens arrive in the input place, enable the transition and stay in the place for the delay time associated with the transition. If at the end of the delay time the transition is enabled, then the transition fires.

In this case conflicts are solved.

Powerful modeling tools: Timed Petri Nets (TPN)

Immediate transition : transition fires as soon as it is enabled, the associated delay time is equal to zero.

Deterministic timed transitions: the delay associated with the transition is deterministic and usually constant (black box).

Stochastic timed transition : a stochastic variable is associated to the delay θ with a known distribution function (white box)

If θ has exponential distribution f(θ)=λe-λθ, then the average delay time is 1/λ.

Classification of timed transitions

Infinite server: each transition represents a server that can perform infinite parallel operations.

Single server: each transition represents a server that can perform only one operation at a time.

Server semantic

θθ

3θθ

Multiple server: each transition represents a server that can perform k operations at a time.

Total memory: transition remembers that it has been previously enabled.

Abilitation memory: transition remembers just the actual enabling

Transition memory

θ2

θ1

θ3

θ2<θ1<2θ2

t1

t2 t3

example

Una transizione ti è abilitata da Mj se per ogni p∈P si ha Mj≥Pre(.,ti).

Il grado di abilitazione ai(j) di ti abilitata da Mj è il piùgrande numero intero k tale che Mj ≥kPre(.,ti).

Evoluzione dinamica

Detto oi il più piccolo degli orologi associati a ti, essorappresenta il tempo che deve passare a partiredall’istante attuale, prima del prossimo scatto di ti, se tinon viene disabilitata prima che trascorra il tempo oi.

Ad ogni transizione ti sono associati, all’istante τj, ai(j) orologi, ogni orologio viene inizializzato ogni volta che la transizione viene abilitata, ai valori indicati dallatemporizzazione.

All’istante τj la TPN abbia la marcatura Mj e per ogni ti sianonoti i valori minimi oi degli orologi associati.

•Determinare o*=mini[oi] sia t* la transizione corrispondente

•Il tempo avanza τj+1=τj+o*

•la nuova marcatura è Mj+1=Mj+C(.,t*)

•Gli orologi vengono aggiornati:

•Se ai(j+1)< ai(j) allora sono scartati gli ai(j)-ai(j+1) orologicon i valori più alti, gli altri sono diminuiti di o*

•Se ai(j+1)>ai(j) allora ai(j+1)-ai(j) orologi vengono aggiuntia ti, gli altri sono diminuiti di o*.

Evoluzione dinamica: serventi infiniti, memoria di abilitazione

Maria Pia FANTI

Dipartimento di Elettrotecnica ed Elettronica

Modelling by Petri netsModelling by Petri nets

Polytechnic of Bari, ITALY

top related