• Aucun résultat trouvé

Partie III Algorithme de Synthèse de Lois de Commande 107

3.3 Chemin optimal

Si ((q”1∈/ QA1 ETq”1 ∈/Qv) OU (q1 ∈Q1,Ob ETq”1 satisfaitOb1)) Alors

Qv =Qv∪ {q”1}

Sinon

Si (q1 ∈Q1,Ob ETq”1 ne satisfait pasOb1) Alors

QA1 =QA1∪ {q”1}

Fin Si

Fin Si

...

Retourner D1= (QA1, C1, δ, q1,0, Q1,Ob);

Fin

Alg. 3: Condition restrictive d'exploration des états atteignables depuis un état objectif.

A partir de la représentation par un système de transitions d'états, D1, de l'espace restreint

d'états atteignables, un chemin doit être trouvé de l'état initial vers un état satisfaisant

l'ob-jectif. Même si il est reconnu que le choix de l'algorithme de recherche d'un chemin dépend

des caractéristiques intrinsèques du système contrôlé, notamment en terme d'existence de

redon-dances fonctionnelles, nous avons volontairement proposé un algorithme capable de faire face à la

diversité des systèmes contrôlés, au détriment parfois des performances mêmes de l'algorithme.

3.3 Chemin optimal

L'algorithme de recherche d'un chemin optimal an d'atteindre l'objectifOb1 depuis un état

initialq1,0 est d'abord proposé avec un critère décisionnel unique. Puis, nous nous intéressons à

la problématique multi-critères.

3.3.1 Problème mono-critère

La recherche d'un chemin optimal vis-à-vis d'un critère an d'atteindre un état objectif

depuis l'état initial est un problème classique de la théorie des graphes (Lacomme et al.,2003).

126 Chapitre 8. Phase A : Synthèse d'une Loi de Commande Mono-Produit

Parmi les nombreuses solutions existantes et moyennant une hypothèse sur le poids des arcs

qui doit être positif ou nul, il est possible d'utiliser l'algorithme de Dijkstra (Dijkstra,1959), de

faible complexité, O(S) avec S le nombre de sommets (cf. chapitre 7), qui fournit un chemin

optimal pour un critère à partir d'un sommet source, à chacun des autres sommets du graphe.

L'utilisation de l'algorithme de Dijkstra nécessite d'abord de construire à partir du système de

transitions d'étatsD1 un graphe G1.

Les sommets du graphe correspondent aux états du système de transitions et les arcs aux

transitions entre états. L'état initialq1,0devient le sommets1,0 et les sommets objectifss1,Ob

cor-respondent aux états objectifsq1,Ob. Le poids des arcs est déni à partir de la caractéristique des

opérations nécessaires à l'évaluation du critère d'optimisation. Quand la caractéristique

considé-rée est la duconsidé-rée, le poids de l'arc est censé représenter le temps nécessaire pour passer d'un état

à un autre. Mais, les opérations, d'action ou d'information, et les évolutions requises ne sont pas

systématiquement lancées au plus tôt. Ainsi, le temps nécessaire pour passer d'un état à un autre

suite à une opération ou une évolution requise est égal à la somme du délai de déclenchement

et de la durée de l'action. La dénition du poids de l'arc repose pour ces opérations sur deux

hypothèses liées directement au délai de déclenchement présenté dans la Figure5.14 page90.

Pour une opération, l'événement de début est contrôlé par le module coordination. Par

consé-quent, le délai de déclenchement d'une opération est xé par le module de coordination. N'ayant

aucune raison d'attendre et d'autant plus quand le temps d'exécution de la loi de commande est à

minimiser, toutes les opérations seront lancées au plus tôt. Ainsi, le poids d'un arc correspondant

à une opération sera égal à la durée de cette opération.

En revanche, une évolution requise peut être lancée au plus tôt comme ne jamais l'être. Mais

en se focalisant sur un seul produit, ces évolutions apparaîtront uniquement au début et à la

n de la séquence, correspondant respectivement à l'arrivée et à l'évacuation du produit. Les

évolutions requises ne seront alors pas considérées lors de la recherche du plus court chemin. De

manière à ne pas devoir modier le grapheG1, le poids d'un arc correspondant à une évolution

requise sera nul an de ne pas avoir d'impact sur le poids des chemins.

A partir du grapheG1et du résultat de l'algorithme de Dijkstra, il sut ensuite de comparer

le poids des chemins entre le sommets1,0 et les sommets s1,Ob, et de retenir le chemin de poids

minimum. La proposition ci-dessus soulève la question du choix du chemin quand le poids de

plusieurs chemins est minimal. Cette question se pose d'une part entre les chemins menant à un

même sommet objectif et d'autre part entre les chemins menant à diérents sommets objectifs. En

eet, pour l'algorithme de Dijkstra, une décision arbitraire est prise lorsque plusieurs chemins

sont de poids minimum. Pour ne pas laisser le hasard décider par manque de critères, il est

nécessaire de recourir à des critères décisionnels supplémentaires comme le propose la section

suivante.

3.3.2 Problème multi-critères

Deux solutions sont envisageables an de considérer plusieurs critères. La première est de

proposer à un expert les chemins de poids minimum an qu'il décide. La seconde est de prendre

en compte explicitement d'autres critères et de développer un algorithme multi-critères. Cette

problématique n'étant pas le c÷ur de l'approche proposée, nous donnons uniquement ici des

indications sur les avantages et les inconvénients de ces deux solutions.

3. Phase A, étape 1 : Transformation du produit 127

Un expert décide du chemin à sélectionner, an depuis l'état initial, d'atteindre un état objectif.

Le choix d'un chemin induit également le choix d'un sommet objectif. L'avantage est de

s'appuyer sur les compétences d'un expert qui dispose bien souvent de critères très diciles

à évaluer numériquement. Mais en contre-partie, la durée nécessaire à l'intervention de

l'expert risque de dégrader considérablement les performances de l'algorithme d'un point

de vue temporel. Cette solution est par conséquent à privilégier uniquement en phase de

conguration.

Un algorithme multi-critères qui peut par exemple considérer des critères classés par ordre

d'importance. Le poids des arcs du premier graphe correspond à la caractéristique des

opérations nécessaire à l'évaluation du premier critère. Suite à l'application de l'algorithme

de Dijkstra pour ce premier graphe, il sera appliqué une seconde fois à un deuxième graphe

composé de l'ensemble des chemins de poids minimal résultant de la première application

de Dijkstra. Le poids des arcs de ce deuxième graphe correspond à la caractéristique des

opérations nécessaire à l'évaluation du second critère, et ainsi de suite jusqu'à aboutir à un

chemin unique.

Cette solution rend l'algorithme de recherche du chemin optimal plus complexe et nécessite

pour certains critères d'enrichir le modèle. Néanmoins, sans enrichissement du modèle, il

est possible de dénir d'autres critères, comme par exemple de privilégier les états objectifs

depuis lesquels il n'y a pas d'évolutions induites ou requises applicables, ou bien encore de

minimiser le nombre d'actions à exécuter. Enn, pour une même caractéristique des

opéra-tions, plusieurs critères sont envisageables. Notamment à partir de la durée des opéraopéra-tions,

le temps qu'une chaîne fonctionnelle passe dans un état conduisant à une usure importante

peut être minimisé, comme le temps où un dispositif d'aspiration par un système Venturi

est activé. Tout ceci nécessite de pouvoir orir à l'expert le moyen de dénir ses propres

critères en fonction du système de production et les mécanismes associés pour leur prise

en compte par l'algorithme de synthèse.

Le chemin optimal de comportements de transformation, noté Ch1, dans le système de

transition d'états D1 d'un état initial q1,0 an d'atteindre un objectif Ob1 est obtenu par la

correspondance entre les sommets du graphe G1 et les états du système de transition d'états

D1. La séquence de comportements de transformation à imposer au système contrôlé est alors

donnée par ce chemin (cf. Figure8.4).

Lors de cette première étape limitée à la vision de l'état physique d'un produit, seules des

opérations avec des comportements de transformation ont été dénies. Ainsi, la seconde étape,

présentée dans la section suivante, vise à considérer en plus de l'état physique du produit sa

position dans le système de production.

chemin composé de comportements de transformation graphe de précédence

C

1,k

q

k

q

k+1

C

1,k+1

q

k+2

C

1,k

C

1,k+1

séquence à imposer

au système contrôlé

Fig. 8.4 Traduction du chemin optimal en graphe de précédence représentant la séquence de

comportements à imposer au système contrôlé.

128 Chapitre 8. Phase A : Synthèse d'une Loi de Commande Mono-Produit

4 Phase A, étape 2 : Déplacement du produit

La considération des évolutions de la position du produit a pour but d'une part de satisfaire

la demande en tenant compte de l'arrivée et du départ du produit, et d'autre part de

satis-faire les conditions et les pré-contraintes sur la position du produit an de pouvoir imposer les

comportements de transformation spéciés par le chemin construit précédemment, Ch1.

De par les similitudes importantes avec l'étape 1 présentée précédemment, la présentation

de l'étape 2 dans cette section se focalise uniquement sur les points particuliers en donnant

néanmoins les notations adoptées.

4. Phase A, étape 2 : Déplacement du produit 129

4.1 Principe

A l'inverse de la première étape qui construit une seule séquence, l'étape 2 va générer autant

de séquences, modiant la position du produit, que nécessaire an de satisfaire la demande et

permettre la transformation du produit (cf. Figure8.6). L'intégration de ces séquences au chemin,

généré à l'étape précédente, conduit à la génération d'un chemin, dit de transformation et de

transitique, notéCh12.

Le principe de construction d'un tel chemin fait apparaître une diérence fondamentale

dans la dénition de l'état initial et de l'objectif. En eet à l'inverse de l'étape 1 pour laquelle

l'état initial q1,0 et l'objectif Ob1 sont issus directement de la demande, l'état initial q2,i,0 et

l'objectif Ob2,i pour un problème de transitique ne sont pas donnés par la demande. Ainsi, la

particularité de l'étape 2 est la nécessité de déterminer l'état initialq2,i,0 et l'objectifOb2,i, pour

dénir ensuite les évolutions de la position du produit.

Au delà, de cette particularité sur la connaissance de l'état initial et de l'objectif, la

re-cherche d'un chemin représentant les évolutions de la position du produit, notéCh2,i, dière de

la génération d'un chemin de transformation,Ch1, sur les quatre points suivants :

seuls les comportements de transitique des opérations sont considérés ;

seule la position du produit évolue. Ainsi, un état q2 d'un chemin Ch2,i appartient à

l'ensembleQ2 déni parQ2 =Q

x∈V E1∪V E2VxavecVx l'ensemble des valeurs de la variable

d'étatx. Un étatq2 ∈Q2 est déni parq2={(x=c)|x∈V E1∪V E2}, ouc∈Vx;

le chemin de transformation et de transitique,Ch12, est construit progressivement à chaque

nouvelle séquence de transitique construite ;

la complexité de l'espace d'états atteignables au sein duquel sont recherchées les évolutions

de la position du produit est limitée par des conditions restrictives diérentes de celles

utilisées dans l'étape 1.

Comme nous l'avons précisé précédemment, la deuxième étape nécessite d'abord de

détermi-ner l'état initial et l'objectif des chemins de transitiques à construire. Cette détermination étant

basée sur le mécanisme de construction du chemin de transformation et de transitique, Ch12,

nous présentons d'abord ce mécanisme avant de nous focaliser sur la génération d'un chemin de

transitique pour un état initial et un objectif donnés.

130 Chapitre 8. Phase A : Synthèse d'une Loi de Commande Mono-Produit