• Aucun résultat trouvé

2.4 Les applications au contrôle de moteurs

3.1.3 Des applications de SMA

Les paragraphes suivant survolent quelques techniques de contrôle et d’apprentissage à base de SMA. Étant naturellement décentralisés, c’est dans les systèmes physiquement distribués qu’ils ont trouvé le plus d’applications. Mais leurs avantages ne se limitent pas à ce type de problème.

3.1.3.1 SMA et contrôle de systèmes

Le contrôle de chaînes de production fait intervenir des entités physiquement distribuées (les machines, les opérateurs, les produits, etc). Les systèmes de contrôle centralisés présentent le défaut majeur d’être rigides et de tomber dans des situations où toute la chaîne doit être stoppée lorsqu’une avarie y apparaît localement. C’est notamment pour cette raison que

les SMA et leur fonctionnement décentralisé sont régulièrement utilisés (Leitão 2009). Par exemple, Heragu et al. 2002 proposent unn SMA en trois couches :

– La couche "haute" n’est composée que d’un agent, appelé Système qui est responsable de la planification pour l’ensemble de l’usine. Il génère des buts pour chaque département. – La couche "intermédiaire" est composée d’agents Cellule, chacun est responsable d’un

département de l’usine. Ils transforment les objectifs fournis par la couche supérieure en buts pour les agents de la couche inférieure.

– La couche "basse" est composées d’agents de trois types, qui représentent les entités de l’usine impliquées dans la réalisation des objectifs : les Consignes, les Machines et les MHD (dispositifs de manutention).

Les agents de chaque couche négocient leurs activités en fonction de leurs ressources et selon un système d’enchères. Ils utilisent notamment une base de connaissances et un module d’apprentissage (incorporant un réseau de neurones). Ce processus de décision décentralisé permet une plus grande souplesse face aux imprévus, comme des pannes ou des commandes urgentes.

Les SMA peuvent être utilisés à divers niveaux dans le contrôle. Dans le domaine des bioprocédés, Gao et al. 2010 les utilisent à la fois pour concevoir le futur système contrôlé, et pour donner des conseils à un superviseur humain. Le SMA visant à proposer des actions de contrôle possède une structure hiérarchique dont le sommet est un agent coordinateur, suivi d’agents Opérations représentant les opérations spécifiques envisageables sur le bioprocédé, puis d’agents IA et Principes qui permettent l’utilisation de modèles prédictifs. L’avantage des SMA est ici encore la distribution. Elle permet le passage à l’échelle en mettant en relation plusieurs modèles couvrant chacun une échelle ou une plage de fonctionnement limitée du procédé. Aucun modèle global n’est en effet en mesure de représenter efficacement le procédé.

Dans ces approches, le contrôle est effectivement distribué. Le passage à l’échelle et la flexibilité sont assurés par la décentralisation des agents. Les agents spécifiques au domaine (Machines pour les chaînes de production, Opérations et IA pour les bioprocédés, etc) rendent l’instanciation plus facile, mais font perdre en généricité. Il faudrait les revoir entièrement pour appliquer le SMA à un autre type de système contrôlé. Des agents spécifiques au problème du contrôle, indépendamment du domaine, seraient préférables. En outre, l’apprentissage est réalisé par des techniques classiques, comme les réseaux de neurones, embarquées dans chaque agent. Ce point est susceptible d’alourdir leur déploiement sur des cas réels.

Certains SMA sont quant à eux entièrement dédiés à l’apprentissage.

3.1.3.2 SMA et apprentissage

Ce paragraphe se concentre sur des approches d’apprentissage multi-agent, à ne pas confondre avec des techniques parfois qualifiées de "basées agent" qui n’impliquent qu’un seul agent apprenant (par exemple sous la forme d’un LCS). Les techniques d’apprentissage multi-agent peuvent se séparer en deux catégories (Panait et Luke 2005) :

– L’apprentissage concurrent, où de multiples apprentissages sont menés simultanément, chaque agent embarquant le plus souvent entièrement un algorithme d’apprentissage.

Il y a donc plusieurs apprenants.

– L’apprentissage en équipe, où un seul apprenant découvre le comportement d’un collectif.

Apprentissage Concurrent L’apprentissage concurrent est l’approche la plus suivie. Chaque agent est un apprenant autonome, mais pas indépendant. Son apprentissage est influencé par son environnement, qui inclut les autres agents. En apprenant, un agent modifie son comportement (ses actions sur l’environnement) et peut ainsi potentiellement rendre invalide celui des autres agents. Ils vont apprendre, s’adapter et peut-être invalider à leur tour le comportement courant de l’agent. On parle alors de co-adaptation. Les algorithmes utilisés par les agents sont généralement directement dérivés du Q-learning et des algorithmes génétiques, et beaucoup font appel à des concepts de la théorie des jeux comme l’équilibre de Nash, par exemple Tuyls, Hoen et Vanschoenwinkel 2006.

En apparence, l’apprentissage concurrent peut se rapprocher du méta-apprentissage, avec l’idée de combiner efficacement plusieurs apprenants. Mais l’apprentissage concurrent n’est pas supervisé, et fait apparaître en réalité de nombreux challenges dus à la dynamique imprévisible de l’environnement. En particulier, la répartition du signal de renforcement entre les agents est un problème délicat et crucial pour le bon fonctionnement du SMA. Outre les limites des algorithmes utilisés par chaque agent, cela pèse sur le travail d’instanciation à fournir pour ce type de méthode.

Apprentissage en équipe L’apprentissage en équipe ne fait intervenir qu’un seul apprenant, mais celui-ci apprend le comportement d’un ensemble de plusieurs agents. Les méthodes utilisées diffèrent selon que le SMA soit homogène ou hétérogène. Dans le premier cas, un comportement est appris et appliqué à tous les agents. Dans le second, chaque agent est différent, permettant une plus grande richesse de comportements collectifs mais impliquant une plus grande complexité. Certaines approches hybrides combinent les deux en formant des groupes d’agents homogènes apprenant chacun des comportements collectifs différents (Bongard 2000).

Si le résultat est un SMA, l’apprentissage en équipe n’est pas lui-même multi-agent. Il s’agit en réalité d’une application presque directe de techniques d’apprentissage classiques. Les algorithmes génétiques sont par exemple utilisés en encodant le comportement de chaque agent dans le même long chromosome (Andre et Teller 1999). Cependant, cette approche met le doigt sur un aspect capital des SMA : le lien entre le comportement local des agents et le comportement global du système. En effet, l’apprentissage en équipe cherche à apprendre le comportement de chaque agent en se basant sur une évaluation du comportement global du système. Or, ce comportement global est quasiment impossible à prévoir à partir des comportements locaux des agents. C’est dans ce type de situation que le mot émergence est parfois évoqué. La section 3.2 donne plus de détails à ce sujet.