Vous êtes sur la page 1sur 43

24/12/2019

Modélisation des Systèmes à Evénements Discrets

Réseaux de Pétri
Pr. Mohamed EL HAFTA
ENSEM

1ère Génie Industriel et Logistique


2019/2020

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

INTRODUCTION

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

1
24/12/2019

Introduction

Un système ?

Définition :
• Ensemble d'éléments en interaction mutuelle et
en interaction avec l'environnement, organisés
en fonction d'un même but pour parvenir à une
même fin.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Un système ?

Statique
Non linéaire
Continu
Système
Dynamique
Linéaire
Déterministe

Discret
Stochastique

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

2
24/12/2019

Introduction

Un système ?
• Dans un système continu, l'état du système change en
permanence avec l'évolution du temps.

• Dans un système à évènements discrets, l'état change


seulement à certains instants lors de l'occurrence
d'évènements particuliers.

– L'espace d'états d'un SED est discret.

– Il est stochastique si au moins une de ses sorties est aléatoire. Dans ce


cas le système est décrit par un processus stochastique.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Un système ?
Système Continu # Système à Evènements Discrets

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

3
24/12/2019

Introduction

Un système ?

q Le mot « discret » ne signifie ni « temps discret » ni « état


discret »

q Le temps et les états du système réel évoluent de façon


continue, mais on ne s’intéresse qu’à des instants particuliers

q Seuls les faits importants pour l’étude sont considérés :


ü arrivée ou départ d’une ressource (objet, personne, …)
ü début ou fin d’une action ou d’un processus, …

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Un système ?

Comment déterminer les critères à prendre en compte ?

Règle de conduite : faire abstraction des détails qui ne


contribuent pas à l’élaboration des résultats attendus.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

4
24/12/2019

Introduction

Un système ?

• Exemple 1 : une station d’essence

– Résultats attendus :
• Taille file d’attente, temps d’attente, …
– Aspects intéressants
• Pompes : libre, occupée, nombre
• Véhicules : type carburant, arrivée, attente dans une file, service en
cours, départ
– Aspects non intéressants
• Véhicules : marque, couleur, …

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Un système ?

• Exemple 1 : une station d’essence

– Paramètres complémentaires pour rapprocher le modèle de


la réalité :
• Distribution statistique des arrivées de véhicules

• Durée globale du service

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

5
24/12/2019

Introduction

Un système ?

Exemple 2 : Un réseau routier

• Résultats attendus :
– Évolution du nombre de voitures en attente (entassement des voitures
et désengorgement des files)

– Temps d'attente moyen d'un véhicule devant un feu tricolore

– Temps maximal d'attente d'un véhicule devant un feu tricolore

– Temps moyen et maximal mis par un véhicule pour parcourir un trajet


donné

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Un système ?
Exemple 3 : Un système de fabrication

• Objectif :
– Détermination du nombre d’ouvriers spécialisés nécessaires
à la fabrication d’un produit donné

• Données :
– Distribution des commandes (loi de probabilité)

– Temps de fabrication du produit

– Délai de livraison et taux de dépassement toléré

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

6
24/12/2019

Introduction

Un système ?
• De nombreux systèmes complexes relèvent de cette
classe de comportement :

– Les systèmes automatisés de production (systèmes


manufacturiers)
– les systèmes de transport
– les systèmes embarqués
– les réseaux de communication
– Les systèmes de prises de décision

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Conception des systèmes

• Cycle classique de conception : Cycle en V

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

7
24/12/2019

Conception des systèmes


• Introduction obligatoire d'étapes de validation AVANT la mise
en œuvre
à (détection + tôt des erreurs et insuffisances)

• Notamment :
– …Spécifications
– Modélisation
– Simulation
– Analyse
– Validation
– …Mise en œuvre

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

La modélisation

Définition :

• Un modèle est une représentation simplifiée


capable de reproduire de façon pertinente un
comportement partiel d’un système.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

8
24/12/2019

Introduction

La modélisation
q Modèles mathématiques :
ü Equations aux dérivées partielles : mécanique des fluides, géologie,
météorologie,….etc.

q Modèles fondés sur des méthodes d’apprentissage : réseaux de neurones


artificiels :
ü Traitement de signal, contrôle de processus, classification de données,…

q Modèles à la fois formels (langages ayant une définition mathématique) et


semi-graphiques : réseaux de Petri (RdP) ou Petri Nets (PN) :
ü Systèmes à Evénements Discrets (SED): processus logistiques
(organisation des services, réseaux de transport), processus techniques
(réseaux de télécommunications, réseaux d’ordinateurs, chaînes de
production, ateliers flexibles)

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Les réseaux de Petri (RdP)

q Carl Adam Petri (1926-2010, Allemagne)


q Mathématicien – Informaticien
q Invention des RdP 1962 (Thèse de doctorat :
Kommunikation mit Automaten)

q Kurt Jensen (1950, Denmark)


q Dr en Sciences de l’Information
q Introduction des Réseaux de Petri colorés en
1981

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

9
24/12/2019

Introduction

Les réseaux de Petri (RdP)

RdP = Outil de modélisation

« Outil de modélisation orienté vers la


représentation des SED dont les variables d'états
évoluent brusquement d'une valeur à l'autre sans
qu'il soit nécessaire de représenter les
phénomènes transitoires »

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Introduction

Les réseaux de Petri (RdP)

Caractéristiques des RdPs :

– Représentation semi-graphique comportant un petit nombre de


symboles.
– Représentation mathématique sous-jacente

– Divers traitements possibles


• Visualisation dynamique par simulation
• Analyse qualitative (propriétés : invariants, absence de blocage,
accessibilité, …)
• Analyse quantitative (performance) mathématique ou par
simulation

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

10
24/12/2019

Les réseaux de Petri (RdP)


• Un réseau de Pétri est un graphe orienté comportant :
– Un ensemble fini de places P = {P1,P2,...,Pn} : conditions ou
statuts
Place
– Un ensemble fini de transitions T = {T1, T2, ..., Tn} :
évènements ou actions
Transition

– Un ensemble fini d'arcs orientés et unidirectionnels


Arc

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Les réseaux de Petri (RdP)


• Caractéristiques des RdP :
– Comme dans tout graphe biparti, un arc ne relie jamais deux
sommets de la même famille.

– Chaque place va contenir un nombre entier de jetons (ou


marques) pour modéliser la dynamique du système.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

11
24/12/2019

Places, transitions, arcs et marquages


P1 P1

T1 T1
P2 P2
T6 T6
T2 T2
P3 P4 P3 P4

T3 T4 T3 T4
P5 P5 P5 P5
T5 T5
P7 P7
a - RdP non marqué b - RdP marqué

Le marquage à un instant t définit l’état du système décrit par le RdP.

Remarque : Le marquage d’un RdP est numérique (nombre entier) alors que celui
d’un Grafcet est booléen (état actif ou inactif)

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Concepts RdP
THÉORIE ET PROPRIÉTÉS DES RÉSEAUX
DE PETRI

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

12
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Un RdP est un graphe orienté. Il comporte :

– un ensemble fini de places, P={P1, P2, P3, ..., Pm}, symbolisées par des
cercles et représentant des conditions. Cet ensemble traduit l’état d’une
ressource du système (machine libre, stock vide, convoyeur à l’arrêt, …).

– un ensemble fini de transitions, T={T1, T2, T3, ..., Tn}, symbolisées par des
tirets et représentant l'ensemble des événements (actions ou tâches du
système), dont l'occurrence provoque la modification de l'état du système.

– un ensemble fini d'arcs orientés qui assurent la liaison d'une place vers une
transition ou d'une transition vers une place.

P1 T P2
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Un RdP est, en plus, biparti. Càd :

– c'est-à-dire qu'un arc relie alternativement une place à une transition et une
transition à une place.

– On doit pas avoir ce type de situation :

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

13
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Une condition est la description de l’état d’une ressource du système
modélisé :
– La machine est prête,
– La machine est hors service,
– Le stock est suffisant…

• Un état du système peut être décrit comme un ensemble de conditions.


• Une condition est soit vraie, soit fausse.

• Dans le formalisme des Réseaux de Petri, la condition est modélisée à l’aide


d’une place.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Un événement est une action qui se déroule au sein du système et dont
la réalisation dépend de l’état du système :

– Début de traitement sur une machine,


– Panne sur une machine
– Réception d’une commande
– Fin de traitement d’une commande

• Dans le formalisme des Réseaux de Petri, l’événement est modélisé à l’aide


d’une transition.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

14
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


Algèbre linéaire :
• Un réseau de Petri est défini par un quadruplet Q = (P, T, Entrée, Sortie),
où :
– P est un ensemble fini de places: P = { p1 , p2 , p3 ,.., pn }

– T est un ensemble fini de transitions: T = {t1 , t2 , t3 ,.., tn }

– Entrée (ou Pré) est une application, Entrée: P x T →N, appelée application
d’incidence avant. Notée Pré(p,t) ou Entrée(p,t) ou encore I(p,t), contient la
valeur entière « n » associée à l’arc allant de « p » à « t ».

– Sortie (ou Post) est une application, Sortie: P x T →N, appelée application
d’incidence arrière. Notée Post(p,t) ou Sortie(p,t) ou O(p,t), contient la
valeur entière « n » associée à l’arc allant de « t » à « p ».

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• « p » est une place d’entrée de la transition « t » si Pré(p, t) > 0
k1
k1 =entrée(p,t)>0

p t

• « p » est une place de sortie de la transition « t » si Post(p, t) > 0


k2
k2 =Sortie(p,t)>0

t p

• « t » est une transition d’entrée de « p » si Sortie(p,t) > 0:


i1
i1 =Sortie(p,t)>0

t p

• « t » est une transition de sortie de « p » si Entrée(p,t) > 0:


i2
i2 =entrée(p,t)>0

p t

• k1, k2, i1 et i2 représentent le poids des arcs

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

15
24/12/2019

Théorie et propriétés des Réseaux de Petri

Matrices d'incidence
Matrice d'incidence avant : W- = [w-ij] où w-ij =Pré(Pi, Tj)
+
Matrice d'incidence arrière : W = [w+ij] où w+ij =Post(Pi, Tj)

T1 T2 T3 T4 T1 T2 T3 T4
P1
1 0 0 0 P1 0 0 0 1 P1
T1
0 1 0 0 P2 1 0 0 0 P2 P2 P3
W- = W+ = 0 0
0 0 1 0 P3 1 0 P3
0 0 0 1 P4 0 1 0 0 P4 T2 T3
0 0 0 1 P5 0 0 1 0 P5 P4 P5
T4
T1 T2 T3 T4
-1 0 0 +1 P1

+ - +1 -1 0 0 P2
Matrice d'incidence : W = W - W = +1 0 -1 0 P3
0 +1 0 -1 P4
0 0 +1 -1 P5

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Équation fondamentale

Mi + W. S = Mk
P1
T1
Vérifier avec le franchissement de la transition T2 P2 P3

0 -1 0 0 +1 0 0 0 T2 T3
0
1 +1 -1 0 0 1 -1 0
1 P4 P5
1 + +1 0 -1 0 . 0 = 1 + 0 = 1
0 0 +1 0 -1 0 +1 1 T4
0
0 0 0 +1 -1 0 0 0

Mi W S Mk

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

16
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Transitions sources :

– Une transition source est une transition qui ne comporte aucune place
d’entrée

t p

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

17
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Transitions puits :

– Une transition puits est une transition qui ne comporte aucune place de
sortie

p t

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Le marquage d’un RdP est donné par la présence à
l'intérieur des places d'un nombre fini (positif ou nul), de
marques ou de jetons. (Une place est vide ou marquée.)

• Exemple :

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

18
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Au cours de l’évolution du système, le marquage est
susceptible d’être modifié.

• Le marquage initial M0, d’un RdP correspond à la


distribution initiale des jetons dans chacune des places du
RdP, qui précise l'état initial du système. Dans ce cas, on
parle du Rdp Marqué

• Un Rdp non marqué est tel que le marquage initial n’est pas
précisé.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• On note M(p) le nombre de jetons contenu dans la place p
pour le marquage M.
p1 t1 p2 t2

• Exemple :

– Le marquage initial est : M0 = [M0(p1), M0(p2)] = [3, 0].

• Un marquage peut être représenté également sous forme


d’un vecteur colonne : é3 ù
M 0 = [M 0 (p1 ), M 0 (p 2 )]T = êê úú
êë 0 úû

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

19
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Exercice 1 :

– Un atelier est constitué d’une machine et d’un stock.


– Quand une pièce arrive et que la machine est disponible, la pièce
peut être traitée (usinage). Une fois le traitement terminé, la pièce
qui a été usinée est stockée. Sinon, la commande doit attendre que
la machine se libère avant de pouvoir être traitée.

• Travail à faire : écrire le modèle RdP du système et


proposer un marquage initial

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Exercice 2 :

• Soit le RdP suivant :


3 t3
t1
p1 p2 p3

2
t2 t4
• Travail à faire :
– Indiquer le marquage initial
– Etablir la matrice d’entrée E
– Etablir la matrice de sortie S

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

20
24/12/2019

Théorie et propriétés des Réseaux de Petri

Franchissement d’une transition

Avant franchissement Après franchissement

P1 P2
P1 P2
T1
T1
P3 P4
P3 P4

Transition validée T1 : Chacune des places en amont de T1 contient au moins une


marque.

Franchissement d’une transition validée T1 :


- on retire, une marque a chacune des places en amont de T1.
- on ajoute une marque a chacune des places en aval deT1.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Ensemble des marquages accessibles

P1
T1
P2 P3

T2 T3
P4 P5
T4

• II y a 5 marquages M0, M1, M2, M3, M4 atteignables qui constituent


l’ensemble des marques accessibles du RdP (noté *M0).

• Le franchissement de T1 puis de T2 s’appelle une séquence de


franchissement, on note S = T1T2 cette séquence.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

21
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Réseau borné, sauf

Une place Pi est bornée pour M0 si pour tout marquage accessible à


partir de M0 le nombre de marques dans Pi est borné.
Un RdP est borné si toutes ses places sont bornées quelque soit M0
borné.

P1
P1
T1 T1
P2
P2
T2

RdP borné RdP non borné

Si la borne est égale à 1, le RdP est dit sauf

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Vivacité


Une transition Tj est vivante pour M0 si pour tout marquage accessible de
Mi, il existe une séquence de franchissement S à partir de Mi qui contient
Tj
P1
T1
P1
P2
T1
T2
P2
P3
T2
T3

T1 est vivante T1 est non vivante


RdP vivant RdP non vivant

Un RdP est vivant si toutes ses transitions sont vivantes

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

22
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Blocage

Un blocage est un marquage tel qu'aucune transition n’est validée.


Un RdP est dit sans blocage pour un marquage M si aucun marquage
accessible à partir de M n’est un blocage.

P1 P1
T1 T2 T1 T2
P2 P3 P2 P3
T3 T3 T4
P4 P4 P5
T4 T5 T6

RdP avec blocage RdP sans blocage


mais non vivant

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Conflits

Un conflit effectif est l’existence d’un conflit structurel

K = <Pi, {T1,T2,…}> et d'un marquage M, tel que le nombre de marques


dans Pi est inférieur au nombre de transitions de sortie validées par M.

P1

conflit effectif T1 T2

P1 P2 P3 P1

T1 T2 T1 T2

Pas de conflit effectif Pas de conflit effectif

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

23
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Séquences répétitives

Une séquence répétitive est une séquence de franchissement S = T1 ... Tr


à partir d'un marquage M qui donne le même marquage M.

L'ensemble (T1 … Tr) est une composante répétitive.


P1

T1
P2 P3 P4

T2 P4 T3

A partir du marquage initial, si on franchit la séquence S=T1T2T1T3


on revient au marquage initial

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Graphe des marquages

Le graphe des marquages est composé :


Nœuds = marquages accessibles
arcs = franchissement des transitions
0
P1 T1 2
2 T1
T1 1 M2
0 1
T2 0
P2 T2
M0 M1 1
M3

On peut trouver toutes les propriétés du RdP à partir du graphe des marquages.

On peut voir qu’il est borné, qu’il n'est pas vivant et qu’il a 2 états de blocage.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

24
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Arbre et graphe de couverture


T1 T1 T1 T1 …
0 1 2 3
P1 T2 T2 T2
M0 M1 M2 M3
T2
Le nombre d’états peut être infini et ne peut être représenté. Þ On introduit
un marquage w qui représente une infinité de marquages possibles.
T1 w
T1
0 w T2
Arbre de couverture

M0 w

Le graphe de couverture s’obtient en fusionnant les nœuds qui correspondent au


même marquage.

T1
T1
0 w graphe de couverture
M0 T2

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


• Exercice 3 : Soit le RdP suivant P1

T1

P2 P3

• Travail à faire : T2 T3
– Dresser les marquages accessibles.
– Etablir le graphe des marquages. P4 P5
– Trouver la matrice d’incidence.
– Quelles sont les propriétés relevées ? T4 T5

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

25
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Réseaux autonomes

P1 T1 P2
Printemps été

T4 T2

P4 T3 P3
hiver automne

Cycle des saisons

Un RdP autonome décrit le fonctionnement d’un système qui évolue de


façon autonome. c'est-à-dire dont les instants de franchissement ne sont
pas connus on pas indiqués.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Réseaux non autonomes

P1 T1 P2
Printemps été
21 mars

21 décembre T4 T2 21 juin

P4 T3 P3
hiver automne
21 septembre

Cycle officiel des saisons

Un RdP non autonome décrit le fonctionnement d'un système dont


l‘évolution est conditionnée par des événements externes ou par le temps.

Un RdP non autonome est synchronisé et/ou temporisé

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

26
24/12/2019

Théorie et propriétés des Réseaux de Petri

Structures particulières : Graphe d’évènements

Graphe d’événements : Un graphe d’événements est un RdP tel que


chaque place a exactement une transition d’entrée et une transition de
sortie.

On peut trouver

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Structures particulières : Graphe d’états

Graphe d’états Un graphe d’états est un RdP tel que chaque


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

On peut trouver

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

27
24/12/2019

Théorie et propriétés des Réseaux de Petri

Structures particulières : Réseaux de Petri généralisés

T1 non validée T1 validée

P1 P2 P1 P2 P1 P2
3 3 3
T1 T1 T1
2 2 2
P3 P3 P3
P4 P4 P4

Avant Après
franchissement franchissement

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Structures particulières : Réseaux de Petri à arcs inhibiteurs

T1 non validée T1 validée

P1 P2 P1 P2 P1 P2

T1 T1 T1

P3 P3 P3

Avant Après
franchissement franchissement

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

28
24/12/2019

Théorie et propriétés des Réseaux de Petri

RdP - Concepts de base


Exercice 4 : Modélisation d’un Atelier de montage de cycle

Considérons un atelier de montage partiel d’un vélo. Pour assembler deux roues et
un cadre, l’atelier est constitué de trois machines :
– La 1ère machine fabrique des cadres en assemblant tubes et cordons de soudure,
– La 2ème machine fabrique les roues à partir des jantes, des rayons et des moyeux,
– La 3ème machine assemble un cadre avec 2 roues
Les capacités respectives des stocks de cadres et de roues sont respectivement 4 et
6

On précise que :
- Les trois machines ont une capacité de production du type « 1 à la fois »,
- Le stock aval de la machine d’assemblage peut être considéré comme de capacité infinie,
- Le fonctionnement des trois machines est entièrement automatique.

Indication : Réseau de Petri généralisé (non graphe d’événements) autonome

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Exercice 4 : Modélisation d’un Atelier de montage de cycle

P2 (Tubes) P1 (Cordons) P5 (jantes) P6 (rayons) P7 (moyeux)

T1 T3

P12 P13
P3 (M. Cadres) P8 (M. Roues)

T2 T4

P4 P9

T5

P16 (St Cadres) P14 P10 (M. Assemb) P15 (St roues)
E
ET
PL
M
T6 N CO
I
N
TIO
LU
P11 (Stock assemblages) SO
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

29
24/12/2019

Théorie et propriétés des Réseaux de Petri


Propriétés des RdP : Composantes conservatives
et invariants linéaires de places
Un invariant linéaire de places {P1, ..., Pr} est une somme pondérée des
marquages de ces places telle que :
q1M(P1) + … + qr M(Pr) = constante, pour tout M Î *M0.
L'ensemble des places {P1, …, Pr} est une composante conservative

P1 T1 P2
Printemps été

T4 T2

P4 T3 P3
hiver automne

A tout instant on a l’invariant : m1 + m2 + m3 + m4 = 1


L'ensemble des places {P1, P2, P3, P4} est une composante conservative
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri


Propriétés des RdP : Composantes conservatives
et invariants de marquages

F = (q1, q2, …, qn) avec qi Î N tel que FT.W = 0


F est dit « un P-semi-flot »

Mi = M0 + W . S
Pour tout marquage Mi atteignable par une séquence de
franchissement S :

FT . Mi = FT . M0 + FT . W . S
Si FT . W = 0, on a FT . Mi = FT . M0 quelle que soit S

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

30
24/12/2019

Théorie et propriétés des Réseaux de Petri


Propriétés des RdP : Composantes conservatives
et invariants de marquages (suite)

-1 0 0 +1
+1 -1 0 0
[1 1 0 1 0] + +1 0 -1 0 = [0 0 0 0 0 ]
0 +1 0 -1
0 0 +1 -1
FT W

{P1, P2, P4} est une composante conservative. Avec le marquage initial
M0 = (1, 0, 0, 0, 0), on a l’invariant linéaire de places : m1 + m2 + m4 = 1.

Il existe des algorithmes de calcul des P-semi-flots minimaux


(SILVA – MEMMI)

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Composantes répétitives et


invariants de franchissement
Y = (q1, q2, …, qm) avec qi Î N tel que : W.Y = 0
Y est dit « un T-semi-flot »
Si il existe une séquence de franchissement S telle que S est un T-
semi-flot, alors :

Mi = M0 + W . S = M0

S est une séquence répétitive = invariant de franchissement

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

31
24/12/2019

Théorie et propriétés des Réseaux de Petri

Propriétés des RdP : Composantes répétitives et


invariants de franchissement (suite)

-1 0 0 +1
1
+1 -1 0 0
1
+1 0 -1 0 . 1
= [0 0 0 0 ]
0 +1 0 -1
1
0 0 +1 -1
W Y

S = {T1, T2, T3, T4} est un invariant de franchissement.

L’invariant d’un T-semi-flot est une condition nécessaire pour qu’un RdP
soit réinitialisable.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Structures particulières

EXTENSIONS DES RDP

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

32
24/12/2019

Les réseaux de Petri colorés


• Les RdP colorés :
– Association d’un identificateur ou une « couleur » à chaque marque
– À chaque transition est associé un ensemble de couleurs où chacune
de ces couleurs indique une possibilité de franchissement
– Une fonction est associée à chaque arc afin de traduire la relation
entre la couleur associée à la transition et choisie pour franchir cette
transition et la couleur associée à la place correspondante
• L’introduction de la couleur permet de :
– Distinguer les marques
– Éviter de répéter des motifs redondants lors de la modélisation
– Modéliser des systèmes complexes par une représentation
relativement simple

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Extensions des Réseaux de Petri

Les réseaux de Petri colorés


Gb Db
Chariot Bleu
Deux
Ab Bb systèmes
Gr Dr identiques
Chariot rouge
Ar Br
b r
P1 P1
déplacement à gauche déplacement à gauche
b r
T1 arrivée à gauche
T1 arrivée à gauche

b r
P2 déplacement à droite P2 déplacement à droite

b r
T2 arrivée à droite T2 arrivée à droite

Chariot Bleu Chariot rouge


© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

33
24/12/2019

Extensions des Réseaux de Petri

Simplification par fusion


On voit que le modèle des deux systèmes est compose de deux RdP identiques.
Peut-on représenter le fonctionnement des deux chariots par un seul RdP ?
On fusionne les deux RdP en un seul : P1

T1

P2

T2

Ce modèle ne décrit pas correctement le fonctionnement des deux chariots

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Notion de couleur

II faut distinguer les marques entre elles pour cela on associe un


identificateur ou une couleur a chaque marque.
On associe la couleur rouge au chariot rouge et la couleur bleue au
chariot bleu.
P1 P1
br f( b) =b br
f(r) = r id
T1 {b , r } T1 {b, r}
id
P2 id
P2

id
T2 T2 {b , r}
{b, r}

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

34
24/12/2019

Notion de fonction
Il y a similitude dans le déplacement des chariots : alternance des mouvements vers la
gauche et vers la droite;
Peut-on représenter les deux mouvements par une même place Pr pour le chariot
rouge ?
Pour distinguer l'état "déplacement à droite" de l'état "déplacement à gauche", on
associe les couleurs g et d à la place Pr.
On définit une fonction f telle que f(g) = d et f (d) = g.
Pr Pr
g d
Franchissement id
f id f
Tr {g,d} Tr {g,d}
par rapport à g
Pr
g
Franchissement
f id
par rapport à d Tr {g,d}

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Couleurs et fonctions dans le cas général

On veut construire un RdP coloré avec une place et une transition pour le
système des deux chariots.
On définit des doublets de couleurs composes de deux couleurs simples : par
exemple le couple <g, r> dans la place P1 indique que le chariot rouge se
déplace vers la gauche.
P1
<g, r >
<g, b >
f id
T1 {<g, r >, <g, b >, <d, r>, <d, b >}

Avec : f(<g, r>) = <d, r >


f(<d, r>) = <g, r>
f(<g, b >) = <d, b >
f(<d, b >) = <g, b >

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

35
24/12/2019

RdP coloré = abréviation

P1 P1
< >
Dépliage
f Ta1 Tb1
T1
id { , }
Pa2 Pb2
P2 < a > Pliage
id Ta2 Tb2
T2 { <a>,<b> }

Avec : f(<a >) = < >


f(<b >) = < >

Le RdP coloré est général dans sa structure et permet d’avoir une grande
concision.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Modélisation
Par coloration totale, tout RdP ordinaire R peut être transformé en un
RdP coloré avec une seule place et une seule transition.

P
Mc0

Pré
T {<T1 >, …,<Tm>}
Post
Dans ce modèle la place P résulte de la fusion des places Pi de R et la
transition T, de la fusion des transitions Tj de R.
L'ensemble des couleurs associées à la place P est l’ensemble des places Pi,
soit :
C(P) = {<P1 >, …,<Pn>}
et l’ensemble de couleurs associées à la transition T est :
C(T) = {<T1 >, …,<Tm>}

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

36
24/12/2019

Exemple d’application : une ligne de


fabrication
Stock 1 Machine 1 Stock 2 Machine 2

La ligne de fabrication produit deux types de pièces p1 et p2 a l’aide de


deux machines munie chacune d’un stock d'entrée.
Toutes les pièces passent dans le même ordre sur les deux machines.
Elles sont portées par des palettes (ni pour les pièces de type pi)
recyclées à la fin de la production de chaque pièce.
L’ordonnancement du système consiste à envoyer alternativement les
deux types de pièces : p1, p2, p1, p2, ...

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

-
RdP coloré pour la ligne de fabrication (coloration
par rapport au type de pièce)
n1 C1
n2 C2
ST1

T1
{C1, C2}
ML1
MO1 succ(C1) = C2
C1
succ(C2) = C1
T. 1 {C1, C2}
succ
ST2
Dans ce modèle, la coloration est faite
T2 {C1, C2} par, rapport aux pièces, l'ensemble de
ML2 couleurs (C1, C2) est associé à toutes les
MO2 places et a toutes les transitions.
C1
.
T2 {C1, C2} modèle = géographie de la ligne de
succ fabrication.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

37
24/12/2019

RdP coloré pour la ligne de fabrication


(coloration par rapport aux pièces et aux machines)
L'emploi de couleurs simples n’est pas toujours le meilleur choix.
Par exemple, si le nombre de machines dans la ligne de fabrication
augmente, le modèle global devient complexe.
Une solution consiste a colorer le modèle par rapport aux machines.
n1 <C1, m1>
n2 <C2, m2>
ST
C x M = {<ci, mj>} 1 ≤ i ≤ 2, 1 ≤ j ≤ 2
Succ1(<C1,mj>) = <C2, mj>
T1 CxM
Succ1(<C2,mj>) = <C1, mj>
Succ2(<Ci,m1>) = <Ci, m2>
succ1
Succ2(<Ci,m2>) = <Ci, m1> <C1, m1>
MO <C2, m2> ML
Succ1(<Ci,mj>) = <Ci+1, m1> (modulo 2)

T2 CxM
Succ1 = ordonnancement
Succ2 = gamme de fabrication
succ2
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Exemple 2 : Système de transport à structure


FIFO (premier arrivé, premier servi)

1 2 3 4 5 6 7 n=8
entrée sortie
o2 o1 o4 o1

Ce convoyeur linéaire peut transporter simultanément q types d’objets


appelés o1, o2, …, oq, le nombre maximum d’objets simultanément
transportés étant n (ce qui correspond à n emplacements).
Initialement, il y a un objet 2 dans l’emplacement 2, un objet 1 dans
l’emplacement 4, un objet 4 dans l’emplacement 6 et un objet 1 dans
l’emplacement 7.
On attend du modèle qu’il donne à tout instant l’état du système
physique et qu’il conserve les informations relatives à la nature des
objets.

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

38
24/12/2019

RdP coloré du système de transport à


structure FIFO
Pv <r1> emplacements vides
<r1>
<r5>
proj1 <r8> proj1
succ2
T3 proj1
T1 proj1
O x {<r1>} O x {<r8>} T2
id A succ1
id <o2, r2>
id
<o1, r1>
<o4, r6> emplacements pleins
Pp <o1,r7>

Les ensembles de couleurs simples sont les suivants :


O = {<oj>, 1 ≤ j ≤q} : ensemble des objets,
Et R = {<ri>, 1 ≤ i ≤n} : ensemble des emplacements du système de transport.
Une marque de couleur <oj, ri> dans la place P signifie qu’il y a un objet j dans
l’emplacement i du système
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Les réseaux de Petri temporisés

Un RdP temporisé permet de décrire un système dont le fonctionnement dépend du


temps. Ils sont utiles pour l’évaluation des performances d'un système.

La temporisation peut être modélisée de deux façons :

• temporisation associée aux places (RdP P-temporisé)


• temporisation associée aux transitions (RdP T-temporisé)

Un RdP P-temporisé est un doublet <R, Tempo> tel que :


• R est un RdP marqué
• Tempo est une application de l'ensemble des places P dans Q.
Tempo (Pi) =di : temporisation associées à la place Pi.

Un RdP T-temporisé est un doublet <R, Tempo> tel que :


•R est un RdP marqué
• Tempo est une application de l'ensemble des places P dans Q.
Tempo (Ti) =dj : temporisation associées à la transition Tj

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

39
24/12/2019

Fonctionnement d'un réseau de Petri P-temporisé

T1 T1 T1 T1

P1 d1 P1 d1 P1 d1 P1 d1
T2 T2 T2 T2
P2 P2 P2 P2
d2 d2 d2 d2
T3 T3 T3 T3

Marque indisponible
dans P1
Marque disponible dans d1
P1
Marque indisponible
dans P2 d2
Franchissement de T1

Franchissement de T2

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Fonctionnement d'un réseau de Petri P-temporisé


M0
P1 P1 P1
d1 = 2 d1 = 2 d1 = 2

T1 T1 T1

P2 d2 = 3 P2 d2 = 3 P2 d2 = 3

T2 T2 T2

0≤t≤x x < t ≤ x +3 x +3 ≤ t ≤ x + 3 + y

Fonctionnement à vitesse maximale


t=0 0<t<3 t=3
T2 / 3
1 T1 / 0 0 1
Graphe des marquages du fonctionnement 0 1 0
à vitesse maximale : T1 / 2
M0 M1 M2
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

40
24/12/2019

Fonctionnement d'un réseau de Petri T-temporisé

T1 T1 T1 T1
d1 d1 d1 d1
P1 P1 P1 P1

T2 T2 T2 T2
d2 d2 d2 d2
P2 P2 P2 P2

T3 T3 T3 T3

Marque non réservée dans P1

Marque réservée dans P1 d2


Marque non réservée dans P2

(fin de ) Franchissement de T1
Décision de Franchir T2

Franchissement de T2
© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Fonctionnement d'un réseau de Petri T-temporisé

M0
P1 P1 P1

T1 d1 = 2 d1 = 2
d1 = 2 T1 T1

P2 P2 P2

T2 d2 = 3 T2 d2 = 3
T2 d2 = 3

t=0 0<t<2 t=2

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

41
24/12/2019

Autres classes de RdP : RdP Continus


• Les réseaux de Petri continus
– Le nombre de marque des place est un nombre réel non négatif
– À chaque transition est associé une vitesse ou un débit de
franchissement.
– La vitesse de franchissement peut être variable (RdP continu à vitesses
variables) ou constante (RdP continu à vitesses constantes).
• Utilisation du RdP continu permet de :
– Éviter un nombre de marquages très grand
– Modéliser des systèmes complexes avec un nombre de ressources très
important

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Autres classes de RdP : les RdP hybrides

• Les réseaux de Petri hybrides


• contiennent deux types de places et de transitions
– Places continues (C-places) et places discrètes (D-places)
– Transitions continues (C- transitions) et transitions discrètes (D- transitions)
– Un arc doit relier une C-transition à une D-place dès lors que l’arc réciproque
existe
• L’utilisation des RdP hybrides est bien adaptée pour modéliser
un fonctionnement permanent

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

42
24/12/2019

Conception et Simulation

OUTILS DE SIMULATION DES RDP

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

Plusieurs outils (plus ou moins élaborés) gratuits sont accessibles sur le Web

© M. Mohamed EL HAFTA Cours / Réseaux de Petri / ENSEM 2019

43

Vous aimerez peut-être aussi