Вы находитесь на странице: 1из 17

Technologie multiagent

Jacques Ferber

Jacques Ferber, MSc Edimbourg,


docteur ès sciences, professeur à
l’Université Pierre et Marie Curie (Paris VI)
est chercheur au laboratoire Laforia du
CNRS où il dirige l’équipe Miriad
spécialisée dans les systèmes multiagents.
Il est aussi président du groupe Afcet sur
les systèmes multiagents.
Technologie multiagent

Origines revient, ici encore, à faire coopérer ces


entités de manière à ce qu’elles assurent
Les systèmes multiagents (SMA) mettent les fonctions désirées.
en œuvre un ensemble de concepts et
Enfin, la quatrième est issue du
de techniques permettant à des logiciels
développement de l’informatique et des
hétérogènes, ou à des parties de logiciels,
systèmes distribués en particulier. Avec
appelées “agents” de coopérer suivant
la généralisation des réseaux et des
des modes complexes d’interaction.
ordinateurs parallèles, il devient de plus
La technologie des SMA s’est développée
en plus important de pouvoir faire coopérer
ces dernières années sous une quadruple
plusieurs composants logiciels au sein
pression.
d’environnements hétérogènes et distribués.
Alors que l’idée du “Web” La première est due aux limites de Le problème ne réside plus dans le
est d’ouvrir un espace l’intelligence artificielle classique sur le contenu des programmes, qui peuvent
plan de la structuration et de l’organisation avoir des fonctionnalités diverses, mais
de navigation électronique, des connaissances. La difficulté qu’il y a dans leur capacité à collaborer avec
le concept d’agent et à traduire un ensemble d’expertises sous d’autres programmes à la réalisation
de système multiagent une forme unifiée a amené les chercheurs d’un objectif commun. C’est surtout cet
à développer ce que l’on a d’abord appelé aspect que nous retiendrons dans la suite
consiste à remplacer des systèmes multiexperts, c’est-à-dire de cet exposé.
l’“outil” informatique par des systèmes mettant en jeu plusieurs
un “collaborateur” autonome, bases de connaissances plus ou moins
mobile et relativement coordonnées. Ce faisant, on a pu constater De l’outil au collaborateur
que le problème de la coopération entre
“intelligent”. plusieurs bases de connaissances Le concept de système multiagent est
se révélait un enjeu crucial qui dépassait suffisamment novateur pour bouleverser
de loin le problème de la multiexpertise. notre approche du travail en général et
des techniques d’applications distribuées
La deuxième trouve son origine dans en particulier. Ces systèmes introduisent
la nécessité de trouver des techniques de une rupture épistémologique dans
modélisation et de simulation performantes les relations que nous entretenons avec
dans le domaine des sciences du vivant les systèmes informatiques.
au sens large du terme. L’évolution
des écosystèmes habités, notamment, Pendant longtemps, et dans le monde
montrent qu’il est difficile de rendre informatique notamment, on a vécu dans
compte de leur évolution par un ensemble la métaphore de l’outil. Un outil augmente
d’équations différentielles. Une approche la puissance d’action de celui qui le manie
dans laquelle les individus sont directement mais en restant directement lié à ses
représentés sous forme d’entités gestes et à ses commandes. Le mécanisme
informatiques semble une voie promet- de contrôle se situe encore dans l’être
teuse et a contribué à l’essor du domaine. humain. Les actions à entreprendre ne
sont que des extensions de nos diverses
La troisième provient de la robotique. capacités : un tableur, par exemple, n’est
Le développement de la miniaturisation qu’un grand tableau de nombres qui
en électronique permet de concevoir possède la faculté de faire des opérations.
des robots qui disposent d’une certaine Il ne possède ni désirs, ni intentions,
autonomie quant à la gestion de leur ne sait pas communiquer avec un être
énergie et à leur capacité de décision. humain au même niveau que lui et ne
On a pu alors montrer qu’un ensemble fonctionne pas en dehors des commandes
de petits robots ne disposant que qui lui sont envoyées. La coordination des
de capacités élémentaires de décision et actions reste donc l’apanage de l’être
d’intelligence pouvait facilement rivaliser humain. Un “macrolangage” ne change
avec les performances d’un seul robot rien à cette situation. Il ne fait que répéter
“intelligent”, nécessairement plus lourd des suites d’actions stéréotypées.
et plus difficile à gérer. Le problème alors
Le “Minitel”, malgré son intérêt et l’impact Vers La notion d’agent et
qu’il a eu dans la société, demeure dans un “marché électronique”
le cadre conceptuel classique de l’outil. de système multiagent
Un utilisateur se connecte à un serveur Il faut penser l’univers informatique
d’applications informatiques à partir duquel du futur comme un gigantesque “marché Agent et
il peut réserver un billet d’avion, commander électronique” de services dans lequel des
des articles, obtenir des informations, etc. agents vivent (et meurent), interagissent, système multiagent
A chaque fois l’utilisateur est en commu- négocient, se reproduisent en suivant La notion d’agent, comme tous les
nication avec une application qui lui fournit leur propre comportement. concepts fondamentaux, est relativement
un ensemble de fonctionnalités à partir Cette façon de penser va remettre vague. On peut distinguer plusieurs
duquel il peut obtenir ce qu’il désire. Ici en cause notre manière de travailler, manières de concevoir et de comprendre
encore, la machine est passive, attendant en constituant une véritable zone d’activité la notion d’agent. Chacune de ces notions
les ordres élémentaires que l’utilisateur de travail électronique, qui doublera et renvoie à un courant de recherche
veut bien lui envoyer. aidera la zone d’activité humaine. particulier dans le domaine de ce qui
La rupture commence avec Internet, La rapidité de connexion et de mise en touche à la nébuleuse “agent”.
et plus particulièrement avec ce que l’on relation des agents leur permettra
appelle communément le “Web”. Ce dernier de réagir à n’importe quelle modification L’agent comme objet distribué
n’offre pas, comme on le pense souvent, de l’état de l’offre et de la demande La première, que j’appellerais faible, est
un ensemble de services mais un espace en temps réel, beaucoup plus rapidement surtout tournée vers une conception très
de navigation. Malgré son extrême que ne pourrait le faire un opérateur “informaticienne” de l’agent, et se situe
dénuement en termes de fonctionnalités humain. Il est donc très important en contact étroit avec l’implémentation.
offertes, ce qui commence d’ailleurs à de penser dès maintenant à des services Dans ce sens, un agent peut être défini
évoluer avec un ensemble de logiciels favorisant la mise en relation des agents comme un objet informatique (au sens des
comme Java, il propose une implémentation les uns avec les autres si l’on ne veut pas langages objets) dont le comportement
effective de ce que Mario Tokoro appelle rapidement produire des services obsolètes peut être décrit par un “script”, qui
un “espace électronique” (computational dans une telle situation. dispose de ses propres moyens de calcul
field) [Tokoro 90]. Un espace électronique (un agent est alors associé à un processus
En effet, les réseaux du futur seront très
est simplement une gigantesque zone léger), et qui peut se déplacer de places
ouverts, tant d’un point de vue technique
informatique dans laquelle des processus en places (une place pouvant être un site
(connexion facile entre agents hétérogènes,
informatiques interagissent avec d’autres informatique distant du site originel de
fonctionnement peu sensible aux pannes)
processus de sources hétérogènes. Si, l’agent) pour communiquer avec d’autres
qu’économique (proposition et négociation
pour l’instant, le Web est essentiellement un agents. C’est cette conception de l’agent
rapide de services, bourses d’échanges
système hypertexte, par l’ensemble des qui a été retenue par la société General
de services, contrats avec options de
capacités qu’il offre, il fournit le support Magic pour concevoir le logiciel
désengagement, etc.). Il ne faut pas
idéal pour l’élaboration de cette “société Téléscript. Issu des modèles à objets
penser, par exemple, qu’un agent A ayant
artificielle” que les écrivains de science-fiction concurrents en général et des langages
négocié un service avec un agent B
avaient appelé le “cyberspace ”. d’acteurs en particulier, ce modèle
continuera indéfiniment de travailler avec
présente l’avantage d’être facilement
Mais la rupture devient consommée ce dernier. S’il trouve un autre agent C
opérationnalisable. Nous renvoyons
avec les systèmes multiagents, car ils moins cher qui lui offre les mêmes
à l’article de Jean-Yves Léonnec (dans ce
n’interagissent pas sur le mode de l’outil, services que B, il rompra son contrat
volume) pour la présentation de Téléscript
mais sur celui du collaborateur. Les agents avec B (si les clauses de ruptures ne sont
dans le cadre du projet Pyramide
sont des entités autonomes qui sont mues pas trop coûteuses) pour en établir un
de France Télécom. Néanmoins, malgré
par des désirs et qui poursuivent leurs autre avec C. Et ce scénario s’effectuera
son intérêt pratique immédiat, ce modèle
propres buts. Ils peuvent communiquer à n’importe quel niveau de service.
reste à un niveau trop élémentaire,
avec d’autres agents (ou avec un utilisateur) Avant de présenter les différentes le concept initial de l’agent, qui repose sur
dans un langage de haut niveau qui laisse catégories d’applications envisageables son autonomie de décision et son carac-
place à l’élaboration d’interactions avec les SMA, nous devons d’abord tère intentionnel, ayant été quelque peu
complexes qui s’apparentent à des nous arrêter sur la notion d’agent et de limité à des critères d’implémentation
négociations commerciales et juridiques. système multiagent. immédiate. Néanmoins, comme nous
le verrons plus loin des langages fondés
sur cette approche peuvent être utilisés
pour implémenter des modèles de Au contraire, d’autres chercheurs, qui se Relation
systèmes multiagents plus complexes. reconnaissent dans la notion de “système avec la notion d’objet
multiagent” (et qui insistent sur le “multi”)
L’agent comme entité intentionnelle considèrent qu’il faut d’abord penser On pose souvent la question de savoir
Au contraire, dans la seconde définition, l’interaction et ensuite en déduire ce qui distingue la notion d’agent de celle
que l’on pourrait qualifier de forte, la structure intentionnelle des agents d’objet ou d’acteur. La réponse est simple :
le concept d’agent prend toute son et non l’inverse. L’intérêt des systèmes dans le domaine informatique, les termes
importance. Dans ce cas, on appelle agent multiagents réside en effet dans la notion “objet” et “acteur” désignent des entités
une entité informatique qui [Ferber 95] : d’action collective et dans sa capacité informatiques caractérisées par leur
n se trouve dans un système informatique à articuler l’individuel au collectif, par structure et leurs mécanismes d’exécution.
ouvert comprenant un ensemble l’intermédiaire de la structure cognitive La notion d’objet est définie par trois
d’applications, de réseaux, et de systèmes des agents. Sans remettre en cause l’idée concepts : la relation classe/instance,
hétérogènes, d’agent intentionnel, cette conception qui décrit la classe comme un modèle
n peut communiquer avec d’autres “collective” met l’accent sur les structures structural et comportemental et l’instance
agents, d’interactions (coopération, négociations, comme un représentant d’un modèle ;
n est mue par un ensemble d’objectifs coordination d’actions, conflits, ...) et sur l’héritage, qui permet de dériver une
propres (c’est en ce sens que l’on peut les organisations qui en découlent (rôles, classe d’une autre et de faire bénéficier
parler d’agent intentionnel), hiérarchies d’autorité, ...). la première des caractéristiques
n possède des ressources propres, de la seconde ; enfin l’envoi de message,
n ne dispose que d’une représentation L’agent comme collaborateur qui permet de définir des procédures
partielle des autres agents, Enfin, la troisième approche est celle polymorphes, c’est-à-dire des procédures
n possède des compétences (services) de l’agent comme système collaborateur dont le code diffère en fonction du receveur
qu’elle peut offrir aux autres agents, d’un être humain. L’idée sous-jacente du message.
n a un comportement tendant à satisfaire est de dire, comme nous l’avions signalé
Si le concept d’agent comme objet
ses objectifs, en tenant compte d’une part dans l’introduction, que l’interaction entre
distribué est très proche de celui
des ressources et des compétences dont l’utilisateur et la machine va passer d’une
de l’objet (La notion d’agent Téléscript
elle dispose, et d’autre part de ses propres conception des systèmes informatiques
ajoute, par rapport à celle d’objet,
représentations et des communications comme “outils” à celle de “collaborateur”
les notions de place et de migration de
qu’elle reçoit. ou “assistant”. Dans ce cas, l’utilisateur
l’agent, et distingue les communications
Cette définition met l’accent sur l’autonomie se trouve en face d’un “être” informatique
locales des communications globales,
de décision qui résulte de l’indépendance qui dispose de son autonomie en termes
qui ne sont d’ailleurs pas possibles dans
avec laquelle un agent tente de satisfaire d’action, qui interagit “intelligemment”
la première version de ce langage),
des objectifs qu’il s’est assigné, en avec lui, qui accomplit un certain nombre
il n’en est pas de même de l’agent comme
utilisant au mieux les ressources et les de tâches répétitives (telles que la gestion
entité intentionnelle. En effet les objets
compétences dont il dispose. de courrier électronique par exemple) ou
n’ont ni but ni recherche de satisfaction
qui agit comme un mandataire pour aller
et le mécanisme d’envoi de message
L’agent en interaction “fureter” des informations sur le réseau ou
se résume à un simple appel de procédure.
Certains en restent là et considèrent négocier des transactions commerciales.
Il n’y a pas de langage de communication
alors que tout est dit. Le problème repose Bien que sa position conceptuelle soit très à proprement parler. Les mécanismes
alors sur la caractérisation précise proche de celle de l’agent comme entité d’interaction (comme pour les agents
de cette définition et à sa mise en œuvre intentionnelle, l’agent collaborateur met Téléscript d’ailleurs) sont donc à la charge
formelle et pratique. C’est ainsi que tout l’accent sur le dialogue homme/machine du programmeur.
un courant de chercheurs qui se réclament et sur la compréhension, par la machine,
de l’approche “agent” travaille dans ce La différence essentielle qui existe
des désirs et volontés de l’utilisateur.
sens. Citons Shoham, Georgeff et Rao, entre les objets et les agents (purement
Par exemple, un agent collaborateur digne
Levesque, Cohen et Lesperance, Jennings communicants) est illustrée figure 1.
de ce nom, doit pouvoir “lire par-dessus
et Wooldridge, etc., tous étant convaincus Un objet est défini par un certain nombre
l’épaule” de l’utilisateur afin d’apprendre
que la solution passe directement, et de services (ses méthodes) qu’il ne peut
sa façon de travailler, connaître ses
uniquement, par la réalisation formelle refuser d’exécuter si un autre objet le lui
préférences et en déduire des règles
d’un modèle d’agent et par son demande et les messages sont donc
d’action.
implémentation. nécessairement des invocations de
méthodes. Le développeur d’un logiciel
“objet” doit donc vérifier que tous les
L’individu et sa relation
au monde
Les différents thèmes relatifs à l’individu
portent d’une part sur son architecture et
son organisation interne et, d’autre part,
sur l’ensemble des moyens qu’il met en
œuvre pour assurer sa viabilité et satis-
faire ses objectifs. Il s’agit évidemment de
Figure 1 - Un objet répond directement à des requêtes correspondant thèmes essentiels car la réalisation d’un
à ses méthodes, alors qu’un agent “encapsule” ses compétences système multiagent passe nécessairement
(ou services) par des mécanismes supplémentaires qui “filtrent” par la description de l’architecture
les communications externes et gèrent les dialogues. De plus, les des agents et des fonctionnalités dont
agents sont mus par des objectifs (ou tendances) personnels.
ils disposent pour accomplir leurs tâches.
C’est à ce niveau que l’on s’intéresse
objets recevront bien des ordres sensés mots clés correspondant à ses méthodes. aux éléments cognitifs dont l’organisation
qu’ils seront effectivement capables Enfin, et c’est d’ailleurs ce qui augmente permet la constitution d’un comportement
d’exécuter. Par rapport aux objets, encore la confusion possible, on implémente adapté. Sauf pour des agents réactifs
les agents peuvent recevoir des messages souvent, pour des raisons pratiques, simples, un agent se trouve à un certain
qui ne sont pas uniquement des demandes les agents sous la forme d’objets ou moment dans un certain “état mental”
d’exécution mais aussi des informations d’acteurs. Ceci n’est pourtant qu’une qui résulte de sa propre histoire, de sa
ou des demandes d’informations sur leurs des implémentations possibles. On peut perception du monde et des interactions
capacités, etc. De ce fait, les services de la même manière implémenter des avec le monde et les autres agents.
que peut rendre un objet, sont donc filtrés agents en Fortran, C ou Lisp, qui ne sont Ces états mentaux sont souvent très
par une couche logicielle qui découple pas naturellement des langages à objets, complexes et font intervenir un grand
les demandes et le fonctionnement interne sans que cela modifie en quoi que ce soit nombre d’éléments dont la combinaison
de l’agent. leur caractère d’agent. explique le comportement d’un agent
Enfin, comme nous l’avons dit, les agents “de l’intérieur”. Ces éléments cognitifs
tentent de satisfaire des objectifs, ce sont aux états mentaux des agents
ce que les corpuscules élémentaires sont
qui leur procure une autonomie Thèmes de recherches aux corps physiques : des composants
supplémentaire par rapport aux objets.
En effet, l’agent, à l’encontre de l’objet, de base dont la combinaison permet
peut refuser d’accepter d’effectuer un Concevoir un système multiagent, c’est d’exprimer l’état mental d’un agent et
certain travail, ce refus pouvant s’expliquer avant tout analyser et résoudre un très dont les lois d’interaction servent à décrire
par son manque de compétence (il ne grand nombre de problèmes. l’évolution future du comportement d’un
possède pas le savoir-faire nécessaire) ou La conception d’un réseau intégrateur agent et de ses états mentaux ultérieurs.
par sa trop grande occupation à une autre de services par exemple soulève un grand Ces éléments cognitifs, régissent
tâche ou par toute autre raison. Un agent nombre de questions qui recouvrent l’ensemble des aspects de l’activité
“encapsule” les méthodes qu’un objet peut des domaines très divers. Comment intérieure d’un agent : perception et
offrir sous la forme d’un ensemble de les agents se représentent-ils leur exécution d’action, croyances, désirs et
services qui ne sont accessibles que par environnement et les autres agents ? tendances, intentions, méthodes et plans,
un langage particulier connu de l’ensemble Comment coopèrent-ils ? Peuvent-ils etc. Par exemple, la notion d’intention
des agents et qui utilise généralement assurer leur viabilité ? Sont-ils capables est définie formellement ainsi :
la théorie des actes de langages. d’adapter leur comportement à des On dit qu’un agent x a l’intention de faire
modifications du milieu dans lequel ils une action a, ce que l’on note (intention x a)
Mais le lien qui existe entre objets évoluent ? Sont-ils pris dans des rapports si x a comme but qu’une proposition p
et agents ne doit pas non plus être sous- hiérarchiques ou d’autorités entre eux ? portant sur le monde soit vraie (noté
estimé. Si un agent purement communicant, Ces différentes questions peuvent être (but x p)) et que les conditions suivantes
peut être considéré comme une sorte classées en cinq catégories principales : soient satisfaites :
d’objet amélioré, inversement, un objet la problématique de l’action, l’agent et sa n x croit que p appartient aux conséquences
peut passer pour un agent dégénéré, relation au monde, l’interaction, l’adaptation, de a,
c’est-à-dire un agent dont le langage la réalisation et l’implémentation de SMA. n x croit que p n’est pas vrai actuellement,
d’expression se résume à l’emploi des
n x croit qu’il est capable de faire a, L’interaction Les communications intentionnelles sont
n x croit que a sera possible et donc que surtout étudiées sous l’angle d’actes
p pourra être satisfait. Pour un agent, interagir avec un autre de langage. Issue initialement des travaux
constitue à la fois la source de sa d’Austin [Austin 1962], Searle [Searle
C’est à ce niveau aussi que sont décrits puissance et l’origine de ses problèmes. 1969 ; Searle 1979] et Vanderveken
les engagements. En s’engageant à C’est en effet parce qu’ils coopèrent [Vanderveken 1988] en philosophie
accomplir une action auprès d’un tiers, que des agents peuvent accomplir plus du langage, la théorie des actes
l’agent contraint l’ensemble des actions que la somme de leurs actions de langage décrit l’aspect pragmatique
qu’il peut réaliser et donne la possibilité des agents, mais c’est aussi à cause des communications en termes d’états
au tiers de planifier son propre compor- de leur multitude qu’ils doivent coordonner mentaux de l’émetteur et du destinataire
tement en diminuant son incertitude leurs actions et résoudre des conflits. de l’acte (voir l’encadré de l’article
sur l’ensemble des états futurs. Pour un agent, l’autre est à la fois le pire de David Sadek dans ce volume). Ces
La formalisation de cette notion passe et la meilleure des choses. théories ont été reprises et formalisées
par des logiques modales temporelles.
Communiquer par Cohen et Levesque [Cohen &
Les travaux portant sur la rationalité des Levesque 1990b]. Elles sont à la base de
Traiter le problème de l’interaction c’est
agents rationnels, dont nous avons parlé nombreux protocoles de communications
se donner les moyens non seulement
plus haut, s’inscrivent dans ce thème. entre agents communicants. Dans ce
de décrire les mécanismes élémentaires
Les tenants principaux de ces recherches cadre, une communication individuelle
permettant aux agents d’interagir,
sont essentiellement des Américains peut être notée ainsi :
mais aussi d’analyser et de concevoir
(Cohen et Levesque [Cohen & Levesque les différentes formes d’interaction e : d << F(a)
1990a ; Cohen & Levesque 1990b], que des agents peuvent pratiquer pour
Shoham [Shoham 1993]) des Australiens où e et d sont les agents émetteur et
accomplir leurs tâches et satisfaire leurs
(Georgeff [Rao & Georgeff 1992]) et destinataire du message, et où F, que
buts. Tout d’abord, les agents doivent être
des Britanniques (Jennings et Wooldridge l’on appelle le performatif, décrit le type
capables, par le biais de la communication,
[Wooldridge & Jennings 1994]). Il s’agit de message et où a représente le contenu
de transmettre des informations,
ici de formaliser l’ensemble des états du message. Chaque type de message
mais surtout d’induire chez l’autre un
mentaux d’un agent (essentiellement ses (locutoire) est transformé en une force
comportement spécifique. Communiquer
croyances, ses désirs, ses intentions “illocutoire”, elle-même formalisée dans
est donc une forme d’action particulière
et ses engagements) à partir d’un un langage modal en termes des états
qui, au lieu de s’appliquer à la trans-
formalisme logique comprenant mentaux du destinataire et du receveur.
formation de l’environnement, tend à
des aspects temporels et des modalités. Par exemple, un message de type
une modification de l’état mental
Des modèles d’architecture sont issus DemanderFaire, qui consiste pour un
du destinataire. Par exemple, demander
de ces travaux. agent e à demander à un autre agent d
à un autre d’exécuter une tâche, tend à
d’accomplir l’action a, peut se formaliser
L’école des agents rationnels, malgré provoquer chez l’autre une intention
ainsi (d’après [Cohen & Levesque 1995]) :
l’intérêt des recherches et l’importance d’accomplir cette tâche et constitue donc
des résultats, tend néanmoins à masquer une manière de satisfaire un objectif sans (demanderFaire e d a) =
ce qui fait l’originalité des systèmes réaliser la tâche soi-même. (croyanceMutuelle e d
multiagents, à savoir l’interaction et (but e [(capable d a) ⇒ (intention d a)]))
Il existe deux formes de communications :
la coopération. De ce fait, les travaux
n les communications intentionnelles et qui peut se paraphraser ainsi : envoyer
portant sur les agents rationnels donnent une demande d’action revient à ce que
mettent en contact des agents cognitifs
souvent l’impression que les agents sont les deux agents émetteurs et destinataires
par le biais d’envois de messages.
isolés les uns des autres, les phénomènes aient comme croyance que l’émetteur ait
Cette forme de communication est surtout
de coopération n’étant généralement comme but que le destinataire ait un jour
utilisée par des agents organisés en
pris en compte que de façon marginale. l’intention d’accomplir l’action demandée
réseaux ;
Cette école a très peu fait d’émule en
n les communications réactives qui s’il en a la capacité.
France. prennent la forme de signaux transmis Aux Etats-Unis, un projet de recherche ini-
entre agents réactifs. On rencontre tialement fondé par la Darpa a pour but de
ces formes de communication surtout développer un standard de communication de
dans la robotique collective mobile et la haut niveau, appelé KQML pour “Knowledge
simulation de sociétés animales, beaucoup Query and Manipulation Language”, fondé
moins dans les réseaux. sur les actes de langages et permettant
à des agents cognitifs de coopérer.
Ce projet a un grand retentissement dans
toute la communauté et de nombreux
chercheurs tentent à la fois de s’intégrer
et de dépasser les nombreuses limites
de ce projet [Cohen & Levesque 1995].
En France, un comité d’étude est en cours
de mise en place pour étudier et concevoir
des protocoles entre agents coopérants.
Une critique que l’on peut faire à cette
approche est de ne pas rendre compte
des aspects exécutoire. Il s’agit en fait
d’une spécification de haut niveau qui
indique quelles sont les conditions que
doit remplir une réalisation effective. Au
contraire, un formalisme de type réseau
de Petri permet de décrire la réalisation
d’une telle communication tout en conser-
vant des capacités de validation et de véri-
fication [Ferber 95]. Dans ce cas, une
action de type DemanderFaire peut être
décrite par le réseau suivant (figure 2) :
Figure 3 - La répartition de tâches par
médiation.

organisées dans le temps et l’espace


de manière à réaliser les objectifs.
Enfin, lorsque des conflits apparaissent,
il est important de pouvoir en limiter leurs
effet. Les techniques de négociation
servent ainsi à satisfaire les parties
impliquées en établissant des compromis
ou en dépassant la nature du conflit.
La coopération est la forme générale
d’interaction la plus étudiée dans
les systèmes multiagents. De manière
simplifiée, le problème de la coopération
peut se ramener à déterminer qui fait
quoi, quand, où, avec quels moyens,
Figure 2 - Un acte de langage représenté de quelle manière et avec qui, c’est-à-dire
sous la forme d’un réseau de Petri. en fait à résoudre les différents sous-
Collaboration et coordination problèmes que constituent la collaboration
par répartition de tâches, la coordination
d’actions
d’actions et la résolution de conflits.
Les différentes formes d’interaction
sont la collaboration et la coordination La réalisation de systèmes de répartition
d’actions. La première s’intéresse de services et de coordinations, tels
à la manière de répartir le travail entre que la médiation (usage de médiateurs ou
plusieurs agents, qu’il s’agisse de courtiers pour la répartition des services
techniques centralisées ou distribuées, en fonction des offres et des demandes
et la seconde analyse la manière dont les (figure 3) ou le réseau contractuel,
actions des différents agents doivent être fondé sur la notion de marché [Smith 79]
passent par l’établissement de protocoles Le niveau 1 décrit les couches de bas Le niveau 2 correspond à l’ensemble
de conversations, qui peuvent faire l’objet niveau d’un système multiagent : des mécanismes génériques qui sont mis
d’une représentation et d’une validation les primitives de communication entre en œuvre dans un système multiagent.
par réseaux de Petri. agents distants (primitives de type KQML), Il s’agit du niveau fondamental sur lequel
les serveurs de noms permettant à des porte la plupart des recherches décrites
agents d’entrer et de sortir du système dans la section précédente : définition
Architecture d’un système (procédures de check-in check-out), ainsi de protocoles génériques de coopération,
que les moteurs qui implémentent le cycle description d’agents administratifs et
multiagent de base de fonctionnement d’un agent. de liaison tels que les “courtiers”
Les systèmes multiagents sont évidemment Ce cycle est lié à un processus en boucle (ou brokers) qui mettent en rapport les
complexes, et leur architecture intègrent de type perception/délibération/action : agents qui demandent et ceux qui offrent
un ensemble de concepts dévéloppés la perception représente la reconnaissance des services, description de langage
aussi bien dans les systèmes distribués des objets de l’environnement ainsi de contenu généraux, comportements
qu’au sein de l’intelligence artificielle. que l’interprétation des messages reçus ; génériques d’agents, etc.
l’action décrit les opérations qu’un agent Le niveau 3 enfin traite des applications
Une architecture en couche exécute ainsi que les communications spécifiques et des domaines particuliers
Un système multiagent conçu autour dont il est l’émetteur ; enfin, la délibération auxquels on dédie un système multiagent
d’agents communicants possède exprime l’ensemble des moyens mis particulier. Nous verrons plus loin comment
une architecture caractéristique qui est en œuvre pour qu’un agent accomplisse cette architecture peut être mise
illustrée figure 4. son action. en œuvre dans le cas d’une application
Le niveau 0 correspond à l’ensemble de type “commerce électronique”.
des ressources disponibles telles que les
mécanismes de communication de bas L’architecture des agents
niveau (sockets Unix, protocoles TCP/IP L’architecture des agents relève encore
ou http, etc.) ainsi que les mécanismes de la recherche. Nous avons développé
d’exécution parallèles tels que les “threads”. dans [Ferber 95] une architecture
C’est au-dessus de cette couche, qui suffisamment générale pour qu’elle puisse
est utilisée comme un existant, que s’adapter à un grand nombre de situations.
viennent s’intégrer un système multiagent Cette architecture est fondée sur
proprement dit. 6 fonctions :
Figure 5 - n la fonction “conative” qui représente
Le cycle de base l’élaboration de buts et la prise de décision,
Figure 4 - L’architecture en de fonctionnement n la fonction organisationnelle qui gère le
couche d’un système multiagent. d’un agent. suivi des tâches et la satisfaction des buts,
n la fonction représentationnelle qui
porte sur l’ensemble des données et
représentations qu’un agent peut avoir sur
le monde, sur les autres et sur lui-même,
n la fonction productive qui représente
les services offerts par un agent pour lui
permettre d’accomplir sa fonction,
n la fonction végétative représente
l’ensemble des processus qui gère les
coûts, les temps d’exécution et la gestion
des ressources d’une manière générale,
n la fonction interactionnelle s’occupe
de l’interface et des entrées-sorties :
perception et action, réception et envoi
de message notamment.
Ce type d’architecture peut être mise intervenant de manière “opportuniste” Pour pallier certains des problèmes
en œuvre de différentes façons. L’une des c’est-à-dire sans être déclenchés d’efficacité des approches à base
plus connues repose sur celle de tableau effectivement par un système centralisé de tableau de contrôle à la BB1, et
noir. de contrôle. C’est cette partie qui a considérant que la plupart des systèmes
connu le plus de modifications au cours de contrôle étaient en fait hiérarchiques,
Les architectures d’agents à base de l’évolution de ces architectures. J.-P. Haton, H. Laasri et B. Maitre du Crin
de tableaux noirs à Nancy ont cherché une architecture
L’architecture de tableau noir est l’une présentant un bon compromis entre
des plus utilisée dans les systèmes l’expressivité et l’efficacité. Ils voulaient
multiagents cognitifs symboliques et elle pouvoir décrire le contrôle sous forme
a donné lieu à une abondante littérature. de KS sans perdre en efficacité par
Originellement développée dans le cadre Figure 6 - rapport à un contrôle procédural pur. De
de l’intelligence artificielle traditionnelle Une cette réflexion, est né le système Atome
(c’est-à-dire, du point de vue de l’IAD, architec- [Lâasri et al. 1987] qui a été depuis utilisé
ture de
pour réaliser des systèmes monoagents), dans un grand nombre d’applications.
système
pour la reconnaissance de la parole avec à base Citons notamment un système d’aide à
le système Hearsay II [Erman et al. 1980], de la décision pour la gestion des réfections
l’architecture de tableau noir s’est tableau de la voirie de Nancy et un outil de gestion
rapidement imposée en IAD comme une noir. temps réel des contre-mesures pour un
architecture suffisamment souple et pilote d’avion de chasse.
puissante pour pouvoir implémenter les Le contrôle dans les tableaux noirs On trouvera une bonne explication de la
mécanismes de raisonnement et de Si le modèle de tableau noir est très notion de tableau noir comme système
calculs intervenant à l’intérieur des agents, général, puisqu’il ne dit rien sur la manière indépendant, de ses mécanismes et
notamment avec le système DVMT dont sont organisés ces sous-systèmes, des différentes versions dans [Engelmore
[Lesser & Corkill 1983]. de nombreuses réalisations ont vu le jour, & Morgan 1988].
Le modèle de tableau noir est fondé sur chacune présentant une vision différente
Tableaux noirs
un découpage en modules indépendants du contrôle, la partie en fait la plus ardue
et systèmes multiagents
qui ne communiquent directement aucune d’un tableau noir. Le problème du contrôle
Si dans un premier temps, les systèmes
informations, mais qui interagissent dans un tableau noir revient à essayer
à base de tableau noirs furent considérés
indirectement en partageant des de savoir ce qu’il convient de faire ensuite,
comme des systèmes d’IAD, chaque KS
informations. Ces modules, appelés c’est-à-dire en fait de déterminer quelle
pouvant être perçu comme un agent qui
sources de connaissance ou KS (pour source de connaissance doit être
interagit avec les autres KS, il n’en est
Knowledge Sources), travaillent sur un déclenchée. Au début, avec les premières
plus de même aujourd’hui. Du fait de leur
espace qui comprend tous les éléments implémentations de Hearsay II, le contrôle
mécanisme de contrôle très centralisé
nécessaires à la résolution d’un problème. était “câblé” au sein d’une procédure, puis
et de leur manque de mémoire locale
L’architecture d’un système à base très rapidement il fut donné sous la forme
et donc de localité des informations,
de tableau noir comprend trois sous- d’un ensemble de règles. Mais ce n’est
ces systèmes sont maintenant envisagés
systèmes (figure 6) : qu’avec le système BB1 de B. Hayes-Roth
comme des architectures pratiques pour
n les sources de connaissance ; que l’organisation du contrôle dans
la réalisation de systèmes “intelligents”
n la base partagée (le “tableau” proprement les tableaux noirs acquit ses lettres de
et, en particulier, pour implémenter
dit) qui comprend les états partiels d’un noblesses, en considérant le contrôle
la structure interne d’agents cognitifs
problème en cours de résolution, les comme un problème suffisamment
symboliques. Nombre de systèmes multi-
hypothèses et les résultats intermédiaires important pour qu’il dispose de son propre
agents ont été implémentés de cette
et d’une manière générale toutes les tableau [Hayes-Roth 1985]. L’architecture
manière aux Etats-Unis [Lesser & Corkill
informations que s’échangent les KS. Ces de BB1 comprend donc deux tableaux :
1983] [Hayes-Roth et al. 1988] et en
bases sont décomposées en hiérarchies le premier est destiné au traitement
France [Chevrier 1993][Cambier 1994].
(conceptuelles, partitives, causales, etc.) du problème du domaine et le second à
qui structurent la modélisation du domaine la gestion du contrôle. De ce fait, il est
d’application comme l’espace des possible de traiter l’activation des sources
hypothèses/solutions ; de connaissance comme s’il s’agissait
n un dispositif de contrôle qui gère les d’un problème indépendant du domaine
conflits d’accès entre les KS, ces derniers d’application.
L’architecture de tableau noir présente Architectures multiagents un problème en communiquant par envois
de nombreux avantages dont, en tout et acteurs de messages. A cet effet, Hewitt montrait
premier lieu, une remarquable souplesse On appelle architecture multiagent d’un que son modèle d’exécution permettait
pour décrire des modules et articuler leur agent l’application de la notion de système de considérer les structures de contrôle
fonctionnement. Son intérêt réside dans multiagent à la définition de l’architecture des langages traditionnels comme des
ce qu’elle est à la fois opportuniste et des agents eux-mêmes, un agent étant schémas (patterns) de communications
centralisée, les liaisons entre les modules alors considéré comme un système entre entités autonomes appelées
(entre les KS donc) étant mutables. multiagent à part entière. Le premier acteurs. Depuis, les langages d’acteurs,
Elle est opportuniste au sens où les KS à avoir considéré le psychisme d’un être en particulier sous l’influence de Agha
se déclenchent lorsque des configurations (humain ou artificiel) comme le résultat [Agha 1986] de Tokoro [Tokoro 92] et
du tableau les intéressent, suite à des d’interactions entre petits agents individuels de Yonezawa [Yonezawa 90] ont surtout
modifications provoquées par d’autres KS. est M. Minsky dans son livre “La société été étudiés comme des modèles
Elle est centralisée par l’intermédiaire de l’esprit” [Minsky 1988]. Il y décrit, d’exécution pour la programmation par
d’un module de contrôle qui ordonne l’ordre de manière assez décousue, un ensemble objets concurrents. Mais quelques travaux
dans lequel les KS seront effectivement de mécanismes résultant de conflits et ont voulu rester dans les idées initiales
activés, en essayant de déterminer quelle de coopérations entre petites entités que prônaient Hewitt et qu’il confirma avec
est la meilleure action à effectuer compte calculatoires qu’il appelle agents. Chacun ses notions de “sémantique des systèmes
tenu de l’état du système. est responsable d’une activité, d’un ouverts” [Hewitt 1991] [Hewitt 1985].
Son principal inconvénient provient souvenir, d’une propriété reconnue d’un P. Carle [Carle 1992], S. Giroux [Giroux &
de sa relative inefficacité, due à la très objet, sans qu’il y ait de véritable système Senteni 1992] et J. Ferber [Ferber & Carle
grande expressivité de son contrôle. centralisateur coordonnant l’ensemble. 1991], tout en estimant que les langages
De ce fait, ce type d’architecture s’avère De ce fait, Minsky considère que le d’acteurs sont effectivement de très bons
particulièrement utile lors de la phase de fonctionnement de l’appareil psychique outils pour l’implémentation de calculs
prototypage de la réalisation de systèmes n’est pas le résultat d’un ensemble parallèles, considèrent néanmoins qu’ils
ou lorsque les temps de réponses ne sont d’inférences portant sur des symboles, présentent des caractéristiques tellement
pas trop contraints. Néanmoins, des mais plutôt le fruit de confrontations originales qu’ils modifient par leur
versions de BB1 ont montré que même auto-organisatrices entre processus présence la notion même d’architecture
dans des cas où il était nécessaire d’avoir autonomes. Bien que très peu multiagents en envisageant les agents
des temps de réponses en temps réel, la de systèmes aient été conçus à partir et les systèmes multiagents comme
gestion fine du contrôle pouvait accélérer des travaux de Minsky (et on peut des extensions naturelles de la notion
de manière drastique son comportement d’ailleurs se demander si elles sont d’acteur.
en prenant les bonnes décisions et en réellement implémentables dans leur Mais qu’est ce qu’un acteur ? Un acteur
choisissant les tâches importantes et totalité), ses idées ont certainement est une entité informatique qui se compose
urgentes au bon moment [Hayes-Roth & influencé tout un courant de pensée qui de deux parties : une structure qui
Collinot 1993]. considère que le comportement d’un comprend l’adresse de tous les acteurs
agent résulte d’un ensemble d’activités qu’il connaît et à qui il peut envoyer des
En tout état de cause, les avantages de
internes que l’on peut associer au messages et une partie active, le script,
ce type d’architecture sont indéniables :
fonctionnement d’un système multiagent. qui décrit son comportement lors de
du fait de sa très grande plasticité, il est
possible d’implémenter n’importe quelle En particulier tous les travaux portant la réception d’un message. Le comporte-
structure d’agent en termes d’éléments sur les langages d’acteurs et sur leur ment de chaque acteur, qui s’exécute
de tableaux et de KS. En particulier, utilisation dans des systèmes multiagents indépendamment et en parallèle avec
toutes les autres architectures peuvent peuvent dans une certaine mesure les autres, se résume à un ensemble
être modélisées en termes de tableaux se rapporter à ce courant. Initialement, d’actions extrêmement réduit : envoyer
noirs au prix parfois d’une certaine la notion d’acteur est apparue avec des messages, créer des acteurs et
lenteur dans l’exécution. Le tableau noir les travaux de Hewitt dès 1973. Ils ont modifier son état (ou déterminer un
se présente donc comme une sorte véritablement été rendus publics vers nouveau comportement pour le message
de “méta-architecture”, c’est-à-dire 1976 avec l’article initiateur “Viewing suivant). C’est tout ! Et c’est suffisant pour
une architecture pour implémenter des Control Structures as Patterns of pouvoir exprimer n’importe quel calcul
architectures. Passing Messages” [Hewitt 1977], qui parallèle comme une combinaison de ces
développait une certaine conception actions primitives.
des programmes conçus comme
des sociétés de spécialistes résolvant
La communication entre acteurs s’effectue Enfin, il faut signaler d’une part que Plusieurs systèmes industriels se présentent
par envois de messages asynchrones, L. Gasser dans son système Mace maintenant comme une alternative
c’est-à-dire que l’émetteur n’a pas besoin [Gasser et al. 1987] a été fortement à ces premiers projets universitaires.
que le récepteur soit prêt pour recevoir inspiré par les idées de Hewitt concernant En particulier, AgentBuilder réalisé par
un message. Mais l’originalité la plus les acteurs et, d’autre part, que le langage IBM, environnement de réalisation d’agents
importante des langages d’acteurs est Actalk est à la base d’un grand nombre “intelligents” à partir d’un ensemble
certainement l’usage de la continuation de plates-formes multiagents, le premier de composants connectables (puggable).
locale du calcul. Lorsqu’un acteur A a en date ayant été Mages III [Bouron et al. Chaque agent se compose d’un moteur
besoin d’une réponse à un message qu’il 1990]. Le rapport entre acteurs et agents d’inférence (dont les faits et règles sont
envoie à un acteur B, il n’attend pas la est ainsi des plus féconds et nul doute écrits en format KIF), et d’un système
réponse : il passe en argument un nouvel que l’avenir verra d’autres travaux tendant de réaction à des événements http.
acteur C, appelé “customer” chez Hewitt, à montrer les liens très étroits qui unissent Dans le domaine des télécoms, la société
qui se charge de traiter la réponse et ces deux concepts. General Magic, en collaboration avec
la suite du calcul. Cet acteur C agit donc de nombreuses sociétés de télécom-
comme la continuation locale du calcul Environnement de développement
munications, et en particulier France
initié par l’envoi de message de A vers B. De nombreux environnements de
Télécom, a développé un système
L’usage des continuations locales donnent développements de SMA ont été proposés
de développement de systèmes multiagent
une très grande fluidité aux calculs par des équipes universitaires. Citons
fonctionnant sur réseau, Téléscript**.
exprimés en langages d’acteurs puisque en particulier Mice par Ed Durfee
Bien que dans ce système les notions
les acteurs n’ont aucunement besoin de l’université du Michigan [Durfee
d’agents soient particulièrement frustes
d’attendre les réponses. De nombreux & Montgomery 1989], Mages [Bouron et
(les agents ne sont ici que de simples
langages d’acteurs ont été proposés. al. 1990], Ratman [Bürckert & Müller
processus) il intègre néanmoins un certain
Les plus célèbres et actuellement 1991] et plus récemment Desire [Brazier
nombre de caractéristiques qui
opérationnels sont ABCL [Yonezawa et al. 96].
permettent d’ores et déjà d’écrire des
1990], Mering IV [Ferber & Carle 1991] Mais ces environnements ne peuvent
(petites) applications distribuées disposant
et Actalk [Briot 1989], ce dernier étant combler les contraintes industrielles, voire
d’un minimum de capacités multiagents.
conçu comme une extension de Smalltalk. même pré-industrielles. C’est pour cela
Gageons que les systèmes du futur
qu’un projet Esprit, Imagine, avait démarré
En étendant la notion d’acteur vers celle s’inspireront des facilités de développe-
en 1990, avec comme partenaire
d’agent grâce à l’utilisation de la réflexivité ment et de la technologie – très orientée
Siemens, Plessey, Intrasoft, et Steria
organisationnelle, S. Giroux [Giroux 1993] objet – mise en œuvre dans ce produit.
pour la France. Il s’agissait d’offrir aux
propose de considérer un agent comme Enfin, le langage Java de Sun commence
concepteurs et réalisateurs un environne-
un écosystème, c’est-à-dire comme un à prendre un essor considérable et
ment de développement pour systèmes
ensemble d’agents en interactions, et un certains le voient comme un challenger
multiagents à granularité variable.
écosystème comme un agent. particulièrement prometteur de Téléscript.
Dans ce contexte, un agent peut être
Son système, ReActalk, fondé sur une Bien qu’il dispose de moins de richesses
un système à base de connaissance,
extension d’Actalk, fournit aux agents quant à la migration d’objets et à la
un capteur, un programme de supervision,
la possibilité d’adapter leur comportement sécurité de fonctionnement, plusieurs
voire même l’assistant informatisé d’un
en fonction du type de message qu’ils projets commencent à promouvoir Java
être humain. Deux applications avaient été
reçoivent et ainsi de pouvoir dialoguer comme langage de développement
envisagées. L’une concerne le trafic
aussi en mode synchrone si cela s’avère d’agents communicants sur Internet.
aérien, l’autre un système de gestion
nécessaire. Néanmoins, ces agents
de réseau de télécommunication. S’il n’existe pas d’ouvrage ni d’article
ne disposent pas véritablement
Si des “maquettes” du système ont bien décrivant en détail les problèmes et les
de comportements autonomes (ils n’ont
été réalisées en Parlog* avec souvent de techniques d’implémentation des systèmes
pas de systèmes motivationnels) ni de
très bonnes idées, le projet global multiagents, on retrouve disséminé ici
représentations de leur environnement,
n’a pas abouti. et là, et surtout dans les travaux de thèse,
l’idée d’écosystème étant plutôt prise
comme une métaphore. Néanmoins
ces travaux montrent qu’il existe un lien
de continuité entre la notion d’acteur et * Parlog est un Prolog concurrent qui peut
celle d’agents. s’exécuter sur des architectures paralléles.
** On pourra trouver de l’information concernant
Téléscript à l’adresse internet :
www.genmagic.com
un certain nombre d’informations quant Le problème général des agents assistants le comportement des entités qui agissent
à la réalisation effective d’un système porte sur la compétence et la confiance dans le monde et qu’il est ainsi possible
multiagent, qu’il s’agisse de systèmes que l’utilisateur peut avoir en eux. de représenter un phénomène comme
complets ou plus simplement de plates- La confiance se définit dans le temps le fruit des interactions d’un ensemble
formes de développement. Par exemple au cours d’un échange permanent entre d’agents disposant de leur propre
[Bouron 92] décrit une architecture de l’utilisateur et l’agent. Un utilisateur devient autonomie opératoire. Par exemple, dans
SMA cognitif en Smalltalk. On trouvera confiant dans son agent si : un modèle multiagent de population, on
aussi dans [Jennings 94] une bonne des- n il arrive à anticiper des demandes représentera directement les individus
cription des problèmes d’implémentation de l’utilisateur et accomplit des tâches que sous la forme d’agents, et la quantité
de systèmes multiagents industriels, l’utilisateur n’avait pas demandées mais d’individus d’une espèce donnée sera le
dans [Ferber 95] une présentation qui se révèlent exactement ce qui résultat des confrontations (coopération,
de différentes architectures d’agent et l’intéresse, lutte, reproduction) des comportements
de SMA et dans [O’Hare & Jennings 96] un n il pose des questions pertinentes de tous les individus représentés dans
état de l’art d’un certain nombre de plates- à l’utilisateur lorsqu’il se trouve dans une le système (pour avoir un panorama plus
formes de développement de SMA. situation difficile qui demande un arbitrage étendu sur la simulation multiagent on
de l’utilisateur, pourra se reporter à [Ferber 95]).
n il ne commet pas d’erreur importante De ce fait, l’utilisateur d’un tel simulateur
dans ses décisions personnelles.
Applications des a un rôle actif. Il emploie un système
Cette mise en confiance peut être multiagent comme s’il s’agissait d’un labo-
SMA aux développée lors d’une période d’appren- ratoire miniature, déplaçant des individus,
télécommunications tissage où d’un côté l’agent apprend
les désirs de l’agent, son style, ses
changeant leur comportement, et
modifiant les conditions environnementales.
préférences et sa façon de se comporter, Chaque agent est évidemment “marqué”
Les applications des SMA pour les et de l’autre côté l’utilisateur surveille comme pourrait l’être un être naturel,
télécoms sont nombreuses, mais on peut le comportement de l’agent. mais ce marquage est évidemment plus
les regrouper en quatre classes principales : facile, puisque l’individu peut être suivi
les agents assistants, l’intégration de à tout moment dans son évolution et avec
services et le commerce électronique, Simulation le degré de finesse désiré. On exploite
l’administration et la régulation de réseaux, alors les capacités des ordinateurs pour
et enfin la simulation de réseaux et La simulation est une branche très active
traiter les données obtenues, les agréger
de comportements. de l’informatique qui consiste à analyser
et les exploiter à l’aide de techniques
les propriétés de modèles théoriques
statistiques afin de vérifier les hypothèses
du monde environnant. Généralement,
émises. Ainsi, à la différence des
Les agents assistants ces modèles sont donnés sous la forme
approches classiques, la simulation multi-
de relations mathématiques entre
L’application tournée vers la notion d’agents agent ne se réduit pas à l’implémentation
des variables représentant des grandeurs
assistants correspond directement à d’un modèle puis à l’analyse de la réponse
physiques mesurables dans la réalité.
une mise en pratique de la conception de ce modèle en fonction des paramètres
Les modèles les plus utilisés sont les
de l’agent comme collaborateur. d’entrées, mais participe au processus
équations différentielles, les matrices de
Les applications déjà envisagées dans de recherche de modèles.
transitions, la théorie des files d’attente, etc.
ce cadre concerne des agents trieurs et Elles reposent dans tous les cas sur la Les principales qualités des modélisations
administrateurs de courrier électroniques, définition d’une relation de cause à effet multiagents sont leur capacité d’intégration
des agents “fureteurs” qui récupèrent entre des variables d’entrées et des et leur flexibilité. En effet, il est possible
et filtrent l’information disponible sur variables de sorties. d’intégrer dans la même modélisation
le réseau en fonction des préférences des variables quantitatives, des équations
Par rapport à ces techniques classiques,
de l’utilisateur, des agents gestionnaires différentielles, et des comportements
les systèmes multiagents apportent
de rendez-vous, et d’une manière générale fondés sur des règles symboliques.
une solution nouvelle au concept même
des agents qui automatisent des tâches Il est aussi très facile d’intégrer des
de modèle et de simulation en offrant
quotidiennes. modifications, chaque enrichissement
la possibilité de représenter directement
du modèle étant réalisé par l’adjonction
les individus, leurs comportements et
de règles comportementales qui agissent
leurs interactions. La simulation multiagent
au niveau de l’individu. De plus, les
est fondée sur l’idée qu’il est possible
individus étant toujours distingués les uns
de représenter sous forme informatique
des autres, il est possible d’ajouter qui négocient entre eux des échanges de n les agents “applicatifs” qui sont de deux
de nouveaux types d’agents disposant services. Le système multiagent constitue ordres :
de leur propre modèle de comportement, alors une sorte de “place de marché - les “services terminaux” qui sont liés
qui viennent interagir avec les agents électronique”, dans lequel les clients à une application de type base de
déjà définis. Par exemple, dans une émettent des demandes et les fournisseurs données, ou de type serveur télématique,
modélisation forestière, on peut introduire envoient des propositions de services. ils correspondent à la réalisation d’un
de nouvelles espèces animales ou végétales Finalement des contrats sont établis service “terminal”. Ces applications sont
et analyser leurs interactions avec celles entre clients et fournisseurs, et tout cela encapsulées dans des agents pour interagir
déjà modélisées. de manière automatique, ou en tous cas, avec l’ensemble de la communauté ;
Enfin, les systèmes multiagents permet- avec une intervention humaine réduite. - les “services intermédiaires” qui servent
tent la modélisation de situations complexes Les mots clés sont ici négociations entre à établir des fonctionnalités à valeurs
dont les structures globales émergent agents, contrats, gestion de contraintes, ajoutées en regroupant des services
des interactions entre individus, c’est-à-dire services et intégration de services, etc. terminaux. Typiquement, il correspondent
de faire surgir des structures du niveau Un exemple simple, mais néanmoins à l’exemple de “l’agence de voyage” qui
macro à partir de modélisations du niveau révélateur, en est donné par le scénario intègre des services “réservation d’hôtel ”
micro, brisant ainsi la barrière des de l’agence de voyage. Dans cet exemple, “réservation de billets d’avion” et “réservation
niveaux, si criante dans les modélisations un service intermédiaire, l’agence de billets de trains” en disposant d’une
classiques. Nous présentons ici deux de voyage, combine différents services expertise portant sur le voyage ;
systèmes caractéristiques de simulation (réservations de trains, d’avions et n les agents “marketing” sont de plusieurs
multiagent qui sont le résultat de collabo- de chambres d’hôtel) et les propose à des types :
ration entre informaticiens et chercheurs clients électroniques eux aussi (le client - les “commerciaux” qui servent à faire
écologues. Il existe bien évidemment peut être un agent assistant mandaté par connaître leurs services aux utilisateurs
un grand nombre d’autres applications l’utilisateur par exemple). Lorsqu’un client potentiels (courtiers, services inter-
de simulation comportementale, mais établit une transaction commerciale avec médiaires et assistants) ;
ceux-ci donnent un aperçu des domaines l’utilisateur, un contrat est établit qui - les “acheteurs”, qui négocient le prix
variés dans lesquels les SMA peuvent être détermine les engagements de chacun. des services ;
employés. Par exemple, si l’horaire d’un avion est - les “fureteurs” qui se déplacent dans le
modifié, ou si les prix viennent à changer, réseau à la recherche de bonnes affaires
Dans le domaine des télécommunications,
l’agence de voyage peut gérer ces ou d’informations utiles à l’utilisateur.
la simulation multiagent peut être utilisée
modifications en tenant compte Pour l’instant, ce type d’agent a surtout
avec efficacité pour modéliser le fonction-
de conditions établies par le client : dates été utilisé ;
nement de réseaux à grande vitesse (par
du voyage, prix maximum, etc. De plus, - les agents “filtreurs” qui, devant la
exemple la gestion des flux de réseaux
l’agence de voyage doit tenir compte grande quantité d’informations disponible,
ATM) ou pour modéliser l’interaction
de contraintes dépendant des services sélectionnent ce qu’ils jugent utile à leur
entre plusieurs services afin de mieux
qu’elle propose (s’il y a deux vols au cours mandant, lequel peut être aussi bien
comprendre la quantité et le type de flux
d’un trajet, il faut vérifier que le second un utilisateur (éventuellement au travers
d’informations qu’ils échangent.
n’a lieu qu’après le premier). d’un agent assistant) qu’un service ;
n les agents de liaison, appelés générale-
Intégration de services et Types d’agents ment “courtiers” (brokers) qui se chargent
Dans une application de type agence de la mise en rapport de demandeurs et
marché électronique de voyage, de nombreux types d’agents d’offreurs de services ;
La plus grande gamme d’applications doivent collaborer. Voici un éventail (non n les agents “intégrateurs et juridiques”
intéressantes pour les systèmes exhaustif, mais assez détaillé pourtant) se chargent de l’élaboration et du suivi
multiagents dans le cadre de réseaux de ces différents types d’agents : des contrats, de leur vérification, ainsi que
de télécommunications me semble être n les agents “assistants” servent de la mise à jour des contraintes lorsque
celle de l’intégration de services et le d’interface avec l’utilisateur. Ils gèrent des conditions sont modifiées ;
développement du marché électronique. les interactions avec les autres agents n les agents administratifs enfin, qui
assistants (prise de rendez-vous, s’occupent de la vérification, de la sécurité
L’idée générale de ce type d’application
organisation de réunions, etc.) et avec et de l’acheminement des informations
est de mettre en commun des clients et
les autres types d’agents (recherche au lieu où se trouve l’utilisateur, et qui
des fournisseurs de services dans une
d’information, de service, négociation comprennent les “agents messagers”
architecture totalement ouverte, clients et
de contrats, etc.) ; caractéristiques de l’approche Téléscript.
fournisseurs étant des agents électroniques
Exemples de projets existants Les problèmes rencontrés n validation des comportements et
Dans ce cadre, un certain nombre de Ce scénario, qui est à la base d’un champ des protocoles d’interaction. Comment
projets ont été réalisés en collaboration d’applications énorme dans le domaine assurer que les agents vont bien accomplir
avec France Télécom dans le cadre des télécoms pose un certain nombre de ce qu’ils sont censés faire. Ce problème
de contrats CNET avec des Universités. problèmes : est celui de la validation des protocoles
Elles consistent à analyser la notion n langage de communication d’interactions ainsi que du comportement
de système multiagent dans le cadre et d’interaction normalisé. Pour que des agents intermédiaires nécessaires
de réseaux de télécommunications. différents services hétérogènes puissent à l’établissement des négociations
En particulier le problème de l’engagement travailler ensemble, il est nécessaire qu’ils commerciales et à leur équité (courtiers,
des agents lors de l’établissement de parlent un langage commun. A l’heure agents juridiques, etc.). Ces problèmes
services et celui des outils et des méthodes actuelle, certaines propositions autour de se situent à deux niveaux. Au niveau
à mettre en pratique pour l’élaboration de KQML, un langage développé à Stanford, technique, il s’agit de vérifier que le
systèmes multiagents dans des réseaux. semble être mis en avant par nombre de comportement des agents ne conduit pas
chercheurs. Néanmoins, il souffre de nom- à des situations incohérentes ou
Outre ces projets, on peut parler de celui
breux maux, dont le premier est de ne pas de blocages. Pour cela on peut utiliser
de CommerceNet, développé à Stanford
avoir une sémantique claire, indépendante des techniques classiques, telles que les
en collaboration avec un ensemble
de la structure des agents. D’autre part, réseaux de Petri. Mais il existe un second
d’industriels importants de la région.
il ne peut être utilisé que pour des commu- problème qui se situe à un niveau
CommerceNet est une infrastructure
nications isolées, alors que la mise en juridique. A partir du moment où
ouverte pour le développement du marché
place d’interactions complexes nécessite des agents peuvent établir des contrats
électronique. Ce projet a pour objectif
l’établissement de protocoles élaborés ; et accomplir des actes commerciaux
affiché de “révolutionner les contacts
n langage de description des services de manière autonome, ils peuvent être
entre clients, fournisseurs et développeurs
et des contraintes souple et évolué. amenés à accomplir des actions qui ne
en rendant leurs interactions aussi
Les agents doivent être à même soient pas totalement en accord avec les
efficaces que s’il s’agissait d’interactions
de communiquer à d’autres agents sur demandes de leur utilisateur. De ce fait,
entre membres d’un même département”.
des sujets divers. Il est donc nécessaire il faut réfléchir au statut juridique de ces
Tout en étant sensiblement différent, qu’ils puissent se mettre d’accord sur le agents et aux problèmes de responsabilités
le projet Bayou de Xerox Parc se situe sens des mots. En effet, il faut faire en associés ;
dans cette mouvance. Leur objectif est sorte qu’un agent qui désire aller de Paris n plate-forme de développement
de développer une plate-forme de à Toulouse puisse être compris s’il désire : d’applications et d’exécution de tels
développement et d’exécution d’applications “Je veux aller de Paris à Toulouse” ou “Je logiciels. Il s’agit ici d’un problème à la fois
permettant à des outils de communica- veux acheter un billet pour aller de Paris à technique et économique. Il pose de
tions mobiles (ordinateurs portables, Toulouse”, et cela dans plusieurs langues. nombreux problèmes concernant
PDA (Personal Digital Assistant) de type Ce problème est d’ailleurs bien connu des la manière d’aborder le problème.
Newton, etc.), qui sont rarement “en chercheurs en linguistique computation- De ce fait, vu son importance stratégique,
ligne”, d’avoir accès à des informations nelle qui ont développé des interfaces de la section suivante lui est entièrement
collectives relativement cohérentes. base de données en langage naturel. C’est consacrée.
Ce type de projet montre bien que la pour résoudre cet épineux problème qu’il
métaphore de l’espace électronique est est nécessaire de développer des thesaurus
féconde et que des organismes de conceptuels (que les anglo-saxons ont
recherche majeurs s’intéressent à cette baptisé “ontologies”) qui soient communes
question. sinon à tous, tout du moins à un ensemble
d’agents travaillant dans le même domaine.
A cet égard, les langages de type IDL
(Interface Description Language) tels qu’on
les trouve dans des architectures objet de
type Corba (ou ODP) ne sont pas suffisants,
car ils sont purement syntaxiques et ne
prennent pas en compte le sens des
requêtes et des descriptions. Ce problème
peut être assez facilement résolu par des
techniques de type analyse de langage natu-
rel, adapté aux interactions entre agents ;
Quelques scénarios dans le cas il est nécessaire d’établir, au sein de ce D’autres compagnies pourraient développer
du commerce électronique gigantesque espace, des zones dans d’autres types d’agents : services,
Comment gérer le développement de lesquelles le marché électronique pourra marketing, assistants, etc. à partir d’un
ce type d’application ? Trois scénarios prendre effet. Pour offrir un service dans kit de développement s’appuyant sur
me semblent imaginables dans le futur. cette zone, ou tout simplement pour les fonctionnalités offertes par les outils
En voici trois qui paraissent viables sur pouvoir y accéder, il faudrait s’abonner standards d’interaction.
le plan technique : les réseaux multiagents à cette zone pour une somme forfaitaire C’est le scénario qui me paraît le plus
propriétaires, les “zones à péage” et les donnant droit à l’utilisation à l’ensemble probable, car c’est celui qui suppose
outils standardisés d’interactions. des fonctionnalités de ce sous réseau. le moins d’alliances économiques initiales.
Les réseaux propriétaires Ce scénario me semble relativement Il repose simplement sur l’existence
Le premier de ces scénarios concerne la viable, mais comme tous les systèmes d’un standard de communication de haut
réalisation d’un réseau grand public relativement fermés, il dépend uniquement niveau fourni à bas prix et qui assure
propriétaire. Ce réseau offrirait toute du nombre d’abonnés tentés par cette les fonctionnalités minimum de sécurité
l’architecture et toute l’infrastructure opération. Cela dépend donc de la nécessaires à la réalisation d’échanges
nécessaire à l’implémentation d’un ensemble puissance économique des opérateurs et économiques sur le réseau.
d’agents en interaction : agents adminis- de l’ensemble des services qu’il peuvent
tratifs, intégrateurs et juridiques, apporter.
ainsi qu’un ensemble de base d’agents Les outils standardisés d’interactions
services, marketing et assistants. Le troisième scénario qui me paraît le plus
Le fournisseur du réseau offrirait de vraisemblable, repose sur le développe-
même un kit de développement pour la ment de standards de communications de
réalisation de services. haut niveau et de thesaurus conceptuels
Ce scénario suppose l’existence d’un (ontologies) ainsi que le développement
regroupement important entre plusieurs d’un ensemble d’outils bon marché
opérateurs de réseaux, de manière permettant l’intégration de techniques
à pouvoir lutter contre le développement agents à des logiciels de navigation
d’Internet. Bien que cette stratégie puisse existant. Cette stratégie est très proche
être celle de France Télécom, je la crois de celle choisie par Netscape et Sun
difficilement viable à terme pour des avec Java. Bien que Java ne soit pas pour
raisons purement économique. l’instant un logiciel d’intégration de
Cette stratégie ne peut s’appliquer que systèmes multiagents, il est relativement
dans des situations de marché captif, qui facile de l’étendre pour qu’il joue ce rôle,
vont à l’encontre de la tendance actuelle comme nous l’avons dit plus haut.
plutôt tournée vers l’ouverture. A cet effet, Ensuite, toute entreprise, tout utilisateur,
l’importance du développement d’Internet, peut développer ses propres agents
ses faibles coûts de communication, à partir d’une telle base. Des entreprises
le standard de fait qu’il procure avec les spécialisées dans le juridique pourraient
outils Web, l’échec de Microsoft Network, alors développer des agents intégrateurs
montre, s’il en était besoin, que le vent et juridiques qui offriraient la meilleure
ne souffle pas dans cette direction. sécurité de transaction. De ce fait, lors
de l’établissement d’un contrat, les agents
Les “zones à péage” contractants décideraient de régler leur
Un deuxième scénario repose sur la notion différend par les services intégrateurs
de ce que l’on pourrait appeler une “zone et juridiques de telle ou telle compagnie.
à péage” (terme forgé par mes soins). De ce fait, toutes les fonctionnalités
Il consiste à développer un sous réseau nécessaires à la réalisation d’un système
d’Internet dans lequel les communications de marché électronique, hormis le langage
sont gérées par un opérateur unique de communication et le langage de
qui fournit un ensemble de services description des ontologies, seraient
supplémentaires (agents courtiers, disponibles sous la forme d’agents fournis
administratifs, juridiques, etc.). Un site par une entreprise tierce.
Web ne constituant pas a priori un agent,
Bibliographie Van de Velde W, Perram J. (Eds.)
(1996) Agents Breaking Away, pp. 42-55,
Burg B. et Arlabosse F. Archon : une
plate-forme industrielle pour l’intelligence
LNAI 1038. artificielle distribuée. Deuxièmes journées
Ouvrages de référence* Werner E. et Demazeau Y. (Eds.) francophones sur l’intelligence artificielle
(1992) Decentralized A.I. 3. Amsterdam, distribuée et les systèmes multiagents
Avouris N. et Gasser L. (Eds.) (1992) (JFIADSMA’94), Demazeau Y. et Pesty S.
Elsevier/North-Holland.
Distributed Artificial Intelligence: Theory (Ed.), IMAG, Voiron, 1994.
and Praxis. Kluwer Academic Publishers. Wooldridge M., Jennings N. (Eds.)
(1995) Intelligent Agents, LNAI 890, Cambier C. Simdelta : un système multi-
Bond A. et Gasser L. (Eds.) (1988) agent pour simuler la pêche sur le Delta
Springer Verlag.
Readings in Distributed Artificial Central du Niger. Thèse d’université,
Intelligence. San Mateo, California, Wooldridge M., Müller J. P., M.
Paris 6, 1994.
Morgan Kaufman. Tambe (Eds.) (1996), Intelligent Agents II,
LNAI 1037, Springer Verlag. Cammarata S., McArthur D. et Steeb R.
Ferber J. (1995) Les Systèmes multi- Strategies of Cooperation in Distributed
agents. Vers une intelligence collective, Problem Solving. Proc. of the 1983 IJCAI
InterEditions, 1995. Autres références Conference, 1983.
Jennings N. (1994) Cooperation in Carle P. Un Langage d’acteur pour
Agha G. Actors: A Model of Concurrent
Industrial Multi-Agent Systems. Vol. 43, l’intelligence artificielle distribuée intégrant
Computation for Distributed Systems. MIT
World Scientific Press. objets et agents par réflexivité compilatoire.
Press, 1986.
O’Hare G., Jennings N. (1996) Thèse d’université, Paris 6, 1992.
Austin J. L. How to Do Things With Words.
Foundations of Distributed Artificial Carle P., Collinot A. et Zeghal K.
Traduction française Quand dire c’est faire,
Intelligence, Wiley. Cassiopeia: a Method for Designing
Le Seuil, 1970. (Ed.), Clarendon Press, 1962.
Computational Organizations. DIMAS’95,
Bouron T. Structures de communication
Actes de congrès publiés International Workshop on Decentralized
et d’organisation pour la coopération dans
Intelligent and Multi-Agent Systems,
un univers multiagents. Thèse d’université,
Castelfranchi C. et Werner E. (Eds.) Krakovie, Pologne, 1995.
Université Paris 6, 1992.
(1994) Artificial Social Systems, Proc. of Cohen P. R. et Levesque H. J. Intention
Maamaw’92. Springer-Verlag. Bouron T., Ferber J. et Samuel F.
is Choice with Commitment. Artificial
Mages: a Multi-Agent Testbed for
Demazeau Y. et Müller J.-P. (Eds.) Intelligence 42, pp. 213-261, 1990a.
Heterogeneous Agents. In Decentralized
(1990) Decentralized Artificial Intelligence. Cohen P. R. et Levesque H. J. Rational
Artificial Intelligence (Vol II), Demazeau Y.
Elsevier North-Holland. Interaction as the Basis for Communication.
et Muller J.-P. (Ed.), North-Holland, 1990.
Demazeau Y. et Müller J.-P. (Eds.) In Intentions in Communications,
Brazier F., Dunin-Keplicz B., Jennings
(1991) Decentralized AI 2. Amsterdam, Cohen P. R., Morgan J. et Pollack M. E.
N., Treur J. Desire : modelling multiagent
Elsevier North-Holland.} (Ed.), 508. MIT Press, 1990b.
systems in a compositional formal frame-
Gasser L. et Huhns M. (Eds.) (1989) work, International Journal of Cooperative Cohen P. R. et Levesque H. J.
Distributed Artificial Intelligence}. Vol. II, Information Systems, M. Huhns, M. Singh Communicative Actions for Artificial
Londres, Pitman/Morgan Kaufman. (Eds.), special issue on Formal Methods in Intelligence. First International Conference
Huhns M. N. (Eds.) (1987) Distributed Cooperative Information Systems, 1996. on MultiAgent Systems (ICMAS’95), Lesser
Artificial Intelligence. Londres, A paraître. V. (Ed.), MIT Press, San Francisco, 1995.
Pitman/Morgan Kaufman. Briot J.-P. Actalk: a Testbed for Classifying Chevrier V. Etude et mise en œuvre du
Lesser V. (Ed.) (1995) Proceedings of and Designing Actor Languages in the paradigme multiagent: de Atome à Gtmas.
the First International Conference on Multi- Smalltalk-80 Environment. Proc. of ECOOP’89, Thèse d’Université, Nancy I, 1993.
Agent Systems (ICMAS’95), MIT Press. 109-129, Nottingham, UK, 1989. Demazeau Y., Boissier O. et Koning J.-L.
Müller J.-P., Quinqueton J. (Eds.) Brooks R. A. Elephants Don’t Play Chess. Using Interaction Protocols to Control
(1996). IA distribuée et systèmes multi- Robotics and Autonomous Systems 6, Vision Systems. IEEE International
agents, JFIADSMA’96, Hermès. pp. 3-15, 1990. Conference on Systems, Man and
Rosenschein J. et Zlotkin G. Rules of Bürckert H.-J. et Müller J. Ratman: Cybernetics, San Antonio, 1994.
Encounters: Designing Conventions for Rational Agents Testbed for Multi-Agent Dieng R., Corby O. et Labidi S. Agent-
Automated Negotiation among Networks. In Decentralized AI 2, Based Knowledge Acquisition. European
Computers. Cambridge, Massachusetts, Demazeau Y. et Müller J.-P. (Ed.), Conference on Knowledge Acquisition,
MIT Press, 1994. Amsterdam, Elsevier North-Holland, 1991. EKAW’94, 1994.
Drogoul A., Ferber J., Corbara B. et Hewitt C. Open Information Systems Smith R. G. A Framework for Distributed
Fresneau D. A Behavioral Simulation Semantics for Distributed Artificial Problem Solving. Proceedings of IJCAI’79,
Model for the Study of Emergent Social Intelligence. Artificial Intelligence (special 1979.
Structures. Towards a Practice of issue on foundations of AI) 47 (1-3), Sycara K. Multiagent Compromise via
Autonomous Systems, Bourgine P. et 79-106, 1991. Negotiation. In Distributed Artificial
Varela F. (Ed.), MIT Press, pp. 161-170, Jennings N., Corera J. M. et Intelligence, Gasser L. et Huhns M. (Ed.),
Paris, 1992. Laresgoiti I. Developing Industrial Multi- London, Pitman, 1989.
Durfee E. et Montgomery T. Mice: Agent Systems. First International Tokoro M. The Society of Objects. Proc.
A Flexible Testbed for Intelligent Conference on Multi-Agent Systems, of the OOPSLA’93 Conference, 1993.
Coordination Experiments. Proc. of Ninth Lesser V. (Ed.), MIT Press, San Francisco,
Vanderveken D. Les actes de discours.
Workshop on Distributed AI, Benda M. 1995.
Liège, Pierre Mardaga, 1988.
(Ed.), Boing Computer Services, Orcas Lâasri H., Maître B. et Haton J.-P.
Islands, Seattle, 1989. Vernadat F. et Azemat P. Prototypage
Atome: outil d’aide au développement de
de systèmes d’agents communicants.
Engelmore R. et Morgan T. Blackboard systèmes multi-experts. Actes 6e journées
Premières journées francophones sur
Systems. Addison-Wesley, 1988. sur la reconnaissance des formes et
l’intelligence artificielle distribuée et les
Ferber J. et Carle P. Actors and Agents l’intelligence artificielle (RFIA’87), 749-759,
systèmes multiagents, Toulouse, 1993.
as Reflective Concurrent Objects: a Antibes, 1987.
Weihmayer R. et Brandau R. A
Mering IV Perspective. IEEE Trans on Lalanda P., Charpillet F. et Haton J.-P.
Distributed AI Architecture for Customer
Systems, Man and Cybernetics 21 (6), A Real Time Blackboard Based
Network Control. Globecom’90, San
1991. Architecture. 10th European Conference
Diego, 1990.
Finin T., Fritzson R., McKay D. et on Artificial Intelligence, Vienne, Autriche,
1992. Wittig T., ed. Archon: An Architecture
McEntire R. KQML as an Agent
Communication Language. 3rd Lesser V. R. et Corkill D. D. The for Multi-Agent Systems. Chichester, Ellis
International Conference on Information Distributed Vehicle Monitoring Testbed: Horwood, 1992.
and Knowledge Management (CIKM’94), A Tool for Investigating Distributed Problem Wooldridge M. et Jennings N. Towards
ACM Press, 1994. Solving Networks. AI Magazine 4 (3), a Theory of Cooperative Problem Solving.
Gasser L. Social Conceptions of pp. 15-33, 1983. Maamaw’94, Demazeau Y., Muller J.-P.
Knowledge and Action: DAI Foundations Minsky M. La Société de l’Esprit. Paris, et Perram J. (Ed.), Odense, Danemark,
and Open Systems Semantics. Artificial InterEditions, 1988. 1994.
Intelligence 47 (1-3), 107-138, 1991. Parunak H. V. D. Industrial Applications Yonezawa A., ed. ABCL: An Object-
Gasser L., Braganza C. et Herman N. of MultiAgent Systems. Industrial Technology Oriented Concurrent System. Computer
Mace: a Flexible Testbed for Distributed AI Institute, Rapport de recherche 1993. Systems Series. Cambridge, MA, MIT
Research. In Distributed Artificial Press, 1990.
Rao A. et Georgeff M. Social Plans:
Intelligence, Huhns M. N. (Ed.), 119-152. Preliminary Report. In Decentralized AI 3.
Londres, Pitman, 1987. Proc. of MAAMAW’91, Werner E. et
Giroux S. Agents et systèmes, une Castelfranchi C. (Ed.), 127-146.
nécessaire unité. Thèse de Doctorat, Elsevier/North Holland, 1992.
Université de Montréal, 1993. Sabah G. Caramel: A Computational
Hayes-Roth B. A Blackboard Architecture Model of Natural Language Understanding
for Control. Artificial Intelligence 26 (3), using Parallel Implementation. Proc. of the
251-321, 1985. Ninth European Conference on Artificial
Hayes-Roth B. et Collinot A. A Satisficing Intelligence (ECAI 90), Stockholm, 1990.
Cycle for Real-Time Reasoning in Searle J. R. Speechs Acts. Cambridge,
Intelligent Agents. Expert Systems with Cambridge University Press, 1969.
Applications 7, 31-42, 1993. Searle J. R. Expression and Meaning.
Hewitt C. Viewing Control Structures Cambridge, Cambridge University Press,
as Patterns of Message Passing. Artificial 1979.
Intelligence 8 (3), 323-374, 1977. Shoham Y. Agent Oriented Programming.
Hewitt C. The Challenge of Open Artificial Intelligence 60 (1), 51-92, 1993. * Les ouvrages marqués (Eds.) sont des recueils
Systems. Byte, pp 223-242, 1985. d’articles.