Vous êtes sur la page 1sur 43

Chapitre 2

NOTIONS DE BASE D’UN RDP


Formalisme

• Définitions
Un réseau de Pétri est un graphe orienté comportant :
➢ Un ensemble fini de places P = {P1,P2,...,Pn} : conditions ou statuts

Place :

➢ Un ensemble fini de transitions T = {T1, T2, ..., Tn} : évènements ou actions

Transition :

➢ Un ensemble fini d'arcs orientés et unidirectionnels :


Liaisons :

T1
P1

P1 T2 T1 P2

TN PN

2
Formalisme

• Marquage d’un réseau de Pétri


Le marquage d’un réseau représente son état.

➢Pour ce faire, on place à l'intérieur des places un nombre fini (plusieurs ou nul) de
marques ou jetons.
T1

P1 P2

➢ Condition logique (processus) : le jeton indique que cette condition est vraie (place
marquée) ou fausse

➢ Ressources : le jeton indique la quantité de ressource en stock.

➢ Marquage initial, M0, correspond à la distribution initiale des jetons dans chacune des
places : état initial du système.
-

3
Formalisme

• Dynamique d’un réseau de Pétri

Pe1 Pe2

T1

Ps1 Ps2
➢ Places d’entrée :d'où sont issus les arcs orientés vers la transition (e1, e2)

➢ Places de sortie : où aboutissent les arc orientés issus de la transition (s1, s2)

4
Formalisme

• Règles de parcours d’un réseau de Pétri


➢ RdP ordinaire : Le franchissement d’une transition validée consiste à
enlever un jeton de toutes les places d’entrée de la transition et à en
déposer un dans toutes les places de sortie de cette même transition.

P1 P2 P1 P2

T1 T1

P1
P1

P2 T1
P2 T1
Non franchissable
Franchissable

5
Formalisme

• Règles de parcours d’un réseau de Pétri

➢ RdP généralisés : permet de représenter un déplacement de ressources ou un


stock. Dans ce type de RdP, les arcs sont le plus souvent valués.

P1 P3
4 5

2
P2 T1 P4

5 4 5
4

2 2

6
Formalisme

• Exemple dynamique

Réinitialisation
Débit entrée Débit sortie

2 places Lieu, statut Cercles

3 transitions Fonction Traits noirs

4 arcs Réalisation, Flèches


Déplacement

2 jetons Objets/personnes Points noirs

7
Formalisme

• Exemple : Les quatre saisons

8
Formalisme

• Exemple ET / OU

ET OU
P1
P1 P2

T1 T2
T1

P2 P3

9
Formalisme
• Exemple de l’atelier de coupe de bois

10
Formalisme
• Exemple de l’atelier de coupe de bois

Il faut noter les choses suivantes :

11
Formalisme
• Exemple : Machine d’assemblage

La machine 1 (respectivement la Machine 2) reçoit une pièce, la


traite puis la dépose dans le Stock 1 (respectivement Stock 2). Elles
ne peuvent traiter qu’une seule pièce à la fois. La Machine 3 fait
l’assemblage : elle prend une pièce dans le Stock 1 et dans le stock
2, elle les assemble avant de les déposer dans un stock aval non
considéré.
12
Formalisme
• Réseaux de Petri avec une structure particulière
Graphe d’états : Un réseau de Petri est un graphe d’états si et
seulement si toute transition a exactement une place d’entrée et une
place de sortie.

Graphe d’événements : Un réseau de Petri est un graphe d’événements


si et seulement si toute place a exactement une transition d’entrée et une
transition de sortie.

13
Formalisme
• Réseaux de Petri avec une structure particulière
RdP sans conflit : Un réseau de Petri est dit sans conflit si et
seulement si toute place a au plus une transition de sortie .
Un conflit (structurel) correspond à l’existence d’une place Pi qui a au
moins deux transitions de sortie Tj , Tk, etc.. Notation <Pi,{Tj, Tk, …}>.

Sur le RdP de droite, on a le conflit < P1 , {T2 ,T3 } >. Quand la place P1
contient une marque, les transitions T2 et T3 sont franchissables. Seule
une des deux transitions peut être franchie : il est nécessaire de prendre
une décision pour savoir laquelle des deux le sera effectivement.
L’absence ou la présence d’un conflit est une propriété importante
14
d’un réseau de Petri.
Formalisme
• Réseaux de Petri avec une structure particulière

RdP à choix libre : Un réseau de Petri est dit à choix libre si et seulement
si les transitions de sortie de tous ses conflits n’admettent qu’une seule
place d’entrée.

RdP à choix libre étendu : Un réseau de Petri est dit à choix libre étendu
si et seulement si pour chaque conflit, toutes les transitions de sortie de
celui-ci admettent les mêmes places d’entrée.

Exemple : soit un réseau de Petri à choix libre étendu qui admet le conflit
<P1, {T2, T3 }>.
Si T2 admet aussi pour place d’entrée P2 alors forcement T3 admet P2
comme place d’entrée.

15
Formalisme
• Réseaux de Petri avec une structure particulière
RdP simple Un réseau de Petri est dit simple si et seulement si toutes
ses transitions n’interviennent que dans un seul conflit au maximum.

RdP qui n’est pas simple

16
Formalisme
• Réseaux de Petri avec une structure particulière

RdP pur Un réseau de Petri est dit pur si et seulement s’il n’existe
pas de transition ayant une place d’entrée qui est aussi place de
sortie.

Le RdP suivant n’est pas pur car la place P3 est place d’entrée et place
de sortie de la transition T1. On parle alors de RdP impur.

17
Formalisme
• Réseaux de Petri avec une structure particulière
Propriété : Tout RdP impur peut être transformé en un RdP pur.

RdP impur RdP pur


Ce RdP est pur. Cependant, il est plus complexe. Cet exemple montre
que des “transitions impures” peuvent ainsi être introduites pour
simplifier le modèle RdP d’un système.

18
RdP impur équivalent à un RdP pur
Structures fondamentales pour la modélisation des systèmes

Les RdPs permettent de modéliser un certain nombre de


comportements importants dans les systèmes :

▪ Le parallélisme,
▪ La synchronisation,
▪ Le partage de ressources,
▪ La mémorisation et la lecture d’information,
▪ La limitation d’une capacité de stockage.

19
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Parallélisme
Le parallélisme représente la possibilité que plusieurs processus évoluent
simultanément au sein du même système. On peut provoquer le départ
simultané de l’évolution de deux processus à l’aide d’une transition ayant
plusieurs places de sortie.

Pour cela, le RdP doit contenir la structure suivante :

Le franchissement de la transition T1 met une marque dans la place P2 (ce


qui marque le déclenchement du processus 1) et une marque dans la place
P3 (ce qui marque le déclenchement du processus 2). 20
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Parallélisme
Il est ensuite possible de synchroniser l’achèvement des deux processus :
La place P 22 correspond à la fin du
processus 1 et la place P23 à la fin du
processus 2. Le RdP évoluera par
franchissement de la transition T12. Pour
cela, il est nécessaire que les places P22 et
P23 contiennent chacune au moins un
jeton, c’est-à-dire que les processus 1 et 2
soient terminés.

21
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Parallélisme

Exemple : La machine à remplir et à boucher


La machine à remplir et à boucher des bouteilles est composée de trois
postes travaillant en parallèle.

– Le poste 1 sert au transfert et au chargement. Dans un premier


temps, on sort le vérin de transfert B pour décaler le convoyeur d’une
position vers la droite. Ensuite, le vérin A sert au chargement d’une
nouvelle bouteille vide.
– Le poste 2 sert au remplissage des bouteilles à l’aide de la vanne D.
– Le poste 3 est le poste de bouchage.

Les actions de chargement d’une bouteille, remplissage d’une bouteille et


bouchage d’une bouteille sont effectuées en parallèle. Le transfert par le
vérin B n’est effectué que lorsque ces trois opérations sont terminées.

22
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Parallélisme
Exemple : La machine à remplir et à boucher

23
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Parallélisme
Exemple : La machine à remplir et à boucher

24
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Synchronisation
Mutuelle : La synchronisation mutuelle ou rendez-vous permet de
synchroniser les opérations de deux processus.

Le franchissement de la transition T7 ne peut se faire que si la place


P12 du processus 1 et la place P6 du processus 2 contiennent chacune
au moins une marque. Si ce n’est pas le cas, par exemple la place P12
ne contient pas de marque, le processus 2 est “bloqué” sur la place
P6 : il attend que l’évolution du processus 1 soit telle qu’au moins une
25
marque apparaisse dans la place P12.
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Synchronisation
Exemple : Système magasin/consommateur.
Le magasin vend un seul type de produits entreposés dans un stock
de capacité limité : son état est caractérisé par le nombre de
produits en stock et par le nombre d’emplacements libres dans le
stock.
Le nombre de produits disponibles dans le magasin augmente quand
le magasin est livré et diminue quand le consommateur
effectue un achat. Le consommateur a deux états : soit il
consomme, soit il va faire ses courses.
On suppose qu’à l’instant initial, le magasin a deux emplacements
de libre et un seul produit stocké et que le consommateur est en
train de consommer.

26
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Synchronisation
Exemple : Système magasin/consommateur.

27
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Synchronisation
Sémaphore : Les opérations du processus 2 ne peuvent se
poursuivre que si le processus 1 a atteint un certain niveau dans la
suite de ses opérations. Par contre, l’avancement des opérations du
processus 1 ne dépend pas de l’avancement des opérations du
processus 2.
• Le processus 2 ne peut franchir la
transition T8 que si la place P0 contient au
moins une marque.

• Une marque est ajoutée dans la place P0


lorsque l’évolution du processus 1 amène
le franchissement de la transition T17.

• L’évolution du processus 2 va donc


dépendre de l’évolution du processus 1.

28
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Synchronisation
Exemple : Calculs parallèles
On désire effectuer deux opérations : axb+e et axb+cxd
On dispose de deux processeurs pouvant travailler en parallèle. Afin
de gagner du temps, on décide que le premier processeur effectuera
l’opération a × b tandis que parallèlement le second effectuera
l’opération c×d.
Quand le processeur 1 aura terminé le produit, il y ajoutera e.
Quand le processeur 2 aura terminé l’opération c × d, si le
processeur 1 a terminé le produit a × b, il fera la somme des deux
produits, sinon il attendra que le produit a × b soit terminé pour
pouvoir l’effectuer.

A l’instant initial, le processeur 1 effectue l’addition (a × b) + e, que


le résultat de a × b est disponible et que le processeur 2 effectue
l’opération c×d.

29
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
26 C HAPITRE 2 M OD ÉLISATION
Synchronisation
Exemple : Calculs parallèles

P6
P5

P3 T3
P4
T1 T2
P1 P2

F IG . 2.23 – Calculs parallèles

30
Structures fondamentales
F .pour laparallèles
2.23 – Calculs modélisation des systèmes
IG

• Eléments de modélisation
Partage de ressources
Cette structure va modéliser le fait qu’au sein du même système
plusieurs processus partagent une même ressource.

P12 P6

T17 T7

P13 P7
P0
T18 T8
Processus 1 Processus 2

La marque dans la place P0 représente une


F IG . 2.24 – Partage ressource mise en commun
de ressource
entre le processus 1 et le processus 2.
Le franchissement de la transition T17 lors de l’évolution du
processus 1 entraîne la “consommation” de la marque présente dans la
place P0.
Lors de l’évolution du processus 1, lorsque la transition T18 est franchie,
une marque est alors “redonnée” à la place P0 : la ressource redevient 31
alors disponible pour l’évolution des deux processus.
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Partage de ressource
Exemple : Partage d’une mémoire par deux programmes
informatiques

Deux programmes informatiques, programme 1 et programme 2


partagent un espace mémoire unique. Quand un des deux
programmes l’utilise, l’autre ne peut pas y avoir accès.

A l’instant initial, les deux programmes n’ont pas besoin de la


mémoire qui est donc disponible.

32
Structures fondamentales pour la modélisation des systèmes
G. S CORLETTI ET G. B INET V ERSION P ROVISOIRE DU 20 JUIN 2006 27
• Eléments de modélisation

Partage de
– ressource

Exemple –: Partage d’une mémoire par deux programmes
informatiques


P7

P3 P4
T1 T2

T5 P5 P6 T6

P1 T4 P2
T3
F IG . 2.25 – Partage d’une mémoire par deux programmes

L’état du système va évoluer quand :



– 33

A l’instant initial, les deux programmes n’ont pas besoin de la mémoire qui est donc disponible.
T5
Structures fondamentales P5
pour la modélisation
P6 T6
des systèmes
• Eléments de modélisation
Mémorisation P1 T4 P2
T3
- du franchissement d’une transition, c’est-à-dire de l’occurrence d’un
F IG . 2.25 – Partage d’une mémoire par deux programmes
événement : le franchissement de la transition T12 n’est possible que s’il y
a une marque dans la place P2. Seul le franchissement de la transition T1
peut mettre
L’étatune marque
du système dans
va évoluer quandla: place P2.


- d’un nombre,
– par exemple de la quantité d’une ressource donnée dans
un stockA:l’instant
(exempleinitial, lesde
deuxl’atelier
programmesde coupe).
n’ont pas besoin de la mémoire qui est donc disponible.
On obtient alors le RdP représenté Figure 2.25.

P1

T1

P3

P2

P23
T12
34

F IG . 2.26 – Mémorisation
Structures
28 fondamentales pour
C HAPITRE 2 la modélisation des
M OD systèmes
ÉLISATION

• Eléments
2.2.1.4 de modélisation
Mémorisation

Lecture
– du franchissement d’une transition, c’est-à-dire de l’occurrence d’un événement : Figure
2.26, le franchissement de la transition T12 n’est possible que s’il y a une marque dans la
place P2 . Seul le franchissement de la transition T1 peut mettre une marque dans la place
Le franchissement
P2 . de la transition T1 est lié au marquage de P23.
Lors du franchissement, sondemarquage
– d’un nombre, par exemple n’est
la quantité d’une pas
ressource modifié.
donnée dans un stock : voir par
exemple l’exemple de l’atelier page 10.
On fait alors “une lecture” de ce marquage.
2.2.1.5 Lecture
Figure 2.27, le franchissement de la transition T1 est lié au marquage de P23. Lors du fran-
chissement, son marquage n’est pas modifié. On fait alors “une lecture” de ce marquage.

P2

P23 T1

35
F IG . 2.27 – Lecture
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Lecture
Exemple : Atelier de coupe (2)

On désire prendre en compte que l’atelier peut être ouvert ou fermé


et que la machine de coupe ne peut traiter une commande que
quand l’atelier est ouvert.

36
Structures fondamentales pour la modélisation des systèmes
• Eléments de modélisation
Lecture
Exemple : Atelier de coupe (2)
G. S CORLETTI ET G. B INET V ERSION P ROVISOIRE DU 20 JUIN 2006 29

T1
T5
P1 P2

T2 P6
P5
P3 T4

T3

P4

F IG . 2.28 – Atelier de coupe 2

franchissable si le franchissement de la transition T4 permet de mettre des marques dans la 37


place P5 . Au total, la place P4 ne pourra pas contenir plus de 3 marques. Cette partie de RdP
peut modéliser un stock de capacité total égale à 3 : d’où le nom capacité limité. Le marquage
T1
Structures fondamentales pour la modélisation des systèmes
T5
P1 P2

• Eléments de modélisation T2 P6

Capacité limitée P3
P5
T4
Pour que la transition T3 soit franchissable, il est nécessaire que la T3place P5
contienne des marques.
P4
Le marquage de P5 ne permet que deux franchissements successifs de T3.
F IG . 2.28 – Atelier de coupe 2
La transition T3 sera à nouveau franchissable si le franchissement de la
transition T4 permet de mettre des marques dans la place
franchissable P5P. neAu
si le franchissement
place P . Au total, la place
de total,
la transition T permet de mettre
pourra pas contenir plus de 3 marque
4
5 4
peut modéliser un stock de capacité total égale à 3 : d’où le nom capacit
la place P4 ne pourra pas contenir plus de 3 marques.
de P indique Cette partie de
le nombre d’emplacements
5 libresRdP
dans le stock, le marq
d’emplacements occupés. Le franchissement de la transition T3 s’inter
peut modéliser un stock de capacité total égale à 3 : d’où le nom capacité limitée.
mise d’un élément dans le stock ; le franchissement de la transition T4
élément du stock.

P3

T3

P5 P4

T4
38

F IG . 2.29 – Capacité limitée


Structures fondamentales pour la modélisation des systèmes
• Modélisation structurée
Approche par affinements successifs
G. S CORLETTI ET G. B INET V ERSION P ROVISOIRE DU 20 JUIN 2006 11

Etape 1 : le système est décrit


L’état du systèmepar un RdP
est caractérisé par : “simplifié”. Pour cela, les
transitions
C HAPITRE 2 sont associées M àODdes actions/événements complexes.
–ÉLISATION

Etape 2 : les transitions sont –
odéliser le fait que le stock peut être de capacité limité. Modifier
alors remplacées par les Réseaux de Petri
le RdP
omptedécrivant
que la capacité duces actions/événements
stock est limitée par 4. – complexes.
L’état du système va évoluer quand se produit :
Dans l’exemple de l’atelier de coupe, on–– aurait pu modéliser de façon plus simple le système en
n structurée
considérant que le début de la découpe par la machine, la découpe elle-même et la fin de la découpe
on du modèle RdP d’un système d’une grande complexité, il–est nécessaire
ne
Deuxconstituent
approches sontqu’un seul et
ainsi possibles. même événement (complexe).
T1
G. S CORLETTI ET G. B INET V ERSION P ROVISOIRE DU 20 JUIN 2006 31
T1
T2 P1 P2
P1 P2 T2
P2
T23 T3 P3

F IG . 2.31 – RdP équivalent à T23 T3


P4
Le RdP correspondant est représenté Figure 2.30. La transition T23 est associée à un événement
Fcomplexe
IG . 2.30 –: T23
La transition Atelier suite
est
la découpeassociée
débute, uneàcommande
un événement
est dans lacomplexe
machine de découpe, la découpe est P4 39
terminée. Par suite la transition T23 correspond au Réseau de Petri représenté Figure 2.31. En
Structures fondamentales pour la modélisation des systèmes
• Modélisation structurée
Approche par compositions de RdPs

Un système complexe peut être décomposé en sous systèmes. Chaque sous système est alors
modélisé par un RdP. Le RdP du système complet est alors obtenu en assemblant les RdPs des
différents sous systèmes. L’assemblage peut se faire selon deux approches :

• par fusion des places communes aux différents RdPs : cela traduit par exemple que les sous
systèmes partagent des ressources ;
• par fusion des transitions communes aux différents RdPs : cela traduit par exemple que les
sous systèmes évoluent sous l’occurrence de même événements.

40
Structures fondamentales pour la modélisation des systèmes
32 C HAPITRE 2 M OD ÉLISATION
• Modélisation structurée
Approche par compositions de RdPs
32
Exemple C HAPITREmémoire
: Partage d’une 2 par deuxMprogrammes
OD ÉLISATION
informatiques
32 C HAPITRE 2 M OD ÉLISATION

41
Structures fondamentales pour la modélisation des systèmes
• Modélisation structurée
G. S CORLETTI ET G. B INET
Approche par compositionsVde ERSION P ROVISOIRE DU 20 JUIN 2006
RdPs 33

Exemple : Producteur/Magasin/Consommateur
F IG . 2.32 – Exemple de fusion de places

Nbr emplacements
Livraison vides en stock consommation

Fin Depot Achat


Production Magasin

Production Nbr produits va aux courses


en stock

PRODUCTEUR MAGASIN CONSOMMATEUR

F IG . 2.33 – Producteur magasin consommateur

42
Références :
1.Réseaux de Petri, Cours EL401T2, G. Scorletti et G. Binet,
Université de Caen, 2006.
2.Réseaux de Petri: Formalisme, Pascal Racloz, Didier Buchs, 1995.

43

Vous aimerez peut-être aussi