• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
3e Conf\u00e9rence Francophone de MOd\u00e9lisation et SIMulation "Conception, Analyse et Gestion des Syst\u00e8mes Industriels"
MOSIM'01 \u2013 du 25 au 27 avril 2001 \u2013 Troyes (France)
- 167 -
REDUCTIONS FONDEES SUR LA LOGIQUE LINEAIRE POUR
L'ORDONNANCEMENT DES RESEAUX DE PETRI
JC. Mugarza

Dpt de Electr\u00f3nica, EPS
Mondrag\u00f3n, Univ.
Mondrag\u00f3n, E-20500
Espagne
M\u00e9l : mugarza

B. Pradin-Ch\u00e9zalviel
LAAS-CNRS,

F-31077 Toulouse
Cedex 4, France
IUT A, UPS

M\u00e9l : chezalvi@laas.fr
R. Valette
LAAS-CNRS
F-31077 Toulouse
Cedex 4, France
M\u00e9l : robert@laas.fr
M. Silva

D.I.I.S.
CPS, U. Zaragoza, E-
50015, Espagne

M\u00e9l: silva@posta.unizar.es
RESUME : Le but de cet article est de proposer une r\u00e8gle de r\u00e9duction des r\u00e9seaux de Petri t-temporis\u00e9s

pr\u00e9servant les aspects quantitatifs de sc\u00e9narios de franchissements de transition pr\u00e9 d\u00e9finis. L'objectif est de pouvoir aborder des probl\u00e8mes d'ordonnancement d'atelier de fabrication \u00e0 partir de mod\u00e8les agr\u00e9g\u00e9s. Les d\u00e9cisions aboutissant \u00e0 un ordonnancement possible sont pr\u00e9serv\u00e9es et clairement mises en \u00e9vidence. Si tous les sc\u00e9narios menant du marquage initial au marquage final sont pr\u00e9serv\u00e9s, par contre des s\u00e9quences menant \u00e0 des blocages mortels peuvent dispara\u00eetre car elles ne peuvent \u00eatre prolong\u00e9es jusqu'au marquage final. La dynamique du r\u00e9seau de Petri n'est consid\u00e9r\u00e9e qu'entre deux marquages. Cette r\u00e8gle de r\u00e9duction exploite l'\u00e9quivalence entre la prouvabilit\u00e9 de certains s\u00e9quents de logique lin\u00e9aire et l'accessibilit\u00e9 d'un marquages final \u00e0 partir d'un marquage initial dans un r\u00e9seau de Petri. Au lieu de chercher \u00e0 r\u00e9duire directement la taille du r\u00e9seau, on cherche \u00e0 r\u00e9duire la taille de la preuve des s\u00e9quents. On ne travaille plus avec un temps global unique. Le temps est repr\u00e9sent\u00e9 par des estampilles associ\u00e9es aux jetons. La simulation de telles preuves implique alors l'utilisation d'un simulateur de r\u00e9seaux de Petri de haut niveau permettant le calcul de ces estampilles.

MOTS-CLES : R\u00e9seaux de Petri, simulation \u00e0 \u00e9v\u00e9nements discrets, ordonnancement
1. INTRODUCTION

Les probl\u00e8mes d'ordonnancement g\u00e9n\u00e8rent en g\u00e9n\u00e9ral un espace de recherche combinatoire de tr\u00e8s grande taille. C'est pourquoi dans l'industrie on d\u00e9laisse souvent la recherche de la solution optimale et l'on se contente d'heuristiques donnant des solutions acceptables. L'efficacit\u00e9 des heuristiques, souvent fond\u00e9es sur des r\u00e8gles de priorit\u00e9 associ\u00e9es \u00e0 des files d'attente est tr\u00e8s fr\u00e9quemment \u00e9valu\u00e9e par simulation (Palomino et al., 1999). En particulier on peut ainsi \u00e9valuer leur robustesse vis-\u00e0-vis de variations des dur\u00e9es op\u00e9ratoires ou de possibles d\u00e9faillances de machines.

Une solution int\u00e9ressante consiste \u00e0 repr\u00e9senter l'atelier par un r\u00e9seau de Petri et \u00e0 utiliser un simulateur d\u00e9di\u00e9 (MISS-RdP ou Design/CPN par exemple) pour d\u00e9rouler les s\u00e9quences. N\u00e9anmoins il faut d\u00e9rouler un certain nombre d'histoires pour obtenir des mesures cr\u00e9dibles (simulation de Monte Carlo) et les temps de simulation peuvent devenir prohibitifs. On a donc tout int\u00e9r\u00eat \u00e0 travailler sur un mod\u00e8le r\u00e9duit (Mugarza et al., 1998). Dans (Mugarza

et al., 1998), les r\u00e8gles de r\u00e9duction propos\u00e9es sont

fond\u00e9es sur les r\u00e8gles utilis\u00e9es pour \u00e9tudier les bonnes propri\u00e9t\u00e9s des r\u00e9seaux de Petri. Des hypoth\u00e8ses suppl\u00e9mentaires doivent \u00eatre rajout\u00e9es pour conserver les aspects quantitatifs. C'est pourquoi ces r\u00e8gles sont assez restrictives.

Le but de cet article est de proposer une r\u00e8gle plus
g\u00e9n\u00e9rale pr\u00e9servant les aspects quantitatifs pour les
sc\u00e9narios
de
franchissements
de

transition correspondant \u00e0 un ordonnancement possible, sans n\u00e9cessairement pr\u00e9server les bonnes propri\u00e9t\u00e9s. Un point important est que les d\u00e9cisions aboutissant \u00e0 un ordonnancement possible sont pr\u00e9serv\u00e9es et clairement mises en \u00e9vidence.

Cette r\u00e8gle exploite l'\u00e9quivalence entre l'accessibilit\u00e9 entre deux marquages dans un r\u00e9seau de Petri et la prouvabilit\u00e9 de certains s\u00e9quents de logique lin\u00e9aire (Girard, 1987), (Giraud, 1997), (Pradin-Ch\u00e9zalvielet

al., 1999). Au lieu de chercher \u00e0 r\u00e9duire directement la

taille du r\u00e9seau, on cherche \u00e0 r\u00e9duire la taille de la preuve des s\u00e9quents. Apr\u00e8s r\u00e9duction le mod\u00e8le n'est plus un r\u00e9seau de Petri t-temporis\u00e9 car les jetons ne sont pas consomm\u00e9s et produits au m\u00eame instant de temps. Le temps est repr\u00e9sent\u00e9 par des estampilles associ\u00e9es aux jetons. On peut toutefois d\u00e9rouler les sc\u00e9narios avec un simulateur de r\u00e9seaux de Petri de haut niveau.

2. MODELISATION ET PROBLEME
D'ORDONNANCEMENT

La mod\u00e9lisation d'un atelier de fabrication se fait de fa\u00e7on classique. On d\u00e9crit les gammes de fabrication sous la forme d'une suite de places et de transitions. Puis on rajoute les allocations des ressources partag\u00e9es. Consid\u00e9rons un atelier avec deux gammes, chacune form\u00e9e de deux op\u00e9rations. Dans le r\u00e9seau de Petri de la figure 1, la premi\u00e8re gamme est d\u00e9crite par la branche reliant les places E1 (entr\u00e9e) \u00e0 S1 (sortie).

MOSIM'01 \u2013 du 25 au 27 avril 2001 \u2013 Troyes (France)
- 168 -

La transition t11 correspond \u00e0 une d\u00e9cision, celle d'allouer la machine R1 \u00e0 la premi\u00e8re op\u00e9ration. La transition t12 correspond \u00e0 la fin de cette op\u00e9ration. On lui associe la dur\u00e9e de l'op\u00e9ration : d12.

La transition t13 correspond \u00e0 la d\u00e9cision d'allouer la machine R2. On suppose que la machine R1 n'est lib\u00e9r\u00e9e qu'apr\u00e8s l'affectation de R2 et l'on suppose que le transfert entre les deux machines a une dur\u00e9e n\u00e9gligeable. Donc aucune dur\u00e9e n'est associ\u00e9e \u00e0 t13 (comme pour t11). La dur\u00e9e de la seconde op\u00e9ration est associ\u00e9e \u00e0 la transition t14. La seconde gamme est analogue.

Le probl\u00e8me d'ordonnancement consiste \u00e0 trouver une s\u00e9quence de franchissements de transition permettant de faire passer le jeton de la place E1 dans S1 et celui de la place E2 dans S2 en sachant que l'on dispose d'un jeton en R1 et d'un jeton dans R2. Un simulateur de r\u00e9seau de Petri permet de construire des solutions admissibles. Les transitions correspondant \u00e0 des d\u00e9cisions de lancement comme les transitions t11 et t21 sont franchies \u00e0 des dates pr\u00e9d\u00e9termin\u00e9es, les transitions de d\u00e9cision interm\u00e9diaires comme t13 et t23 sont franchies au plus t\u00f4t s'il n'y a pas de conflit, ou bien en suivant des heuristiques pr\u00e9 d\u00e9finies.

Lorsque la simulation va jusqu'au marquage final, on obtient un sc\u00e9nario admissible. Chercher une bonne solution ou \u00e9tudier la robustesse de certaines heuristiques peut impliquer l'ex\u00e9cution de tr\u00e8s nombreuses simulations. D'o\u00f9 l'int\u00e9r\u00eat des r\u00e8gles de r\u00e9duction d\u00e9finies en (Mugarza et al., 1998). Souvent, par exemple, les transitions de d\u00e9cision comme t11 peuvent fusionner avec les transitions de fin d'op\u00e9ration comme t12. Si l'on divise le nombre de transitions par deux, le temps de simulation sera diminu\u00e9 dans un rapport similaire puisque la simulation est une simulation \u00e0 \u00e9v\u00e9nements discrets et que chaque pas est un franchissement de transition.

On peut remarquer que le r\u00e9seau de Petri de la figure 1 comprend un blocage mortel. Si l'on franchit, par exemple, la s\u00e9quence t11, t12, t21 et t 22, on atteint le marquage (P12 P22) (un jeton dans la place P12, un jeton dans P22 et aucun jeton ailleurs) et aucune transition n'est alors franchissable. On peut bien s\u00fbr impl\u00e9menter un m\u00e9canisme de pr\u00e9vention des blocages mortels en introduisant une place suppl\u00e9mentaire. Mais le marquage de cette place devra \u00eatre modifi\u00e9 chaque fois que l'on rajoute ou enl\u00e8ve une machine du m\u00eame type que celui de R1 ou de R2. De plus la simulation sera alourdie puisque le mod\u00e8le sera plus complexe. Enfin, comme le mod\u00e8le, au lieu de ne repr\u00e9senter que des entit\u00e9s physiques (\u00e9tats des machines et des pi\u00e8ces), repr\u00e9sente aussi des aspects d\u00e9cisionnels, il devient moins clair. Une autre approche consiste \u00e0 supposer que l'\u00e9vitement des blocages mortels est du ressort de l'ordonnancement et que les s\u00e9quences y menant seront automatiquement

\u00e9limin\u00e9es puisqu'elles correspondraient \u00e0 des
ordonnancements de dur\u00e9e infinie.
3. REGLE DE REDUCTION
3.1. R\u00e9seaux de Petri et logique lin\u00e9aire

Le fondement de notre approche repose sur l'\u00e9quivalence entre l'accessibilit\u00e9 d'un marquage final \u00e0 partir d'un marquage initial d'un r\u00e9seau de Petri et la prouvabilit\u00e9 de certains s\u00e9quents de logique lin\u00e9aire (Girard, 1987), (Giraud, 1997). Le s\u00e9quent \u00e0 prouver est form\u00e9 du marquage initial, de la liste des transitions \u00e0 franchir et du marquage \u00e0 atteindre. La liste des transitions \u00e0 franchir est non ordonn\u00e9e, et si une transition doit \u00eatre franchien fois, son nom doit figurer

nfois dans la liste.

Le premier pas de la preuve consiste \u00e0 remplacer le marquage par une liste d'atomes correspondant \u00e0 la liste des jetons formant le marquage initial. Prouver un s\u00e9quent consiste ensuite \u00e0 le r\u00e9\u00e9crire en \u00e9liminant une transition de la liste \u00e0 chaque pas. Cela ressemble \u00e0 la construction d'une s\u00e9quence de franchissement puisque pour pouvoir \u00e9liminer une transition il faut que les jetons qu'elle consomme figurent dans la liste des atomes. Ils sont alors effac\u00e9s de cette liste et les jetons produits par le franchissement de la transition y sont ajout\u00e9s.

La diff\u00e9rence entre la preuve du s\u00e9quent et la construction d'une s\u00e9quence provient du remplacement du marquage par une liste d'atomes (c'est-\u00e0-dire de jetons). Un marquage correspond \u00e0 \u00e9tat du syst\u00e8me. C'est un ensemble de jetons pr\u00e9sents simultan\u00e9ment, \u00e0 une date donn\u00e9e, dans les places. Par contre, la liste d'atomes correspond \u00e0 un ensemble de jetons qui ne sont pas li\u00e9s par des relations de causalit\u00e9. C'est-\u00e0-dire que si les jetonsi etj apparaissent dans la liste, c'est parce qu'il n'est pas n\u00e9cessaire de consommeri pour produirej et r\u00e9ciproquement. Les jetonsi etj peuvent \u00e9ventuellement appara\u00eetre dans le m\u00eame marquage, mais quand on ajoute des consid\u00e9rations temporelles, cela n'est pas n\u00e9cessairement le cas. Il est alors tout \u00e0 fait possible quei etj n'appartiennent simultan\u00e9ment \u00e0 aucun marquage (\u00e9tat) accessible. Le jetonj peut, par exemple, \u00eatre consomm\u00e9 avant que le jetoni ne soit produit.

Lorsque l'on travaille avec des r\u00e9seaux de Petri t- temporis\u00e9s, on associe des estampilles temporelles aux jetons (Pradin-Ch\u00e9zalviel et al., 1999). Ces estampilles m\u00e9morisent la date de production des jetons correspondants. Chaque fois que des jetons sont introduits \u00e0 la suite de l'\u00e9limination d'une transition, leur estampille est \u00e9gale \u00e0 la date de sensibilisation de la transition (c'est-\u00e0-dire le max des dates de production des jetons qu'elle consomme) \u00e0 laquelle on ajoute la dur\u00e9e associ\u00e9e \u00e0 la transition.

MOSIM'01 \u2013 du 25 au 27 avril 2001 \u2013 Troyes (France)
- 169 -

Comme ces calculs sont men\u00e9s en suivant fid\u00e8lement les r\u00e8gles du calcul des s\u00e9quents en logique lin\u00e9aire, nous avons la garantie que les relations de causalit\u00e9 induites par le r\u00e9seau de Petri et le marquage initial du sc\u00e9nario ne seront jamais viol\u00e9es. C'est-\u00e0-dire qu'un jeton ne peut jamais \u00eatre consomm\u00e9 avant d'avoir \u00e9t\u00e9 produit. De plus, comme nous n'utilisons pas la r\u00e8gle de coupure dans le calcul des s\u00e9quents, aucune relation d'ordre parasite ne sera introduite.

3.2. Concat\u00e9nation de deux transitions

Consid\u00e9rons le fragment de r\u00e9seau de Petri de la figure 2.a. La transition t1 (dur\u00e9e d1) met un jeton dans la place Pi et ce jeton est n\u00e9cessairement consomm\u00e9 par t2 (dur\u00e9e d2). Si la place Pi ne contient initialement aucun jeton et si elle est \u00e9galement vide pour le marquage final, alors la transition t2 doit appara\u00eetre autant de fois que la transition t1 dans la liste des transitions \u00e0 franchir pour r\u00e9soudre le probl\u00e8me d'ordonnancement. Dans le cas contraire, le s\u00e9quent ne serait pas prouvable. Quand on effectue la preuve du s\u00e9quent, chaque fois que l'on a un jeton dans les places PE1, PE2 et PE3 et que la transition t1 est \u00e0 \u00e9liminer, alors on peut \u00e9liminer d'un coup t1 et t2. On travaille donc en fait sur le graphe de la figure 2.b car on consomme PE1, PE2 et PE3 pour produire PS1 et PS2.

Le graphe de la figure 2.b n'est pas un r\u00e9seau de Petri t-temporis\u00e9 \u00e9quivalent au r\u00e9seau de la figure 2.a. En effet, le jeton dans PE3 ne sera pas consomm\u00e9 en m\u00eame temps que ceux contenus dans PE1 et PE2. Pour d\u00e9clencher la r\u00e8gle t12, il faut que l'on soit s\u00fbr qu'un jeton va arriver dans PE3 et qu'il est r\u00e9serv\u00e9 pour le franchissement de t12. Toutefois il n'est pas n\u00e9cessaire qu'il soit effectivement d\u00e9j\u00e0 pr\u00e9sent dans PE3. Le n\u0153ud t12 du graphe de la figure 2.b est appel\u00e9 r\u00e8gle de

transition. En dehors de toute consid\u00e9ration

temporelle, il se comporte comme une transition d'un r\u00e9seau de Petri ordinaire. Il est sensibilis\u00e9 si toutes ses places d'entr\u00e9e contiennent au moins un jeton. Ces jetons sont consomm\u00e9s par le franchissement et un jeton est alors produit dans chacune des places de sortie.

Le fait de consid\u00e9rer que le jeton arrivant dans la place PE3 est r\u00e9serv\u00e9 pour \u00eatre associ\u00e9 aux jetons des places PE1 et PE2 permet de prendre en compte des d\u00e9cisions de gestion pr\u00e9visionnelle de nature logique, comme par exemple l'affectation d'une ressource \u00e0 une op\u00e9ration. Ceci est fait sans n\u00e9cessairement prendre en compte les d\u00e9cisions de type quantitatif comme le choix d'une valeur num\u00e9rique pour la date de franchissement de la transition t1 ou de celle de t2. Cette s\u00e9paration entre les d\u00e9cisions de nature logique et celles de nature num\u00e9rique permet de raisonner dans un espace de d\u00e9cision enti\u00e8rement discret pour les d\u00e9cisions de nature logique. On g\u00e8re les deux aspects, logique et num\u00e9rique, de fa\u00e7on s\u00e9par\u00e9e et explicite.

D\u00e9taillons le comportement temporel. Notons les dates de production des jetons par les variables suivantes : DE1 pour celui contenu dans la place PE1, DE2 pour PE2 et DE3 pour PE3. Dans le r\u00e9seau de Petri de la figure 2.a, la transition t1 est sensibilis\u00e9e \u00e0 la date max(DE1,DE2) et un jeton est produit dans les places PS1 et Pi \u00e0 la date :

DS1=d1+max(DE1,DE2)
(1)

La transition t2 est sensibilis\u00e9e \u00e0 la date max(d1+max(DE1,DE2), DE3) et le jeton dans la place PS2 est produit \u00e0 la date :

DS2=d2+max(d1+max(DE1,DE2), DE3)
(2)
3.3. R\u00e8gle de transition : g\u00e9n\u00e9ralisation de la prise
en compte du temps

Nous avons vu que le n\u0153ud t12 du graphe de la figure 2.b, appel\u00e9 r\u00e8gle de transition n'\u00e9tait pas une transition t-temporis\u00e9e. La prise en compte du temps est plus complexe. Pour chaque r\u00e8gle de transition il faut donc sp\u00e9cifier, en fonction des dates de production des jetons dans les places d'entr\u00e9e (c'est-\u00e0-dire des dates de leur arriv\u00e9e), quelles sont les dates de consommation des jetons dans les places d'entr\u00e9e et les dates de production des jetons dans les places de sortie. Un tel r\u00e9seau est en quelque sorte un r\u00e9seau arc-temporis\u00e9.

Pour la r\u00e8gle de la figure 2.b nous avons les dates de
consommations suivantes. Pour PE1 et PE2 :
max(DE1,DE2)
(3)
et pour PE3 :
max(d1+max(DE1,DE2), DE3)
(4)

Les dates de production sont celles donn\u00e9es au paragraphe pr\u00e9c\u00e9dent dans le cas de la figure 2.a. C'est-\u00e0-dire DS1 donn\u00e9 par l'\u00e9quation (1) pour la place PS1 et DS2 donn\u00e9 par l'\u00e9quation (2) pour la place PS2.

Un syst\u00e8me de r\u00e8gles de transition peut toutefois \u00eatre consid\u00e9r\u00e9 comme un r\u00e9seau de Petri ordinaire si l'on se pose des probl\u00e8mes d'accessibilit\u00e9 (donc sans consid\u00e9rations temporelles). En effet, il suffit d'utiliser l'\u00e9quivalence entre prouvabilit\u00e9 et accessibilit\u00e9. L'accessibilit\u00e9 du r\u00e9seau de r\u00e8gles de transitions d\u00e9finit la prouvabilit\u00e9 du s\u00e9quent correspondant et donc l'accessibilit\u00e9 du r\u00e9seau de d\u00e9part. L'avantage est que les \u00e9tats interm\u00e9diaires ne sont pas \u00e9num\u00e9r\u00e9s.

3.4 R\u00e8gle de r\u00e9duction

Pour pouvoir appliquer la r\u00e8gle de r\u00e9duction illustr\u00e9e en 3.2 de fa\u00e7on r\u00e9p\u00e9titive, il faut pouvoir l'appliquer dans le cas o\u00f9 t1 et t2 sont en fait d\u00e9j\u00e0 des r\u00e8gles de

of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...