Cours Opt. Int RDP
Cours Opt. Int RDP
TELMOUDI
Chapitre 1
Les Réseaux de Petri
Théorie, propriétés et applications
1. Introduction générale
Comment réussir à appréhender le comportement des systèmes technologiques de plus en plus complexes,
afin de les concevoir, de les réaliser et/ou de les commander à partir d’un cahier des charges ?. Celui-ci est
en général défini par différents intervenants, intéressés par les aspects fonctionnels du produit, les besoins du
consommateur, les contraintes de coût, le marketing, etc... Du fait de la complexité de plus en plus forte des
systèmes technologiques, il apparaît de plus en plus nécessaire de disposer de méthodes et d’outils de
conception, de réalisation et/ou de commande qui soient particulièrement efficaces. Au centre de ces
méthodes et de ces outils, se trouve en général la modélisation des processus.
La mise en place des feux de signalisation d’un carrefour ou la planification du processus de développement
d’une pièce dans une usine demande la modélisation du problème afin de pouvoir le simuler, l’analyser et le
vérifier. Ces vérifications peuvent mettre en évidence des disfonctionnements non visibles. Il existe plusieurs
langages de modélisation et les outils qui les implémentent. Ces outils, selon les modèles qu’ils représentent,
permettent de simuler et de vérifier certaines propriétés. Ceci permet de suivre le fonctionnement du système
pour détecter les faiblesses. Pour cela ils peuvent vérifier entre autres :
L’activité : Vérifie si le fonctionnement d’une partie ou de tout le système évolue.
La répétitivité : Vérifie s’il y a des séquences qui se répètent dans le fonctionnement du système.
La bornitude : Caractérise la possibilité qu’une partie ou tout le système n’évolue plus, une fois
qu’un état spécifique est atteint.
La vivacité : Vérifie qu’un état du système puisse être atteignable, quel que soit l’état dans lequel il
se trouve.
La concurrence : Vérifie si le passage à un état entraîne la collaboration de deux ou plusieurs parties
du système.
L’objectif de ce cours est de présenter la modélisation par Réseaux de Petri. Ces Réseaux ont été développés
pour permettre la modélisation de classes importantes de systèmes qui recouvrent des classes de systèmes de
production, de systèmes automatisés, de systèmes informatiques et de systèmes de communication, pour n’en
citer que quelques-uns, afin de permettre leur conception, leur évaluation et leur amélioration.
Les Réseaux de Petri ont été inventés par Carl Maria Petri au début des années soixante. Des travaux
ultérieurs ont permis de développer les Réseaux de Petri comme un outil de modélisation des systèmes à
événement discrets. Le modèle Réseaux de Petri est à l’origine du Grafcet, qui est un langage graphique de
spécification et de programmation d’automates industriels.
P1 T P2 1
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Un graphe orienté est dit biparti, c'est-à-dire qu'un arc relie alternativement une place à une transition et une
transition à une place. Ainsi les situations suivantes sont interdites.
2.1.2. Le vocabulaire
[Link] Condition
Une condition est la description de l’état d’une ressource du système modélisé:
• une machine est au repos,
• une machine est en réparation
• une commande est en attente
Une condition est soit vraie, soit fausse. Un état du système peut être décrit comme un ensemble de
conditions.
Dans le formalisme des Réseaux de Petri, la condition est modélisée à l’aide d’une place.
[Link] Evénement
Un événement est une action qui se déroule au sein du système et dont la réalisation dépend de l’état du
système :
• début de traitement sur une machine,
• panne sur une machine
• début de traitement d’une commande
Dans le formalisme des Réseaux de Petri, l’événement est modélisé à l’aide d’une transition.
Exemple
Atelier de coupe de bois
• Conditions
- La machine de coupe est au repos
- Une commande est en attente
- La commande est en cours de traitement
- La commande est terminée.
• Evénements
- Une commande arrive
- La machine débute le traitement de la commande
- La machine termine le traitement de la commande
- La commande est envoyée pour la livraison.
Entrée (ou Pré) est une application, Entrée: P x T → N, appelée application d’incidence avant.
Notée Pré(p,t) ou Entrée(p,t) ou encore I(p,t), contient la valeur entière « n » associée à l’arc allant
de « p » à « t ».
2
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Sortie (ou Post) est une application, Sortie: P x T → N, appelée application d’incidence arrière.
Notée Post(p,t) ou Sortie(p,t) ou encore O(p,t) contient la valeur entière « n » associée à l’arc allant
de « t » à « p ».
p t k1,k2,i1,i2
représentent le
« p » est une place de sortie de la transition « t » si Post(p, t) > 0 poids des arcs
k2
k2=Sortie(p,t)>0
t p
i1
i1=Sortie(p,t)>0
t p
i2
i2=Entrée(p,t)>0
p t
Par convention, lorsque le poids n’est pas précisé sur un arc, alors ce poids vaut 1. Si aucun arc ne relie une
transition t à une place p, alors Sortie(p,t) = 0. De même, si aucun arc ne relie une place p à une transition t,
alors Entrée(p,t) = 0.
Transition source
Une transition source est une transition qui ne comporte aucune place d’entrée
t p
Transition puits
Une transition puits est une transition qui ne comporte aucune place de sortie
p t
Exemple de RdP
Modélisation d’un atelier de coupe de bois : Un atelier est constitué d’une machine de coupe et d’un
stock. Quand une commande arrive et que la machine de coupe est disponible, la commande peut
être traitée (Opération de découpe). Une fois le traitement terminé, la commande qui a été traitée est
stockée. Sinon, la commande doit attendre que la machine se libère avant de pouvoir être traitée.
3
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Commentaires
Chaque place contient un nombre entier (positif ou nul) de jetons. Elle indique la valeur de la
variable d’état associée à la place. Par exemple, la place P2 contient 2 jetons qui signifient 2
commandes en attente.
La présence des jetons dans les places indiquent l’état des ressources du système : Par exemple, dans
la place P1, un jeton indique que la machine est libre, alors que l’absence d’un jeton indique que la
machine n’est pas disponible. Un jeton dans la place P3 indique qu’une commande est en train d’être
traitée par la machine de coupe. Le nombre de jetons dans la place P4 indique le nombre de
commandes qui ont été traitées et stockées. La fin de la coupe par la machine se traduit par la
suppression du jeton dans la place P3 et par la création d’un jeton dans la place P1 et dans la place
P4. (voir règle d’évolution puls loin)
Les jetons d’une même place n’ont pas d’identité individuelle : elles sont indiscernables. Par
exemple, chaque commande en attente dans la place P2 est traitée de la même fac¸on que les autres.
Au cours de l’évolution du système, le marquage est susceptible d’être modifié (voir les règles d’évolution
d’un RdP). Le marquage initial, M0, d’un RdP correspond à la distribution initiale des jetons dans chacune
des places du RdP, qui précise l'état initial du système. Dans ce cas, on parle du Rdp Marqué par opposition
à un Rdp non marqué, c’est-à-dire pour lequel le marquage initial n’est pas précisé.
On note M(p) le nombre de jetons contenu dans la place p pour le marquage M. Dans l’exemple ci-dessous,
si l’état initial correspond à la répartition des jetons suivante, alors le marquage initial: M0 = [M0(p1), M0(p2)]
= [3, 0].
p1 t1 p2 t2
4
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
3
Un marquage peut être représenté sous forme d’un vecteur colonne: M 0 = [M 0 (p1 ), M 0 (p 2 )] = . T
0
Remarques :
Un jeton peut avoir plusieurs significations en fonction de la place dans lequel il se trouve.
Par exemple dans le RdP ci-dessous on considère que :
P1 représente un stock : le nombre de jetons en p1 indique le nombre de pièces stockées
P2 représente une machine en cours de traitement : un jeton en p2 indique que la machine traite une
pièce
P3 représente une machine libre : un jeton en p3 indique que la machine est libre.
p1 t1 p2 t2
p3
Les jetons d’une place n’ont pas d’identité individuelle, autrement dit ils sont indiscernables.
Ces jetons sont consommées et produites par les événements du système.
La présentation faite des Réseaux de Petri est une représentation graphique, alors qu’il est possible d’en
faire une représentation mathématique grâce à l’algèbre linéaire. Cette notation permet de représenter un RdP
de manière plus formelle mais moins lisible que la représentation graphique. Ainsi, Pre et Post sont
représentés par des matrices à q lignes (nombre de places), n colonnes (nombre de transitions).
Exercice : 3 t3
t1
Pour le RdP suivant : p1 p2 p3
Indiquer le marquage initial
Etablir la matrice d’entrée E
Etablir la matrice de sortie S 2
t2 t4
Solution :
Le marquage initial est Mo =[0 3 0]
Les matrice E et S sont:
p1 p2 p3 p1 p2 p3
0 1 0 t1 1 0 0 t1
E= 1 0 0 t2 S= 0 1 0 t2
0 3 0 t3 0 0 1 t3
0 0 1 t4 0 2 0 t4
5
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Une transition est validée (on dit aussi sensibilisée ou franchissable ou encore tirable) si toutes ses places
d’entrée contiennent au moins un jeton.
p1 p1
t1 t1
p2 p3 p2 p3
t1 t1
Tir de la
transition t1
p2 p3 p2 p3
M1=[3 M2=[2 0 2]
“Le franchissement de1la1]transition t1 à partir du marquage M1 conduit au marquage M2”, se note: M1 (t1
M2).
Exemple p1 p1
t1 t1
Tir de la
transition t1
p2 p2
M1=[2 1 1 1] M1=[1 0 2 2]
t2 t3 t2 t3
Tir de la
transition t1
p2 p3 p2 p3
M1=[1 1 1] M2=[2 1 1]
6
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
t1 p1 t1 p1
t2 t3 t2 t3
Tir de la
transition t3
p2 p3 p2 p3
M1=[1 1 1] M2=[1 1 0]
3 t p3
7 Transition t
non tirable
p2
p4
2
p1 p1
t 2 p3 t 2 p3
Tir de t
p2 p2
p4 p4
3 3
Exemple concret :
Une molécule d’eau est constituée de deux atomes d’hydrogène et d’un atome d’oxygène. Cette réaction
chimique peut être modélisée par un RdP :
H2
2 t1 2 t1
Tir de la
transition t1
O2 O2
H2O H2O
Remarques :
Lorsqu'une transition est validée, cela n'implique pas qu'elle sera immédiatement franchie; cela ne
représente qu'une possibilité de franchissement ou d’évolution du RdP.
Pour les RdP, il y a un seul franchissement à la fois :le réseau ne peut évoluer que par
franchissement d'une seule transition à la fois, transition choisie parmi toutes celles qui sont
validées à cet instant.
Le franchissement d'une transition est indivisible et de durée nulle.
7
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
En utilisant la notion d’algèbre linéaire, le franchissement (tir) d'une transition tj ne peut s'effectuer que si le
marquage de chacune des places pi directement en amont de cette transition est tel que :
i1 i2
pi tj
Le franchissement (tir) de tj consiste à retirer Pré (pi, tj ) jetons dans chacune des places directement en amont
de tj et à ajouter Post(pk,tj ) jetons dans chacune des places pk directement en aval de tj .
Le franchissement de tj conduit au nouveau marquage M' tel que :
∀pi ∈ P , M’(pi) =M(pi) - Pre(pi,tj) + Post(pi,tj)
tj
La différence des marquages M et M’ tels que M → M' est égale à Post – Pre. On introduit la matrice W, dite
matrice d'incidence telle que :
La jieme colonne de la matrice d’incidence W donne donc la variation du nombre de jetons dans chaque place
lors du franchissement de la transition tj. On peut par conséquent établir le nouveau marquage M’ à partir du
marquage M par franchissement de la transition tj en appliquant la règle suivante :
0
:
0
M' =M +W 1 ← transition t j
0
:
0
Exemple
8
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
0 -1 1 1
1 -1 0 0 1
M' = + . =
1 1 -1 1 0
2 0 1 3
A partir du marquage M’, le tir de T1, donne le nouveau marquage M’’ =[0 0 1 3]T qui peut être également
obtenu algébriquement par la relation :
1 -1 1 0
1 -1 0 1 0
M'' = + . =
0 1 -1 0 1
3 0 1 3
Enfin ce marquage peut être obtenu à partir du marquage initial par le franchissement de la séquence T2T1 de
la manière suivante :
0 -1 1 0
1 -1 0 1 0
M'' = + . =
1 1 -1 1 1
2 0 1 3
Exercice
Pour le réseau de Petri ci-contre:
Etablir la matrice d’incidence avant (Pre)
Etablir la matrice d’incidence arrière (Post)
Etablir la matrice d’incidence W
Etablir les marquages en utilisant l’algèbre
linéaire.
Exercice
Pour les RdP suivants, quelles sont les transitions tirables? Quelles seraient les répartitions des jetons après le
franchissement de chacune de ces transitions?
9
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Exercice à faire
L’évolution du RdP est représentée ci-dessous avec les marquages représentés sous la forme de vecteurs
colonnes L’évolution du RdP est représentée ci-dessous avec les marquages représentés sous la forme de
vecteurs colonnes
10
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
M2 = 0 [ 1 0 0 ]T
1
Tir de T3
Tir de T2
[
M1 = 0 1 1 0 0]T
Tir de T4
Tir de T2
Tir de T1 Tir de T3
Tir de T4
M3 = 0 [ 0 1 1 0 ]T M4 = 0 [ 0 0 1 1 ]T
Tir de T5
L’évolution du RdP peut être représenté sous la forme d’un graphe des marquages GA(R ; M0), dont les
sommets correspondent aux marquages accessibles.
0
1 Tir de T2
Tir de T3
M 2 = 0
0
1 0
1 0
0 1
Tir de T1 Tir de T4
M 0 = 0 M1 = 1 0
0 0 Tir de T2 M 4 = 0
0
1
0 0
0
1
M 3 = 1
1
Tir de T4 0
Tir de T5
Enfin, il est possible de représenter un graphe de marquage sous forme d’un « organigramme ». Ainsi pour
l’exemple ci-dessous, on aura :
11
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
[
M0 = 1 0 0 0 0 ]T
Tir de T1
[
M1 = 0 1 1 0 0]T
Tir de T3 Tir de T2
Tir de T4
[
M2 = 0 1 0 0 1]T M3 = 0 [ 0 1 1 0 ]T
Tir de T2
Tir de T4
[
M4 = 0 0 0 1 1 ]T
Le marquage dit initial décrit l’état initial du système. Ainsi, l'ensemble des marquages accessibles à
partir du marquage initial par franchissement d'une séquence de transition correspond à l'ensemble des états
du système. Contrairement aux graphes d'état (*), une place d'un RdP ne correspond pas à un état du système
mais participe, à travers son marquage, à la description d'un ou de plusieurs états du système. L'ensemble des
marquages accessibles est équivalent au graphe d'état représentant le comportement du système.
Remarques :
On utilise le graphe de marquages quand le nombre de marquages accessibles est fini.
La représentation graphique d’un graphe de marquage permet de déterminer certaines propriétés de
celui-ci. Par exemple si le graphe présente une zone non bouclée, cette partie du marquage une fois
atteinte constitue un arrêt de l'évolution du RdP et celui-ci sera déclaré avec blocage.
0
1 Tir de T2
Tir de T3
M 2 = 0
0
1 0
1 0
0 1
Tir de T1 Tir de T4
M 0 = 0 M1 = 1 0
0 0 Tir de T2 M 4 = 0
0
1
0 0
0
1
M 3 = 1
1
Tir de T4 0
Tir de T5
12
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Les Séquences de franchissement peuvent être notés différemment selon les auteurs. Par exemple, la
séquence qui conduit du marquage M0 au marquage M4 peut être notée :
S1 = T1 T3 T2 ou M0 (T1 T3 T2 M4 , M0(S1 M4), ou encore M0[S1 >M4).
S2 = T1T2T4T3T2T5 ou M0(T1T2T4T3T2T5 M0, M0(S2 M0), ou encore M0[S2 >M0).
S1 et S2 sont deux séquences possibles à partir du marquage initial M0 ; chacun des marquages est atteint
après le tir d’une transition permet le tir de la transition suivante dans la séquence.
Toute séquence de franchissement considérée à partir de M0 doit débuter par T1. La séquence S = T2T4T3,
n’est pas réalisable à partir de M0
De même, toute séquence de franchissement considérée à partir de M2 doit débuter par T2. La séquence S =
T3T4T2, n’est pas réalisable à partir de M2.
On définit S, vecteur caractéristique de la séquence S en précisant pour chaque transition le nombre de fois
où la transition est franchie dans la séquence.
L’équation fondamentale d’un marquage Mk à partir d’un marquage Mi est : M k = Mi + [Link] .
Cette équation permet de calculer en une seule opération, sans parcourir le réseau, le marquage obtenu après
le franchissement de la séquence complète.
Attention : Les résultats de l'équation fondamentale, même s'ils sont toujours calculables, n'ont de sens que
si la séquence représentée par S est effectivement réalisable.
A titre d’exemple, on considère la séquence de franchissement S = T1T2T4T2 du RdP précédent qui conduit
au marquage M1. Le vecteur caractéristique S = [1 2 0 1 0]T. On commence par établir la matrice d’incidence
W comme suit :
0 0 0 0 1 1 0 0 0 0 -1 0 0 0 1
1 0 0 1 0 0 1 0 0 0 1 -1 0 1 0
W = S- E = 1 0 0 0 0 - 0 0 1 0 0 = 1 0 -1 0 0
0 1 0 0 0 0 0 0 1 1 0 1 0 -1 -1
0 0 1 0 0 0 0 0 0 1 0 0 1 0 -1
Le marquage obtenu à partir du marquage initial M0 est alors :
1 -1 0 0 0 1 1 0
0 1 -1 0 1 0 2 0
M = M 0 + [Link] = 0 + 1 0 -1 0 0 0 = 1 ,
0 0 1 0 -1 -1 1 1
0 0 0 1 0 -1 0 0
qui correspond bien au marquage M1.
Attention : L’obtention d’un marquage à partir d’un autre ne signifie pas forcément l’unicité du vecteur
caractéristique. En effet, si on reprend l’exemple ci-dessous, on aboutit à partir du marquage initial M0 au
marquage M3 par franchissement de la séquence T1T3 (S=[1 0 1 0 0]T) ou par franchissement de la séquence
T1T3T2T4 (S=[1 1 1 1 0]T).
Une séquence est dite répétitive si à partir d’un marquage initial, on aboutit à un marquage final identique au
marquage initial.
Exemple :
Le tir de la séquence S = T3T2T1 conduit au même marquage initial :
1
0 −1 1 0 0 0
M = M 0 + [Link] = 2 + 1 2 × = 2
1
0 −1
1
0 0 −1 1 −2 0
0
Cette séquence est alors répétitive.
13
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Ne pas arbitrer un conflit structurel fait que le comportement n’est pas entièrement spécifié.
Algébriquement, on peut détecter la présence d’un conflit structurel :
Deux transitions Ti et Tj sont en conflit structurel si :
∃ Pk tel que Pre(Pk,Ti) x Pre(Pk,Tj) ≠ 0
La multiplication est effectuée terme à terme.
Exemple :
Lorsque la place P3 est marquée, les transitions T2 et T4 sont en conflit
structurel.
0 0 0
Pre(P3, T2) x Pre(P3, T4)= 0 x 0 = 0 ≠ 0
1 2 2
14
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Cela veut dire qu’il y a assez de jetons pour que l’une des deux transitions Ti ou Tj (exclusivement) soit
franchie mais pas les deux à la fois. Dans le réseau de Petri de la figure ci-dessous, les transitions T1 et T3
sont en conflit effectif pour le marquage initial M0 =[0 3 0]T:
1 -1 0 0 0
W = -1 1 -1 1 0
0 0 1 -1 00
Donc, la matrice d’incidence W ne contient donc pas (toujours) toute l’information sur la structure du RdP
Par ailleurs, la notion d’impureté n’est pas forcément une propriété contraignante. Elle permet de simplifier
la structure d’un RdP. L’exemple suivant constitue une bonne illustration de ce propos. En effet, on
considère la réaction chimique suivante qui doit se dérouler en présence d’un catalyseur (platine) :
H 2 + C2 H 4 platine
uuuuuuuur C2 H 6
15
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Le RdP représentant cette réaction chimique est donné par la figure de gauche. L’état du système va évoluer
quand la réaction chimique se produit (franchissement de la transition T1). La place P3 doit être
impérativement en entrée de la transition T1. Cependant, quand la réaction chimique se produit, le platine
étant un catalyseur, il n’est pas consommé. Par suite, la place P3 doit être en sortie de la transition T1 de
façon à restituer la ressource après que la réaction se soit produite.
Ce RdP n’est pas pur puisque la place P3 est à la fois place en entrée et en sortie de la transition T1. Par
contre, une description plus fine de la réaction chimique donne lieu au RdP pur donné par la figure à droite.
Cependant, il est plus complexe. Par description plus fine, on entend que la réaction chimique n’est pas
instantanée et les transitions T2 et T3 modélisent le début et la fin de cette réaction chimique.
Cet exemple montre que des “transitions impures” peuvent ainsi introduites pour simplifier le modèle RdP
d’un système.
Marquage initial : M0 = [1 1 0 0]
Tir de T1 M1 = [0 0 1 1]
Tir de T2 M2 = [0 1 2 0] blocage !
RdP
Remarques
RdP quasi vivant : Une transition Tj est quasi vivante pour un marquage initial M0 s’il existe une
séquence de franchissements à partir de M0 contenant Tj. Il s’en suit qu’un RdP est quasi vivant pour
un marquage initial M0 si toutes ses transitions sont quasi vivantes pour ce marquage initial.
Conséquemment, une transition qui n’est pas quasi-vivante est inutile!
Exemple d’une transition quasi-vivante:
RdP pseudo vivant : Un RdP est dit pseudo vivant si depuis le marquage initial, son évolution est
telle qu’il existe au moins une transition qui puisse être franchie.
17
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Soit un réseau R et un marquage M0. Une place Pj du réseau marqué (R,M0) est k-bornée si pour tout
marquage Mi accessible depuis M0, Mi (Pj) ≤ k.
Pj est k-borné ⇔ ∀ Mi accessible depuis M0, et Pj ∈ P, Mi(Pj) ≤ k
Un RdP marqué est borné si toutes ses places sont bornées.
Dans le cas contraire la place Pj est dite non bornée. Il s’en suit que le RdP est qualifié de non borné.
Exemple d’un réseau non borné
Marquages successifs :
Marquage initial : M0 = [0 0 1]
Tir de T2 M1 =[1 1 0]
Tir de T1 M2 =[0 1 1]
Tir de T2 M3 =[1 2 0]
Tir de T1 M4=[ 0 2 1]
Tir de T2 M5 =[1 3 0] …
Croissance infinie des jetons dans la place P2.
Dans la suite, les places non bornées le demeurent naturellement et ceci quelles que soient les transitions
franchies, ainsi le symbole ω ne disparaît jamais. Cette méthode produit le graphe de couverture, un graphe
fini dans tous les cas.
A revoir !
a
[Link] RdP autonome et non autonome
Un RdP autonome décrit le fonctionnement d'un système dont les instants de franchissement ne sont pas
connus ou indiqués.
Un RdP non autonome décrit le fonctionnement d'un système dont l'évolution est conditionnée par des
événements externes ou par le temps. Un RdP non autonome est synchronisé et/ou temporisé.
Ce RdP est autonome : le moment de passage d’une saison à une autre n’est pas indiqué.
19
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Exemple : On reprend l’exemple de l’atelier de découpe du bois. Si on considère que la capacité de stockage
des pièces traitées est 3 par exemple, le RdP associé est modifié de la manière suivante :
Le fonctionnement du RdP ordinaire considéré précédemment est détaillé ci-dessous. La place P2 ne peut
contenir qu’un maximum de 4 jetons.
20
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Montée
BP : Bouton départ de cycle
H Descente H : Fin de course haute
B : Fin de course basse
Rotation
B
Le système dispose de 3 entrées et 3 sorties. Il peut être dans l'un des trois états suivants :
Arrêté
Descente
Montée.
A chaque état on peut associer le ou les événements qui peuvent provoquer un changement d'état, par
exemple lorsque la perceuse est arrêtée, seul l'appui sur le BP provoquera un changement d'état, le système
est réceptif uniquement à BP pour cet état, de même que B pour l'état descente et H pour l'état montée.
On peut repérer des événements impossibles, par exemple : H et B ne peuvent pas être actionnés
simultanément.
Pour chaque état, il y a des conditions de sortie à remplir (actions) pour les actionneurs Rotation, Montée et
Descente. Ces éléments permettent la construction d'un Réseau de Pétri interprété.
21
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
2.2.1. Parallélisme
Le parallélisme représente la possibilité que deux ou plusieurs processus évoluent de manière simultané au
sein du même système à l’aide d’une transition ayant plusieurs places de sortie. Pour cela, le RdP doit
contenir la structure présentée ci-dessous :
2.2.2. Synchronisation
Synchronisation mutuelle
(par rendez-vous)
23
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Principe de fonctionnement: lorsqu’un jeton est déposé dans une place P, ce jeton doit rester au moins
pendant le temps T. On dit que le jeton est indisponible pendant cette durée. Quand la temporisation T s’est
écoulée, alors le jeton devient disponible.
A titre d’illustration, on considère l’exemple suivant dans lequel, on a associe une temporisation d1 pour la
place P1 et une temporisation d2 pour la place P2.
Indisponibilité du
jeton dans P1 d1
T2 non tirable
Disponibilité du
jeton dans P1
T2 tirable
Indisponibilité du
jeton dans P2 d2
T3 non tirable
Franchissement de
T3
Remarque
Les notions de séquences de franchissement, sont également définies dans ces réseaux mais dépendent
généralement de la notion de vitesse maximale: dès qu’une transition est validée elle est franchie ou un jeton
ne reste dans une place que pendant la durée de son indisponibilité.
Exemple : On reprend l’exemple de l’atelier de coupe (page 3) où on considère que la présence d’un jeton
dans la place P3 correspond au traitement d’une commande par la machine de coupe. La découpe elle-même
durera un certain temps d3. Quand un jeton est introduit dans la place P3 (début de découpe), il est nécessaire
de “bloquer” le jeton dans cette place pendant au moins un temps d3. Pendant ce de temps, le jeton n’est pas
disponible pour la validation de la transition T3.
24
Optimisation Intélligente Notes de Cours par A. J. TELMOUDI
Exercice
On considère le fonctionnement d’une entreprise de location de voitures. Cette entreprise a deux types de
clients :
chacun des N1 clients de type 1 utilise une voiture pendant une durée d1; le temps moyen entre deux
demandes est de dd1;
chacun des N2 clients de type 2 utilisent une voiture pendant une durée d2; le temps moyen entre
deux demandes est de dd2.
N0 représente le nombre de voitures de l’entreprise. Après chaque retour de location, la voiture passe au
garage pour entretien pour une durée de. On désire déterminer la durée d0 minimale d’attente d’une voiture
après entretien et avant location.
Approfondissement :
• Réseaux de Petri colorés
• Réduction des réseaux de Petri.
25