Système multi-agent

Système dans lequel un ensemble d’objets physiques (robots) ou artificiels (programmes informatiques) interagissent entre eux et avec leur environnement, le plus souvent selon des modes de coopération, de concurrence ou de coexistence destiné à permettre des expérimentations sur des systèmes complexes par simulation Elément actif du système, un agent est selon l’informaticien J.Ferber : « une entité autonome, réelle ou abstraite, qui est capable d’agir sur elle même et sur son environnement, qui, dans un univers multi-agent, peut communiquer avec d’autres agents, et dont le comportement est une conséquence de ses observations, de ses connaissances et de ses interactions avec les autres agents ».
Issus des recherches en intelligence artificielle distribuée (IAD) et en robotique initialement, ces objets (agents) interagissent dans le but de résoudre des problèmes dont la complexité dépasse leurs capacités individuelles. Les domaines d’application s’élargissent et se développent en sciences humaines et sociales (depuis les années 1990) dans le cadre des sciences de la complexité et plus particulièrement en géographie avec la Géosimulation

Si les systèmes multi-agents possèdent des caractéristiques proches de celles des automates cellulaires classiques développés par von Neumann et Ulam, leur spécification formelle en est cependant moins élaborée. La rencontre entre des domaines de recherche aussi différents que l’IAD, la vie artificielle, l’économie ou la sociologie va en effet enrichir le domaine des SMA et le concept d’agent tout en rendant difficile sa formalisation.

Les systèmes et les simulations multi-agents visent principalement quatre objectifs. -Un objectif empirique, il s’agit par exemple de comprendre comment certaines macro-régularités émergent et persistent dans le temps en l’absence de planification et de contrôle à ce niveau, à l’instar des recherches sur les systèmes de villes.
-Un objectif normatif qui vise à formuler et modéliser des hypothèses sur le comportement d’un système en vue d’en étudier les trajectoires possibles, comme par exemple mesurer les effets d’une nouvelle infrastructure sur les comportements et pratiques individuelles.
-Un objectif heuristique qui ambitionne d’explorer et de formaliser les mécanismes élémentaires à l’origine de la production de macro-phénomènes, à l’instar du modèle de Schelling.
-Enfin un objectif formel et méthodologique qui porte sur l’élaboration d’une spécification formelle de ces systèmes, sur le développement d’outils informatiques ergonomiques, sur l’évolution des méthodes de visualisation des simulations (3 D par exemple), sur le développement d’outils d’aide à la validation et sur le couplage de modèles aux formalismes différents.
Si on privilégie le point de vue informatique et géographique d’un SMA, il est cependant possible de caractériser ses propriétés les plus importantes :
Dans un SMA appliqué à une question géographique, les agents peuvent être distribués dans un « environnement » (par ex. un graphe de voisinage) ou situés dans un espace géométrique, l’environnement pouvant être un simple support à l’action des agents (une couche SIG) ou posséder sa propre dynamique (un automate cellulaire). Les agents ont une connaissance partielle de leur environnement et des autres agents, ils peuvent communiquer directement ou indirectement avec les autres agents, se déplacer et agir en fonction de leurs compétences et objectifs. Plus précisément, un agent peut se définir d’après les éléments suivants :

-1. Un ensemble définit la classe d’appartenance de tous les agents de même type. L’agent ne peut appartenir qu’à une seule classe, au sens de la programmation orientée-objet, et un système peut contenir plusieurs classes d’agents ;
-2. Eventuellement une forme décrit la matérialité de l’agent dans le système à un instant donné, celle-ci le distingue de son environnement et éventuellement des autres agents ;
-3. Un ensemble d’attributs représenté par un vecteur d’états dont les valeurs caractérisent l’état de l’agent à un instant donné ;
-4. Des éléments qui définissent la structure d’interaction de l’agent avec les autres agents et avec son environnement. A la différence d’un automate cellulaire classique, cette structure relationnelle peut varier dans le temps ;
-5 Des éléments de comportements, de compétences qui définissent les domaines d’activité de l’agent à un instant donné en fonction des caractéristiques préalablement définies d’objectifs ou de préférences
-6 Une temporalité qui définit le pas de temps significatif des agents de la classe par rapport au temps des agents qui appartiennent à une autre classe.
L’agent se définit ainsi par ses ressources, ses capacités d’actions, sa capacité de communication, sa capacité de mémorisation, sa capacité de perception, sa capacité d’adaptation, la dimension de son organisation etc. Chacun de ces éléments renvoie à des recherches spécifiques : modèles de communications et d’interactions, modèles de coordination etc. On distingue classiquement les agents réactifs, basés sur la modélisation de comportements réflexes qui répondent à des stimulations par la mise en œuvre d’une action, des agents cognitifs qui sont capable d’élaborer des stratégies en fonction de leurs objectifs, d’agir, d’évaluer les effets de leurs actions en vue de modifier leurs comportements et leurs stratégies. La distinction entre ces deux approches masque en fait une diversité de situations. Le type d’application pour lequel l’agent est conçu détermine en effet ses caractéristiques : capacité d’action (quelles sont ses compétences ?), capacité de communication (peut-il communiquer ? avec qui ? comment ?), capacité de mémorisation, capacité de perception (que perçoit l’agent dans son environnement ?), capacité d’adaptation (peut-il s’adapter aux nouvelles situations ou fonctionne-t-il selon des règles rigides ? ), dimension de l’organisation (avec qui interagir ?), capacité de ses ressources, etc.

Les systèmes multi-agents permettent ainsi d’implémenter des modèles individu-centrés (Agent-based models en anglais) qui sont des « mondes artificiels » et de mener des expérimentations proches de celles d’un laboratoire, par le contrôle et la modification possible de l’ensemble des paramètres et la réplication de séries d’expériences par la simulation.

 

Bibliographie
-Briot J.-P., Demazeau Y. (dir.), 2001, Principes et architectures des systèmes multi-agents, Hermes, Lavoisier, coll. Informatique et Systèmes d’Information, Paris.
-BURA S., GUÉRIN-PACE F., MATHIAN H., PUMAIN D., SANDERS L. (1996), Multi-agents systems and the dynamics of a settlement system, Geographical Analysis, vol. 28, n° 2.
-Ferber J., 1995, Les systèmes multi-agents: vers une intelligence collective, InterEditions, Paris.
-Amblard F., Phan D. (dir.), 2006, Modélisation et simulation multi-agents pour les Sciences de l’Homme et de la Société : une introduction, Hermès, Paris.