Вы находитесь на странице: 1из 40

09/11/2010

Les Rseaux de Petri


(RdP en abrg)
1. Origine et domaines d'application
2. Prsentation informelle
3. La formalisation
Exemple : un systme de 2 quipements interconnects
5. Raffinement et composition
6. Quelques extensions

1. Origine et domaines d'application

09/11/2010

1. RdP : origine et domaines d'application


Origine :
Ides de dpart de Carl Adam Petri (thse en 1962) :
Un ensemble d'automates tats finis qui communiquent
Avoir la fois la reprsentation des automates
Et celle des communications par les mmes primitives
communications asynchrones par change de messages
communication synchrones par rendez-vous, synchronisations, ressources
partages

=> Graphes avec 2 types de nuds places et transitions

1. RdP : origine et domaines d'application


Domaines d'application :
Systmes de production, Autom. Prog. Ind., Grafcet
Evaluation des performances, simulation vnements discrets

Validation de protocoles de communication


Systmes temps rels, systmes distribus, gnie logiciel
Systmes d'information, gestion, interfaces homme-machine
Modles de raisonnement, planification

09/11/2010

2. Prsentation informelle du
formalisme

2. RdP : prsentation informelle


Le formalisme des rseaux de Petri est un outil permettant l'tude de
systmes dynamiques et discrets.
Il s'agit d'une reprsentation mathmatique permettant la modlisation
d'un systme.
L'analyse d'un rseau de Petri peut rvler des caractristiques
importantes du systme concernant sa structure et son comportement
dynamique.
Les rsultats de cette analyse sont utiliss pour valuer le systme et
en permettre la modification et/ou l'amlioration le cas chant.

09/11/2010

2. RdP : prsentation informelle


Dmarche gnrale

2. RdP : prsentation informelle


Concepts de base
Condition
Une condition est un prdicat ou une description logique d'un tat du systme.
Une condition est vraie ou fausse.
Un tat du systme peut tre dcrit comme un ensemble de conditions.

Evnement
Les vnements sont des actions se droulant dans le systme.
Le dclenchement d'un vnement dpend de l'tat du systme.

Dclenchement, prcondition, postcondition


Les conditions ncessaires au dclenchement d'un vnement sont les
prconditions de l'vnement.
Lorsqu'un vnement se produit, certaines de ses pr-conditions peuvent cesser
d'tre vraies alors que d'autres conditions, appeles postconditions de l'vnement
deviennent vraies.

09/11/2010

2. RdP : prsentation informelle


Concepts de base
P

Condition =

Place

Evnement =

Transition

prcondition =

arc Place -> Transition

P
t1

postcondition =

t2

arc Transition -> Place


t
P2

P1

2. RdP : prsentation informelle


Concepts de base
Satisfaction d'une Condition = Jeton dans une Place

P
vrai

P
faux

Remarque : on peut avoir un nombre quelconque non born de jetons dans une
place

09/11/2010

2. RdP : prsentation informelle


Concepts de base
Condition de franchissement d'une transition = satisfaction de toutes les places
prconditions de la transition
P2
P1

P2'
P1'

t1

t1'

non franchissable

franchissable

Effet du franchissement d'une transition = satisfaction de toutes les places


postconditions de la transition

avant franchissement

P1

P2

P1

aprs franchissement

P2

2. RdP : prsentation informelle


Modlisation de systmes avec ressources
Pour certains systmes, il est plus juste de raisonner en termes d'ensemble de ressources,
au sens large, qu'en termes de conditions-vnements.
=> un jeton = une ressource

Le nombre de jetons contenus dans une place reflte le nombre de ressources qu'elle
possde.
Les jetons d'une place n'ont pas d'identit individuelle, autrement dit ils sont
indiscernables.
Ces ressources sont consommes et produites par les vnements du systme.
Les arcs entrants d'une transition peuvent tre valus par un entier quelconque (non nul)
=> valuation = nombre de jeton ncessaires dans la place pour franchir la transition
=> si k est la valuation d'un arc d'une place P vers une transition T, le tir de la transition T retire k
jetons dans la place P

Les arcs sortants d'une transition peuvent tre valus par un entier quelconque (non nul)
=> valuation = nombre de jeton produits dans la place situe aprs la transition
=> si k est la valuation d'un arc d'une transition T vers une place P, le tir de la transition T dpose
k jetons dans la place P

Par dfaut, les arcs sont valus par 1.

09/11/2010

2. RdP : prsentation informelle


Concepts de base
Exemples
3

P1

P2

P1'

t1'

t1

franchissable

non franchissable

2
3

avant franchissement

P2'

3
P1

P2

P1

aprs franchissement

P2

2. RdP : prsentation informelle


Exemple
une raction chimique d'oxydo-rduction

C02
H202

H2C204

H+

2
2

e-

2
2

H20

09/11/2010

2. RdP : prsentation informelle


Schmas particuliers

a
a

indtermisme a ou b
partage de ressource
(exclusion, conflit)

indpendance a||b

squence a;b

2. RdP : prsentation informelle


Schmas particuliers

E
E

E
ackE

synchonisation a=b,
envoisynchrone
dun message E

smaphore,
envoi asynchrone
dun message E

envoi asynchrone
dun message E
avec acquittement

09/11/2010

2. RdP : prsentation informelle


T0

Notions complmentaires
Une transition-puit
puit est une transition
ayant une sortie vide.
Une transition-source
source est une
transition ayant une entre vide.
Une boucle est un circuit constitu
d'une seule place et d'une seule
transition.
Un RdP sans boucle est dit pur

P1
P2

2
T1
P3
P4

T2
2

Exemple :

P5

T0 est une transition-source.


T3 est une transition-puit.
T3

2. RdP : prsentation informelle


Exemple : les 5 philosophes
fourchette
gauche

pense

fourchette
droite

mange

1 philosophe

=> composition par mise en commun des fourchettes


=> fusion des places fourchette droite du philosophe N et fourchette
gauche du philosophe N+1 (modulo 5)

09/11/2010

2. RdP : prsentation informelle


Exemple : les 5 philosophes

Philosophe 0

Philosophe 1

Philosophe 2

Philosophe 3

Philosophe 4

3. La formalisation
3.1. Les bases de la formalisation
3.2. Ltude de la dynamique
3.3. Ltude de proprits structurelles

10

09/11/2010

3. RdP : formalisation
L'un des intrts de ce formalisme, c'est la possibilit de vrifier
formellement des proprits
Ncessite le recours la formalisation (matrice d'incidence, squence de
franchissement, vecteur caractristique, quation d'tat)
Proprits structurelles (structure du rseau) et/ou comportementales
(volution du rseau)

3.1. Formalisation : les bases


Rseau de Petri: R = {P, T, Pre, Post}
P = ensemble de places
T = ensemble de transitions
Pre = PxT N

places prcdentes

Pre(p, t) = nombre de jeton ncessaire dans la place p pour le


franchissement de la transition t

Post = PxT N

places suivantes

Post(p, t) = nombre de jeton produits dans la place p lors du


franchissement de la transition t

=> C = Post - Pre

matrice d'incidence

11

09/11/2010

3.1. Formalisation : les bases


Rseau de Petri: R = {P, T, Pre, Post}
=> Reprsentation matricielle

3.1. Formalisation : les bases


Rseau marqu: N = {R,M}
Le marquage d'un RdP R=(P, T, Pre, Post) est son tat. Formellement, un
marquage est une application
M:PN
donnant pour chaque place le nombre de jetons qu'elle contient. Le marquage
initial est gnralement not M0.

Notation matricielle:
Transitions en colonnes
Places en lignes
Marquage = vecteur colonne

12

09/11/2010

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP
Transition t franchissable
une transition t est franchissable ssi, pour toute place p,
M(p) > Pre(p, t)

Franchissement d'une transition t


Si une transition t est franchissable partir du marquage M, alors le
nouveau marquage de toute place p est
M'(p) = M(p) - Pre(p, t) + Post(p, t)
= M(p) + C(p, t)
avec C = Post - Pre (matrice d'incidence)
on note M t M'

(tir de la transition t partir du marquage M)

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP
Exemple
t1 est franchissable car
2

Pre(., t1) = 0 < M0

aprs le franchissement de t1
M = M0 - Pre(., t1) + Post(., t1)
2

= 3 =

2
0

1
6

0
4

1
0 +
0

5
7

0
3

1
0

1
0
0

2
2
5
5
+
=
3
0
7
10

13

09/11/2010

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP
Exemple
calcul direct avec la matrice d'incidence
M = M0 + C(., t1)
2

= 3 + 7

-1
-3

1
-4

1
0 = 5
10
0

donne (heureusement) le mme rsultat

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP : squence de transitions

T1 T2 T3 T4
est une squence de
transitions
franchissables

14

09/11/2010

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP : squence de transitions
Soit un RdP R=(P, T, Pre, Post) de marquage initial M0
Soit t1 t2 ... tn des transitions de T telles que
M0 t1 M1 t2 M2 tn Mn
alors, t1 t2 ... tn est appele squence de transitions franchissables
(successivement)
De plus
Mn = M + C . VsT
o Vs est le vecteur caractristique de la squence de transitions
s = t1 t2 ... tn
tel que Vs(t) donne le nombre d'occurrences de la transition t dans s
On note
M s Mn

3.2. Formalisation : proprits dynamiques


Equation d'tat

Mf = M + C . VsT

Remarque :
s = s1 . s2
Vs1 = Vs2

=>
=>

Vs = Vs1 + Vs2
M + C . Vs1T = M + C . Vs2T mme si s1s2

15

09/11/2010

3.2. Formalisation : proprits dynamiques


Dynamique (smantique) d'un RdP : squence de transitions
Exemple :

T = {T1, T2, T3, T4}


VT2T3T4T1T3 = (1, 1, 2, 1)

3.2. Formalisation : proprits dynamiques


Remarques importantes :
ATTENTION ! Le vecteur caractristique ne fait que compter le nombre
d'apparition des transitions. Il ne donne pas, comme la squence, l'ordre
ordre dans
lequel celles-ci ont lieu.
T = {T1, T2, T3}

V = (1, 2, 1)

Le vecteur V ci-dessus est le vecteur de comptage de toutes les squences de


franchissement suivantes :
<T1, T2, T3, T2>, <T3, T1, T2, T2>, <T3, T2, T2, T1>,
<T1, T3, T2, T2>, <T1, T2, T2, T3>,

16

09/11/2010

3.2. Formalisation : proprits dynamiques


Remarques importantes :
ATTENTION ! L'quation d'tat permet de calculer le marquage atteint aprs
franchissement d'une squence de transitions. Elle ne permet pas de dire que la
squence est franchissable !!
T1
P1

T2
P2

T3
P3

T4
P4

P5

La squence <T1, T2, T3> est franchissable,


Les squences <T2, T1, T3>, <T3, T2, T1>, <T2, T3, T1> ne le sont pas !
Elles ont pourtant mme vecteur de comptage. L'quation d'tat donnera donc
le mme rsultat pour les quatre.

3.2. Formalisation : proprits dynamiques


Aperu (incomplet et approximatif) des raisonnements faisables sur un RdP
Le rle de l'quation d'tat est de matrialiser, en termes de jetons, l'volution du RdP.
Elle reprsente l'outil qui va permettre de calculer le rsultat du franchissement de
transitions. En tant que tel, elle est ncessaire. Il faut toutefois l'utiliser correctement, en
pas pas.
pas

M0

Eq.
Etat

Pb

M1

Eq.
Etat

Pb

M2

Eq.
Etat

M3

Pb

L'quation d'tat peut signaler un non-franchissement. Une transition est franchissable


s'il y a suffisamment de jetons dans chacune de ses places en entre. La matrice
d'incidence fournit le nombre de jetons produits par le dclenchement de chaque
transition.
L'quation d'tat applique une squence rduite une transition fournit le nombre de
jetons qui restent aprs excution de cette transition.
=> Si ce nombre est ngatif, alors la transition n'est pas franchissable.
(Attention : rciproque fausse)

17

09/11/2010

3.2. Formalisation : proprits dynamiques


Aperu des raisonnements faisables
L'quation d'tat peut galement servir autre chose. Il est possible de calculer
le marquage initial ncessaire pour franchir une squence donne et arriver
un marquage donn. Le travail se fait, dans ce cas-l, l'envers .
M0 = Mf - C . VsT
M0

Eq.
Etat

M1

Pb

Eq.
Etat

M2

Pb

Eq.
Etat

Mf

Pb

P1

Exemple :

P2

Quel marquage initial pour le marquage final


Mf= [2, 5, 1, 4, 0] et la squence <T1, T2, T2>
=> calcul de M2
x
0
2
y
-2
5
M2 = z = 1 - 1
t
0
4
u
0
0

-1
0
-1
-1
2

2
T1
P3

3
5
=> M2 = 2
5
-2

0
1

P4

T2
2

Impossible :
Mf inaccessible
par T2

P5

3.2. Formalisation : proprits dynamiques


Aperu des raisonnements faisables

P1
P2

Autre Exemple :

Quel marquage initial pour le marquage final


Mf= [2, 5, 1, 4, 5] et la squence <T1, T2, T2>

T1
P3
P4

0
2
-2
5
M2 = 1 - 1
0
4
0
5

=> calcul de M2

=> calcul de M1

=> calcul de M0

-1
0
-1
-1
2

3
5
0
= 2
1
5
3

0
3
-2
5
M1 = 2 - 1
0
5
0
3

-1
0
-1
-1
2

T2
2
P5

4
5
0
= 3
1
6
1
0
4
-2
5
M0 = 3 - 1
0
6
0
1

-1
0
-1
-1
2

4
7
1
= 2
0
6
1

18

09/11/2010

3.2. Formalisation : proprits dynamiques


Aperu des raisonnements faisables
L'quation d'tat peut galement dterminer le marquage initial minimal pour
franchir une squence donne, sans se proccuper du marquage final.
M0 + C . VsT > 0

M0

Eq.
Etat

M1

Pb

Eq.
Etat

M2

Pb

Eq.
Etat

Mf > 0

Pb

3.2. Formalisation : proprits dynamiques


Aperu des raisonnements faisables

P1
P2

Exemple :

Quel marquage initial minimal permettant le franchissement


de la squence <T1, T2, T2>
=> calcul des contraintes sur M2
0
x
-2
y
M2 = z + 1
0
t
0
u

-1
0
-1
-1
2

0
0
0
> 0
1
0
0

=>

x
y
z
t
u

1
0
> 1
1
0

=>

x
y
z
t
u

2
0
> 2
2
0

T1
P3
P4

T2
2
P5

=> calcul des contraintes sur M1


0
x
-2
y
M1 = z + 1
0
t
0
u

-1
0
-1
-1
2

1
0
0
> 1
1
1
0

x
y
=> calcul de M0 M0 = z
t
u

2
2
> 1
2
0

19

09/11/2010

3.2. Formalisation : proprits dynamiques


Marquage accessible et graphe de marquage
Marquages accessibles (ou successeurs)
Un marquage M' est un marquage accessible (successeur de M) s'il existe
une squence de transitions s tel que
M s M'
L'ensemble des marquages accessibles depuis M est not A(R,M)

Graphe des marquages accessibles


Le graphe des marquages accessibles, not GA(R,M), est le graphe ayant
comme sommets les marquages de A(R,M) et tel qu'il existe un arc entre
deux sommets M1 et M2 si et seulement si
M1 t M2
o t est une transition du RdP

3.2. Formalisation : proprits dynamiques


Marquage accessible et graphe de marquage
Exemple :

20

09/11/2010

3.2. Formalisation : proprits structurelles


Exemple

Graphe de marquage :

Idle1

Idle2

1 (Idle1
0

d1

d2
Res

Busy1

1 Idle2

f1

Busy2

f1

1 Res)

f2

T=

(d1,

f1,

d2,

f2)

0
(Busy1) 1

P=

Idle1

-1

Busy1

-1

-1

Busy2

-1

Res

-1

-1

Idle2

C=

f2

d1

d2

(Busy2) 1

3.2. Formalisation : proprits dynamiques


Marquage accessible et graphe de marquage
Remarque importante : le graphe des marquage peut tre infini
=> dans ce cas, le RdP est non born
Exemple :

(1) t (2) t (3) t (4) t


t

21

09/11/2010

3.2. Formalisation : proprits dynamiques


Proprits des RdP
Place et RdP k-borns
Une place est dite k-borne pour un marquage initial si sa marque ne
dpasse jamais k (binaire si k=1)
Un RdP est k-born si toutes les places le sont
C'est une proprit dcidable, grce la monotonie

Transition et RdP vivants


Une transition est dite quasi-vivante pour un marquage M s'il existe un
marquage accessible partir de M permettant de la franchir
Une transition est dite vivante si elle est quasi vivante pour tout marquage
accessible partir de M0
Un RdP est dit vivant si toutes ses transitions le sont

Un RdP ne contient pas de blocage s'il peut continuellement voluer


Un RdP est dit rinitialisable si M0 est accessible partir de tout
marquage accessible partir de M0

3.2. Formalisation : proprits dynamiques


Proprits des RdP
Les proprits de k-born, vivacit, blocage sont souvent
difficile tablir, bien que dcidables
Mais, il existe des mthodes d'analyse
portant sur le graphe des marquages (pour les rseaux borns)
portant le graphe de couverture (pour les rseaux non borns)
structurelle indpendamment des marquages initiaux
dterminant les proprits de RdP dans de trs nombreux cas !

=> Arsenal thorique important !!

22

09/11/2010

3.2. Formalisation : proprits structurelles


Ide :
Dterminer les proprits dun RdP partir de sa structure
indpendamment de son marquage

Notion de composante conservative positive :


Soit un RdP R=(P, T, Pre, Post)
Soit Vp un vecteur de NP
Vp est appel composante conservatrice positive ssi
VpT . C = 0
=> Une composante conservatrice positive est un ensemble de place dans
lequel le nombre de jeton est born quelque soit les transitions
franchies

3.2. Formalisation : proprits structurelles


Exemple

T=

Idle1

(d1,

f1,

d2,

f2)

Idle2

d1

d2
Res

Busy1
f1

Busy2

P=

f2

Idle1

-1

Busy1

-1

C=

-1

Busy2

-1

Res

-1

-1

Idle2

Composantes conservatrices positives :


1
1

V1=

(Idle1
+ Busy1)

V2=

(Idle2
+ Busy2)

V3=

(Busy1

0
1
1

+ Busy2
+ Res)

23

09/11/2010

3.2. Formalisation : proprits structurelles


Notion de composante conservative positive :
Si une place appartient une composante conservatrice postive, alors
cette place est k-borne
Si toutes les places dun rseau appartiennent une composante
conservatrice positive, alors le rseau est k-born (rciproque fausse)
Le nombre de jetons circulant dans une composante conservatrice
positive est dtermin par le marquage initial

3.2. Formalisation : proprits structurelles


Exemple
Idle1

Idle2

V1 = (Idle1 + Busy1)
d1
Busy1
f1

d2
Res

V2 = (Idle2 + Busy2)
Busy2
f2

V3 = (Busy1 + Busy2 + Res)

Les trois composantes V1, V2 et V3 couvrent lensemble du rseau


Le rseau est k-born
Le nombre maximal de jeton dans Busy1 est 1 (marquage initial)
Le nombre maximal de jeton dans Busy2 est 1 (marquage initial)
Il ne peut pas y avoir 1 jeton la fois dans Busy1 et Busy1 car
Busy1 + Busy2 < Busy1 + Busy2 + Res = 1 (marquage initial)

24

09/11/2010

Exemple : un systme
de deux
quipements interconnects

RdP : exemple d'un systme interconnect


Description informelle
Bureau
Voisin
Imprimante
Console

=> 2 cas d'utilisation ( la UML)


cas d'utilisation 1
on imprime un texte "Imp1" (imprimante)
on valide l'impression du texte "Val" (console)

cas d'utilisation 2
on entre un texte "Edit" (console)
on imprime le texte "Imp2" (imprimante)

25

09/11/2010

RdP : exemple d'un systme interconnect


=> Diagramme de collaboration la UML
cas d'utilisation 1

(1) D.imp1
(2) D.val

console

imprimante
(4) F.imp1

(3) F.val

RdP : exemple d'un systme interconnect


=> Diagramme de collaboration la UML
cas d'utilisation 2

(1) D.edit
(2) D.imp2

console

imprimante
(3) F.imp2

(4) F.edit

26

09/11/2010

RdP : exemple d'un systme interconnect


=> Diagramme de squence la UML
cas d'utilisation 1

imprimante

console

D.imp1
Imp1

D.val

Val

F.val
F.imp1

Fin.imp

RdP : exemple d'un systme interconnect


=> Diagramme de squence la UML
cas d'utilisation 2

imprimante

console

D.imp2

Imp2

Edit

D.edit

F.imp2
Fin.edit

F.edit

27

09/11/2010

RdP : exemple d'un systme interconnect


=> RdP de l'imprimante et de la console

Idle-imprimante

Imp1
D.val

D.imp2
Imp2
F.imp2

D.edit
Edit
D.imp2

Att.val

Att.imp2

F.val

F.imp2

Fin.imp

Fin.edit

F.imp1

F.edit

D.val
Val
F.val

console

imprimante

D.imp1

Idle-console

RdP : exemple d'un systme interconnect


Idle-imprimante

imprimante

Imp1
D.val

D.imp2
Imp2
F.imp2

D.edit
Edit
D.imp2

Att.val

Att.imp2

F.val

F.imp2

Fin.imp

Fin.edit

F.imp1

F.edit

D.val
Val
F.val

console

D.imp1

Idle-console

=> Communications synchrones


synchronisation des actions D.val , F.val
synchronisation des actions D.imp2 , F.imp2
=> fusion des transitions

28

09/11/2010

RdP : exemple d'un systme interconnect


=> Le RdP global
Idle-console
Idle-imprimante
D.edit

D.imp1

Edit

Imp1
D.imp2

D.val
Att.val

Imp2

Val

Att.imp2

F.imp2

F.val

Fin.edit

Fin.imp

F.edit

F.imp1

Remarque :
les places Att.val
et Att.imp2 sont
inutiles

RdP : exemple d'un systme interconnect


=> Le RdP global
Idle-console
Idle-imprimante
D.edit

D.imp1

Edit

Imp1
D.imp2

D.val
Val

Imp2
F.imp2

F.val

Fin.edit

Fin.imp
F.imp1

F.edit

29

09/11/2010

RdP : exemple d'un systme interconnect


Analyse :
La squence
D.imp1; D.edit;

mne un bloquage mortel


=> ajout d'un oprateur (smaphore) pour empcher les deux demandes
simultanes.

RdP : exemple d'un systme interconnect


=> Le RdP global

oprateur

Idle-console
Idle-imprimante
D.edit

D.imp1

Edit

Imp1
D.imp2

D.val
Val

Imp2
F.imp2

F.val

Fin.edit

Fin.imp
F.imp1

F.edit

=> plus de blocage

30

09/11/2010

RdP : exemple d'un systme interconnect


=> Le RdP global

oprateur

Idle-console
Idle-imprimante
D.edit

D.imp1

Edit

Imp1
D.imp2

D.val
Val

Imp2
F.imp2

F.val

Fin.edit

Fin.imp
F.imp1

F.edit

=> nouveau un blocage possible

RdP : exemple d'un systme interconnect


Commentaires sur l'exemple :
la prsence ou non de blocages mortels peut dpendre
de la structure du rseau de Petri, c'est--dire de celles des automates et de
leurs communications
mais aussi du marquage initial (nombre d'automates identiques)

C'est un problme critique


Prouver l'absence de blocage est un problme difficile

31

09/11/2010

5. Raffinement (top-down) et composition


Ou, comment modliser un systme complexe en
Rseaux de Petri ?
Raffinement
Composition
Exemple

5. Raffinement et composition de RdP


Raffinage :
Principe :
substituer une transition par un bloc "bien form"
=> on introduit des dtails en conservant les "bonnes" proprits

=>

bloc

32

09/11/2010

5. Raffinement et composition de RdP


Raffinement :
Blocs bien forms standards :

squence

do-while

fork-join

if-then-else

5. Raffinement et composition de RdP


Composition asynchrone
Principe : fusion de places

ent1

ent2

p3

p4
p1

p2
d

33

09/11/2010

5. Raffinement et composition de RdP


Composition synchrone
Principe : fusion de transitions

ent2

ent1
te

5. Raffinement et composition de RdP

Exemple : un systme de transport par chariots filoguids


Contraintes :
Un seul chariot par section
Un seul chariot en mouvement par cellule

cellule 2-4

4
1

2
3

34

09/11/2010

5. Raffinement et composition de RdP


Zone de mouvement
(Mvt)

Une section :

Zone d'attente pour entrer dans


la section suivante
(Porte)

e.s.2

Mvt2

a.p.2

Porte2

s.s.2

(par exemple pour la section 2)

Sec.libre2

5. Raffinement et composition de RdP


Une section :
contrainte : un seul chariot en mouvement dans la section 2-4
=> introduction d'une place espace

Espace2

e.s.2

Mvt2

a.p.2

Porte2

s.s.2

Sec.libre2

35

09/11/2010

5. Raffinement et composition de RdP


Une section :
contrainte : un seul chariot en mouvement dans la section 2-4
=> introduction d'une place espace
=> fusion des places Espace des sections 2 et 4
Sec.libre4
e.s.4

Mvt4

a.p.4

Porte4

s.s.4

a.p.2

Porte2

s.s.2

Espace
e.s.2
Mvt2
Sec.libre2

5. Raffinement et composition de RdP


Rseau de sections :
contrainte : un seul chariot par section
=> fusion des transitions s.s.1 et e.s.2, s.s.3 et e.s.4, s.s.4 et e.s.5

Sec.libre4

Sec.libre3

Sec.libre5

Mvt4
Mvt3

Porte4

Porte3

Mvt5

Porte5

Espace
Porte1

Mvt2

Porte2

Mvt1
Sec.libre1

Sec.libre2

36

09/11/2010

6. Quelques extensions
Les rseaux colors
Les arcs inhibiteurs

6. Extensions
Motivations des extensions
Certaines proprits ne peuvent pas tre exprimes l'aide des rseaux
usuels
Ncessit de rduire la taille des modlisations
Besoin d'avoir une information plus prcise sur les jetons transitant
dans le rseau

37

09/11/2010

6. Extensions : RdP colors


Les RdP colors
Les jetons sont typs par des couleurs.
Le nombre de couleurs est fini.
Ces rseaux permettent de reprsenter de manire compacte des
systmes ayant des composantes aux comportements identiques.
=> Diffrentes couleurs de franchissement associes chaque transition
fonctions associes aux arcs
couleur : par exemple un n-uplet
disparition/cration de couleurs par le franchissement de transitions

6. Extensions : RdP colors


Les RdP colors
Exemple

38

09/11/2010

6. Extensions : RdP colors


Les RdP colors
Un rdP color n'est qu'une reprsentation avec un graphisme condens
d'un rdP ordinaire.
=> Les proprits d'un rdP color sont les mmes que celles des rdP
ordinaires,

6. Extensions : arc inhibiteurs


Proprit inexprimable : le test zro
Dans le cas gnral, il est impossible de tester si le contenu d'une place
est vide: autrement dit, il est impossible de dfinir un RdP pour lequel
une transition est tirable si une place donne ne contient pas de jeton.
Intuitivement, le test zero est en contradiction avec le principe de
monotonie (dans les RdP traditionnels)
Dans les RdP traditionnels, la valuation zro quivaut une absence
d'arc...

39

09/11/2010

6. Extensions : arc inhibiteurs


Arc inhibiteur
La transition est tirable si et seulement si la place d'entre est vide.

=> Pouvoir d'expression trs grand


Les RdP arcs inhibiteurs ont la mme puissance de calcul qu'une
machine de Turing, en particulier grce au test "si Pr=0 alors aller en Pei
sinon aller en Pej" qui permet de modliser toute forme de branchement
(boucles, tests).
Une place qui serait place de sortie de toute transition du RdP ne sera
borne que si l'activit est de dure finie.
Le bornage d'un RdP arcs inhibiteurs est donc un problme quivalent
celui de l'arrt d'une machine de Turing, donc indcidable (de mme que
les proprits d'accessibilit et de vivacit).

7. Conclusion
formalisme d'emploi relativement ais, ayant fort peu d'lments de base
formalisme utilis dans des domaines trs diffrents
formalisme ayant un atout indniable : son arsenal thorique
formalisme orient modle - trop limit pour reprsenter finement un
logiciel
=> Exercices en TD n1.

40