P. 1
Reseau de Petri

Reseau de Petri

|Views: 241|Likes:
Published by Fadhil Mezghani

More info:

Published by: Fadhil Mezghani on Oct 01, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/13/2014

pdf

text

original

Ecole Nationale d'Ingénieurs de Sfax

2003/04




Réseaux de Petri

Cours de la classe Deuxieme Année Génie Electrique
Options(Electronique ENT, Automatique AII)



Mohamed Ben Messaoud, HDR, Maitre de Conférence à l'ENIS
Table des Matières
Réseaux de Petri .....................................................................................................................1
Introduction........................................................................................................................2
Définition d'un réseau de Petri ............................................................................................2
Concepts et définitions .......................................................................................................3
Marquage d'un RdP ............................................................................................................3
Représentation matricielle d'un RdP ...................................................................................4
Classes des Réseaux de Petri...............................................................................................4
Animation du graphe ..........................................................................................................6
Equation fondamentale de franchissement ..........................................................................7
Dynamique des réseaux de Petri .........................................................................................7
Graphes de marquage ou graphe d'accessibilité...................................................................8
Analyse des propriétés par le Graphe de marquage .............................................................9
Analyse des RdPs par le symbole ω (graphe de couverture) ..............................................12
Application des RdPs........................................................................................................13
Du réseau de Petri au Grafcet............................................................................................14
Exercices……………………………………………………………………………… 15
Principes des Réseaux de Petri


Terminologie: Le réseau de Petri (RdP) ou Petri Net en terme anglo-saxon.
Introduction
Le réseau de Petri est crée par Carl Adam Petri (thèse de 1962) afin de modéliser le
composition et la communication entre automates. C'est une représentation graphique.
Le premier modèle appelé RdP C-E (condition- événement) reposait sur l'utilisation des
valeurs booléennes (Vrais ou Faux).
Les RdP P-T (place –transition) généralisent les RdP C-E en manipulant des valeurs entières.
Les trois familles de RdP sont:
- RdP discret (RdP P-T et ses drivées), pour modéliser les comportements se représentant par
des graphes d'états finis.
- RdP continu (RdP temporelle RdP T), pour les comportements qui nécessitent la prise en
considération des temps.
- RdP stochastique (RdP S et ses dérivés), on inclue des distributions de franchissement et
conduisent à des processus stochastiques (exemple chaîne de Markov).
Définition d'un réseau de Petri
Un réseau de Petri est un outil mathématique très général permettant de modéliser le
comportement d'un système dynamique à événement discret. C'est un modèle graphique
défini par:

Un ensemble de places, représentées graphiquement par des cercles et
correspondant aux différents états du système.

Un ensemble de transitions, notées représentées par des barres ou
rectangle et représente le changement d'état.

Un ensemble d'arcs, notées représentées par des flehes et reliant les
places et les transitions.

à chaque arc est associé un nombre appelé "Poids de l'arc".
une distribution des jetons dans les places.
Exemple 1

Figure 1
dans la figure 1, l'ensemble des places marquées constituent l'état du
RdP.
une place peut représenter la consommation de "n" ressources, ou à
l'inverse, la production de "n" ressources.
Exemple 2: Appel d'offre auprès de plusieurs sociétés.

Figure 2
P1: appel d'offre en cours
P2: Enregistrement
proposition
P3: Examen proposition
P4: proposition acceptée
P5: Proposition refusée
P6:appel d'offre terminé
T1:début d'examen (transition
simple)
T2: critère satisfaisante (condition)
T3: critère non satisfaisante
(condition)
T4: arrivée date limite (événement)

Concepts et définitions
Formellement, un RdP est un quadruplet, PN = (P, T, Pré, Post) où;
= {P1, P2, ..., Pn} est un ensemble fini de places,
= {T1, T2, ..., Tm} est un ensemble fini de transitions,
Pré : x → , (précède) une application d'incidence avant ou Pré(P,T) qui contient la
valeur entière ""n" associée à l'arc allant de "P" à "T".
Post : x → , (suivante) une application d'incidence arrière ou Post(P,T) qui contient la
valeur entière ""n" associée à l'arc allant de "T" à "P".
Càd "P" est une place d'entrée de la transition "T" si Pré(P,T) > 0.
Exemple 3: Partage d'une ressource par RdP.

Figure 3
= {P1, P2, P3, P4}
= {T1, T2, T3, T4}

Pré(P1,T2)=0
Pré(P1,T1)=1

Post(P5,T3)=1
Marquage d'un RdP
Pour définir l'état d'un système modélisé par un RdP, on doit le compléter par un marquage.
La distribution des jetons dans le graphe donne le marquage. Un marquage se définit par un
vecteur M={m
i
} , avec m
i
est le nombre de jetons dans P
i
.
Dans l'Exemple 1, Mo=[2 3 0 0 0]
Dans l'Exemple 3, Mo=[1 0 11 0]
Représentation matricielle d'un RdP
Deux matrices Pré et Post sont construites pour représenter un RdP; les colonnes et les lignes
représentent respectivement les places et les transitions.
L'intersection (i,j) dans Pré ÷ coût associé à l'arde Pi à Tj.
L'intersection (i,j) dans Post ÷ coût associé à l'arde Ti à Pj.
Exemple 4 (figure 3)

T1 T2 T3 T4

T1 T2 T3 T4
P1 1 0 0 0 P1 0 1 0 0
P2 0 1 0 0 P2 1 0 0 0
P3 1 0 1 0 P3 0 1 0 1
P4 0 0 1 0 P4 0 0 0 1
P5 0 0 0 1

P5 0 0 1 0
Matrice Pré Matrice Post
Exemple 5
Soit le RdP valué de la figure 4, de marquage initiale Mo=(2 3).
Déterminer les matrices de connections Pré et Post.

T1 T2 T3

T1 T2 T3
P1 2 1 0 P1 5 0 1
P2 0 6 4 P2 7 3 0



Matrice Pré Figure 4 Matrice Post
Classes des Réseaux de Petri

RdP ordinaire: si les poids de tous les arcs sont
unitaires (=1).


RdP à arc étiquetés: chaque arc porte les jetons qui
le traverse lors d'un tri de transition

RdP interprété: chaque transition porte un prédicat
des variables d'entrée.
RdP temporisé: on intègre au RdP la variable
temps.

Synchronisation: c'est la conjonction de deux
places.

Graphe d'événement: c'est un RdP dans lequel
chaque place a exactement une transition d'entrée et
une transition de sortie.
, 1 p P p p ∀ ∈ • = • =
•p indique la transition avant p et p• indique la
transition après p.
le graphe d'evt peut modéliser la
synchronisation (ET, conjonction) et non le conflit
(OU, disjonction).

Machine d'état: c'est un RdP dans lequel chaque
transition a exactement une place d'entrée et une
place de sortie.
, 1 t T t t ∀ ∈ • = • =
•t indique la place avant t et t• indique la place après
t.
la machine d'état peut modéliser le conflit
(OU, disjonction) et non la synchronisation (ET,
conjonction).

Réseau à choix libre: c'est un RdP dans lequel un
arc d'origine d'une place est le seul arc qui sort de
cette place OU il est le seul arc qui entre dans une
transition (on impose ce qui sort du p uniquement).
{ }
{ }
, ,

j i j j i
i j
T T P T T P
ou P T
∀ ∈ ∀ ∈• • =
• =

on est libre de faire un choix.
Autres RdP: Réseau à choix libre étendu; à choix asymétrique etc…
Animation du graphe
Sensibilisation d'une transition
Pour un marquage M, une transition est dite tirable (ou franchissable ou sensibilisée) ssi
, ( ) Pr ( , ) p P on a M p é p t ∀ ∈ ≥
Càd, pour toute place pi entrée de tj, le nombre de jetons dans pi (M(pi)) est supérieur ou égal
au poids de l'arc allant de pi à tj.
Notation
"t" tirable depuis M, se note "M [ t >".
Le tir de "t" depuis "M1" donnant le nouveau marquage "M2" se note "M1 [ t > M2".
Remarque
• Il n'y a pas, à priori, conservation du nombre de jetons dans un graphe.
• Dans un RdP, toute transition tirable "t", peut être tirée, et son tir conduit à un nouveau
marquage M' défini par:
, '( ) ( ) Pr ( , ) ( , ) p P M p M p é p t Post p t ∀ ∈ = − +
Exemple 6
A partir de Mo de la figure 4, on tire t1, le nouveau marquage M sera:
Mo[t1>M,
1 1
2 2 1 0 5 0 1 5
0 0
3 0 6 4 7 3 0 10
0 0
M
( (
( ( ( (
( (
= − + =
( ( ( (
( (
¸ ¸ ¸ ¸ ¸ ¸ ¸ ¸
( (
¸ ¸ ¸ ¸

Matrice d'incidence
C'est une matrice notée "C", définie par:
, , ( , ) ( , ) - Pr ( , ) p P t T C p t Post p t é p t ∀ ∈ ∀ ∈ =
D'où M(p)=Mo(p) + C(p,t)
Exemple 7
Même donnée que l'exemple 6.
3 -1 1

7 -3 -4
C Post - Pré
(
= =
(
¸ ¸
, et
1
2 3 -1 1 5
0
3 7 -3 -4 10
0
M
(
( ( (
(
= + =
( ( (
(
¸ ¸ ¸ ¸ ¸ ¸
(
¸ ¸

Equation fondamentale de franchissement
Etant donnée une situation où: M
0
[t
1
>M
1
; M
1
[t
2
>M
2
; ….; M
n
[t
n+1
>M';
L'équation fondamentale de franchissement est M'=Mo+C.S
S étant le vecteur caractéristique de franchissement des transitions, S=t
1
t
2
… t
n+1

L'élément
i
S(t ) donne le nombre d'occurrence de la transition "ti" dans la séquence "S".
On note le marquage après la séquence S: M
0
[ S > M'.
Exemple 8
Calculer le nouveau marquage M' induit par le franchissement de la séquence S=t1 t2 t3 t1,
dans le RdP de la figure 4.
0
2
3
M
(
=
(
¸ ¸
;
3 -1 1

7 -3 -4
C
(
=
(
¸ ¸
et
2
1
1
S
(
(
=
(
(
¸ ¸
M' est donc
8
10
(
(
¸ ¸

Dynamique des réseaux de Petri
La dynamique d'un réseau de Petri est décrite par les changements de marquage dans le RdP.
"Pour passer de M à M', on enlève des places d'entrée un nombre de jetons équivalent au
poids de l'arc qui relie cette place à la transition tirée et on ajoute dans la place de sortie un
nombre de jetons équivalent au poids de l'arc qui relie la transition tirée à cette place".
La dynamique est définie alors par:
1- { } '( ) ( ) p t M p M p t ∀ ∈ • = − •
Avec { } t • l'ensemble des places précédentes à t; t • indique le poids de l'arc qui relie p à t.
2- { } '( ) ( ) p t M p M p t ∀ ∈ • = + •
Avec { } t • l'ensemble des places suivantes à t; et t • indique le poids de l'arc qui relie t à p.
3- { } , '( ) ( ) p t t M p M p ∀ ∉ • • =
Cas d'un RdP interprété:
On a le tri d'une transition ssi:
Transition sensibilisée,
Prédicat vrai.
Exemple 9
Changement de marquage dans un RdP selon une séquence de tirage S=t
1
t
2
.





t1





t2


M0=[1 0 0] M0=[0 1 2] M0=[1 0 1]
Exemple 10

Marquages successifs:
M0=[1 0 0 1]
M1=[0 1 0 1]
M2=[1 0 1 0]
M3=[0 1 1 0]
M1=[0 1 0 1]; le graphe contient une boucle.
Graphes de marquage ou graphe d'accessibilité
L'évolution temporelle d'un RdP peut être décrite par un graphe de marquage représentant
l'ensemble des marquages accessibles (ensemble des marquages accessibles et d'arcs
correspondant aux franchissements des transitions) faisant passer d'un marquage à l'autre pour
un marquage initial M0.
Graphe d'accessibilité
Un marquage Mj est accessible (ou atteignable) s’il existe une séquence de transitions S qui
transforme le marquage en Mj.
Notation: A(R,Mo) représente l’ensemble des marquages accessibles à partir de Mo.
L’accessibilité est une propriété de haut intérêt parce qu’il est souhaitable de savoir si un état
peut être atteint ou non. Par exemple, dans une usine chimique, il est important de savoir s’il
y a des états accessibles qui peuvent conduire à une explosion.
Arbre de recouvrement
Pour un RdP avec un marquage initia Mo, et un autre marquage M, il s'agit de déterminer s'il
existe un marquage M' accessible, de telle sorte que M' _ M (M' recouvre M).
L'arbre de recouvrement permet de détecter les transitions qui ne sont pas tirées, ou qui ne
sont plus tirées à partir d'un certains niveau.
Exemple 11: RdP et son arbre de recouvrement.

Mo=[0 1 1 0 0]
2 T
→ [0 2 0 0 0] blocage.
↓ T1
[0 0 0 1 0]
↓ T4
[1 0 0 0 1]
↓ T3
[1 0 0 1 0]
↓ T4
[2 0 0 0 1] : croissance infinie
Le graphe d'accessibilité dépend de la condition initiale.
Exemple 12


Mo=[1 0 0]


Mo=[2 0 0]

Analyse des propriétés par le Graphe de marquage
Propriétés principales
RdP borné: quand le nombre des jetons dans les places ne dépasse pas un nombre K.
Si K=1, le RdP est dit SAIN (ou sauf).
Pour un réseau R et un marquage Mo, une place "p" est k-bornée ssi
( , ), ( ) M A R Mo M p k ∀ ∈ ≤
Dans le cas contraire la place "p" est dite "non-bornée".
Exemple 13
Dans le RdP de l'exemple 10, et d'après le graphe de marquage ci-dessous, le RdP est sauf.

RdP pseudo-vivant
Si à tout instant, il existe une transition sensibilisée.
Càd, ceci se traduit par une absence de blocage.
( , ), / [ M A R Mo t T M t ∀ ∈ ∃ ∈ >; il existe tjs une transition qui puisse être franchie.
RdP quasi-Vivant
Si toutes ses transitions peuvent être franchies au moins une fois à partir d'un marquage initial
Mo.
Remarque: la transition qui n'est pas quasi-vivant st inutile.
Exemple 14
Soit le RdP de la figure 5,

Figure 5.
Pour Mo=[1 0 0], T1 est tirable au moins
une fois, T2 et T3 forme une boucle, donc il
existe au moins une transition tirable donc le
RdP est Quasi-vivant et Pseudo- vivant.
Pour Mo=[0 1 0], T1 est non tirable, le RdP
est non quasi vivant.

RdP Vivant
Si toutes les transitions peuvent être franchies (en d'autres termes, chaque transition est tirable
éventuellement, peu importe l'état du système).
( , ) M A R Mo ∀ ∈ , il existe une séquence franchissable à partir de M qui contient toutes les
transitions.
Exemple 15
Même RdP de la figure 5. Le graphe de marquage est

Le RdP n'est plus vivant car à partir d'un certain moment il n'est plus possible de tirer T1.
Exemple 16
Soit le RdP de la figure 6,

Figure 6.
Pour Mo=[3 0 0],

le RdP est vivant, donc
quasi et pseudo vivant.
Pour Mo=[0 1 0],

RdP est pseudo vivant.

RdP réinitiable (ou réversible ou propre)
Il existe un cycle tel qu'à un moment donné, lors du fonctionnement, la configuration du
réseau est la même qu'à l'état initial.
Remarque: la réversibilité est une notion liée à 'etat initial Mo.
*
( , ), , / [ M A R Mo S T M S Mo ∀ ∈ ∃ ∈ >
Absence de blocage
Le réseau a toujours la possibilité d'évolution (plus faible que vivant).
Marquage puit
C'est un marquage à partir duquel aucune transition n'est tirable.
Remarque: RdP sans blocage équivalent à pour tout marquage, pas de marquage puit.
Exemple 17

RdP Pseudo et Quasi vivant
Graphe de marquage:

Exemple 18


le RdP n'est pas pseudo vivant (blocage)
le RdP Quasi vivant
le RdP n'est pas vivant car contient le blocage.
Analyse des RdPs par le symbole ω ωω ω (graphe de couverture)
Un arbre d'accessibilité peut être infini.
Afin d'obtenir un arbre fini, on utilise le symbole ω pour représenter le nombre de jetons qui
peut augmenter sans limite.
Pour "a" entier on peut appliquer les opérations suivantes sur l'opérateur "ω"
,
a
a
a
ω ω
ω
ω ω
+ = ¦
<
´
− =
¹

S'il existe un marquage M'' sur le chemin entre Mo et M' de sorte que M'(pi)_M''(pi) et
M'≠M'' alors remplacer M'(pi) par ω.
Exemple 19

Graphe de marquage

graphe de ω

Application des RdPs
Parallélisme


Unité 1 Unité 2
Synchronisation

unité 1 Exemple de synchronisation CPU- Imprimante
Gestion de ressources

Du réseau de Petri au Grafcet
Le Grafcet peut être considéré comme un réseau de Petri interprété. Pour retrouver
éventuellement le réseau de Petri sous-jacent à un Grafcet, il faut d’abord enlever tout ce qui
concerne la spécification des réceptivités, celle des actions ainsi que tout ce qui concerne le
temps.
Il reste donc un graphe comprenant des étapes et des transitions que l’on peut voir comme les
places et les transitions d’un réseau de Petri sous-jacent, mais il s’agit d'un réseau de Petri
particulier. En effet, une étape peut être active ou inactive ce qui correspond au fait qu’une
place d’un réseau de Petri peut être vide ou contenir un jeton. Mais, dans le cas général, une
place d’un réseau de Petri peut contenir plus d’un jeton. La classe particulière de réseau de
Petri correspondant au Grafcet est celle des réseaux de Petri saufs (chaque place ne peut pas
recevoir plus d’un jeton).
De ce point de vue on peut considérer que le Grafcet est une norme pour l’interprétation des
réseaux de Petri sauf dans le contexte des automatismes séquentiels.
Le tableau suivant résume le vocabulaire et la représentation graphique du RdP et Grafcet.
Réseau de Petri Grafcet
Notion représentation vocabulaire Notion représentation vocabulaire
Place

1 jeton (0
jeton)
Etape

active
(inactive)
place initiale

Etape initiale


marquage situation
Transition

sensibilisée Transition

validée
Disjonction des chemins

Disjonction des chemins

Conjonction des chemins

Conjonction des chemins

Exercice
Soient les RdPs des figures i, ii, iii.
Tracer les graphes de marquage correspondants.
Déterminer les propriétés des réseaux de Petri:
Pseudo vivant; Quasi vivant; vivant; borné; reversible et Blocage, ; infini?


Figure i Figure ii

Figure iii

Exercice (composition )
On considère deux machines M 1 et M 2 qui travaillent en ligne. Un stock tampon de capacité
limitée à 4 pièces sépare les deux machines. Chaque machine dispose également d’un stock
tampon d’entrée et d’un stock tampon de sortie capable de contenir une pièce. Un robot est
utilisé pour transporter les pièces du stock de sortie de M 1 vers et de vers le stock de tampon
d’entrée de M 2 .

Modéliser
-les machines avec leurs stocks tampons d’entrée et de sortie (capacité 1).
-le stock (capacité 4)
-les transports entre les stocks tampons et
-l’intégration du robot dans le modèle global
Exercices (classique)
•Lecteur- Rédacteur
Dans ce problème, il y a deux types de processus: les processus lecteurs et les processus
rédacteurs. Tous ces processus partagent une ressource commune comme, par exemple, un
fichier. Les processus lecteurs ne modifient pas cette ressource alors que les rédacteurs la
modifient. Donc les processus rédacteurs doivent être en exclusion mutuelle avec les autres
processus rédacteurs et les processus lecteurs. Par contre les processus lecteurs peuvent
accéder simultanément à la ressource.
-Modéliser ce problème en supposant que le nombre de lecteurs est borné par n . Il y a s
lecteurs et t rédacteurs.
-Peut-on résoudre le problème si l’on ne connaît pas une borne supérieure au nombre de
lecteurs?
1) Modélisation
On considère un atelier de fabrication de yaourts fonctionnant par lots. Pour chaque lot, après
le lancement de la fabrication, on attend que les deux réacteurs R1 et R2 soient disponibles,
on commence en parallèle et indépendamment par préparer le lait (chauffage dans le réacteur
R1) et le ferment (brassage dans réacteur R2). Quand les deux opérations sont terminées, le
lait et le ferment sont simultanément transférés dans le réacteur de fermentation R3. On
suppose la durée du transfert négligeable.
La fermentation a alors lieu, puis l’opération consistant à vider le réacteur R3 tout en le
refroidissant à l’aide de l’échangeur de chaleur R4 dure également un certain temps.
L’installation est alors prête pour traiter un nouveau lot.

a) Montrer que le réseau de Petri “Réseau 1” peut correspondre à la spécification ci-dessus.
Donner la signification des places et des transitions.
b) Comment faudrait-il modifier le réseau (ou son marquage initial) pour que l’installation
puisse traiter 2 lots simultanément (avec un seul réacteur de chacun des types R1, R2, R3 et
R4) ?




Ecol e Nat i onal e d’ I ngéni eur s de Sf ax GE2 ( ENT -AI I )
Dépar t ement de Géni e El ect r i que

Tr avaux Di r i gés
Réseaux de Pétr i
* * * L es r éseaux de Pet r i ser vent à l a modél i sat i on et l ’ anal yse de syst èmes dynami ques
di scr et s
Exer ci ce 1
Repr ésent er l es mat r i ces Pr é et Post des r éseaux de Pet r i de l a f i gur e 1.


Fi g.1.a

Fi g.1.b

Cal cul er l e nouveau mar quage si on t i r e t 2, à par t i r du mar quage i ni t i al Mo.
Cal cul er l e nouveau mar quage si on f r anchi t l a séquence s=t 3t 4t 3.
Exer ci ce 2
I ndi quer l e changement de mar quage dans l e r éseau de Pet r i de l a f i gur e 2, sel on une
séquence s= a-b-a-a.

Fi g.2.
Dédui r e l es mar quages successi f s cor r espondant s.
Exer ci ce 3
Donner l ’ ar br e de r ecouvr ement du RdP de l a f i gur e 3.

Fi g.3.
Exer ci ce 4
En ut i l i sant l e gr aphe de Mar quage, anal yser l es Pr opr i ét és : ( bor né, quasi- vi vant ,
pseudo- vi vant , r ei ni t i abl e, bl ocage…) RdPs de l a f i gur e 4.

Fi g.4. a

Fi g.4.b

Fi g.4. c

Fi g.4.d

Exer ci ce 5
Anal yser par l e symbol e ω, l e r éseau de Pet r i l es r éseaux de l a f i gur e 5.


Fi g.5. a

Fi g.5. c



Fi g.5. b

Exer ci ce 6
Pour l a f i gur e 6, Quel l es sont l es t r ansi t i ons t i r abl es ? Quel l es ser ai ent l a di st r i but i on des
j et ons apr ès l e f r anchi ssement de chacune de ces t r ansi t i ons ?

Fi g.6.
Exer ci ce 7
On consi dèr e deux machi nes M 1 et M 2 qui t r avai l l ent en l i gne ( f i gur e 7) . Un st ock
t ampon de capaci t é l i mi t ée à 4 pi èces sépar e l es deux machi nes. Chaque machi ne di spose
égal ement d’ un st ock t ampon d’ ent r ée et d’ un st ock t ampon de sor t i e capabl e de cont eni r
une pi èce. Un r obot est ut i l i sé pour t r anspor t er l es pi èces du st ock de sor t i e de M1 ver s et
de ver s l e st ock de t ampon d’ ent r ée de M2.
Modél i ser
-l es machi nes avec l eur s st ocks t ampons d ’ ent r ée et de sor t i e ( capaci t é 1) .
-l e st ock ( capaci t é 4)
-l es t r anspor t s ent r e l es st ocks t ampons et S.
-l ’ i nt égr at i on du r obot dans l e modèl e gl obal

Fi g.7.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->