Vous êtes sur la page 1sur 54

Cours de rseau de Petri e

Yann Mor`re e Avril 2002

Table des mati`res e


Introduction 1 Rseaux de Petri e 2 Introduction au RdP 2.1 Principe de modlisation . . . . . . . . . . . . . . e 2.2 Rseaux de conditions et dv`nements . . . . . . e e e 2.2.1 Un exemple . . . . . . . . . . . . . . . . . 2.2.2 Dnitions . . . . . . . . . . . . . . . . . . e 2.2.3 R`gles dactivation . . . . . . . . . . . . . e 2.2.4 Conit doccurence dv`nements . . . . . e e 2.2.5 Conditions complmentaires . . . . . . . . e 2.2.6 Reprsentation de la dynamique dun RdP e 2.3 Rseaux de places et transistions . . . . . . . . . e 2.3.1 Un exemple . . . . . . . . . . . . . . . . . 2.3.2 Dnition et r`gles dactivation . . . . . . e e 2.3.3 Places complmentaires . . . . . . . . . . . e 2.4 Rseaux colors ` prdicats . . . . . . . . . . . . e e a e 2.4.1 Un exemple de rseau color . . . . . . . . e e 2.4.2 Dnition et r`gles dactivation . . . . . . e e 2.4.3 Quelques extensions des rseaux colors . . e e 2.4.4 Un exemple de rseau ` prdicats . . . . . e a e 2.4.5 Dnitions et r`gles dactivation . . . . . . e e 2.4.6 les rseaux de Petri gnraliss . . . . . . . e e e e 2.4.7 Rseau de Petri FIFO . . . . . . . . . . . e 2.4.8 Rseau de Petri ` arcs inhibiteurs . . . . . e a 2.4.9 Rseaux de Petri ` priorits . . . . . . . . e a e 2.4.10 Conclusion . . . . . . . . . . . . . . . . . . 3 Analyse de Rseau de Petri e 3.1 Dnition de base . . . . . . . . . . . . e 3.1.1 Graphe associ ` un RdP . . . ea 3.1.2 Dynamique dun RdP . . . . . 3.1.3 Grammaire associe ` un RdP . e a 3.1.4 Matrice dincidence dun RdP . 3.1.5 Franchissement dune transition 3.1.6 Conit et paralllisme . . . . . e 3.1.6.1 Conit structurel . . . 3.1.6.2 Conit eectif . . . . . 3.1.6.3 Paralllisme structurel e 3.1.6.4 Paralllisme eectif . . e i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 5 5 7 7 9 9 9 10 11 13 13 14 15 15 15 17 17 18 19 19 19 20 20 21 23 23 24 27 28 28 31 31 31 31 31 32

3.2 3.3 3.4

3.1.7 Squence de franchissement . . . . . e Arbres et graphes de couverture . . . . . . . Invariants . . . . . . . . . . . . . . . . . . . 3.3.1 p-invariants . . . . . . . . . . . . . . Proprits qualitatives des RdP . . . . . . . ee 3.4.1 Les proprits comportementales . . ee 3.4.1.1 Probl`mes datteignabilits e e 3.4.1.2 Dormitude . . . . . . . . . 3.4.1.3 Vivacit et blocage . . . . . e

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

32 34 37 37 41 42 42 43 44

ii

Table des gures


2.1 3.1 Situation de conit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple de rseau de Petri e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 26

iii

Liste des tableaux

1 / 46

Introduction
Rseau de Petri e
Carl Adam Petri est un mathmaticien allemand qui a dni un outil mathmatique tr`s e e e e gnral permettant de dcrire des relations existant entre des conditions et des v`nements, de e e e e e modliser le comportement de syst`mes dynamiques ` v`nements discrets. e e ae e dbut des travaux 1960-1962 : ont donn lieu ` de nombreuses recherches. e e a 1972-1973, utilisation de cet outil pour la description dautomatismes logiques, ce qui a dbouch sur le Grafcet. Cet outil permet lanalyse qualitative. e e Il existe dirents types de rseaux de Petri : temporiss, interprts, stochastiques, colors, e e e ee e continus et hybrides.

Grafcet
En 1975, le groupe Syst`mes logiques de LAFCET (Association franaise pour le cyberne c e tique conomique et technique) dcide de crer une commision de normalisation de la reprsene e e e tation du cahier des charges dun automatisme logique du fait de la complexit future de ces e automatismes. Loutil de reprsentation retenu sinspire des rseaux de Petri et propose une e e interprtation unique des entres/sorties du syst`me : il sagit du Grafcet. Largement enseign e e e e dans les li`res techniques, il deviendra une norme internationale en 1987. e

3 / 46

Chapitre 1 Rseaux de Petri e


Ces rseaux prsentent des caractristiques intressantes telles que la modlisation et la e e e e e visualisation de comportements parall`les, de la synchronisation et partage de ressources. De e plus leurs aspects thoriques ont t largement tudis et les rsultats thoriques les concernant e ee e e e e sont tr`s abondant. On notera par exemple les ouvrages collectifs suivants : e G.W. BRAMS  RdP : thorie et pratique  Masson 83 e Proth et Xie  Gestion et conception des syst`mes de production  Masson 95 e Cest un outil de modlisation utilis gnralement en phase prliminaire de conception de e e e e e syst`me pour leur spcication fonctionnelle, modlisation et valuation. e e e e Les principaux utilisateurs de ces rseaux sont les informaticiens et les automaticiens. Cee pendant cest un outil assez gnral pour modliser des phnom`nes tr`s varis. Il permet e e e e e e e notamment : la modlisation des syst`mes informatiques, e e lvaluation des performances des syst`mes discrets, des interfaces homme-machine, e e la commande des ateliers de fabrication, la conception de syst`mes temps rel e e la modlisation des protocoles de communication, e la modlisation des chaines de production (de fabrication), e ... en fait, tout syst`me dans lequel circule objets et information. e Les atouts des RdP : ils permettent de dcrire de mani`re prcise mais non formelle la structure dun syst`me, e e e e ils orent un support graphique de conception, ils permettent de dcrire un syst`me tape par tape, en dcomposant en lments plus e e e e e ee simples les lments constitutifs initiaux du syst`me, ee e ils permettent de dcrire ` laide dun mme support de base, ` la fois la structure et la e a e a dynamique dun syst`me, e ils permettent de passer dune description graphique dun syst`me ` une description e a formelle permettant lanalyse mathmatique du syst`me (cohrence). e e e

5 / 46

Chapitre 2 Introduction au RdP


2.1 Principe de modlisation e

Nous allons partir dun exemple simple de syst`me ` modliser : une biblioth`que. e a e e Au niveau le plus haut on distingue : les utilisateurs de la biblioth`que (composants actifs de la biblioth`que), e e les tag`res de la biblioth`ques (composants passifs). e e e
'&#"    % $ !      5431)'%##!   ( !2 0(& $ "   pihg ` e c 1G)f'#d#b a `X Y %##!   $ "     H F D A G @EBC@(9 W U T Q V P4RSP8I s #8Hu# 8 t s xx su t )1yywvs r4q 867#0 )2 1 0(& 2 54'3 )' HFG#@ 9B A @86 B ED7C 97

Sur ce schma, on modlise un acc`s direct des utilisateurs aux livres. e e e

Les `ches reprsentent les ot dobjets ou dinformation entre les composants. Il est bien e e sur possible de compliquer les choses en intgrant davantage de donnes. e e

76 @ 876 3A935

421 ) 30(

6 / 46
uF)P1vF#r sy x wu t s BG ED7C 7 14F@B 9 A 9@86

Chapitre 2 : Introduction au RdP

Principe 1 : Les composants actifs et passifs du syst`me doivent tre bien distingus, un e e e composant passif peut contenir/stocker des objets ou de linformation. Un composant actif peut transporter des objets ou de linformation. Principe 2 : Les arcs entre composants passifs et actifs ne doivent pas reprsenter une come posante relle du syst`me mais une relation abstraite entre composants. e e Principe 3 : Un arc ne doit jamais relier deux composants du mme type. e Si ces principes ne sont pas suivis, on aboutit ` terme ` des probl`mes de modlisation. a a e e Exemple : Syst`me de communication reliant 2 syst`mes informatiques O1 et O2 . e e

o l j 1n#m ji@k i

 

 

54!1)'#$#!   ( 3 2 0(& % "   qp ig `f e d c ` Y 1h)'##b a X 5( 3 2 0(& $ "   4!1)'%##!   rq ph ag f e d a ` 1i)'##c b Y

() '$%  $!!  & #"   

W IT R Q I V U4SPH

w'v 4SqPp u qt s r

WXV 4SIPH U IT R Q

X~ 4SyPx } y| { z

#FP8F# 1#)F)eF# d g g fd #FP8F# F)P1wF#s v t y xv u t 14F7@B 9 A 9@86 BG ED C 7 e1d#)F)fF# h h ged

` Yann MORERE

2.2 Rseaux de conditions et dv`nements e e e

7 / 46

Principe 4 : La mme structure de rseaux reprsentant larchitecture du syst`me modlis e e e e e e devra pouvoir tre modlise pour dcrire sa dynamique. e e e e Comment ? On placera des marques reprsentant des objets ou de linformation dans les compoe sants passifs, On dcrira par des r`gles strictes comment les composants actifs peuvent faire transiter e e des objets de composants passifs en composants passsifs. Principe 5 : On obtient une description plus dtaille dun syst`me e e e soit en remplaant un composant du syst`me par un sous rseau, c e e soit en ajoutant un nouveau composant au syst`me. e

2.2
2.2.1

Rseaux de conditions et dv`nements e e e


Un exemple

Considrons un syst`me assez gnral de production/consommation. Dans ce syst`me abse e e e e trait, on va considrer que des objets peuvent tre : e e 1. produits, 2. transmis, 3. reus, c 4. consomms. e On distingueras 4 types dv`nements que lon reprsentera par des barres. e e e
Cours de Rseaux de Petri e

) 0(

6 5

3 42

"& "%!$"  '  # !    

%' % #   ! )(& $"!

7 Q5 I 7 H F EC A9 85 75 GE I%RPC FGDB@64

10

2 31

8 / 46
DQIEFD&C@A9 PG H G BD B

Chapitre 2 : Introduction au RdP

De plus, on considrera que loccurence de ces v`nements est conditionne ; on reprsentera e e e e e des conditions ` laide de cercles. a Loccurence des divers v`nements est conditionne par exemple par le fait : e e e que le canal soit occup ou non, e quun metteur soit prt ou non. e e Sur cet exemple on distinguera deux types de conditions, relativement ` un v`nement donn : a e e e certaines de ces conditions sont en aval de lv`nement considr, e e ee exemple : la condition  canal occup  est une condition aval relativement ` lv`nement e a e e  transmettre . certaines conditions sont en amont de lv`nement condidr : e e ee exemple : la condition  metteur prt  est en amont de lv`nement  transmettre . e e e e Dans ce cadre, une condition sera toujours satisfaite ou non satisfaite.
% 43( 1)0'&! % 5 $ )2 $% ( " ! " " $ $ # " !     

Un v`nement peut se produire si et seulement si : e e 1. toutes ses conditions amonts sont satisfaites, 2. aucune de ses conditions avales nest remplie.

On considrera quapr`s loccurence dun v`nement : e e e e 1. toutes ses conditions amonts ne sont plus satisfaites,
` Yann MORERE

!7C)7)q

5 A97 6 1 3 3 2 1 0 B @8'50 $4 !!)

v u yxvu t ps r p ) &$#!wC))qi

QIF!Q!I X )$QQ!IR WVUSTS

  

h g fee c b` a` dQ!d$$IY

%#  ( %  " "   $&' $# !!

&75$0 61886 4 321 (        )' %&$"#!

 

2.2 Rseaux de conditions et dv`nements e e e 2. toutes ses conditions avales sont maintenant satisfaites.

9 / 46

Remarque 2.2.1. lindterministe de la dynamique du syst`me reprsente, par exemple, lorsque e e e seules les conditions  canal occup  ,  rcepteur prt , et  producteur activ  sont satise e e e faites, deux v`nements peuvent se produire  recevoir  et  produire . e e

2.2.2

Dnitions e

Un RdP de conditions et dv`nements est constitus : e e e . de conditions reprsentes par des cercles, e e . dv`nements, reprsents par des barres, e e e e darcs reliant des conditions ` des v`nements, a e e . darcs reliant des v`nements ` des conditions, e e a . de marques , indiquant si une condition est remplie , ou non Dans ce cadre une condition C est toujours une condition amont (avale) ` lv`nement E si on a un arc a e e reliant C (E) ` E (C), a ,( ). une condition est toujours satisfaite ou non. Un rseau est marqu si et seulement si les e e ; le marquage initial dun RdP est conditions satisfaites sont reprsentes comme suit e e consitu de lensemble de ses conditions et des marques quelles peuvent contenir. e

2.2.3

R`gles dactivation e

Un v`nement est ralisable si et seulement si toutes ses conditions amonts sont remplies e e e et aucune de ses conditions avales. Apr`s occurence dun v`nement, toutes ses conditions avales et amonts sont respectivee e e ment remplies et non remplies.

2.2.4

Conit doccurence dv`nements e e

Une des caractristiques importante des rseaux de conditions et dv`nements rside dans e e e e e leur caract`re non dterministe en cas de situation de conit. e e Exemple 2.2.1. Soit une syst`me compos de deux processus P1 et P2 en comptition pour e e e accder ` une unit de stockage. e a e
iS'ilRPHg lj l k ji h ~ }%Hx~ u | ~ |{y xwv S} Rz9y HHdu t r9p dm os q o n 3 32 '% f e 3 32 d '% 3 32 '%#!    4 )1 3$ 32 )0 ( &$" '%#! FQGFQQI GF S'RPH#E!D
Cours de Rseaux de Petri e

C B@9!6!5 A 87 a `9XW V!U!T V Y

r q%Hxr v us p y w t r igh fec Sq pR9g HHdb

Fig. 2.1 Situation de conit

10 / 46

Chapitre 2 : Introduction au RdP

Lorsque les conditions  P1 en attente  et  P2 en attente  et  clef disponible  sont remplies, ` la fois les v`nements  P1 prend la clef  et  P2 prend la clef  sont ralisables. a e e e Par contre, si lun des v`nements est ralis, lautre devient non ralisable. On dit de ces e e e e e v`nements quil sont en situation de conit. e e Une condition ncessaire ` lexistence dune situation de conit entre deux v`nements est e a e e quil poss`dent au moins une condition avale en commun. Mais ce nest pas susant. e

2.2.5

Conditions complmentaires e
QQ$qi&75 ih gefe d abE7YTQV c ` `W XW bbsT7pqim&75j kt s pr q o n lk segg rp h fe $7$Qsbqig&75d H TTQQ$H USRIPI  T7    

Sur cet exemple la ralisation de lv`nement  mettre  est conditionne par la condition e e e e e  prt ` mettre  et en aval par les conditions  canal occup  et prt ` produire. e ae e e a Les conditions  canal occup  ou  canal disponible  sont dites complmentaires, de mme e e e que les conditions  prt ` produire  et  non prt ` produire . Apr`s ajout de ces conditions, e a e a e il devient inutile de vrier si les conditions avales de lv`nement  mettre  sont remplis ou e e e e non pour savoir sil est ralisable. e Dnition 2.2.1. Soit une condition (C) dun RdP donn. (C ) est une condition complmene e e taire de C si et seulement si : si E est un v`nement en aval de C (respectivement en amont de C), alors E est un e e v`nement en amont de C (respectivement en aval), e e C est initialement remplie si et seulement si C ne lest pas.

2 1 0 ( " $" )$ ' &$! %#" 

$77&DEC DGFF

B u y x vu $u )$qiw&75t

A 9 64 $4 @8753

` Yann MORERE

2.2 Rseaux de conditions et dv`nements e e e

11 / 46

Si C et C sont deux conditions complmentaires elles ne seront jamais remplies simultane e ment. Lajout de conditions complmentaires ` une RdP ne modie pas son comportement. e a Dnition 2.2.2. On dira quil y a point de tengance au niveau dun v`nement E dun RdP e e e si et seulement si : toutes les conditions amonts de E sont remplies, il existe au moins une condition avale de E qui soit remplie.

Si un Rdp est initialement sans point de tengance et quil lui est ajout toutes les conditions e complmentaires possibles, alors loccurence du point de tengance devient impossible. e R`gle : Si toutes les conditions amonts sont remplies et aucune condition avale nest remplie e alors lv`nement est ralisable. e e e toutes les conditions amonts remplies ( aucune condition avale remplie) sil ny a pas de point de tengance possible.

2.2.6

Reprsentation de la dynamique dun RdP e


QQ$qi&75 seggs p h fe $7$Qbrqig&75d

Deux v`nement sont ralisables  produire  et  recevoir , ils ne sont pas en situation de e e e conit et peuvent se raliser indpendemment lun de lautre. e e Il est mme a priori possible que les deux v`nement se ralisent simultanment (ce nest e e e e e pas mesurable exprimentalement). e Si on le voulait on pourrait dailleurs modier le RdP pour prciser que les deux v`nements e e e en question doivent se raliser lun apr`s lautre. e e Apr`s modication du rseau, les v`nement  produire  et  recevoir  ne peuvent plus se e e e e raliser en mme temps. Lv`nement E doit ncessairement tre ralis entre les deux. e e e e e e e e
Cours de Rseaux de Petri e

ca ` WY XW bE`7TQV

i h heg fed bbT7qi&75

H TTQQ$H USRIPI

  

     
2$" )$ ' 1 0 ( " %&$! #"  $G77&DEC D FF B $u )$qxiw&75t u y vu $4 6753 A @98 4

12 / 46

Chapitre 2 : Introduction au RdP

Soit un RdP sans possibilits doccurence de points de tengance ; il est possible de reprsenter e e sa dynamique par des graphes acycliques dnits comme suit : e 1. pour chaque condition C initialement remplie, on dessine un cercle tiquet par C, e e 2. tant quun v`nement E est ralisable : e e e (a) choisir un v`nement E et le raliser, e e e (b) dessiner une bo tiquete par E, te e e (c) si C est une condition amont de E, relier tout cercle tiquet par C et dou ne part e e aucune `che ` la nouvelle bo tiquete par E, e a te e e (d) si C est en avale de E, dessiner un nouveau cercle tiquet par C, et on relie la e e nouvelle bo E ` ce nouveau cercle. te a

` Yann MORERE

2.3 Rseaux de places et transistions e

13 / 46

2.3
2.3.1

Rseaux de places et transistions e


Un exemple

K : la condition pourra contenir au plus 10 objets. Lors dune occurence dun v`nement : e e on dcrmente de 1 le nombre de marques dans chacune des conditions amonts, e e on incrmente de 1, le nombre de marques dans chacune des conditions avales. e Avec ce type dextension, on ne parlera plus : de conditions, mais de places, dv`nements, mais de transitions et par consquent on parlera de rseau de places et e e e e de transitions. Rsaux de de conditions et dv`nements Rseaux de places et de transitions : e e e e 1. on peut placer plusieurs marques dans une mme condition, e 2. on va pouvoir quantier le nombre dobjets produits, transports lors de loccurence dv`e e e nement. Soit un syst`me informatique o` 4 processus sont en comptition pour accder ` une mme e u e e a e unit de stockage. Un des processus dsire raliser des acc`s en criture, les 3 autres en lecture. e e e e e Une lecture et une criture ne pourront avoir lieu simultanment, plusieurs lectures pourront e e par contre se produire simultanment. e
Cours de Rseaux de Petri e

eTba`EVTC f D 5d c IW Q C 5 S Y XW U C B DS 7 QI G G BD C B@ 8 75 FE35RPHFE3A964

E B A ("DC @    "2 7  $  $  29((6 !"!811%6    32  $    54 !10) ('  "     &$%#! 


$#"  &%!       301)' 2 (

14 / 46
d 6 65 0(%#        7 2 6' 645 23 )0'(%#! 1 &$ "

Chapitre 2 : Introduction au RdP

2.3.2

Dnition et r`gles dactivation e e


), ), ),

Un rseau de places et de transitions est compos : e e de places reprsentes par des cercles ( e e de transitions reprsentes par des barres ( e e darcs reliant des places ` des transitions ( a

), darcs reliant des transitions ` des places ( a dtiquettes de la forme  K = x  indiquant la capacit maximum dune place de donne. e e e (si K nest pas dni, alors la capacit est suppose innie), e e e de poids (entiers naturels) valuant certains arcs (un arc non valu explicitement est e implicitement valu par 1), e de marques ( ) situes ` lintrieur de certaines places. e a e Lensemble des places dun rseau et des marques quelles contiennent constitue ce que lon e appelle son marquage. Attention : initialement, une place ne peut contenir plus de marques que sa capacit maxie mum. Dans un tel rseau : e P est une place dentre de la transition t si et seulement si une arc reliant P ` t, e a P est une place de sortie de t si et seulement si un arc de t ` P , a une transition t est franchissable, activable ou tirable si et seulement si : pour toute place dentre P de t, le nombre de marques dans P soit suprieur ou gal e e e au poids W valuant larc de P ` t, a pour toute place de sortie P de t, le nombre de marques dans P augment du poids e de larc de t ` P soit infrieur ` la capacit maximum de P . a e a e Si une transition t franchissable ou tirable est franchie ou tire : e le nombre de marques dans toute place dentre P de t est diminue du poids valuant e e larc de P ` t, a le nombre de marques dans toute place P de sortie de t, est augment du poids valuant e larc de t ` P . a Remarque 2.3.1. un rseau de conditions et dv`nements est un rseau de places et transitions e e e e o` tous les arcs sont valus par 1 et o` toutes les places sont de capacits maximales gales ` 1. u e u e e a
` Yann MORERE

(  Y U TB

~ ~ ~  } eE0~ eWU0~TR ~ig| B g

EUe e

q np 6k 65 no m lkj f 0(hige

{ z 6u x65 xy w u s v0(tigr

Ib cb X V IS P SSQ I H (edS 6a ` YWU0ITRP %#G F ECB##8 D A@ 9 s hBi ##f rqp h g (  Y xy u U TB wx v t

2.4 Rseaux colors ` prdicats e e a e

15 / 46

De mme que pour des v`nements, nous disons que deux transitions sont en situation de e e e conit si elles sont ` un moment donn, toutes les deux franchissables, et quapr`s le franchisa e e sement dune des deux, lautre nest plus franchissable.

2.3.3

Places complmentaires e

Pour un rseau de places et transitions, un point de tangence existe au niveau dune trane sition t si et seulement si : pour toute place dentre P de t, le nombre de marque dans P est suprieur au poids de e e larc reliant P ` t, a une place de sortie P de t dont le nombre de marques augmente du poids de larc e reliant t ` P , est suprieur ` sa capacit. a e a e

Soit une place P dun RdP donn, P est une place complmentaire de P si et seulement e e si : 1. pour tout arc reliant une transition t ` P est value par W , un arc de P ` t valu par a e a e W, 2. pour tout arc reliant P ` une transition t et value par W , un arc de t ` P valu par a e a e W, 3. P et P ont le mme capacit K(P ) = K(P ), e e 4. si M (P ) est le nombre de marques dans P , alors le nombre de marques M (P ) dans P est tel que M (P ) = K(P ) M (P ) = K(P ) M (P ). Ladjonction de places complmentaires ne modie pas la dynamique du rseau. e e Si un rseau est initialement sans point de tangence et que lui sont adjoints toutes les places e complmentaires possibles, alors loccurence de point de tangence devient impossible. e Quand on a ajout ` un rseau initialement sans point de tangence toutes les places comea e plmentaires possibles, alors on peut utiliser la r`gle de franchissabilit suivante : e e e  Une transition t est franchissable si et seulement si, pour toute place dentre P de t, le e nombre de marques quelle contient est suprieur ou gal au poids de larc reliant P ` t  e e a

2.4
2.4.1

Rseaux colors ` prdicats e e a e


Un exemple de rseau color e e

Soit un march de biens comprenant un vendeur A et deux acheteurs B et C. e


Cours de Rseaux de Petri e

(&$#!  ' % "  

16 / 46

Chapitre 2 : Introduction au RdP

` Yann MORERE

G C HEFDB #   $"!     7 4 9 5 6 @ A 8 2 0 3 1 ) ( & % '

2 0( 0 7  ' 5 42 #8%6(#3 " 1 0( $ $ " ! #2#)'&&%#

   

s wv  x vy w $#"x rvu v rq u4t4ss$20p

 d $#"  44$

R 0  4 hh   E B 87 #D7 C$A 9@6 64543$2)0( 7 31

y x | #w ~$q }@w { zyxw vtrp u sq

'   & % !  $#"    

o m g o i hn$l kdji4he gf

f ` i b ihg$e c `X dbaYW

T H U#S V T Q HG RPI0F

2.4 Rseaux colors ` prdicats e e a e

17 / 46

2.4.2

Dnition et r`gles dactivation e e

Un rseau color est constitu : e e e de places, transitions et arcs, comme les rseaux de places et transitions, e de marques individuelles dierentiables les unes des autres, par leur couleur par exemple, dou le nom de rseau color, e e dun marquage initial indiquant pour chaque place le type de marques quelle comporte, dtiquette sur les arcs faisant rfrence ` des types de marques donnes. e ee a e Dans un rseau de ce type, on dira quune transition t est franchissable ou tirable : e 1. pour toute place dentre P de t, une marque de type indiqu sur larc reliant P ` t (si e e a places de sortie ` capacit nie), a e 2. si une transistion t est tirable et tire : e (a) pour toute place dentre P de t on supprime dans P une marque de type indiqu e e sur larc reliant P ` t. a (b) pour toute place de sortie P de t, on ajoute dans P une marque de type indiqu sur e larc reliant t ` P . a

2.4.3

Quelques extensions des rseaux colors e e

Reprenons notre syst`me de producteur/consommateur, 3 types dobjets pouvant maintee nant tre produits. e
U ihf1c1eXUbaY1XVT g d c ` WU XqX1ywebua1Xrp x tt x v t sq

Des marques peuvent appara ou dispara lors de certaines conditions (occurence). tre tre Plusieurs objets peuvent transiter simultanment sur un arc. e
Cours de Rseaux de Petri e

 


Q P S R F G ! 

 

0 ( & 1)'$%# D B @ E@CA9 7 85642 3 


"  

 

18 / 46

Chapitre 2 : Introduction au RdP

2.4.4

Un exemple de rseau ` prdicats e a e

Si le march comprend N V vendeurs et N A acheteurs, ce mode de reprsentation ncessite e e e N V + N A + N A N V transitions (4 + 5 + 4 5 = 29).

March du logement o` des individus peuvent louer des appartements ` des agences ou ` e u a a des particuliers.

E A9 64 F0D"CB &@"8753

'" E!(C0! A@(8%6 )2 64" 1% 0'(%&$ )D %9B ) 9 7 5 3 2 ) # " !

1 % 20)("' &#$"! 

) ' 0 ( We c dr qfSiW g p Yh  ae db S`XVT fW c aYW U

  

%&$ # 2 Q SG ERQ PC 8 5 @ I 2 G E A@ C A H2 FBDB@ 84 576 31 9 542

  
y x w


u t

  !      

" s

` Yann MORERE

2.4 Rseaux colors ` prdicats e e a e

19 / 46

2.4.5

Dnitions et r`gles dactivation e e

Un rseau ` prdicats est constitu : e a e e de places, de transitions, et arcs tout comme les rseaux colors, e e de variables (notes le plus souvent par des lettres minuscules) tiquetant les arcs du e e rseau. e Dans un tel rseau, une opration de substitution est eectue au niveau dun transition t si et e e e seulement si toutes les variables tiquetant les arcs en entre et en sortie de t sont remplaces e e e par des constantes.

2.4.6

les rseaux de Petri gnraliss e e e e

Un rseau de Petri gnralis est un RdP dans lequel des poids (nombres entiers strictement e e e e positifs) sont associs aux arcs. e Tous les arcs dont le poids nest pas explicitement spci, ont un poids de 1. Lorsquun e e arc reliant une place P ` une transition t poss`de un poids p, cela signie que la transition t a e ne sera valide que si la place P contient au moins p marques. Lors du franchissement de cette e transition, p marques sont retires de la place P . e Lorsquun arc reliant une transition t ` une place P poss`de un poids p, cela signie que a e lors du franchissement de t, p marques seront ajoutes ` la place P . e a Proprit 2.4.1. Tout rseau de Petri gnralis peut tre transform en RdP ordinaire. e e e e e e e e Malheureusement ce type de transformation bien que possible engendre souvent une grande complexit. e

2.4.7

Rseau de Petri FIFO e

Dans un rseau de Petri FIFO (First In, First Out, premier entr, premier sorti), les marques e e sont direncies de telle mani`re que lon puisse modliser dirents messages et les r`gles de e e e e e e franchissement sont modies pour modliser le mcanisme FIFO. e e e Chaque place du rseau reprsente une le FIFO et le marquage de la place reprsente le e e e contenu de cette le. Formellement ce marquage est une lettre faisant partie dun alphabet choisi. Par exemple le marquage prendra ses valeurs dans A = {, , , }. Exemple : soit le RdP FIFO suivant avant et apr`s franchissement de t. e

Ce type de mod`le convient particuli`rement ` la modlisation et ` lanalyse des processus e e a e a squentiels communiquant par des canaux FIFO. e Proprit 2.4.2. Dans le cas gnral, un rseau FIFO ne peut pas tre transform en RdP e e e e e e e ordinaire.
Cours de Rseaux de Petri e

(' &

A6@676 3 898985 2

0 1 4 `HXUV"TS"Q HIH9DB Y R W FR RQ P G FEC 

   $"#!"   

20 / 46

Chapitre 2 : Introduction au RdP

2.4.8

Rseau de Petri ` arcs inhibiteurs e a

Un arc inhibiteur est un arc orient qui par dune place P pour aboutir ` une transition t. e a Son extrmit est marque par un petit cercle. Larc inhibiteur entre la place P et la transition e e e t signie que la transition t nest valide que si la place P ne contient aucune marque. Le e franchissement consiste ` retirer une marque dans chaque place dentre de t ` lexception de a e a P , et ` ajouter une marque dans chaque place de sortie de t. On utilise aussi les expressions a  test ` zro  et  RdP tendus . a e e
8 7 3 2 1 0

Proprit 2.4.3. Dans le cas gnral, un RdP ` arc inhibiteurs ne peut pas tre transform e e e e a e e en RdP ordinaire.

2.4.9

Rseaux de Petri ` priorits e a e

Un tel rseau est utilis lorsquon veut imposer un choix entre plusieurs transitions valides. e e e Il est compos dun rseau de Petri et dune relation dordre partiel sur les transistion du rseau. e e e Par exemple on obtient un RdP ` priorit si lon consid`re dans le RdP suivant que la transition a e e T6 est prioritaire ` la transition T3 . Ceci signie que si lon atteint un marquage tel que ces a deux transitions soient valides, on doit dabord franchir T6 . e

Proprit 2.4.4. Un RdP ` priorits ne peut pas tre transform en un RdP ordinaire. e e a e e e
` Yann MORERE

 

% &

 

54

( & $ !     )'%"#" 

231

0 )

 

( '

! "

$ "#

2.4 Rseaux colors ` prdicats e e a e

21 / 46

2.4.10

Conclusion

Un rseau de Petri gnralis utilisera conjointement les concepts introduits pour les rseaux e e e e e de conditions et dv`nements, de places et transitions, colors ou ` prdicats : par exemple on e e e a e pourra avoir des arcs tiquets par des expressions de la formes 2A + x + f (y) ou (f (y), w + a). e e

Pour les RdP gnraliss on pourra placer des contraintes au niveau des transitions. e e e

Cours de Rseaux de Petri e

%&$

( '"$%#"  & ! 

( )

'

# ! "    

 

 

23 / 46

Chapitre 3 Analyse de Rseau de Petri e


3.1 Dnition de base e

Dans cette partie, nous nous interresserons uniquement aux rseaux de places et transitions. e Dnition 3.1.1. Un RdP est un quadruplet P, T, P r, P ost o` : e e u P est un ensemble ni de places (m = |P | ; le cardinal de lensemble), T est un ensemble ni et disjoint de P , de transitions, P r est une application de P T dans N dite dincidence avant, e P ost est une application de P T dans N dite dincidence arri`re. e

Dnition 3.1.2. Un rseau marqu est un couple R; M o` : e e e u R est un RdP, M est une application de P dans N. Plus prcisment M (p) sera gale au nombre de e e e marques dans une place p P , Dans ce cadre M pourra tre reprsent par un vecteur de dimension m = |P |, P r et P ost e e e e par des matrices de m = |P | lignes et n = |T | colonnes. P r (, t) et P ost (, t) reprsenteront les colonnes des matrices P r et P ost relatives ` la e e e a transition t. P r (p, ) et P ost (p, ) reprsenteront les lignes des matrices P r et P ost relatives ` la e e e a transition p P . On utilise galement la notation : e C = P ost P r e et C est en gnral appele matrice dincidence du rseau de Petri. e e e e Exemple 3.1.1. P = {1, 2, 3, 4, 5}, T = {a, b, c, d, e}

0#'&$"  ) ( % # !

     

24 / 46 1 2 3 P r = e 4 5 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 et P ost = 0 0 0 1 0 0 0 0 1 1 a b c d e

Chapitre 3 : Analyse de Rseau de Petri e

1 2 3 4 5

0 0 0 1 0 1 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 a b c d e

1 2 M= 3 4 5

1 0 0 , et M (4) = 0 marque dans la place 4. 0 0

Ces matrices, ensembles et vecteurs dnissent un RdP R1 = P, T ; P r, P ost et un RdP e e marqu N1 = R1 ; M . e

3.1.1

Graphe associ ` un RdP ea

Un RdP peut se prsenter par un graphe bipartie (cest un graphe dont les sommets se e rpartissent en deux ensembles disjoints - ici P et T et o` aucun arc ne relie deux sommets du e u mme ensembles). e Dnition 3.1.3. Le graphe G = P, T ; T, V bipartie associ au RdP R = P, T ; P r, P ost e e e est dni comme suit : e (p P ) (T (p) = {t T /P r (p, T ) > 0}) e (t T ) (T (p) = {p T /P ost (p, T ) > 0 }) (p, t P T ) (V (p, t) = P r (p, t) et V (t, p) = P ost (p, t)) e o` T permet dobtenir les successeurs dune place ou dun transition, et V les poids des arcs u entre les places et transitions.

T 1 (p) = ensemble des prdcesseurs de p = {t T /P ost (p, t) > 0} T 1 (t) = {p T /P r (p, t) > 0} e
` Yann MORERE

2% ) '%# ! 1 0( &&$"

     

3.1 Dnition de base e

25 / 46

Dnition 3.1.4. Les entres dun transition t sont les plasces de T 1 (t) = t ; les sorties e e dune transition t sont les places T = t . Entres dune place p T 1 (p) = p e Sorties dune place de p T 1 (p) = p Exemple 3.1.2. R1 = P, T ; P r, P ost e G1 = P, T ; T , V T (p) = {t T /P r (p, t) > 0} e T (1) = {a} T (2) = {b} T (3) = {c} T (4) = {d} T (5) = {d, e} T (t) = {t T /P ost (p, t) > 0} T (a) = {2, 3} T (b) = {4} T (c) = {5} T (d) = {5} T (e) = {3}

N1 = R1 ; M avec M =

1 0 0 0 0

Considrons le RdP suivant : e


Cours de Rseaux de Petri e

26 / 46

Chapitre 3 : Analyse de Rseau de Petri e

Fig. 3.1 Exemple de rseau de Petri e

Il est dni par les expressions matricielles suivantes : e P = {p1 , p2 , p3 }, T = {a, b, c, d}, a b c d p1 p2 p3

0 1 0 0 P r = e 1 0 3 0 0 0 0 1 a b c d

1 0 0 0 P ost = 0 1 0 3 0 0 1 0

p1 p2 p3 a b c d

p1 p2 p3 et le marquage initial M =

0 1 1 0 On a alors C = P ost P r = e 1 1 3 3 0 0 1 1 0 3 0 p1 p2 p3

 

 
` Yann MORERE

3.1 Dnition de base e

27 / 46

3.1.2

Dynamique dun RdP

Pour rappel, si X et Y sont deux vecteurs ` indices dans I et que X (i) et Y (i) dsignent a e les valeurs des composantes dindice i I. X Y si et seulement si (i I) (X (i) Y (i)) Dnition 3.1.5. Une transition t est franchissable (dans un rseau dont les places sont de e e capacits innies) si et seulement si : (p P ) (M (P ) P r (p, t)) avec M (P ) le nombre de e e places dans P et P r (p, t) le poids de larc reliant p ` t. e a Ou encore M P r (, t). e Cette ingalit est appele la prcondition de franchissement de transition t. e e e e Si t est franchissable ` partir de M , on notera : M (t ou encore M (cest une relation a de Nm T avec m le nombre de places). De plus, si t est franchissable pour M et est franchie, on obtient un nouveau marquage M dni par : e (p P ) (M (p) = M (p) P r (p, t) + P ost (p, t)) e ou M = M P r (, p) + P ost (, t) e Si t est franchissable ` partir de M ou pour M , et que son franchissement conduit au a marquage M , on le notera : M (t M (cest une relation de Nm T Nm ). Si t est franchissable, M P r (, t), donc M P r (, t) et M P ost (, t). e e Post condition de franchissement, pour quun marquage M puisse rsulter du franchissement e dun transition t. Attention : cette condition est ncessaire mais pas susante (elle nimplique pas que t soit e franchissable). Exemple 3.1.3. M0 = M0 (a M0 (a M0 (b M1 (b M1 (c ? oui M1 ? oui ? non M2 ? oui M3 ? oui
t

1 0 0 0 1 0 1 0 0 , M1 = 1 , M 2 = 1 , M3 = 0 0 1 0 0 0 0 0 1

0 Dans le cadre de lexemple de la gure 3.1 et pour le marquage initial M = 3 les 0


Cours de Rseaux de Petri e

28 / 46 transistions a et c sont franchissables car : 0 P r (, a) = 1 e 0 et on a donc :

Chapitre 3 : Analyse de Rseau de Petri e

0 P r (, c) = 3 e 0

M > P r (, a) et M > P r (, c) e e Dnition 3.1.6. Deux transitions t1 et t2 sont dites en conit structurel si et seulement si e elles ont au moins une place dentre en commun, c-`-d : e a

t1 t2 = 0

si et seulement si (p P ) (P r (p, t1 ) P r (p, t2 ) = 0) e e De plus si elles sont en conit eectif, pour un marquage M si et seulement si : M (t1 et M (t2 et (p P ) (M (P ) < P r (p, t1 ) + P r (p, t2 )) e e

3.1.3

Grammaire associe ` un RdP e a

On va tout dabord condidrer que P dnit un vocabulaire ou alphabet (par exemple e e compos des symboles x et y). On va considrer lapplication suivante : e e : Nm p avec Nm lensemble des marquages possibles du rseau de m places. e A tout marquage M , associe un mot (M ) de P comportant autant de fois le symbole associ ` une place p P quil y a de marques dans p P . ea M= x y 5 (M ) = xxxxxy = x5 y 1

Une transition t sera franchissable pour M si et seulement si le mot (M ) contient le sous-mot (P r (, t)). e Si t est franchissable pour M , et que sont franchissement donne M , alors on passera du mot (M ) au mot (M ) en remplaant le sous-mot (P r (, t)) par le sous-mot (P ost (, t)). c e On va ainsi considrer pour toute transition t la r`gle de rcriture suivante : e e ee t: (P r (, t)) (P ost (, t)) . e

Dnition 3.1.7. La grammaire P, Q associe ` un rseau P, T ; P r, P ost est donc dnie e e a e e e par : son vocabulaire P , lensemble Q des r`gles de rcriture : e ee ti : pour toute transition ti . (P r (, ti )) (P ost (, ti )) e

3.1.4

Matrice dincidence dun RdP

Dnition 3.1.8. La matrice dincidence dun RdP R = P, T ; P r, P ost sera la matrice e e associe ` lapplication : e a C : P P Z avec C (p, t) = P ost (, t) P r (p, t). e
` Yann MORERE

3.1 Dnition de base e Exemple 3.1.4. 1 2 3 P r = e 4 5

29 / 46

1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 , P ost = 0 0 0 1 1 0 0 0 0 1 a b c d e 1 2 3 4 5

0 0 0 1 0 1 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 a b c d e

C= 1 1 1 0 0 0

0 1 0 0 0 1 1 1 0 1 0 0 1

M (t M (p P ) (M (p) = M (p) + C (p, t)).

Dnition 3.1.9. Un RdP est pur si et seulement si e ( (p, t)) (P r (p, t) P ost (p, t) = 0) e Cest un rseau pour lequel il ny a pas de boucles lmentaires. Aucune transition nayant le e ee mme en entre et en sortie. e e

Pour un rseau pur de matrice dincidence C, P r (p, t) = max (0, C (p, t)). e e De plus tout rseau peut tre transform en un rseau pur de dynamique quivalente. e e e e e
Cours de Rseaux de Petri e

30 / 46

Chapitre 3 : Analyse de Rseau de Petri e

Avec un tel schma, le franchissement de t1 pourrait sintercaler entre ceux de t2 et t2 , ce e qui modie la dynamique du rseau sous-jacent. e on redcompose t1 en t1 et t1 e M (t si et seulement si M P r (, t) e M (t M M = M + P ost (, t) P r (, t) = M + C (, t) e Rseau quelconque e Pour un rseau pur : e M (t M si et seulement si M = M + C (, t) 0 Exemple 3.1.5. montrons que ce nest pas vrai dans le cas gnral. e e

5 63420! () (&$"#! 1 ' ' %   



 

  

$#

&%

" !



 

` Yann MORERE

3.1 Dnition de base e Exemple 3.1.6. (1) = (3) (2) M M C (, t) 0

31 / 46

3.1.5

Franchissement dune transition

Si t est franchissable pour le marquage M , le franchissement (tir, ring) de t donne le nouveau marquage M tel que : p P M (p) = M (p) P r (p, t) + P ost (p, t) e On utilise aussi les notations : M = M P r (, t) + P ost (, t) e M (t M M M Par exemple avec lexemple de la gure 3.1, apr`s le franchissement de a ` partir du marquage e a initial M , on obtient le marquage M suivant : 1 0 0 2 = 3 1 0 0 0 1 + 0 0
t

3.1.6
3.1.6.1

Conit et paralllisme e
Conit structurel

Deux transitions t1 et t2 sont en conit structurel si et seulement si elles ont au moins une place dentre en commun : e p P r (p, t1 ) P r (p, t2 ) = 0 e e 3.1.6.2 Conit eectif

Deux transitions sont en conit eectif pour un marquage M si et seulement si t1 et t2 sont en conit structurel et que : M P r (p, t1 ) e M P r (p, t2 ) e 3.1.6.3 Paralllisme structurel e

Deux transitions t1 et t2 sont parall`les strcturellement si : e (P r (p, t1 ))T (P r (p, t2 )) = 0 e e Elles nont donc aucune place dentre commune (le produit scalaire de leurs vecteurs P r est e e nul).
Cours de Rseaux de Petri e

32 / 46 3.1.6.4 Paralllisme eectif e

Chapitre 3 : Analyse de Rseau de Petri e

Deux transitions t1 et t2 sont parall`les pour un marquage donn M si et seulement si elles e e sont parall`les structurellement et : e M P r (p, t1 ) e M P r (p, t2 ) e Ainsi dans le rseau de Petri de la gure 3.1, les transitions a et c sont en conit structurel e puisque P r (p2 , a) P r (p2 , c) = 3 e e par contre, les transitions b et d sont structurellement parall`les. En eet : e 0 1 e P r (, b) = 0 et P r (, d) = 0 e 1 0 Pour le marquage M initial, les transitions a et c sont en conit eectif. Si maintenant on consid`re le marquage : e 1 M = 0 1 alors les transitions b et d sont eectivement parall`les (elles peuvent tre franchies indpene e e damment lune de lautre).

3.1.7

Squence de franchissement e

Si M (t1 M1 et que M1 (t2 M2 , alors M (t1 t2 M2 et on dira que s = t1 t2 est une squence e de franchissement pour M . Dnition 3.1.10. Une squence de transition s T est franchissable pour M et donne le e e marquage M si et seulement si : s = M = M avec qui dsigne la squence vide (aucune transition), e e s = s t avec s T et t T et (M ) (M (s M ) et M (t M . Dans ce cadre, nous utiliserons les notations suivantes : M (s pour dire que s est une squence de franchissement pour M , e M (s M pour dire que M est le marquage rsultant du franchissement de s. e Dnition 3.1.11. Nous noterons s limage commutative dun squence de transistions s. Cest e e e le vecteur ` incides dans T tel que s (t) est le nombre doccurences de t dans s. s est appele a aussi vecteur caractristique de s. e
` Yann MORERE

3.1 Dnition de base e T = {t1 , t2 , t3 } s = t1 t1 t2 t1 t3 t1 t2 t3 t3 t3 T st = (4t1 , 2t2 , 4t3 ) Equation fondamentale des RdP. M (s M avec s T M = M + C s avec C matrice dincidence.

33 / 46

Attention : M = M + C s nimplique pas que s soit une squence de franchissement pour e M. Exemple 3.1.7.

p1 C= p2 p3

1 1 1 1 1 1 t1 t2

s = t1 t2 st = (1t1 , 1t2 )

1 1

1 1 1 1 0 0 + 1 1 0 = 0 M = 1 0 1 1 1

M = M + C (, t) 0 et le rseau est pur t est franchissable e Dnition 3.1.12. Lensemble des squences de franchissement dun rseau marqu R, M e e e e sera not L (R, M ) ; il constitue un langage dni par : L (R, M ) = {s T /M (s)} e e

Dnition 3.1.13. Lensemble des marquages atteignables dun rseau marqu R, M sera e e e m not A (R, M ) = {M N /(s)T (M (s M ) } o` m = |P |. e u
Cours de Rseaux de Petri e



34 / 46

Chapitre 3 : Analyse de Rseau de Petri e

3.2

Arbres et graphes de couverture

Nous allons chercher ` reprsenter A (R, M ). a e

1 1 1 t C = 1 1 1 , M0 = (2, 1, 0) 1 1 0
t

Arbre des marquages atteignables

sa racine est le marquage initial du rseau. e M0 = (2, 1, 0), M0 + C (, t) 0


` Yann MORERE

 

3.2 Arbres et graphes de couverture

35 / 46

Pour viter que larbre puisse se developper indniement, on proc`de comme suit (propos e e e e par Karp en 1989) :

1. quun marquage M dj` rencontr soit marqu par  old  ; un tel marquage sera une ea e e feuille de larbre de couverture, 2. que si un nouveau marquage M M sur le chemin menant de la racine de larbre ` a M , alors que toutes les places p de M telles que M (p) > M (p) soient marqus par e un symbole , signiant linni. Ce symbole restera inchang dans tous les developpee ment ultrieurs de larbre ; de plus la r`gle prcdente restera valide pour des marquages e e e e contenant symbole, 3. que si aucune condition nest tirable ` partir dun marquage M , que ce marquage soit a tiquet par  dead-end  (cul de sac = voie sans issue), e e 4. que tous les marquages M non tiquets par  old  et possdant au moins un descendant e e e soient marqus par  new  e

Exemple 3.2.1.
Cours de Rseaux de Petri e

33 2

33

33

4 1 )

1 (( (( 0 '((

%% $

%%

%%

&

" 

# !

T S

BB A

BB

BB

9 66 66 8 566

@ 7

            V U QQ P QQ QQ R H EE EE G DEE I F

36 / 46

Chapitre 3 : Analyse de Rseau de Petri e

Dnition 3.2.1. Soit N et N = N {}, les oprations +, , et les relations < et e / e peuvent tre tendues ` N comme suit : e e a (n N) (n < n n = ) (n N) (n + = + n = , n = ) n nest pas dni. e Dnition 3.2.2. Soit un rseau de Petri marqu N = R; M0 avec R = P, T ; P r, P ost . e e e e Son arborescence de couverture AC (N ) est un couple S, X o` : u 1. S est lensemble de ses sommets, ils sont tiquets par des lments de Nm si |P | = m, e e ee 2. X est lensemble de ses arcs ; ils sont tiquets par des transistions E T . e e AC (N ) se construit selon le procd suivant : e e 1. sa racine r est marque par M0 , e 2. un sommet s tiquet par Q Nm na pas de successeurs si : e e soit il nexiste pas de transitions franchissables ` partir de Q. a soit il existe un sommet dj` tiquet par Q sur le chemin allant de r ` s. eae e a 3. si s ne vrie aucune des deux conclusions exprimes en 2, alors pour toute transisiton t e e franchissable ` partir de Q a un nouveau sommet s est construit est cest un ls de s. larc (s, s ) est tiquet par t. e e s sera tiquet par Q dni comme suit : e e e sil existe sur le chemin menant de r ` s un sommet s marqu par Q et tel a e que Q Q + C (, t), alors pour toute place p de P si Q (p) Q (p) + C (p, t) alors Q (p) = sinon Q (p) = Q (p) + C (p, t) sinon pour toute place p de P Q (p) = Q (p) + C (p, t).
` Yann MORERE

!vt

g$"c f e f e d

q

A 5@

'!

'

2 1 0!1 ( 0 )

X V W V U T Y X W V W V U b "!a`$"T

 | ~ } '$|

'% & q y!vstr w x w u '!  { 5z 9'8 q

   ' # $"!    PH S R P Q I y'x$v v w q pqh i q 'ntm s r p p o 76 j!k ih l k j ' 4 53 G F D D C !E B '$ '! '!  u 5t q d $"!  gf qe

3.3 Invariants Thor`me 3.2.1. (Karp) Toute arborescence de couverture est nie. e e

37 / 46

Dnition 3.2.3. Soit un arborescence de couverture A (N ) et % une relation telle que e ( (s, s )) (s%s si et seulement si Q = Q ). Nous noterons |s| la classe dquivalence dun sommet s , cest ` dire lensemble des sommets e a s tels que s%s . Le graphe de couverture G |N | du rseau marqu N = R, M0 est le couple e e S , X S , lensemble de ses sommets, est lensemble quotient S/% ; tout sommet de S sera tiquet par Q si les sommets de la classe dquivalence ` laquelle il est associ sont e e e a e tiquets par Q. e e X est un ensemble darcs dni comme suit : e il existe un arc tiquet par t entre les sommets de S associs aux classes dquivalences e e e e |s| et |s | si et seulement si il existait un arc tiquet par t entre s et s de S. e e

3.3

Invariants

ou semi-ots ou encore semi-rythmes

3.3.1

p-invariants

Dnition 3.3.1. Soit un rseau de Petri R = R, T ; P r, P ost avec |P | = m et X Nm , X e e e est un p-invariant si et seulement si : X t C = 0 et X = 0

Cours de Rseaux de Petri e

     

8d&d

f 8e p ai ay 8d&d 9 7 5 6 5 4 @83 F E D C B @8CA 8q r

 

` aY x aw % " # " &$! ag h a v 8u

20' 1 ) ) (

R@8!G Q I P I H

X@8S W U V U T

c db 8d&d t ds

38 / 46

Chapitre 3 : Analyse de Rseau de Petri e

p1 p2 C= p3 p4 1 0 1 0 2 1 0 1 0 1 1 0 0 1 0 2 t1 t2 t3 t4 x + 2x = 0 1 2 x + x + x = 0 2 3 4 x1 x3 = 0 x2 2x4 = 0

x1 x 2 t , X C = 0 ,X= x 3 x4

x =0 1 x =0 2 x =0 3 x4 = 0

pas de p-invariant pour le rseau R2 . e


` Yann MORERE



 

 

6 4 0 '% 75231) (&$

 

" #!

3.3 Invariants

39 / 46

p1

1 1 x1 x x x =0 1 p2 1 1 t 2 3 ,X= , X C = 0 C= x2 x + x + x = 0 p3 1 1 1 2 3 x3 t1 t2 x1 x2 + x3 = 1 1 est un p-invariant (il y en a une innit !). e 0 Thor`me 3.3.1. Si X est un p-invariant dun rseau R et N = R; M0 un rseau marqu, e e e e e alors X t M = X t M0 pour tout M A (R, M0 ). Dmonstration. M = M0 + C s e X t M = X t M0 + X t C s
=0

Proprit 3.3.1. e e 1. Si un RdP poss`de un p-invariant alors une combinaison linaire des nombres de marques e e dans ses places est constante. 2. Si un RdP poss`de un p-invariant dont toutes les composantes sont strictement positives e alors il est born. e 3. Si un RdP poss`de un p-invariant dont toutes les composantes sont gales ` 1, alors le e e a nombre de marques dans ce rseau est constant. e 2 e e Remarque 3.3.1. X = 1 est un de ces p-invariants. Soit le rseau marqu N3 = R3 ; M0 1
Cours de Rseaux de Petri e

" #!  

40 / 46

Chapitre 3 : Analyse de Rseau de Petri e

2 M (p1 ) 3 , M = M (p ) avec M0 = 2 1 M (p3 )

, 2M (p1 ) + M (p2 ) + M (p3 ) = 2 2 + 3 + 1 = 8

Dnition 3.3.2. Le support dun p-invariant X, not X , est lensemble des places du rseau e e e correspondant aux composants dirents de 0 de X. e On parle galement de composante conservative, cest un sous ensemble I P , tel quil e existe un p-invariant X du rseau considr avec X = I. Il est ` noter que deux p-invariants e ee a peuvent tre associs ` la mme composante conservative. e e a e Exemple 3.3.1. Soit le rseau R3 e

2 le support du p-invariant 1 est {p1 , p2 , p3 } = P , 1 1 le support du p-invariant 1 est {p1 , p2 } = P , 0 2 le support du p-invariant 2 est galement {p1 , p2 } = P e 0 {p1 , p2 , p3 } et {p1 , p2 } sont des exemples de composantes conservatives. Dnition 3.3.3. Le support dun p-invariant X est minimal si et seulement si il nexiste pas e de p-invariant X tel que X X (et X = X ). Une composante conservative est minimale si elle ne contient aucune composante conservative. Exemple 3.3.2. Pour le rseau R3 , on a x1 = x2 +x3 . {p1 , p2 } est une composante conservative e minimale. Ce nest pas le cas de {p1 , p2 , p3 }. Dnition 3.3.4. Un p-invariant X est minimal si et seulement si il nexiste pas de p-invariant e X tel que X X et X = X.

` Yann MORERE

3.4 Proprits qualitatives des RdP e e

41 / 46

p1

1 1 x1 p2 1 1 x 2 C = p3 0 1 ,X= x 3 0 1 p4 x4 t1 t2 x = x x1 + x2 = 0 1 2 t X C =0 x + x = 2x x x + x + x = 0 3 4 1 1 2 3 4 1 1 1 1 sont des p-invariants minimaux de supports minimaux ({p1 , p2 , p3 } , {p1 , p2 , p4 }) 2 0 0 2 1 1 est galement minimal, mais de support non minimal ({p1 , p2 , p3 , p4 }). e 1 1

3.4

Proprits qualitatives des RdP e e

Deux types de proprits sont gnralement distingues : ee e e e 1. les proprits comportementales portent sur les RdP marqus initialement. ee e 2. les proprits structurelles portent sur un RdP indpendemment de tout marquage initial. ee e
Cours de Rseaux de Petri e

 

 

 

42 / 46

Chapitre 3 : Analyse de Rseau de Petri e

3.4.1
3.4.1.1

Les proprits comportementales e e


Probl`mes datteignabilits e e

On a dni lensemble A (R; M0 ) des marquages atteignables dun RdP par : e A (R; M0 ) = {M Nm /(s T ) (M0 (s M )} Dans ce cadre un probl`me datteignabilit consiste soit ` se demander si un marquage particue e a lier fait partie de A (R; M0 ) (cest ` dire sil est atteignable), soit ` se demander si un marquage a a ne risque pas dtre atteint. e Dnition 3.4.1. Soit un RdP, R = P, T ; P r, P ost et un marquage initial M0 . Le probl`me e e e datteignabilit pour le marquage M consiste ` se demander si (s T ) (M0 (s M ). e a Thor`me 3.4.1. Soit un RdP marqu e e e si ce rseau est born, alors M est atteignable si et seulement si le graphe de couverture e e de R; M0 comporte un nud tiquet par M . e e si ce rseau nest pas born, alors son graphe de couverture permet uniquement de vrier e e e sil est possible datteindre un marquage M M , M tant le marquage dont on cherche e a e ` dterminer latteignabilit. e

Ce graphe de recouvrement ne permet pas de savoir si le marquage (8, 0) est atteignable ou pas, du fait que le rseau est non born. e e Il nexiste pas de condition ncessaire et susante (CNS) donnant une rponse gnrale au e e e e probl`me de latteignabilit ; il existe par contre une condition ncessaire gnrale. e e e e e Thor`me 3.4.2. Si M est un marquage atteignable pour le rseau marqu R; M0 de matrice e e e e dincidence C, alors M = O0 + C Y de variable Y admet une solution dans Nm (m tant le e nombre de transition du rseau). e (Si Y existe, cest limage commutative dune squence de franchissement permettant de e passer de M0 ` M ). a Attention : cette condition nest que ncessaire. e
` Yann MORERE

 

  94 5 88764 231)' (0 ( %#" ! &$   A @

3.4 Proprits qualitatives des RdP e e Exemple 3.4.1. le marquage M (8, 0)t est il atteignable ? = 8 2 0 y1 1 + = 0 1 1 y2 0 8 = 2y + 1 1 y1 = 3, 5 0=y y 1 2

43 / 46

Le syst`me considr nadmet pas de solution enti`re, on peut en conclure que M = (8, 0)t e ee e nest pas atteignable. Thor`me 3.4.3. La condition exprime au thor`me prcdent est ncessaire et susante e e e e e e e e pour une classe particuli`re de RdP, les rseaux cycliques. e e

Sous certaines conditions, les p-invariants dun RdP donn permettent de conclure ` la e a non-atteignabilit dun marquage donn. e e Thor`me 3.4.4. Soit R; M0 un rseau marqu et X un p-invariant de R. M est un marquage e e e e t t non atteignable si X M = X M0 . Notez que les probl`mes datteignabilit sont monotones ; Cf. le thor`me suivant. e e e e Thor`me 3.4.5. Si M est atteignable pour R; M0 , alors il est atteignable pour R; M1 avec e e M1 M0 . 3.4.1.2 Dormitude

Dnition 3.4.2. une place p dun RdP marqu R; M0 est k-borne avec k 1 si et seulement e e e si : (M A (R; M0 )) (M (P ) k) une place p est borne si elle est k-borne avec k 1. e e Un RdP marqu est born si toutes ses places sont bornes. e e e Thor`me 3.4.6. Un RdP marqu est born si et seulement si son graphe de recouvrement ne e e e e comporte aucune occurence de symbole .
Cours de Rseaux de Petri e

 % ! " $'& $#!     

44 / 46

Chapitre 3 : Analyse de Rseau de Petri e

Plus prcisement, une place p est borne si et seulement si aucun des marquages du graphe de e e recouvrement du rseau marqu ne comporte le symbole au niveau de lindice correspondant e e ` la place p. a Thor`me 3.4.7. un RdP marqu est born si : e e e e (Y Nm ) (M0 + C Y k I) avec m le nombre de transition et o` k > 0 et I est le vecteur identit de composantes toutes u e gales ` 1. e a Attention : si cette condition est susante, elle nest pas ncessaire. e Il existe encore un autre moyen qui permet de dmontrer que des places dun RdP marqu sont e e bornes, il fait intervenir les p-invariants du rseau considr. e e ee 3.4.1.3 Vivacit et blocage e

Dnition 3.4.3. Une transition t dun RdP marqu R; M0 est vivante si elle peut toujours e e tre franchie ` partir dun marquage atteignable quelconque e a (M A (R; M0 )) (M A (R, M )) (M (t ) Plus gnralement, on dira quun RdP est vivant si toutes ses transitions sont vivantes. e e Dnition 3.4.4. Un marquage atteignable M dun RdP marqu R; M0 est une situation de e e blocage si pour toute transition t T , t nest pas franchissable pour M . Un RdP est sans blocage si aucun de ses marquages atteignables nest une situation de blocage. Rappel : Un sous-graphe SG dun graphe orient G est une composante fortement connexe e de G si et seulement si pour toutes paires de sommets (A, B) de SG, il existe ` la fois a un chemin orient menant de A ` B et un chemin orient menant de B vers A et SG est e a e minimal.

Algorithme de dtermination de la composante fortement connexe (c.f.c.) dun nud donn N e e 1. on fait un parcours en profondeur dans le graphe depuis N dans G,
` Yann MORERE

#!   $" 

3.4 Proprits qualitatives des RdP e e (a) on fait un parcours en profondeur depuis N dans G1 ,

45 / 46

(b) les nuds de G appartenant ` c.f.c de N sont les nuds marqus les 2 fois. a e Exemple 3.4.2. c.f.c.du nd D

pfd(Nud N ) {marquer (N ) pour tout les successeurs N de N si N nest pas marqu pfd(N ) e } Thor`me 3.4.8. Une transition t dun rseau marqu born est vivante si et seulement si : e e e e e 1. depuis chaque nud du graphe de recouvrement du rseau marqu, il existe un chemin e e orient contenant un arc tiquet par t. e e e 2. chaque composante fortement connexe (c.f.c.) du graphe de recouvrement sans arc sortant contient au moins un arc tiquet par t. e e Plus gnralement un RdP marqu born est vivant si et seulement si chaque c.f.c. sans arc e e e e sortant contient au moins un arc tiquet par toute transition t T . e e Un RdP marqu born est en situation de blocage si et seulement si chaque nud de son e e graphe de recouvrement est origine dau moins un arc. Thor`me 3.4.9. Les conditions nonces au thor`me prcdent sont seulement ncessaires e e e e e e e e e pour les rseaux non borns. e e Une transition t dun RdP marqu non born nest pas vivante si le graphe de recouvrement e e du rseau considr poss`de une composante fortement connexe (c.f.c.) sans arc sortant et sans e e e e arc tiquet par t. e e
Cours de Rseaux de Petri e

(& % $#" )'!

 

 

46 / 46

Chapitre 3 : Analyse de Rseau de Petri e

Notez que le graphe de recouvrement poss`de une seule c.f.c. sans arc sortant comprenant e des arcs tiquets par t1 et t2 ; si on oubliait le caract`re non born du RdP, on pourrait conclure e e e e que t1 et t2 sont vivantes mais ce nest pas susant car le RdP est non born. e Dailleurs t1 et t2 sont non borns puisque le rseau est avec blocage. e e

 
` Yann MORERE

WV Y X W

  94 5 88764 U T 231)' (0 ( %#" ! &$   QPI H &$G A @

R S

FDB E C

Vous aimerez peut-être aussi