• Aucun résultat trouvé

Partie I Le contexte industriel et le positionnement scienti-

Chapitre 3 Le contexte théorique et scientifique

4.3 L’auto-régulation du système

4.3.6 La gestion des boucles de rétroactions

Un agent boucle de rétroactions a pour rôle la gestion d’un paramètre qui est à la fois en entrée et en sortie du système. Tel que décrit précédemment, son rôle est d’assurer la convergence de ces deux valeurs tout en respectant les objectifs du concepteur sur ce paramètre. Comme pour les autres agents sa perception environnementale reste locale.

Son double rôle est important et délicat :

1. La convergence des deux paramètres est indispensable, car sans elle les solutions trouvées par le système sont incohérentes (physiquement invalides). Or même si le système est critique, il est important qu’il soit cohérent pour trouver des adapta- tions de paramètres qui aient un sens physique et qui permettent d’envisager une amélioration de l’état général du système qui soit progressive et cohérente.

2. En même temps, une prise en compte trop forte de cette contrainte d’égalité peut aussi avoir des effets négatifs, notamment lorsque la valeur obtenue en sortie ne respecte pas les contraintes de l’objectif. Faire évoluer la valeur vers l’espace des so- lutions admissibles est donc également important, car on veut aussi faire disparaître les situations critiques définies par les plages de validité des modèles.

La figure 4.5 illustre quelques situations que nous détaillerons par la suite et qui sont potentiellement rencontrées par un agent boucle. Elles illustrent le besoin de résoudre les deux problèmes introduits précédemment à savoir : satisfaire les contraintes du concepteur, et obtenir une égalité de valeur en entrée/sortie du paramètre bouclé.

La courbe fonction globale y représente la fonction qui permet à partir d’une valeur de l’entrée bouclée, de calculer la valeur de sa sortie. Cette fonction est dépendante des choix de valeurs faits sur les autres paramètres du système. Ainsi lorsque l’on change le paramétrage du système, on change la forme de cette fonction. Finalement une solution

au problème est atteignable, lorsque cette fonction globale croise la fonction identité dans le domaine admissible de l’objectif, tel que cela est illustré sur la figure 4.5(d). Pour que la solution soit effectivement trouvée, il faut donc que la valeur fournie en entrée soit égale à celle de l’intersection entre les fonctions globale et identité. Dans ce cas, la valeur fournie en entrée est bien égale à la valeur obtenue en sortie et l’ensemble des contraintes sont respectées.

La difficulté de ce problème est que la fonction globale est inconnue, il faut donc adapter les demandes et actions de l’agent boucle en utilisant uniquement sa perception environ- nementale locale. Voici donc quelques situations et moyens d’action utilisés par l’agent boucle pour permettre la convergence de sa valeur bouclée.

1. Analyse de la situation : La figure 4.5(a) représente un état initial, pour lequel la valeur XEntrée(0) est appliquée au système. Il en ressort la valeur XSortie(0) qui est différente de la valeur XEntrée(0), mais à l’intérieur de l’espace admissible de l’objectif. L’agent ne connaissant pas la forme de la fonction globale, il ne peut pas savoir à ce moment de la résolution que la solution au problème n’est pas atteignable (puisque l’intersection entre les fonctions globale et identité n’est pas dans l’espace admissible de l’objectif).

Action : Dans ce cas de figure, l’agent modifie donc uniquement sa valeur d’en- trée en choisissant une valeur (XEntrée(1)) comprise entre la valeur précédemment introduite (XEntrée(0)) et celle que le système a calculée (XSortie(0)).

2. Analyse de la situation : La situation obtenue à l’étape suivante est représentée en figure 4.5(b). La valeur XEntrée(1) est appliquée au système. Il en ressort la valeur XSortie(1). Cette fois-ci la valeur obtenue est non seulement différente de

XEntrée(1) mais aussi à l’extérieur de l’espace admissible de l’objectif.

Action : Dans ce cas, l’agent boucle choisit donc non seulement d’adapter son entrée (comme précédemment) mais aussi d’envoyer une demande de modification aux autres agents pour qu’ils modifient les valeurs de leurs paramètres, exactement comme le ferait un agent objectif de sortie. En modifiant leurs paramètres, les autres agents changent la forme de la fonction globale et vont ainsi participer à la réussite de la convergence du bouclage.

3. Analyse de la situation : À l’étape suivante (figure 4.5(c)), la forme de la fonction

globale a changé à la suite des demandes de modifications de paramètre envoyées et

réalisées par les autres agents. Cependant, une différence subsiste entre les valeurs (fournie/calculée) du paramètre de la boucle, ce qui implique les actions suivantes. Actions : Des modifications successives sont réalisées sur la valeur introduite dans le système, de façon à choisir à chaque fois une valeur comprise entre celle fournie au système et celle effectivement calculée (comme lors de l’étape 1).

4.3. L’auto-régulation du système

Valeur fournie en entrée Contrainte sur l’objectif

Fonction globale XSortie(0) XEntrée(0)

XSortie(0)

reportée Valeur calculée

Fonction identité

(a) Objectif satisfait, égalité insatisfaite

Valeur fournie en entrée Valeur obtenue en sortie Contrainte sur l’objectif

Fonction globale XEntrée(0) XSortie(0) XEntrée(1) XSortie(1) reportée Fonction identité XSortie(1)

(b) Objectif et égalité insatisfaits

Valeur fournie en entrée Valeur calculée Contrainte sur l’objectif

Nouvelle Fonction globale

XEntrée(1) XSortie(1) XEntrée(2) XSortie(2) reportée Fonction identité XSortie(2)

(c) Objectif satisfait, égalité insatisfaite

Valeur fournie en entrée Contrainte sur l’objectif

Fonction globale XEntrée(k) XSortie(k) Valeur calculée Fonction identité XSortie(k)

(d) Objectif et égalité satisfaits

Fig. 4.5 – Les contraintes sur la valeur d’une boucle de rétroactions

4. Analyse de la situation : La figure 4.5(d) présente un état satisfaisant l’ensemble des contraintes. L’agent boucle ne modifie plus la valeur de son entrée et n’envoie pas non plus de demandes de modification, puisque la valeur du bouclage a convergé vers une valeur admissible.

Pour résumer, l’objectif pour obtenir la convergence d’une boucle est bien de chercher à faire converger les valeurs du paramètre (fournie et calculée). Mais pour obtenir cette convergence, on doit souvent modifier simultanément la valeur d’autres paramètres d’en- trée du système afin de modifier la forme de la fonction globale et permettre d’obtenir un point de convergence qui soit à l’intérieur de l’espace des solutions du paramètre bouclé. Ainsi l’agent boucle :

– propage des demandes de modification en direction des entrées systèmes pour mo- difier la fonction globale.

– adapte la valeur qu’il fournit en entrée du système, afin de la faire progressivement converger vers la valeur effectivement calculée.