Вы находитесь на странице: 1из 102

+

INSA de Lyon
http://www.insa-lyon.fr

Département de Génie Electrique (G.E.)

Systèmes Automatisés de Production

Modélisation, Analyse de Performances et


Dimensionnement de systèmes à événements
discrets : approche par réseaux de Petri.

Xavier BRUN
xavier.brun@insa-lyon.fr

Laboratoire AMPERE
http://www.ampere-lyon.fr

Version 5.2
2
INTRODUCTION .................................................................................................................................................................... 6
1 DEFINITIONS ................................................................................................................................................................ 9
1.1 DEFINITION 1 : DEFINITION FORMELLE...................................................................................................................... 9
1.2 DEFINITION 2 : MARQUAGE D’UN RESEAU DE PETRI ................................................................................................ 10
1.3 DEFINITION 3 : SENSIBILISATION D’UNE TRANSITION............................................................................................... 10
1.4 REGLE FONDAMENTALE D’EVOLUTION : FRANCHISSEMENT D’UNE TRANSITION........................................................ 11
1.5 DEFINITION 4 : SEQUENCE DE TIR ........................................................................................................................... 12
1.6 DEFINITION 5 : MARQUAGE ATTEIGNABLE A PARTIR DE M0 ..................................................................................... 12
1.7 DEFINITION 6 : ENSEMBLE DES MARQUAGES ATTEIGNABLES A PARTIR DE M0 .......................................................... 13
1.8 DEFINITION 7 : RESEAU DE PETRI AUTONOME ......................................................................................................... 13
1.9 DEFINITION 8 : RESEAU DE PETRI NON AUTONOME.................................................................................................. 13
2 STRUCTURES PARTICULIERES ET SOUS-CLASSES ....................................................................................... 15
2.1 STRUCTURES PARTICULIERES .................................................................................................................................. 15
2.1.1 Convergence, Divergence ................................................................................................................................ 15
2.1.2 Boucle élémentaire, Réseau pur ....................................................................................................................... 15
2.1.3 Transition puits, Transition source .................................................................................................................. 15
2.1.4 Verrou et Trappe .............................................................................................................................................. 16
2.2 SOUS-CLASSES DE RESEAU DE PETRI ....................................................................................................................... 17
2.2.1 Les Graphes d’états.......................................................................................................................................... 17
2.2.2 Les Graphes d’événements ............................................................................................................................... 17
2.3 LES RESEAUX DE PETRI A ARCS INHIBITEURS ........................................................................................................... 18
QUELQUES EXEMPLES DE MODELISATION PAR RESEAU DE PETRI ................................................................ 19
EXEMPLE 1 : DISTRIBUTION ALIMENTAIRE (TYPE GRANDE SURFACE) ..................................................................................... 19
CAHIER DES CHARGES.......................................................................................................................................................... 19
EXEMPLE 2 : PROTOCOLE DE GESTION D’UNE PISCINE ............................................................................................................ 20
CAHIER DES CHARGES.......................................................................................................................................................... 20
EXEMPLE 3 : ATELIER DE MONTAGE DE CYCLE (PARTIEL) ...................................................................................................... 20
CAHIER DES CHARGES.......................................................................................................................................................... 20
EXEMPLE 4 : MODELISATION D’UN ATELIER DE PRODUCTION “EN ETOILE” ............................................................................. 21
CAHIER DES CHARGES.......................................................................................................................................................... 21
EXEMPLE 5 : MODELISATION DE REACTION CHIMIQUE : FABRICATION DE METHANOL ............................................................. 22
EXEMPLE 6 : GESTION DES PRIORITES .................................................................................................................................... 23
CAHIER DES CHARGES.......................................................................................................................................................... 23
3 PROPRIETES LIEES AU MARQUAGE .................................................................................................................. 25
3.1 BORNAGE ............................................................................................................................................................... 25
3.1.1 Place bornée pour M0 ...................................................................................................................................... 25
3.1.2 Réseau borné pour M0 ...................................................................................................................................... 25
3.1.3 Réseau sauf pour M0 ........................................................................................................................................ 26
3.2 VIVACITE ............................................................................................................................................................... 26
3.2.1 Transition 1 fois vivante pour M0 ..................................................................................................................... 26
3.2.2 Transition k fois vivante pour M0 ..................................................................................................................... 26
3.2.3 Transition infiniment vivante pour M0.............................................................................................................. 26
3.2.4 Réseau vivant pour M0 ..................................................................................................................................... 26
3.2.5 Réseau bloqué pour M0 .................................................................................................................................... 26
3.2.6 Réseau pseudo-vivant pour M0 ......................................................................................................................... 26
3.3 REINITIALISATION .................................................................................................................................................. 28
3.3.1 Etat d’accueil pour M0 ..................................................................................................................................... 28
3.3.2 Réseau réinitialisable pour M0 ......................................................................................................................... 28
3.4 PERSISTANCE ......................................................................................................................................................... 29
3.4.1 Réseau persistant pour M0 ............................................................................................................................... 29
3.4.2 Conflits effectifs et ordonnancement ................................................................................................................ 30
3.4.3 Structure de coalition ....................................................................................................................................... 31
4 REPRESENTATION MATRICIELLE ...................................................................................................................... 33
4.1 DEFINITION ............................................................................................................................................................ 33
4.2 MATRICE DE DESCRIPTION (OU D’INCIDENCE) ......................................................................................................... 33
4.2.1 Définition ......................................................................................................................................................... 33
4.2.2 Exemples .......................................................................................................................................................... 34
4.3 MATRICE D’ENTREE (MATRICE PRE), MATRICE DE SORTIE (MATRICE POST) ........................................................ 35
4.4 STRUCTURES PARTICULIERES .................................................................................................................................. 36
4.4.1 Les réseaux de Petri fortement connexes ......................................................................................................... 36

3
4.4.2 Les graphes d’états .......................................................................................................................................... 37
4.4.3 Les graphes d’événements ................................................................................................................................ 37
4.5 VECTEUR MARQUAGE ............................................................................................................................................. 38
4.5.1 Définition ......................................................................................................................................................... 38
4.5.2 Exemples .......................................................................................................................................................... 38
4.5.3 Sensibilisation (algébrique) d’une transition ................................................................................................... 38
4.5.4 Marquages successifs d’un marquage donné ................................................................................................... 39
4.5.5 Relation générale des réseaux de Petri ............................................................................................................ 40
5 ANALYSE DES RESEAUX DE PETRI ..................................................................................................................... 41
5.1 ARBRE DES ACCESSIBILITES (KARP ET MILLER) ...................................................................................................... 41
5.1.1 But .................................................................................................................................................................... 41
5.1.2 Principe général ............................................................................................................................................... 41
5.1.3 Algorithme........................................................................................................................................................ 41
5.1.4 Exemples .......................................................................................................................................................... 42
5.1.5 Conclusion sur la méthode de Karp et Miller .................................................................................................. 43
5.2 ANALYSE STRUCTURELLE ....................................................................................................................................... 43
5.2.1 Recherche des verrous minimaux ..................................................................................................................... 43
5.2.2. Recherche des invariants : T semi-flots et P semi-flots .................................................................................... 44
5.2.3 Conclusions sur les exemples des § 5.2.1 et 5.2.2 ............................................................................................ 49
5.2.4 Invariants et structures particulières ............................................................................................................... 50
5.2.5 Un résultat dans le cas général ........................................................................................................................ 53
5.2.6 En guise de résumé – Intérêt de l’analyse par les invariants ........................................................................... 53
5.3 LA SIMULATION EN EVENEMENTS DISCRETS ............................................................................................................ 54
6 LA VARIABLE TEMPS ET LES RESEAUX DE PETRI ........................................................................................ 55
6.1 LES RESEAUX DE PETRI P-TEMPORISES.................................................................................................................... 55
6.1.1 Définition formelle ........................................................................................................................................... 55
6.1.2 Sensibilisation d’une transition ........................................................................................................................ 55
6.1.3 Marquages disponibles, marquages indisponibles ........................................................................................... 55
6.1.4 Initialisation, franchissement et fonctionnement à vitesse maximale ............................................................... 56
6.1.5 Utilisation des réseaux de Petri P-temporisés.................................................................................................. 56
6.2 LES RESEAUX DE PETRI T-TEMPORISES ................................................................................................................... 57
6.3 APPLICATION DES RESEAUX DE PETRI P-TEMPORISES A L’ANALYSE DE PERFORMANCES ET AU DIMENSIONNEMENT .. 57
6.3.1 Fondement théorique ....................................................................................................................................... 58
6.3.2 Exemple élémentaire ........................................................................................................................................ 60
6.3.3 Graphe d’événements fortement connexe ......................................................................................................... 60
6.3.4 Quelques exemples dans le cas général ........................................................................................................... 61

ANNALES .............................................................................................................................................................................. 65
ATELIER DE PRODUCTION ............................................................................................................................................ 67
TRANSITIQUE ET COMMERCE ELECTRONIQUE CHEZ OOSHOP ............................................................................ 69
GESTION DE FLUX SUR UN PORTE-AVIONS .............................................................................................................. 71
PROBLEME : STATION DE SKI ....................................................................................................................................... 73
PROBLEME : ATELIER DE RECYCLAGE ....................................................................................................................... 75
USINAGE ET VERIFICATION .......................................................................................................................................... 77
BIBLIOGRAPHIE ................................................................................................................................................................. 79
TRAVAUX DIRIGES ........................................................................................................................................................... 81
TD 1 : MODELISATION .......................................................................................................................................................... 83
TD 2 : MODELISATION .......................................................................................................................................................... 85
TD 3 : MODELISATION D'UNE USINE DE LOGISTIQUE .............................................................................................................. 87
TD 4 : ANALYSE ................................................................................................................................................................... 89
TD 5 : MATRICE D’INCIDENCE CALCUL DES P ET T SEMI-FLOTS ............................................................................................. 91
TD 6 : DIMENSIONNEMENT ET ANALYSE DE PERFORMANCES ................................................................................................. 93
TD 7 : DIMENSIONNEMENT ET ANALYSE DE PERFORMANCES ................................................................................................. 95
TD 8 : INITIATION A UN LOGICIEL DE SIMULATION ET D’ANALYSE DE FLUX ............................................................................ 97

4
Avant Propos

Cet enseignement fait partie intégrante de la composante “Automatique” des


disciplines des départements de :
- Génie Electrique,
- Génie Mécanique,
- Génie Industriel,
de l’INSA de Lyon.
Ce polycopié est le fruit d'un travail commun entre D. Thomasset (Professeur
Emérite GE/GI) et X. Brun (Professeur GE).

But et outils développés

Le but de cet enseignement est la maîtrise des systèmes dynamiques à événements


discrets (S.E.D.) à des fins de modélisation, d’analyse de performances et de
dimensionnement. Pour ce faire, ce document, loin d’être exhaustif, est consacré aux
réseaux de Petri.

Préambule

Devant la complexité croissante des automatismes, le nombre important des éléments


utilisés et des situations envisagées, l’intuition et l’expérience sont insuffisantes et à
ces deux qualités, il est indispensable d’adjoindre la connaissance d’une méthodologie
appropriée. Afin de ne pas noyer l’homme dans un flot d’informations cette méthodologie
doit être impérativement hiérarchisée afin de permettre de dégager l’ossature générale
de l’automatisme avant d’aborder une étude plus fine. Malheureusement, l’expérience
montre qu’aller du général au particulier est une démarche intellectuelle peu habituelle
pour l’homme celui-ci ayant plutôt tendance à généraliser un cas individuel. Ainsi,
apprendre à dégager d’un système ses macrostructures, à les décomposer en sous
systèmes interconnectés c’est à dire en fait apprendre à extraire l’important d’un flot
d’informations est un autre but de cet enseignement.

L’homme ne progressant que par l’erreur, la bonne assimilation de cet enseignement


nécessite de la part du lecteur un effort personnel. Il lui est fortement conseillé de
pratiquer l’auto-formation en se mettant “au pied du mur” c’est à dire de se donner un
cahier des charges (même fictif) et de tenter de le modéliser et d’étudier toutes les
propriétés de son modèle. Il se rendra compte du caractère souvent flou, ambigu voir
contradictoire de ses désirs, apprendra ainsi progressivement à exprimer plus
clairement ses souhaits et n’oubliera pas d’exercer une critique positive sur le résultat
obtenu.

5
6
Introduction

Deux “familles“ de systèmes existent en Automatique. L’une traite des problèmes


concernant les systèmes continus et l’autre s’intéresse aux systèmes à événements
discrets (S.E.D.).

Les systèmes continus sont modélisés par des équations différentielles ou aux dérivées
partielles et le temps apparaît explicitement de façon continue*. D’un point de vue
général, ces systèmes sont modélisés par des équations issues des lois de la physique :
- loi d’Ohm généralisée pour un système électrique,
- lois de Newton pour un système mécanique,
- premier et deuxième principes en thermodynamique,
- loi de Maxwell en vibrations …

Pour les systèmes à événements discrets, le parti est pris de non pas de s’intéresser au
déroulement continu des phénomènes mais de ne retenir que certains instants
particuliers et leur enchaînement logique. Il est sans doute vraisemblable, que depuis
l’aube de l’humanité les hommes ont décrit ou conçu des systèmes de ce type, les
automatismes séquentiels, du plus élémentaire au plus sophistiqué, font clairement
partie de ce type de systèmes. Il est cependant indéniable que l’évolution de l‘économie
(du flux poussé au flux tendu), des moyens de communication (réseaux locaux, nationaux,
internationaux, satellites …) ont contribué à donner, depuis la fin de la seconde guerre
mondiale une importance grandissante, prépondérante actuellement aux systèmes à
événements discrets. Les exemples fourmillent dans le monde de la Productique (gestion
de flux, atelier flexible, planification de taches…), le monde des Télécommunications et
des Transports (téléphonie, messagerie …), le monde informatique (protocole de gestion,
réseaux …).

Les caractéristiques principales de ce type de systèmes sont :


- leur parallélisme,
- leur synchronisation,
- l’occurrence de concurrence,
- le choix d’ordonnancement.

Les principaux problèmes posés par les S.E.D sont :


- la spécification du cahier des charges,
- la modélisation,
- la validation logique (“dead lock“),
- l’évaluation de performances,
- le dimensionnement,
- l’optimisation.

*
L’analyse de ces systèmes ou la synthèse de loi de commande peut entraîner une discrétisation
du temps (par exemple lors de l’échantillonnage de la loi de commande).

7
Dans le cadre de ce cours nous nous intéresserons essentiellement aux problèmes
rencontrés lors de la conception et la gestion de systèmes de production industrielle.
Ces derniers ont connu un essor important ces dernières décennies tant part
l’accroissement de leur complexité que de leur flexibilité. D’où l’importance de maîtriser
parfaitement toutes les phases de la conception et en particulier la conception
préliminaire, encore appelée “étude papier“. En effet, toute erreur à ce niveau se solde
par des dysfonctionnements du système qui doivent être ensuite corrigés à grands frais.
La conception préliminaire inclut :
- la spécification fonctionnelle (GEMMA…),
- la modélisation,
- et l’évaluation du comportement du système.
De nombreux outils spécifiques existent pour aider le concepteur dans chacune de ces
tâches, mais très rares sont ceux capables d’être efficaces lors de ces trois tâches.
Pour beaucoup [Brams, David et Alla, Proth et Xie] les réseaux de Petri forment un
ensemble d’outils très performant permettant de répondre à ce triple objectif. En outre
les réseaux de Petri les plus simples offrent un support graphique naturel pour les
concepteurs et permettent d’avoir un langage unifié, visuel et précis pour les échanges
entre concepteurs et analystes.

Les recherches de Carl Adam Petri* (1926-2010), mathématicien allemand, remontent


au début des années soixante en Allemagne. Il présenta ses travaux de Doctorat,
intitulés “Kommunication mit automaten“, à Bonn en 1962. Ses réseaux ont été
développés afin de modéliser les concepts d’actions asynchrones et concurrentes
Plus tard dans les années soixante-dix des travaux américains (notamment au M.I.T. :
Massachusetts Institute of Technology par A. Holt et J. Dennis) et européens ont
contribués au développement, à l’essor et à l’enrichissement de cet outil. En France, les
chercheurs ont apporté une bonne contribution à ce développement. Citons pour preuve
la première conférence européenne sur le calcul parallèle et distribué (Toulouse -
Février 1979), le colloque international de sémantique des programmes parallèles (Evian
– Juillet 1979), la seconde conférence internationale sur les systèmes informatiques
répartis (Versailles – Avril 1981), et surtout l’European Workshop (devenu International
Conference) on application and theory of Petri nets qui se tient annuellement depuis
1980 (Strasbourg –Septembre 1980, Bad Honnef Septembre 1981 …)

Planigramme : Cours + Travaux Dirigés

Analyse
Définition Analyse Analyse
Performances
du modèle Graphique Algébrique
Dimensionnement

0 8h 14 h 22 h 31 h

*
Ne s’écrit pas avec un accent aigu.

8
Chapitre 1 : Définitions

1 Définitions

1.1 Définition 1 : Définition formelle

Un Réseau de Petri est un quintuplet < P, T, Pré, Pos,  > dans lequel:

- P est un ensemble fini non vide d’objets appelés places


P = {p1, p2, …, pn}
- T est un ensemble fini non vide d’objets appelés transitions
T = {t1, t2, …, tm}
- Pré est un ensemble de relations (relations d’entrée) qui lie P à T :
Pré  P.T
- Pos est un ensemble de relations (relations de sortie) qui lie T à P :
Pos  T.P
-  est une application qui lie à chaque relation un entier > 0 appelé poids de l’arc

Graphiquement on représente :
- les places par des cercles,
- les transitions par des barres,
- les relations par des arcs orientés. Les relations Pré sont donc des arcs orientés
qui relient les places aux transitions alors que les relations Pos sont des arcs
orientés qui relient les transitions aux places.

Au sens de la théorie des graphes, un réseau de Petri est un graphe orienté


bichromatique (deux types de sommets : places et transitions) mais deux sommets de
même type ne sont jamais reliés directement entre eux.

Si tous les poids sont égaux à un, le réseau est appelé réseau de Petri ordinaire.
Inversement s'il existe au moins un poids supérieur à un, le réseau est appelé réseau de
Petri généralisé.

Si tous les sommets possèdent au moins une relation d’entrée et au moins une relation
de sortie, le réseau de Petri est fortement connexe. Il est connexe dans le cas inverse.

Exemple
1 t1 1 t1
t2 2
2 t4 t4
t3
4 t3 3 2
t5
3
3 t2

Figure 1.1a : RdP ordinaire connexe Figure 1.1b : RdP généralisé fortement connexe

9
Chapitre 1 : Définitions

1.2 Définition 2 : Marquage d’un réseau de Petri

Le marquage d’un réseau de Petri est une fonction M de P dans N+ (ensemble des entiers
non négatifs). On représente graphiquement cette fonction M en plaçant des marques
ou jetons dans les places du réseau de Petri. Ainsi, une place peut être soit marquée
(elle possède alors une ou plusieurs marques) soit non marquée (elle est alors vide). Ces
marques ou jetons sont indivisibles et infusionnables.
Les réseaux de Petri des figures 1.1 sont non marqués alors que le réseau de Petri de la
figure 1.2 est marqué. Dans ce dernier réseau, les places 1 et 2 sont respectivement
marquées par 2 et 1 marques, la place 3 est vide.

Exemple

1 t1
2
t4
t3
3 2
3
t2

Figure 1.2 : Réseau de Petri généralisé fortement connexe marqué

Le marquage initial d’un réseau de Petri est généralement noté M0.

1.3 Définition 3 : Sensibilisation d’une transition

Une transition ti est dite sensibilisée ou franchissable ou validée ou tirable si et


seulement si toutes les places d’entrée (places précédant immédiatement ti) possèdent
au moins un nombre de marques égal au poids de l’arc correspondant.

Exemple

t1 t1
2 2
1 1
4 4
3 3
2 2
4 4
5 5
3 t2 3 t2

Figure 1.3a : t1 et t2 sont sensibilisées Figure 1.3b : seule t1 est sensibilisée

10
Chapitre 1 : Définitions

1.4 Règle fondamentale d’évolution : franchissement d’une transition.

Une transition peut être franchie (tirée, mise à feu) si et seulement si elle est
sensibilisée.
Les conséquences du franchissement (toujours supposé instantané) de la transition sont
les suivantes :
- on prélève dans chacune des places d’entrée un nombre de jetons égal au poids
respectif de l’arc reliant la place à la transition.
- on dépose dans chacune des places de sortie un nombre de jetons égal au poids
respectif de l’arc reliant la transition à la place.

On passe ainsi de M0 à M1 et plus généralement de Mi à Mj par le tir de la transition tj.

Exemple

t1
2
1
4
3
2
4
5
3 t2

Figure 1.4a : avant franchissement de t1 ou de t2

t1 t1
2 2
1 1
4 4
3 3
2 2
4 4
5 5
3 t2 3 t2

Figure 1.4b : après franchissement de t1 Figure 1.4c : après franchissement de t2

Nota 1 : le nombre de marques (ou jetons) d’un réseau de Petri n’est donc pas
nécessairement constant.

Nota 2 : En réseau de Petri, plusieurs transitions franchissables ne sont jamais


franchies simultanément.

11
Chapitre 1 : Définitions

1.5 Définition 4 : Séquence de tir

Soit T= {t1,t2,t3,…,te} l’ensemble des transitions d’un réseau de Petri muni d’un marquage
initial M0.
On appelle T* le monoïde1 libre sur T et  un mot de longueur s de T*.

n j  1, e

On dit que   tn1 , tn2 ,..., tns  avec  est une séquence de tir (admissible) à
 j  1,..., s
partir de M0 si et seulement s'il existe une suite de marquage M1, …, Ms telle que le
franchissement de tn j à partir de Mj-1 conduit à Mj, quel que soit j=1,2,…,s.

On note : M 0  M s

Il faut distinguer parmi les mots de T* ceux qui sont des séquences de tir admissibles
(c'est à dire respectant la règle fondamentale du paragraphe 1.4). Dans la pratique des
réseaux de Petri, seules ces séquences ont un intérêt et implicitement lorsqu'on parlera
de séquence de tir, celles-ci seront admissibles.

Exemple

t4
t6 1
5
3
t1 t3
t5
2 4
t2

Figure 1.5 : Réseau de Petri et séquence de tir

L’ensemble des transitions est {t1,t2,t3,t4,t5,t6}


A partir de M0 la séquence =[t1,t2,t3] est une séquence de tir. De même =[t1,t1,t5,t6]
est une séquence de tir. Par contre, la séquence =[t1,t2,t5] n’est pas une séquence de
tir.

1.6 Définition 5 : Marquage atteignable à partir de M0

1
La structure de monoïde est particulièrement utilisée en informatique, lorsqu'il s'agit de théorie des
langages. L'ensemble des mots sur un alphabet, muni de l'opération de concaténation de deux mots,
constitue un monoïde.

12
Chapitre 1 : Définitions

Un marquage quelconque Ma est dit atteignable à partir de M0 si et seulement si il existe


une séquence de tir  qui de M0 permet d’obtenir le marquage Ma.

1.7 Définition 6 : Ensemble des marquages atteignables à partir de M0


On appelle M 0 l’ensemble de tous les marquages atteignables depuis M0.

1.8 Définition 7 : Réseau de Petri autonome

Un réseau de Petri est dit autonome lorsque le franchissement des transitions ne


dépend que du marquage.

1.9 Définition 8 : Réseau de Petri non autonome

Un réseau de Petri est dit non autonome (ou synchronisé) lorsque le franchissement des
transitions dépend du marquage et de conditions extérieures.

Exemple

1 t1 1 c+d

t4 a.b
t3 c
2 2
3 3
t2 e

Figure 1.6 : Réseau de Petri autonome Figure 1.7 : Réseau de Petri non autonome

13
14
Chapitre 2 : Structures particulières et sous-classes

2 Structures particulières et sous-classes


2.1 Structures particulières

2.1.1 Convergence, Divergence

Exemple
4
1 2
t1
1 2 10
10 t6 t2
t3
t
4 2 4 t4
3
5
3 4 5 t5

Figure 2.1 : Convergence ET Divergence ET Figure 2.2 : Convergence OU Divergence OU

2.1.2 Boucle élémentaire, Réseau pur

Dans une boucle élémentaire, une place P est à la fois place d’entrée et de sortie d’une
transition.

Exemple
t1
4
t2 1 2

t3

Figure 2.3 : Boucle élémentaire

Définition: Un réseau de Petri pur est un réseau de Petri sans boucle élémentaire.

2.1.3 Transition puits, Transition source

Exemple
t1
t1 t2
4 4
1 2 1 2

t2
t3

Figure 2.4 : t2 transition puits Figure 2.5 : t1 transition source

15
Chapitre 2 : Structures particulières et sous-classes

2.1.4 Verrou et Trappe

En considérant une place quelconque p et une transition quelconque t d’un réseau de


Petri, on note :

- °t= l’ensemble des places d’entrée de t,


- t°= l’ensemble des places de sortie de t,
- °p= l’ensemble des transitions d’entrée de p,
- p°= l’ensemble des transitions de sortie de p

2.1.4.1 Verrou

Un verrou est un ensemble P de places telles que : P  P

Exemple : Verrou et trappe

t1 t1

1 1

t2 t3 t2 t3

2 2

t4 t4

Figure 2.6 : Verrou Figure 2.7 : Trappe

Propriété: si toutes les places du verrou ne sont pas marquées initialement à M0,
alors toutes les places du verrou resteront éternellement vides (quelle que soit la
séquence de tir).

2.1.4.2 Trappe

Une trappe est un ensemble T de places telles que P  P

Exemple : (cf. figure 2.7)

Remarque: Si une séquence de tir marque une trappe, celle-ci restera marquée
éternellement.

16
Chapitre 2 : Structures particulières et sous-classes

2.2 Sous-classes de réseau de Petri

2.2.1 Les Graphes d’états

Un réseau de Petri est un réseau de Petri graphe d’états s’il s’agit d’un réseau de Petri
ordinaire (i.e. tous les poids sont égaux à un) dans lequel toute transition a au plus une
place d’entrée et une place de sortie.

Propriété: un réseau de Petri graphe d’états ne possède ni convergence ni divergence


ET. Autrement dit, un réseau de Petri graphe d’états est un réseau de Petri
ordinaire ne possédant que des convergences et/ou des divergences OU.

Remarque : c’est la structure classique d’organigramme en informatique, graphe


d’Huffmann ou graphe des marquages en réseau de Petri.

Exemple
1 2
t4 t1
t6 t2
t3

4
3
t5
Figure 2.8 : graphe d’états (fortement connexe)

2.2.2 Les Graphes d’événements

Un réseau de Petri est un réseau de Petri graphe d’événements s’il s’agit d’un
réseau de Petri ordinaire (i.e. tous les poids sont égaux à un) dans lequel toute place a au
plus une transition d’entrée et une transition de sortie.

Propriété : Un réseau de Petri graphe d’événements ne possède ni convergence ni


divergence OU. Autrement dit, un réseau de Petri graphe d’événements est un réseau
de Petri ordinaire ne possédant que des convergences et/ou des divergences ET.

Exemple

t3
1 3

t1
4

t2
2 5
Figure 2.9 : graphe d’événements (fortement connexe)

17
Chapitre 2 : Structures particulières et sous-classes

2.3 Les réseaux de Petri à arcs inhibiteurs

Un réseau de Petri à arcs inhibiteurs est un doublet <R,F> avec :


R= réseau généralisé,
F= ensemble d’arcs (place  transitions) inhibiteurs de poids unitaire.

Une transition ti est sensibilisée si et seulement si, en plus des règles habituelles, il
n’existe aucune marque dans des places d’entrée reliées à ti par un arc inhibiteur (places
vides). Les marquages obtenus après franchissement de la transition ti sont identiques
au cas des réseaux de Petri généralisés.

Exemple
t1 t1
2 2
1 1
4 4
2 2
4 4
5 5
3 3 t2 3 3 t2

Figure 2.10 : RdP à arcs inhibiteurs Figure 2.11 : RdP à arcs inhibiteurs
t1 non tirable, t2 tirable t1 tirable, t2 non tirable

18
Quelques Exemples de modélisation par réseau de Petri
Exemple 1 : Distribution alimentaire (type grande surface)

Cahier des charges


De façon classique, on distingue deux types de clients appelés clients au panier et
clients au chariot (c’est à dire utilisant un panier ou un chariot disponible à l’entrée du
magasin), ces deux types de clients correspondant généralement à des volumes d’achats
différents.
De manière tout aussi classique, on peut regrouper en trois phases successives
l’itinéraire d’un client dans le supermarché :
- passage dans les rayons libre-service,
- passage dans les rayons à la coupe,
- passage en caisses
(ces deux derniers passages nécessitent la présence d’une ressource humaine)
On précise que le nombre de clients potentiels du supermarché est grand devant la
capacité d’accueil et que l’on n’envisage pas la « rupture » d’alimentation des rayons (ceci
s’effectuant généralement en temps masqué c’est à dire pendant les heures de
fermeture du supermarché)

Réseau de Petri ordinaire autonome connexe.

1 13 7 Chariots
Paniers NP
disponibles  NC disponibles
t1 Clients potentiels t7

Passage rayons libre Passage rayons libre


service - clients au panier 2 8 service - clients au chariot
t2 Serveur à la coupe t8

Attente service à la coupe


3 14 9 Attente service à la coupe
- clients au panier NS - clients au chariot

t3 t9
Service à la coupe Service à la coupe
- clients au panier 4 10 - clients au chariot
t4 t10
Caisses ouvertes
Attente passage en caisse 5 15 11
Attente passage en
- clients au panier Na caisse - clients au chariot

t5 t11
Passage en caisse
- clients au panier 6 12 Passage en caisse
- clients au chariot
t6 t12

19
Exemple 2 : Protocole de gestion d’une piscine

Cahier des charges


Nous considérons une piscine moderne où les baigneurs une fois rentrés dans une
cabine (au nombre de NC) ont à leur disposition, par simple appel sur un bouton de NP
paniers munis d’une clé magnétique.
Après baignade, et une fois dans la cabine, le client appelle son panier reconnu à l’aide
du code barre faisant office de clé.
On précise qu’à priori aucune limitation de clients est envisagée dans les
infrastructures de cette piscine et que le nombre de clients potentiels est très grand
devant les capacités d’accueil de cet établissement.

Demande cabine t1

2 Déshabillage
Attente panier t2

4 Dépose panier

Rend la cabine et baignade t3


Paniers 3 1 Cabines
NP NC
5 Baigneurs

Demande cabine et panier t4

6 Prise cabine

Libère panier t5

7 Habillage

Libère cabine t6

Exemple 3 : Atelier de montage de cycle (partiel)


Cahier des charges
Nous considérons dans cet exemple un atelier de montage partiel d’un vélo, l’objectif
étant d’assembler deux roues et un cadre. Pour ce faire, l’atelier est constitué de trois
machines :
- la 1ère machine fabrique des cadres en assemblant tubes et cordons de soudure
- la 2nde machine fabrique les roues à partir des jantes, des rayons et des moyeux.
Les capacités respectives des stocks de cadre et de roues sont respectivement 4 et 6
L’assemblage d’un cadre avec deux roues est effectué par la 3ème machine
On précise que les trois machines ont une capacité de production du type 1 à la fois, que
le stock aval de la machine d’assemblage peut être considéré comme de capacité infinie
et que le fonctionnement des trois machines est entièrement automatique
Réseau de Petri généralisé (non graphe d’événements) autonome connexe.

20
Stocks amonts cadre Stocks amonts roue
2 1
 
5 
6  7

t1 t3
Machine
12 3 Machine 8
cadre
roue 13
t2 t4

4 9
Stock aval cadre 2
Stock aval roue
14 t5 15
2
16 10
Machine assemblage
t6

11 Stock aval cadre+roue

Exemple 4 : Modélisation d’un atelier de production “en étoile”

Cahier des charges


On considère un atelier de production composé de quatre îlots de production
disposés en étoile. Chacun des ces îlots comporte une seule machine multi-fonctions ne
pouvant traiter qu’un objet à la fois.
Les îlots 1 et 2 puisent dans un stock de pièces brutes supposé toujours alimenté Les
îlots 3 et 4 puisent également dans un stock de pièces brutes supposé toujours alimenté
Un parc de robots banalisés permet aux différents îlots d’effectuer les taches
nécessaires aux traitements des pièces brutes. Du fait des différents traitements
effectués, les îlots 1 et 2 utilisent deux robots chacun pour faire une pièce et les îlots 3
et 4 quatre robots pour faire une pièce.
Enfin, on précise que les stocks avals de chaque îlot peuvent être considérés comme
de capacité infinie.

Réseau de Petri généralisé autonome connexe.

21
Stock amont 1/2 Stock amont 3/4
1 8

Ilot 2
4 Ilot
machine 3 2 9 10 machine
n°1
n°3
2
Robots 4
4 Stock 15 11
aval 1 2 N Stock aval 3
4

Ilot 4
machine 6 5 2 Ilot
n°2 12 13 machine
n°4

7 14
Stock aval 2 Stock aval 4

Exemple 5 : Modélisation de réaction chimique : fabrication de méthanol

Réseau de Petri généralisé non autonome connexe.

22
O C H2O
2 1 3
2 2 2
t1 t3 T>1000°C
2
CO2 2
4
6 H
T>600°C t 2
2 2
2
CO 5 4
3 t4 T>350°C et P>100b et C2O5

7 CH3OH

Exemple 6 : Gestion des priorités

Cahier des charges


On considère une machine commune à deux lignes de production P1 et P2. Cette
machine commune traite une pièce à la fois de type P1 ou P2. On considérera que les
stocks avals de ces deux lignes sont de capacité infinie et l’arrivées des pièces dans les
stocks amonts des lignes P1 et P2 seront modélisées par des transitions sources. On
modélisera ce système et l’on vérifiera que s’il existe des pièces simultanément dans les
stocks amonts des deux lignes que le modèle est non persistant.

On modélisera plusieurs types d’ordonnancement :

- un premier qui donne priorité en cas de conflit d’accès à la machine


commune à la ligne P1.

Réseau de Petri ordinaire à arcs inhibiteurs autonome connexe.

23
Arrivée en stock amont Arrivée en stock amont
Pièces P1 Pièces P2

Pièces P1 en Pièces P2 en
stock amont 1 2 stock amont

Pièces P1 Pièces P2
traitées sur M 3 5 4 traitées sur M
Fin de traitement Machine Fin de traitement
pièces P1 unique pièces P2

Production P1 Production P2

- Un second de type ordonnancement alterné P1/P2/P1/P2/P1/P2 …….

- Un troisième de type ordonnancement alterné 25P1/37P2/25P1/37P2….

24
Chapitre 3 : Propriétés liées au marquage

3 Propriétés liées au marquage


3.1 Bornage

3.1.1 Place bornée pour M0

Une place P d’un RdP est bornée par un marquage initial M0, si et seulement si :

M i  M 0 , k  N  tel que m( P)  k

m(P) est le nombre de marques (ou jetons) dans P et l’entier positif k est appelé borne
de P.

3.1.2 Réseau borné pour M0

Pour un marquage initial M0, un réseau de Petri est borné par un entier positif k si et
seulement si toutes ses places sont bornées pour M0. L’entier positif k est la valeur
maximum des bornes de l’ensemble des places du réseau.

De façon équivalente, cela signifie que M i  M 0 aucune place ne contient plus de k


marques.

Exemple
1
t6 1
t1 t1

4 2 2 3 t4
t5
t3
t2 t2 t3
t4 4
3
Figure 3.1 : RdP borné par k=3 Figure 3.2 : RdP non borné

Remarque : La notion de bornage ainsi définie n’est pas une propriété structurelle car
elle dépend du marquage initial M0. Donc, un réseau borné pour M0, peut parfaitement
être non borné pour M 0'  M 0 .

Intérêt physique de la notion de bornage : la notion de réseau borné et de places


bornées pour un marquage initial M0 assure au concepteur la “non explosion” des marques
dans une ou plusieurs places. Dans le monde de la Productique, une place non bornée peut
correspondre à un stock qui, du fait d’un fonctionnement de l’atelier différent du
fonctionnement nominal (cas très fréquent dans la réalité industrielle), ne cesse
d’augmenter.

25
Chapitre 3 : Propriétés liées au marquage

3.1.3 Réseau sauf pour M0

Un réseau de Petri est dit sauf pour un marquage initial M0, si et seulement si il est
borné par k=1.

3.2 Vivacité

3.2.1 Transition 1 fois vivante pour M0

Une transition t est dite une fois vivante pour M0 si et seulement si elle est
franchissable (tirable) une fois à partir de M0.

3.2.2 Transition k fois vivante pour M0

Une transition t est dite k ( k  N  ) fois vivante pour M0 si et seulement si elle est
franchissable (tirable) k fois à partir de M0.

3.2.3 Transition infiniment vivante pour M0

Une transition t est dite infiniment vivante pour M 0, si et seulement si elle est
franchissable (tirable) M i  M 0 .

3.2.4 Réseau vivant pour M0

Un réseau de Petri est vivant pour M0 si et seulement si M i  M 0 toute transition ti


est une fois vivante.
Autrement dit un Réseau de Petri est vivant si et seulement si pour toute transition
ti et pour tout marquage M i  M 0 il existe une séquence de tir  comprenant ti et
tirable à partir de Mi.

3.2.5 Réseau bloqué pour M0

Un réseau de Petri est bloqué pour M0 si et seulement s'il existe un marquage


atteignable Ma tel qu'aucune transition est au moins une fois vivante.

3.2.6 Réseau pseudo-vivant pour M0

Un réseau de Petri est pseudo-vivant pour M0 si et seulement si M i  M 0 il


existe au moins une transition une fois vivante.
Autrement dit, un réseau de Petri est pseudo-vivant s'il est exempt de blocage et si au
moins une transition est infiniment vivante.

26
Chapitre 3 : Propriétés liées au marquage

Exemples

1 2 1 2 1 2
t1 t1 t1

3 3 3
t2 t2 t2

Figure 3.3: t1 non vivante Figure 3.4: t1 3 fois vivante Figure 3.5: t1, t2
t2 une fois vivante t2 4 fois vivante infiniment vivante
RdP bloqué RdP bloqué RdP vivant

1
t5
t1

2 2
4 t3
t6
t2
t4
3

Figure 3.6 : Réseau de Petri pseudo-vivant

En résumé :
 Un réseau de Petri exempt de blocage peut être vivant ou pseudo-vivant.
 Un réseau de Petri qui possède un marquage atteignable bloquant n'est ni vivant,
ni pseudo-vivant.

Exemple de la piscine : Cahier des charges


Nous considérons une piscine moderne ou les baigneurs une fois rentrés dans une cabine
(au nombre de NC) ont à leur disposition, par simple appel sur un bouton, NP paniers
munis d’une clé magnétique. Après la baignade, et une fois dans la cabine, le client
appelle son panier reconnu à l’aide du code barre faisant office de clé.

27
Chapitre 3 : Propriétés liées au marquage

Demande cabine t1

2 Déshabillage
Attente panier t2

4 Dépose panier

Rend la cabine et baignade t3


Paniers 3 1 Cabines
NP NC
5 Baigneurs

Demande cabine et panier t4

6 Prise cabine

Libère panier t5

7 Habillage

Libère cabine t6

Figure 3.7 : Réseau de Petri bloqué N P , N C

Remarque : un réseau de Petri sauf et vivant est dit conforme.

Intérêt physique de la notion de vivacité:


Dans un réseau de Petri vivant, toute transition est toujours franchissable (tirable) quel
que soit l’état du réseau donc aucune partie du graphe n'est morte ou ne devient morte.

3.3 Réinitialisation

3.3.1 Etat d’accueil pour M0

Un marquage atteignable Ma est appelé état d’accueil pour M0 si et seulement si



M i  M 0 il existe une séquence de tir  telle que M i 
 Ma.

3.3.2 Réseau réinitialisable pour M0

Si Ma=M0 le réseau de Petri est réinitialisable.

Intérêt physique de la notion de réinitialisation:


Beaucoup de systèmes ont un fonctionnement répétitif (ou cyclique). Le modèle réseau
de Petri correspondant doit être réinitialisable.

28
Chapitre 3 : Propriétés liées au marquage

Exemples:

1
t1 1 t2
3
t1 3
2 t2
t6 2 t3
4 t4 t5
4
t3

Figure 3.8 : RdP non réinitialisable Figure 3.9 : RdP réinitialisable


conforme (sauf et vivant) borné (sauf) et pseudo-vivant

3.4 Persistance

3.4.1 Réseau persistant pour M0

S’il existe pour M i  M 0 au moins deux transitions ti et tj sensibilisées (ou validées), le


réseau de Petri sera dit persistant si et seulement si ti et tj peuvent être franchies
(ou tirées) dans n’importe quel ordre (réversibilité). C’est la notion conceptuellement
importante de conflit et de partage de ressources.

Exemples:

1 2 3 1 2 3
ti tj ti tj

Figure 3.10 : Réseau de Petri persistant Figure 3.11 : Réseau de Petri non persistant

Remarque 1 : Attention à ne pas confondre conflit structurel (conflit indépendant du


marquage) et non persistance. Un conflit structurel peut conduire ou non à un conflit
effectif, tout dépend du marquage.

29
Chapitre 3 : Propriétés liées au marquage

Exemples:
1 3 4 1 3 4
t1 t1

2 2
t2 t4 t2 t4

5 6 5 6
t3 t5 t3 t5

Figure 3.12 : RdP persistant borné, Figure 3.13 : RdP non persistant,
vivant, réinitialisable borné, vivant, réinitialisable

Remarque 2 : Pour les réseaux de Petri non autonomes il est facile de supprimer un
conflit effectif en assurant ti  t j   .

Remarque 3 : Les réseaux de Petri graphe d’événements sont, par définition,


persistants. Les réseaux de Petri graphe d’états possèdent, par définition, des
conflits structurels mais ne sont pas nécessairement non persistants.

3.4.2 Conflits effectifs et ordonnancement

Considérons un atelier composé d’une machine unique M permettant la production de


deux types de pièces P1 et P2. Les contraintes de fabrication du type 1 à la fois pour P1
et pour P2 et les stocks amonts et avals sur les deux lignes seront considérés comme
indépendants et de capacités infinies.

Exemple:
Stock amont 1 Stock amont 2
1 10 6

3 2 5 7 9
Machine
unique
4 8
Stock aval 1 11 Stock aval 2

Figure 3.14 : Réseau de Petri non persistant et ordonnancement (P1,P2, P1,P2,P1,P2 …)

30
Chapitre 3 : Propriétés liées au marquage

3.4.3 Structure de coalition

Dans un réseau de Petri vivant mais non persistant, il peut exister une séquence infinie
de tir qui ne valide pas certaines transitions. On dit qu’il y a coalition contre une
transition t (ou un ensemble de transitions) à partir de M0 si et seulement s'il existe une

séquence infinie de tir  ( M 0   ) telle qu’aucun des marquages obtenus par
l’application de  ne valide t (ou cet ensemble de transitions).

Exemple: Problème des philosophes

Cahier des charges


Quatre philosophes sont autour d’une table, disposant de quatre baguettes. Un
philosophe peut avoir trois états : il réfléchi (ou «philosophe »), il se repose (état
d'attente) ou il mange. Pour manger il doit prendre une baguette à sa droite et une
baguette à sa gauche
Etablir un modèle avec comme état initial tous les philosophes au repos en attente de
manger et toutes les baguettes sont posées sur la table.

N
7N Réfléchir
Attendre 8N

Manger
6N

W 3 4 E
7W 6W
6E 7E

1 2
8W 8E

6S

8S

7S

S
Figure 3.15 : Réseau de Petri conforme (sauf et vivant) avec structure de coalition

31
Chapitre 3 : Propriétés liées au marquage

Exemples : bornage, vivavité, pseudo-vivacité, réinitialisation, persistance

BORNAGE VIVACITE REINITIALISATION CONFLIT


Réseau Pseudo- structurel ou
k=? Vivant Oui ou Non persistance
vivant effectif
A
B
C
D
E
F

2 t4 3 t4
t4 1 1
1

t1 3 t1 3 t1 3

t3 2 t3 2 t3
2

t2
A t2 B t2 C

t4 t4 2 t4
1 1 1

t1 3 t1 3 t1 3
2 2 t3 2 t3 2 t3

t2 D t2 E t2 F

32
Chapitre 4 : Représentation matricielle

4 Représentation matricielle

4.1 Définition

Un réseau de Petri généralisé marqué, pur et sans arcs inhibiteurs est isomorphe à
une matrice rectangulaire C(p,t) plus un vecteur de marquage M(p) tous deux à
coefficients entiers relatifs.

4.2 Matrice de description (ou d’incidence)

4.2.1 Définition

Un réseau de Petri généralisé pur, sans arcs inhibiteurs et non marqué est
isomorphe à une matrice rectangulaire C(p,t) à coefficients entiers (appelée matrice de
description ou d’incidence) décrite comme suit :

Dimension C(p,t) : Nombre de lignes = Nombre de places


Nombre de colonnes = Nombre de transitions

  si pi  t j

Elément courant C(i,j)   si pi  t j
  
0 si pi  t j , pi  t j

Rappel :  est un entier strictement positif appelé poids de l’arc

Remarque fondamentale: La matrice C(p,t) seule ne représente que la structure du


réseau, donc le réseau non marqué. Les propriétés qui seront obtenues avec cette
matrice uniquement, seront donc des propriétés structurelles (ou génériques) car
indépendantes du marquage initial M0.

1
p1  1 0 0 0 1
p2  1 1  1 1 0 
t1
C  p, t  
2 3 p3  1  1 0 0  1
 
t2 p4  0 0 1 1 1 
t3 t5 t1 t 2 t3 t 4 t5
t4
4
Figure 4.0 : Réseau de Petri et matrice d’incidence

33
Chapitre 4 : Représentation matricielle

4.2.2 Exemples

Exemple 1: Atelier de production de cycle (partiel)

Stocks amonts roue p1  1 0 0 0 00


Stocks amonts cadre
p2  1 0 0 0 00 
1 5 6 7 
2
p3 1 -1 0 0 0 0
 
p4  0 1 0 0 1 0 
t1 t3
p5  0 0 -1 0 0 0
Machine
8
 
12 3 Machine
roue 13 p6  0 0 -1 0 0 0
p7  0 0
cadre
0 -1 0 0
t2
t4  
p8  0 0 1 1 0 0
C  p, t  
4 9 p9  0 0 0 1 2 0 
2  
p10  0 0 0 0 1  1
t5
Stock aval roue  
14 15 p11  0 0 0 0 0 1
2
10 p12  1 1 0 0 0 0
16  
Machine assemblage p13  0 0 -1 1 0 0
p14  0 0
t6
-1 0 0 1
 
11
p15  0 0 0 1 2 0
Stock aval cadre+roue
p16  0 0 0 0  1 1 
t1 t2 t3 t4 t5 t6

Figure 4.1 :Atelier de cycle – matrice C

Exemple 2: Supermarché simplifié sans place capacité infinie “clients potentiels’

Paniers
disponibles
 1 0 0 0 1 0 0 0 0 0 
Chariots
disponibles
p1
p2  1 1 0 0 0 0 0 0 0 0 
1  
6 p3  0 1 1 0 0 0 0 0 0 0 
Serveur à la coupe  
 0 0 1 1 0 0 0 0 0 0 
t1 t6 p4
2
11 7 p5  0 0 0 1  1 0 0 0 0 0 
 
p6  0 0 0 0 0  1 0 0 0 1 
C  p, t  
t2 t7

p7  0 0 0 0 0 1  1 0 0 0 
3 8  
t3 p8  0 0 0 0 0 0 1  1 0 0 
p9  0 0 0 0 0 0 0 1  1 0 
Caisses ouvertes t8
 
4
12 9 p10  0 0 0 0 0 0 0 0 1  1
 
t4 t9 p11  0  1 1 0 0 0  1 1 0 0 
p12  0 0 0  1 1 0 0 0  1 1 
5 10
t1 t 2 t3 t4 t5 t 6 t 7 t8 t9 t10
t5 t10

Figure 4.2 : Supermarché (partie fortement connexe) – matrice C

34
Chapitre 4 : Représentation matricielle

Exemple 3: Atelier de production “en étoile” sans tous les stocks de capacité
infinie.

Stock amont 1/2 Stock amont 3/4

1
p1  -1 0 1 0 0 0 0
0
p2  1 0 
8
t1 t5  -1 0 0 0 0 0
p3  -1 1 0 0 0 0 0 0
Ilot
2  
machine 3 2 4 9 Ilot p4  0 1 0 0 0 0 0 0
10 machine
p5  0 1 1 0 0 0 0 
n°1
t2 t6 n°3 0
2  
Robots
4
p6  0 0 1 1 0 0 0 0 
p7  0 0 1 0 0 0 0
N
4 11 0
15
 
C  p, t   p8  0
2
0 0 0 1 0 1 0 
p9  0 0 0 1 1 0 0 
4
0
 
t3
t7
p10  0 0 0 0 1 1 0 0 
Ilot 2  
machine
6
5
p11  0 0 0 0 0 1 0 0
Ilot
n°2
t4
4 12
13 machine p12  0 0 0 0 0 0 1 1
t8 n°4  
p13  0 0 0 0 0 0 1 1 
7 p14  0 0 0 0 0 0 0 1
14  
p15 -2 2 2 2 4 4 4 4 
Stock aval 2 Stock aval 4
t1 t2 t3 t4 t5 t 6 t7 t8

Figure 4.3 : Atelier “en étoile” – matrice C

4.3 Matrice d’entrée (Matrice PRE), Matrice de sortie (Matrice POST)

Pour un réseau de Petri généralisé pur, sans arcs inhibiteurs, on peut définir deux
matrices rectangulaires C-(p,t) et C+(p,t) à coefficients entiers positifs ou nuls
(appelée respectivement matrice d’entrée ou matrice PRE, matrice de sortie ou matrice
POST) décrites comme suit :

Dimension C-(p,t) : Nombre de lignes = Nombre de places


Nombre de colonnes = Nombre de transitions

  si pi  t j
Elément courant C-(i,j) 
0 sinon

Dimension C+(p,t) : Nombre de lignes = Nombre de places


Nombre de colonnes = Nombre de transitions

  si pi  t j
 

Elément courant C+ (i,j) 



0 sinon

35
Chapitre 4 : Représentation matricielle

Exemple :

p1 0 0 0 0 0 0 p1 1 0 0 0 0 0
p2 0 0 0 0 0 0
 p2 1 0 0 0 0 0

p3 1 0 0 0 0 0 p3 0 1 0 0 0 0
   
p4  0 1 0 0 0 0 p 4 0 0 0 0 1 0
p5 0 0 0 0 0 0 p5 0 0 1 0 0 0
   
p6 0 0 0 0 0 0 p6 0 0 1 0 0 0
p7 0 0 0 0 0 0 p7 0 0 1 0 0 0
   
p 0 0 1 0 0 0  p8 0 0 0 1 0 0
C  p, t  8  C p, t 
p9 0 0 0 1 0 0 p9 0 0 0 0 2 0
p10 0 0 0 0 1 0 p10 0 0 0 0 0 1
   
p11 0 0 0 0 0 1 p11 0 0 0 0 0 0
p12 0 1 0 0 0 0 p12 1 0 0 0 0 0
   
p13 0 0 0 1 0 0 p13 0 0 1 0 0 0
p14 0 0 0 0 1 0 p14 0 1 0 0 0 0
   
p15 0 0 0 0 2 0 p15 0 0 0 1 0 0
p16 0 0 0 0 0 1 p16 0 0 0 0 1 0
t1 t2 t3 t4 t5 t6 t1 t 2 t3 t 4 t5 t6

Figure 4.4 : Atelier de cycle –matrice C+ Figure 4.5 : Atelier de cycle –matrice C-

Nota : On a la relation évidente suivante : C(p,t)=C+(p,t)-C-(p,t)

4.4 Structures particulières

4.4.1 Les réseaux de Petri fortement connexes

La matrice de description C(p,t) d’un réseau de Petri fortement connexe possède au


moins un entier positif et un entier négatif par ligne et par colonne.

Exemple : fig 4.2 : Supermarché


Exercices : simplifier les réseaux de Petri des fig 4.1: Atelier de cycle partiel connexe,
fig 4.3 : Atelier en étoile, en ne retenant que la partie fortement connexe et montrer
que les matrices d'incidences obtenues possèdent au moins un entier positif et un entier
négatif par ligne et par colonne

36
Chapitre 4 : Représentation matricielle

4.4.2 Les graphes d’états

La matrice de description C(p,t) d’un réseau de Petri graphe d’états fortement


connexe ne possède qu’un +1 et qu’un –1 par colonne.

Exemple:

t6 1
p1  1 0 0 0 1 1 
t1
p2  1  1  1 0 0 0 
C  p, t  
4 2 t5 p3  0 1 0 1  1 0 
 
t3 p4  0 0 1  1 0  1
t2 t1 t 2 t3 t 4 t5 t 6
t4
3
Figure 4.6 : Graphe d’états fortement connexe –matrice C

4.4.3 Les graphes d’événements

La matrice de description C(p,t) d’un réseau de Petri graphe d’événements


fortement connexe ne possède qu’un +1 et qu’un –1 par ligne.

Exemple:

t3 p1  1 1 0
 1 0 
p2  1
1 3 C  p, t   p3  1 0 1
p4  0 1  1

4 t1 
p5  1 0  1
t2 t1 t2 t3
5
2
Figure 4.7 : Graphe d’événements fortement connexe - matrice C

37
Chapitre 4 : Représentation matricielle

4.5 Vecteur marquage

4.5.1 Définition

Pour un réseau de Petri généralisé pur et sans arcs inhibiteurs, on peut définir un
vecteur M(p) à coefficients entiers positifs ou nuls décrit comme suit :

Dimension M(p) Nombre de lignes = n = nombre de places du réseau

Elément courant m(pi) pour i=1,2,…,n : nombre de marques de la place pi (entier


positif ou nul)

Nota 1 : M0(p) que l’on note M0 est le vecteur marquage initial du réseau de Petri.

Nota 2 : La donnée C(p,t)+M0(p) est équivalente à la donnée d’un réseau de Petri


marqué.

4.5.2 Exemples

Exemple 1 : Atelier de montage de cycle partiel (figure 4.1)

M 0    0 2    0 3 0  1 1 2 3 1
T

Exemple 2 : Supermarché (figure 4.2)

M 0  N P Na 
T
0 0 0 0 NC 0 0 0 0 NS

4.5.3 Sensibilisation (algébrique) d’une transition

4.5.3.1 Couverture et stricte couverture d’un vecteur par un autre vecteur de même dimension.

Couverture : Un vecteur M2 couvre un vecteur M1 (noté M2=M1) si et seulement si chaque


composante de M2 est égale à sa composante dans M1.

M 2  M1  M 2 ( pi )  M1 ( pi ) i  1, 2,..., n

Stricte couverture : Un vecteur M2 couvre strictement un vecteur M1 (noté M2>M1) si et


seulement si chaque composante de M2 est égale à sa composante correspondante dans
M1 et au moins une composante de M2 est supérieure à sa composante correspondante
dans M1.

M 2  M1   M 2 ( pi )  M1 ( pi ) i  1, 2,..., n et i tel que M 2 ( pi )  M1 ( pi ) 

38
Chapitre 4 : Représentation matricielle

4.5.3.2 Sensibilisation d’une transition (définition algébrique)

Une transition tj d’un réseau de Petri est sensibilisée si et seulement si le marquage M


du réseau couvre ou couvre strictement la jème colonne de la matrice C-
correspondante (voir exemple ci-dessous).

4.5.4 Marquages successifs d’un marquage donné

Si un marquage Mi valide la transition tj, alors le tir (ou franchissement) de tj conduit au


marquage Mj obtenu algébriquement par :

Mj=Mi+jème colonne de C

Exemple : Figure 4.7 avec marquage initial M0=[1 0 1 0 0 ]T

t3 p1  1 1 0
 1 0 
p2  1
1 3 C  p, t   p3  1 0 1
p4  0 1  1

4 t1 
p5  1 0  1
t2 t1 t2 t3
5
2
Donc M0 couvre la première colonne de C-. La transition t1 est sensibilisée et son tir (ou
franchissement) conduit à :

1  1 0
0  1  1
     
M 1  1   1  0
     
0   0  0 
0  1  1

La transition t2 n’est pas sensibilisée et son tir abusif conduirait à :

39
Chapitre 4 : Représentation matricielle

1  1   2 
0  1  1
     
M 1  1   0    1 
     
0   1   1 
0  0   0 
4.5.5 Relation générale des réseaux de Petri

Si l’on considère une séquence de tir  (par définition admissible), on peut obtenir
directement le marquage final Mn d’un réseau de Petri obtenu par application de cette
séquence à partir du marquage initial M0 par la relation :

Mn = M0 +C(p,t) . I

 i1 
i 
Avec : I    avec ij entier positif ou nul compte le nombre de tj dans .
2


 
 

Exemple : Figure 4.7 avec M0=[1 0 1 0 0]T et =[t1 t2 t3 t1 t2]

1  1 1 0 1
0   1  1 0  2  
      0 
On obtient : M n  1   1 0 1 .2  0
     
0  0 1  1 1 1
0  1 0  1 1

Nota : Attention, l’admissibilité de la séquence  n’est pas vérifiée algébriquement.

40
Chapitre 5 : Analyse des Réseaux de Petri

5 Analyse des réseaux de Petri

Ce chapitre traite des méthodes générales d’analyse des RdP. Ces méthodes utilisent
la représentation matricielle afin de s’affranchir de la taille du réseau de Petri étudié
et donc la limitation “physique” imposée par le graphe. D’autre part, les procédures
développées sont systématiques et d’une mise en œuvre informatique aisée.
Deux types de méthodes seront développés :
 Une méthode (arbre des accessibilités) qui suppose connue la matrice d’incidence C
(donc la structure du réseau) et le marquage initial. Cette méthode conduira donc,
pour un réseau donné, à des résultats dépendants du marquage initial.
 Des méthodes (calcul des verrous et étude par les invariants) structurelles (ou
génériques) qui ne supposent connues que la matrice d’incidence C (la structure du
réseau). Ces méthodes conduiront donc à des résultats structurels (ou génériques).

5.1 Arbre des accessibilités (Karp et Miller)


5.1.1 But
Pour un RdP marqué pur* et sans arc inhibiteur, cet algorithme permet de conclure sur
le bornage, les éventuels blocages et dans certains cas sur la pseudo-vivacité.

5.1.2 Principe général


L’arbre de Karp et Miller (ou arborescence de couverture) consiste à construire au
moyen de la matrice d’entrée (ou matrice PRE) C-, du vecteur de marquage initial M0 et
de la matrice d’incidence C, l’ensemble M 0 des marquages accessibles.

5.1.3 Algorithme
PAS 1 : début racine M0
 Puis tous les marquages successeurs de M0 qui sont obtenus en tirant toutes les
transitions tirables (test du paragraphe 4.5.3 sur la couverture des colonnes de
C- par M0, puis application avec la matrice C de la formule du paragraphe
4.5.4).
 Tests si ces marquages couvrent strictement M0 (> M0), alors on met w dans la
ou les composantes de ces marquages strictement supérieures à celle (s) de M0.

PAS 2 : Pour chaque nouveau Mi deux possibilités :


 Si sur le chemin M 0  M i , il existe Mj = Mi : alors on retrouve un marquage
connu.
 Sinon on ajoute les successeurs de Mi (sauf blocage) et pour chaque successeur
Mk de Mi :
- une composante w de Mi reste w dans Mk.
- si sur le chemin M 0  M k , il existe Mj tel que Mk couvre strictement
Mj (Mk>Mj) alors on met w dans la ou les composante(s) de Mk
strictement supérieures à celles correspondantes dans Mj.

*
Cette limitation est liée à l’utilisation de la matrice d’incidence et peut être levée si l’algorithme
de Karp et Miller est utilisé directement sur le réseau de Petri.

41
Chapitre 5 : Analyse des Réseaux de Petri

5.1.4 Exemples

Exemple 1
t2 1
t3
2 3
t1 5
4 t4
0 1 0 1 0
t2 t4
1 0 0 1 0 0 1 0 0 1
t2
t4 t3
1 0 0 0 1 0 1 1w 1 0 t3 P3 non bornée
t3 t2 t4
0 1 w 0 1
1 0 w 1 0
t4 t2
t1 t3
1 0 w 0 1
0 1 w 0 0
t2
1 0 w 0 0
blocage

Réseau non borné, ni vivant, ni pseudo-vivant car blocage


Figure 5.1 : Exemple 1 – algorithme de Karp et Miller

Exemple 2
1 1 0 0 0 0 2
t4
1 2 t1
0 0 1 1 0 0 2 t4
t1
t2 t3
3 4 1 0 0 1 2 0 2 0 1 1 0 0 2 0
t3 t2
t2
2
2
t3 1 1 0 0 2 2 0
2 t4 t1 t4
5 6
0 0 1 1 2 2 0 1 1 0 0 1 1 1
7 t4 t1
t4 t2 0 0 1 1 1 1 1

1 0 0 1 4 2 0
t2
t4
1 0 0 1 3 1 1

Réseau borné (k=4), vivant


Figure 5.2 : Exemple 2 – algorithme de Karp et Miller

42
Chapitre 5 : Analyse des Réseaux de Petri

Exemple 3

t4
 3 0  3 0   3  2 1 
 2  2 1 1  0  1   1
  t   t   t   t   t   t  2 3
0  1 2 2 0 1 2 2 0 3 0 3 0 2 t3 5
              t1
0  0  1 1   2 1 0  3 2
t4
0 0 0 0 0 1 2 2
t3 t1 3 t2
 2 0 
t4  2 0  t4 4
   
0   2
    Blocage
0   2
1 0

Réseau borné, non vivant, ni pseudo-vivant car blocage


Figure 5.3 : Exemple 3 – algorithme de Karp et Miller

5.1.5 Conclusion sur la méthode de Karp et Miller

 La conclusion sur le bornage du réseau, le bornage d’une place est toujours


possible par la présence ou absence de w.
 Si le réseau est borné (absence de w) et qu’il n’existe pas de blocage :
- La conclusion de pseudo-vivacité est toujours vraie,
- Les conclusions sur la vivacité et la réinitialisation sont possibles si l’arbre
de Karp et Miller est fortement connexe.
 Si le réseau est borné (absence de w) ou non borné (présence de w) et qu’il
existe au moins un blocage, le réseau est ni vivant, ni pseudo-vivant, ni
réinitialisable.
 Si le réseau est non borné (présence de w) et qu’il n’existe pas de blocage, il n’y
a pas de conclusions possibles sur la pseudo-vivacité, la vivacité et la
réinitialisation.
 Dans tous les cas, il est impossible de conclure sur la persistance.

5.2 Analyse structurelle

5.2.1 Recherche des verrous minimaux

On rappelle qu’un verrou V est un ensemble de places tel que toute transition ayant une
place de sortie dans V possède aussi une place d’entrée et qu’une condition nécessaire
de vivacité est le marquage initial (dans M0) des verrous minimaux.

43
Chapitre 5 : Analyse des Réseaux de Petri

Détermination des verrous minimaux à partir de la matrice de description C :

1  1 1  1 1 
t2  1 1 0 0 
5 t3  
t1 4 C  p,t    1 0 0  1
 
2 t4  0 0 1  1
3  0 0  1 1 

Figure 5.4 : Exemple de recherche de verrous minimaux


Réseau de Petri ordinaire fortement connexe

On progresse des + au – sur les colonnes de la matrice d’incidence en écrivant les


implications suivantes :

Si P2 alors P1 et si P3 alors P1
Si P1 alors P2
Si P4 alors P5 ou P1
Si P1 alors P3 ou P4 et si P5 alors P4 ou P3
Que l’on code de la façon suivante (dans laquelle les P ont été supprimés afin d’alléger
l’écriture suivante) :

  
 2 1 3 1 1  23
 


 1 2  1  2


 4 1 5  4  1  5

 
 1 3  4 5  3  4  
3  4  15

et les verrous minimaux correspondent aux ensembles minimaux de l’expression


booléenne:

1  231  2 1  5  4 15  3  4   123  124  1235  1245  1234  12345  12345
D’où les verrous minimaux : (P1,P2,P3), (P1,P2,P4) et (P4,P5)

5.2.2. Recherche des invariants : T semi-flots et P semi-flots

5.2.2.1 T semi-flots

Un T semi-flot est un vecteur X0 de dimension égale au nombre de transitions du


réseau et à composantes entières strictement positives ou nulles tel que :

C.X=0

44
Chapitre 5 : Analyse des Réseaux de Petri

Autrement dit, tout vecteur X à composantes entières positives ou nulles appartenant


au noyau à droite de C est un T semi-flot.

Un T semi-flot sera sit élémentaire ou minimal s’il ne couvre pas strictement un autre
T semi-flot.
On rappelle un résultat très classique d’algèbre linéaire : toute combinaison linéaire de
T semi-flots élémentaires est un T semi-flot.

5.2.2.2 P semi-flots

Un P semi-flot est un vecteur Y0 de dimension égale au nombre de places du réseau et


à composantes entières strictement positives ou nulles tel que :

YT.C=0

Autrement dit, tout vecteur Y à composantes entières positives ou nulles appartenant au


noyau à gauche de C est un P semi-flot.

Un P semi-flot sera sit élémentaire ou minimal s’il ne couvre pas strictement un autre P
semi-flot et toute combinaison linéaire de P semi-flots élémentaires est un P semi-
flot.

5.2.2.3 Exemples de calcul des P semi-flots et des T semi-flots

Il existe plusieurs techniques de calcul des T et P semi-flots. Deux seront développées


sur des exemples : l’une consiste à écrire l’ensemble des équations à vérifier, l’autre est
un algorithme itératif.

Exemple 1 : Réseau de Petri ordinaire fortement connexe (figure 5.4)

T semi-flots :

 1 1 1 1
1  x1 
 1 0 0  x 
C  p,t    1 0 0  1 et X   2 d’où les équations :
   x3 
0 0 1  1  
 0 x4 
0 1 1 

 x1  x 2  x3  x 4  0 1
x  x  0 1
 1 
et un seul T semi-flot élémentaire : 
2
 X
 x1  x 4  0 1
 x 3  x 4  0 
1

45
Chapitre 5 : Analyse des Réseaux de Petri

Le même résultat peut être obtenu avec l’algorithme itératif qui consiste à initialiser les
composantes du vecteur X par toutes les possibilités qui vérifient C1.X=0 (avec C1
première ligne de C).
Pour cet exemple, il est aisé de voir que les initialisations possibles de X sont :
1  0  0  1  1
1  1  0  0  1
X1    ou X1    ou X1    ou X 1    ou X1   
0  1  1  0  1
        
0  0  1  1  1

Et que seule la dernière solution permet de vérifier globalement C.X=0

En ce qui concerne les P semi-flots, l’utilisation au choix du lecteur, de l’une des


techniques proposées précédemment conduit à :
Y1  1
 0
T
1 0 1

Y2  0
 1
T
0 0 1

Exemple 2 : Supermarché (partie fortement connexe) figure 4.2

L’application de la seconde technique développée précédemment inciterait le lecteur à


proposer comme initialisations possibles :

X 1  1 * ou X 1  0 $
T T
* * * 1 * * * * $ $ $ 0 $ $ $ $

Avec *entier quelconque supérieur ou égal à 0 et $ entier quelconque supérieur ou égal à


0 mais non tous nuls.

Ce qui conduirait aux trois solutions possibles :

 X 1  1 1 1 1 1 0 0 0 0 0
T


 d’où les seuls T semi-flots élémentaires :
 X 2  0 1
T
0 0 0 0 1 1 1 1

 X 3  1 1
T
 1 1 1 1 1 1 1 1

 X 1  1
 0
T
1 1 1 1 0 0 0 0

 X 2  0
 1
T
0 0 0 0 1 1 1 1

En ce qui concerne les P semi-flots, on obtient 4 P semi-flots élémentaires :

Y1  1 1 1 1 1 0 0 0 0 0 0 0
T


Y2  0 0
T
0 0 0 0 1 1 1 1 1 0

Y"  0 0
T
0 1 0 0 0 0 1 0 0 1

Y'  0 1
T
0 0 0 1 0 0 0 0 1 0

46
Chapitre 5 : Analyse des Réseaux de Petri

Exemple 3 : Atelier “en étoile” (partie fortement connexe) figure 4.3

Le lecteur vérifiera que l’on obtient respectivement 4 T semi-flots élémentaires.


 X 1  1 1 0 0 0 0 0 0
T


 X 2  0 0
T
0 1 1 0 0 0

 X 3  0 0
T
0 0 0 1 1 0

 X 4  0 1
T
0 0 0 0 0 1

Et 5 P semi-flots élémentaires :
Y1  1 1 0 0 0 0 0 0 0
T


Y2  0 0
T
0 1 1 0 0 0 0

Y3  0 0
T
0 0 0 1 1 0 0

Y4  0 0
T
0 0 0 0 0 1 1
Y  2 0 2 0 4 0 4 0 1
T
 5

5.2.2.4 Composante répétitive stationnaire (consistante) élémentaire

Un ensemble T de transitions (sous-ensemble de l’ensemble des transitions du réseau


de Petri) correspondant à un T semi-flot élémentaire est une composante répétitive
stationnaire (ou consistante) élémentaire.

Exemple 1 : Réseau de Petri fortement connexe figure 5.4


On obtient une composante répétitive élémentaire (t1,t2,t3,t4)

Exemple 2 : Supermarché (partie fortement connexe) figure 4.2


On obtient deux composantes répétitives élémentaires (t1,t2,t3,t4,t5) et
(t6,t7,t8,t9,t10)

Exemple 3 : Atelier “en étoile” (partie fortement connexe) figure 4.3


On obtient quatre composantes répétitives élémentaires (t1,t2),(t3,t4),(t5,t6),(t7,t8)

Signification physique d’une composante répétitive :

Avec l'équation fondamentale des réseaux de Petri Mn = M0 + C(p,t).I et la définition des


T semi-flots support des composantes répétitives, on en déduit aisément:

X0 tel que C(p,t).X = 0 M n = M0

Donc, si les composantes répétitives sont des séquences de tir (admissibles) pour un
marquage initial donné du réseau étudié, ces séquences de tir réinitialisent le
réseau. Attention cependant à ne pas conclure sur la réinitialisation du réseau car celui-
ci peut posséder un ou plusieurs blocages.

47
Chapitre 5 : Analyse des Réseaux de Petri

Cette propriété des composantes répétitives stationnaires est très intéressante en


pratique car elle permet (plus ou moins facilement !) de repérer les composantes
répétitives élémentaires si l’on possède un modèle réseau de Petri marqué (cf.
exemples).

Réseau répétitif stationnaire (ou consistant )


S’il existe un T semi-flot élémentaire ou une combinaison linéaire de T semi-flots
élémentaires à composantes entières toutes strictement positives (ceci correspond
alors à une composante répétitive comprenant toutes les transitions du réseau), le
réseau est alors appelé réseau de Petri répétitif stationnaire.

5.2.2.5 Composante conservative élémentaire

Un ensemble de P places (sous-ensemble de l’ensemble des places du réseau de Petri)


correspondant à un P semi-flot élémentaire est une composante conservative
élémentaire.

Exemple 1 : Réseau de Petri ordinaire fortement connexe figure 5.4


On obtient deux composantes conservatives élémentaires (p1,p2,p4) et (p4,p5)

Exemple 2 : Supermarché (partie fortement connexe) figure 4.2


On obtient quatre composantes conservatives élémentaires (p1,p2,p3,p4,p5),
(p6,p7,p8,p9,p10), (p3,p8,p11) et (p5,p10,p12)

Exemple 3 : Atelier “en étoile” (partie fortement connexe) figure 4.3

On obtient cinq composantes conservatives élémentaires (p1,p2),(p3,p4),(p5,p6),(p7,p8)


et (p1,p3,p5,p7,p9)

Signification physique d’une composante conservative

Avec l'équation fondamentale des réseaux de Petri M n = M0 + C(p,t).I et la définition


des P semi-flots support des composantes conservatives, on en déduit aisément:

Y0 tel que YT.C(p,t) = 0 YT.Mn = YT.M0 = constante entière positive

Donc, les composantes conservatives élémentaires sont composées d’un ensemble de


places dans lesquelles la somme des marques est positivement bornée. Cet ensemble
de places et les transitions qui les relient forment ce que l’on appelle communément
un circuit dans un réseau de Petri
Cette propriété des composantes conservatives est très intéressante en pratique
car elle permet (plus ou moins facilement !) de repérer les circuits et les
composantes conservatives si l’on possède un modèle réseau de Petri marqué. (cf.
exemples).

48
Chapitre 5 : Analyse des Réseaux de Petri

Réseau conservatif :

S’il existe un P semi-flot élémentaire ou une combinaison linéaire de P semi-flots


élémentaires à composantes entières toutes positives (ceci correspond alors à une
composante conservative comprenant toutes les places du réseau), le réseau est alors
appelé réseau de Petri conservatif.

Propriété des composantes conservatives élémentaire et de réseau conservatif ;

Une composante conservative élémentaire est un verrou minimal (attention la


réciproque est généralement fausse).
Un réseau conservatif est structurellement (ou génériquement) borné, c’est à dire
borné pour tout marquage initial.

5.2.3 Conclusions sur les exemples des § 5.2.1 et 5.2.2

Exemple 1 : Réseau de Petri ordinaire fortement connexe –figure 5.4

Il existe un seul T semi-flot à composantes strictement positives : le réseau est donc


répétitif stationnaire.

Quelle que soit la combinaison linéaire envisagée entre les P semi-flots, la composante
n°3 restera nulle. Ceci permet de conclure que génériquement (c’est à dire quel que soit
M0) la place n°3 est non bornée et que le réseau est non conservatif donc
génériquement non borné.

Les composantes conservatives élémentaires sont des verrous, par contre il existe
un verrou qui n’est pas une composante conservative élémentaire (cf. § 5.2.1). Par
exemple, avec le marquage M0=[0 1 0 1 0]T, on peut conclure que le réseau est peut être
vivant (la condition nécessaire de marquage des verrous minimaux et la condition de
couverture d’au moins une colonne de C- sont vérifiées). Par contre, avec M0=[0 0 1 0 1]T,
on peut conclure à la non vivacité du réseau (la condition nécessaire de marquage des
verrous est non remplie).

Aucune conclusion n’est possible à priori sur la réinitialisation et la persistance, mais


si le marquage M0 rend le réseau vivant, celui-ci est réinitialisable.

Exemple 2 : Supermarché (partie fortement connexe) – figure 4.2

La somme des deux T semi-flots élémentaires conduit à un T semi-flot à composantes


strictement positives : le réseau est donc répétitif stationnaire.

La somme des quatre P semi-flots élémentaires conduit à un P semi-flot à composantes


entières strictement positives : le réseau est conservatif donc structurellement
borné.

49
Chapitre 5 : Analyse des Réseaux de Petri

Les composantes conservatives élémentaires sont des verrous et le lecteur vérifiera


qu’il n’existe pas d’autres verrous.
Le marquage proposé : M0=[NP 0 0 0 0 0 NC 0 0 0 NS NA]T avec NP, NC, NS, NA tous
différents de 0 permet de conclure que le réseau est peut être vivant (la condition
nécessaire de marquage des verrous minimaux et la condition de couverture d’au moins
une colonne de C- sont vérifiées).

Aucune conclusion n’est possible a priori sur la réinitialisation et la persitance, mais si


le marquage M0 rend le réseau vivant, celui-ci est réinitialisable.

Exemple 3 : Atelier “en étoile” (partie fortement connexe) – figure 4.3

La somme des quatre T semi-flots élémentaires conduit à un T semi-flot à composantes


strictement positives : le réseau est donc répétitif stationnaire.

La somme des cinq P semi-flots élémentaires conduit à un P semi-flot à composantes


entières strictement positives : le réseau est conservatif donc structurellement
borné.

Les composantes conservatives élémentaires sont des verrous et le lecteur vérifiera


qu’il n’existe pas d’autres verrous.
Le marquage proposé : M0=[0 1 0 1 0 1 0 1 N]T avec N  2 permet de conclure que le
réseau est peut être vivant (la condition nécessaire de marquage des verrous minimaux
et la condition de couverture d’au moins une colonne de C- sont vérifiées).

On notera que pour ce réseau généralisé la valeur de N=2 ou N=3 conduit à un réseau
pseudo-vivant, la valeur N  4 conduit à un réseau vivant.

Aucune conclusion n’est possible a priori sur la réinitialisation et la persitance, mais


si le marquage M0 rend le réseau vivant, celui-ci est réinitialisable.

5.2.4 Invariants et structures particulières

5.2.4.1 Les graphes d’états fortement connexes

Pour ce type de réseau, on possède les résultats suivants :

1/ Le nombre de T semi-flots élémentaires et donc le nombre de composantes


répétitives stationnaires élémentaires est égal à t-p+1 (avec p = nombre de places et t=
nombre de transitions) et le réseau est répétitif stationnaire.

2/ Il n’existe qu’un seul P semi-flot Y=[1 1 1 … 1]T et donc qu’une seule composante
conservative comportant toutes les places du réseau.

50
Chapitre 5 : Analyse des Réseaux de Petri

3/ Il n’existe qu’un seul verrou égal à la seule composante conservative donc à tout le
réseau.

4/ Le marquage du verrou à M0 est une condition nécessaire et suffisante de


vivacité.

Corollaire

1/ Le réseau est structurellement borné.

2/ Le marquage unitaire de n’importe quelle place du réseau est une condition


nécessaire et suffisante de vivacité. Si ce marquage est correct alors le réseau est
borné, vivant, et réinitialisable.

3/ On rappelle que par définition, un graphe d’états possède des conflits


structurels. Si le marquage de n’importe quelle place du réseau est unitaire, le
réseau est non persistant sinon il est impossible de conclure sur l’existence d’un
conflit effectif.

Exemple : Réseau de la figure 2.8

1 2
t1
t4 p1  1 1 0 1 0  1
p2  1 0 
t6 t2
0 1 0 0
t3 C
p3  0 0 0 1 1 1
4  
p4  0 1 1 0 1 0
3
t5

Par définition, on a Y=[1 1 1 1]T et un verrou égal à la composante conservative, c’est à


dire tout le réseau (P1, P2, P3, P4).
Sachant qu’il existe t-p+1=3 T semi-flots élémentaires, au moyen des méthodes
développées précédemment, le lecteur vérifiera que l’on obtient :

 X 1  0 0 0 1 0 1
T


 X 2  1 0
T
0 1 1 1

 X 1  0 0
T
1 0 1 1

Par exemple, le marquage M0=[1 0 0 0]T permet de conclure à un réseau borné, vivant,
réinitialisable, non persistant.

51
Chapitre 5 : Analyse des Réseaux de Petri

5.2.4.2 Les graphes d’événements fortement connexes

Pour ce type de réseau, on possède les résultats suivants :

1/ Il n’existe qu’un seul T semi-flot X=[1 1 1 … 1]T et donc qu’une seule composante
répétitive comportant toutes les transitions du réseau.
2/ Le nombre de P semi-flots élémentaires et donc le nombre de composantes
conservatives élémentaires est égal à p-t+1.
3/ Les verrous sont égaux aux composantes conservatives.
4/ Le marquage des verrous à M0 est une condition nécessaire et suffisante de
vivacité.

Corollaire

1/ Le réseau est répétitif stationnaire.


2/ Le marquage unitaire de n’importe qu’elle place des composantes conservatives du
réseau est une condition nécessaire et suffisante de vivacité, de plus si le réseau
est conservatif alors le réseau est borné, vivant et réinitialisable.
3/ On rappelle que par définition, un graphe d’événements est persistant.

Exemple : Réseau de la figure 2.9

p1  1 1 0
p2  1 0 
t3
1 3  1
C  p3  1 0 1
 
4
t1 p4  0 1  1
p5  1 0  1
t2
2 5

Par définition, on a X=[1 1 1]T et le réseau est répétitif stationnaire.


Sachant qu’il existe p-t+1=3 P semi-flots élémentaires, au moyen des méthodes
développées précédemment, le lecteur vérifiera que l’on obtient :

Y1  0 0 1 0 1
T


Y2  1 0
T
1 0 0

Y1  0 0
T
1 1 1

Les verrous sont donc (P1,P2), (P3,P5), (P2,P3,P4).

Par exemple, le marquage M0=[0 1 1 0 0]T permet de conclure à un réseau borné, vivant,
réinitialisable, persistant. Par contre, le marquage M0=[0 0 0 1 1]T permet de conclure à
un réseau borné, persistant mais non vivant.

52
Chapitre 5 : Analyse des Réseaux de Petri

5.2.5 Un résultat dans le cas général

Dans le cas général, on a le résultat suivant valable pour les réseaux répétitifs
stationnaires et conservatifs (r est le rang de la matrice C)
Le nombre de T semi-flots élémentaires est t - r
Le nombre de P semi-flots élémentaires est p - r

Nota: l’utilisation de ce résultat impose de vérifier la véracité des hypothèses à


posteriori.

5.2.6 En guise de résumé – Intérêt de l’analyse par les invariants

1/ Dans le cas des réseaux de Petri généralisés, cette analyse à l’avantage de:
- ne nécessiter qu’un nombre réduit de calculs: T et P semi-flots élémentaires, verrous
minimaux qui peuvent être en faible quantité même pour un réseau de grande dimension
pour lequel l’analyse visuelle serait impossible.
- permettre facilement de conclure et de façon générique au bornage.
- pour un marquage initial M0 donné, permettre de donner une condition nécessaire de
vivacité.

Par contre, les difficultés suivantes existent:


- le nombre de T et de P semi-flots élémentaires n’est pas connu à priori et le calcul
n’est pas forcément immédiat (l’intérêt de la lecture du graphe est souvent primordial).
- il n’existe pas de critère de vivacité générique.
- aucune conclusion n’est possible génériquement pour la persistance et la
réinitialisation.

2/ Dans le cas des réseaux de Petri graphe d’états et graphe d’événements, cette
analyse à l’avantage de:
- ne nécessiter qu’un nombre réduit de calculs: T et P semi-flots élémentaires, dont on
connaît le nombre à priori, qui peuvent être en faible quantité même pour un réseau de
grande dimension pour lequel l’analyse visuelle serait impossible.
- donner directement les verrous par le biais des composantes conservatives
élémentaires.
- permettre de conclure de façon générique au bornage.
- pour un marquage initial M0 donné, permettre de donner une condition nécessaire et
suffisante de vivacité.

Par contre, les difficultés suivantes existent:


- le calcul des T et des P semi-flots n’est pas forcément immédiat (l’intérêt de la lecture
du graphe est souvent primordial).
- la persistance n’est génériquement vraie que pour les graphes d’événements et la
réinitialisation n’est toujours vraie que pour les graphes d’états vivants.

53
Chapitre 5 : Analyse des Réseaux de Petri

5.3 La simulation en événements discrets

Quelques logiciels :

1/ Software académiques : RdP explicite


http://www.informatik.uni-hamburg.de/TGI/PetriNets/
CPN Tools
Petri Net Toolbox (Matlab)
TINA (Freeware sur Internet en 2016 … voir TD8)
HPSim (Freeware sur Internet en 2003…)

2/ Software industriels : RdP implicite

ARENA

WITNESS

SOLYSTIC

SIMIO

VISUAL COMPONENTS

Pour plus d’informations : http://www.informatik.uni-hamburg.de/TGI/PetriNets/

54
Chapitre 6 : La variable temps et les Réseaux de Petri

6 La variable temps et les réseaux de Petri

Dans les modèles développés aux chapitres précédents, et compte-tenu des définitions
de base des réseaux de Petri, un seul tient compte (implicitement) du temps : il s’agit
des réseaux de Petri non autonomes ou synchronisés. On rappelle que dans ce type de
modèle le franchissement d’une transition est lié bien sûr au marquage correct des
places d’entrée mais également à des conditions extérieures. Dans la pratique, ce modèle
n’a de sens que si ces informations extérieures sont disponibles au concepteur
(capteurs, compte-rendu, modes de marche …). On retombe très vite dans le domaine
des machines séquentielles ou le modèle GRAFCET s’est largement imposé comme outil
de spécification et de commande.
Pourtant, dans de nombreux procédés industriels pouvant être modélisés par des RdP, le
temps est explicitement présent (durée opératoire, temps de service …). Un modèle
macroscopique de ces procédés se doit donc de prendre en compte explicitement (c’est
à dire sans synchronisation par des événements extérieurs) la variable temps.
Les réseaux de Petri P-temporisés ou (exclusif) T-temporisés, les réseaux de Petri P-
temporels ou T-temporels permettent de résoudre de façon élégante différents types
de problèmes associés à cette variable temps.

6.1 Les réseaux de Petri P-temporisés

6.1.1 Définition formelle

Un réseau de Petri généralisé est un doublet <R , >


R = Réseau généralisé,
 = suite croissante de réels (base de temps) définissant les instants (discrets)
auxquels les transitions sont sensibilisées.

6.1.2 Sensibilisation d’une transition

La notion de sensibilisation d’une transition est la même que dans le cas des
réseaux de Petri généralisés.

6.1.3 Marquages disponibles, marquages indisponibles

Deux états sont possibles pour une marque dans une place Pi :
- indisponible durant j et j +zj, soit pendant zj,
- disponible après j +zj
avec  j  = arrivée de la marque dans pi
zj réel positif = temporisation associée a pi
Remarque : Dans un réseau de Petri P-temporisé, on dit que les temporisations sont
“dans les places”.

55
Chapitre 6 : La variable temps et les Réseaux de Petri

6.1.4 Initialisation, franchissement et fonctionnement à vitesse maximale

Par convention, à l’instant initial 0 (choisi égal à zéro dans la plupart des cas) toutes
les marques du réseau sont disponibles.
On parle de fonctionnement à vitesse maximale dans le cas où si une transition est
sensibilisée et si la (ou les) marque(s) sont disponible(s), elle est immédiatement
tirée. La conséquence du tir de cette transition est identique au cas des réseaux de
Petri généralisés.

Exemple :

Z1=2 Z1=2 Z1=2


P1 P1 P1

t1 t1 t1

Z2=3 P2 Z2=3 P2 Z2=3


P2

t2 t2 t2

t=0 0<t<3 t=3

Z1=2 Z1=2
P1 P1 DISPONIBLE

t1 t1 INDISPONIBLE

Z2=3 P2 Z2=3
P2

t2 t2

3<t<5 t=5
Figure 6.1 : Réseau de Petri P-temporisé – Evolution du marquage à vitesse maximale

6.1.5 Utilisation des réseaux de Petri P-temporisés

Les systèmes de production, de distribution, de gestion, … dont les temps moyens (de
fabrication, de services,…) peuvent être correctement représentés (temps fixes ou
valeur moyenne avec très faible écart type) par des nombres réels positifs (avec une
quelconque unité de temps) peuvent être représentés par ce type de modèle.

56
Chapitre 6 : La variable temps et les Réseaux de Petri

Exemple
Stock amont 1/2 Stock amont 3/4
1 8

Ilot Z Z3
1
2 Ilot
machine 3 2 P1 4 P3 9 10 machine
n°1
n°3
2
Robots 4
4 Stock 15 11
aval 1 2 N Stock aval 3
4
Z2
Ilot 4 Z4
machine 6 5 P2 2 Ilot
P4 12 13 machine
n°2
n°4

7 14
Stock aval 2 Stock aval 4

Pi :temps moyen de traitement dans l’îlot i


zi :temps moyen d’arrêt entre deux traitements dans l’îlot i
Figure 6.2 : Atelier en étoile paramétré en temps

6.2 Les réseaux de Petri T-temporisés

Les réseaux de Petri T-temporisés sont les “duaux” des réseaux de Petri P-
temporisés dans le sens où les temporisations qui étaient sur les places dans les P-
temporisés sont sur les transitions dans les T-temporisés. Il suffit alors de
transposer la définition et les règles des P-temporisés pour définir le fonctionnement
des T-temporisés. Pour la modélisation des systèmes définis précédemment, il y a
stricte équivalence entre un modèle P-temporisé ou T-temporisé. Le choix entre l’un
ou l’autre des modèles relève donc uniquement d’une “habitude” de modélisation. C’est
donc par goût personnel que nous utiliserons les P-temporisés dans la suite de ce cours.

6.3 Application des réseaux de Petri P-temporisés à l’analyse de


performances et au dimensionnement

Cette partie expose l’un des résultats majeurs des réseaux de Petri temporisés :
l’étude analytique des performances, en régime permanent, d’un système à événements
discrets et de ce fait ouvre les portes au dimensionnement en particulier du nombre de
ressource à affecter au système afin de vérifier un critère généralement économique,
de performances.

57
Chapitre 6 : La variable temps et les Réseaux de Petri

6.3.1 Fondement théorique

Il s’agit d’une propriété des réseaux de Petri P-temporisés conservatifs


(structurellement borné) et répétitifs stationnaires qui stipule qu’avec des
temporisations entières ou rationnelles, il existe un fonctionnement périodique au
bout d’un temps fini si le réseau fonctionne à vitesse maximale.

Remarque : Cette propriété que l’on sait vérifier (cf. chapitre 5) au moyen du calcul des
T et P semi-flots élémentaires n’est que suffisante.

Corollaire : L’existence d’un régime permanent périodique permet de définir des


fréquences moyennes de franchissement des transitions et de ce fait d'analyser les
performances du modèle en terme de production moyenne et de dimensionner le
système en recherchant les ressources nécessaires pour satisfaire un critère.

Méthode analytique d’obtention des fréquences moyennes


Notons : M(t)T=[m1(t), m2(t), m3(t),… mn(t)], le vecteur marquage du réseau à l’instant t
et (t)T le vecteur compte (transitions tirables) au même instant.
D’après l’équation fondamentale des réseaux de Petri, il revient M(t)=M(t0)+C(n,m).(t)
Avec t-t0 positif arbitrairement petit. Soit :
M (t )  M (t 0 ) M  (t )
  C.  C. f (t )
t  t0 t (t )
Le vecteur f(t) ainsi défini est homogène à un vecteur des fréquences de
franchissement.
Si la propriété précédente d’existence d’un fonctionnement permanent périodique est
vérifiée, on peut écrire une relation entre les fréquences moyennes de franchissement
et la matrice d’incidence sous la forme :
C.F=0 avec F le vecteur des fréquences moyennes de franchissement des transitions
du réseau de Petri.

Remarque : la relation algébrique précédente C.F = 0 avec F > 0 signifie que les
fréquences moyennes de franchissement des transitions d’une composante répétitive
stationnaire élémentaire sont “portées*” par le T semi-flot élémentaire associé.

Les fréquences moyennes de franchissement des transitions étant définies, il reste


alors à résoudre le problème suivant : déterminer les valeurs numériques de f1, f2, f3, …,
fm connaissant le marquage initial du réseau et les valeurs des temporisations associées
aux places ?

*
« portées » signifie que les relations de proportionnalité entre les fréquences moyennes de
franchissement de transitions d’une composante répétitive stationnaire élémentaire respectant
les valeurs entières du T semi-flot associé.

58
Chapitre 6 : La variable temps et les Réseaux de Petri

Reprenons l’équation fondamentale des réseaux de Petri avec t0 instant initial


(généralement choisi égal à zéro), on a alors :
M(t)=M(t0) + C(n,m) . (t) = M0 + C(n,m) . (t) (M0 marquage initial)

qui appliquée à chaque P semi-flot élémentaire YT donne : YTM0= YTM(t) ou en utilisant


les fréquences moyennes de franchissement et les temporisations associées aux places :
YTM0= YTZC+F ou encore (du fait des nombres entiers) :
YTM0  YTZC+F

Résumé : Procédure d’obtention des fréquences moyennes de


franchissement d’un réseau de Petri P-temporisé.

Phase 1 : on calcule (cf. méthodes chapitre 5) les T et P


semi-flots élémentaires en ne retenant que la partie fortement
connexe du graphe.
Phase 2 : on teste (cf. propriétés structurelles du chapitre
5) si ce réseau de Petri est structurellement borné et répétitif
stationnaire. Si non, la phase 3 est inapplicable.
Phase 3 : on calcule les fréquences moyennes de
franchissement au moyen des deux relations matricielles :
C.F  0
 T 
Y M 0  Y ZC F
T

Avec C+ matrice d’incidence avant (Post) et Z matrice carrée (n.n)


telle que :
z1 0  0
0 z2  
Z   z3    matrice des temporisations avec zi = 0 si la place i
 
  0
 0  0 z n 
est non temporisée.

En se souvenant que la première de ces relations signifie que les


fréquences moyennes de franchissement des transitions d’une
composante répétitive stationnaire élémentaire sont “portées” par le
T semi-flot associé.

59
Chapitre 6 : La variable temps et les Réseaux de Petri

6.3.2 Exemple élémentaire

Soit le réseau de Petri P-temporisé de la figure 6.1. Pour ce réseau élémentaire (à la fois
graphe d’événements et graphe d’états fortement connexe) on a bien évidemment un
seul T semi-flot XT=[1 1]T et un seul P semi-flot YT=[1 1]T. Le réseau est donc
structurellement borné et répétitif stationnaire, la théorie précédente est applicable et
on obtient :
F1 (fréquence moyenne de franchissement de t1) = F2 (fréquence moyenne de
franchissement de t2) = F.
2 0
Compte-tenu de M TO  1 0 et de Z   , la formule YTM0  YTZC+F nous donne
T

0 3
F=1/5 ce qui est évident sur la figure 6.1.

6.3.3 Graphe d’événements fortement connexe

P1 Z1=2

t1 P3 Z3=1

P2 Z2=3

t2

Figure 6.3 : graphe d’événements fortement connexe

On rappelle que dans ce cas, on a XT=[1 1]T et le nombre de P semi-flot est égal à 2. Pour
ce réseau, on a Y1T  1 0 et Y2T  0 1
T T
1 1
Ce réseau est donc structurellement borné et répétitif stationnaire. L’application de la
méthode précédente avec le marquage initial et les temporisations données sur le
2  ( z 1  z 2 ) F
graphe conduit à F1=F2=F et à deux inéquations : 
1  ( z 2  z 3 ) F
 2 1 
Soit F(Fmax)=min  ,  =min{0.4,O.25}=0.25
 1
( z  z 2 ) ( z 2  z 3 
)

Ainsi si le franchissement de t2 correspond à la production d’une pièce, cet îlot fabrique


en moyenne 1 pièce toutes les 4 unités de temps.

60
Chapitre 6 : La variable temps et les Réseaux de Petri

6.3.4 Quelques exemples dans le cas général

Avant-propos :
Nous donnons ci-après les énoncés de deux problèmes qui peuvent être résolus par les
techniques présentées ci-dessus et conduisant à l’analyse de performances et au
dimensionnement d’un système de distribution (Supermarché) et d’un atelier de
production (atelier “en étoile”). Seuls les cahiers des charges respectifs seront donnés
par la suite afin de permettre au lecteur de mieux comprendre le spectre très étendu
offerts par les résultats qualitatifs et surtout quantitatifs qui existent concernant les
réseaux de Petri P-temporisés. Les solutions seront données et d’autres études de cas
seront proposées en cours et en travaux dirigés.

Exemple 1 : Système de distribution – Supermarché (cf. exemple 2, §4.2.2)


On rappelle que la partie fortement connexe est donnée par le réseau de Petri P-
temporisé suivant :

Figure 6.4 : Modèle P-temporisé du Supermarché (partie fortement connexe)

Données temporelles :
Les durées moyennes de passage des deux types de clients dans les trois phases sont les
suivantes :
“Client au panier”
Plb rayons libre-service
Pc rayons “à la coupe”
Pac attente devant les caisses
Pa payement

61
Chapitre 6 : La variable temps et les Réseaux de Petri

“Client au chariot”
Clb rayons libre-service
Cc rayons “à la coupe”
Cac attente devant les caisses
Ca payement
On précise que les ressources Np, Nc, Ns, Na sont directement réutilisables

Analyse de performances et dimensionnement


Etablir les inégalités régissant le fonctionnement du système en régime permanent (on
appellera Fp et Fc les fréquences moyennes des clients “au panier” et des clients “au
chariot”).

Etude sur une journée avec flux constant des deux types de clients :
On choisit d’imposer Ns=7 et Na=11 et aucune attente aux caisses (Pac=Nac=0)
Avec les données suivantes : Pc=3 U.T., Pa= 6 U.T., Plb=11 U.T., Clb= 63 U.T., Cc= 12 U.T.,
Ca= 15 U.T. (l’unité de temps étant la minute)

Calculer : Les fréquences moyennes maximales Fp et Fc.


Le nombre minimum de chariots et de paniers.
Le seuil de rentabilité de l’opération, c’est à dire les coûts maximums
journaliers des frais fixes de la structure (salaires, publicité, location, EDF, …) sachant
que le supermarché est ouvert 10 heures par jour, qu’un client “au panier” rapporte en
moyenne 4 Euros et qu’un client “au chariot” rapporte en moyenne 15 Euros .

Le futur propriétaire choisit de mettre en service 25 paniers et 60 chariots. Quels sont


alors les temps moyens d’attente aux caisses des deux types de clients. Est-ce
intéressant économiquement pour le propriétaire ? Sinon quel est l’intérêt de cette
opération ?

Etude de 16 h à 20 h avec flux non constant des deux types de clients


Une enquête effectuée chez des concurrents montre que sur l’intervalle de temps
considéré (16h-20h en temps vrai, 0-4 en temps normalisé) les évolutions respectives
des fréquences moyennes Fp et Fc sont paraboliques et données par les courbes
suivantes :

Fc
Fp
1/3
2

1/6
1 temps temps
0 1 2 3 4 normalisé
normalisé 6
0 1 2 3 4
1 1 2 1 1
Fp   t 2  t  1 Fc  t  t
4 54 9 3

62
Chapitre 6 : La variable temps et les Réseaux de Petri

Quelle loi temporelle doit suivre le nombre Ns de serveur “à la coupe” afin


de respecter ces évolutions des fréquences moyennes ? Pour quel temps réel ce nombre
doit-il être maximum ? Calculer ce maximum.
Même question pour Na ( nombre de caisses disponibles).
Connaissant les valeurs maximums de Fp et Fc, donner le nombre de
chariots et de paniers minimum pour “passer” ces pointes.

Exemple 2 : Atelier de Production – Atelier en “étoile” (cf. exemple 3 § 4.2.2 et


figure 6.2)

On rappelle que la partie fortement connexe de ce problème est donnée par le réseau de
Petri P-temporisé de la figure 6.2.
Données temporelles :
Les durées moyennes de traitement des pièces brutes par les différents îlots sont :
pour l’îlot n°1 : p1 UT (unité de temps)
pour l’îlot n°2 : p2 UT (unité de temps)
pour l’îlot n°3 : p3 UT (unité de temps)
pour l’îlot n 4 : p4 UT (unité de temps)

Les intervalles de temps qui séparent deux utilisations successives des machines dans
les différents îlots sont :
pour l’îlot n°1 : z1 UT (unité de temps)
pour l’îlot n°2 : z2 UT (unité de temps)
pour l’îlot n°3 : z3 UT (unité de temps)
pour l’îlot n 4 : z4 UT (unité de temps)
Analyse de performances et dimensionnement
L’intervalle de temps qui sépare deux utilisations successives d’un robot est nul.
On donne z1= z2= z3= z4=0 et p1 = p2 = 1 et p3= p4= 0.5
Le nombre de robot est égal à 4

Etude simplifiée : on souhaite une production identique dans les îlots


S1/ Calculer la fréquence maximum de production.
S2/ Optimiser le nombre de robots afin d’obtenir une cadence de production égale à
celle imposée par l'îlot le plus lent.

Etude plus complexe


C1/ On utilise 4 robots et l’on veut maintenir la cadence de production calculée en S1.
Donner les temps maximums (z1, z2, z3, z4) séparant deux utilisations successives des
machines dans les différents îlots.
C2/ Donner alors en % le taux d ’occupation des machines dans les différents îlots.
C3/ On souhaite que les îlots travaillent à leur vitesse maximum. En considérant pour
chaque îlot un taux d’occupation égal à 80 %, dimensionner le nombre de robots.

63
INSA de Lyon
http://www.insa-lyon.fr

Département de Génie Electrique (G.E.)

Systèmes Automatisés de Production

Modélisation, Analyse de Performances et


Dimensionnement de systèmes à événements
discrets : approche par réseaux de Petri.

ANNALES
Xavier BRUN
xavier.brun@insa-lyon.fr

Laboratoire AMPERE
http://www.ampere-lyon.fr

65
Chère étudiante ou cher étudiant,

Vous trouverez dans ce document des examens (partiels ou complets) posés ces dernières
années aux promotions qui vous ont précédées. Comme vous l’avez compris dans ce cours la
modélisation des systèmes est un problème complexe dont les solutions peuvent être nombreuses
mais nécessitent toujours un dialogue important entre les donneurs d’ordres et les exécutants
pour assurer une bonne compréhension du cahier des charges.
Je ne connais pas de solution pour pouvoir en 2h répondre à toute une promotion et pouvoir
évaluer chacun individuellement. Ainsi j’ai essayé dans chacun de ces cahiers des charges de vous
contraindre à converger vers une seule solution, certaines ambigüités pouvant être levées lors
des questions posées, raison supplémentaire pour laquelle je vous conseille vivement de lire
attentivement l’énoncé et les questions entièrement avant d’essayer d’établir un modèle.
Pour des raisons évidentes de pédagogie je ne transmets pas de corrigé. La tentation serait
trop importante de lire la correction en croyant que vous avez compris et de vous retrouver face
à votre copie blanche le jour J. Ainsi je vous engage à comparer vos solutions et discuter entre
vous de vos résultats.
Je me tiens à votre disposition pour discuter avec vous des différentes solutions que vous
auriez trouvées, soit à la fin d’un cours, d’un TD ou dans mon bureau (voir plan ci-dessous).

Bonne révision et bonne réussite.

66
Annales AU3 – 4GE – Xavier BRUN
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
Documents autorisés : Polycopié de cours et notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur

PARTIE 1 : PROBLEME

ATELIER DE PRODUCTION

Ce problème se propose d’étudier l’analyse de performances et le dimensionnement d’un atelier de


production. Dans un premier temps, nous vous demandons d’établir le modèle de la première partie de
l'atelier décrit par le cahier des charges et de donner les équations qui régissent le système en régime
permanent si il existe. Quelques applications numériques sont également demandées. Attention de présenter
les résultats avec des unités. Dans un second temps, la seconde partie de l'atelier est prise en compte et son
influence en terme de modélisation et de mise en équation sont étudiées.

Etude de la première partie de l'atelier


L'atelier est composé de différentes ressources pour fabriquer deux types de produits semi-finis notés P1 et
P2. Le système de production est entièrement automatisé.

La production des pièces P1 se fait en trois étapes. Une première étape de découpe d'une pièce brute,
provenant d'un stock qui sera supposé de capacité infinie, est effectuée par une machine de découpe au jet
d'eau. La machine est rendue disponible dès qu'un robot est utilisé pour effectuer une tâche de vérification.
En parallèle de cette tâche de vérification un stock de capacité ST est alimenté pièce par pièce par un
système d'approvisionnement non modélisé dans cette étude. Trois pièces de ce stock ST sont utilisées
simultanément et assemblées avec un produit qui sort de la phase de vérification pour effectuer le montage
du produit P1. Dans cette étude la phase de montage ne sera pas modélisée. La modélisation de la
production de P1 se termine donc par la libération simultanée d'un robot parmi les R1 disponibles et des
trois places en stock ST.

La production des pièces P2 se fait en deux étapes. Dans un premier temps une machine de découpe au
jet d'eau est utilisée, ces machines sont identiques à celle précitées et peuvent donc être utilisées
indifféremment pour la production de P1 ou de P2. Sur cette ligne de production la machine est libérée à
l'aide de deux robots utilisés simultanément pour transporter la pièce dans un stock aval supposé de
capacité infinie. Ce temps de transport sera le seul modélisé dans l'ensemble de ce système de production.
Le dépôt dans le stock aval libère les robots qui sont différents de ceux utilisés pour la fabrication de P 1 et
limités en nombre par R2.

Le nombre de machines de découpe au jet d'eau sera noté M.


Dans cette première étude la suite du cycle de vie de ces produits ne sera pas étudiée.

Merci de spécifier toutes les notations utilisées dans votre copie (contraintes temporelles…).

P1/ Effectuer l’inventaire des flux, ressources et contraintes.

P2/ Donner un modèle réseau de Petri fortement connexe de cet atelier de production. Si il est nécessaire
de faire des hypothèses qui ne sont pas dans le cahier des charges, les spécifier.
P3/ Lire (ou calculer) les T semi-flots et les P semi-flots. Donner pour chacun d’entre eux une
interprétation physique.

P4/ Démontrer qu’il existe un fonctionnement périodique. Etablir la structure du vecteur de fréquences
moyennes de franchissement des transitions.

67
Annales AU3 – 4GE – Xavier BRUN
Données temporelles et de dimensionnement : 1 UT = 1 minute
Le temps d'utilisation des robots issus du parc composé de R1 robots identiques est de 8 UT. Le temps
d'utilisation des robots issus du parc composé de R2 robots identiques est de 11 UT. Le temps
d'utilisation des machines de découpe au jet d'eau pour la ligne de production du produit P1 est de 10
UT, pour la fabrication du produit P2 elle est de 12 UT. Le temps de maintenance moyen des robots
après chaque utilisation est de 1 UT pour le parc composé de R1 robots et de 2 UT pour le parc composé
de R2 robots (se temps correspondant à la maintenance de l'ensemble des robots utilisés lors du transport
d'un produit). Le temps de maintenance moyen des machines après chaque utilisation est de 1 UT. Le
temps moyen passé en stock ST est de 7 UT, un temps moyen d'indisponibilité des stock après chaque
utilisation sera pris en compte, ce temps étant de 1 UT. La capacité des stock ST est de 120 places. Le
parc composé de R1 (respectivement R2) robots possède 90 robots (respectivement 208 robots).

P5/ Etablir les inéquations régissant le fonctionnement de ce système en régime permanent.

P6/ En fonction des données temporelles et de dimensionnement ci-dessus, déterminer les cadences de
production maximale qui peuvent être atteintes sur chaque ligne de production. Pour assurer ces cadences de
production, déterminer le nombre minimum de machines M nécessaires dans tout l'atelier.

P7/ Discuter de l'influence de chacune des décisions suivantes prisent séparément d'une part puis les
trois simultanément d'autre part:
- Le chef d'atelier décide de diviser par deux la capacité du parc de robots R1.
- Le chef d'atelier décide de multiplier par deux la capacité des stocks ST.
- Le chef d'atelier propose de réduire le temps moyen passé en stock ST de 4 UT.

P8/ Sans changer la cadence de production du produit P2 dimensionner au plus juste le système pour que
la cadence de production de P1 devienne égale à la cadence de production de P2 ?

Etude de la seconde partie de l'atelier


Cette seconde étude s'intéresse à la suite du cycle de vie des deux produits semi-finis P1 et P2. Tenir compte
sur le modèle de réseau de Petri que vous avez obtenu précédemment que les produits semi-finis P1
(respectivement P2) sont déposés un par un dans un stock de capacité STP1 (respectivement STP2) puis
assemblés pour former le produit P3 par une machine que l'on ne modélisera pas dans cette étude (le temps
d'assemblage étant négligeable par rapport aux autres temps considérés). Attention cet assemblage
nécessite simultanément 2 produits P1 et 4 produits P2.

P9/ Effectuer l’inventaire des flux, ressources et contraintes modifiés par ce cahier des charges.

P10/ Donner un nouveau modèle réseau de Petri fortement connexe de cet atelier de production. Si il est
nécessaire de faire des hypothèses qui ne sont pas dans le cahier des charges, les spécifier.

P11/ Calculer les T semi-flots et les P semi-flots qui sont modifiés par rapport à la première situation.

P12/ Etablir la structure du vecteur de fréquences moyennes de franchissement des transitions.

68
Annales AU3 – 4GE – Xavier BRUN
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
Documents autorisés : Polycopié de cours et notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur

PARTIE 1 : PROBLEME

TRANSITIQUE et COMMERCE ELECTRONIQUE CHEZ OOSHOP

Le système automatisé de production de OOshop (filiale commerce électronique du Groupe Carrefour)


est un modèle du genre. Ce système comprend des postes de préparation de commande alimentés
automatiquement par un ensemble de transitique moderne comprenant des transstockeurs, des îlots
robotisés et des modules de convoyage. Tous ces équipements sont totalement automatisés et contrôlés par
un MES directement interconnecté avec la Supply Chain et la gestion des commandes passées par Internet.
L'accès au site Internet du magasin OOshop offre la possibilité de faire ses courses de manière
structurée. En effet le premier niveau d'accès permet de choisir ses articles selon les trois critères suivants :
Rayons, Les Halles et La Cave à Vin. Nous nous limiterons dans le cadre de ce devoir à une étude simplifiée
de deux solutions d’implantation d’un système automatisé de production concernant la gestion de La Cave à
Vin.

I/ Première solution
Il est prévu dans le cahier des charges de distribuer quatre types de produits : du vin rouge, du vin
blanc, du vin rosé et du champagne. Pour ce faire les bouteilles sont stockées dans trois types de
transstockeurs (tours de stockage automatiques) qui seront supposés de capacité infinie. Nous noterons T R le
nombre de transstockeurs comportant les bouteilles de vin rouge, TB le nombre de transstockeurs comportant
des bouteilles de vin blanc et de vin rosé (ces bouteilles de vins pouvant être mélangées, leur température de
stockage étant identiques) et enfin TC le nombre de transstockeurs ne comportant que du champagne.
L'utilisation de ces transstockeurs se déroule en deux phases, la commande client déclenche un processus
(non étudié dans le détail ici) qui met à disposition de manière automatique le vin, qui sera conditionné
manuellement ou à l'aide de robots (un robot par commande). Une fois le conditionnement effectué le
transstockeur est disponible et peut servir après maintenance pour livrer un autre client. Dans le cas des
transstockeurs livrant du vin le conditionnement est entièrement automatisé à l'aide d'un parc de N robots
identiques. Le conditionnement du champagne s'effectue manuellement par H opérateurs, un seul par
commande.
Le nombre de commandes clients sera supposé infini, ces commandes une fois sorties des transstockeurs
sont déposées sur des tapis roulants (par les robots ou les opérateurs suivant le cahier des charges ci-dessus)
qui seront également supposés de capacités infinies, la suite du procédé ne sera pas étudiée ici.
Notations:
zT = Durée moyenne de maintenance d'un transstockeur après chaque utilisation (durée identique quel que
soit le type de transstockeurs utilisé).
zS = Durée moyenne pour qu'une commande soit mise à disposition par un transstockeur (durée identique
quel que soit le type de transstockeurs utilisé).
zR1 = Temps moyen d'utilisation des robots pour vider une commande client d'un transstockeur comprenant
le vin rouge vers un tapis roulant.
zR2 = Temps moyen d'utilisation des robots pour vider une commande client d'un transstockeur comprenant
le vin blanc et rosé vers un tapis roulant.
zH = Temps moyen pour vider manuellement une commande client d'un transstockeur comprenant le
champagne vers un tapis roulant.
zP = Temps moyen de repos des employés après chaque commande
zN = Temps moyen de maintenance des robots après chaque utilisation
I1/ Effectuer l’inventaire des flux, ressources et contraintes.

69
Annales AU3 – 4GE – Xavier BRUN
I2/ Donner le modèle Réseau de Petri P-temporisé de ce système de production. Il n’existe pas de solution
unique mais un modèle possible pour la partie fortement connexe pourra être composé de 11 places et 9
transitions. Préciser les hypothèses effectuées pour les conditions initiales.
I3/ Lire (ou calculer) les T semi-flots et les P semi-flots, donner pour chacun d’entre eux une interprétation
physique.
I4/ Démontrer qu’il existe un fonctionnement périodique. Etablir la structure du vecteur de fréquences
moyennes de franchissement des transitions.
I5/ Etablir les inéquations régissant le fonctionnement de ce système en régime permanent
Données numériques: (unité de temps UT = 1 seconde)

zT = 10 UT
zS = 140 UT
zR1 = 150 UT
zR2 = 90 UT
zH = 300 UT
zP = 15 UT
zN = 6 UT

TR = 50
TB = 20
TC = 30

I6/ En tenant compte des données temporelles ci-dessus, calculer les fréquences maximum de production.
Exprimer les en nombre de commandes par minute.
I7/ Pour assurer ces cadences maximums de production dimensionner le parc robot et quantifier le nombre
d'employés nécessaire au conditionnement du champagne sur la partie de l'atelier étudiée.
I8/ Sachant que le code du travail impose au minimum, qu'une pause journalière de 20 minutes soit
respectée au-delà de 6 heures de travail par jour, que pensez-vous des conditions de travail
des salariés ?

II/ Deuxième solution


Le chef d'atelier vous demande d'étudier la robotisation complète du système précédemment étudié.
Pour ce faire on supposera que les robots utilisés dans la première solution sont également capables de
conditionner les commandes de champagne à la sortie du transstockeur, et que cette opération dure en
moyenne zR3 = 150 UT.

II1/ Donner un modèle Réseau de Petri P-temporisé de ce système. Préciser l'état initial
II2/ Les cadences de production limitées par le nombre de transstockeur ont-elles augmentées ? Si oui de
combien ?
II3/ Pour assurer ces cadences maximum de production le parc robot précédemment mentionné est-il
suffisant. Si non, combien de robots faut-il racheter ?
II4/ Conclure

70
Annales AU3 – 4GE – Xavier BRUN
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
21 janvier 2013 - Durée 2 h
Documents autorisés : Polycopié de cours et 1 feuille A4 de notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur ….

PARTIE 1 : PROBLEME

GESTION DE FLUX SUR UN PORTE-AVIONS

Ce problème se propose d’étudier les performances et le dimensionnement d'un porte avion. Nous
demandons d’établir le modèle d'une partie du réseau conformément au cahier des charges fixé dans le but
d’effectuer une analyse de performances et le dimensionnement du système. Attention de présenter les
résultats avec une interprétation physique. Dans le cadre de toute l'étude les différents temps d'attente non
spécifiés seront tous négligés.

Source http://fr.wikipedia.org/wiki/Porte-avions
Un porte-avions (cf. figure 1) est un bâtiment doté d’une puissance militaire considérable et dont les
capacités multiples en font un instrument d’une grande souplesse d’utilisation. Capable d’assurer une
projection de puissance garantissant une supériorité aérienne depuis la mer et sur la terre, le porte-avions
est une véritable base aérienne mobile. Embarquant et mettant en œuvre, à la mer, des avions de combat, il
permet de placer une force aérienne autonome en n'importe quel endroit du globe, en s'affranchissant des
éventuelles entraves diplomatiques locales. Naviguant dans les eaux internationales, il n'occasionne en effet,
au cours de son action, aucune ingérence dans une quelconque souveraineté territoriale. Par sa puissance,
sa mobilité, son autonomie et la variété de ses moyens, le porte-avions est la pièce maîtresse des flottes de
combat modernes. Sur le plan tactique, voire stratégique, il a remplacé le bâtiment de ligne dans le rôle de
navire amiral.
Structurellement, un porte-avions est une véritable ville flottante truffée d'électronique et embarquant
plusieurs dizaines d'avions et d'hélicoptères de combat de l'aéronautique navale, et nécessitant un équipage
de plusieurs milliers de marins. En raison d’un entretien extrêmement complexe et coûteux, l'exploitation
d’un porte-avions est réservée à quelques rares états disposant de moyens industriels et d’un budget de
défense importants.

Figure 1 : Vue du concept CVN-78 (Carrier Vessel Nuclear),


plus gros porte-avions en service à l'horizon 2015

Bien que l’auteur ait essayé de se rapprocher de données crédibles la suite de l’énoncé est une fiction.
Toute ressemblance avec la réalité est donc à imputer à cette dernière. Par contre, bien évidement ceci n’est
permis qu’à l’enseignant, l’étudiant devra quand à lui donner des réponses qui devront être en accord avec
les données de l’énoncé.
71
Annales AU3 – 4GE – Xavier BRUN
On supposera que sur le porte-avions étudié trois types d’appareil peuvent se poser : des hélicoptères, des
hydravions et des avions de défense. Ce porte-avions étant constitué des éléments suivants :
 un pont d'envol plat constitué de deux pistes : une piste axiale réservée exclusivement à l'appontage
et une piste latérale permettant uniquement le catapultage (ou décollage) de son parc aérien ;
 des ascenseurs permettant les mouvements des aéronefs (avions, hydravions et hélicoptères) entre le
pont d'envol et les hangars ;
 sous le pont d'envol, se trouvent les hangars où sont garés les aéronefs et où s'effectuent leur
entretien, les soutes à carburant et à munitions, les logements du personnel et les machines
fournissant l'énergie et assurant la propulsion ;
 des ressources appelées machines dans la suite de l’énoncée (robots, chariots …) utilisés pour le
rangement des aéronefs depuis le pont jusqu’au hangar.
 sur le pont d'envol se trouvent les catapultes permettant de donner aux avions une accélération au
décollage ainsi que les brins d'arrêt pour le freinage à l'appontage.
L’étude effectuée ici ne concernera que le dimensionnement et l’analyse de performances en termes
d’appontage et de rangement des aéronefs, la phase de catapultage (ou décollage) ne sera pas étudiée.
Ainsi quelque soit l’aéronef considéré son arrivée sur le porte-avions s’effectuera en deux temps : une phase
dite d’Appontage (durant zAa unité de temps pour les avions, zAy unité de temps pour les hydravions et zAh
unité de temps pour les hélicoptères), suivi immédiatement d’une phase de Rangement (durant zRa unité de
temps pour les avions, zRy unité de temps pour les hydravions et zRh unité de temps pour les hélicoptères).
La phase d’appontage ne sera modélisée que par une seule étape pour un type d’aéronef donné et
concernera l’appontage lui-même ainsi que la mise en position parking devant les ascenseurs correspondant
à la libération de la piste d’appontage.
La phase de rangement également modélisée par une seule étape pour un type d’aéronef donné
concernera l’utilisation d’un ascenseur puis d’une place dans un hangar, cette phase utilise des machines
dont le nombre dépend du type d’aéronef à ranger.
Après que chaque aéronef ait atteint sa position de parking sur le pont d’envol (et non dans le hangar) un
temps minimum est nécessaire pour retrouver des conditions climatiques compatibles avec l’appontage d’un
autre aéronef. Ce temps “d’attente Climatique” diffère en fonction du type d’aéronef qui vient d’apponter, il
sera noté zCa, zCy, zCh respectivement pour les avions, les hydravions et hélicoptères. Dans tous les cas devra
faire suite à ces temps d’attentes climatique un temps dit de sécurité identique pour les trois types d’aéronefs
(et donc représenté par une seule étape), noté zS.
La phase de rangement nécessite une ou plusieurs machines selon l’aéronef concerné. Les hélicoptères
utilisent deux machines, les avions trois et les hydravions une seule. Après chaque cycle de rangement un
temps moyen (opération de Maintenance …) est nécessaire avant un nouveau rangement. Ce temps sera noté
zM quelque soit le nombre de machines utilisées. Le nombre de places sur le Pont sera noté P (on supposera
donc que si P est différent de 1, que plusieurs aéronefs peuvent “en moyenne” être en même temps dans la
phase d’appontage), le nombre de Machines sera noté M, le nombre d’ascenseurs sera supposé infini, les
hangars seront supposés de capacité infinie.
P1/ Donner un modèle réseau de Petri fortement connexe de ce système. S'il est nécessaire de faire des
hypothèses qui ne sont pas dans le cahier des charges, les spécifier.
P2/ Après avoir démontré qu’il existe un fonctionnement périodique, établir les inéquations régissant le
fonctionnement de ce système en régime permanent.
P3/ Sachant qu’en moyenne en régime permanent 30 hydravions et 60 hélicoptères atterrissent par heure
et qu’il n’existe que deux places pour les aéronefs (quelque soit le type) sur le pont, argumenter votre étude
permettant de dimensionner le nombre minimum de machines permettant de faire apponter un nombre
maximum d’avions par heure.
P4/ Pour chaque type d’aéronef on veut respecter au minimum 45 secondes entre chaque appontage. Que
préconisez-vous ?
Données temporelles et de dimensionnement : 1 UT = 1 Unité de Temps = 1 seconde
zCa = 20 UT zAa = 10 UT zRa = 25 UT zS = 10 UT
zCy = 10 UT zAy = 20 UT zRy = 55 UT zM = 5 UT
zCh = 5 UT zAh = 25 UT zRh = 80 UT

72
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
24 janvier 2012 - Durée 2 h
Documents autorisés : Polycopié de cours et notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur ….
Cet examen comporte 2 parties indépendantes (un problème et un exercice). Le soin apporté à la
présentation et les commentaires sur les résultats obtenus sont les bienvenus et seront pris en
compte dans la notation.
Barème envisagé : exercice sur 4 points et problème sur 16 points.
EXERCICE : Ordonnancement
Le réseau de Petri ci-dessous représente le partage de N machines sur trois flux de production
produisant les pièces P1, P2 et P3.

t1 t3 t5
P1 4 P2
1 N 2 3 P3
t2 t4 t6

E1/ Lire ou calculer les T et P semi-flots, et interpréter physiquement les résultats.


E2/ Compléter ce réseau sur cette feuille pour permettre d'assurer l'ordonnancement suivant : 30
P2 puis 20 P3 puis 55 P1 puis 30 P2 …
E3/ A partir de ce nouveau réseau de Petri, lire ou calculer les T et P semi-flots, et interpréter
physiquement les résultats.

PROBLEME : STATION DE SKI


Ce problème se propose d’étudier les performances et le dimensionnement d’une (petite) partie d'une
station de ski. Dans un premier temps, nous demandons d’établir le modèle d'une petite station décrit
par un cahier des charges et de donner les équations qui régissent le système en régime permanent s'il
existe. Quelques applications numériques sont également demandées. Attention de présenter les
résultats avec des unités. Dans un second temps, la station de ski est agrandie et une étude en termes
de modélisation et de mise en équation est effectuée. Pour conclure, une phase d'analyse de
performances et de dimensionnement est demandée. Dans tout le cadre de l'étude les différents temps
d'attente seront tous négligés.
Pré-étude
Il s'agit de modéliser ici une partie d'une station de ski ne comportant qu'une seule remontée
mécanique (téléphérique) en haut de laquelle se situent deux pistes permettant de rejoindre le bas de
la station et donc, de la remontée mécanique. Les skieurs n'ont d'autre choix que de monter par le
téléphérique et de redescendre soit par une piste rouge soit par une piste noire. Tout ski hors piste est
interdit ainsi que toute remontée par d'autres moyens que la remontée mécanique (pas de ski de
randonnées,…).
La capacité d'accueil de la remontée mécanique est limitée à T1 places. On supposera également
que le nombre de places sur les pistes est limité et on notera cette limite R pour la piste rouge et N
pour la piste noire.
Afin de limiter la complexité du modèle demandé dans la suite de l'étude, on supposera que dès
que les skieurs quittent le téléphérique, ils utilisent soit la piste noire, soit la piste rouge. Il est
demandé de spécifier toutes les notations utilisées dans la copie (contraintes temporelles,…).
P1/ Effectuer l’inventaire des flux, ressources et contraintes.

73
P2/ Donner un modèle réseau de Petri fortement connexe de ce système. S'il est nécessaire de faire
des hypothèses qui ne sont pas dans le cahier des charges, les spécifier.
P3/ Lire (ou calculer) les T semi-flots et les P semi-flots. Donner pour chacun d’entre eux une
interprétation physique.
P4/ Démontrer qu’il existe un fonctionnement périodique.
P5/ Etablir la structure du vecteur de fréquences moyennes de franchissement des transitions.
P6/ Etablir les inéquations régissant le fonctionnement de ce système en régime permanent.
Données temporelles et de dimensionnement ou de performances : 1 UT = 1 seconde
Le temps moyen d'utilisation de la remontée mécanique est de 297 UT, le temps moyen de mise à
disposition (ce temps comprend la maintenance) de la remontée mécanique après chaque
utilisation est de 3 UT. Les temps où les deux pistes de ski ne peuvent être utilisées seront négligés.
Le temps moyen pour descendre la piste rouge (respectivement la piste noire) est de 180 UT
(respectivement 480 UT). Des études statistiques effectuées sur la piste rouge ont permis de mettre
en avant le fait qu'en moyenne 6 skieurs arrivent en bas de la piste toutes les secondes. La capacité
d'accueil maximale de la remontée mécanique est de 3000 places

P7/ En fonction des données ci-dessus, analyser les performances maximales de ce modèle en
donnant le dimensionnement minimal nécessaire pour maintenir les performances données ou
trouvées.
P8/ Discuter de l'influence de chacune des décisions suivantes prises séparément :
- Le responsable des pistes dimensionne la piste noire pour accueillir simultanément au maximum
2000 personnes sur cette piste.
- Le responsable des pistes dimensionne la piste rouge pour accueillir simultanément au maximum
1000 personnes sur cette piste.
Extension de la station de ski
Pour augmenter l'affluence de touristes dans la station, il est décidé de rajouter une seconde remontée
mécanique (télécabine) qui part du même point de départ que le téléphérique et donne accès à deux
pistes distinctes, soit une nouvelle piste (bleue), soit la même piste noire étudiée précédemment.
La capacité d'accueil de la nouvelle remontée mécanique est limitée à T2 places. On supposera
toujours que le nombre de places sur les pistes est limité et on notera cette limite R pour la piste
rouge, N pour la piste noire et B pour la piste bleue.
Afin de limiter la complexité du modèle demandé dans la suite de l'étude, on supposera que dès
que les skieurs quittent l'une des remontées mécaniques, ils utilisent la piste noire, la piste rouge ou la
piste bleue. L'utilisation de la piste noire sera modélisée par le même état quelque soit la remontée
mécanique utilisée.
Il est demandé de spécifier toutes les notations utilisées dans la copie (contraintes temporelles,…).
P9/ Effectuer l’inventaire des flux, ressources et contraintes par ce cahier des charges.
P10/ Donner un nouveau modèle réseau de Petri fortement connexe à partir de ce cahier des
charges. S'il est nécessaire de faire des hypothèses qui ne sont pas dans le cahier des charges, les
spécifier.
Données temporelles et de dimensionnement ou de performances : 1 UT = 1 seconde
Toutes les données issues de la pré-étude restent valables. Le temps moyen d'utilisation de la
nouvelle remontée mécanique est de 315 UT, le temps moyen de mise à disposition de la nouvelle
remontée télémécanique après chaque utilisation est de 5 UT. Les temps où les pistes de ski ne
peuvent être utilisées seront négligés. Le temps moyen pour descendre la piste bleue est de 420 UT.
Des études statistiques effectuées sur la piste bleue (respectivement la piste noire) ont permis de
mettre en avant le fait qu'en moyenne 5 skieurs (respectivement 14 skieurs) arrivent en bas de la
piste toutes les secondes.
P11/ En fonction des données ci-dessus, analyser les performances maximales de cette station de
ski en donnant le dimensionnement minimal nécessaire pour maintenir les performances trouvées ou
données. La station peut-elle accueillir en même temps 10 000 skieurs sur les pistes ?

74
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
18 juin 2012 - Durée 2 h
Documents autorisés : Polycopié de cours et 2 feuilles A4 de notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur ….

Cet examen comporte 2 parties indépendantes (un exercice et un problème). Le soin apporté à la
présentation et les commentaires sur les résultats obtenus sont les bienvenus et seront pris en
compte dans la notation.
Barème envisagé : exercice sur 5 points et problème sur 15 points

EXERCICE

Soit le réseau de Petri défini par sa matrice d'incidence 𝐶 et son vecteur de marquage initial 𝑀0 ci-
après :

1 −1 0 0
0 1 −1 0
𝐶=[ ] 𝑀0 = [ ]
−1 0 1 2
0 −1 1 1

E1/ Démontrer les propriétés liées au marquage initial 𝑀0 donné en terme de vivacité, de bornage
et de réinitialisation.
E2/ En temporisant chacune de place Pi par une temporisation notée zi, tel que z1=3, z2=2, z3=5,
z4=1 et en supposant comme marquage initial 𝑀1 = [0 0 𝑁 𝑅 ]𝑇 tel que N = 200 et R = 84,
calculer les fréquences maximales que peuvent atteindre chacun des flux de production.
E3/ Vous ne pouvez modifier que l'une des deux valeurs N ou R. Que proposez vous pour
augmenter la productivité ?

PROBLEME : ATELIER de RECYCLAGE


Ce problème se propose d’étudier les performances et le dimensionnement d'un atelier de recyclage.
Dans un premier temps, nous demandons d’établir le modèle d'une partie de l'atelier conformément au
cahier des charges fixé et d'obtenir les équations qui régissent le système en régime permanent s'il
existe. Quelques applications numériques sont également demandées. Attention de présenter les
résultats avec une interprétation physique. Dans un second temps, la suite du cycle de recyclage est
étudiée en termes de modélisation et de mise en équation pour dimensionner le système afin d'obtenir
les performances optimales. Dans tout le cadre de l'étude les différents temps d'attente non spécifiés
seront tous négligés. Ces deux parties peuvent être traitées indépendamment.

Première partie
Il s'agit de modéliser ici une partie d'un atelier de recyclage qui comporte deux types de
machines qui seront notées M1 et M2. A partir de matières premières, qui seront supposées toujours
disponibles, ces machines produisent trois types de produits semi-finis P1, P2 et P3 qui seront stockés
dans des stocks spécifiques de capacités SP1 (pour le produit P1), SP2 (pour le produit P2) et SP3 (pour
le produit P3). Chaque utilisation d'une machine de type M1 permet de fabriquer simultanément un
produit P1 et un produit P2. Chaque utilisation d'une machine de type M2 permet de fabriquer
simultanément un produit P2 et un produit P3. La fin d'utilisation de chaque machine correspond
temporellement au début de l'utilisation des stocks. Dans le but d'obtenir deux types de produits notés

75
PA et PB, les produits semi-finis sont assemblés par des ressources non modélisées ici. Ainsi
l'assemblage d'un produit semi-fini P1 avec un produit semi-fini P3 permet d'obtenir le produit PA. Le
produit PB est obtenu par l'assemblage de deux produits semi-finis P2.
Afin de limiter la complexité du modèle demandé dans la suite de l'étude, on supposera dans un
premier temps que la capacité d'accueil des stocks des produits PA et PB est illimitée.
Il est demandé de spécifier toutes les notations utilisées dans la copie (contraintes temporelles,…).

P1/ Donner un modèle réseau de Petri fortement connexe de ce système. S'il est nécessaire de faire
des hypothèses qui ne sont pas dans le cahier des charges, les spécifier.
P2/ Calculer les T semi-flots élémentaires. Lire (ou calculer) les P semi-flots élémentaires. Donner
pour chacun des T et P semi-flots élémentaires une interprétation physique.
P3/ Démontrer qu’il existe un fonctionnement périodique.
P4/ Etablir la structure du vecteur de fréquences moyennes de franchissement des transitions.
P5/ Etablir les inéquations régissant le fonctionnement de ce système en régime permanent.

Données temporelles et de dimensionnement : 1 UT = 1 Unité de Temps


L'atelier est composé de 101 000 machines de type M1 et autant de type M2. Les temps moyen
d'utilisation des stocks de produits semi-finis SP1, SP2 et SP3 sont respectivement égaux à 20 UT,
60 UT et 100 UT. Le temps moyens de non utilisation des places en stock pour les produits semi-
finis correspond à 5% des temps moyen d'utilisation. Les durées d'utilisation des machines M1 et
M2 sont en moyenne identiques et égales à 1000 UT. Ces machines nécessitant une maintenance
correspondant en moyenne à 1% de la durée d'utilisation.

P6/ En fonction des données ci-dessus, analyser les performances optimales de ce modèle en
donnant le dimensionnement optimal nécessaire pour maintenir les performances trouvées. Exprimer
ces performances optimales en terme de nombre de produit PA et PB fabriqués par unité de temps.
P7/ Sachant qu'en moyenne une place en stock d'un produit semi-fini correspond à 1 m2 au sol,
que ces produits ne peuvent pas être entreposés l'un sur l'autre, est-ce qu'un stock total d'un hectare est
suffisant ?

Seconde partie
Dans cette poursuite de l'étude, les produits PA et PB sont conditionnés par une machine de type M3
après avoir été stockés dans des zones supposées maintenant de capacités finies que l'on notera SP A
(pour le produit PA) et SPB (pour le produit PB). Cette phase de conditionnement dure 50 UT et
correspond au mélange de un produit PA avec un produit PB pour former un produit final noté PFINAL.
Les machines M3 sont disponibles immédiatement après chaque utilisation.

P8/ Proposez un modèle correspondant uniquement au cahier des charges de la seconde partie.
Etablir les inéquations régissant le fonctionnement de ce modèle en régime permanent s'il existe.

P9/ On supposera que 100 pièces PA et 100 pièces PB sont produites par unité de temps. Calculer le
nombre de produit PFINAL fabriqués par unité de temps et dimensionner le nombre de machines M3
nécessaires pour travailler à fréquence maximale.

Question bonus
On considère comme cahier des charges les deux énoncées données à chaque partie en respectant la
contrainte de dimension finie sur les stocks SPA et SPB. On garde les mêmes contraintes temporelles et
de dimensionnement. On ne tient pas compte des cadences de production fixées à la question P9.
P10/ Dimensionner le nombre de machines M3 permettant de fonctionner aux cadences maximales
de production ?

76
Examen - 4GE - AU3 - Automatique SED
Xavier Brun -INSA de Lyon - Laboratoire Ampère
Documents autorisés : Polycopié de cours et notes personnelles
TOUT appareil électronique est INTERDIT : calculatrice, téléphone, tablette, ordinateur

USINAGE et VERIFICATION

Cette étude concerne une partie d’un atelier de production fabriquant différents types de pièces
selon la méthode suivante. Sur l’une des lignes de production une pièce provenant d’un stock amont
est usinée sur une machine à commande numérique puis est transférée vers le centre de l’atelier ou
siège le poste de vision muni de NC caméras. Deux d’entre elles seront alors utilisées, puis après
traitement des images, le produit est classé conforme ou non dans des stocks avals. Seuls les taches
d’usinage et de conformité seront modélisées, toutes les phases de transfert ne seront pas représentées
dans le modèle car leur durée est négligeable devant la durée des autres actions. Sur une ligne de
production en parallèle, un autre type de pièce est fabriqué. Il s’agit de souder et de visionner des
pièces soit avant soudage, soit après soudage (mais pas les deux), ces deux gammes de fabrication
utilisent les mêmes machines de soudage (au nombre de NS) ainsi que le poste de vision précité, une
seule caméra est nécessaire dans ce cas.
Tous les stocks seront supposés de capacité infinie.
Le nombre de machine d’usinage à commande numérique sera noté NU.
Données temporelles :
Durée moyenne d’usinage = zU
Durée moyenne de soudage = zS
Durée moyenne d’acquisition et traitement d’image après usinage = zV1
Durée moyenne d’acquisition et traitement d’image après soudage = zV2
Durée moyenne d’acquisition et traitement d’image avant soudage = zV3
Durée d’indisponibilité du poste de vision entre deux utilisations = zVind
Durée d’indisponibilité du poste d’usinage entre deux utilisations = zUind
Durée d’indisponibilité du poste de soudage entre deux utilisations = zSind

Travail à effectuer :
1°/ Effectuer l’inventaire des flux, ressources et contraintes.

2°/ Donner le modèle RdP P-temporisé de cet atelier. Il n’existe pas de solution unique mais un
modèle possible pour la partie fortement connexe pourra être composé de 9 places et 9 transitions.
Faire apparaître le marquage initial, on supposera qu’à l’état initial toutes les machines et toutes les
caméras sont disponibles, et qu’aucune pièce ne se trouve sur les lignes de production.

3°/ Lire (ou calculer) les T semi-flots et les P semi-flots, donner pour chacun d’entre eux une
interprétation physique.

4°/ Démontrer qu’il existe un fonctionnement périodique. Etablir la structure du vecteur de fréquences
moyennes de franchissement des transitions.

5°/ En respectant les notations des données temporelles ci-dessus, établir les inéquations régissant le
fonctionnement de ce système en régime permanent.

Données numériques : (unité de temps UT = 1 minute)


zU = 9 UT zS = 17 UT z Uind = 1 UT z Sind = 3 UT
La durée d’acquisition et du traitement de (ou des) image(s) ne prend qu’une seule unité de temps, la
caméra étant immédiatement disponible après chaque utilisation.
L’atelier est composé de 100 postes d’usinage, 200 postes de soudure et 30 caméras.

77
6°/ A partir de données numériques ci-dessus, établir les fréquences maximums de fonctionnement sur
chacun des flux modélisés.

7°/ Vous avez le choix entre des postes de soudure à 10 k€ qui demandent en moyenne 3 UT réservées
à la maintenance après chaque utilisation, et des postes plus cher mais ne demandant qu’une seule
unité de temps. En conservant les cadences maximales calculées précédemment, en dessous de quel
prix les postes de soudure les plus chers deviennent-ils les plus avantageux en terme d’investissement.

8°/ Une analyse du cahier de commandes client permet d’envisager un taux de production sur chaque
ligne de 600 pièces par heure. A partir des données temporelles précédentes (z Sind = 3 UT),
dimensionnez l’atelier permettant d’assurer ces cadences de production.

78
Bibliographie
BRAMS G.W. (ouvrage collectif) Réseau de Petri : Théorie et Pratique, Masson, 1983
Tome 1 “Théorie et analyse” - 184 pages
Tome 2 “Modélisation et applications” - 160 pages

DAVID R., ALLA H., “Du Grafcet au Réseau de Petri“, Hermès, différentes éditions, 1989-
1995

JENSEN K., “Colored Petri nets. Basic concepts, analysis methods and practical use“, 2 volumes,
Springer-Verlag, 1991, 1995

PETERSON J.L, “Petri nets theory and modeling of systems“, Prentice Hall, 1981

PROTH J.M., XIE X., “Les réseaux de Petri pour la conception et la gestion des systèmes de
production“, Masson, 292 pages, 1995.

RICHARD M., “Réseaux de Petri, Grafcet et Automates“, différentes éditions 1987-1996 (en
collaboration avec D. Thomasset depuis 1994).

SIFAKIS, J. “Use of Petri nets for Performance Evaluation,” 3rd International Symposium on
Modeling and Evaluation, IFIP, North Holland, pp. 75-93, 1977

Périodiques:

Lecture Notes in computer Science,


IEEE Transactions of Automatic Control,
IEEE Transactions of Systems Man and Cybernetics

Site web :
http://www.informatik.uni-hamburg.de/TGI/PetriNets/

79
TRAVAUX
DIRIGES
TD 1

TD 1 : Modélisation

Exercice 1 : Modélisation d’une tâche de production

Le système considéré est constitué de deux machines, chacune précédée d’un stock. Les
pièces sont transportées par deux palettes (portant chacune une pièce) dans l’ordre suivant :
stock 1 (ST1) machine 1 (M1) stock 2 (ST2)  machine 2 (M2) stock 1 (ST1) … (cf. figure 1).

ST1 M1 ST2 M2

Figure 1

1.1 Les stocks sont supposés de capacités infinies et les machines peuvent traiter un nombre
illimité de pièces en même temps. Représentez le fonctionnement de ce système par un
Réseau de Petri ordinaire.

1.2 Les hypothèses sur le système sont modifiées : la machine 1 ne peut traiter qu’une pièce à
la fois tandis que la machine 2 peut traiter deux pièces à la fois. Adaptez le modèle
précédent à ces nouvelles hypothèses.

1.3 De nouvelles contraintes sont ajoutées sur le système concernant la capacité des stocks
numéro 1 et 2 pouvant contenir respectivement 5 et 4 palettes. Le nombre total de
palettes sur la ligne de fabrication est limité à 5. L’état initial du système correspond à une
mise en route après une période de maintenance où toutes les machines sont disponibles, le
stock numéro 2 est vide et toutes les palettes sont dans le stock numéro 1. Prenez en
considération ces nouvelles hypothèses dans votre modèle.

1.4 Que devient le réseau de Petri si les machines 1 et 2 produisent par lot de 3 ?

1.5 Bilan : sur le dernier réseau de Petri obtenu effectuez l’inventaire :


- des flux,
- des ressources,
- des contraintes de production.

83
TD 1

Exercice 2 : Modélisation d’une station essence


Cahier des charges
Soit une station d’essence proposant trois types de carburant :
- du super normal,
- du sans plomb 98,
- du gazole.
Ce carburant est délivré par 3 catégories de pompes différentes.
NN pompes de super normal,
- NP pompes de sans plomb 98,
- NG pompes de gazole.
Le nombre de clients pouvant se présenter est supposé infini.
Les cuves sont supposées de capacité infinie.
Le payement s’effectue au près de caissiers :
- soit NC le nombre de caisses.
2.1/ Effectuez l’inventaire :
- des flux,
- des ressources (propres ou communes),
- des contraintes de production
2.2/ Modélisez cette station de carburant. Attention le cahier des charges est
incomplet, à vous d’effectuer des choix supplémentaires concernant le
fonctionnement de ce système. Il va de soit que plusieurs solutions sont possibles,
complétez également le cahier des charges en fonction des décisions adoptées.

Exercice 3 : Atelier de production


Représentez le réseau de Petri généralisé modélisant l’atelier à tâches défini
avec les caractéristiques suivantes (cf. figure 2) :
o 4 machines M1, M2, M3 et M4,
o 3 stocks ST1, ST2, ST3.
Cet atelier peut traiter 2 types de pièces (P1 et P2) selon les routages suivants :
o routage pour la pièce P1 : M1, M2, M3 puis M4 ;
o routage pour la pièce P2 : M3, M2 puis M4.
Ces machines ne traitent qu’une pièce à la fois sauf M2 qui traite soit simultanément 3
pièces de type P1, soit une seule pièce de type P2. Les stocks sont de capacité égale à 3.
Le marquage initial représente l’atelier vide et toutes les machines disponibles.
P1 M1 ST1 M2 ST2 M4 P1

P2

P2

M3 ST3

Figure 2

84
TD 2

TD 2 : Modélisation

Exercice 1 : Modélisation d’une cellule robotisée


Cette étude concerne une partie d’un atelier de production et plus précisément le
dimensionnement des deux lignes de fabrication de pièces P1 et P2 permettant
l’approvisionnement d’une machine d’assemblage.
Description des ces deux lignes :
Ligne P1 : Contrairement à de nombreux exemples traités en cours, cette ligne débute par un
stock initial supposé toujours alimenté mais très éloigné de l’îlot de traitement (situé en fait
vers les quais de déchargement des pièces brutes qui sont acheminées par voie ferrée). Ainsi,
une opération de transport dont la durée n’est pas négligeable permet d’acheminer ces pièces
brutes vers le stock amont de l’îlot de traitement. On précise que ce stock amont peut être
considéré comme de capacité infinie. L’îlot de traitement est composé de N1 machines
identiques (ce qui est équivalent à dire que l’on a une capacité de traitement de une à N 1 pièces à
la fois). Après traitement, les pièces sont de nouveau transportées afin d’être déposées dans
un stock aval supposé de capacité infinie. Cette opération de transport de durée non
négligeable se justifie, pour les mêmes raisons que précédemment, c’est à dire du fait de
l’éloignement du stock aval de l’îlot machine.
Ligne P2 : Comme la ligne P1, cette ligne débute par un stock initial supposé toujours
alimenté mais très éloigné de l’îlot de traitement (situé également vers les quais de
déchargement). Ainsi, une opération de transport dont la durée n’est pas négligeable permet
d’acheminer ces pièces brutes vers le stock amont de l’îlot de traitement. On précise que ce
stock amont peut être considéré comme de capacité infinie. L’îlot de traitement est composé
de N2 machines identiques (ce qui est équivalent à dire que l’on a une capacité de traitement de
une à N2 pièces à la fois). Après traitement, et contrairement à la ligne P1, les pièces sont
directement déposées (donc sans opération de transport) dans un stock aval (situé juste
derrière la machine) supposé de capacité infinie.
Remarques générales :
- toutes les opérations de transport des pièces dans les lignes P1 ou P2 sont effectuées par
un ensemble R de robots banalisés. Un seul robot est nécessaire pour les transports (stock
initial vers stock amont de l’îlot machines, îlot machines vers stock aval) de la ligne P1. Par
contre du fait de pièces de volume différent, deux robots sont nécessaires pour le transport
(stock initial vers stock amont de l’îlot machines) de la ligne P2.
On précise que ces ressources banalisées qui sont utilisées pour le transport des pièces
redeviennent disponibles que lorsque le traitement débute sur les îlots machines.
- un ensemble composé de H ressources humaines est commun aux îlots machines des lignes
P1 et P2. Pour traiter une pièce (c’est à dire faire fonctionner une machine de l’îlot considéré)
une seule ressource humaine est nécessaire sur la ligne P1 alors que la ligne P2 nécessite 3
ressources humaines. On notera donc que ces ressources humaines banalisées ne sont
utilisées que pour le traitement des pièces et non pour les opérations de transport.

1.1 Effectuez l’inventaire :


- des flux,
- des ressources (propres ou communes),
- des contraintes de production.

85
TD 2
1.2 Etablissez alors le réseau de Petri généralisé modélisant cet atelier.
Exercice 2 : Modélisation d’un atelier de production en Kanban

La figure 1 représente la conduite d’un système de production par kanbans. Ce système


est composé de deux mailles de production en série. La maille i est composée du système de
production i et de son stock de produits finis STi (les pièces dans un stock ne sont pas
ordonnées ; on peut les considérer comme étant en vrac, parce qu’elles sont toutes identiques).
Les pièces brutes sont dans le stock ST0. Pour qu’une pièce du stock STi-1 entre dans le système
de production i, il faut qu’elle porte un kanban i (i=1, 2). Lorsqu’elle est terminée, elle est
déposée dans le stock STi avec son kanban qui lui reste attaché. Lorsqu’une pièce est retirée du
stock STi pour satisfaire une demande de l’aval (demande d’un client extérieur pour ST 2 ou
demande de la maille 2 par l’arrivée d’un kanban 2 pour ST1), on la sépare de son kanban i, et on
lui adjoint un kanban i+1 (sauf si la maille i est la dernière). Le kanban i est alors rapporté à
l’entrée du système de production i, pour être affecté à une autre pièce.

Retour du Retour du
kanban 1 kanban 2

Système de Système de
Arrivée d’une Satisfaction d’une
production 1 production 2
pièce demande

Stock ST0 Stock ST1 Stock ST2

Figure 1

2.1 Représentez ce système par un RdP ordinaire en faisant les hypothèses suivantes :
o Pour chaque maille i, il y a une place correspondant aux pièces dans le système de
production i et une place correspondant aux pièces dans le stock ST i, le passage de l’un à
l’autre se faisant par le franchissement d’une transition qui correspond à l’exécution de
la pièce, et une seule peut être traitée à la fois ;
o Il y a deux kanbans pour la maille 1 et trois kanbans pour la maille 2 ;
o Il n’y a pas eu de demandes provenant de l’aval du système depuis longtemps, et il y a
trois pièces brutes dans le stock ST0.

2.2 On considère maintenant une maille i dans laquelle les pièces entrent dans le système de
production par lots de trois, sont traitées une par une, et sont déposées dans le stock aval
par lots de trois pièces terminées. Un kanban est associé à un lot. Les pièces arrivent une
par une et sont demandées une par une. Dès que la dernière pièce est retirée d’un lot
présent dans STi, on autorise le traitement d’un nouveau lot (retour du kanban).
Représenter ce système par un RdP généralisé en supposant qu’il y a deux kanbans et que
le marquage initial est le suivant : il n’y a pas eu de demande de l’aval depuis longtemps. Il y
a quatre pièces dans STi-1 et quatre pièces dans STi (soit un lot complet plus une pièce).

Modélisez une maille i de cet atelier comprenant un stock Sti-1, un stock Sti, un Kanban i et
un Kanban i+1. Une solution envisageable peut être représentée par un RdP à 9 places et 8
transitions.

86
TD 3

TD 3 : Modélisation d'une usine de logistique

La logistique est dénommée sur le plan informatique le routage qui est une méthode
d'acheminement des informations à la bonne destination à travers un réseau. Dans le cadre de
cette étude nous nous plaçons dans un contexte manufacturier ou les informations sont des
colis et le réseau est constitué d’un circuit de chariots filoguidés. Il s’agit donc d’étudier un
centre de tri comme on peut en trouver à La Poste ou chez ses concurrents (FedEx, Calberson
…).

Le rôle du système de production étudié est de diriger les colis provenant de camions
de trois catégories (régionale, nationale et internationale) et arrivant en zone de
déchargement vers des camions fournissant soit des particuliers soit des professionnels
et situés en zone de chargement. Pour ce faire l’utilisation d’un unique circuit composé
de NC chariots filoguidés permet le transit des colis depuis la zone d’entrée (zone de
déchargement) vers la zone de sortie (zone de chargement) et ceci conformément à la
figure 1.

Zone de déchargement USINE Zone de chargement

Camions
régionaux
Clients
Circuit professionnels
Camions de chariot
nationaux filoguidés
Clients
particuliers
Camions
internationaux

Figure 1 : Vue schématique de l’usine de logistique

Le circuit filoguidé permet de faire circuler les chariots dans l’ordre suivant :
- déchargement de camions régionaux,
- déchargement de camions nationaux,
- déchargement de camions internationaux,
- chargement de clients particuliers,
- chargement de clients professionnels,
- maintenance des chariots,

Ce site de distribution permet donc de fournir deux types de clients : professionnels et


particuliers. Les professionnels reçoivent des marchandises de provenance nationale et
internationale (mais pas régionale), les particuliers reçoivent des colis régionaux et nationaux
(mais pas internationaux). De plus les livraisons des professionnels étant plus importantes (en
taille), elles demandent l’utilisation de deux chariots filoguidés simultanément, alors qu’un seul
suffit pour servir les particuliers.

Lors de la modélisation du circuit filoguidé les étapes amenant les chariots filoguidés d’un
poste à l’autre ne seront jamais représentés, leur durée étant négligeable par rapport aux
états de déchargement, chargement et maintenance (une rapide vérification est effectuée

87
TD 3
sur les chariots après chaque cycle d’utilisation). Chaque chariot filoguidé est débrayé de son
circuit lorsqu’il est utilisé sur l’une des trois zones de déchargement ou sur l’une des deux
zones de chargement. Ces opérations sont effectuées manuellement, les ressources humaines
ne seront pas modélisées.

Ainsi chaque commande de professionnel nécessite deux chariots simultanément utilisés,


qui après avoir été rempli dans les zones de déchargement des camions nationaux puis
internationaux, sont vidés dans la zone de chargement des camions qui servent les
professionnels puis les chariots pourront être réutilisés (ensemble ou séparément) après
maintenance. De même chaque commande de particulier nécessite un chariot (et un seul), qui
après avoir été rempli dans les zones de déchargement des camions régionaux puis nationaux,
est vidé dans la zone de chargement des camions qui servent les particuliers puis le chariot
pourra être réutilisé après maintenance.

La capacité des zones de déchargement pour les camions régionaux, nationaux et


internationaux sont respectivement notées NR, NN et NI.
La capacité des zones de chargement des clients professionnels et particuliers sont
respectivement notées NPRO et NPAR.

1°/ Effectuer l’inventaire des flux, ressources et contraintes.

2°/ Donner un modèle RdP de cet atelier. On supposera qu’à l’état initial tous les chariots
filoguidés sont en maintenance et qu’aucun camion n’est stationné en zone de déchargement
ainsi qu’en zone de chargement.

88
TD 4

TD 4 : Analyse

Exercice 1 : Arbre d'accessibilité

P1
t1 t2

P5 P7
P6 P2
P3
P8

t3 t4
P4

Figure 1

1.1 Construire le graphe des marquages et en déduire l'ensemble M 0 .


1.2 Quelles conclusions peut-on en tirer concernant le bornage, la vivacité et la
réinitialisation de ce réseau.

Exercice 2 : Algorithme de Karp et Miller


Le réseau de Petri de la figure 2 est le modèle d’une ligne de fabrication composée de
deux machines :
- La première machine, représentée par les transitions t1 à t5 et par les places P1 à P4
nécessite régulièrement une opération de maintenance préventive. Cette machine possède
alors 4 états : libre, en fonctionnement, en attente ou en maintenance selon que le jeton de
l’ensemble de places {P1, P2, P3, P4} figure respectivement dans la place P3, P1, P2 ou P4.
-
- La deuxième machine, représentée par t6 et P6 est une machine parfaitement fiable
possédant un état : machine libre. La durée de franchissement de t6 correspond à la durée
de fonctionnement de cette machine.

- La place P5 représente le stock tampon qui sépare les deux machines, il est supposé de
dimension infinie.

A l’état initial les deux machines sont libres et le stock est vide.
t1 t2 t3 t6
P1 P2 P5

P3
P6

t5 t4
P4
Figure 2
Représentez l'arbre d'accessibilité via l’algorithme de Karp & Miller.
Ce réseau est-il borné ?

89
90
TD 5

TD 5 : Matrice d’incidence Calcul des P et T semi-flots

Exercice 1 : P et T semi-flots
On considère une ligne de fabrication, composée de deux machines M1 et M2 multi-fonctions,
permettant la production de deux types de pièces P1 et P2 à partir de deux stocks de pièces
brutes supposés de capacité infinie.
L’organisation de l’atelier est la suivante : on dispose de N robots permettant de véhiculer les
pièces brutes de leurs stocks respectifs vers les îlots de production composés d’un stock amont
et de deux machines M1 et M2. Ces robots sont banalisés et peuvent donc être utilisés
indifféremment par les lignes P1 et P2.
On précise que :
 d’une part le transport d’une pièce P1 nécessite deux robots alors que le transport d’une pièce
P2 n’en nécessite qu’un seul. On souligne que ces robots restent attachés aux pièces qu’ils
véhiculent jusqu’à la fin du traitement sur les machines M1 ou M2. Après leurs traitements
respectifs sur les machines M1 et M2, les produits finis P1 et P2 sont déposés dans deux
stocks séparés supposés également de capacité infinie et le ou les robots concernés sont
libérés;
 d’autre part, les stocks amonts des machines sont réalisés par un stock commun aux deux
machines de capacité C places, une pièce brute de type P1 ou de type P2 occupant une place
dans le stock ;
 enfin que les machines M1 et M2 ne peuvent traiter qu’une pièce à la fois.
Modélisation : En ne retenant que la partie fortement connexe le modèle ci-dessous peut être
obtenu
Ligne P1 Ligne P2

Stock
commun
t1 t4

2 7C
1 4

t2 t5
M1 8N
libres M1
N1 3 2 occupées Parc M2 5 N2 6 M2
2 occupées libres
Robots
t3 t6

1.1 Etablir la matrice d’incidence C(p,t) et calculer les invariants P et T semi-flots.

1.2 Donner une interprétation physique des invariants déterminés.

91
TD 5
Exercice 2 : P et T semi-flots

Un système, modélisé figure 1, est constitué de deux chaînes de production C1 et C2


produisant respectivement les éléments E1 et E2.
Sur la chaîne C1, la fabrication d’un élément E1 nécessite trois opérations successives P1, P2 et P3.
Sur la chaîne C2, la fabrication d’un élément E2 ne nécessite qu’une seule opération P4.
Les opérations P1, P3 et P4 nécessitent chacune respectivement 1, 1 et 2 robots identiques alors
que l’opération P2 n’en nécessite aucun. Les robots sont banalisés : un robot peu être utilisé
indifféremment par P1, P3 ou P4.

De plus on précise que l’opération P2 ne peut traiter qu’un élément à la fois.

2.1 Etablir la matrice d’incidence C(p,t) et calculer les invariants P et T semi-flots.

2.2 Le réseau est-il vivant ?


2.3 Etudier la vivacité de ce réseau quelque soit le marquage initial

6
2 t5
t1 2

1 4

t2 t6

5 2

t3 Production de C2

t4

Production de C1

Figure 2 : modèle RdP généralisé du système de production

92
TD 6

TD 6 : Dimensionnement et Analyse de performances

Exercice 1 : Dimensionnement et analyse de performance

On considère le même atelier que lors du premier exercice au TD 5. L’objectif de cette


étude concerne le dimensionnement du système ainsi que l’analyse de ces performances.
Pour ce faire les travaux porteront sur l’analyse de la partie fortement connexe du
modèle obtenu (cf. figure 1) P-temporisé.
Le nombre de machine M1 est égal à N1.
Le nombre de machine M2 est égal à N2.
Le nombre de palettes issu du stock commun est égal à C.
Le nombre de robots dans le parc est égal à N.
Comme le présente la figure 1, à l’état initial, toutes les machines sont libres, toutes les palettes
sont dans le stock commun et tous les robots sont dans le parc. Le marquage initial est donc :
M 0  0 0 N1 0 0 N2 C N
T

Toutes les places Pi sont temporisées, la temporisation étant notée zi ( i  1, 8 )

Ligne P1 Ligne P2

Stock
commun
t1 t4

z1 2 z7
1 7C 4 z4

t2 t5
M1 8 N z8 z6
libres M1
N1
3 z2 2 M2 5 z5 N2
6 M2
z3 occupées Parc occupées
2 Robots libres

t3 t6

Figure 1 : Modèle de l’atelier.


Partie fortement connexe du Réseau de Petri P-temporisé

1 Lire sur le réseau de Petri ou calculer les P et T semi-flots. Pour chacun d’entre eux,
donnez une interprétation physique.

2 Etablir les inégalités régissant le fonctionnement du système en régime permanent.

93
TD 6
PREMIERE SITUATION
Hypothèses:
- la maintenance sur les machines M1 et M2 est d’1 unité de temps après chaque utilisation,
- le temps de séjour moyen dans le stock amont de chaque ligne de production est négligeable devant
le temps de fabrication de chaque pièce.
- le temps d’occupation des machines M1 et M2 est respectivement de 4 et 5 unités de temps,
- la maintenance des robots après chaque utilisation est de 2 unités de temps,
- la maintenance des palettes (stock commun) après chaque utilisation est d’1 unité de temps
- l’atelier est composé de 15 machines M1 et de 18 machines M2.
3 Calculer la fréquence maximum de chaque ligne de production.
4 Dimensionner le système en terme de nombre de palettes nécessaire au stock commun et du
nombre de robots permettant d’assurer le fonctionnement à cadence maximum.
5 Vous avez le choix entre une ancienne génération de robots à 50 k€ demandant 2 unités de
temps d’entretien après chaque utilisation et des robots nouvelle génération à 60 k€ ne
demandant qu’une seule unité de temps. En ne tenant compte que de l’investissement au
moment de l’achat, quelle solution retenez-vous ?
6 L’entretien annuel sur les robots d’ancienne génération est de 5 k€ alors qu’il n’est que de 4
k€ pour ceux de nouvelle génération. Calculer le coût de l’entretien annuel pour chacune des
solutions. En incluant ce critère dans le bilan financier, quel est d’après vous l’investissement
le plus intéressant ? Calculer le temps nécessaire au retour sur investissement.
DEUXIEME SITUATION
Hypothèses:
- l’atelier est maintenant composé d’une machine M 1 et d’une machine M2.
- Le temps de maintenance sur les machines M1 et M2 est négligeable
- le temps de séjour moyen dans le stock amont des lignes de production P 1 et P2 est respectivement
de 0.8 et 1.5 unités de temps.
- le temps d’occupation des machines M1 et M2 est respectivement de 0.2 et 0.5 unités de temps,
- la maintenance des robots après chaque utilisation est d’une unité de temps,
- les palettes dans le stock commun sont immédiatement disponibles après chaque utilisation.
7 Calculer la fréquence maximum de chaque ligne de production.
8 Quel est le nombre minimal de robots et quelle est la capacité minimale du stock commun
permettant d’assurer les cadences maximales de production sur chacune des lignes.
9 L’unité de temps étant la seconde, calculer sur une journée de 8 heures la production
respective en pièces P1 et P2.
10 Les robots ont un coût individuel d’entretien estimé à 2000 €/jour et les machines travaillant
à vitesse maximale ont un coût estimé à 1000 €/heure pour M1 et 3000 €/heure pour M2. Les
places en stock ont un coût moyen de 4000€ /jour/place. L’usine est ouverte en moyenne 20
jours par mois. Les frais fixes sur la ligne P1 sont de 250 k€/mois et sur la ligne P2 de 200
k€/mois. Le prix de vente des pièces est de 0.5 €/pièce P1 et 1€ /pièce P2.
Calculer les gains et dépenses mensuels de cette usine.
11 Aider le chef d’atelier à choisir parmi les quatre décisions suivantes en argumentant :
- fermer la ligne de production des pièces de type P1.
- fermer la ligne de production des pièces de type P2.
- fermer les lignes de production des pièces de type P1 et P2.
- fermer aucune ligne de production.
12 Vous négocier, d’une part avec les clients un payement des pièces P1 et P2 deux mois avant leur
production, et d’autre part avec le banquier un placement du chiffre d’affaire avec un revenu
assuré de 3% par mois. Reprendre la question 11 avec ces nouvelles informations.

94
TD 7

TD 7 : Dimensionnement et Analyse de performances

Exercice 1 : Dimensionnement et analyse de performance

A partir du modèle obtenu au TD3 et des données temporelles ci-dessous, effectuer l'étude
suivante.

Données temporelles :
Durée de déchargement des livraisons nationales pour servir un client professionnel = zNpro
Durée de déchargement des livraisons internationales pour servir un client professionnel = zIpro
Durée de chargement des clients professionnels = zCpro
Durée de déchargement des livraisons régionales pour servir un client particulier = zRpar
Durée de déchargement des livraisons nationales pour servir un client particulier = zNpar
Durée de chargement des clients particuliers = zCpar
La durée d’indisponibilité des trois zones de déchargement et des deux zones de chargement
entre deux utilisations sera négligée.
Durée de la maintenance des chariots après chaque utilisation = zMC (attention qu’il y est un ou
deux chariots la durée de maintenance est la même, on ne représentera donc qu’un seul état de
maintenance)

Travail à effectuer :
1°/ Effectuer l’inventaire des flux, ressources et contraintes.

2°/ Donner le modèle RdP P-temporisé de cet atelier. On supposera qu’à l’état initial tous les
chariots filoguidés sont en maintenance et qu’aucun camion n’est stationné en zone de
déchargement ainsi qu’en zone de chargement.
3°/ Lire (ou calculer) les T semi-flots et les P semi-flots, donner pour chacun d’entre eux une
interprétation physique.
4°/ Démontrer qu’il existe un fonctionnement périodique. Etablir la structure du vecteur de
fréquences moyennes de franchissement des transitions.
5°/ En respectant les notations des données temporelles ci-dessus, établir les inéquations
régissant le fonctionnement de ce système en régime permanent.

Données numériques : (unité de temps UT = 1 minute) zNpro = 15 UT


zIpro = 18 UT zCpro = 9 UT zRpar = 12 UT zNpar = 10 UT zCpar = 6 UT zMC = 0 UT
Les zones de déchargement des camions de livraison internationaux et régionaux permettent
d’accueillir chacune jusqu’à 6 camions à la fois.

6°/ A partir de données numériques ci-dessus, établir les fréquences maximales de


fonctionnement sur chacun des flux modélisés.
7°/ Dimensionnez la capacité d’accueil de la zone de déchargement nationale ainsi que le nombre
de chariots filoguidés nécessaires pour atteindre les cadences maximales de fonctionnement.
Dimensionnez NPRO et NPAR permettant de maintenir la cadence.

95
TD 7
8°/ Tout le parc de chariots filoguidés est à changer. Vous avez le choix entre l’ancienne
génération qui ne demandait aucune maintenance proposée au prix unitaire de 100 euros ou une
nouvelle génération demandant une vérification de 10 minutes toutes les 200 utilisations mais qui
coûte moitié prix. Argumenter votre choix en terme d’investissement.

Exercice 2 : Arbre d’accessibilité = Graphe de marquages

On considère le réseau de Petri donné par sa matrice d’incidence et marquage initial suivants :
1 1 1 0 0 1 
 1 1 0 0 0  0 
C  p,t    et M0   
0 0 1 1 1  0 
   
0 0 0 1  1 0 
Donner le graphe de Petri correspondant.
Etablir l’arbre d’accessibilité et l’ensemble des marquages atteignable .
Que pouvez-vous conclure concernant les propriétés liées au marquage initial de ce réseau
(bornage, vivacité, réinitialisation, persistance) ?
S'agit-il d'un graphe d'état, d'un graphe d'événement, d'un réseau connexe ou fortement
connexe, ce réseau est-il conforme, sauf, ordinaire, généralisé ?
Ce réseau est-il répétitif stationnaire, conservatif ?
Existe-t-il un fonctionnement périodique quelque soit le marquage initial ? Existe-t-il un
fonctionnement périodique pour le marquage initial donné M 0 ?

96
TD 8

TD 8 : Initiation à un logiciel de simulation et d’analyse de flux

TINA

http://projects.laas.fr/tina//
TINA (TIme Petri Net Analyzer) est un logiciel
pour l'édition et l'analyse des réseaux de Petri

Toutes les notes que vous prenez pendant la séance ainsi que le sujet de ce TD seront
autorisés et souvent utiles pour le Devoir Surveillé de fin de semestre.

Comment utiliser le logiciel TINA sous LINUX :


Première solution
Vous accédez à la version 3.X.Y (X et Y variant selon les années) installée dans certaines
salles de GE depuis l’icône de raccourci TINA dans Afficher les applications.
Seconde solution
La dernière mise à jour du logiciel TINA est téléchargeable à l’adresse suivante
http://projects.laas.fr/tina//download.php
Release 3.4.4 [last updated: January 2016]
Merci d’extraire la version linux 64 bit dans le dossier tmp de l’ordinateur accessible depuis
votre compte.
Pour avoir l'interface graphique de TINA double cliquer sur le fichier exécutable nd du
répertoire /tina-3.X.Y/bin

Version 2.3 de ce texte de TD

97
TD 8

EXERCICE 1 : Modélisation et analyse d’un système de production


Cahiers des charges A
Soient deux chaines de production produisant en parallèle deux types de produits notés P 1 et P2 via deux
types de machines M1 et M2. A partir de pièces brutes issues d’un stock ST 1 (respectivement ST2) supposé de
capacité finie mais non réalimenté, le produit P1 (respectivement P2) est fabriqué via une seule machine M1
(respectivement M2). Un robot est utilisé quelque soit le type de produit pour libérer la machine et déposer le
produit semi-fini dans des stocks intermédiaires non modélisés dans un premier temps. Seuls les temps de
transfert des produits semi-finis issus des machines aux stocks intermédiaires seront modélisé et notés T1 pour
les pièces P1 et T2 pour les pièces P2. Le robot n’est rendu disponible que lorsque la pièce entre dans le stock
intermédiaire. Le nombre de robots sera noté R. Les machines sont rendues disponibles dès que le produit est
pris en charge par le robot.

A1/ Modélisation
- Donner un modèle réseau de Petri de ce système. S'il est nécessaire de faire des hypothèses
qui ne sont pas dans le cahier des charges, les spécifier.
A2/ Analyse théorique à effectuer pour le RdP connexe ET pour le RdP fortement connexe
- Etudier le bornage, la vivacité et la réinitialisation du réseau de Petri en supposant qu’à
l’état initial toutes les ressources sont disponibles. M1=M2=R=1, ST1=10, ST2=30. Pour
cette question aucune démonstration rigoureuse n’est demandée (pourquoi ?), il faut laisser
fonctionner votre intuition. Argumentez vos résultats.
- Lire (ou calculer) les T et P semi-flots élémentaires. Donner pour chacun d’entre eux une
interprétation physique. Existe-t-il un fonctionnement périodique ?
A3/ Analyse du Réseau de Petri connexe à partir du logiciel TINA
- Saisissez le modèle obtenu sous TINA avec le marquage initial donné précédemment.
Enregistrer votre modèle sous le nom de fichier ex1_A3.ndr
- Dans l’onglet Tools utilisez dans l’ordre les outils suivants et expliquer leurs intérêts :
 stepper simulator
 reachability analysis
 structural analysis

Figure 1 : Présentation des Outils de TINA


Dans toute l’étude, il n’est évidemment pas demandé de se contenter de cliquer sur les boutons mais
d’analyser les résultats obtenus au niveau logiciel et de comprendre et critiquer le maximum d’informations
affichées.
- Vos résultats de simulation sont-ils conformes avec les résultats obtenus à la question A2 ?
Pourquoi ?
A4/ Analyse du Réseau de Petri fortement connexe à partir du logiciel TINA
- En ne retenant que la partie fortement connexe du modèle obtenu que vous enregistrerez
sous le nom de fichier ex1_A4.ndr, quelles sont les propriétés modifiées ?
- Vérifiez votre analyse à l’aide des outils
 stepper simulator
 reachability analysis
 structural analysis
- Vos résultats de simulation sont-ils conformes avec les résultats obtenus Pourquoi ?

98
TD 8
Cahiers des charges B
Nous venons maintenant compléter le cahier des charges numéro 1 avec le fonctionnement ci-après décrit.
Le robot dépose le produit semi-fini dans un stock intermédiaire, supposé de capacité finie noté STi1 pour les
pièces P1 et STi2 pour les pièces P2. Le robot est rendu disponible dès que la pièce qu’il transporte est déposée
dans un stock intermédiaire. Le produit final P est obtenu en assemblant sur une machine spécifique (notée M3)
un produit semi-fini P1 issu du stock intermédiaire STi1 avec deux produits semi-finis P2 issus du stock
intermédiaire STi2. Les temps de transport entre les stocks intermédiaires et les machines M3 seront négligés.
Dès la fin de l’assemblage la machine M3 est libérée est le produit semi-fini est déposé dans un stock final de
capacité infinie.
B1/ Modélisation
- Donner un modèle réseau de Petri de ce système. S'il est nécessaire de faire des hypothèses qui ne sont
pas dans le cahier des charges, les spécifier.
B2/ Analyse théorique à effectuer pour le RdP connexe ET pour le RdP fortement connexe
- Etudier le bornage, la vivacité et la réinitialisation du réseau de Petri en supposant qu’à l’état initial
toutes les ressources sont disponibles, le stock final est vide, M1=M2=M3=R=1, ST1=10, ST2=30,
STi1=20, STi2=50. Pour cette question aucune démonstration rigoureuse n’est demandée (pourquoi ?), il
faut laisser fonctionner votre intuition. Argumentez vos résultats.
- Lire (ou calculer) les T et P semi-flots élémentaires. Donner pour chacun d’entre eux une interprétation
physique. Existe-t-il un fonctionnement périodique ?
B3/ Analyse du Réseau de Petri fortement connexe à partir du logiciel TINA
- En ne retenant que la partie fortement connexe du modèle obtenu que vous enregistrerez sous le nom de
fichier ex1_B3.ndr, quelles sont les propriétés modifiées ?
Vérifiez votre analyse à l’aide des outils stepper simulator, reachability analysis et structural analysis
- Vos résultats de simulation sont-ils conformes avec les résultats obtenus Pourquoi ?
B4/ Analyse théorique et vérification software
- Proposer des solutions changeant la vivacité du modèle obtenu. Enregistrez vos solutions sous le nom
de fichier ex1_B4i.ndr, i étant le numéro de la solution proposée. Vérifiez au niveau logiciel la véracité
de votre intuition.
- Quelle solution fait apparaitre le moins de places et de transitions sans changer la structure du modèle
obtenu ?
B5/ Ordonnancement et vivacité
- Modéliser un ordonnancement pour l’utilisation du robot qui lui impose d’être utilisé pour produire les
pièces P1 et P2 chacune leur tour et une à la fois. Enregistrez votre solution sous le nom de fichier
ex1_B5a.ndr,
- Comment cette contrainte agit sur le nombre de T et P semi-flots ? Vérifier vos calculs (ou lecture du
graphe) via le logiciel TINA ?
- Comment cette contrainte agit sur la vivacité du réseau de Petri ? Vérifier vos intuitions via le logiciel
TINA ?
- Quel ordonnancement sur les robots permet de changer la vivacité du réseau de Petri ? Vérifier vos
intuitions via le logiciel TINA ? Enregistrer la solution proposée sous le nom de fichier
ex1_B5b.ndr
Bilan Exercice 1
Pour l’étude effectuée, remplir le tableau suivant AVANT et APRES l’utilisation de TINA et
conclure, comparez les résultats avec le théorème lié au rang de la matrice d’incidence qui ne peut
s’appliquer que si le RdP est répétitif stationnaire et conservatif

Type de RdP Vivacité Nombre de T semi-flots Nombre de P semi-flots


Sans ordonnancement

Avec ordonnancement :
chacun son tour
Avec ordonnancement :
2P2 puis 1P1
Tableau 1 : Bilan exercice 1

99
TD 8
EXERCICE 2 : Cahier des charges et analyse

A1/ Cahier des charges


- Etablir le cahier des charges qui ne peut avoir comme modèle que le réseau de Petri n°1
donné par la figure 2 correspondant à l’exercice 1 du TD4.
-

A2/ Analyse
- Saisissez ce modèle sous TINA et enregistrez le sous le nom de fichier ex2.ndr

- Etablir le graphe des marquages et comparer à la solution proposée par le logiciel TINA.

- Calculer le T et P semi-flots
Vérifier que le résultat suivant est respecté :
Pour les réseaux répétitifs stationnaires et conservatifs
Si r est le rang de la matrice d’incidence C, si t est le nombre de transitions et p le
nombre de places alors :
Le nombre de T semi-flots élémentaires est t - r
Le nombre de P semi-flots élémentaires est p – r
Nota: l’utilisation de ce résultat impose de vérifier la véracité des hypothèses à posteriori.

- Comparer avec la solution de TINA. Les résultats de simulation sont-ils conformes avec les
résultats obtenus ? Pourquoi ?

Figure 2 : Réseau de Petri n°1 Figure 3 : Réseau de Petri n°2

Bilan Exercice 2

Effectuer la même démarche avec le réseau de Petri n°2 donné par la figure 3 en essayant d’anticiper les
résultats de TINA.

100
TD 8
EXERCICE 3 : Atelier de Recyclage (voir annales page 77 du polycopier de cours)

Ce problème se propose d’étudier les performances et le dimensionnement d'un atelier de recyclage. Dans un
premier temps, nous demandons d’établir le modèle d'une partie de l'atelier conformément au cahier des charges
fixé et d'obtenir les équations qui régissent le système en régime permanent s'il existe. Quelques applications
numériques sont également demandées. Attention de présenter les résultats avec une interprétation physique.
Dans un second temps, la suite du cycle de recyclage est étudiée en termes de modélisation et de mise en
équation pour dimensionner le système afin d'obtenir les performances optimales. Dans tout le cadre de l'étude
les différents temps d'attente non spécifiés seront tous négligés.

Première partie
Il s'agit de modéliser ici une partie d'un atelier de recyclage qui comporte deux types de machines qui
seront notées M1 et M2. A partir de matières premières, qui seront supposées toujours disponibles, ces machines
produisent trois types de produits semi-finis P1, P2 et P3 qui seront stockés dans des stocks spécifiques de
capacités SP1 (pour le produit P1), SP2 (pour le produit P2) et SP3 (pour le produit P3). Chaque utilisation d'une
machine de type M1 permet de fabriquer simultanément un produit P1 et un produit P2. Chaque utilisation d'une
machine de type M2 permet de fabriquer simultanément un produit P2 et un produit P3. La fin d'utilisation de
chaque machine correspond temporellement au début de l'utilisation des stocks. Dans le but d'obtenir deux types
de produits notés PA et PB, les produits semi-finis sont assemblés par des ressources non modélisées ici. Ainsi
l'assemblage d'un produit semi-fini P1 avec un produit semi-fini P3 permet d'obtenir le produit PA. Le produit PB
est obtenu par l'assemblage de deux produits semi-finis P2.
Afin de limiter la complexité du modèle demandé dans la suite de l'étude, on supposera dans un premier
temps que la capacité d'accueil des stocks des produits PA et PB est illimitée.
Il est demandé de spécifier toutes les notations utilisées (contraintes temporelles,…).

A1/ Donner un modèle réseau de Petri fortement connexe de ce système. S'il est nécessaire de faire
des hypothèses qui ne sont pas dans le cahier des charges, les spécifier. Programmer votre modèle sous
TINA et enregistrer le sous le nom de fichier ex3_A.ndr
A2/ Lire ou calculer les T et P semi-flots élémentaires. Donner pour chacun d’entre eux une
interprétation physique. Vérifiez vos calculs ou votre lecture à l’aide de TINA.
A3/ Démontrer qu’il existe un fonctionnement périodique.
A4/ Etablir la structure du vecteur de fréquences moyennes de franchissement des transitions.
A5/ Etablir les inéquations régissant le fonctionnement de ce système en régime permanent.
Données temporelles et de dimensionnement : 1 UT = 1 Unité de Temps
L'atelier est composé de 101 000 machines de type M1 et autant de type M2. Les temps moyen d'utilisation
des stocks de produits semi-finis SP1, SP2 et SP3 sont respectivement égaux à 20 UT, 60 UT et 100 UT. Le
temps moyens de non utilisation des places en stock pour les produits semi-finis correspond à 5% des temps
moyen d'utilisation. Les durées d'utilisation des machines M1 et M2 sont en moyenne identiques et égales à
1000 UT. Ces machines nécessitant une maintenance correspondant en moyenne à 1% de la durée
d'utilisation.
A6/ En fonction des données ci-dessus, analyser les performances optimales de ce modèle en
donnant le dimensionnement optimal nécessaire pour maintenir les performances trouvées. Exprimer
ces performances optimales en termes de nombre de produit PA et PB fabriqués par unité de temps.
A7/ Sachant qu'en moyenne une place en stock d'un produit semi-fini correspond à 1 m2 au sol, que
ces produits ne peuvent pas être entreposés l'un sur l'autre, est-ce qu'un stock total d'un hectare est
suffisant ?
Seconde partie
Dans cette poursuite de l'étude, les produits PA et PB sont conditionnés par une machine de type M3 après avoir
été stockés dans des zones supposées maintenant de capacités finies que l'on notera SPA (pour le produit PA) et
SPB (pour le produit PB). Cette phase de conditionnement dure 50 UT et correspond au mélange de un produit PA
avec un produit PB pour former un produit final noté PFINAL. Les machines M3 sont disponibles immédiatement
après chaque utilisation.
101
TD 8

B1/ Proposez un modèle global de l’atelier. Programmer votre modèle sous TINA et enregistrer le
sous le nom de fichier ex3_B.ndr.
Analyse pour un état initial donné :
Etudier la vivacité de ce réseau ?
Analyse par les invariants :
Lire ou calculer les T et P semi-flots élémentaires. Donner pour chacun d’entre eux une interprétation
physique. Vérifiez vos calculs ou votre lecture à l’aide de TINA.
Démontrer qu’il existe un fonctionnement périodique.

Les résultats obtenus en terme de vivacité et de fonctionnement périodique vous fait penser à quel
système physique vu en cours ? Quel est le danger de cette étude ?

Etablir les inéquations régissant le fonctionnement de ce modèle en régime permanent s'il existe.
B2/ On supposera que 100 pièces PA et 100 pièces PB sont produites par unité de temps. Calculer le
nombre de produit PFINAL fabriqués par unité de temps et dimensionner le nombre de machines M3
nécessaires pour travailler à fréquence maximale.
On considère comme cahier des charges les deux énoncés donnés à chaque partie en respectant la contrainte de
dimension finie sur les stocks SPA et SPB. On garde les mêmes contraintes temporelles et de dimensionnement.
On ne tient pas compte des cadences de production fixées à la question 9.

B3/ Dimensionner le nombre de machines M3 permettant de fonctionner aux cadences maximales


de production ?

102