620 likes | 806 Vues
M.E.D.A.L. IUP-MIAGE 1ère année. Module d’Enseignement à Distance pour l’Architecture Logicielle. Les réseaux de PETRI (1). Diapositive n° 1. IUP MIAGE - Université de NANTES. Alain VAILLY. Cours magistral. M.E.D.A.L. Evaluation. Références. Contexte. Exercices. MEDAL.
E N D
M.E.D.A.L. IUP-MIAGE 1ère année Module d’Enseignement à Distance pour l’Architecture Logicielle Les réseaux de PETRI (1) Diapositive n° 1 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral M.E.D.A.L. Evaluation Références Contexte Exercices MEDAL Corrigés des exercices Etudes de cas Auto-évaluation Diapositive n° 2 IUP MIAGE - Université de NANTES AlainVAILLY
informations M.E.D.A.L. fonctions PLAN comportements 1) Introduction 2) Notions de base Cours magistral 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes - le modèle E-A-P 5) Conclusion - le modèle relationnel - les réseaux de PETRI - les modèles de traitement de Merise Diapositive n° 3 IUP MIAGE - Université de NANTES AlainVAILLY
M.E.D.A.L. PLAN 1) Introduction 2) Notions de base Cours magistral 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion Diapositive n° 4 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral M.E.D.A.L. PLAN 1) Introduction 2) Notions de base 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion Diapositive n° 5 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral M.E.D.A.L. 1) Introduction 2) Notions de base 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion PLAN Diapositive n° 6 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral 1) Introduction M.E.D.A.L. 2) Notions de base 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion PLAN Diapositive n° 7 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral 1) Introduction M.E.D.A.L. 2) Notions de base 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion PLAN Diapositive n° 8 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral 1) Introduction M.E.D.A.L. 2) Notions de base 3) Utilisation des Réseaux de PETRI 4) Extensions intéressantes 5) Conclusion PLAN Diapositive n° 9 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral 1) Introduction M.E.D.A.L. 4) Extensions intéressantes 2) Notions de base 3) Utilisation des Réseaux de PETRI 5) Conclusion PLAN Diapositive n° 10 IUP MIAGE - Université de NANTES AlainVAILLY
Cours magistral 1) Introduction M.E.D.A.L. 4) Extensions intéressantes 2) Notions de base 3) Utilisation des Réseaux de PETRI PLAN 5) Conclusion Diapositive n° 11 IUP MIAGE - Université de NANTES AlainVAILLY
4.1) Arcs inhibiteurs 4.2) Réseaux colorés 2.1) Arcs, places et transitions 2.2) Jetons, poids et marquages 2.3) Notions complémentaires 2.4) Dynamique des RdP 3.1) Modélisation 3.1.1) Logique sous-jacente 3.1.2) Modélisation 3.1.3) Erreurs à éviter 3.2) Vérification de propriétés 3.2.1) Définitions complémentaires 3.2.2) Vérification de propriétés 3.2.3) A propos de l’équation d’état Cours magistral 1) Introduction M.E.D.A.L. 4) Extensions intéressantes 2) Notions de base 3) Utilisation des Réseaux de PETRI PLAN 5) Conclusion 5) Conclusion Diapositive n° 12 IUP MIAGE - Université de NANTES AlainVAILLY
1) Introduction M.E.D.A.L. On va pouvoir faire des calculs ! • Modèle du comportement, • Formalisme ancien, très utilisé, • Formalisme qui repose sur une théorie mathématique, • Spectre d’utilisation large, des systèmes d’information aux protocoles de réseaux, en passant par les algorithmes d’allocation de ressources... • Formalisme étudié dans le seul contexte des systèmes d’information, pour décrire la dynamique du système. Diapositive n° 13 IUP MIAGE - Université de NANTES AlainVAILLY
1) Introduction M.E.D.A.L. Il y a deux façons d’aborder la présentation des réseaux de PETRI, par la formalisation et par le pragmatisme. La première approche amène à parler de graphe, de matrice… La seconde nous conduira à utiliser une représentation graphique. Selon nous, il faut les deux, surtout dans la mesure où le principal intérêt de ces réseaux de PETRI réside dans la possibilité de faire faire « à la machine » des calculs … pour vérifier des propriétés, pour faire évoluer le réseau … Diapositive n° 14 IUP MIAGE - Université de NANTES AlainVAILLY
Réseau de PETRI 2) Notions de base M.E.D.A.L. RdP Un réseau de PETRI, informellement, c’est : des places - un ensemble de quatre notions, des transitions - un marquage, des arcs - un ensemble de règles déterminant l’évolution de ce marquage, des jetons - un moniteur pour mettre en application ces règles. des jetons dans des places Diapositive n° 15 IUP MIAGE - Université de NANTES AlainVAILLY
P1 Px Ta Ta Tb Py 2) Notions de base 2.1) Arcs, places et transitions M.E.D.A.L. Un réseau de PETRI correspond à un graphe bi-parties, les arcs reliant une place à une transition ou une transition à une place, mais jamais une place à une place ou une transition à une transition : place arc Interdit Interdit transition P = {P1, P2, …, Pn} Ensemble fini de places T = {Ta, Tb, …, Tx} Ensemble fini de transitions A Í P x T T x P Ensemble fini d’arcs Diapositive n° 16 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 M : P N 2) Notions de base 2.2) Jetons, poids et marquages M.E.D.A.L. Chaque place peut contenir des objets appelés jetons. A priori, la capacité d’une place est infinie. Le marquage, à un instant t, du réseau correspond au nombre de jetons dans chaque place. P1 contient 2 jetons. P2 contient 1 jeton. M1 = [0, 1, …, 3, 0, …, 1] M2 = [1, 1, …, 0, 0] Diapositive n° 17 IUP MIAGE - Université de NANTES AlainVAILLY
P1 a1 : P1 Ta a2 : Ta P2 2 Ta a3 : Ta P3 3 a4 : P3 Ta W : A N+ P2 P3 2) Notions de base 2.2) Jetons, poids et marquages M.E.D.A.L. Ces jetons « voyagent » dans le réseau, de place en place, en utilisant les arcs. Ce voyage se fait en solitaire ou en groupe, ceci étant indiqué par la fonction poids ainsi définie : Par défaut, le poids d’un arc est de 1. Ces poids sont mentionnés sur le réseau, à côté des arcs, la valeur par défaut étant omise. W (a1) = 2 W (a2) = 3 W (a3) = 1 W (a4 ) = 1 Diapositive n° 18 IUP MIAGE - Université de NANTES AlainVAILLY
P1 2 Ta 3 P2 P3 C’est le moniteur qui dit quand et qui va choisir l’ordre de « départ » (s’il y en a un). 2) Notions de base 2.2) Jetons, poids et marquages M.E.D.A.L. A un certain moment : - 2 jetons « quittent » P1 pour Ta, - 3 jetons « quittent » Ta pour P2, - 1 jeton « quitte » Ta pour P3, - 1 jeton « quitte » P3 pour Ta. Il existe des règles qui fixent les modalités et les contraintes. Diapositive n° 19 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 T1 P3 P4 T2 P5 2) Notions de base 2.2) Jetons, poids et marquages M.E.D.A.L. 2 - 5 places, {P1, P2, P3, P4, P5} - 2 transitions, {T1, T2} - 8 arcs. 2 L’arc reliant P2 à T1 a un poids de 2, comme celui reliant T2 à P5 ; les autres ont un poids de 1. Diapositive n° 20 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P1 P2 P2 2 2 T1 T1 P3 P3 P4 P4 T2 T2 2 2 P5 P5 2) Notions de base 2.2) Jetons, poids et marquages M.E.D.A.L. M1 = [1, 1, 0, 0, 0] M2 = [0, 1, 3, 0, 1] Diapositive n° 21 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P1 2 Ta Ta 3 W : A {0, 1} W : A N+ P2 P2 P3 P3 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. Un réseau dans lequel le poids affecté à chaque arc est égal à 1 est un réseau élémentaire. réseau non élémentaire réseau élémentaire Diapositive n° 22 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. Une place est en entrée d’une transition s’il y a un arc reliant la place à la transition. Une place est en sortie d’une transition s’il y a un arc reliant la transition à la place. P2 est en entrée de T1. P4 est en entrée de T2. P5 est en sortie de T2. P3 est en entrée de T2 et en sortie de T1. P1 est en entrée de T1 et T2 et en sortie de T1. Diapositive n° 23 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. On appelle entrée d’une transition l’ensemble des places situées en entrée de la transition. On appelle sortie d’une transition l’ensemble des places situées en sortie de la transition. E (T1) = {P1, P2} S (T1) = {P1, P3} E (T2) = {P1, P3, P4} S (T2 ) = {P5} Diapositive n° 24 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 T0 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. Une transition-puit est une transition ayant une sortie vide. Une transition-source est une transition ayant une entrée vide. T0 est une transition-source. T3 est une transition-puit. T3 Diapositive n° 25 IUP MIAGE - Université de NANTES AlainVAILLY
T2 P2 P5 P1 T1 T3 T7 T4 P6 P3 P4 T6 P7 T5 y-en-a d’autres … CE n° 1 : {T4, P5, T3, P6, T4} CE n° 2 : {T1, P2, T7, P3, T6, P4, T1} 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. CE n° 3 : {T1, P2, T2, P5, T3, P6, T4, P7, T6, P4, T1} CE n° 4 :{T1, P2, T2, P5, T3, P6, T5, P7, T6, P4, T1} Un circuit élémentaire est un chemin orienté qui part d’un sommet du graphe (qu’il s’agisse d’une place ou d’une transition) et qui y revient, sans jamais passer plus d’une fois par le même sommet. Diapositive n° 26 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.3) Notions complémentaires M.E.D.A.L. Une boucle est un circuit élémentaire constitué d’une seule place et d’une seule transition. Le RdP ci-contre contient une boucle. Un réseau sans boucle est dit pur. Diapositive n° 27 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. réseau + marquage initial moniteur d’exécution politique - de choix règles La dynamique des RdP est prise en charge par divers éléments : - de déclenchement - de production - de consommation Diapositive n° 28 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P1 P2 P2 2 2 T1 T1 P3 P3 tirable 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. franchissable Une transition est déclenchable si chacune des places en entrée de la transition contient au moins autant de jetons que le poids affecté à l’arc reliant la place à la transition. déclenchable non déclenchable Diapositive n° 29 IUP MIAGE - Université de NANTES AlainVAILLY
2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Le déclenchement d’une transition va avoir un effet sur le nombre de jetons contenus dans les places en entrée et en sortie de la transition. Il y a : 1) consommation de jetons en entrée ; 2) production de jetons en sortie. Combien ? Dans les réseaux « standards », il ne s’écoule aucun temps entre consommation et production. Il y a des réseaux temporisés. Ce sont les poids qui le disent ! Diapositive n° 30 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P1 P2 P2 2 2 T1 T1 P3 P3 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Règle de consommation Le déclenchement d’une transition consomme autant de jetons dans les places en entrée de la transition qu’il est indiqué par les poids affectés aux arcs reliant ces places à la transition. Déclenchement de T1 Diapositive n° 31 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P1 P2 P2 2 2 T1 T1 P3 P3 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Règle de production Le déclenchement d’une transition produit autant de jetons dans les places en sortie de la transition qu’il est indiqué par les poids affectés aux arcs reliant la transition aux places. Déclenchement de T1 Diapositive n° 32 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Marquage avant déclenchement M0 = [1, 2, 0] Diapositive n° 33 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Marquage avant déclenchement M0 = [1, 2, 0] Marquage après déclenchement M1 = [1, 0, 1] En t0, il y avait 3 jetons dans le réseau ; en t0 + ∆t, il y en a 2. Il n’y a pas de principe de conservation des jetons. Le nombre de jetons produits n’est pas lié au nombre de jetons consommés. Diapositive n° 34 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 T1 2 P4 P3 T2 P5 2 T3 P6 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. (0,0,0,0,0,0) (1,0,0,0,0,0) (1,1,0,0,0,0) L’évolution du réseau va se traduire par l’évolution des jetons dans le réseau. Diapositive n° 35 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 T1 2 P4 P3 T2 P5 2 T3 P6 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. (0,0,0,0,0,0) (1,0,0,0,0,0) (1,1,0,0,0,0) T1 (0,0,2,0,0,0) (0,0,2,1,0,0) L’évolution du réseau va se traduire par l’évolution des jetons dans le réseau. Diapositive n° 36 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 T1 2 P4 P3 T2 P5 2 T3 P6 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. (0,0,0,0,0,0) (1,0,0,0,0,0) (1,1,0,0,0,0) T1 (0,0,2,0,0,0) (0,0,2,1,0,0) T2 (0,0,1,0,1,2) et ainsi de suite L’évolution du réseau va se traduire par l’évolution des jetons dans le réseau. Diapositive n° 37 IUP MIAGE - Université de NANTES AlainVAILLY
2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. L’application des règles précédentes à un RdP permet de faire évoluer le marquage initial et d’obtenir un marquage M1. La ré-application de ces règles « sur » M1 fournit un autre marquage, M2. Le système modélisé « vit » ainsi par à-coups, selon un algorithme assez simple : Tant qu’il y a des transitions déclenchables faire choisir une transition déclenchable déclencher la transition fintantque Diapositive n° 38 IUP MIAGE - Université de NANTES AlainVAILLY
2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Le moniteur d’exécution travaille donc en pas-à-pas, une transition après l’autre. Ce travail séquentiel n’empêche bien entendu pas des choix. A certains moments, en effet, plusieurs transitions sont déclenchables. Le moniteur sélectionne la transition à déclencher, selon une politique. - première trouvée, Il est possible de « programmer » le moniteur pour qu’il travaille en parallèle, en déclenchant toutes les transitions déclenchables. - plus proche du but, - plus forte priorité, - ... Diapositive n° 39 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. T1 et T2 sont déclenchables. Hypo H1 : le moniteur choisit T1 [2, 5, 1, 4, 0] T2 T1 Diapositive n° 40 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. T1 et T2 sont déclenchables. Hypo H1 : le moniteur choisit T1 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] Diapositive n° 41 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. T1 et T2 sont encore déclenchables. On peut continuer sur cette « branche ». [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 Diapositive n° 42 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. T1 et T2 sont encore déclenchables. Hypo H2 : le moniteur choisit T1 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 Diapositive n° 43 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. T1 et T2 sont encore déclenchables. Hypo H2 : le moniteur choisit T1 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] Diapositive n° 44 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Revenons un pas en arrière. [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] Diapositive n° 45 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Revenons un pas en arrière. [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] Diapositive n° 46 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Hypo H3 : le moniteur choisit T2 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] Diapositive n° 47 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Hypo H3 : le moniteur choisit T2 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] Diapositive n° 48 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Hypo H3 : le moniteur choisit T2 [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] [1, 3, 1, 3, 2] Diapositive n° 49 IUP MIAGE - Université de NANTES AlainVAILLY
P1 P2 2 T1 P3 P4 T2 2 P5 2) Notions de base 2.4) Dynamique des RdP M.E.D.A.L. Revenons deux pas en arrière. [2, 5, 1, 4, 0] T2 T1 [2, 3, 2, 4, 0] T2 T1 [2, 1, 3, 4, 0] [1, 3, 1, 3, 2] Diapositive n° 50 IUP MIAGE - Université de NANTES AlainVAILLY