Académique Documents
Professionnel Documents
Culture Documents
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 1
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 2 © Techniques de l’Ingénieur, traité Informatique industrielle
____________________________________________________________________________________________________ APPLICATIONS DES RÉSEAUX DE PETRI
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 3
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
t1 B1 t2 B2 t3
p1 c9
P1
t1 B1 t2 B2 t3
M1(3) M2(1) M3(4)
t4 B3 t5 P1
M1(2) M2(2) c1 p2
c5
t6 B4 t7
t4 t5
P3 P2
M1(1) M2(1)
c4 M1(2) B3 M2(2)
t8 B5 t9 c2 c6 c8
P3 p3
M1(1) M2(1) t6 t7
P3
Figure 3 – Modèle des gammes de fabrication
M1(1) B4 M2(1)
c3 c7
p1
p4
t1 B1 t2 B2 t3
t8 t9
P1 P3
P3 t8 t9
2.3 Évaluation des performances
On s’intéresse d’abord au dimensionnement du système afin
d’assurer les propriétés qualitatives du réseau et les propriétés stati-
M1(1) B5 M2(1) ques du système. Dans un deuxième temps, on cherchera à évaluer
les performances du système modélisé puis à optimiser la produc-
Figure 4 – Circuits de fabrication tion.
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 4 © Techniques de l’Ingénieur, traité Informatique industrielle
____________________________________________________________________________________________________ APPLICATIONS DES RÉSEAUX DE PETRI
2.3.1 Dimensionnement Ainsi, dans le mode de fonctionnement FT, le tir d’une transition
débute dès qu’elle est franchissable. On sait que sous ce mode, un
régime périodique s’établit en un temps fini. Plus précisément, on
Le graphe du réseau obtenu est tel que chaque place a une et une définit pour tout circuit γ de l’ensemble Γ des circuits élémentaires
seule transition en entrée et une et une seule transition en sortie. De du GET le temps de cycle associé au marquage M du réseau. C’est
plus, chacun des arcs du réseau est pondéré à 1. Un tel réseau est le nombre π (γ ) défini par :
appelé un graphe d’événements temporisés (GET). Les GET présen-
tent l’avantage essentiel d’être bien adaptés à l’analyse des systè- µ(γ )
π ( γ ) = -------------
mes de production qu’ils modélisent. Leurs propriétés sont M(γ )
relativement simples à établir et un grand nombre de travaux ont
permis de bien comprendre ces propriétés. avec µ (γ ) somme des durées des tirs des transitions du circuit,
Le graphe du réseau obtenu est un GET fortement connexe. On M (γ )nombre de jetons dans ce circuit.
sait qu’un GET fortement connexe est vivant si, et seulement si, Il vient donc, en notant θ (t ) la durée de tir d’une transition t
chaque circuit élémentaire du graphe, c’est-à-dire chaque circuit ne quelconque :
repassant pas deux fois par le même sommet, contient au moins un
jeton. Le GET est alors borné, réversible et consistant. En raison du
nombre de circuits élémentaires γ, nous n’en donnons qu’un sous-
∑ θ(t)
t∈γ
π ( γ ) = ------------------------
-
ensemble.
∑ M(p)
1. Circuits de fabrication : p∈γ
— γ 1 = < t 1 , B 1 , t 2 , B 2 , t3 , p 1 > ; Dans le cas déterministe, pour lequel les durées de tir des transi-
— γ 2 = < t4 , B 3 , t5 , p 2 > ; tions sont connues et constantes, µ (γ ) est constant et connu. On sait
— γ 3 = < t6 , B 4 , t7 , p 3 > ; d’autre part que dans un GET, la somme M (γ ) est constante pour
— γ4 = < t8, B5, t9, p4 >. tout circuit élémentaire γ. Par conséquent, π (γ ) caractérise le circuit γ.
2. Circuits de commande : Considérons par exemple le GET du réseau de la figure 5 dans
— γ5 = < t1, c1, t4, c2, t6, c3, t8, c4 > ; lequel nous supposons pour commencer que chacune des places
— γ6 = < t2, c5, t5, c6, t7, c7, t9, c8 > ; (pi)i = 1,…,4 des circuits de fabrication contient un jeton. On obtient
— γ7 = > t3, c9 >. les circuits suivants.
3. Circuits mixtes : 1. Circuits de fabrication :
— γ8 = < t1, c1, t4, B3, t5, c6, t7, c7, t9, c8, t2, B2, t3, p1 > ;
— γ9 = < t1, c1, t4, c2, t6, B4, t7, c7, t9, c8, t2, B2, t3, p1 > ; 8 4 3 2
π (γ1) = --- = 8 ; π (γ2) = --- = 4 ; π (γ3) = --- = 3 ; π (γ4) = --- = 2 .
— γ10 = < t1, c1, t4, c2, t6, c3, t8, B5, t9, c8, t2, B2, t3, p1 > ; 1 1 1 1
— etc. 2. Circuits de commande :
Les trois circuits de commande contiennent déjà un et un seul
jeton. Chacun des circuits mixtes est marqué en c3 ou en c7. Il reste 7 6 4
π (γ5) = --- = 7 ; π (γ6) = --- = 6 ; π (γ7) = --- = 4 .
donc à dimensionner les circuits de fabrication. Le fonctionnement 1 1 1
d’un GET est habituellement étudié selon deux modes de fonction-
nement. Ces modes déterminent les performances du système 3. Circuits mixtes :
modélisé. 15 14 13
π (γ8) = ------ = 7, 5 ; π (γ9) = ------ = 7 ; π (γ10) = ------ = 6,5 ; etc.
Dans un premier mode, une transition est tirée dès qu’elle est 2 2 2
sensibilisée, à condition qu’elle ne soit pas déjà engagée dans une
phase de tir. On parle de fonctionnement au plus tôt du GET. Dans On définit alors le temps de cycle du GET. C’est le temps de cycle
la suite, nous désignons ce mode de fonctionnement par l’expres- donné par : π* = maxγ ∈ Γ π (γ ). Les circuits élémentaires γ* dont le
sion mode FT. temps de cycle est π* sont appelés les circuits critiques du GET. Ce
Dans un second mode, les transitions sont franchies de façon sont eux qui imposent leur vitesse au système. Dans l’exemple
périodique. On parle alors de fonctionnement périodique ou mode précédent, le GET possède un circuit critique : c’est le circuit de
FP. Dans la suite de cette partie, nous n’envisageons que le mode fabrication γ1 dont le temps de cycle est 8. On démontre que dans le
FT. mode de fonctionnement FT et lorsque le régime permanent est
Nota : le lecteur intéressé trouvera en bibliographie [1] [R 7 252], référence [5] lui per- atteint, le nombre de jetons qui circulent dans le système par unité
mettant d’étudier le mode périodique. 1
de temps est ρ = ------ . Pour augmenter la vitesse de fonctionnement
Pour assurer la non-réentrance des tirs des transitions, c’est-à- π∗
dire pour empêcher le tir d’une transition déjà dans une phase de tir, du système, il faut donc ajouter des jetons dans le circuit critique.
nous supposons qu’à chacune d’elles est associée une place initia- Comme dans un GET, le nombre de jetons dans un circuit élémen-
lement marquée à 1 et telle que cette place est à la fois entrée et taire est invariant, il reste égal au nombre de jetons du marquage
sortie de la transition. Une telle boucle est représentée en figure 6. initial M0. il vient donc :
Ces boucles ne sont pas représentées dans les réseaux que nous
µ(γ∗)
étudions. π∗ = -------------------
M0 ( γ ∗ )
En posant St (k) la date du début du k e franchissement de la transi-
tion t, on a, sous le mode de fonctionnement FT, qu’il existe deux
entiers naturels k0 et K tels que :
(∀t ∈ T ) (∀k > k0) (St (k + K ) = St (k) + K π*)
t p
avec T ensemble des transitions.
Cette équation exprime la propriété annoncée plus haut sur
l’établissement du régime périodique du mode FT.
Nous avons vu dans les paragraphes précédents que le temps de
Figure 6 – Boucle sur une transition temporisée cycle du GET dépend du marquage initial du réseau. Le problème
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 5
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
fondamental consiste donc à atteindre une performance donnée du On démontre alors qu’un marquage M est une solution admissi-
système modélisé en minimisant le coût engendré par la présence ble si, et seulement si :
des jetons dans le réseau. C’est ce problème qui est étudié ci-après.
µ(γ )
(∀p ∈ P) min γ ∈ Γp M ( γ ) – ----------- > 0 )
α
2.3.2 Optimisation du marquage Γp désigne l’ensemble des circuits élémentaires qui contiennent
la place p. On montre aussi que l’évaluation des
Soit alors le vecteur µ(γ )
min γ ∈ Γ p M ( γ ) – -----------
W = t (w1, w2, …, w|P |) ∈ R + |P | α
avec |P¨| nombre de places (cardinal de l’ensemble P) peut être transformée en un problème de recherche des plus courts
qui associe le coût wi à chacun des jetons de la place (pi)i = 1,…,|P |. Le chemins dans un graphe orienté et ne nécessite donc pas l’énumé-
coût total engendré par les jetons circulant dans le réseau, pour un ration des circuits élémentaires du graphe. Soit alors } (α) l’ensem-
marquage M, est donné par : ble des marquages tels que :
Z W (M ) = t W M µ(γ )
(∀p ∈ P) min γ ∈ Γp M ( γ ) – ----------- ∈ [ 0 ;1 [
α
On souhaite que la fonction linéaire ZW (M ) à minimiser ne
dépende pas de l’état du système, c’est-à-dire qu’elle reste indépen- Les résultats précédents permettent de démontrer que :
dante du marquage du réseau. Par conséquent, en notant ! (M0), — tout marquage M de } (α) est une solution admissible de PLN
l’ensemble des marquages accessibles depuis le marquage initial (α, FT) ;
M0, cette fonction est telle que : — } (α) contient au moins une solution admissible optimale du
(∀M0 ∈ N |P |) (∀M ∈ ! (M0)) (t W M = t W M0) problème PLN (α, FT).
De ce théorème, on déduit un algorithme appelé algorithme
C’est la définition d’un P-invariant lorsque W est un vecteur de
d’ajustement pour résoudre le problème d’optimisation. Une procé-
rationnels positifs ou nuls.
dure par séparation et évaluation utilisant l’algorithme d’ajuste-
Étant donné un P-invariant W et α un réel positif évaluant la ment pour déterminer les bornes supérieures et la programmation
performance attendue, le problème d’optimisation du marquage linéaire pour déterminer les bornes inférieures, a également été
initial, noté PLN (α, FT) dans la suite, consiste à déterminer le proposée pour résoudre ce problème. Son étude dépasse le cadre
marquage initial M0 minimiser ZW (M0) = t W M0 sous les de cet article.
contraintes :
π* < α (∀pb ∈ Pb) (M0 (pb) = 1) (1)
2.3.3 Application à l’exemple d’introduction
Nota : PLN programmation linéaire en nombres entiers.
Dans ce problème, Pb désigne l’ensemble des places du réseau À titre d’exemple d’application, nous montrons comment résou-
réalisant une boucle pour éviter la réentrance des transitions. Le dre le problème PLN (α, FT) énoncé en (1) pour le cas étudié dans
problème (1) est alors équivalent à minimiser ZW (M0) = t W M0 sous cette partie.
les contraintes : Soient t W un P-invariant et t X = (xij) la matrice définie par :
m < α t X M0 (∀pb ∈ Pb) (M0(pb) = 1) (2) 1 si p j ∈ γ i
tX
x ij =
avec défini dans le paragraphe 2.3.3. 0 sinon.
Pour le problème PLN (α, FT), un marquage M est une solution Ainsi, la matrice t X est la matrice dont les lignes sont les compo-
admissible si, et seulement si : santes de P-invariants associés à chacun des circuits élémentaires
du GET. En raison de leur nombre, la matrice t X comporte unique-
µ(γ )
(∀γ ∈ Γ) ------------- < α ment un sous-ensemble des P-invariants. Pour notre exemple, voir
M(γ ) encadré 1.
Encadré 1
p1 B1 B2 p2 B3 p3 B4 p4 B5 c1 c2 c3 c4 c5 c6 c7 c8 c9
γ1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
γ2 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
γ3 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
γ4 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0
tX = γ5 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0
γ6 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0
γ7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
γ8 1 0 1 0 1 0 0 0 0 1 0 0 0 0 1 1 1 0
γ9 1 0 1 0 0 0 1 0 0 1 1 0 0 0 0 1 1 0
γ10 1 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 0
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 6 © Techniques de l’Ingénieur, traité Informatique industrielle
____________________________________________________________________________________________________ APPLICATIONS DES RÉSEAUX DE PETRI
Nous avons reconnu précédemment γ1 comme circuit critique. On 2.4 Notes bibliographiques
diminue le temps de cycle du système, autrement dit, on augmente et conclusion
la productivité, si on augmente le nombre de jetons dans le circuit
critique. Une augmentation du nombre de jetons dans un autre
circuit reste sans effet. Comme par ailleurs, le nombre de jetons On trouve une analyse détaillée des résultats utilisés dans cette
dans les circuits de commande est nécessairement fixé à 1, c’est la partie en bibliographie (référence [4]). Ces résultats sont mis en
machine la plus chargée, c’est-à-dire celle dont le temps de cycle est œuvre dans de nombreux exemples appliqués aux systèmes de
le plus élevé, qui impose son rythme. Le problème d’optimisation production, référence [1]. Ces deux références fournissent de plus
consiste donc à augmenter le nombre de jetons dans les circuits une bibliographie abondante sur le sujet. Des informations complé-
critiques, ici γ1, pour ramener leur temps de cycle à celui du circuit mentaires sur les applications des réseaux de Petri aux systèmes
de la machine M1, c’est-à-dire γ5, pour laquelle on a π (γ5) = 7. Soit manufacturiers pourront être trouvées dans l’article de synthèse [3].
alors α = max γ ∈ Γ c π ( γ ) , où Γc est l’ensemble des circuits de Dans ce paragraphe 2, nous avons développé l’étude d’un cas
contrôle. Ici, on a α = 7. Le problème consiste donc à déterminer le concret mais élémentaire. Nous avons successivement abordé la
modélisation, le dimensionnement et l’évaluation des performances
marquage initial M0 du réseau qui minimise ZW (M0) = t W M0 pour d’un atelier de type job-shop cyclique modélisé par un graphe
le P-invariant choisi. On sait que l’un des P-invariants d’un GET d’événements temporisés. Les principaux résultats du domaine ont
modélisant un job-shop à fonctionnement cyclique est le P-invariant été présentés.
W dont toutes les composantes valent 1. Soit alors t (m0, m1, …,
m17) le marquage initial du réseau. On note x l’entier supérieur ou
égal à x. Le problème (2) s’écrit :
i = 17
3. Mise en œuvre
minimiser ∑ mi d’un système
i=0
sous les contraintes : Dans ce paragraphe, la mise en œuvre d’un système de planifica-
8 tion de production fondée sur les réseaux de Petri est présentée.
m0 + m1 + m2 > --- =2 Ce travail a été réalisé dans le cadre de la convention CIFRE
7
(Convention industrielle de formation par la recherche en entre-
prise) entre le laboratoire d’Informatique de l’Université « François
m3 + m4 > 4
--- =1 RABELAIS » de Tours et la société BSN/Emballage (groupe Danone).
7
Dans un premier temps, nous présenterons le contexte industriel, le
problème de planification à résoudre, les techniques classiques de
m5 + m6 > 3
--- =1 résolution et leurs limites. Nous présenterons ensuite la modélisa-
7
tion du problème avec les réseaux de Petri et le principe de la réso-
lution. Enfin, nous détaillerons la mise en œuvre et nous établirons
m7 + m8 > 2
--- =1 le bilan de ce projet.
7
,5
m0 + m2 + m4 + m9 + m14 + m15 + m16 > 7
--------- –1=1
7 3.1 Contexte industriel
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 7
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
Sable STOCKAGE
+ Soude CIRCUIT DE PRODUCTION
+ Calcaire MÉLANGE
+ Groisil Four
Feeder
1 550 °C 1 200 °C
PESAGE
Paraison
Bassin de fusion Bassin
de travail
550 °C
horizon de planification. Cet horizon se subdivise en périodes système d’équations (c), les fabrications sur les fours permettent de
discrètes de durées égales. Par exemple, l’horizon peut être l’année satisfaire les demandes commerciales dans chaque période. La
et une période le mois. Sur ces périodes, le plan de production indi- formulation du programme mathématique du PTS est donnée par le
que les commandes prévisionnelles qui seront fabriquées sur l’outil système d’équations (3).
de production dans chaque période.
i=m j= n k= K
La planification est généralement étudiée suivant trois niveaux :
stratégique, tactique et opérationnel. Le niveau stratégique surveille
(a) min z = ∑ ∑ ∑ cijk xijk
i =1 j = 1 k = 1
l’adéquation de l’outil de production à l’évolution de la demande. Le
niveau tactique planifie la fabrication des articles sur l’outil de soumis aux contraintes
production, sur un horizon glissant de douze mois. Le niveau opéra- j=n a=k
(3)
tionnel affecte les articles au jour le jour sur les différentes lignes de (b) ∑ ∑ xija = a ik ∀ i = 1, … , m ∀ k = 1, … , K
production. L’objectif est de maximiser à chaque niveau les bénéfi- j = 1 a =1
ces de l’entreprise. Cela revient pour un prix de vente donné à mini- i =m a = k
miser les coûts de fabrication et de transports des livraisons. (c) ∑ ∑ xija = b jk ∀ j = 1, … , n ∀ k = 1, … , K
La taille du problème à résoudre est telle que l’optimisation doit i = 1 a =1
faire place au savoir-faire du décideur. Ce type de comportement est
fondé sur une succession de raisonnements locaux. Il peut conduire avec aik (t) offre du four i à la période k,
à des solutions sous-optimales et ainsi faire passer à côté de solu- bjk (t) quantité demandée à la période k,
tions tant audacieuses que pertinentes. Pour cela, BSN/Emballage cijk coût de transport d’une unité de la demande j depuis l’offre
utilise un logiciel spécifique, appelé ARIANE [5], qui permet de i à la période k,
résoudre le problème d’optimisation. Le problème de planification
est formulé par un programme mathématique reposant sur le xijk quantité de la demande j transportée depuis l’offre i à la
problème de recherche opérationnelle appelé le problème de trans- période k.
port simple (PTS). La formulation du PTS permet de résoudre celui L’approche d’ARIANE est fondée sur l’utilisation de solveurs de
de la planification des fours afin de minimiser les coûts de transport. type boîte noire. Le décideur fournit des données du problème à
Ce programme mathématique repose sur les variables xijk qui résoudre, puis la résolution est lancée sans interaction avec celui-ci.
mémorisent la quantité en tonnes de verre du four i affectée à la La solution est affinée par des mises à jour des données en entrée et
commande j à la période k. Il va de soi que l’objectif est de minimi- en recommençant entièrement le processus de résolution. La plani-
ser la valeur z égale à la somme des coûts multipliée par les quanti- fication se fait donc par essai/erreur. Si un trop grand nombre de
tés affectées (a). Deux systèmes d’équations déterminent les données en entrée sont simultanément modifiées entre deux réso-
contraintes du problème à respecter. Le système d’équations (b) lutions, les résultats correspondants seront difficiles à interpréter.
indique que la somme des fabrications d’un four i affectée aux En d’autres termes, la solution est mal contrôlée et nécessite un
demandes j utilise toutes la capacité du four par période k. Dans le apprentissage de l’utilisation d’ARIANE.
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 8 © Techniques de l’Ingénieur, traité Informatique industrielle
____________________________________________________________________________________________________ APPLICATIONS DES RÉSEAUX DE PETRI
3.2 Modèle du système de planification représentée dans le réseau de Petri. Clairement, l’optimisation d’un
programme linéaire peut être vue comme la recherche d’une
séquence optimale pour atteindre un marquage Mf depuis M0.
3.2.1 Modélisation des programmes linéaires Nous avons montré [2] que tout programme linéaire peut être
modélisé par un réseau de Petri. Nous récapitulons dans le
tableau 1 les relations entre un programme linéaire et un réseau de
L’inconvénient du modèle mathématique présenté dans le para- Petri.
graphe précédent (système d’équations (3)) est lié à sa représenta-
tion mathématique en terme d’équations séparées. Nous allons
présenter maintenant comment modéliser ce problème mathémati- 3.2.2 Modélisation de la planification
que avec des réseaux de Petri. L’apport de ce nouveau modèle sera des fours et des machines
la représentation sous la forme d’un graphe. Dans le para-
graphe 3.3, nous présenterons l’intérêt de ce modèle réseau de Petri Sur un horizon T donné, les commandes (prévisionnelles ou
pour guider la résolution du problème par le décideur. fermes) sont connues par bouteille et par teinte. Le couple machine/
Un programme mathématique est dit linéaire si toutes les équa- bouteille fixe la cadence de production. L’objectif de la planification est
tions utilisées sont des équations linéaires. On peut toujours formu- d’affecter les teintes aux fours, puis les commandes aux machines.
ler un tel programme mathématique de la façon suivante (appelée
Le modèle réseau de Petri du système de planification va utiliser
forme standard), défini par les relations matricielles :
trois types de places : les places fours où le marquage indiquera la
t disponibilité en heures sur T, les places machines/teinte dont le
[ Opt ] z = X D marquage indiquera le nombre d’heures de fonctionnement dans
soumis aux contraintes une teinte donnée et les places demandes dont le marquage indique
(4)
CX = b le nombre de bouteilles commandées dans chaque teinte. Deux
types de transitions vont être utilisés : les transitions affecter_teinte
X>0 qui assurent la répartition des heures de fonctionnement entre les
places fours et machines/teinte et les transitions fabrications qui
avec [Opt]direction de l’optimisation : min pour minimiser la
modélisent la répartition des heures machines aux différentes
fonction objectif z et max pour maximiser z,
commandes. Les coûts associés aux transitions modélisent d’une
X vecteur des variables, part les coûts de matière première et de fusion et d’autre part, les
C matrice des contraintes, coûts de fabrication et de moulerie. Nous notons figure 9, kij la
cadence de la machine i pour produire un modèle j. Cette figure
D vecteur des coefficients de la fonction objectif,
donne la formulation du problème résolu dans Ariane. Pour le
b vecteur second membre des contraintes. marquage initial, seules les places fours sont marquées et pour le
Remarquez que l’unique différence entre ce programme linéaire marquage final, les places demandes doivent contenir le nombre de
et l’équation d’état d’un réseau de Petri est le second membre. Nous jetons nécessaire.
pouvons définir le second membre comme la différence entre le
marquage final Mf (à atteindre) et le marquage initial M0. Posons
b = Mf – M0. La matrice C des contraintes est la matrice d’incidence
du réseau (C (i, p) en désignent les composantes). Alors C X = b x1 x3
devient l’équation d’état.
Par exemple, la contrainte x1 – x2 + 2x3 – 4x4 = 3 se modélise par
le réseau de la figure 8. Le comportement du réseau doit assurer Mf 2
(p) – M0 (p) = 3 pour respecter la contrainte. Le respect d’une
contrainte est donc modélisé comme un problème d’accessibilité
d’un marquage Mf depuis M0. En utilisant ce principe, chaque
4
contrainte est modélisée par une place dans le réseau de Petri. Il
reste maintenant à modéliser la fonction objectif en terme de fonc-
tionnement sur le réseau. Dans un réseau de Petri, une seule transi-
x2 x4
tion est tirée à la fois. Ainsi, en associant un coût à chaque tir d’une
transition, il est possible de connaître à tout instant la valeur de la
fonction objectif. La direction de l’optimisation (min, max) n’est pas Figure 8 – Modélisation d’une contrainte linéaire
(0)
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 9
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
∑ k ij x ij = b j ∀j = 1, …, n (demandes)
(5)
i=1
j= n
Fabrications
c1,1 c1,2 c2,1 c2,2 ∑ xij = C max ∀i ∈ M f , ∀f = 1, …, F (équilibrage)
j=1
x ij > 0 ∀ i = 1, … , m ∀ j = 1, … , n
Évidemment, la taille du réseau devient rapidement très importante.
Modèle 1/teinte 1 Modèle 2/teinte 1 Nous verrons dans le paragraphe 3.4 comment générer automatique-
ment le réseau de Petri modélisant le système de planification. Nous
Demande modèle/teinte présentons maintenant comment le modèle réseau de Petri va contri-
Figure 9 – Modèle du système de planification
buer à la résolution du problème de planification.
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 10 © Techniques de l’Ingénieur, traité Informatique industrielle
____________________________________________________________________________________________________ APPLICATIONS DES RÉSEAUX DE PETRI
s1 a1 M1 s2 a2 M2 s3 a3 M3
Cmax
k11 k32
k12 k22 k23
k21 k33
k31 k13
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Informatique industrielle S 7 254 − 11
APPLICATIONS DES RÉSEAUX DE PETRI ___________________________________________________________________________________________________
Transition four/teinte/machine/modèle
4. Conclusion générale
Arc production commande Cet article a introduit l’utilisation des réseaux de Petri dans la
production manufacturière à partir de deux exemples.
Place modèle/teinte Dans une première partie, l’étude d’un cas concret a montré
comment modéliser une ligne de fabrication simple. Le dimension-
nement et l’évaluation des performances du système ont été étudiés
Figure 12 – Squelette du réseau modélisant le problème à partir du graphe d’événements temporisés obtenu lors de la phase
de planification de modélisation. Cet exemple a permis de mettre en évidence, au
moins partiellement, quelques avantages de l’approche par réseaux
de Petri. Nous avons ainsi montré succinctement qu’une même
est effectuée par deux requêtes SQL. Le nombre de tirs d’une transi- famille d’outils est utilisée pour la spécification, la modélisation,
tion donnée est mémorisé dans la table « transition » dans le l’analyse qualitative, le dimensionnement et l’évaluation des perfor-
champs tirs. mances du système étudié.
L’ensemble de ces requêtes permet de définir la construction La deuxième partie de cette étude a décrit la mise en œuvre d’un
manuelle et progressive d’une solution du problème de planification. système de planification de production. Ce cas industriel a présenté
Toutefois, l’utilisateur reste libre d’utiliser la représentation du réseau diverses techniques de résolution de ce problème et a permis de
de Petri sous forme d’un programme linéaire pour recourir à l’optimi- compléter l’étude précédente en mettant en évidence d’autres avan-
sation mathématique d’une sous-partie du problème général. tages de l’approche par réseaux de Petri. La même famille d’outils a
été utilisée à différents niveaux d’analyse, comme l’ordonnance-
ment, la planification, la coordination globale et le contrôle local de
3.5 Conclusion production.
L’article a ainsi abordé quelques-unes des techniques, basées sur
Nous avons présenté une approche fondée sur les réseaux de les réseaux de Petri, permettant de seconder les ingénieurs de
Petri pour planifier la production de bouteilles en verre. La résolu- production dans leur travail.
tion semi-automatique du problème est alors possible. La résolution
manuelle est faite par un joueur de jetons interactif où le décideur Informations pratiques et activités des groupes de recherche.
choisit les transitions à franchir. La résolution automatique s’obtient Serveur internet de l’université de Arrhus au Danemark conte-
par la résolution du programme linéaire associé au réseau de Petri. nant des outils logiciels en-ligne :
L’apport des réseaux de Petri tient dans la possibilité d’enchaîner http://www.daimi.aau.dk/PetriNets/
ces deux modes de fonctionnement. Serveur du groupe francophone sur les réseaux de Petri. Il
L’expérience menée au sein du service planification de production tient à jour une liste d’ouvrages concernant le domaine :
de BSN/Emballage montre l’intérêt pour la méthode mais la modéli- http://www.ec-lille.fr/~rdp
Références bibliographiques
[1] PROTH (J.M.) et XIE (X.). – Les réseaux de [3] SILVA (M.) et VALETTE (R.). – Petri Nets and [5] PROUST (C.) et GRÜNENBERGER (E.). – Pla-
Petri pour la conception et la gestion des sys- Flexible manufacturing (Réseaux de Petri et nification de production dans un contexte de
tèmes de production. 292 p., bibl. (67 ref.), systèmes de production). Lectures Notes in Flowshop hybride : conception et interpro-
1995 MASSON 120, boulevard Saint-Ger- Computer Sciences, Advances in Petri Nets, grammation de ARIANE 2000. Revue d’Auto-
main, 72580 PARIS Cedex 06. n° 424, 1989, pages 374 à 417, 6 figures, matique et de Productique Appliquée, vol. 8,
bibl. (172 ref.), Springer-Verlag, D-69042 Hei- n° 5, 1995, pages 715 à 734.
[2] RICHARD (P.). – Contribution des réseaux de
delberg, Germany.
Petri à l’étude des problèmes de recherche
opérationnelle. 174 p., bibl. (142 ref.), 1997
Dans les Techniques de l’Ingénieur
Thèse de doctorat, Université « François [4] XIE (X.). – Analyse, conception et contrôle [6] LADET (P.). – Outils de modélisation des
RABELAIS », École d’Ingénieurs en Informa- des systèmes de production. 250 p. bibl. (150 automatismes séquentiels. Les réseaux de
tique pour l’Industrie, 64 Avenue jean Porta- ref.), 1995 HDR en Sciences, Université de Petri. Traité Mesures et Contrôle, n° R 7 252,
lis, 37200 TOURS. METZ. 1989, pages 1 à 16, 32 figures, bibl. (4 ref.).
Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
S 7 254 − 12 © Techniques de l’Ingénieur, traité Informatique industrielle