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