Article de reference

Système multi-agents

Agent réflexe simple Agent d'apprentissage Un système multi-agents ( SMA ), ou « système auto-organisé », est un système informatique composé de plusieurs agents intelligents in...

Agent réflexe simple
Agent d'apprentissage

Un système multi-agents ( SMA ), ou « système auto-organisé », est un système informatique composé de plusieurs agents intelligents interagissant entre eux . Les systèmes multi-agents peuvent résoudre des problèmes difficiles, voire impossibles à résoudre, pour un agent individuel ou un système monolithique . L’intelligence peut inclure des approches méthodologiques , fonctionnelles , procédurales , la recherche algorithmique ou l’apprentissage par renforcement . Grâce aux progrès réalisés dans le domaine des grands modèles de langage (GML), les systèmes multi-agents basés sur les GML constituent un nouveau champ de recherche, permettant des interactions et une coordination plus sophistiquées entre les agents.

Malgré un chevauchement considérable, un système multi-agents n'est pas toujours synonyme de modèle à base d'agents (ABM). L'objectif d'un ABM est de comprendre le comportement collectif d'agents (qui ne sont pas nécessairement « intelligents ») obéissant à des règles simples, généralement dans des systèmes naturels, plutôt que de résoudre des problèmes pratiques ou d'ingénierie spécifiques. La terminologie ABM est plus fréquemment utilisée en sciences, tandis que SMA l'est en ingénierie et en technologie. Parmi les applications où la recherche sur les systèmes multi-agents peut apporter une approche pertinente, on peut citer le commerce en ligne, la gestion des catastrophes, la surveillance ciblée et la modélisation des structures sociales.

Concept

Les systèmes multi-agents sont composés d'agents et de leur environnement . Généralement, les recherches sur les systèmes multi-agents portent sur des agents logiciels . Cependant, les agents d'un système multi-agents peuvent tout aussi bien être des robots, des humains ou des équipes humaines, voire des équipes mixtes humain-agent.

Les agents peuvent être classés en différents types, allant du plus simple au plus complexe. Les catégories comprennent :

  • Agents passifs ou « agent sans but » (tels qu’un obstacle, une pomme ou une clé dans toute simulation simple)
  • Agents actifs avec des objectifs simples (comme les oiseaux en groupe, ou le loup et le mouton dans le modèle proie-prédateur )
  • Agents cognitifs, dont les croyances, les désirs, les intentions et les engagements sont traités par un raisonnement logique, probabiliste et basé sur les réseaux neuronaux.

Les environnements d'agents peuvent être divisés en :

  • Virtuel
  • Discret
  • Continu

Les environnements d'agents peuvent également être organisés selon des propriétés telles que l'accessibilité (possibilité de recueillir des informations complètes sur l'environnement), le déterminisme (effet précis d'une action), la dynamique (nombre d'entités influençant l'environnement à un instant donné), la discrétion (nombre fini d'actions possibles dans l'environnement), l'épisodicité (influence des actions des agents à certaines périodes sur d'autres périodes) et la dimensionnalité (importance des caractéristiques spatiales dans l'environnement et prise en compte de l'espace par l'agent dans sa prise de décision) . Les actions des agents sont généralement gérées par un intergiciel approprié. Cet intergiciel offre une abstraction de conception de premier ordre pour les systèmes multi-agents, permettant de contrôler l'accès aux ressources et la coordination des agents

Caractéristiques

Les agents d'un système multi-agents possèdent plusieurs caractéristiques importantes :

  • Autonomie : les agents sont au moins partiellement indépendants, conscients d'eux-mêmes et autonomes.
  • Points de vue locaux : aucun agent ne possède une vision globale complète, ou le système est trop complexe pour qu’un agent puisse exploiter de telles connaissances.
  • Décentralisation : aucun agent n’est désigné comme contrôlant (ou le système est effectivement réduit à un système monolithique)

Auto-organisation et autonomie

Les systèmes multi-agents peuvent manifester une auto-organisation , une autonomie et d'autres paradigmes de contrôle , ainsi que des comportements complexes associés, même lorsque les stratégies individuelles de leurs agents sont simples. Lorsque les agents peuvent partager leurs connaissances dans un langage convenu, dans le respect du protocole de communication du système, cette approche peut mener à une amélioration collective. Le langage KQML ( Knowledge Query Manipulation Language ) ou le langage ACL ( Agent Communication Language ) en sont des exemples.

Prise de décision

Dans les systèmes multi-agents, les protocoles de décision désignent les règles et procédures structurées que les agents suivent pour parvenir à des décisions ou accords collectifs. Ces protocoles précisent comment les agents partagent l'information, négocient et résolvent les conflits, garantissant ainsi un comportement coordonné et des actions conjointes efficaces. Les protocoles de décision peuvent aller des mécanismes de vote aux algorithmes de recherche de consensus , et ils influencent considérablement l'efficacité et la fiabilité des interactions multi-agents.

paradigmes systémiques

De nombreux systèmes multi-agents (SMA) sont implémentés dans des simulations informatiques, faisant évoluer le système par étapes temporelles discrètes. Les composants du SMA communiquent généralement à l'aide d'une matrice de requêtes pondérées, par exemple.

Vitesse - TRÈS IMPORTANT : min = 45 mph, Longueur du chemin - IMPORTANCE MOYENNE : max=60 max attendu=40, Poids maximal - Sans importance Priorité contractuelle - RÉGULIÈRE 

et une matrice de réponse pondérée, par exemple

Vitesse minimale : 50 mais seulement par temps ensoleillé, Longueur du parcours : 25 par temps ensoleillé / 46 par temps pluvieux Priorité contractuelle - RÉGULIÈRE Remarque : l'ambulance passera avant cette priorité et vous devrez attendre. 

Un système de contrat à réponse conditionnelle est courant dans les systèmes MAS, où

  • On commence par poser la question « Qui peut ? » .
  • Seuls les composants concernés répondent : « Je peux, à ce prix » .
  • Finalement, un contrat est établi, généralement en plusieurs brèves étapes de communication entre les parties,

en tenant également compte d'autres composants, de l'évolution des « contrats » et des ensembles de restrictions des algorithmes composants.

Un autre paradigme couramment utilisé avec les systèmes multi-agents est celui des « phéromones », où les composants déposent des informations à destination d'autres composants voisins. Ces phéromones peuvent s'évaporer ou se concentrer au fil du temps, c'est-à-dire que leur concentration peut diminuer (ou augmenter).

Propriétés

Les systèmes multi-agents tendent à trouver la meilleure solution à leurs problèmes sans intervention humaine. On observe ici une forte similitude avec des phénomènes physiques, comme la minimisation de l'énergie, où les objets physiques tendent à atteindre l'énergie la plus basse possible compte tenu des contraintes physiques de l'environnement. Par exemple : la plupart des voitures entrant dans une métropole le matin seront disponibles pour en sortir le soir.

Ces systèmes tendent également à empêcher la propagation des pannes, à s'auto-réparer et à être tolérants aux pannes, principalement grâce à la redondance des composants.

Recherche

L’étude des systèmes multi-agents porte sur le développement et l’analyse d’ architectures sophistiquées de résolution de problèmes et de contrôle par IA , tant pour les systèmes mono-agent que multi-agents. Les thèmes de recherche incluent :

  • ingénierie logicielle orientée agent
  • croyances, désirs et intentions ( BDI )
  • coopération et coordination
  • optimisation par contraintes distribuées (DCOP)
  • organisation
  • communication
  • négociation
  • résolution de problèmes distribuée
  • apprentissage multi-agents
  • exploration d'agents
  • communautés scientifiques (par exemple, sur le comportement grégaire biologique, l'évolution du langage et l'économie)
  • fiabilité et tolérance aux pannes
  • robotique, systèmes multi-robots (MRS), grappes robotiques
  • Les systèmes multi-agents présentent également des applications possibles en microrobotique, où l'interaction physique entre les agents est exploitée pour effectuer des tâches complexes telles que la manipulation et l'assemblage de composants passifs.
  • systèmes multi-agents basés sur un modèle de langage

Un système multi-agents (SMA) ne se limite pas à la conception d'un système intelligent. Il permet également de mieux comprendre les interactions humaines et leur organisation en groupes, comités, sociétés et économies afin d'améliorer leur vie. Par exemple, les économistes étudient les systèmes multi-agents depuis plus de deux siècles, et ce, depuis Adam Smith au XVIIIe siècle, dans le but de comprendre et de prédire les économies. L'économie fournit des méthodes pour caractériser les masses d'agents, méthodes utiles pour l'intelligence artificielle dynamique (IAD). En retour, l'IAD offre la possibilité de construire des économies artificielles permettant de tester les théories économiques avant leur application.

Cadres

Des cadres de référence ont émergé pour mettre en œuvre des normes communes (telles que les normes FIPA et OMG MASIF). Ces cadres, par exemple JADE , permettent de gagner du temps et contribuent à la standardisation du développement des SMA.

Actuellement, aucune norme n'est activement maintenue par la FIPA ou l'OMG. Les efforts de développement des agents logiciels dans un contexte industriel sont menés au sein du comité technique IEEE IES sur les agents industriels.

Grâce aux progrès réalisés dans le domaine des grands modèles de langage (LLM), tels que ChatGPT , les frameworks multi-agents basés sur les LLM, comme CAMEL constituent un nouveau paradigme pour le développement d'applications multi-agents. Des travaux récents ont montré que ces systèmes orientés débat varient dans leur orchestration (par exemple, les paradigmes de discussion ). Le framework MALLM est utilisé pour évaluer systématiquement les configurations possibles de ces frameworks

Applications

Les systèmes multi-agents ( SMA) sont utilisés non seulement dans la recherche académique, mais aussi dans l'industrie. On les retrouve dans des applications graphiques concrètes, comme les jeux vidéo, et dans des films. Leur utilisation est largement préconisée dans les réseaux et les technologies mobiles, pour assurer un équilibrage de charge automatique et dynamique, une grande évolutivité et des réseaux autoréparateurs. Ils sont également utilisés dans les systèmes de défense coordonnés.

D'autres applications incluent le transport , la logistique, le graphisme, la fabrication, les systèmes électriques , les réseaux intelligents , et le SIG .

De plus, l'intelligence artificielle des systèmes multi-agents (MAAI) est utilisée pour simuler des sociétés, ce qui s'avère utile dans les domaines du climat, de l'énergie, de l'épidémiologie , de la gestion des conflits , de la maltraitance des enfants, ....

Parmi les organisations travaillant sur l'utilisation de modèles de systèmes multi-agents, on peut citer le Center for Modelling Social Systems, le Centre for Research in Social Simulation, le Centre for Policy Modelling, Society for Modelling and Simulation International.

Le trafic routier avec des véhicules autonomes contrôlés peut être modélisé comme un système multi-agents impliquant la dynamique des foules.

Hallerbach et al. ont étudié l'application des approches multi-agents au développement et à la validation des systèmes de conduite automatisée, via un jumeau numérique du véhicule testé et une simulation microscopique du trafic basée sur des agents indépendants. Waymo a créé Carcraft, un environnement de simulation multi-agents, pour tester les algorithmes des véhicules autonomes . Carcraft simule les interactions entre conducteurs humains, piétons et véhicules automatisés. Le comportement humain est imité par des agents artificiels à partir de données issues du comportement humain réel.