0 2 0 1
P1
2
2
P2
P3
a
b
c
d
| |
3 P
2 P
1 P
1 0 0
0 0 1
0 1 0
d c b a
(
(
(
0
2
0
Places en
entre
d'une
transition
Transitions
en sortie
d'une place
LO19 Gnie logiciel : Rseaux de Petri 11
Formalisme des rseaux de Petri
Post : notation matricielle :
P3
c
d
P1
2
2
P2
a
b
| |
3 P
2 P
1 P
0 1 0 0
0 0 0 1
d c b a
(
(
(
2 0 1 0
P1
2
2
P2
P3
a
b
c
d
| |
3 P
2 P
1 P
0 0 0
2 1 0
0 0 1
d c b a
(
(
(
1
0
0
Places en
sortie
d'une
transition
Transitions
en entre
d'une place
LO19 Gnie logiciel : Rseaux de Petri 12
Formalisme des rseaux de Petri
Le marquage est alors reprsent par un
vecteur colonne :
P1
2
2
P2
P3
a
b
c
d
3 P
2 P
1 P
0
2
0
(
(
(
0 0
2 1
0 0
3 P
2 P
1 P
0
2
0
(
(
(
\
|
(
(
(
=
|
|
|
.
|
\
|
0
2
0
t . e Pr ) t (., e Pr
=
LO19 Gnie logiciel : Rseaux de Petri 17
Marquage aprs franchissement
Marquage M' aprs franchissement :
t . Post t . e Pr M ' M
+ =
) t , p ( Post ) t , p ( e Pr ) p ( M ) p ( ' M : P p + = e
Ou en notation matricielle
Cette proprit qui reste vraie pour les rseaux
impurs donne son intrt la matrice dite
d'incidence : C=Post-Pre
) 0 ' M , t . e Pr M : Comme ( > >
LO19 Gnie logiciel : Rseaux de Petri 18
Marquage aprs franchissement
P1
2
2
P2
P3
a
b
c
d
(
(
(
1 0 0
0 2 0
0 0 1
e Pr
0
1
0
(
(
(
+
(
(
(
=
(
(
(
0
1
1
0
2
0
0
1
1
P1
2
2
P2
P3
a
b
c
d
(
(
(
0 1 0
2 0 1
0 0 0
Post
0
0
1
(
(
(
1 1 0
2 2 - 1
0 0 1
C
0
1 -
1
Transition franchissable si marquage suprieur la colonne
correspondante de Pre. Nouveau marquage obtenu en ajoutant la
colonne correspondante de C.
a
LO19 Gnie logiciel : Rseaux de Petri 19
Rsum pour une transition t
depuis un marquage M
Critre de
franchissement
Marquage aprs
franchissement
t . e Pr M
>
t . C M ' M
+ =
LO19 Gnie logiciel : Rseaux de Petri 20
Paralllisme structurel
Deux transitions t1 et t2 sont dites
structurellement parallles si elles n'ont
aucune place commune en entre :
0 ) 2 t , p ( e Pr ). 1 t , p ( e Pr : P p = e
2
t1 t2
LO19 Gnie logiciel : Rseaux de Petri 21
Paralllisme effectif
Elles sont de plus dites effectivement
parallles pour un marquage donn si ce
marquage permet de les franchir l'une et
l'autre :
2 t . e Pr M
1 t . e Pr M
>
>
2
t1 t2
LO19 Gnie logiciel : Rseaux de Petri 22
Conflit structurel
Deux transitions t1 et t2 sont dites en conflit
structurel si elles ont au moins une place
commune en entre :
0 ) 2 t , p ( e Pr ). 1 t , p ( e Pr : P p = e -
2
t1 t2
LO19 Gnie logiciel : Rseaux de Petri 23
Conflit effectif
Elles sont de plus dites en conflit effectif
pour un marquage donn si le marquage
permet de franchir l'une ou exclusif l'autre :
2 t . e Pr 1 t . e Pr M
2 t . e Pr M
1 t . e Pr M
+ <
>
> 2
t1 t2
Il y a alors choix exclusif entre t1 et t2
LO19 Gnie logiciel : Rseaux de Petri 24
Squences de franchissement
On appelle squence de franchissement une
suite de transitions franchissables partir
d'un marquage donn M0. Le marquage
volue donc au long de la squence, chaque
marquage intermdiaire permettant de
franchir la transition suivante :
Mn ... 2 M 1 M 0 M
tn 2 t 1 t
LO19 Gnie logiciel : Rseaux de Petri 25
Squences de franchissement
On souhaite pour une squence s=t1.t2tn
formuler l'quivalent du critre
ainsi que de la formule
Par rcurrence :
2 t . C 1 M 2 M 1 M
1 t . C 2 t . e Pr 0 M
2 t . e Pr 1 M
+ =
>
>
t Pre. M
>
t C. M M'
+ =
) 2 t 1 t .( C 0 M 2 M
+ + =
, 1 t . C 0 M 1 M 0 M
1 t . e Pr 0 M
+ =
>
LO19 Gnie logiciel : Rseaux de Petri 26
Squences de franchissement :
Equation fondamentale
Marquage aprs franchissement d'une
squence de franchissements :
s C M ' M
+ =
Le vecteur s tant le vecteur caractristique
dont les composantes sont les nombres
d'occurrences des transitions dans la squence.
LO19 Gnie logiciel : Rseaux de Petri 27
Squences de franchissement :
critre de franchissement
Ne peut tre obtenu qu'en retenant le plus
contraignant des critres
) n i 2 (
) 1 i t ... 2 t 1 t .( C i t . e Pr 0 M
1 t . e Pr 0 M
s
+ + + >
>
Pre=
| |
3 P
2 P
1 P
0 1 0
0 0 1
1 0 0
c b a
(
(
(
Post=
(
(
(
1 - 1 0
0 1 - 1
1 1 1 -
C=
LO19 Gnie logiciel : Rseaux de Petri 29
Squences de franchissement :
exemple
a
P1
P2
b
P3
c
(
(
(
=
1 0 0
0 1 0
0 1 1
e Pr
(
(
(
=
1 - 1 0
0 1 - 1
1 1 - 1 -
C
(
(
(
=
0
0
1
a . e Pr
(
(
(
=
0
0
2
a . C b . e Pr
(
(
(
= +
0
0
2
) b a .( C c . e Pr
(
(
(
=
0
0
2
imal min _ Marquage
(
(
(
= +
(
(
(
0
0
1
s C
0
0
2
(
(
(
=
1
1
1
s
0
2
0
(
(
(
0
1
1
(
(
(
1
0
0
c
d
b
a
(
(
(
0
0
2
a
b
LO19 Gnie logiciel : Rseaux de Petri 32
Graphe des marquages
accessibles
Mais aussi infini...
(
(
(
1
1
0
(
(
(
0
0
1
(
(
(
1
0
0
c
P1
P2
P3
a
b
c
a
b
(
(
(
1
2
0
(
(
(
0
1
1
a
b
(
(
(
1
3
0
(
(
(
0
2
1
a
b
c c
(
(
(
0
3
1
c
Et ainsi de
suite...
LO19 Gnie logiciel : Rseaux de Petri 33
Description d'un RdP par une
grammaire
Lettre = place (P1, P2)
Marquage = mot =
(P1P2)
transition = rgle de
substitution
P1
2
2
P2
P3
a
b
c
d
Mot initial
2
2
P
1 2
P P : a
2 1
P P : b
2
2 3
P P : d
3
2
2
P P : c
2
2
P
2 1
P P
3
P
c
d
b
a
2
1
P
a
b
LO19 Gnie logiciel : Rseaux de Petri 34
Proprits des rseaux de Petri
Deux grandes classes :
Proprits relatives l'tat : le nombre de
jetons reste-t-il born ?
Proprits relatives l'activit : tout le
rseau ou une partie du rseau ont ils
toujours la possibilit d'voluer ?
LO19 Gnie logiciel : Rseaux de Petri 35
Place borne, rseau born
Place k-borne : Pour tout marquage
accessible depuis le marquage initial le
nombre de jetons reste toujours infrieur k
Rseau k-born : toutes places k-bornes
Rseaux 1-borns : appels saufs (systmes
vnements/conditions)
Attention : proprits dpendant du
marquage initial. Rseau structurellement
born : born pour tout marquage initial fini
LO19 Gnie logiciel : Rseaux de Petri 36
Transition quasi-vivante, vivante
Transition t quasi-vivante (quasi-vivacit) :
on peut la franchir au moins une fois depuis
le marquage initial.
Transition vivante (vivacit) : tout stade
d'volution du rseau on peut la franchir.
Quasi-vivante et
non vivante
vivantes
|
.
|
\
|
-
st
0 M / s
LO19 Gnie logiciel : Rseaux de Petri 37
Rseau quasi-vivant, rseau
vivant
Un rseau est quasi-vivant si toutes ses
transitions le sont. Les transitions non
quasi-vivantes d'un rseau marqu sont
inutiles pour le marquage de dpart.
Un rseau est vivant si toutes ses transitions
le sont.
LO19 Gnie logiciel : Rseaux de Petri 38
Monotonie
Si une squence est franchissable pour un
marquage donn, elle le demeure pour tout
marquage strictement suprieur.
La diffrence entre les marquages de dpart
se trouve conserve l'arrive (on ne touche
pas aux jetons en question).
LO19 Gnie logiciel : Rseaux de Petri 39
Quasi-vivacit, vivacit,
monotonie
Une transition quasi-vivante pour un
marquage le reste pour un marquage
strictement suprieur.
Cela n'est pas vrai pour la vivacit :
2
3
P1
P2
a
b
c
3
1
P
2 1
P P
a
b
c
c
4
1
P
2
2
1
P P
a
b
c
2
2
P
a
Toutes
transitions
vivantes
Seul c vivant
|
.
|
\
|
> =>
st st
M ' M M
LO19 Gnie logiciel : Rseaux de Petri 40
Squences rptitives
Une squence est dite rptitive si pour tout
marquage pour lequel elle est franchissable,
elle est franchissable un nombre arbitraire
de fois.
Proprit : s est rptitive <=> le marquage
aprs franchissement de s inclut au sens
large dans le marquage avant
franchissement de s. Autrement dit : 0 s C >
1
1
0
(
(
(
0
0
1
(
(
(
1
0
0
P1
P2
P3
a
b
c
c a
Si on rencontre un sur-marquage d'un marquage dj
rencontr sur le chemin, le rseau n'est pas born : on
arrte le parcours de ce chemin.
LO19 Gnie logiciel : Rseaux de Petri 46
Rseaux non borns : graphe de
couverture : algorithme
On remplace le nombre de jetons dans les
places ayant augment par le symbole
signifiant "un nombre arbitrairement grand"
(
(
(
e
1
0
(
(
(
0
0
1
(
(
(
1
0
0
c a
e
P1
P2
P3
a
b
c
(
(
(
e
0
1
a
c
b
Et l'on examine les volutions
possibles depuis ces sommets
particuliers...
LO19 Gnie logiciel : Rseaux de Petri 47
Graphe de couverture
L'algorithme prcdent aboutit toujours un
graphe born mais on perd de l'information
(
(
(
1
1
0
(
(
(
0
0
1
(
(
(
1
0
0
c
a
b
(
(
(
0
1
1
c
(
(
(
e
1
0
(
(
(
0
0
1
(
(
(
1
0
0
c a
(
(
(
e
0
1
a
c
b
Etc.
LO19 Gnie logiciel : Rseaux de Petri 48
Graphe de couverture pertes
d'information
Marquages accessibles, Squences
franchissables ?
x
y
z
2
a
x
a
e e
z y x
a
Accessibilit de xyz ?
x
b
a
) 0 ( ) (e
a
a
b
abb franchissable ?
LO19 Gnie logiciel : Rseaux de Petri 49
Marquage puits, blocage
Un marquage puits est un marquage d'o
aucun transition n'est franchissable
Un rseau de Petri comporte un blocage si
l'un de ses marquages accessibles est un
marquage puits. Le rseau n'a alors plus
aucune possibilit d'voluer.
LO19 Gnie logiciel : Rseaux de Petri 50
Blocage et vivacit
Un rseau avec blocage n'a l'vidence
aucune transition vivante. L'inverse est par
contre faux :
x
y
c
z
d
a b
Aucune transition n'est vivante (b rend tout tirage
ultrieur de a et c impossible, idem pour a avec b et d)
mais le rseau n'est jamais bloqu.
LO19 Gnie logiciel : Rseaux de Petri 51
Accs concurrents aux
ressources, interblocages
L'accs concurrent
des ressources par
plusieurs processus
peut conduire des
situations
d'interblocage :
Processus 1
R1
R2
Processus 2
Processus 1 s'alloue R1, puis
processus 2 s'alloue R2 =>
marquage puits