Professional Documents
Culture Documents
Discrete Event Systems Petri Nets: Máté Hegyháti
Discrete Event Systems Petri Nets: Máté Hegyháti
hegyhati@dcs.uni-pannon.hu
http://dcs.uni-pannon.hu/hegyhati/oktatas
Contents
Petri net basics Denition Comparison with nite automaton Finite automata and petri nets Analysis of Petri nets Denitions Coverability tree Linear algebraic approach
Denition
A petri net graph is a (P , T , A, w ), where: P is the nite set of places T is the nite set of transitions A (P T ) (T P ) is the set of arcs w : A Z+ is the weight of the arcs Notation:
= |P |
= |T |
Example
89:; ?>=< ?>=< / 89:;
p1 P T A w
= {p1 , p2 }
t1
p2
= {(p1 , t1 ), (t1 , p2 )}
= {t1 }
HIJK / ONML
p1
Notation:
t1
p2
= {x | x is a marking}
Enabled transition
A transition,
pi I (t )
No enabled transitions
89:; ?>=<
2
An enabled transition
2
()*+ //.-,
p1
t1
p2
p1
t1
p2
f (x , t ) =
where
w (t , p) <>
p P
w (p, t )
Example
_ _ _ ?>=< / 89:; _ _ _
_ _ _ ?>=< / 89:; _ _ _
N = (P , T , A, w , E , l , x0 , Xm )
where:
(P , T , A, w ) is a Petri net
x0 E l Xm
is the initial marking/state event set : T E transition labelling function set of marked/accepting states
P T A
:= K :=
:= {((q , , p ), p ) | (q , , p ) } {(q , (q , , p )) | (q , , p ) }
otherwise
Xm
:=
xq | q F xq (p) =
1 0
p = q;
otherwise
Lm (N ) = {an bn | n Z+ }: p1 b p3
89:; ?>=< j *
?>=< 89:; *
a p2 b
o
?>=< 89:; j
?>=< 89:;
a p2 b p4 c
b P3 c p5
Xm = {{(p1 , 0), (p2 , 0), (p3 , 0), (p4 , 0), (p5 , 1)}}
p P is k -bounded, if x
R (x0 )
x (p) k .
x covers x if x
R (x ) :
x (p) x (p)
p P .
Petri net is conservative with respect to R|P | if T x is constant x R (X0 ). If a petri net is conservative with respect to some conservative.
k than it is called
Petri net is persistent if, for any two enabled transitions, the ring of one cannot disable the other.
Liveness
Transition t from a state x is called L0-live (or Dead) if t can never re L1-live there is a reing sequence, such that t can re at least at once. ( Coverability) L2-live t can re at least k times for some given k L3-live there is a reing sequence, such that t can re innitely many times. L4-live t is L1-live for all x R (x )
Reachability tree
Node is terminal if it has no enabled transition (Deadlock). Node is a duplicate if it already appears on the path from the root to it. Node
Coverability tree
represents the innity, + k = x = x0 k Z.
for all new state x do if t T f (x , t ) is undened then mark x terminal else for all x = f (x , t ) do if x dominates some x then for all p x (p ) > x (p ) do
end for end if end for end if end for Coverability tree is always nite.
x (p ) =
x0 + vA x0 l + vAl x0 l