• Aucun résultat trouvé

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

3.2 Espace restreint d'états atteignables

La construction de l'espace restreint d'états atteignables par transformation du produit depuis

un état initial q1,0 pour un objectif Ob1 est présentée progressivement en commençant par la

fonction qui établit la liste des opérations avec un comportement de transformation exécutables

depuis un état q1. Puis basée sur cette fonction, la génération de l'espace d'états atteignables

est ensuite détaillée. An de limiter la complexité de cet espace d'états, nous présentons une

condition restrictive fonction de l'objectif.

3.2.1 Opérations avec un comportement de transformation

La construction de l'espace d'états atteignables limité à des évolutions de l'état physique

d'un produit nécessite de déterminer pour un état toutes les opérations dont l'eet vient à

modier l'état physique du produit (cf. Figure8.2). Ainsi, nous dénissons une fonction C1(q1)

qui renvoie pour un étatq1 ∈Q1 l'ensemble des comportements d'opération qui sont susceptibles

de transformer le produit (C1(q1) ={c1,i}).

Depuis un état donné, le comportement d'une opération va transformer l'état physique d'un

produit s'il comporte au moins une évolution associée du ux de produits dont l'eet

tran-sitoire ou nal modie l'état du produit. Mais, l'opération pourra être exécutée si toutes les

pré-contraintes des évolutions associées du ux de produits dont la condition est satisfaite sont

également satisfaites. Considérant uniquement l'état physique des produits lors de cette étape,

les conditions et les pré-contraintes seront à satisfaire uniquement vis-à-vis des variables d'états

décrivant l'état physique des produits. Ainsi, toute opération qui vérie le test suivant pour un

étatq1 ∈Q1 a un comportement dit de transformation depuis cet état :

Il existe au moins une évolution du ux de produits, composant l'opération (eai,j, epi,j

ou esi,j), pour laquelle :

la condition sur l'état physique du ux de produits est vraie ;

la pré-contrainte sur l'état physique du ux de produits est satisfaite ;

l'eet transitoire ou l'eet nal modie l'état physique du ux de produits.

Il n'existe pas d'évolution du ux de produits, composant l'opération (eai,j, epi,j ou

esi,j), pour laquelle :

la condition sur l'état physique du ux de produits est vraie ;

la pré-contrainte sur l'état physique du ux de produits n'est pas satisfaite ;

l'eet transitoire et l'eet nal modient l'état physique du ux de produits.

Pour l'évolution de la chaîne fonctionnelle de l'opération (ecioueei), quand il y en a une :

la pré-contrainte sur l'état physique du ux de produits est satisfaite.

Par application du test énoncé ci-dessus à chacune des opérations du modèle du système

contrôlé, l'ensemble des opérations avec un comportement de transformation est alors déterminé.

A partir de la détermination de cet ensemble de comportements, la génération de l'espace

d'états atteignables depuis un état initial est maintenant exposée.

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

Evolution requise

Evolution induite

Opération d’information

Opération d’action

Modèle du

système contrôlé

Opération d’action

Opération d’actionOpération

?

transformation

Fig. 8.2 Extraction du modèle des opérations avec un comportement qui transforme le produit.

3.2.2 Espace d'états atteignables

An de construire uniquement l'espace d'états atteignables depuis un état initial q1,0,

l'algorithme utilise une technique de progression vers l'avant à partir cet état initial. La seconde

technique envisageable est basée sur un mécanisme de régression depuis chacun des états

satisfaisant l'objectif. Dans ce cas, l'espace d'états obtenu sera généralement plus grand que

l'espace d'états atteignables depuis l'état initial.

L'algorithme de construction des états atteignables par des opérations de transformation

depuis un état initialq1,0 est un algorithme glouton (Lacomme et al.,2003) qui génère lui même

de nouveaux états à visiter.

Ainsi, il va mettre à jour deux ensembles d'états :

l'ensemble des états à visiter, noté Qv;

l'ensemble des états traités, notéQA1.

Le principe de l'algorithme est alors le suivant :

déterminer tous les comportements de transformation (cf. Ÿ 3.2.1) existants depuis un état

de l'ensemble des états à visiter. Cet état est retiré des états à visiter et ajouté à l'ensemble

des états traités ;

calculer l'état atteint suite à l'application de chacun de ces comportements ;

si l'état atteint est un nouvel état, il est alors ajouté à l'ensemble des états à visiter.

L'algorithme se termine bien évidemment lorsque l'ensemble des états à visiter, Qv, est vide.

L'ensemble des états atteignables est alors donné par l'ensemble des états traités. Le système de

transitions d'étatsD1= (QA1, C1, δ1, q1,0) est ainsi construit.

La Figure 8.3représente d'une part les deux ensembles d'états mis à jour, et d'autre part les

comportements de transformation existants depuis l'état q1,4 avec les états atteints suite à leur

application. Seul l'état q1,7 = δ(q1,4, c1,3) atteignable depuis q1,4 est un nouvel état qui est par

conséquent ajouté à l'ensembleQv des états à visiter.

Pour chacun des comportements, l'état q”1,4 atteint suite à l'exécution de l'opération ayant

ce comportement est calculé d'après les dénitions 2 et 4. Comme énoncé au chapitre 7, l'état

intermédiaire durant l'opération n'est pas représenté.

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

q

1,0

q

1,4

Q

A1

Q

V

q

1,2

q

1,1

q

1,3

q

1,0

q

1,4

Q

A1

Q

V

q

1,7

c

1,1

c

1,2

c

1,3

q

1,2

q

1,1

q

1,3

q

1,5

q

1,6

q

1,5

q

1,6

C q

1

(

1,4

)={c c c

1,1

,

1,2

,

1,3

}

q

1,2

c

1,1

q

1,4

q =q

1,4 1,7

q”

c

1,3

q

1,4

c

1,2

q

1,4

q

1,5

Fig. 8.3 Construction des états atteignables par transformation du produit depuis un état

initialq1,0∈Q1.

Fonction EtatsAtteignables(q1,0) : système de transition d'états

Qv ={q1,0}

QA1={∅}

δ(q1, c1) est vide

Tant que (Qv 6={∅}) faire

Ctransf ormation =C1(q1)tel q1 ∈Qv

Qv =Qv\ {q1}

QA1=QA1∪ {q1}

Tant que (C1(q1)6={∅}) faire

q”1=δ(q1, c1)tel que c1 ∈C1(q1)

Ctransf ormation =Ctransf ormation\ {c1}

Si (q”1∈/ QA1 etq”1∈/ Qv) Alors

Qv =Qv∪ {q”1}

Fin Si

Fin Tq

Fin Tq

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

Fin

Alg. 1: Algorithme de construction de l'espace d'états atteignables par transformation du

produit depuis un état initialq1,0∈Q1.

An de ne pas construire des états et des transitions inutiles et ainsi réduire la taille du

système de transition D1 et le temps pour le générer, une condition présentée dans la section

suivante restreint les états à explorer depuis un étatq1 satisfaisantOb1.

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

3.2.3 Condition restrictive liée à l'objectif

L'algorithme 1 construit l'espace complet d'états atteignables depuis un état initial. Ainsi

même après un état satisfaisant l'objectif, tous les états atteignables qui sont inutiles sont

également construits. Il est cependant possible de limiter la complexité de l'espace d'états en ne

construisant pas tous les états atteignables depuis un état objectif. Cette condition restrictive

nécessite d'abord de diérencier les états objectifs des autres, et ensuite de leur appliquer un

traitement spécique quand ils sont visités.

Tous les états qui satisfont l'objectif Ob1 spécié par une proposition logique sur l'état

phy-sique du produit sont des états appelés états objectifs. An de les diérencier de ceux ne

satis-faisant pas l'objectif, une liste d'états objectifs est crée.

Si un nouvel état atteint satisfait l'objectif, il sera alors ajouté à la liste des états objectifs en

plus d'être ajouté à la liste des états à visiter. La construction de l'ensemble des états objectifs

est donnée par l'algorithme 2.

Fonction EtatsAtteignables(q1,0,Ob1) : système de transition d'états

Q1,Ob={∅}

...

Si (q”1 satisfait Ob1) Alors

Q1,Ob=Q1,Ob∪ {q”1}

Fin Si

...

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

Fin

Alg. 2: Complément à l'algorithme1 an de créer l'ensemble des états objectifs.

Si le modèle était constitué uniquement d'opérations, il n'y aurait pas d'intérêt à explorer

l'espace d'états atteignables depuis un état objectif. Mais le niveau coordination ne contrôlant pas

les évolutions requises et induites, elles peuvent très bien être exécutées depuis un état objectif

et conduire dans un état qui ne le satisfait plus. Par exemple, pour une transformation par

cuisson, l'évolution induite représentant l'évolution de l'état du produit après la durée normale

de cuisson devra être prise en compte. En eet en fonction de l'impact du dépassement de la

durée de cuisson, cette évolution conduira soit dans un état satisfaisant toujours l'objectif (métal

en fusion restant à température constante) ou au contraire dans un état ne satisfaisant plus

l'objectif (cuisson de produits alimentaires).

An de tenir compte d'une telle situation, il est nécessaire de construire depuis un état objectif

l'espace d'états atteignables par des évolutions induites ou des évolutions requises. Ceci implique

d'abord de modier la fonctionC1(q1)qui détermine les comportements de transformation

exis-tants depuis un état. Elle doit renvoyer pour un état objectif uniquement les comportements

d'évolutions induites ou d'évolutions requises. Puis en fonction du respect de l'objectif, ou non,

l'état atteint suite à un de ces comportements est traité diéremment. Par exemple, pour une

évolution induite, si l'état atteint ne satisfait plus l'objectif, il est nécessaire d'interdire son

exé-3. Phase A, étape 1 : Transformation du produit 125

cution. Pour cela, la ou les conditions conduisant à l'obtention de l'évolution induite devront ne

plus être satisfaites, par exemple par une opération d'arrêt d'un four. L'ajout de cette opération

de préparation à l'étape 3, présentée plus loin dans ce chapitre, sera possible à condition d'avoir

représenté depuis l'état objectif l'évolution induite qui conduit à ne plus satisfaire cet objectif.

L'état, suite à cette évolution, n'étant jamais atteint par principe, il n'a pas à être visité ; il est

donc directement ajouté à l'ensemble des états traitésQA1 an de mémoriser l'existence de cette

évolution induite.

A l'inverse, si l'état atteint depuis un état objectif suite à une évolution induite satisfait

toujours l'objectif, il est ajouté à l'ensemble des états à visiter Qv et à l'ensemble des états

objectifsQ1,Ob.

L'algorithme3 propose l'intégration des traitements proposés ci-dessus à l'algorithme2.

Fonction EtatsAtteignables(q1,0,Ob1) : système de transition d'états

...

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.