• Aucun résultat trouvé

L’auto-organisation coopérative procure une excellente capacité d’apprentissage et d’adap- tation aux AMAS et leur permet de s’attaquer aux problèmes complexes. Ils sont notamment utiles dans les cas présentant au moins une des caractéristiques suivantes (Georgé, Gleizes et Camps 2011) :

– il y a un problème à résoudre (une fonction à réaliser, une structure à observer, etc), – l’application est complexe, dans le sens des systèmes complexes,

– le contrôle (du SMA) et l’apprentissage peuvent (et souvent doivent) être distribués, – le système doit s’adapter à des changements, qu’ils soient internes (ajout/suppression

de parties du système) ou externes (modifications dans l’environnement), – les objectifs sont flous (impliquant des satisfactions humaines),

– le système est sous-spécifié, l’adaptation est dans ce cas un moyen de concevoir le système.

La problématique du contrôle de systèmes complexes correspond aux quatre premiers critères. En effet :

– le contrôle est une fonction à réaliser,

– la loi de la variété requise (Ashby 1956), présentée dans le chapitre 1, implique que le contrôleur doit être de complexité au moins égale à celle du système contrôlé,

– des techniques comme la commande prédictive distribuée (Müller, Reble et Allgöwer 2011) et l’auto-calibration en ligne (Malikopoulos, Assanis et Papalambros 2009) présentées dans le chapitre 2 renforcent l’idée de la nécessité de la distribution.

– un contrôleur de système complexe doit s’adapter aux changements de celui-ci au cours du temps, ainsi qu’à d’éventuelles pannes.

Le problème du contrôle est ainsi adéquat à l’utilisation des AMAS. En outre, ceux-ci semblent capables de répondre aux trois besoins exposés en fin de chapitre 2, rappelés ci-après.

Instanciation Un système de contrôle doit être facile à appliquer à une instance particulière de procédé. La difficulté d’application d’un système de contrôle à une instance de procédé provient généralement :

– de la construction et de la calibration d’un modèle,

– du besoin de connaissance et d’expérience sur les algorithmes d’apprentissage utilisés afin de les paramétrer correctement.

L’auto-organisation permet à un AMAS d’apprendre la réalisation d’une fonction. Il est alors tout à fait possible d’envisager de se passer totalement de modèle et d’apprendre directement la fonction de contrôle à partir d’observations sur les entrées et les sorties du procédé visé. En outre, la méthode ADELFE identifie des agents proches du domaine considéré. Les concepts et les données manipulés sont ainsi familiers des experts du domaine d’application. Il n’y a pas de transformation des données nécessaire à l’application du système (contrairement aux algorithmes génétiques) ni de connaissances poussées sur le domaine à intégrer au système sous forme de paramètres (comme c’est le cas pour calculer certains signaux de renforcement ou pour instancier un réseau de neurones).

Adaptation Un système de contrôle doit être capable de suivre l’évolution du procédé, autrement dit d’apprendre parallèlement au contrôle afin de se mettre à jour. Si l’auto-organisation permet de converger vers une solution, elle permet également de l’adapter dynamiquement. Ainsi, un système de contrôle AMAS devrait être capable d’ajuster son contrôle à mesure que son environnement (incluant le procédé contrôlé) change. Pour les mêmes raisons, il devrait être robuste vis-à-vis de pannes (de capteur ou d’effecteur), et éventuellement du bruit sur les données. Le fonctionnement par couplage avec l’environnement, proche de l’apprentissage par renforcement, permet cette adaptation en ligne, simultanément au contrôle.

Passage à l’échelle Un système de contrôle doit être capable de passer à l’échelle, c’est-à-dire de gérer simultanément un grand nombre de variables contrôlées et de critères d’optimisation. D’un point de vue calculatoire, la distribution et la décentralisation propres aux SMA rendent possible l’optimisation et la résolution de contraintes impliquant une combinatoire bien plus élevée qu’avec une approche centralisée. Elles permettent donc l’application d’un SMA au contrôle de systèmes de grande dimension. En outre, en se focalisant sur le niveau local et en laissant aux agents le contrôle de leur processus d’organisation, qui mène à l’accomplissement de la fonction globale du système, l’approche AMAS permet de repousser la limite de la complexité des systèmes ainsi conçus. Cette approche permet donc de concevoir plus facilement un contrôleur dont la complexité intrinsèque est plus importante que celle atteignable avec les méthodes usuelles. Or, selon la loi de la variété requise, le contrôleur d’un système complexe doit nécessairement être complexe.

Enfin, Videau 2011 a montré la pertinence de l’approche pour le contrôle de systèmes avec la conception d’un AMAS dédié au contrôle de bioprocédés. Celui-ci a servi de base de départ au système présenté dans le chapitre suivant.

CHAPITRE

4

ESCHER, contrôler et apprendre

Ce chapitre décrit et commente le système ESCHER. Acronyme de Emergent Self-adaptive Controller for Heat Engine calibRation, c’est un système multi-agent adaptatif pour le contrôle de systèmes complexes. Conçu dans le cadre d’un projet autour des moteurs à combustion, il se veut néanmoins suffisamment générique pour être applicable sans modification à une large gamme de procédés. Suivant une approche boîte noire du contrôle, il "joue" avec les entrées du procédé contrôlé et en observe les effets sur les sorties. Parallèlement, il déduit et applique les actions permettant de respecter les critères qui ont été fixés par l’utilisateur.

4.1

Objectifs du système

L’objectif premier d’un système de contrôle est de placer et maintenir le système contrôlé dans un état désiré. Dans le cas d’ESCHER, le système contrôlé peut posséder plusieurs entrées et plusieurs sorties (MIMO), et l’état désiré est décrit comme une combinaison de plusieurs critères. Un critère peut concerner aussi bien une variable unique (une sortie ou une entrée) qu’une combinaison de plusieurs variables, et peut être de trois types :

– une contrainte : un seuil à respecter, – une consigne : une valeur à atteindre,

– une optimisation : une valeur à minimiser ou maximiser.

Une exigence pour ESCHER est d’être facile à mettre en place sur un procédé donné. L’utilisateur, qui est ici l’ingénieur appliquant ESCHER à un procédé donné, ne doit pas avoir besoin de connaître le fonctionnement de ESCHER pour l’utiliser, ni pour le paramétrer. Un contrôleur rapidement instanciable signifie, en outre, que son utilisation n’est pas soumise à un paramétrage lourd, ni à l’utilisation d’un modèle mathématique prédéfini. Autrement dit, les renseignements sur le procédé à fournir au contrôleur doivent être minimes. ESCHER doit ainsi se passer d’un modèle préétabli du système contrôlé et nécessiter peu de paramétrage. Il doit donc être capable d’apprendre le contrôle du procédé.

En outre, cet apprentissage ne doit pas être figé, il doit se poursuivre indéfiniment pendant le contrôle afin que ESCHER s’adapte aux changements de comportement du procédé (pannes, usure, etc). Pour apprendre, il se base sur l’observation en temps réel des entrées et des sorties du système contrôlé, ainsi que sur la connaissance (nécessaire à tout système de contrôle) des consignes, contraintes et objectifs définis par l’utilisateur. Ainsi, ESCHER voit le système contrôlé comme une boîte noire, il n’a pas connaissance des mécanismes internes qui en régissent le comportement.

Les sections suivantes présentent les agents qui composent ESCHER.