• Aucun résultat trouvé

L’interaction, qui désigne une action réciproque, permet à deux systèmes ou deux agents d’échanger des informations. Dans le cadre des systèmes multi-agents, l’interaction est la base sur laquelle repose les communications entre agents. Elle est primordiale pour

28 ] s y s t è m e s m u lt i-agents et simulation

qu’ils puissent coopérer, réaliser des tâches en commun ou encore négocier pour régler une situation de conflit. C’est précisément grâce aux interactions qu’un système (multi-agents ou pas) est capable de produire un effet synergique.

Les différences de conception des approches réactives et cognitives n’entraînent pas uniquement des architectures différentes d’agents. Comme nous avons pu le voir dans la section3.1, elles ont également un impact sur la manière dont les agents peuvent s’échanger des informations. Deux types d’interaction sont généralement distingués : l’interaction indirecte, défendue par l’approche réactive et l’interaction directe, plutôt utilisée dans le cadre d’agents cognitifs. D’après la définition de l’interaction qui désigne l’action réciproque, le mode direct suppose qu’un agent échange des informations directement avec un autre agent. Le mode indirect, lui, suppose que l’échange s’effectue à travers un intermédiaire qui est l’environnement. Ferber (1995) emploie les termes d’agents purement réactifs pour désigner les agents qui communiquent uniquement de manière indirecte. À l’inverse, il appelle agent purement communiquant un agent cognitif qui communique uniquement de manière directe. Cependant, il est tout à fait possible qu’un agent puisse communiquer à l’aide des deux types d’interaction.

Dans cette sous-section, nous commençons par présenter les modes d’interaction in-directe aussi connus sous le nom de stigmergie. Nous faisons ensuite un état de l’art des différentes architectures qui permettent l’interaction directe entre agents.

3.3.1 Interaction indirecte

Nous nous intéressons ici à la manière dont plusieurs agents peuvent communiquer de manière indirecte, à travers un intermédiaire. Pour communiquer, les agents en interaction n’ont pas besoin d’avoir conscience d’autrui ou encore d’être à proximité d’un autre agent. Dans un premier temps, nous parlons des systèmes à tableau noir qui ont été les premiers modèles d’interaction indirecte avant de parler de l’utilisation de tuples comme intermédiaire d’interaction. Nous étudions ensuite la stigmergie comme modèle d’interaction.

Les tableaux noirs et les tuples

À l’origine, les systèmes à tableaux noirs tels que ceux initiés par Erman et al. (1980) avec le projet Hearsay II8sont nés du besoin de créer des systèmes faisant appel à différents domaines d’expertise pour résoudre des problèmes complexes. L’architecture permet d’apporter des éléments de solution progressivement par les différents composants « experts ». La métaphore du tableau noir est fondée sur la manière dont un groupe peut résoudre un problème à l’aide un tableau sur lequel chacun des pairs peut lire, juger son contenu et y apporter un nouvel élément de solution (Newell,1969). Comme Weyns et al. (2005b) le font remarquer, ces systèmes restent éloignés des SMA puisque le tableau noir est une entité centralisée. Les sources de connaissances n’agissent pas de manière concurrente mais de manière séquentielle et contrôlée par l’ordonnanceur, contrairement aux agents qui sont des entités autonomes.

8. Hearsay II est un système d’IA développé à la fin des années 70 dont le but était d’analyser une voix humaine afin de l’interpréter comme une requête de base de donnée exploitable.

s y s t è m e s m u lt i-agents et simulation [ 29

Un autre modèle d’interaction indirecte beaucoup plus adapté aux systèmes multi-agents est celui des tuples comme intermédiaire, qui a été introduit par Gelernter et Carriero (1992) avec Linda, un framework doté d’un modèle de coordination des calculs pouvant être généralisé et utilisé par n’importe quel langage de programmation. Un agent communique en insérant et en supprimant des tuples dans un espace partagé par l’ensemble des agents. Contrairement aux systèmes à tableau noir, les agents sont autonomes et évoluent de manière asynchrone.

La stigmergie

Le dernier modèle d’interaction indirecte que nous présentons est basé sur la stigmergie, un terme introduit par le zoologiste français Grassé (1959), du grec stigma (« marque ») et ergon (« action », « ouvrage »), pour désigner la façon dont les colonies de termites construisent leur nid. De manière généralisée et dans le cadre des SMA, le principe de la stigmergie peut se résumer à un ensemble d’entités individuelles interagissant de manière indirecte par l’intermédiaire d’un environnement partagé. Une interaction est initiée par une entité effectuant une première action qui consiste à déposer une marque au sein de son environnement. Cette marque va stimuler une deuxième action, et ainsi de suite, jusqu’à ce que de l’ensemble des actions individuelles émerge un ouvrage spontané. Ce type de mécanique a été observé avec les colonies de fourmis (Corbara et al.,1993; Drogoul,1993). La façon dont les fourmis se déplacent dans leur environnement, guidées par les traces de phéromones qu’elles laissent derrière elles est devenu un exemple très classique de stigmergie.

3.3.2 Interaction directe

À l’inverse de la communication indirecte, l’interaction directe s’effectue d’agent à agent. Elle ne nécessite donc pas d’intermédiaire. Les communications s’effectuent par transfert de messages d’un agent émetteur vers un agent récepteur via un canal de communication, conformément à la théorie de la communication développée par Shannon et Weaver (1949). La communication directe permet de concevoir des SMA pour la résolution collective de problèmes, dans lesquels les agents sont capables de coopérer entre eux. Ainsi, si un agent n’est pas capable ou ne possède pas les compétences pour exécuter une tâche spécifique, il peut décider de se tourner vers d’autres agents en utilisant un langage de communication. Les SMA ont été influencés par la théorie des actes du langage (Austin,1975; Searle,

1969), laquelle distingue les énoncés constatifs, qui décrivent simplement l’état du monde, des énoncés performatifs, qui visent à accomplir une action permettant de modifier l’état du monde. Ces derniers forment les actes du langage.

Les actes de langage permettent de faciliter la modélisation des communications entre agents puisqu’ils permettent d’exprimer en dehors de son contenu, l’intention d’un message. Pour permettre aux agents de communiquer, un langage commun, appelé langage de communication agent ou Agent Communication Language (ACL), doit être connu des agents afin qu’ils puissent en analyser la syntaxe. Au delà de la forme du langage, la sémantique du contenu du message ainsi que la sémantique du contexte de communication (Poslad,

30 ] s y s t è m e s m u lt i-agents et simulation

2007) doit être compris et analysable. La FIPA (Foundation for Intelligent Physical Agents9), un organisme de normalisation membre de l’IEEE Computer Society depuis 2005, propose un ensemble de spécifications pour le développement de systèmes multi-agents, notamment pour la communication entre agents. Un aperçu de l’approche de la FIPA est disponible dans Poslad (2007). Parmi les standards finalisés, le langage FIPA-ACL (Foundation for Intelligent Physical Agents,2002a) met en œuvre les concepts de la théorie des actes du langage et permet de définir la sémantique du message.

Si un ACL permet aux agents de communiquer, il ne permet pas de structurer les interactions pour former une conversation. Pour pallier à cela, les protocoles d’interactions tels que FIPA Contract Net (Foundation for Intelligent Physical Agents,2002b) ont fait leur apparition afin d’établir les règles à respecter pour que les agents puissent interagir sous la forme de conversations. Un certain nombre de plateformes sont compatibles avec les standards de la FIPA, c’est le cas de Jade (Bellifemine et al.,1999).

Documents relatifs