La plate-forme SYNERGIC
B.Carpuat, M.P.Gleizes, P.Glize,
A.Machonin, C.Régis, S. Trouilhet
nstitut de Recherche en Informatique
de Toulouse - Equipe SMAC
Université Paul Sabatier
118 Route de Narbonne - 31062 Toulouse Cedex
Contact : glize@irit.fr
Caractéristiques générales
Le système multi-agent générique SYNERGIC a été
conçu par les membres de l'équipe SMAC, dont B.Carpuat, M.P.Gleizes,
P.Glize, A.Machonin, C.Piquemal-Baluard, C.Régis, S. Trouilhet,
dans les années 89-93. Ce système est développé
en C, est opérationnel sur PC sous le système d'exploitation
Windows 3 et Windows 95 et est en accès libre. Il met en oeuvre
une société d'agents qui peut être organisée
de manière hiérarchique ou hétérarchique. Cet
environnement est composé d'un logiciel pour modéliser la
connaissance sur les interactions (le générateur d'accointances),
d'un moteur d'inférences, d'un compilateur des bases de connaissances,
d'une interface homme-machine et d'outils tels que la visualisation de
la trace, la visualisation des résultats d'une session et la visualisation
des connaissances d'un module selon plusieurs points de vue. La connaissance
relative au domaine traité ainsi que la connaissance du contrôle
sont distribuées. En effet, un seul agent est incapable de résoudre
tous les problèmes soumis au système. La distribution de
la connaissance qui permet à un agent, à un instant donné,
en fonction de l'état courant de sa résolution, de pouvoir
interagir directement avec un autre agent en lui communiquant des connaissances
permet d'accroître l'efficacité et la sûreté
de fonctionnement du système.
Plusieurs applications ont été développées
dans l'environnement SYNERGIC:
·Le système EURISKO effectue des recherches
documentaires intelligentes dans des banques de données accessibles
en ligne. Les trois modules de connaissances du domaine permettent d'évaluer
une requête donnée par un utilisateur, de suggérer
des améliorations et de la reformuler. Il comporte aussi deux procédures
d'interfaçage avec les banques de données pour générer
des étapes de recherche et analyser les réponses, et un programme
de dialogue par fenêtres avec l'utilisateur.
·TELEMAC: Système multi-agent d'aide
au recueil sémiologique et à l'approche diagnostique (en
collaboration avec le C.C.M.M.: Centre de Consultations Médicales
Maritimes du C.H.U. de Toulouse).TELEMAC est une application pour
l'aide au diagnostic médical en télémédecine.
Ce système a pour but d'aider des capitaines de bateaux à
effectuer des diagnostics médicaux sur des marins malades ou blessés.
Les agents sont au nombre de douze dont un est un programme d'affichage
d'images et les onze autres sont des modules de connaissances dont
: le module généraliste, fonctions vitales, douleurs thoraciques,
traumatismes thoraciques, douleurs abdominales, pertes de connaissances
brèves et blessures (tête, mains, bras, jambes et dos). Les
modules de connaissances permettent d'établir des diagnostics à
partir d'un ensemble de symptômes dont le recueil suit une démarche
médicale bien précise.
·SEC: Système multi-expert pour la
prévision des crues du bassin de la Garonne. Ce système a
été développé en collaboration entre la Direction
Régionale de l'Environnement de Midi-Pyrénées
et l'Institut de Recherche en Informatique de Toulouse. Le projet SEC apporte
une aide au diagnostic pour la prévision de crues. Il comprend trois
modules de connaissances, deux pour réaliser le diagnostic de la
crue en cours et définir la conduite réglementaire à
tenir et un pour faire de la prévision à moyen terme d'une
crue. Cette prévision emploie des résultats issus d'un agent
procédure dédié au calcul matriciel.
·Un logiciel du jeu le "tileworld". Dans
ce jeu, les agents se déplacent verticalement ou horizontalement
sur un damier 10*10 sur lequel se trouvent des pavés, des trous
et des barrières. Le but du jeu est de combler si possible tous
les trous à l'aide de pavés. L'objectif premier de chaque
agent est de pousser le pavé le plus proche dans le trou le plus
proche. La notion de proximité n?est autre qu?un calcul de distance
euclidienne qui ne tient pas compte des barrières, des autres agents
et des pavés. Nous avons étudié notre méthode
sur 5 scénarios.
- Scénario individualiste. Un agent est seulement intéressé
par ses objectifs individuels.
- Scénario non ambigu. Un agent n'est capable de traiter que les
ambiguïtés.
- Scénario non concurrent. Un agent n'est capable de traiter que
les situations de concurrence.
- Scénario non conflictuel. Un agent n'est capable de traiter que
les conflits.
- Scénario coopération totale. Le niveau de coopération
de chaque agent est optimal.
Modèles multi-agents disponibles
L'agent dispose
de croyances sur son environnement constitué d'autres agents de
l'application (il ne connaît pas nécessairement tous les autres
agents, ni toutes leurs compétences) et de l'extérieur du
système (en général l'utilisateur pour un système
expert). Ces croyances sont représentées par des accointances.
Elles décrivent le graphe des interactions possibles entre les agents,
tout comme les règles d'un système de production décrivent
les interactions entre les objets du domaine d'expertise. Un agent domaine,
outre sa connaissance sur le domaine, détient aussi les connaissances
sur les relations potentielles qu'il peut avoir avec les autres agents.
Elles donnent la sémantique des interactions des agents domaines.
Elles sont représentées de la même manière que
les connaissances du domaine c'est-à-dire qu'elles sont explicites
et sous forme symbolique. Au cours du fonctionnement du système,l'interaction
est complètement gérée par la plate-forme et donc
transparente à l'agent. L'agent ne raisonne pas sur l'organisation
du SMA et n'en a aucune représentation. Tous les agents sont autonomes
(données, traitement, communication), mais cherchent toujours à
avoir des interactions coopératives avec autrui. Le rôle dépend
de la position dans l'organisation et est donc spécifié par
le concepteur grâce aux accointances. Contrairement aux systèmes
de traitement d'informations classiques, il n'y a pas de notion d'appel/retour
systématique lors des communications. Après l'envoi d'un
message, l'agent reprend son traitement sans attendre. Si une synchronisation
est nécessaire, elle s'effectue par la connaissance. Un message
est composé d'informations communes entre l'émetteur et le
destinataire. Chaque information correspond à un des quatre actes
de langage possibles : affirmer, infirmer, demander, ignorer.
L'agent communique spontanément quand son raisonnement est stabilisé.
Un état stable pour la communication se rencontre quand l'agent
se trouve bloqué au cours de son raisonnement parce qu'il a fini
ou qu'il a généré des tâches qu'il ne sait pas
résoudre. Il envoie les messages aux autres agents dans l'ordre
où leurs compétences sont sollicitées dans son raisonnement.
Pendant son raisonnement, l'agent a mémorisé, pour chacune
de ses accointances, tous les faits de communication transmissibles. Après
avoir déterminé tous les faits communicables, l'agent transcrit
chaque élément sous forme symbolique et les marque avec son
état. Pour éviter toute ambiguïté, les messages
sont signés. Les agents de Synergic héritent des mécanismes
de communication. Le concepteur de l'application n'a donc pas à
expliciter à quels moments l'agent doit communiquer et ce qu'il
doit
envoyer. Par
contre, les agents ont besoin d'une représentation des autres agents.
Caractéristiques physiques du
système multi-agents
Les agents d'une même application peuvent être
conçus soit avec les techniques de Synergic, soit réalisés
de manière totalement indépendante. Ainsi, les agents peuvent
être hétérogènes au sein d'une même application.
Leur granularité et leur nombre qui est non limité, sont
fonction de l'application.
* Les agents
qui utilisent les techniques de raisonnement disponibles dans Synergic
sont des modules de connaissances dont la forme externe de la connaissance
correspond à des règles de production. Chaque agent est structuré
en niveaux d'organisation en nombre variable permettant d'exprimer et raisonner
avec des connaissances stratégiques, tactiques et opérationnelles.
L'expression des connaissances est sous forme déclarative.
* Les autres
agents : "agent programme" sont du type boîte noire. La représentation
des problèmes ainsi que les techniques utilisées pour les
résoudre ne sont pas connues de Synergic. Dans cette catégorie
on trouve: des capteurs, des programmes mathématiques, des programmes
d'affichages d'images... Pour un agent programme qui dépend du concepteur,
il n'y a aucune contrainte sur l'expression de la compétence de
l'agent par la plate-forme. La connaissance de l'agent peut être
exprimée de manière procédurale ou déclarative.
Environnement de développement
et environnement d'exécution
L'objet de Synergic est de décharger le concepteur du contrôle
de la résolution du problème. Il n'a pas à expliciter
à quels moments un agent doit être actif et à quels
moments il doit communiquer avec un autre agent. Il doit seulement donner
à un agent, une représentation des autres.
Pour le développement des agents utilisant le moteur d'inférences
de SYNERGIC, le concepteur doit connaître le langage de description
des connaissances. Pour les agents programmes, la compétences de
l'agent est encapsulée automatiquement dans un modèle d'agent
coopératif avec les protocoles d'interactions correspondants.
Pour la mise au point, le concepteur dispose d'un outil de visualisation
de la trace d'exécution des agents et d'un outil de visualisation
sous différents points de vue de la compétence des agents.
Un manuel de description du moteur d'inférences, un manuel d'utilisation
simple et des exemples d'application sont disponibles. Cette plate-forme
dont le développement a débuté à la fin des
années 80 est achevée, et n'est plus maintenue depuis 1993.
Publications
[1]BARTHES C., FRONTIN J., GLIZE P., EURISKO:
An artificial intelligence tool for automatic online information retrivial.,
11th International Oline Information Meeting, London,
December 1987
[2]CANNIZZO-PUYET Patricia, CARPUAT Bernard,
GLEIZES Marie-Pierre, GLIZE Pierre - TELEMAC: Système multi-agent
en télémédecine.- Convention IA 91 - Editions Hermès,
Janvier 1991
[3]CAMPS Valérie, GLEIZES Marie-Pierre
- Attitudes coopératives individuelles pour l'adaptation collective
- Quatrièmes Journées Francophones sur l'Intelligence Artificielle
Distribuée
& Systèmes Multi-Agents,
Editions Hermès, Port Camargue Avril 1996
[4]CARPUAT Bernard, REGIS Christine - SYNERGIC
: A multi-agent environment - DIMAS'95 International Workshop on Decentralized
Intelligent and Multi-agent Systems, Krakow,
Poland, November 1995
[5]DUPOUYET Jean-Pierre, COHEN Pierre, FELIU
Christine, GLIZE Pierre, VIDAL Jean-Jacques - Projet SEC : Système
multi Expert pour la prévision des Crues. Bassin de la Garonne -
Congrès de la Société
Hydrologique de France,Septembre 1994
[6]GLEIZES Marie-Pierre, GLIZE Pierre - Les systèmes
multi-experts Collection Technologie de Pointe, Editions Hermès
1990
[7]GLEIZES Marie-Pierre, TROUILHET Sylvie - Conception
d'un système multi-agent : étude de la coopération
dans SYNERGIC - 8ième Congrès Reconnaissance des Formes et
Intelligence Artificielle,
Lyon - Villeurbanne, Novembre 1991
[8]GLEIZES Marie-Pierre, GLIZE Pierre, TROUILHET
Sylvie - Social knowledge abilities of an agent. Expersys-93, IITT-International,
Paris, December 1993
[9]MAGUES Jean-Philippe, PUJOS Michel, CARPUAT
Bernard, GLIZE Pierre, PUYET Patricia, LARENG Louis - TELEMAC: A multi-agent
system for aided-decision and diagnosis
approach - AAAI Spring symposium
on A.I. in medecine, Standford, USA, Mars 1992
[10]PIQUEMAL-BALUARD Christine, CAMPS Valérie,
GLEIZES Marie-Pierre, GLIZE Pierre - cooperative agents to improve adaptivity
of multi-agent systems - Intelligent Agents
Workshop of the British Computer
Society, Edited by N.S.Taylor and J.L.Nealon, Oxford, November 1995
[11]PIQUEMAL-BALUARD Christine, CAMPS Valérie,
GLEIZES Marie-Pierre, GLIZE Pierre - Properties of individual cooperative
attitude for collective learning - 7th European
Workshop on Modelling Autonomous
Agents in a Multi-Agent World, MAAMAW'96, Position Papers,Eindhoven, Holland,
January 1996
[12]PIQUEMAL-BALUARD Christine, CARPUAT Bernard,
GLIZE Pierre - Principles and development of a medical multi-agent software
- PAAM96, First International Conference and
Exhibition on the Pratical
Application of Intelligent Agents and Multi-agent Technology, London, England,
April 1996