• Aucun résultat trouvé

RIO : d´emarche m´ethodologique de conception de syst`emes multi-agents

La d´emarche que nous proposons avec RIO se d´ecompose en quatre phases (cf. Fig- ure 2.11). Les deux premi`eres concernent des sp´ecifications qui peuvent ˆetre r´eutilis´ees entre diff´erentes applications alors que les deux derni`eres sont a priori propres `a l’application con- sid´er´ee.

La premi`ere phase consiste en l’identification des interactions et des micro-rˆoles qui y prennent part. Le choix de la granularit´e de ces protocoles a un impact sur leur r´eutilisabilit´e. A la fin de cette phase, le concepteur dispose donc d’un ensemble de protocoles d’interaction. De plus, `a chacun des micro-rˆoles sont associ´ees les interfaces de comp´etences n´ecessaires `a l’interaction.

La phase suivante consiste en la d´efinition des rˆoles composites obtenus par agr´egation de micro-rˆoles de diff´erentes interactions. Il s’agit ici d’un regroupement permettant d’exprimer qu’un rˆole donn´e est g´en´eralement impliqu´e dans plusieurs tˆaches. La notion de rˆole composite donne une coh´erence logique entre les micro-rˆoles qui repr´esentent les diff´erentes facettes d’un code. Un micro-rˆole d´efinit donc un rˆole abstrait regroupant un ensemble de micro-rˆoles coh´erents. La troisi`eme phase correspond en la r´eunion des rˆoles composites au sein d’agents ab- straits introduisant ainsi des d´ependances entre ces rˆoles. Il s’agit ici en fait de d´efinir une soci´et´e

35 Bibliographie

Définition de l’occurence des agents abstraits ^

Définition du graphe d’interaction

Choix des implémentations des interfaces de compétences Association entre agents abstraits et agents concrets

Définition d’éléments génériques

Instanciation de la société dans un SMA Spécification des roles composites Spécification des protocoles d’interaction

Pré/Post−conditions sur les messages Informations produites lors du protocole Ontologies des messages échangés Description textuelle de l’objectif du protocole Définition des micro−roles et de leur symbole

Définition des roles composites

Définition des agents abstraits ^

^

^

Interfaçage micro−role/interface de compétence^

Spécification d’une société d’agents Définition du système multi−agents abstrait

Transformation de message pour l’adapter à l’interface

Association roles abstraits et organisations

Figure 2.11: La d´emarche m´ethodologique RIO

abstraite d’agents ou, en plus de ces patrons d’agents, on pr´ecise la cardinalit´e de ces agents et la structure organisationnelle retenue, ce qui revient `a choisir le mod`ele d’accointance.

Enfin, il faut d´eployer la soci´et´e d’agents. Les agents abstraits sont alors projet´es sur les agents concrets du syst`eme en respectant les arit´es d´efinies. C’est ´egalement lors de cette quatri`eme phase qu’est r´ealis´ee la liaison entre une interface de comp´etences et sa r´ealisation.

La Figure 2.12 reprend l’ensemble de ce processus illustr´e par un rapide exemple. En adoptant les principes de la programmation orient´ee interactions et en proposant un mod`ele de sp´ecifications ex´ecutables des protocoles d’interaction, RIO propose une m´ethodologie pour la r´ealisation d’applications multi-agents distribu´ees. Le principal apport est de donner au concepteur une vue globale de chaque interaction tout en laissant au syst`eme le travail de pro- jection de cette vue globale sur l’ensemble des vues locales des diff´erentes entit´es. La d´emarche propos´ee permet ´egalement une construction incr´ementale des syst`emes multi-agents applicatifs puisque, de mˆeme que notre agent g´en´erique peut se voir enrichi de nouvelles comp´etences, le syst`eme peut ˆetre enrichi par des interactions.

Bibliographie

Adam, E.; and R. Mandiau. 2005. “Roles and hierarchy in multi-agent organizations,” in Pro- ceedings of Multi-Agent Systems and Applications IV, 4th International Central and Eastern European Conference on Multi-Agent Systems, CEEMAS 2005, ed. by M. Pechoucek, P. Petta,

AC 2 µ32 µ23 µ22 µ12 µ11 µ21 µ31 ι1 ι2 ι3 x ι µxy Distribution de fournitures Recherche de fournisseurs Magasinier Acheteur Fournisseur Client

Réception des feuilles de frais

Guichetier Missionnaire

Emission des ordres de missions

Directeur Secrétaire Président

Gestion de fournitures Gestion des frais de mission Magasinier Distribution de fournitures ( ) , Acheteur Recherche de fournisseurs ( ) , (Secrétaire,

Emission des ordres de missions)

Guichetier

( ,

Réception des feuilles de frais) µ21ι2 ( , ) µ32ι3 ( , ) µ12ι1 ( , ) µ11ι1 ( , ) µ23ι2 ( , ) µ31ι3 ( , ) µ22ι2 ( , ) RC : Role Composite RC 1 RC 2 RC 3 RC 1 RC 3 AA 1 RC 2 AA2 AA : Agent Abstrait AA 1 AA2 AA2 AC 1 AC 3 AC 2 AC : Agent Concret

Gestion des frais de missions

Gestion de fournitures

Secrétaire de laboratoire AC 1 : Protocole d’Interaction : Micro−Role

Secrétaire de laboratoire

Figure 2.12: Synth`ese de la d´emarche RIO mise en parall`ele avec l’exemple d’un agent “secr´etaire de laboratoire” impliqu´e dans la gestion de fourniture et celle des frais de mission.

Adam, E.; R. Mandiau; andC. Kolski. 2001. “Application of a holonic multi-agent system for cooperative work to administrative processes,” Journal of Applied Systems Studies, 2, 110–115. Bensaid, N.. 1999. “MAGIQUE, une architecture multi-agents hi´erarchique,” Ph.D. thesis, Uni-

versit´e des Sciences et Technologies de Lille.

Bensaid, N.;andP. Mathieu. 1995. “Un mod`ele d’architecture multi-agents enti`erement ´ecrit en Prolog,” in IV Journ´ees Francophones de Programmation Logique, JFPL’95, 381–385, Dijon- France. teknea, Toulouse-France.

Bensaid, N.;andP. Mathieu. 1997a. “A Hybrid and Hierarchical Multi-Agent Architecture Model,” in Proceedings of PAAM’97, 145–155.

Bensaid, N.;andP. Mathieu. 1997b. “A Hybrid Architecture for Hierarchical Agents,” in Proceed- ings of International Conference on Computationnal Intelligence and Multimedia applications, ICCIMA’97, 91–95.

Clement, R.. 2000. “To Buy or to Contract Out: Self-Extending Agents in Multi-Agent Systems,” in SOMAS: A Workshop on Self Organisation in Multi Agent Systems.

da Silva, J. T.;andY. Demazeau. 2002. “Vowels Co-ordination Model,” in Proceedings of the 1st International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS‘02), 1129–1136.

37 Bibliographie

Ferber, J.;andO. Gutknecht. 1998a. “A meta-model for the analysis and design of organizations in multi-agent systems,” in Proceedings of ICMAS’98.

Ferber, J.;andO. Gutknecht. 1998b. “A meta-model for the analysis and design of organizations in multi-agent systems,” in Proceedings of ICMAS’98.

Ferber, J.; O. Gutknecht; andF. Michel. 2000. “The MadKit Agent Platform Architecture,” Dis- cussion paper, W3C.

Franklin, S.; andA. Grasser. 1996. “Is it an Agent, or just a Program?: A Taxonomy for Au- tonomous Agent,” in Proceedings of the 3rd International Workshop on Agent Theories, Archi- tectures, and Languages. Springer-Verlag.

Gerber, C.; J. Siekmann;andG. Vierke. 1999. “Holonic Multi-Agent Systems,” Discussion paper, DFKI GmbH.

Ghanea-Hercock, R.. 2000. “Spontaneous Group Formation in Multi-Agent Systems,” in SOMAS: A Workshop on Self Organisation in Multi Agent Systems.

Guessoum, Z.. 1996. “Environnement de d´eveloppement et de conception de syst`emes multi- agents,” Ph.D. thesis, Universit´e de Paris 6.

Horling, B.;andV. Lesser. 1998. “A Reusable Component Architecture for Agent Construction,” Discussion paper, UMass Computer Science.

Huget, M.-P.. 2001. “Une ing´enierie des protocoles d‘interaction pour les SMA,” Ph.D. thesis, Universit´e de Paris 9.

Jennings, N.; and M. Wooldridge. 2000. Handbook of Agent Technologychap. Agent-Oriented Software Engineering. AAAI/MIT Press.

J.Ferber; O. Gutknecht; andF. Michel. 2000. “MadKit: une plate-forme multi-agent g´en´erique,” Discussion paper, FIPA.

Kinny, D.; M. Georgeff;andA. Rao. 1996. “A Methodology and Modelling Technique for Systems of BDI Agents,” Discussion paper, Australian AI Institute.

Labrou, Y.;andT. W. Finin. 1994. “A Semantics Approach for KQML - A General Purpose Com- munication Language for Software Agents,” in CIKM, 447–455.

Mathieu, P.; J. Routier;andY. Secq. 2002a. “Dynamic Organization of Multi-Agent Systems,” in Proceedings of the AAMAS’02 Conference, 451–452.

Mathieu, P.;andJ.-C. Routier. 2000-2001. “Tutoriel de Magique,” Equipe SMAC - LIFL.

Mathieu, P.; andJ.-C. Routier. 2001. “Une contribution du multi-agent aux applications de tra- vail coop´eratif,” TSI Herm`es Science Publication. R´eseaux et Syst`emes R´epartis. Calculateurs Parall`eles., 13. Num´ero sp´ecial t´el´e-applications, 207–226.

Mathieu, P.;andJ.-C. Routier. 2002. “A Multi-Agent Approach to Co-operative Work,” in Pro- ceedings of CADUI’02, ed. by C. Kolski, andJ. Vanderdonckt, 367–380. Kluwer Academics Press.

Mathieu, P.; J.-C. Routier; and Y. Secq. 2001. “Dynamic Skill Learning: A Support to Agent Evolution,” in Proceedings of AISB’01, 25–32.

Mathieu, P.; J.-C. Routier;andY. Secq. 2002b. “Principles for dynamic multi-agent organizations,” in Proceedings of 5th Pacific Rim International Workshop on Multi-Agents. PRICAI2002- PRIMA2002, ed. by K. Kuwabara,andJ. Lee, vol. 2413 of LNAI, 109–122. Springer-Verlag. Mathieu, P.; J.-C. Routier;andY. Secq. 2002c. “RAGE: An agent framework for easy distributed

computing,” in Proceedings of AISB’02, 20–24.

Mathieu, P.; J.-C. Routier;andY. Secq. 2002d. “Using agents to build a distributed calculus frame- work,” The Interdisciplinary Journal of Artificial Intelligence and the Simulation of Behaviour, 1(2), 197–208.

Mathieu, P.; J.-C. Routier; andY. Secq. 2003a. “RIO: R ˆoles, Interactions et Organisations,” in Actes des Secondes Journ´ees Francophones sur les Mod`eles Formels de l’Interaction, MFI’03, ed. by A. Herzig, B. Chaib-draa,andP. Mathieu, 179–188.

Mathieu, P.; J.-C. Routier; and Y. Secq. 2003b. “Runnable specifications of interactions proto- cols for open multi-agent systems,” in Proceedings of the 2003 International Conference on Information and Knowledge Engineering, IKE’03, ed. by N. Goharian, vol. II, 431–437. Mathieu, P.; J.-C. Routier;andY. Secq. 2003c. “RIO: Roles, Interactions and Organizations,” in

Proceedings of the 3rd International/Central and Eastern European Conference on Multi-Agent Systems, CEEMAS 2003, ed. by V. Marik, J. M¨uller,andM. Pechoucek, 147–157.

Occello, M.; andJ.-L. Koning. 2000. “Multiagent oriented software engineering: An approach based on model and software reuse.,” in Proceedings of Second International Symposium “From Agent Theory to Agent Implementation”, 25–28.

Odell, J.; H. Parunak;andB. Bauer. 2000. “Extending UML for Agents,” . Petrie, C.. 2001. “Agent-Oriented Software Engineering,” Lecture Notes in AI.

Ricordel, P. M.. 2001. “Programmation Orient´ee Multi-Agents :D´eveloppement et D´eploiement de Syst`emes Multi-Agents Voyelles,” Ph.D. thesis, Institut National Polytechnique de Grenoble. Ricordel, P.-M.;andY. Demazeau. 2002. “VOLCANO : a vowels-oriented multi-agent platform.,”

in Proceedings of the International Conference of Central Eastern Europe on Multi-Agent Sys- tems (CEEMAS‘01), From Theory to Practice in Multi-Agent Systems, 252–262.

Secq, Y.. 2 d´ecembre 2003. “RIO : R ˆoles, Interactions et Organisations, une m´ethodologie pour les syst`emes multi-agents ouverts,” Ph.D. thesis, Universit´e des Sciences et Technologies de Lille, Co-dirig´ee avec le Professeur Philippe Mathieu.

Shoham, Y.. 1993. “Agent-Oriented Programming,” Artificial Intelligence, 60, 51–92.

Singh, M. P.. 1996. “Toward Interaction-Oriented Programming,” Discussion Paper TR-96-15, Department of Computer Science, North Carolina State University.

Travers, M.. 1996. “Programming with Agents: New metaphors for thinking about computation,” Ph.D. thesis, MIT.

39 Bibliographie

Wooldridge, M.; N. Jennings; andD. Kinny. 2000. “The Gaia Methodology for Agent-Oriented Analysis and Design,” Journal of Autonomous Agents and Multi-Agent Systems.

41

Chapitre 3

CoCoA : simulation de comportements

rationnels.

Mon second projet au sein de l’´equipe SMAC est le projet COCOA, pour Collaborative Cognitive Agents. Ce projet est n´e `a l’occasion d’un contrat PRIAMM avec la soci´et´e ´editrice de jeux vid´eos Cryo Interactive.

Son objectif est la proposition d’un mod`ele permettant la simulation de comportements rationnels pour des agents ´evoluant dans des environnements situ´es. Mod´eliser des comportements r´ealistes devient tr`es d´elicat d`es que les interactions deviennent complexes. Il est notamment dif- ficile de r´eutiliser (au sens du G´enie Logiciel) les interactions ant´erieurement d´efinies et difficile d’adapter le comportement de l’agent aux changements externes (l’environnement) et internes (les capacit´es de l’agent). Il devient alors capital de s´eparer le mod`ele d’interactions des interac- tions elles-mˆemes. L’int´erˆet du monde des jeux vid´eo pour une telle th´ematique est ´evidemment d’accroitre le r´ealisme des univers de jeux. Les entit´es qui y apparaissent doivent manifester des comportements les plus r´ealistes possibles. Cependant, cette probl´ematique ne se limite pas aux jeux vid´eo mais concerne en fait les simulations dans lesquelles la notion de comportement in- dividuel a un sens et les simulations centr´ees individus en g´en´eral. Les domaines d’application sont multiples, que ce soit des applications ´educatives, le cin´ema, ou les simulations de situations d’urgence (Querrec, Reignier, and Chevaillier 2001).

D’autres projets internationaux effectuent des travaux similaires sur les comportements d’agents pour les jeux vid´eos. On peut notamment citer les projets Excalibur (Nareyek 2000), Soar (Laird and Duchi 2000, Laird and Rosenbloom 2005) et Cog (Brooks and al. 1999). Cependant, l’arrˆet du premier vient d’ˆetre annonc´e, le second a une approche plus r´eactive et proche de celles des scripts, enfin l’objectif du troisi`eme est autre, plus ambitieux et `a nettement plus long terme, puisqu’il vise `a construire un robot humano¨ıde intelligent. Notre approche est cognitive. L’objectif de nos travaux est d’offrir un outil de mod´elisation g´en´erique de comportements d’agents pour les concepteurs de simulations en insistant sur la s´eparation du d´eclaratif et du proc´edural pour une meilleure r´eutilisabilit´e. Nous nous attachons notamment `a rendre le moteur comportemental de l’agent ind´ependant des interactions que celui-ci peut ˆetre amen´e `a ex´ecuter.

Dans le cadre de ce travail, nous avons conc¸u un mod`ele original bas´e sur une dualit´e des interactions possibles entre les agents. Celui-ci offre une grande diversit´e de type d’agents, et un comportement adaptatif en fonction de leur environnement et de leur capacit´e. Un syst`eme de planification est fourni `a chaque agent pour d´ecider de l’action `a effectuer en fonction du contexte.

Notre travail a abouti `a la r´ealisation d’une plate-forme logicielle op´erationnelle qui nous permet maintenant de concevoir des applications de simulation avec des interactions complexes. Plus r´ecemment nous avons ´egalement orient´e nos travaux sur la gestion d’´equipes d’agents rationnels. Enfin, pr´ecisons que ce qui nous int´eresse est l’ex´ecution de la simulation et non son r´esultat. Ainsi, `a la diff´erence de simulations bas´ees sur des ´equations math´ematiques, nous ne cherchons pas `a connaˆıtre l’´etat d’un syst`eme `a l’issue de la simulation mais nous voulons exam- iner le d´eroulement de la simulation “pas `a pas”. Ce sont les comportements individuels des agents qui sont simul´es et la simulation r´esulte de la somme de ces comportements observ´es. Il s’agit donc de simulations centr´ees-individus. Un telle approche permet des applications diff´erentes des si- mulations orient´ees “population” ou de celles o`u ce sont les interactions sociales qui sont ´etudi´ees (Deffuant, Ferrand, Bernard, and Azembourg 1999). De plus, la progressivit´e de leur d´eroulement permet d’apporter un niveau explicatif au r´esultat de la simulation dans la mesure o`u la simulation peut ˆetre suivie action par action, et donc justifi´ee pas `a pas.

Je commencerai par discuter de la position de cette th´ematique par rapport `a sa moti- vation initiale qui est celle des jeux vid´eos et des probl´ematiques de ce domaine. Je pr´esenterai ensuite notre proposition bas´ee sur les interactions avant de d´ecrire le moteur comportemental des agents impliqu´es dans les simulations. Je parlerai ensuite d’´equipes d’agents qui s’appuient sur les mˆemes concepts.

3.1

Simulation de comportements et jeux vid´eos

Le monde du jeu vid´eo est confront´e aux probl`emes pos´es par la simulation de com- portements de types humains. Il est largement accept´e que l’Intelligence Artificielle est le nouveau challenge des jeux vid´eos apr`es que le graphisme ait occup´e ces derni`eres ann´ees l’essentiel des ressources R&D de cette industrie. Aux difficult´es scientifiques et techniques dues `a l’Intelligence Artificielle viennent s’ajouter des contraintes ´economiques. Il s’agit essentiellement du temps requis pour le d´eveloppement des jeux. Celui-ci d´epend dans une large mesure de la possibilit´e de r´eutiliser des ´el´ements issus de r´ealisations pr´ec´edentes. L’apparition de moteurs graphiques et physiques ont permis cela pour le d´eveloppement des parties visuelles des jeux. Dans le cas de l’intelligence artificielle des personnages, les techniques employ´ees jusque maintenant rendent difficiles, voire impossible, cette r´eutilisation.

La recherche en intelligence artificielle a, elle aussi, `a gagner de cet int´erˆet du monde du jeu vid´eo. Le poids ´economique de cette industrie en fait un domaine d’application pouvant justifier `a lui seul cette recherche. Il suffit de regarder combien l’informatique graphique a pu en profiter ces derni`eres ann´ees pour s’en convaincre. L’int´erˆet pour l’intelligence artificielle n’est pas seulement ´economique, les jeux vid´eos constituent en effet un champ d’exp´erimentation id´eal pour la simulation de comportements rationnels. Selon John Laird, ils constituent mˆeme la “killer application” pour le d´eveloppement d’une IA de type humain (Laird and van Lent 2000). Les personnnages non joueurs impliqu´es dans les jeux vid´eos doivent en effet ˆetre perc¸us comme des entit´es autonomes offrant des comportements de plus en plus r´ealistes. Les comportements propos´es doivent correspondre `a ce qu’attend le partenaire ou adversaire humain. Les personnages virtuels doivent pouvoir s’adapter au contexte et aux nouvelles situations rencontr´ees. De plus, ceux-ci doivent tenir compte des autres entit´es du jeux et la mise en place de strat´egies d’´equipes est souvent utile. Dans cette optique, les agents doivent amener l’observateur humain `a penser

43 Approche et contexte – Section 3.2

qu’ils se comportent de mani`ere intelligente et rationnelle, c’est-`a-dire comme un humain aurait pu se comporter dans une situation similaire pour accomplir ses propres buts. L’objectif ultime est que dans un contexte o`u se m`elent les joueurs humains et virtuels, il ne soit pas possible de faire la diff´erence entre eux. On arriverait ainsi `a une satisfaction partielle du test de Turing. Notamment, un des avantages apport´es par les jeux est qu’ils proposent des contextes dans lesquels la r´ealit´e est simplifi´ee. Les mondes simul´es r´eduisent ainsi les comportements possibles et les choix offerts aux personnages `a chaque instant simplifiant la tˆache qui autrement serait inabordable `a moyenne ´ech´eance. En ce sens, si test de Turing il y a, il s’agit bien d’un test d´egrad´e.

Un certain nombre de propositions ont ´et´e faites concernant les jeux vid´eos et les agents (Nareyek 2004) mais la plupart concernent des agents r´eactifs (Nareyek 1998). Si ils constituent une r´eponse possible `a la simulation de comportements, les agents r´eactifs offrent cependant des comportements limit´es influenc´es essentiellement par le court terme plutˆot que par des buts. Leur capacit´e `a r´ealiser des tˆaches d´epend de leur environnement imm´ediat plus que d’une r´eelle volont´e. De plus, dans le cadre des jeux vid´eos, ces comportements r´eactifs sont quasi syst´ema- tiquement mis en place `a l’aide de scripts. Les d´efauts de cette approche sont reconnus et ont ´et´e souvent soulign´es (Tozour 2002). Les comportements qu’ils permettent sont le plus souvent trop fig´es et peu adaptatifs. Mˆeme si certains essaient de contourner leurs d´efauts (Ponsen and Spronck 2004), les am´eliorations apport´ees ne sont que partielles. De plus l’utilisation des scripts est une des raisons principales pour laquelle il est quasiment impossibles de r´eutiliser des ´el´ements de simulation de comportements d’un jeu vers un autre. Au contraire, notre proposition, que je d´etaillerai par la suite, se base sur des agents proactifs, cognitifs, dirig´es par des buts.

Le fait que cette th´ematique se trouve au confluent de plusieurs domaines dont elle cu- mule les probl`emes constitue d´ej`a en soi une difficult´e. D’une part on trouve des pr´eoccupations de l’IA “classique” telle que la repr´esentation de la connaissance et sa manipulation, ainsi que la construction de plans d’actions. D’autre part, la naturelle concurrence des mondes simul´es ainsi que la n´ecessit´e de mettre en place des situations de coordination entre agents et des strat´egies d’´equipes am`ene `a consid´erer les probl`emes de l’IA distribu´ee. Enfin, les pr´eoccupations de g´enie logiciel doivent ˆetre pr´esentes afin de permettre une r´eutilisabilit´e des diff´erents ´el´ements de com- portements entre diff´erentes simulations.

Documents relatifs