You are on page 1of 69

Apprentissage de la coordination entre agents dans un environnement temps-r´el complexe e

Proposition de th`se e

Par :

S´bastien Paquet e

Directeur : Professeur Brahim Chaib-draa

Comit´ d’encadrement : e Professeur Bernard Moulin Professeur Guy Mineau

D´partement d’informatique et de g´nie logiciel e e Universit´ Laval, Ste-Foy, Qu´bec, Canada e e Mai 2003

Table des mati`res e
1 Introduction 1.1 Coordination dans les syst`mes multiagents . . . . . . . . e 1.1.1 Avantages de la coordination . . . . . . . . . . . . 1.1.2 Apprentissage de la coordination . . . . . . . . . . 1.1.3 Comment atteindre une bonne coordination . . . . 1.2 La probl´matique . . . . . . . . . . . . . . . . . . . . . . e 1.3 RoboCup . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 La f´d´ration RoboCup . . . . . . . . . . . . . . . . e e 1.3.2 Environnement de simulation de la RoboCupRescue 1.3.2.1 Agents . . . . . . . . . . . . . . . . . . . . 1.3.2.2 Complexit´ de l’environnement . . . . . . e 1.3.3 Banc d’essai pour l’apprentissage de la coordination 1 1 2 3 4 4 6 7 7 8 10 13 15 15 18 18 19 19 20 20 21 22 22 22 23 23 25 26 27 29 31 33

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

´ 2 Etat de l’art sur l’apprentissage de la coordination 2.1 Apprentissage de la coordination par renforcement . . . . . . . . . . . . . 2.1.1 Environnements de tests de type jeu . . . . . . . . . . . . . . . . 2.1.1.1 Processus de d´cision de Markov multiagent . . . . . . . e 2.1.1.2 Fusion dynamique de MDP . . . . . . . . . . . . . . . . 2.1.1.3 Approche bay´sienne pour la coordination . . . . . . . . e 2.1.1.4 Modification de la fonction d’estimation . . . . . . . . . ´ 2.1.2 Emergence de la coordination . . . . . . . . . . . . . . . . . . . . 2.1.2.1 Apprentissage par renforcement de mani`re incr´mentielle e e 2.1.2.2 Tˆche commune et renforcement global . . . . . . . . . . a 2.1.2.3 Apprentissage isol´ et concurrent . . . . . . . . . . . . . e 2.1.2.4 Apprentissage sans communication . . . . . . . . . . . . 2.1.2.5 Observation des r´compenses des autres agents . . . . . e 2.1.3 Partage de perceptions ou d’exp´riences . . . . . . . . . . . . . . e 2.1.4 Autres approches . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Apprentissage de la coordination a partir d’une trace . . . . . . . . . . . ` 2.2.1 Apprentissage de r`gles a partir de situations d’´checs . . . . . . . e ` e 2.2.2 Apprentissage a base de cas a partir de situations de succ`s . . . . ` ` e 2.3 Autres m´thodes d’apprentissage . . . . . . . . . . . . . . . . . . . . . . e 2.4 Limitations des approches actuelles . . . . . . . . . . . . . . . . . . . . . i

2.4.1 2.4.2 2.4.3

Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . Mod`les des autres agents . . . . . . . . . . . . . . . . . . . . . . e Connaissance de l’environnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33 34 35 36 37 38 39 41 44 46 47 47 49 50 51 51 52 54 54 56 57

3 Approches propos´es e 3.1 Apprendre a communiquer efficacement . . . . . . . ` 3.1.1 Enregistrement de la trace . . . . . . . . . . 3.1.2 Rencontre . . . . . . . . . . . . . . . . . . . 3.1.3 Utilisation des informations apprises . . . . 3.2 Apprentissage de l’environnement . . . . . . . . . . 3.3 Anticipation . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Interactions des agents avec l’environnement 3.3.2 Apprentissage de mod`les des autres agents e 3.4 Contributions anticip´es . . . . . . . . . . . . . . . e 4 Plan de travail pour la th`se e 4.1 Travaux effectu´s . . . . . . e ´ 4.1.1 Etude th´orique . . . e 4.1.2 Impl´mentation . . . e 4.1.3 R´sum´ . . . . . . . e e 4.2 Travaux futurs . . . . . . . 4.3 Plan de la th`se . . . . . . . e 5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

ii

Table des figures
1.1 3.1 4.1 Organisation des communications. . . . . . . . . . . . . . . . . . . . . . . Illustration des communications entre les agents lors de l’´valuation de e l’utilit´ d’un message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e Plan de travail. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 40 55

iii

Liste des tableaux
1.1 1.2 3.1 3.2 4.1 Comparaison des caract´ristiques des environnements de la RoboCupRese cue et de la RoboCup Soccer [Kitano, 2000]. . . . . . . . . . . . . . . . . Nombre maximal de messages. . . . . . . . . . . . . . . . . . . . . . . . . Exemple de tableau utilis´ pour enregistrer le nombre de messages re¸us e c Exemple de tableau utilis´ pour enregistrer le nombre de routes visit´es . e e Pointage lors des qualifications. . . . . . . . . . . . . . . . . . . . . . . . 12 13 43 46 53

iv

Liste des Algorithmes
3.1 3.2 Algorithme utilis´ pour calculer l’utilit´ d’un message. . . . . . . . . . . . e e Algorithme utilis´ pour calculer l’utilit´ d’un message pour le r´cepteur e e e et mettre a jour la base de connaissances de ce dernier. . . . . . . . . . . ` 41 44

v

Chapitre 1 Introduction
Les syst`mes multiagents coop´ratifs dans lesquels les agents doivent interagir ene e semble pour accomplir leurs buts est un domaine de recherche tr`s actif. Une difficult´ e e fondamentale rencontr´e par ces agents est de savoir comment coordonner efficacement e leurs actions de mani`re a pouvoir b´n´ficier les uns des autres au lieu de se nuire. Lorse ` e e qu’on consid`re les syst`mes multiagents complexes, avec plusieurs agents et plusieurs e e interactions entre eux, la solution qui consiste a d´finir des politiques de coordination ` e a priori devient vite tr`s difficile, voir mˆme impossible dans certains cas. Dans de e e telles circonstances, l’apprentissage devient int´ressant, car il soulage le concepteur du e syst`me de la tˆche fastidieuse de pr´voir des politiques de coordination pour toutes e a e les situations possibles. Si les agents peuvent apprendre a am´liorer la coordination ` e de leurs actions en interagissant avec les autres, alors ils peuvent s’adapter aux situations changeantes de l’environnement et aux diff´rentes dynamiques de groupe. Dans e cette proposition, l’apprentissage est consid´r´ de la mˆme fa¸on que Russel et Noree e c vig [Russel and Norvig, 2003], c’est-`-dire comme ´tant tout processus modifiant les difa e f´rentes composantes d’un agent de mani`re a ce qu’elles soient mieux align´es avec les e e ` e retours d’informations de l’environnement, am´liorant ainsi la performance globale de e l’agent.

1.1

Coordination dans les syst`mes multiagents e

La coordination est un concept qui est souvent utilis´ et, par cons´quent, compris par e e la majorit´ des gens. On sait reconnaˆ une situation o` il y a une bonne coordination, e ıtre u mais on sait surtout reconnaˆ ıtre l’absence de coordination. Par exemple, on se rend compte du manque de coordination que lorsqu’on doit en subir les cons´quences, comme e une collision ou un retard. La coordination peut ˆtre d´finie comme le processus g´rant e e e les d´pendances entre diff´rentes activit´s [Malone and Crowston, 1994]. Par cons´quent, e e e e s’il n’y a aucune d´pendance entre les activit´s des agents, il n’y a aucune raison de tenter e e 1

1.1. Coordination dans les syst`mes multiagents e

2

de les coordonner. Les agents peuvent alors agir ind´pendamment les uns des autres. e Toutefois, dans la majorit´ des syst`mes multiagents, il existe plusieurs interd´pene e e dances entre les buts des agents, leurs capacit´s et les ressources qu’ils utilisent, donc e la coordination devient tr`s importante. Pour r´soudre des probl`mes de coordination e e e efficacement, un agent doit pouvoir r´pondre a cette question : « Quelle est la meilleure e ` mani`re de coordonner mes efforts avec ceux des autres pour r´aliser mes buts et ceux e e de la collectivit´ ? ». e En d’autres mots, on peut voir la coordination comme ´tant le processus qui fait en e sorte que les agents agissent ensemble tout en b´n´ficiant les uns des autres au travers e e d’interactions positives (une certaine tˆche favorisant ou am´liorant une autre tˆche), a e a au lieu de se nuire au travers d’interactions n´gatives (une tˆche empˆchant ou bloquant e a e une autre tˆche) [Paquet, 2001]. a

1.1.1

Avantages de la coordination

Il convient de noter qu’il existe plusieurs avantages a favoriser la coop´ration dans ` e un syst`me multiagent. Selon Durfee et Lesser [Durfee and Lesser, 1989], il existe quatre e buts g´n´riques pour ´tablir la coop´ration dans un groupe d’agents : e e e e 1. augmenter le taux de r´ussite des tˆches grˆce au parall´lisme ; e a a e 2. augmenter le nombre de tˆches r´alisables grˆce au partage de ressources (infora e a mation, expertise, dispositifs physiques, etc.) ; 3. augmenter les chances de finaliser des tˆches en les dupliquant et en utilisant ´vena e tuellement des modes de r´alisation diff´rents ; e e 4. diminuer les interf´rences entre les tˆches en ´vitant les interactions n´gatives. e a e e Ceci vient appuyer le fait que la coop´ration est une caract´ristique tr`s int´ressante e e e e au niveau d’un groupe d’agents. Pour b´n´ficier toutefois des avantages d’une telle coe e op´ration, les agents doivent bien se coordonner entre eux, sinon la coop´ration perd e e toute sa raison d’ˆtre. L’atteinte d’une bonne coordination a l’int´rieur d’un syst`me e ` e e multiagent peut ˆtre tr`s int´ressante dans les cas suivants [Nwana et al., 1996] : e e e – Pr´venir l’anarchie ou le chaos. G´n´ralement, dans un syst`me multiagent, les e e e e agents ont une vue locale, des buts locaux et une connaissance locale pouvant ˆtre en conflit avec les connaissances, les vues et les buts des autres agents. Pour e ´viter ces conflits ou r´gler les conflits existants, les agents doivent coordonner e e leurs activit´s de mani`re a r´aliser leurs buts le plus efficacement possible. Sans e e ` e coordination, les b´n´fices d’un groupe d’agents disparaissent et la communaut´ e e e peut d´g´n´rer rapidement en une collection chaotique d’individus. e e e – Expertises, ressources ou informations distribu´es. Dans un syst`me multiagent, e e les agents peuvent avoir diff´rentes capacit´s et/ou diff´rentes connaissances sp´e e e e cialis´es. Ils peuvent ´galement avoir diff´rentes sources d’information, diff´rentes e e e e

1.1. Coordination dans les syst`mes multiagents e

3

ressources (par exemple, puissance de traitement, m´moire, etc.), diff´rentes rese e ponsabilit´s, diff´rentes limitations, diff´rents coˆts de service, etc. Dans ces cas, les e e e u agents doivent donc coordonner leurs activit´s pour pouvoir b´n´ficier efficacement e e e des capacit´s des autres agents. e

1.1.2

Apprentissage de la coordination

Les solutions aux probl`mes de coordination peuvent ˆtre divis´es en trois classes e e e g´n´rales [Boutilier, 1996] : celles bas´es sur la communication, celles bas´es sur des e e e e conventions et celles bas´es sur l’apprentissage. Les agents peuvent communiquer ene semble pour d´terminer l’allocation des tˆches. Ils peuvent aussi utiliser des conventions e a impos´es au syst`me par le concepteur pour assurer une action conjointe optimale. Fie e nalement, ils peuvent apprendre des politiques de coordination (ou conventions) lors de leurs interactions r´p´t´es avec les autres agents. e ee Dans les environnements o` les communications sont limit´es et incertaines, les apu e proches bas´es sur la communication ne sont pas vraiment appropri´es. Dans de tels ene e vironnements, la quantit´ d’informations que l’on peut transmettre est limit´e et certains e e messages peuvent ne jamais se rendre a leur destinataire. Par cons´quent, les approches ` e fortement bas´es sur les communications risquent d’ˆtre inefficaces, car les agents basent e e leur coordination sur des communications incertaines. La deuxi`me approche consiste a d´finir toutes les conventions de coordination a e ` e priori. C’est une bonne m´thode pour attaquer rapidement un probl`me. Elle est simple e e et rapide a appliquer, car le concepteur n’a qu’` d´finir toutes les r`gles de coordination ` a e e lui-mˆme. Le probl`me ne vient pas de la complexit´ de d´finir des r`gles, mais de la e e e e e quantit´ de r`gles n´cessaires pour obtenir une bonne coordination dans toutes les situae e e tions possibles. Dans des environnements complexes, le nombre de situations possibles est immense et, par le fait mˆme, le nombre de r`gles de coordination devient lui aussi e e tr`s grand. Par ailleurs, cette approche n’offre pas une grande flexibilit´, car si l’envie e ronnement change, les r`gles doivent ˆtre ajust´es manuellement. La tˆche peut devenir e e e a rapidement fastidieuse si on a beaucoup de r`gles a maintenir et a ajuster manuellement. e ` ` Chaque changement mineur dans l’environnement peut donc demander un ´norme travail e d’ajustement des r`gles. e La troisi`me approche, quant a elle, permet de r´duire le nombre de r`gles que le e ` e e concepteur doit ´crire en utilisant des techniques d’apprentissage. Ainsi, le concepteur n’a e pas a d´finir toutes les proc´dures de coordination pour toutes les situations possibles. Par ` e e ailleurs, une approche bas´e sur l’apprentissage permet d’obtenir un syst`me multiagent e e pouvant s’adapter graduellement aux changements de l’environnement. L’apprentissage de la coordination est tr`s important pour des agents ´voluant dans e e des environnements complexes et dynamiques, car de tels agents doivent pouvoir s’adap-

1.2. La probl´matique e

4

ter a des demandes et a des opportunit´s changeantes [Sen and Weiss, 2000]. Plus parti` ` e culi`rement, chaque agent doit pouvoir interagir avec d’autres agents ayant des habilit´s, e e des fa¸ons de raisonner et des buts diff´rents. Pour pouvoir fonctionner efficacement, les c e agents doivent donc pouvoir apprendre a connaˆ ` ıtre les autres agents et adapter leur comportement local selon la composition et les interactions du groupe.

1.1.3

Comment atteindre une bonne coordination

L’atteinte d’une bonne coordination entre les agents dans un syst`me multiagent n’est e pas une tˆche ais´e. Une des difficult´s est que chaque agent doit agir en se basant sur a e e une vue locale de la situation, ce qui peut l’amener a prendre de mauvaises d´cisions, par ` e exemple sur des sujets comme : le r´sultat qu’il devrait transmettre aux autres agents et e le r´sultat qu’il devrait demander aux autres agents. Si un agent avait des informations e sur les activit´s des autres agents, il pourrait prendre des d´cisions plus ´clair´es. En fait, e e e e mˆme avec une connaissance des activit´s des autres agents, il reste encore de l’incertain e e a propos du r´sultat des actions et des tˆches a effectuer par le syst`me. De plus, toute ` e a ` e cette recherche d’informations sur les activit´s des autres agents demande des efforts de e la part des agents : transmettre des donn´es, g´rer les messages re¸us, tenir compte des e e c d´lais de communication, etc. e Parfois, il se peut qu’il soit plus avantageux que les agents n’essaient pas de communiquer entre eux pour se coordonner et qu’ils planifient leurs actions sans interagir avec les autres agents. Les ´changes d’informations sont parfois inutiles lorsque les agents ont e une bonne id´e de ce qu’ils doivent faire et de ce que les autres font. Toutefois, dans une e mˆme application, il se peut qu’` un certain moment, la coordination a l’aide de la come a ` munication soit utile. Dans ce cas, il serait int´ressant si les agents pouvaient d´terminer e e la quantit´ d’informations a transmettre et d’efforts a fournir pour la coordination tout e ` ` d´pendamment de la situation. e Cependant, il apparaˆ tr`s difficile de pouvoir donner a priori aux agents les connaisıt e sances n´cessaires pour qu’ils puissent faire de tels choix, car le nombre de situations e possibles peut ˆtre tr`s grand. C’est pourquoi les techniques d’apprentissage deviennent e e importantes, car elles permettent aux agents d’apprendre quand et comment se coordonner avec les autres agents selon la situation a laquelle ils font face. Dans la litt´rature, ` e la majorit´ des approches en apprentissage de la coordination abondent dans ce sens en e utilisant des approches sp´cifiques a la situation. e `

1.2

La probl´matique e

Dans des environnements multiagents constitu´s d’agents h´t´rog`nes, la coop´ration e ee e e entre les agents est particuli`rement importante, car il n’y a aucun agent qui a toutes e

1.2. La probl´matique e

5

les capacit´s requises pour accomplir tous ses buts par lui-mˆme. Chaque agent a alors e e besoin de coop´rer avec les autres agents pour ˆtre efficace. Par cons´quent, les agents e e e doivent pouvoir coordonner efficacement leurs actions de mani`re a pouvoir b´n´ficier e ` e e des capacit´s compl´mentaires des autres agents et a ´viter ´galement les interactions e e `e e n´gatives qui peuvent survenir entre eux. e Le type d’environnement consid´r´ dans nos recherches consiste en des environneee ments partiellement observables, stochastique, dynamiques et temps r´el. Les agents ont e une vue partielle et tr`s limit´e de l’environnement. De plus, l’environnement comporte e e des ´l´ments stochastiques rendant la pr´diction de son ´volution et des effets des acee e e tions tr`s compliqu´e. Ceci ajoute donc de l’incertitude au niveau des agents parce qu’ils e e ne peuvent pas connaˆ totalement l’influence qu’ils ont sur l’environnement. De surıtre croˆ l’environnement est en constante transformation. Les agents doivent donc agir ıt, rapidement, ne pouvant pas se permettre de « r´fl´chir » trop longtemps. Dans ce type e e d’environnement temps r´el, il est pr´f´rable que les agents effectuent une action de quae ee lit´ moindre tout de suite, plutˆt que de ne rien faire et d’attendre d’avoir trouv´ la e o e meilleure solution. On peut r´sumer cela en disant qu’une mauvaise r´ponse maintenant e e est meilleure qu’une r´ponse optimale plus tard puisque la situation aura chang´ et que e e la solution ne sera plus optimale pour la situation pr´sente. e Par ailleurs, dans le type d’environnement consid´r´, les communications entre les ee agents sont possibles, mais elles sont limit´es et incertaines. La bande passante a une e capacit´ maximale qui ne peut ˆtre d´pass´e. Les agents ont donc un nombre maximal e e e e de messages qu’ils peuvent envoyer. Ceci a pour effet qu’un message a de fortes chances d’ˆtre perdu s’il y a trop de messages envoy´s en mˆme temps. Les communications sont e e e ´galement limit´es a cause de la capacit´ des agents a g´rer les messages re¸us, puisque e e ` e ` e c les agents ont une quantit´ maximale de messages qu’ils peuvent g´rer. Cette quantit´ e e e est d´termin´e selon la capacit´ de calcul de l’agent et de sa capacit´ d’emmagasinage e e e e des messages. La transmission de donn´es a travers une constellation de satellites est un exemple e ` d’environnement poss´dant de telles caract´ristiques de communications. Ce probl`me e e e tr`s important pour la NASA consiste a trouver un moyen optimal de transmettre des e ` informations vers la Terre a partir de plan`tes ´loign´es en empruntant des satellites ` e e e de communications [Wolpert et al., 2001]. Chaque satellite a des limitations mat´rielles e l’empˆchant de g´rer tous les messages (capacit´ d’emmagasinage, largeur de la bande e e e passante, puissance, etc.). Le but est ´videmment de diminuer le nombre de messages e perdus. L’environnement d´crit jusqu’` pr´sent est un environnement tr`s complexe, mais e a e e aussi l’un des environnements les plus importants a ´tudier. Les caract´ristiques men`e e tionn´es sont en fait des caract´ristiques pr´sentes dans plusieurs environnements r´els e e e e comme la conduite automatique d’une voiture, les robots ´voluant dans des environnee ments r´els, etc. e

1.3. RoboCup

6

Le probl`me est de g´rer efficacement un syst`mes multiagents h´t´rog`nes dans ce e e e ee e type d’environnement. Comme il a ´t´ mentionn´, les agents ´voluant dans un tel enviee e e ronnement doivent coop´rer et se coordonner avec les autres agents pour non seulement e pouvoir accomplir leurs buts, mais aussi pour pouvoir le faire efficacement, c’est-`-dire en a obtenant les meilleurs r´sultats possibles et dans les meilleurs d´lais possibles. Toutefois, e e vu la complexit´ de l’environnement, la coordination entre les agents devient tr`s ardue e e a obtenir et a maintenir. ` ` Tel que montr´ a la section 1.1.2, il y a trois solutions aux probl`mes de coordie ` e nation : celles bas´es sur la communication, celles bas´es sur des conventions et celles e e bas´es sur l’apprentissage. Comme les communications sont limit´es et incertaines et e e qu’il y a plusieurs situations possibles dans le type d’environnement d´crit pr´c´deme e e ment, l’apprentissage ressort comme ´tant l’approche la plus prometteuse pour obtenir e et maintenir une bonne coordination entre les agents. La probl´matique de nos recherches consiste a d´velopper et a ´tudier l’efficacit´ e ` e ` e e de m´thodes d’apprentissage appliqu´es a l’am´lioration et a la maintenance de la coe e ` e ` ordination entre agents ´voluant dans le type d’environnement d´crit plus haut. Plus e e sp´cifiquement, les objectifs de nos recherches visent a : e ` ´ – Etudier des approches existantes en apprentissage de la coordination ; – Proposer des m´thodes originales pour l’apprentissage de la coordination applie cables dans le type d’environnement d´crit pr´c´demment ; e e e – Impl´menter des m´thodes d’apprentissage dans l’environnement de test ; e e – Montrer l’efficacit´ des m´thodes propos´es en analysant les r´sultats obtenus lors e e e e des tests. Dans les paragraphes pr´c´dents, le type d’environnement qui nous int´resse pour nos e e e recherches a ´t´ pr´sent´. Les caract´ristiques de cet environnement sont tr`s proches des ee e e e e caract´ristiques du monde r´el, ce qui en fait un type d’environnement tr`s important a e e e ` ´tudier. Ce que l’on cherche a ´tudier dans ce type d’environnement, c’est l’application e `e d’algorithmes d’apprentissage pour l’am´lioration de la coordination d’agents coop´ratifs e e ´voluant sous de telles contraintes. Pour pouvoir ´valuer ces algorithmes, nous devions e e choisir un environnement ayant les caract´ristiques d´crites. L’environnement choisi est e e l’environnement de la simulation de la RoboCupRescue. Cet environnement poss`de les e caract´ristiques d´sir´es et en plus, c’est un environnement « standard », ce qui facilite la e e e comparaison des r´sultats. La section suivante pr´sente plus en d´tails cet environnement. e e e

1.3

RoboCup

Le projet de simulation de la RoboCupRescue est un des pˆles d’activit´ de la f´d´o e e e ration RoboCup. Les sous-sections qui suivent pr´senteront la f´d´ration RoboCup et la e e e branche de la RoboCupRescue.

1.3. RoboCup

7

1.3.1

La f´d´ration RoboCup e e

La f´d´ration RoboCup est une organisation internationale sans but lucratif enree e gistr´e en Suisse et soutenue par Sony et Silicon Graphics Inc.(SGI) [RoboCup, 2003]. e Son objectif est de promouvoir la science et la technologie au niveau international. Plus particuli`rement, son but est de stimuler la recherche en intelligence artificielle et en e robotique en proposant un domaine standard permettant l’application de plusieurs technologies. Le premier domaine avanc´ par la RoboCup a ´t´ celui du soccer, a la fois e ee ` pour l’´tude de robots et d’agents logiciels. Le premier championnat international de la e RoboCup Soccer a eu lieu en 1997 a Nagoya au Japon. ` Depuis, les activit´s de la RoboCup se sont diversifi´es en ajoutant un nouveau pˆle e e o d’activit´s portant le nom de la RoboCupRescue [RoboCupRescue, 2003]. Les activit´s e e de celle-ci sont orient´es autour des catastrophes naturelles et des d´sastres en g´n´ral. e e e e Elle se d´compose en deux axes de recherche diff´rents : e e – Le premier axe ´tudie le d´veloppement de robots sauveteurs et se nomme « Ree e scue Robot League ». Son principal objectif est l’´tude des capacit´s individuelles e e requises par de tels robots pour effectuer des op´rations de sauvetage ainsi que e de leurs possibilit´s de collaboration pour accomplir des tˆches sp´cifiques. Par e a e exemple, de tels robots peuvent descendre dans des amoncellements de d´bris afin e d’y localiser des corps et d’orienter les efforts de sauvetage des ´quipes de secours e qui creusent a la surface. ` – Pour sa part, le deuxi`me axe ´tudie le travail d’agents logiciels, repr´sentant des e e e ´quipes de sauvetage, ´voluant dans une simulation de catastrophe naturelle a l’ine e ` t´rieure d’une ville. Ce deuxi`me axe se nomme « Rescue Simulation League ». Il e e se concentre principalement sur l’´tude de strat´gies de planification et de coore e dination d’´quipes de sauvetage. L’objectif des ´quipes qui prennent part a cette e e ` comp´tition consiste a minimiser les d´gˆts caus´s par un tremblement de terre e ` e a e simul´ sur ordinateur, c’est-`-dire minimiser le nombre de morts et de bˆtisses d´e a a e truites par le feu. Pour cela, ces ´quipes disposent d’agents logiciels repr´sentant e e des ´quipes de pompiers, des ´quipes de policiers et des ´quipes param´dicales. e e e e

1.3.2

Environnement de simulation de la RoboCupRescue

Le but de la partie simulation de la RoboCupRescue est d’´tudier des strat´gies de e e sauvetage, ainsi que des strat´gies de collaboration et de coordination entre les diff´e e rentes ´quipes de secours [Takahashi et al., 2002]. Les participants au championnat de la e RoboCupRescue doivent d´velopper des agents logiciels repr´sentant des ´quipes de pome e e piers, des ´quipes de polices et des ´quipes param´dicales, pour g´rer le mieux possible e e e e la catastrophe. Ces agents doivent : – arriver a d´terminer o` sont les urgences prioritaires, ` e u

1.3. RoboCup

8

– n´gocier le d´blaiement des routes afin de se rendre efficacement aux endroits strae e t´giques, e – d´terminer quel tas de d´bris doit ˆtre prioritairement creus´ pour sauver le plus e e e e de vies, – amener les bless´s dans des refuges, e – d´cider des feux a ´teindre en priorit´, e `e e – etc. La RoboCupRescue est un environnement offrant un banc d’essaie complexe ayant plusieurs opportunit´s de recherche en syst`mes multiagents ou, plus g´n´ralement, en e e e e intelligence artificielle [Kitano et al., 1999]. Ces opportunit´s apparaissent dans des doe maines comme : – La Planification multiagent o` plusieurs agents h´t´rog`nes doivent planifier et agir u ee e dans un environnement hostile et en constant changement. – La Planification en tout temps ou en temps r´el o` les agents doivent planifier sous e u des contraintes de temps r´els tr`s strictes. e e – La Planification robuste o` la planification doit pouvoir se faire avec des informau tions incompl`tes et o` le syst`me de planification doit pouvoir replanifier efficae u e cement si certaines informations changent. – La Gestion des ressources o` les ressources dans la simulation sont tr`s limiu e t´es, donc il devient important de bien les g´rer pour en retirer le maximum. Par e e exemple, on doit pouvoir positionner efficacement les pompiers disponibles et g´rer e efficacement le niveau d’eau des camions de pompiers. – La Recherche d’information o` l’agent doit pouvoir planifier explicitement des acu tions de recherche d’informations pour permettre aux agents d’avoir une meilleure vision de la situation. 1.3.2.1 Agents

Actuellement, dans la simulation, il y a une centaine d’agents repr´sentant des groupes e de personnes devant interagir les uns avec les autres. Les diff´rents types d’agents sont e les suivants : Familles de civils : Ces agents sont les seuls agents g´r´s par le simulateur. Il peut ee y avoir entre 70 et 90 civils dans la simulation. Ils peuvent communiquer a voix ` haute avec les autres agents s’ils sont a une distance de moins de 30 m`tres de ces ` e agents [Noda et al., 2002]. Brigades de pompiers : Il peut y avoir de 10 a 15 agents de ce type dont le but est ` d’´teindre les incendies. Ils sont en contact radio entre eux et avec leur caserne. e

1.3. RoboCup

9

Forces de police : Ces ´quipes, au nombre de 10 a 15, sont charg´es de d´blayer les e ` e e routes pour permettre aux agents de circuler. Ils sont en contact radio entre eux et avec leur caserne. ´ Equipes param´dicales : Il y a entre 5 et 8 ´quipes param´dicales qui se chargent e e e de soigner les bless´s, de les amener en ambulance dans des refuges et d’aller e creuser dans les d´combres des bˆtiments pour sauver les civils qui pourraient y e a ˆtre ensevelis. Ils sont en contact radio entre eux et avec leur caserne. e Bˆtiments : Ces agents sont un peu particuliers, parce qu’ils ne repr´sentent pas la a e structure elle-mˆme, mais le personnel qui l’habite. Il y en a trois, un pour chaque e type d’agents sauveteurs : une caserne de pompiers, un commissariat de police et un centre param´dical. Un agent bˆtiment n’a acc`s qu’` l’information auditive e a e a qui lui parvient soit des radios des agents qui en d´pendent, soit des autres agents e bˆtiments. Ces agents servent de centralisateurs d’informations et de coordonnaa teurs entre tous les agents sauveteurs. Pour le moment, les agents repr´sentent en fait des groupes de personnes pour simplie fier la simulation (une ´quipe de sauveteurs, une famille de civils, etc.). Mais, le but du e comit´ de la RoboCupRescue est d’avoir plus de 10 000 agents dans la simulation pour e pouvoir avoir une simulation plus pr`s de la r´alit´ [Tadkoro et al., 2000]. Le nombre e e e d’agents sera augment´ lorsque le mat´riel informatique permettra de supporter autant e e d’agents d´lib´ratifs dans la mˆme simulation. e e e Dans la simulation, les agents peuvent accomplir diff´rentes actions pouvant ˆtre clase e s´es en deux classes [Koch, 2002] : celles communes a tous les agents et celles sp´cialis´es, e ` e e disponibles seulement pour certains types d’agents : – Les actions communes : – Se d´placer (sauf pour les bˆtiments) ; e a – Parler a voix haute a un agent a proximit´ ; ` ` ` e – Communiquer a l’aide d’une radio avec les agents et le centre de mˆme type ; ` e – Ne rien faire. – Les actions sp´cialis´es : e e – les agents pompiers (FireBrigade) peuvent ´teindre un incendie ; e – les agents policiers (PoliceForce) peuvent d´blayer les routes ; e – les agents param´dicaux (AmbulanceTeam) peuvent d´terrer ou transporter e e d’autres agents (civils ou sauveteurs) ; – les agents centres (FireStation, PoliceOffice et AmbulanceCenter ) peuvent communiquer avec les autres agents centres. La coop´ration entre agents est importante, car l’efficacit´ des agents peut ˆtre auge e e ment´e de beaucoup si les agents coop`rent entre eux. Les agents pompiers, policiers e e et param´dicaux travaillent plus vite en ´quipes. Par exemple, s’il y a plusieurs agents e e

1.3. RoboCup

10

AmbulanceTeam

AmbulanceCenter

FireStation

PoliceOffice

FireBrigade

PoliceForce

Figure 1.1: Organisation des communications. Les liens entre les diff´rents types e d’agents indique que la communication par radio entre ces types d’agents est possible.

pompiers qui coop`rent pour ´teindre le mˆme feu, alors ils pourront l’´teindre beaucoup e e e e plus rapidement que si un seul agent essayait de l’´teindre [Ohta et al., 2001]. e En ce qui concerne les communications, elles se pr´sentent sous deux formes. Les e agents peuvent parler a voix haute, mais dans ce cas, uniquement les agents a proximit´ ` ` e pourront entendre le message. Les agents ont aussi la possibilit´ de communiquer par e radio. De cette mani`re, tous les agents re¸oivent tous les messages envoy´s par les autres e c e agents, selon l’organisation des communications pr´sent´e a la Figure 1.1. Par exemple, e e ` si un agent de type FireBrigade envoie un message, il sera re¸u par tous les agents de c type FireBrigade et par l’agent de type FireStation. Cette organisation des communications a pour effet de limiter la libert´ de commue nication des agents. Par exemple, un agent FireBrigade ne peut pas envoyer un message directement a un agent PoliceForce. Le message va devoir passer de l’agent FireBrigade, ` a l’agent FireStation, a l’agent PoliceOffice et finalement a l’agent PoliceForce. Comme ` ` ` on peut le voir, il faut au moins trois ´tapes pour qu’un message puisse aller d’un agent e FireBrigade a un agent PoliceForce. ` 1.3.2.2 Complexit´ de l’environnement e

L’environnement de simulation de la RoboCupRescue est un environnement complexe imposant plusieurs contraintes comme : – une contrainte de temps r´el sur le temps de r´ponse des agents, car ils doivent e e

1.3. RoboCup

11

– – – – – –

pouvoir retourner une action moins de 500 ms apr`s avoir re¸u leur perception de e c l’environnement, la limitation des perceptions des agents, la limitation du contenu et du nombre des messages qu’un agent peut envoyer et recevoir, la limitation de la quantit´ d’eau disponible aux pompiers, e la mort des bless´s s’ils ne sont pas sauv´s a temps, e e ` la propagation rapide des feux s’ils ne sont pas contrˆl´s rapidement, oe etc.

Dans la simulation, les agents n’ont qu’une perception locale de l’environnement, puisqu’ils ne per¸oivent que ce qui les entourent a une distance maximale de 30 m`tres. c ` e Par cons´quent, aucun agent n’a une connaissance compl`te de l’´tat global de l’environe e e nement. La RoboCupRescue est donc un domaine partiellement observable collectivement [Nair et al., 2003], ce qui veut dire que mˆme en regroupant toutes les perceptions e de tous les agents, ceux-ci n’auraient toujours pas une vision parfaite de l’environnement. Cette incertitude complique le probl`me grandement. Les agents vont donc devoir e explorer l’environnement et ils ne pourront pas simplement travailler sur les probl`mes e visibles. Mˆme s’ils ne pourront pas avoir une vue parfaite de la situation, ils devront e tout de mˆme communiquer pour obtenir une meilleure vision de la situation. e L’environnement de simulation de la RoboCupRescue est un environnement contenant plusieurs caract´ristiques le rendant tr`s int´ressant pour l’´tude des syst`mes mule e e e e tiagents. Plusieurs de ces caract´ristiques constituent de grands d´fis pour les syst`mes e e e multiagents et c’est pourquoi nous le consid´rons comme un tr`s bon environnement de e e test pour l’´tude des algorithmes multiagents. Le Tableau 1.1 montre une comparaison e entre l’environnement de la RoboCup Soccer et celui de la RoboCupRescue. Les caract´ristiques repr´sentant les probl`mes les plus complexes de la RoboCupRescue sont e e e affich´es en caract`res gras. e e Une des difficult´s de l’environnement vient du fait que les agents sont h´t´rog`nes. Ils e ee e ont des capacit´s diff´rentes et aucun agent n’a la possibilit´ de tout faire par lui-mˆme. e e e e Par cons´quent, ils devront coop´rer ensemble pour accomplir leurs buts efficacement. e e Les agents doivent bien coordonner leurs actions de mani`re a profiter des capacit´s de e ` e chacun. Dans la simulation, il est important de g´rer toutes les ressources efficacement, car il e y a beaucoup de travail a faire avec peu de ressources. C’est pourquoi la logistique est ` un probl`me complexe a g´rer. Il y a plusieurs situations probl´matiques a g´rer dans la e ` e e ` e ville et les agents ont besoin d’ˆtre envoy´s a diff´rents endroits dans la ville en essayant e e ` e de maximiser les r´sultats de leurs actions. e Ils doivent ´galement pouvoir construire des plans a long terme dans lesquels ils e ` pr´cisent le probl`me le plus urgent qu’ils vont g´rer et leurs prochaines actions. Ceci e e e

1.3. RoboCup

12

Tableau 1.1: Comparaison des caract´ristiques des environnements de la Roboe CupRescue et de la RoboCup Soccer [Kitano, 2000].

Caract´ristiques e Nombre d’agents Agents dans l’´quipe e Logistique Planification ` long terme a Collaboration ´mergente e Hostilit´ e Temps r´el e Acc`s ` l’information e a Repr´sentation e Contrˆle o

RoboCupRescue 100 ou plus H´t´rog`nes e e e Probl`me complexe e Probl`me complexe e Probl`me complexe e Environnement Sec- Min Tr`s mauvais e Hybride Distribu´/Semi-Central e

RoboCup Soccer 11 par ´quipe e Homog`nes e Pas un probl`me e Moins important Pas un probl`me e Joueurs adverses mSec Raisonnablement bon Non-Symbolique Distribu´ e

est un probl`me de taille, car il est tr`s difficile pour les agents d’anticiper l’´volution e e e de la situation. Si les agents pouvaient anticiper, alors ils pourraient ´laborer des plans e a plus long terme. Si les agents poss`dent des plans fiables a plus long terme, alors ` e ` la coordination entre les agents sera plus facile, car ils pourront se transmettre des informations sur leur plan pour pouvoir coordonner leurs actions. Une autre probl`me complexe de la simulation de la RoboCupRescue, identifi´ par e e Hiroaki Kitano, est la collaboration ´mergente. Comme il a ´t´ vu pr´c´demment, les e ee e e agents doivent collaborer, mais cette collaboration doit ˆtre ´mergente ou ´volutive pour e e e donner de la flexibilit´ aux agents. Les agents ont a faire face a plusieurs situations e ` ` diff´rentes dans la simulation, donc il serait int´ressant si les agents pouvaient apprendre e e a adapter leurs strat´gies de collaboration selon la situation actuelle. ` e Un des probl`mes majeures lors de d´sastres est la difficult´ d’acqu´rir des informae e e e tions utiles en un temps raisonnable [Kitano et al., 1999]. Comme il est pr´sent´ dans e e le Tableau 1.1, les agents ont un acc`s tr`s mauvais aux informations. Ils ont uniquee e ment des perceptions locales, donc ils doivent communiquer efficacement pour am´liorer e leurs connaissances de la situation globale et ainsi pouvoir prendre des d´cisions plus e ´clair´es. La coordination entre tous les agents d´pend ´norm´ment de l’efficacit´ des e e e e e e communications entre ceux-ci. Dans la simulation, les agents doivent vraiment faire attention aux messages qu’ils envoient parce qu’il est vraiment facile de perdre des messages compte tenu des limitations impos´es aux agents sur le nombre de messages qu’ils peuvent ´couter et aussi en raison e e de l’organisation pr´sent´e a la Figure 1.1. Le nombre maximum de messages qu’un agent e e ` peut recevoir ou envoyer pendant un tour de la simulation est pr´sent´ dans le Tableau e e 1.2. Comme on peut le voir, les agents centres ont de meilleures capacit´s de communie cation puisqu’ils peuvent envoyer et recevoir plus de messages que les agents mobiles. Ils peuvent recevoir et envoyer 2n messages o` n est le nombre d’agents mobiles du mˆme u e

1.3. RoboCup

13

Tableau 1.2: Le nombre maximal de messages qu’un agent peut recevoir ou envoyer durant un tour de la simulation. n est le nombre d’agents mobiles du mˆme type que l’agent centre. e

Types d’agent Recevoir Envoyer Agents mobiles 4 4 Agents centres 2n 2n type que l’agent centre. Par exemple, s’il y a 10 agents de type FireBrigade, l’agent de type FireStation va pouvoir envoyer et recevoir 20 messages. Comme ils peuvent ´couter e plus de messages, ils ont acc`s a plus d’informations que les agents mobiles, donc ils sont e ` les mieux plac´s pour servir de « centres de coordination » pour les agents mobiles du e mˆme type. e Avec de telles contraintes, les messages ont une bonne chance d’ˆtre perdus et de ne e pas atteindre leur(s) destinataire(s). Par exemple, s’il y a 10 agents FireBrigade et que chacun de ces agents envoie seulement un message durant un tour. Ceci est tr`s en de¸a e c` de la limitation des agents ´tant donn´ qu’ils peuvent envoyer chacun 4 messages. Mais, e e mˆme avec seulement un message par agent, on peut voir que chaque agent va recevoir e 9 messages, ce qui est plus que le double des messages qu’un agent peut recevoir en un tour. Par cons´quent, 5 messages seront perdus par chacun des agents. Tout cela n’est e que pour un tour, mais si certains agents ont plus qu’un message a envoyer ou s’il y a ` des messages provenant de d’autres types d’agents, alors la situation peut rapidement devenir tr`s difficile a g´rer. C’est pourquoi il est vraiment important pour les agents e ` e d’avoir une strat´gie leur permettant de choisir efficacement les messages qu’ils envoient e et ceux qu’ils ´coutent. e Par ailleurs, les communications dans la RoboCupRescue sont des communications situ´es [Noda, 2001], c’est-`-dire que l’information contenu dans le message d´pend beaue a e coup de la localisation de cette information sur la carte. Une information indiquant un feu est inutile si l’agent ne transmet pas la position du feu. Pour les communications entre agents, la complexit´ survient au moment de d´cider si un message est important a e e ` ´couter ou non. Par exemple, un message provenant d’un agent proche a plus de chance e d’ˆtre utile et pertinent qu’un message provenant d’un agent ´loign´. Par cons´quent, e e e e pour choisir efficacement les messages a ´couter, chaque agent devra avoir une id´e de `e e la position des autres agents sur la carte. Ceci peut ˆtre tr`s compliqu´, car les agents e e e bougent tout le temps.

1.3.3

Banc d’essai pour l’apprentissage de la coordination

Comme on peut le voir, l’environnement multiagent de simulation de la RoboCupRescue est compos´ d’agents h´t´rog`nes qui, pris individuellement, ont une capacit´ d’action e ee e e

1.3. RoboCup

14

limit´e. Toutefois, pris ensemble, leurs capacit´s sont compl´mentaires. Par exemple, un e e e agent policier peut d´blayer des routes, mais ne peut pas venir en aide aux bless´s. Par e e ailleurs, une brigade de pompiers ne peut ´teindre un incendie que si elle peut s’en approe cher suffisamment. Son efficacit´ d´pend donc du r´seau routier et des agents policiers. e e e Aussi, il est pr´f´rable pour les agents param´dicaux que les d´combres dans lesquels ils ee e e creusent ne soient pas situ´s en plein incendie. e On peut imaginer bien d’autres situations pour montrer a quel point les agents ont ` besoin de collaborer s’ils veulent arriver a r´aliser leur objectif commun, soit : minimiser ` e les pertes humaines et mat´rielles. Par cons´quent, il en ressort que des algorithmes e e de collaboration et de coordination sont n´cessaires s’il l’on veut que les agents soient e efficaces dans un tel environnement. Le probl`me est donc de savoir quelles strat´gies e e adopt´es pour obtenir une bonne coordination entre les agents. Comme montr´ a la e e ` section 1.1.2, l’apprentissage de processus de coordination semble ˆtre l’avenue la plus e int´ressante consid´rant les caract´ristiques de l’environnement dont fait l’objet cette e e e proposition. Compte tenu des caract´ristiques de l’environnement de simulation de la RoboCue pRescue qui ont ´t´ pr´sent´es a la section 1.3.2, nous croyons qu’il repr´sente un exee e e ` e cellent banc d’essai pour l’´tude des algorithmes d’apprentissage de la coordination dans e un environnement temps r´el complexe de situations d’urgence. Voici certains avantages e de l’utilisation de l’environnement de simulation de la RoboCupRescue comme banc d’essai : – L’environnement est suffisamment complexe pour ˆtre r´aliste. e e – Il est facilement accessible. – Il couvre la majorit´ des probl´matiques multiagents. e e – Il permet de faire des comparaisons directes entre les approches des diff´rentes e ´quipes. e – Mais surtout, il offre plusieurs opportunit´s pour l’apprentissage multiagent et e certaines seront montr´es dans cette proposition. e

Chapitre 2 ´ Etat de l’art sur l’apprentissage de la coordination
L’apprentissage de la coordination entre agents logiciels est un domaine relativement r´cent. Dans ce chapitre, quelques m´thodes d´j` utilis´es pour l’apprentissage de la e e ea e coordination seront pr´sent´es. Cet ´tat de l’art ne se veut pas exhaustif, mais tout de e e e mˆme tr`s repr´sentatif des travaux effectu´s dans le domaine. e e e e Ce chapitre pr´sente les diff´rentes m´thodes selon trois cat´gories. Une premi`re e e e e e cat´gorie de m´thodes est celle utilisant des techniques d’apprentissage par renforcement, e e dans lesquelles les agents apprennent en maintenant des probabilit´s pour chacune des e actions possibles de mani`re a savoir, pour chacune des situations, qu’elle est l’action e ` qui a le plus de chance d’obtenir un succ`s. Une deuxi`me cat´gorie est celle o` les e e e u agents enregistrent une trace lors de l’ex´cution de leurs tˆches. Dans cette cat´gorie, les e a e agents analysent leur trace d’ex´cution de mani`re a trouver les causes de l’´chec ou de la e e ` e r´ussite d’une certaine tˆche pour, par la suite, modifier leur comportement de mani`re a e a e ` agir correctement la prochaine fois qu’une situation semblable se reproduira. Finalement, la derni`re cat´gorie contient les autres m´thodes importantes dont l’originalit´ ne leur e e e e permettait pas d’ˆtre class´es par groupe. e e

2.1

Apprentissage de la coordination par renforcement

L’apprentissage par renforcement est une technique qui peut ˆtre utilis´e pour l’ape e prentissage de la coordination dans un syst`me multiagent. L’apprentissage par renfore cement permet d’apprendre quoi faire dans une certaine situation en mettant en correspondance les situations et les actions de mani`re a maximiser une certaine r´compense e ` e 15

2.1. Apprentissage de la coordination par renforcement

16

num´rique. L’agent qui apprend ne re¸oit aucune information a propos de l’action qu’il e c ` doit effectuer, comme c’est le cas pour plusieurs autres techniques d’apprentissage. Il doit plutˆt d´couvrir, en essayant les actions, celles lui permettant d’obtenir la plus grosse r´o e e compense. Dans les cas les plus int´ressants, les actions peuvent affecter non seulement la e r´compense imm´diate, mais aussi les situations suivantes et par cons´quent, toutes les r´e e e e compenses subs´quentes. Ces deux caract´ristiques, les essais et erreurs et la r´compense e e e retard´e, sont les deux plus importantes caract´ristiques qui distinguent l’apprentissage e e par renforcement des autres techniques d’apprentissage [Sutton and Barto, 1999]. Les m´thodes d’apprentissage par renforcement sont tr`s int´ressantes pour apprendre e e e des comportements optimaux pour des agents ´tant donn´ qu’elles ne demandent qu’une e e r´troaction scalaire de la part du syst`me. De plus, ces m´thodes peuvent ˆtre utilis´es e e e e e lorsqu’il y a de l’incertain dans la mani`re dont le monde ´volue. Toutefois, la convere e gence des algorithmes d’apprentissage par renforcement (comme T D(λ) [Sutton, 1988] ou Q-Learning [Watkins and Dayan, 1992]) n’a ´t´ prouv´e que pour des processus de ee e d´cisions de Markov (MDP : Markov decision process). e Les processus de d´cision de Markov sont une des techniques de mod´lisation les e e plus utilis´es en apprentissage par renforcement. Ils sont utilis´s pour des probl`mes de e e e d´cisions s´quentielles o` il convient de prendre plusieurs d´cisions au cours du cycle de e e u e vie du syst`me [Cassandra, 1998]. Les MDP sont donc appropri´s pour la mod´lisation e e e du processus de d´cision des agents logiciels, car les agents doivent prendre des d´cisions e e a chaque instant afin de choisir l’action a effectuer. ` ` Notons que l’on dit qu’un processus de d´cision est Markovien s’il est possible de e d´terminer le prochain ´tat du syst`me en consid´rant uniquement l’´tat actuel et l’ace e e e e tion ex´cut´e [Puterman, 1994]. Par ailleurs, les MDP de base sont consid´r´s comme e e ee compl`tement observables, ce qui signifie que l’agent connaˆ l’´tat exact de l’environnee ıt e ment a chaque instant. Ces deux derni`res affirmations impliquent que les agents sont ` e en mesure de pr´voir l’´tat r´sultant du syst`me suite a l’une de leurs actions. Ceci est e e e e ` tr`s utile lors de la prise de d´cision pour ˆtre en mesure de choisir la meilleure action e e e disponible pour la situation actuelle, c’est-`-dire l’action qui permet d’atteindre l’´tat a e r´sultant le plus d´sirable. e e Les MDP de base peuvent ˆtre tr`s utiles pour la mod´lisation du comportement e e e d’un agent dans un environnement donn´. Ils sont utilis´s pour trouver le meilleur come e portement possible pour l’agent en utilisant des algorithmes de planification ou d’apprentissage. Toutefois, ils ne sont pas tr`s bien adapt´s aux syst`mes multiagents, car e e e dans un MDP, les autres agents ne sont pas pris en compte. De plus, les MDP de base ne consid`rent que des environnements stationnaires, ce qui signifie que les transitions e des ´tats ont des probabilit´s invariantes dans le temps [Buffet, 2000]. Par exemple, e e la condition d’environnements stationnaires permet de prouver la convergence du « Qlearning » vers une politique d´terministe optimale dans le cas de MDP. Par contre, e dans les syst`mes multiagents o` les agents apprennent, la condition d’environnements e u stationnaires ne tient plus, parce que les agents ´voluent. Certains chercheurs ont essay´ e e

2.1. Apprentissage de la coordination par renforcement

17

d’adapter les MDP aux syst`mes multiagents. Les travaux de Boutilier sur les MMDP e [Boutilier, 1996], pr´sent´s a la section 2.1.1.1, en sont un bon exemple. On peut aussi e e ` penser aux travaux de Bernstein et ses coll`gues sur les MDP d´centralis´s partiellement e e e observables (DEC-POMDP) [Bernstein et al., 2002]. Comme l’a montr´ Boutilier [Boutilier, 1996], un syst`me multiagent peut ˆtre repr´e e e e sent´ par un MDP. Par cons´quent, il est possible d’utiliser, pour un syst`me multiagent, e e e des algorithmes classiques d’apprentissage par renforcement o` l’´tat du syst`me est une u e e composition des ´tats de tous les agents et qu’une action est une action conjointe come pos´e de toutes les actions individuelles de chacun des agents. Il s’ensuit que le nombre e d’´tats et d’actions dans une vision centralis´e du probl`me peut devenir rapidement trop e e e grand pour que des techniques d’apprentissage par renforcement puissent ˆtre utilis´es. e e On pourrait penser a une approche d´centralis´e, mais il n’est malheureusement pas ` e e ´vident de r´soudre le probl`me en utilisant une telle approche. Il y a deux difficult´s e e e e principales a cela : ` 1. Les transitions sont incertaines. Les autres agents sont des ´l´ments impr´visibles ee e de l’environnement, de sorte que les transitions d’un ´tat du syst`me a un autre e e ` vues par un agent sont incertaines. 2. L’environnement est partiellement observable. Comme la perception des agents est locale, ils ne peuvent pas connaˆ l’´tat global du syst`me. Par cons´quent, un ıtre e e e tel type de probl`me est class´ comme un mod`le de d´cisions de Markov partiellee e e e ment observable (POMDP). Toutefois, comme l’a montr´ Dutech [Dutech, 2000], e les techniques classiques des POMDP sont pratiquement impossibles a utiliser lors` qu’il y a plus de 100 ´tats. e Comme on peut le voir, les m´thodes d’apprentissage par renforcement classiques e demandent une certaine adaptation pour pouvoir ˆtre utilis´es dans des environnements e e multiagents. Les sous-sections suivantes pr´sentent quelques m´thodes d’apprentissage e e par renforcement utilis´es pour l’apprentissage de la coordination entre agents logiciels. e Les m´thodes ont ´t´ class´es en quatre groupes principaux : e ee e 1. Les m´thodes utilisant des environnements de tests de type jeu au sens de la th´orie e e des jeux ; 2. Les m´thodes o` la coordination ´merge sans que les agents ne tiennent r´ellement e u e e compte les uns des autres ; 3. Les m´thodes o` les agents partagent leurs perceptions et/ou leurs exp´riences e u e pour am´liorer leur coordination ; e 4. Et finalement, les autres approches regroupant les m´thodes ne rentrant pas dans e les trois premi`re cat´gories. e e

2.1. Apprentissage de la coordination par renforcement

18

2.1.1

Environnements de tests de type jeu

Les m´thodes pr´sent´es dans cette section utilisent toutes des matrices de gains e e e pour repr´senter de mani`re explicite les situations de coordination ou de manque de e e coordination. Il est donc facile pour les agents de d´terminer les situations d´sir´es et e e e celles qui ne le sont pas. Le but des agents est de r´ussir a coordonner leurs actions de e ` mani`re a recevoir le gain maximal dans la matrice de gain selon les actions anticip´es e ` e des autres agents. Dans ce qui suit, quatre m´thodes sont pr´sent´es : e e e 1. La m´thode de Boutilier qui utilise les processus de d´cision de Markov mule e tiagent [Boutilier, 1996] ; 2. La m´thode de Ghavamzadeh et Mahadevan qui utilisent la fusion dynamique de e MDP pour acc´l´rer l’apprentissage [Ghavamzadeh and Mahadevan, 2002] ; ee 3. La m´thode de Chalkiadakis et Boutilier qui utilisent les r´seaux bay´siens pour e e e maintenir les croyances des agents sur les mod`les du monde et sur les strat´gies e e des autres agents [Chalkiadakis and Boutilier, 2003] ; 4. La m´thode de Kapetanakis et Kudenko qui proposent une am´lioration de l’ale e gorithme de Q-learning pour les situations o` une mauvaise coordination entre les u agents est fortement punie [Kapetanakis and Kudenko, 2002]. 2.1.1.1 Processus de d´cision de Markov multiagent e

Dans un processus de d´cision de Markov multiagent (MMDP : multiagent Markov e decision process), le syst`me multiagent est mod´lis´ comme s’il n’y avait qu’un seul agent e e e dont le but est de produire une politique optimale pour le MDP conjoint [Boutilier, 1996]. Un MDP conjoint est un MDP standard, mais contenant tous les ´tats possibles de tous e les agents et toutes les actions possibles de tous les agents. Une des difficult´s de traiter un e MMDP comme un MDP standard, dans lequel les actions sont impl´ment´es de mani`re e e e distribu´e, est la coordination entre les agents. En g´n´ral, il y a plus qu’une politique e e e optimale pour un MDP. Comme chaque agent peut choisir sa politique individuelle en se basant sur une politique optimale conjointe, il n’y a aucune garantie que tous les agents vont choisir la mˆme politique conjointe. Les agents doivent donc se coordonner pour e choisir la mˆme politique optimale conjointe. Le but ici est que les actions accomplies e par chacun des individus puissent ˆtre coordonn´es avec les activit´s des autres agents e e e de mani`re a obtenir un comportement global optimal. Tous les agents sont int´ress´s e ` e e a la coordination car une action conjointe optimale est individuellement optimale pour ` chaque agent. Dans son approche, Boutilier [Boutilier, 1996] suppose que chaque agent a des connaissances a priori sur les politiques des autres agents et que ces connaissances sont mises ` a jour au fur et a mesure que l’agent agit et interagit. A chaque ´tape, les agents vont ` ` e mettre a jour leurs connaissances a propos des politiques des autres agents et ils vont ` ` adopter la meilleure r´ponse possible en consid´rant cet ensemble de politiques mises e e

2.1. Apprentissage de la coordination par renforcement

19

a jour. En d’autres mots, chaque agent enregistre a chaque ´tape l’action ex´cut´e par ` ` e e e chacun des agents. Apr`s plusieurs exp´riences, l’agent va avoir enregistr´ combien de e e e fois chaque agent a effectu´ une certaine action dans une situation donn´e. Ces informae e tions permettent a l’agent de construire une distribution de probabilit´ sur chacune des ` e actions des autres agents. L’agent utilise ces probabilit´s pour choisir l’action conjointe e la plus probable. 2.1.1.2 Fusion dynamique de MDP

Une strat´gie g´n´rale pour acc´l´rer l’apprentissage de la coordination pour l’accome e e ee plissement de tˆches multiagents est de r´utiliser les solutions trouv´es pour les tˆches a e e a lorsque chaque agent agit individuellement [Ghavamzadeh and Mahadevan, 2002]. Pour r´aliser cela, Ghavamzadeh et Mahadevan utilisent la fusion dynamique de solutions e qui sont repr´sent´es par des processus de d´cisions de Markov(MDP). Chaque MDP e e e repr´sente la solution individuelle de l’agent lorsqu’il agit seul. La fusion de tous ces e MDPs donne la solution pour le MDP multiagent global lorsque tous les agents agissent ensemble. Ils utilisent un nouvel algorithme d’apprentissage utilisant des m´thodes de e diff´rences temporelles qu’ils ont appel´ MAPLE (MultiAgent Policy LEarning). Cet e e algorithme utilise le Q-learning et la fusion dynamique pour construire des solutions globales efficaces pour le probl`me multiagent complet a partir des solutions aux MDPs e ` individuels. L’inconv´nient principal de cette approche est que chaque agent doit avoir en come men¸ant une politique individuelle pour r´soudre les tˆches. Dans leur exemple, ce sont c e a les concepteurs qui ont donn´ a chaque agent une politique optimale pour r´soudre le e` e probl`me seul. Par ailleurs, une autre limitation importante est qu’ils supposent que le e syst`me est compl`tement observable par tous les agents. e e 2.1.1.3 Approche bay´sienne pour la coordination e

Un des probl`mes en apprentissage par renforcement multiagent est d’assurer la e convergence des algorithmes vers un ´quilibre d´sirable. Comme pour les algorithmes e e standards d’apprentissage par renforcement, la convergence demande une exploration suffisante de l’espace des strat´gies. Toutefois, l’exploration vient avec un coˆt en terme e u de p´nalit´s ou d’opportunit´s manqu´es. Dans un cadre multiagent, le probl`me se e e e e e complexifie parce que les agents doivent coordonner leurs politiques. Une des approches pour g´rer le probl`me d’exploration est celle propos´e par Chalkiadakis et Boutilier e e e [Chalkiadakis and Boutilier, 2003] qui utilisent un mod`le bay´sien permettant de pone e d´rer les explorations par rapport aux b´n´fices esp´r´s en utilisant la notion de valeur e e e ee d’information. Contrairement aux mod`les standard d’apprentissage par renforcement, le cˆt´ mule oe

2.1. Apprentissage de la coordination par renforcement

20

tiagent demande qu’un agent raisonne a propos de l’influence de ses actions sur le com` portement des autres agents. Cette m´thode demande que chaque agent ait un mod`le e e des autres agents parce que les agents doivent ˆtre en mesure d’estimer la valeur d’une e action en pr´disant l’influence de cette action sur le choix des actions futures des autres e agents. Les agents utilisent les r´seaux bay´siens pour maintenir des croyances probabie e listes sur les mod`les du monde et sur les strat´gies des autres agents. Les agents peuvent e e d´lib´rer sur les effets de leurs actions, particuli`rement en ce qui concerne : e e e – leurs connaissances du mod`le du monde ; e – leurs connaissances des strat´gies des autres agents ; e – la r´compense esp´r´e ; e ee – le comportement futur esp´r´ des autres agents. ee Cette m´thode n’a ´t´ test´e que sur des environnements simplifi´s de jeux avec e ee e e matrice de gain. Il n’est pas ´vident que cette approche puisse ˆtre efficace dans des e e environnements plus complexes. 2.1.1.4 Modification de la fonction d’estimation

Kapetanakis et Kudenko ont travaill´ a modifier la strat´gie de s´lection des ace ` e e tions dans l’algorithme du Q-learning en proposant une nouvelle fonction d’estimation de l’utilit´ d’une action [Kapetanakis and Kudenko, 2002]. Un des probl`mes avec la mae e jorit´ des m´thodes d’apprentissage par renforcement est qu’elles ne garantissent pas la e e convergence vers l’action conjointe optimale dans les sc´narios o` des p´nalit´s fortes e u e e sont associ´es a des situations de mauvaise coordination. Mˆme des approches o` les e ` e u agents construisent des mod`les pr´dictifs des autres agents (appel´s « joint action leare e e ners ») n’ont pas r´ussi a montrer la convergence vers l’action conjointe optimale dans e ` ce type de cas difficiles [Claus and Boutilier, 1998]. En modifiant la fonction de s´lece tion des actions, Kapetanakis et Kudenko ont montr´ qu’il ´tait possible d’augmenter e e la probabilit´ d’obtenir la convergence vers l’action conjointe optimale. En fait, ils ont e pratiquement atteint une probabilit´ de 100%. Ceci signifie que, dans presque tous les e cas, les agents r´ussissaient a converger vers l’action conjointe optimale. La plus grosse e ` limitation de cette approche vient de la simplicit´ du probl`me ´tudi´ puisqu’ils ont e e e e ´tudi´ leur algorithme dans un jeu a seulement deux agents ayant chacun trois actions e e ` possibles.

2.1.2

´ Emergence de la coordination

Cette section pr´sente cinq m´thodes d’apprentissage par renforcement o` les agents e e u ne mod´lisent pas les autres agents. Les autres agents ne sont alors per¸us que comme e c des composantes de l’environnement au mˆme titre que toutes les autres. Il n’y a aucune e

2.1. Apprentissage de la coordination par renforcement

21

communication entre les agents. Dans ce type de m´thode, la coordination ´merge du fait e e que les renforcements re¸us par les agents sont g´n´ralement des renforcements globaux. c e e Pouvoir se coordonner sans communications est tr`s int´ressant, car les communications e e peuvent ˆtre coˆteuses. Toutefois, d`s que les agents ´voluent dans des environnements e u e e partiellement observables, la coordination est beaucoup plus difficile a obtenir, car les ` agents ne peuvent plus se percevoir tout le temps. 2.1.2.1 Apprentissage par renforcement de mani`re incr´mentielle e e

L’id´e principale derri`re l’apprentissage incr´mentiel (pr´sent´ Dutech, Buffet et e e e e e Charpillet [Dutech et al., 2001]) consiste a augmenter progressivement la complexit´ du ` e probl`me. Chaque agent ex´cute sa version locale de l’algorithme d’apprentissage par e e renforcement et, pour acc´l´rer l’apprentissage et r´duire les probl`mes de complexit´ ee e e e et d’assignation du renforcement, on utilise une m´thode d’apprentissage incr´mentielle. e e La partie incr´mentielle de l’apprentissage est effectu´e selon deux axes : e e 1. Un nombre croissant d’agents. L’apprentissage commence avec un petit nombre ´ d’agents, chacun d’eux apprenant leur propre strat´gie. Evidemment, il doit y avoir e suffisamment d’agents pour r´soudre le probl`me. On ajoute alors progressivement e e des agents en leur donnant la politique des agents originaux et cette politique peut ˆtre ensuite raffin´e par apprentissage. e e 2. Tˆches progressives. Au d´but, les tˆches a ex´cuter sont proches (en terme du a e a ` e nombre d’actions) d’une position ayant un renforcement positif. Par exemple, les premi`res tˆches sont celles o` les agents sont plac´s dans des situations o` ils e a u e u n’ont qu’une action a effectuer pour atteindre leur but. L’apprentissage commence ` donc avec une version tr`s simple de la tˆche a ex´cuter ou une tˆche dans laquelle e a ` e a les agents sont fortement guid´s pour la r´soudre. Par la suite, plus l’apprentissage e e progresse, plus la tˆche devient difficile, g´n´ralement en donnant plus de libert´ a e e e d’action aux agents. De cette mani`re, les agents ont d´j` un comportement de e ea base sur lequel ils peuvent se baser pour travailler dans la situation plus complexe. Dans cette approche, on d´finit un essai comme une s´quence de n ´tapes commen¸ant e e e c dans une situation donn´e. Chaque essai doit ˆtre r´p´t´ un nombre suffisant de fois e e e ee pour ˆtre utile. Cette succession d’essais est appel´e une exp´rience pour les agents. e e e Le concepteur doit d´finir une s´rie d’exp´riences de difficult´ progressive pour aider e e e e l’apprentissage. Dutech et ses coll`gues [Dutech et al., 2001] ont pu ainsi montrer que les performances e atteintes par les agents utilisant l’apprentissage incr´mentiel sont de beaucoup meilleures e aux performances des agents apprenant a partir de rien, c’est-`-dire sans comportement ` a de base. La raison d’une telle performance r´side dans le fait que les agents utilisant e l’apprentissage incr´mentiel d´marrent avec des connaissances utiles leur permettant de e e trouver un meilleur optimum local.

2.1. Apprentissage de la coordination par renforcement

22

L’id´e d’effectuer l’apprentissage de mani`re incr´mentielle est int´ressante, mais ils e e e e ne l’ont exp´riment´e que sur un probl`me tr`s simple, soit une grille de 10x10 o` les e e e e u agents devaient pousser des blocs les uns sur les autres. Par ailleurs, leur approche est tr`s e d´pendante de l’application vis´e, car il faut d´finir les diff´rents essais de complexit´s e e e e e progressives. Si les agents ´voluent dans un environnement plus complexe, alors il n’est e pas ´vident que les comportements de base appris par les agents lors des tˆches les plus e a faciles seront aussi facilement utilisables dans les tˆches plus complexes. a 2.1.2.2 Tˆche commune et renforcement global a

Une autre approche pour permettre aux agents d’apprendre une tˆche coop´rative est a e de donner aux agents une description commune de l’´tat du monde et un renforcement e global, comme l’ont fait Crites et Barto [Crites and Barto, 1998]. Dans cette approche, les agents n’ont pas besoin de mod´liser les actions des autres agents. La coordination ´merge e e du fait que les agents apprennent a partir du mˆme renforcement. Ce renforcement peut ` e sembler contenir du bruit pour un agent parce qu’il ne connaˆ pas les actions des autres ıt agents, mais tout de mˆme, les auteurs ont d´montr´ que l’apprentissage de la tˆche e e e a par les agents est possible dans de telles circonstances. Le probl`me de cette approche e est le probl`me d’assignation du cr´dit. En effet, chaque agent re¸oit une r´compense e e c e globale, par cons´quent la difficult´ est de savoir a quel point l’agent a contribu´ a cette e e ` e` r´compense. Diviser la r´compense globale entre les diff´rentes actions des agents est un e e e probl`me fort complexe. e 2.1.2.3 Apprentissage isol´ et concurrent e

Une autre approche, semblable a la pr´c´dente, est l’apprentissage isol´ et concur` e e e rent de Sen et Weiss [Sen and Weiss, 2000]. Dans cette approche, chaque agent essai de maximiser le renforcement qu’il re¸oit de l’environnement, mais sans tenir compte des c autres agents dans l’environnement. En d’autres mots, les autres agents sont vus comme faisant parti de l’environnement. Cette m´thode poss`de plusieurs limitations, car elle e e ne g´n`re pas une bonne coordination entre les agents lorsque les actions des agents sont e e fortement coupl´es (les actions d’un agent affectant souvent et fortement les plans des e autres agents), lorsque le retour de l’environnement est retard´ et lorsqu’il n’y a pas e beaucoup de combinaisons de comportement optimal. 2.1.2.4 Apprentissage sans communication

Sen et ses coll`gues ont d´montr´ qu’il ´tait possible d’atteindre une bonne coe e e e ordination entre les agents sans utiliser les communications [Sen and Sekaran, 1995, Sen and Sekaran, 1998, Sen et al., 1994]. Ils ont utilis´ l’algorithme de Q-learning pour e

2.1. Apprentissage de la coordination par renforcement

23

apprendre a deux agents a pousser un bloc a un endroit pr´cis. Les agents ne communi` ` ` e quaient pas, mais ils devaient tout de mˆme coordonner leurs actions pour pousser dans e le bon sens. Une des limitations a cette approche est que si l’on veut que les agents se ` coordonnent sans communiquer, ils ont besoin de pouvoir s’observer. Dans la majorit´ e des syst`mes r´els, les agents n’ont pas la possibilit´ de voir tous les autres agents. Ils e e e n’ont qu’une perception partielle de l’environnement, donc ils ne peuvent voir que les agents qui sont a proximit´. Dans de tels environnements, la majorit´ des agents ne ` e e sont pas visibles, donc pour se coordonner, les agents vont avoir besoin de b´n´ficier des e e communications. 2.1.2.5 Observation des r´compenses des autres agents e

Abul et ses coll`gues ont pr´sent´ deux m´canismes de coordination pour des agents e e e e apprenant par renforcement [Abul et al., 2000]. Dans le premier m´canisme, appel´ m´e e e canisme de coordination perceptuelle, les autres agents sont inclut dans la description de l’´tat du monde et les informations de coordination sont apprises a partir des transitions e ` entre les ´tats. Dans le deuxi`me m´canisme, appel´ m´canisme de coordination par e e e e e observation, les autres agents sont aussi inclut dans la description de l’´tat du monde, e mais en plus avec les r´compenses obtenues par les agents a proximit´. Les r´compenses e ` e e observ´es et les r´compenses de l’agent sont utilis´es pour construire une politique ope e e timale. Le probl`me principal de cette approche, comme pour la m´thode pr´c´dente, e e e e est que dans des environnements partiellement observables, on ne peut pas ajouter les autres agents dans la repr´sentation de l’´tat du monde tout simplement parce qu’ils ne e e peuvent pas ˆtre per¸us. e c

2.1.3

Partage de perceptions ou d’exp´riences e

Cette section d´crit quatre approches proposant le partage d’informations entre les e agents pour aider a l’apprentissage de la coordination. Le partage d’informations peut ` tout simplement ˆtre de partager ses perceptions de mani`re a faire profiter les autres e e ` agents des situations rencontr´es. De cette mani`re, chaque agent a plus d’exemples sur e e lesquels se baser pour effectuer l’apprentissage. Une autre forme de partage d’informations utilis´e est de partager directement les valeurs apprises par le processus d’apprene tissage de mani`re a partager les connaissances apprises. e ` Tan [Tan, 1993] a ´tudi´ l’utilisation de l’apprentissage par renforcement dans un e e environnement proie-pr´dateur sous forme d’une grille de 10x10. Le but des pr´dateurs e e est d’encercler la proie. Les pr´dateurs sont des agents apprenant avec une perception e limit´e, tandis que la proie n’apprend pas. Tan a ´tudi´ des cas o` les agents partagent e e e u leurs perceptions pour pallier a la limitation de la port´e des capteurs. En plus, il a aussi ` e ´tudi´ le partage de politique apprise par renforcement et l’´change d’´pisodes entre les e e e e

2.1. Apprentissage de la coordination par renforcement

24

pr´dateurs. Ces r´sultats montrent que les agents qui partagent leurs connaissances ape e prises et leurs ´pisodes ´taient plus efficaces que les agents ind´pendants. Toutefois, il est e e e important de mentionner que la coop´ration dans ce type de domaines est relativement e facile vu la simplicit´ du domaine. De plus, les agents sont tous homog`nes, ce qui facilite e e la coop´ration. e Un des probl`mes en apprentissage par renforcement survient lorsque le nombre e d’´tats possibles devient trop grand. Dans ce cas, les algorithmes sont tr`s lents a convere e ` ger vers une solution satisfaisante. Berenji et Vengerov [Berenji and Vengerov, 1999, Berenji and Vengerov, 2000] proposent de d´crire les ´tats a la l’aide de la logique floue e e ` pour permettre de diminuer le nombre d’´tats. Par ailleurs, ils permettent aussi aux e agents de partager leur exp´riences en partageant les valeurs apprises par l’algorithme e de Q-learning. Ils ont montr´ que K agents coop´ratifs apprenant dans des mondes e e s´par´s pendant N pas de temps ´taient plus performant que K agents ind´pendants e e e e apprenant pendant K ∗ N pas de temps. Ils n’ont pas vraiment pr´sent´ un algorithme e e d’apprentissage de la coordination, mais leur approche pour la repr´sentation des ´tats e e pourrait s’av´rer utile. e Sous le mˆme ordre d’id´es, Mataric a d´velopp´ une approche o` le comportee e e e u ment global d’un agent est en fait repr´sent´ par plusieurs comportements simples de e e base [Mataric, 1994]. Les comportements de plus haut niveau de l’agent sont obtenus en juxtaposant plusieurs comportements de bas niveau. Les comportements qui nous int´e ressent le plus pour nos recherches sont les comportements sociaux. Mataric a montr´ e que trois type de renforcement sont importants pour l’apprentissage de comportements sociaux [Mataric, 1997]. Le premier type est la perception individuelle du progr`s vers e le but courant, c’est-`-dire que l’agent re¸oit une r´compense pour chaque action le rapa c e prochant de son but. Le deuxi`me renforcement vient de l’observation des autres agents, e c’est-`-dire que des comportements similaires de la part des autres agents sont vus comme a des renforcements positifs. De mani`re pratique, l’agent re¸oit un renforcement s’il r´p`te e c e e dans la mˆme situation le comportement d’un autre agent qu’il vient juste de percevoir. e Le troisi`me type de renforcement est l’observation des renforcements re¸us par les autres e c agents, c’est-`-dire que les agents re¸oivent un renforcement partag´ qui est donn´ a tous a c e e` les agents pr´sents dans une interaction sociale locale. Par exemple, si un agent a r´ussi e e a atteindre son but parce qu’un autre agent l’a laiss´ passer, alors les deux agents vont ` e recevoir le renforcement. Bonarini et Trianni [Bonarini and Trianni, 2001] utilisent eux aussi l’apprentissage par renforcement, mais en utilisant un syst`me de classificateurs flous (« fuzzy classifier e system »). Chaque agent a des r`gles en logique floue qu’il utilise pour choisir le bon come portement a appliquer ou la bonne action de communication a faire. Les comportements ` ` sont des comportements de bases semblables a ceux d´crits par Mataric [Mataric, 1994]. ` e Le but des agents est d’apprendre quand utiliser leurs comportements de base pr´d´finis. e e En d’autres mots, les agents ont une banque de comportements et le but est d’apprendre la correspondance entre une situation et le bon comportement a ex´cuter. Dans leur ` e

2.1. Apprentissage de la coordination par renforcement

25

approche, les agents ne mod´lisent pas la tˆche du groupe. Le comportement de groupe e a ´merge de l’apprentissage. Pour ce faire, lorsqu’un agent re¸oit un renforcement, il le e c transmet aux agents les plus susceptibles d’avoir contribuer activement (en aidant) ou passivement (en ne nuisant pas) a ce renforcement. Ils ont test´ leur approche dans ` e l’environnement de simulation de la RoboCup Soccer. Puisque dans cet environnement les communications ne sont re¸ues qu’` une certaine distance de l’agent a, alors se sont c a uniquement les agents les plus proches de a qui vont recevoir ce renforcement. De cette mani`re, seuls les agents les plus susceptibles d’avoir aid´ re¸oivent le renforcement. e e c

2.1.4

Autres approches

Cette section pr´sente quatre travaux en apprentissage par renforcement qui diff`rent e e trop des autres m´thodes pour entrer dans les cat´gories pr´c´dentes. Tout d’abord, dans e e e e la premi`re approche la coordination entre agents est atteinte en attribuant a chacun e ` des agents, un ou plusieurs rˆle(s) a suivre, structurant ainsi les interactions entre les o ` agents. Pour am´liorer la coordination, l’apprentissage consiste, dans ce cas, a apprendre e ` quel est le rˆle a adopter selon la situation [Prasad et al., 1996]. On suppose que chaque o ` agent peut accomplir plusieurs rˆles dans une mˆme situation. Pour apprendre quel rˆle o e o utilis´, les agents apprennent par renforcement les trois valeurs suivantes. Premi`rement, e e ils apprennent une valeur d’utilit´ repr´sentant une estimation de la valeur de l’´tat final e e e atteint si l’agent prend un certain rˆle dans la situation courante. Deuxi`mement, ils o e apprennent la probabilit´ d’atteindre un ´tat final d´sir´ si l’agent adopte un certain rˆle e e e e o dans la situation courante. Et finalement, ils apprennent une valeur de coˆt repr´sentant u e le temps de calcul engendr´ par le choix du rˆle. e o Pour leur part, Stone et Veloso ont d´velopp´ un algorithme qui se nomme TPOTe e RL [Stone and Veloso, 1999] et qui est une adaptation des m´thodes d’apprentissage e par renforcement traditionnelles. Avec cet algorithme, les ´tats sont g´n´ralis´s en vece e e e teurs de caract´ristiques, ce qui a pour effet de diminuer de beaucoup la grandeur de e l’espace d’´tats. Ceci rend l’algorithme applicable dans des environnements complexes, e non-Markovien, multiagents, avec de grands espaces d’´tats et des opportunit´s d’apprene e tissage limit´es. Cette m´thode a ´t´ impl´ment´e dans la cadre de la RoboCup Soccer. e e ee e e Les r´sultats pr´sent´s montrent que cette technique permet a une ´quipe d’agents d’ape e e ` e prendre a coop´rer vers l’atteinte d’un but sp´cifique. ` e e Tumer, Agogino et Wolpert ont quant a eux travaill´s a l’´laboration d’agents auto` e ` e nomes apprenant individuellement des s´quences d’actions de mani`re a ce que les actions e e ` conjointes r´sultantes accomplissent un objectif global pr´d´termin´ [Tumer et al., 2002]. e e e e Le probl`me qu’ils ont ´tudi´ est de savoir comment d´finir les renforcements retourn´s e e e e e a chaque agent pour que si les agents maximisent leurs renforcements, ils vont alors ` atteindre une solution globale d´sir´e. Pour cela, les auteurs ont utilis´ les concepts de e e e l’approche d’intelligence collective [Wolpert and Tumer, 2000] en vue de concevoir des r´compenses, pour chaque agent, align´es avec la r´compense globale. Pour que les r´e e e e

2.2. Apprentissage de la coordination ` partir d’une trace a

26

compenses puissent ˆtre apprises, les agents doivent avoir la possibilit´ de voir facilement e e comment leur comportement influence les r´compenses re¸ues. Pour y arriver, les auteurs e c utilisent une fonction d’utilit´ qui repr´sente la contribution d’un agent pour l’atteinte e e du but global. Ainsi, pour chaque agent, la valeur de la fonction d’utilit´ est la somme e des r´compenses obtenues par le groupe avec l’agent moins la somme des r´compenses e e si l’agent n’avait pas ´t´ l`. Cette fonction d’utilit´ permet de diriger les agents vers des ee a e comportement plus coop´ratifs et d’augmenter ainsi la r´ussite du groupe. e e Makar, Mahadevan et Ghavamzadeh [Makar et al., 2001, Ghavamzadeh et al., 2001] utilisent une structure hi´rarchique pour l’apprentissage par renforcement de mani`re a e e ` acc´l´rer l’apprentissage de tˆches coop´ratives par les agents. Chaque agent utilise la ee a e mˆme hi´rarchie de tˆches, sous forme d’une d´composition MAXQ [Dietterich, 1998], e e a e pour d´composer la tˆche principale en sous tˆches. L’apprentissage de la coordination e a a entre les agents est effectu´ en utilisant des actions conjointes au plus haut niveau de la e hi´rarchie. Par cons´quent, les noeuds au plus haut niveau de la hi´rarchie repr´sentent e e e e l’espace tˆche-action pour plusieurs agents. Dans cette approche, chaque agent connaˆ a ıt seulement ce que les autres agents font au niveau des sous-tˆches et ils ne connaissent a pas ce que les autres agents font au niveau des actions primitives. L’approche hi´rare chique permet aux agents d’apprendre a se coordonner plus rapidement en partageant ` des informations au niveau des sous-tˆches, plutˆt que d’essayer de coordonner leurs a o actions au niveau des actions primitives. Un point int´ressant de cette approche est l’utie lisation d’une structure hi´rarchique pour acc´l´rer l’apprentissage de la coordination. e ee Cette structure hi´rarchique permet a l’apprentissage par renforcement d’ˆtre appliqu´ e ` e e a des domaines plus complexes en utilisant la d´composition de la tˆche pour restreindre ` e a l’espace des politiques a consid´rer. Par ailleurs, comme les agents ne communiquent ` e qu’` un niveau ´lev´ et que les sous-tˆches de plus haut niveau prennent g´n´ralement a e e a e e plus de temps, alors les agents n’auront a communiquer que tr`s peu fr´quemment. Le ` e e canal de communication entre les agents est donc peu charg´. e

2.2

Apprentissage de la coordination ` partir d’une a trace

Avec les approches d’apprentissage par renforcement, pr´sent´es a la section pr´c´e e ` e e dente, les agents apprennent en modifiant la probabilit´ de choisir une certaine action e dans une situation donn´e. Ils apprennent a la fois des situations qui r´ussissent (r´come ` e e penses positives) que des situations qui ´chouent (r´compenses n´gatives). L’apprentise e e sage ne s’effectue toutefois que de mani`re purement statistique, a l’aide des r´compenses e ` e re¸ues. c D’autres m´thodes ont plutˆt tendance a effectuer l’apprentissage en tentant d’exe o ` pliquer les r´sultats obtenus. Avec de telles m´thodes, les agents analysent la situation e e pass´e de mani`re a en faire ressortir les causes de la r´ussite o` de l’´chec de leurs e e ` e u e

2.2. Apprentissage de la coordination ` partir d’une trace a

27

actions. Pour ce faire, les agents utilisent des traces contenant plusieurs informations enregistr´es par les agents lors de l’ex´cution de leurs tˆches. Au moment de l’apprentissage, e e a ces traces sont nettoy´es de mani`re a conserver uniquement les informations n´cessaires e e ` e pour expliquer la situation courante. Par la suite, ces traces nettoy´es servent a modifier e ` le comportement de l’agent de mani`re a ce que celui-ci agisse pour le mieux dans le e ` futur. Les deux sous sections suivantes pr´sentent deux m´thodes repr´sentant l’´tat de l’art e e e e en terme d’apprentissage de la coordination en analysant des traces d’ex´cutions. Dans e la premi`re m´thode, celle de Sugawara et Lesser [Sugawara and Lesser, 1998] (section e e 2.2.1), les agents apprennent de nouvelles r`gles comportementales a partir de situations e ` d’´checs, c’est-`-dire qu’ils essaient d’apprendre comment ´viter les situations d’´checs. e a e e Dans la deuxi`me m´thode, celle de Garland et Alterman [Garland and Alterman, 2001b] e e (section 2.2.2), les agents apprennent des proc´dures de coordination a partir des situae ` tions de succ`s, c’est-`-dire qu’ils apprennent a ex´cuter les mˆmes actions, si celles-ci e a ` e e ont men´ a un succ`s. Cette derni`re approche est une approche a base de cas, o` les e` e e ` u agents utilisent les cas pass´s pour am´liorer la qualit´ des plans et par le fait mˆme, la e e e e coordination entre les agents.

2.2.1

Apprentissage de r`gles ` partir de situations d’´checs e a e

Une des mani`re d’am´liorer sa performance, est d’apprendre a partir de ses ´checs. e e ` e En effet, lorsqu’on se rend compte qu’une de nos actions a ´chou´, on peut analyser e e les informations que l’on a, pour ainsi d´terminer les causes de cet ´chec et pour poue e voir agir, par la suite, de mani`re a ´viter de refaire les mˆmes erreurs. Dans leurs e ` e e travaux, Sugawara et Lesser [Sugawara and Lesser, 1993, Sugawara and Lesser, 1995, Sugawara and Lesser, 1998] ont opt´ pour cette strat´gie pour l’impl´mentation d’un e e e m´canisme d’apprentissage de la coordination. e Dans cette approche, les agents enregistrent une trace contenant toutes les informations disponibles, leur permettant ainsi d’analyser n’importe quelle situation pass´e si e n´cessaire. Lorsqu’une situation ind´sirable se produit, les agents analysent leur trace e e pour d´terminer les causes de l’´chec et, par la suite, ils ajoutent de nouvelles r`gles de e e e mani`re a modifier leur comportement pour ´viter d’atteindre une telle situation ind´sie ` e e rable dans le futur. L’apprentissage, dans ce cas, est compl`tement distribu´ et est centr´ sur l’agent, e e e c’est-`-dire qu’un agent apprend des r`gles uniquement par et pour lui-mˆme. Dans cette a e e approche, les agents doivent ˆtre capables d’enregistrer des traces de leur raisonnement e qui pourront, par la suite, ˆtre analys´es par le module d’apprentissage. Un agent doit e e par ailleurs ˆtre capable de reproduire les mˆmes d´cisions et le mˆme raisonnement a e e e e ` partir de la trace enregistr´e. e

2.2. Apprentissage de la coordination ` partir d’une trace a

28

Les connaissances retourn´es a la sortie du processus d’apprentissage sont sous forme e ` de r`gles de contrˆle permettant a l’agent d’acqu´rir les informations non-locales n´cese o ` e e saires et suffisantes pour prendre de bonnes d´cisions localement. Par exemple, les agents e doivent choisir la tˆche appropri´e pour satisfaire leur but et ils doivent d´terminer la a e e priorit´ qui doit ˆtre attribu´e a cette tˆche pour que l’ex´cution de la tˆche soit coe e e ` a e a ordonn´e avec les tˆches des autres agents. Pour que leurs actions soient coordonn´es, e a e les agents ont potentiellement besoin d’avoir des informations d´taill´es a propos des e e ` activit´s pr´sentes et planifi´es des autres agents et les informations que ces agents ont e e e acquises a propos des caract´ristiques de l’environnement et les r´sultats partiels qu’ils ` e e ont obtenus. Il est toutefois coˆteux de recevoir et d’analyser toutes ces donn´es nonu e locales d’autant plus que seulement une petite partie de ces informations est n´cessaire e pour coordonner efficacement les actions des agents. Par cons´quent, d’un cˆt´, un manque d’informations non-locales peut amener un e oe agent a ex´cuter des tˆches redondantes ou non-n´cessaires. D’un autre cˆt´, la trans` e a e oe mission d’informations inutiles : – peut contribuer a surcharger le canal de communication ; ` – peut demander beaucoup de temps de calcul pour les agents pour rassembler l’information a transmettre et assimiler les informations dans leur base de connaissances ` locales ; – peut distraire un agent, l’amenant a retarder l’ex´cution d’une action importante. ` e Par cons´quent, l’identification des informations appropri´es doit ˆtre li´e aux carace e e e t´ristiques de la situation de coordination. Bien entendu, faire des actions redondantes ou e non-n´cessaires peut ne causer aucun probl`me. Dans ce cas, aucune r`gle est apprise. Le e e e r´sultat du processus d’apprentissage est la g´n´ration de nouvelles r`gles de recherche e e e e d’informations qui font en sorte que le planificateur va g´n´rer une s´quence d’op´rations e e e e pour aller chercher les informations n´cessaires avant de prendre une d´cision sur la fa¸on e e c dont il va accomplir son but. Les connaissances utilis´es par le processus d’apprentissage comprennent une collece tion de r`gles et de proc´dures pour : reconnaˆ les situations o` il y a un comportement e e ıtre u incoh´rent, identifier les contrˆles de d´cision qui ont men´ a ce comportement et modie o e e` fier ces contrˆles ou les remplacer par de nouveaux processus de d´cision qui corrigent les o e contrˆles inappropri´s. Quand une situation ind´sirable, appel´e un probl`me d’analyse o e e e e d’apprentissage par les auteurs de la m´thode (learning analysis problem (LAP)), est d´e e tect´e par un agent, le module d’apprentissage de cet agent effectue les ´tapes suivantes e e en se basant sur les traces des activit´s enregistr´es par cet agent et celles des autres e e agents : 1. D´terminer les tˆches et les messages du courant dominant. Dans cette premi`re e a e ´tape, l’agent identifie les tˆches et les messages qui ont contribu´ a la r´alisation e a e` e du r´sultat final. e 2. D´tecter les LAP. L’agent identifie dans la trace, les tˆches qui ont men´ a l’obe a e`

2.2. Apprentissage de la coordination ` partir d’une trace a

29

servation de situations ind´sirables en se basant sur l’analyse des tˆches et des e a messages du courant dominant. 3. Analyser la structure des tˆches. L’agent construit la vue locale de la structure de a tˆches et les mod`les de son environnement qu’il avait lorsque les tˆches qui ont a e a contribu´ au LAP ont ´t´ s´lectionn´es. Ces vues sont ´chang´es entre les agents e ee e e e e qui ont particip´ au LAP pour permettre de construire une meilleure vue de la e situation. Les agents reproduisent ensuite leur processus d’inf´rence en se basant e sur toute l’information disponible a propos de la situation. Ces deux traces, c’est-`` a dire celle enregistr´e a l’ex´cution et celle enregistr´e lors de la reprise avec toutes e ` e e les informations, sont alors analys´es pour trouver la cause exacte du LAP. e 4. Modifier les r`gles de contrˆle de la coordination. Le module d’apprentissage ajoute e o au planificateur des r`gles, sp´cifiques a la situation courante, en se basant sur e e ` l’analyse faite a l’´tape pr´c´dente. Ces r`gles peuvent exiger d’aller chercher l’in` e e e e formation non-locale appropri´e avant l’ex´cution pour ainsi permettre de choisir e e les tˆches et leur priorit´ de mani`re a ´viter la situation probl´matique dans le a e e `e e futur. 5. Identifier la situation. L’agent d´termine la mani`re la plus efficace de d´crire la e e e situation dans laquelle les r`gles d´velopp´es a l’´tape pr´c´dente devraient ˆtre e e e ` e e e e appliqu´es. e Dans cette approche, les agents apprennent uniquement lorsqu’ils rencontrent des situations ind´sirables. Ils analysent par la suite leur trace et celles des autres pour e tenter d’expliquer cette situation d’´chec et d´terminer quelles sont les actions a effectuer e e ` dans le futur pour qu’une telle situation d’´chec ne se reproduise plus. La m´thode e e d’apprentissage est efficace, toutefois les agents pourraient aussi b´n´ficier des situations e e de r´ussites. De cette mani`re, on pourrait ressortir plus d’informations de l’analyse des e e traces en consid´rant les situations de succ`s en plus des situations d’´checs. e e e

2.2.2

Apprentissage ` base de cas ` partir de situations de suca a c`s e

Cette section pr´sente une approche pour l’apprentissage de la coordination, d´vee e lopp´e par Garland et Alterman, qui consiste en l’apprentissage de proc´dures de coore e dination [Garland and Alterman, 2001a, Garland and Alterman, 2001b, Garland, 2000]. Dans cette approche, comme pour l’approche de Sugawara et Lesser (voir section 2.2.1), un agent apprend a partir de ses exp´riences pour am´liorer ses actions futures. La prin` e e cipale diff´rence entre les deux techniques est que l’approche de Garland et Alterman e utilise des situations de succ`s, et ce, en renfor¸ant les solutions ayant men´ a de bons e c e` r´sultats. Plus sp´cifiquement, chaque agent enregistre ses succ`s pass´s dans une base e e e e de cas. Celle-ci est en fait compos´e de proc´dures de coordination qui sont organis´es e e e autour de points de coordination. Ces derniers peuvent ˆtre d´finis comme ´tant des moe e e

2.2. Apprentissage de la coordination ` partir d’une trace a

30

ments au cours d’une activit´ o` un agent ne peut plus progresser sans l’assistance d’un e u autre agent. Dans leurs travaux, Garland et Alterman utilisent en fait deux techniques pour l’apprentissage de la coordination : l’apprentissage de proc´dures de coordination et l’ape prentissage de probabilit´s d’op´rateurs. Les proc´dures de coordination sont des plans e e e partiaux constitu´s de points de coordination et d’actions individuelles qui ont d´mone e tr´ leur efficacit´ dans le pass´ pour r´soudre certains probl`mes de coordination. Les e e e e e probabilit´s d’op´rateurs quant a elles donnent une probabilit´ de succ`s pour chacune e e ` e e des actions possibles. Ces probabilit´s sont utilis´es lors de la planification pour d´cider e e e quand coop´rer et pour adapter les proc´dures de coordination a la situation actuelle. e e ` Les agents utilisent les proc´dures de coordination et les probabilit´s de succ`s de e e e leurs actions pour choisir et adapter leurs plans. Ils ex´cutent par la suite une action e et ils mettent a jour les probabilit´s d’actions selon les r´sultats obtenus. Ils continuent ` e e de cette mani`re jusqu’` ce que tous les buts de tous les agents aient ´t´ r´alis´s. C’est e a ee e e uniquement a la fin du probl`me que les agents apprennent de nouvelles proc´dures de ` e e coordination, c’est-`-dire lorsque l’agent a du temps et une meilleure perspective pour a r´fl´chir sur les actions qui ont contribu´ a son succ`s. Lorsqu’elles sont ajout´es a sa e e e` e e ` m´moire, les proc´dures de coordination sont disponibles lors de la cr´ation d’un plan e e e dans le futur. Pour leur part, les arbres de probabilit´s d’op´rateurs sont mis a jour e e ` durant l’activit´ apr`s chaque action tent´e par l’agent. e e e Garland et Alterman ont montr´ que l’apprentissage de proc´dures de coordination et e e d’op´rateurs de probabilit´s permettaient d’am´liorer les performances des agents dans e e e leur exemple des d´m´nageurs. Ils ont montr´ que c’est en utilisant les deux approches e e e ensemble que l’on arrive aux meilleurs r´sultats. Ils ont aussi montr´ que l’apprentissage e e permettait de r´duire la communication entre les agents. e Les proc´dures de coordination donnent aux agents des visions compatibles d’une e tˆche permettant d’am´liorer la performance du groupe en am´liorant la qualit´ de la a e e e s´lection des buts par l’agent et en simplifiant leurs d´cisions a propos de l’utilit´ de e e ` e coop´rer ou non. Avoir des visions compatibles signifient plus que de travailler sur les e mˆmes buts au mˆme moment, cela signifie, en plus, que les agents approchent le but de e e la mˆme mani`re. Lorsque les agents ont des visions compatibles, les d´cisions a propos e e e ` de la coordination requi`rent moins de raisonnement. La majorit´ des d´cisions sont e e e triviales ´tant donn´ que le r´cepteur de la demande avait d´j` pr´vu dans son plan e e e ea e d’aider l’autre agent. Les deux derni`res m´thodes que nous venons de pr´senter ont plusieurs points en e e e commun. Il serait int´ressant de voir comment on pourrait combiner les deux m´thodes e e bas´es sur l’analyse de traces d’ex´cution. La m´thode de Sugawara et Lesser apprend e e e a partir de situations d’´checs, alors que la m´thode de Garland et Alterman apprend ` e e a partir de situations de succ`s. Il serait int´ressant si les agents pouvaient apprendre a ` e e ` la fois a partir des situations d’´checs et a partir des situations de succ`s. De cette ma` e ` e

2.3. Autres m´thodes d’apprentissage e

31

ni`re, les agents auraient plus d’occasions d’apprendre. De plus, les m´thodes devraient e e pouvoir assez bien se combiner, car les deux utilisent la mˆme approche de base qui est e l’apprentissage a partir de l’analyse de traces d’ex´cution. ` e

2.3

Autres m´thodes d’apprentissage e

Une autre approche, appliqu´e a la RoboCupRescue, a ´t´ celle de Ahmadi et ses cole ` ee l`gues [Ahmadi et al., 2002] qui ont utilis´ une m´thode d’approximation it´rative d’une e e e e fonction pour l’apprentissage de la valeur d’un message. Ensuite, les agents utilisaient les valeurs sur les messages pour savoir s’ils devaient ´couter le message ou non. Leur e approche semble avoir donn´ de bons r´sultats pour les agents PoliceForce, mais comme e e elle est d´pendante de leur impl´mentation, qu’elle utilise plusieurs constantes d´termie e e n´es empiriquement et surtout qu’elle ne se rapproche pas de notre approche, nous ne e nous attarderons pas a l’explication de cette technique plus en d´tails. ` e Prasad et Lesser ont ´crit plusieurs articles d´crivant une m´thode d’apprentissage e e e a base d’instances (COLLAGE) pour l’apprentissage de la coordination entre agents lo` giciels [Prasad and Lesser, 1996a, Prasad and Lesser, 1996b, Prasad and Lesser, 1997a, Prasad and Lesser, 1997b, Prasad and Lesser, 1999, Prasad, 1997]. Avec cette approche, les agents poss`dent a priori un certain nombre de strat´gies de coordination. Le but e e des agents est d’apprendre a choisir la meilleure strat´gie de coordination selon la situa` e tion courante. Pour se faire, ils ex´cutent le syst`me multiagent sur plusieurs probl`mes e e e de coordination et les agents enregistrent les performances des diff´rentes strat´gies de e e coordination pour chacune des situations pr´sent´es. Les agents apprennent donc avec le e e temps a utiliser la strat´gie la plus efficace selon la situation courante. Excelente-Toledo ` e et Jennings [Excelente-Toledo and Jennings, 2002] ont eux aussi ´tudi´ la s´lection d’un e e e m´canisme de coordination parmi une liste pr´d´finie, mais leurs tests ont ´t´ fait dans e e e ee un environnement tr`s simplifi´. L’environnement consiste en une grille sur laquelle ´voe e e luent des agents. Sur la grille, il y a des cases contenant des tˆches sp´cifiques a un agent a e ` et d’autres cases contenant des tˆches coop´ratives. Lorsque les agents arrivent sur une a e case contenant une tˆche coop´rative, ils doivent choisir s’ils initient une coop´ration a e e et si oui, avec quels m´canismes de coordination. En g´n´rale, la m´thode consistant a e e e e ` apprendre a choisir le meilleur m´canisme de coordination parmi un ensemble pr´d´fini ` e e e de m´canismes semble tout de mˆme efficace. Toutefois, elle demande au concepteur de e e d´finir toutes les strat´gies de coordination possibles, ce qui peut ˆtre compliqu´ dans e e e e certains probl`mes. e De leur cˆt´, Horling et lesser [Horling and Lesser, 1999] ont travaill´ sur une maoe e ni`re de diagnostiquer un probl`me de coordination pour permettre un apprentissage e e plus efficace. Les agents poss`dent des r`gles de coordination qui sont repr´sent´es a e e e e ` l’aide du langage de mod´lisation de tˆche TAEMS [Decker and Lesser, 1993]. Lors de e a l’apprentissage, le retour d’information utilis´ pour adapter les r`gles de coordination e e

2.3. Autres m´thodes d’apprentissage e

32

est retourn´ en utilisant un mod`le causal. Le but de ce mod`le causal est de faire un e e e lien entre un probl`me de coordination ou l’effet observ´ (par exemple, d´passement de e e e temps, mauvaise utilisation des ressources, etc.) et la cause (par exemple, ressource bris´e, mauvaise estimation de la dur´e d’une tˆche, etc.). Ceci permet a l’agent d’avoir un e e a ` retour plus pr´cis lui permettant de mieux cibler les r`gles de coordination a ajuster. e e ` Toujours en utilisant le langage TAEMS, Jensen et ses coll`gues [Jensen et al., 1999] e ont d´velopp´ une approche permettant aux agents d’utiliser la structure de tˆche pour e e a apprendre les relations entre les diff´rentes tˆches. Ce qu’ils veulent apprendre, c’est e a l’effet des actions d’un agent sur les autres agents. Ces connaissances peuvent s’av´rer tr`s e e utiles pour coordonner les agents en pr´venant les conflits et en exploitant les relations e b´n´fiques entres les actions. Les relations entre les actions qu’ils apprennent sont : e e – Permettre : pour indiquer que l’ex´cution d’une tˆche permet a une autre tˆche e a ` a d’ˆtre ex´cut´e ; e e e – Empˆcher : pour indiquer que l’ex´cution d’une tˆche empˆche une autre tˆche e e a e a d’ˆtre ex´cut´e ; e e e – Faciliter : pour indiquer que l’ex´cution d’une tˆche facilite ou am´liore l’efficacit´ e a e e de l’ex´cution d’une autre tˆche ; e a – Entraver : pour indiquer que l’ex´cution d’une tˆche entrave ou diminue l’efficacit´ e a e de l’ex´cution d’une autre tˆche ; e a Bui et ses coll`gues [Bui et al., 1998] ont d´velopp´, quant a eux, un cadre d’applie e e ` cation permettant de g´rer l’information incompl`te. Ils associent une distribution de e e probabilit´s pour chaque source d’incertitude. Les agents peuvent apprendre ses distrie butions de probabilit´ a l’aide d’interactions r´p´t´es. Ils ont appliqu´ leur m´thode a e` e ee e e ` une application de prise de rendez-vous. Pour ce faire, chaque agent devait apprendre la distribution de probabilit´ sur les pr´f´rences des utilisateurs. Par la suite, chaque agent e ee pouvait transmettre ses connaissances apprises sur son utilisateur aux autres agents en vue d’aider a bien se coordonner. Cette transmission de connaissances apprises permet ` d’aider les agents a avoir une vision plus juste de l’environnement. ` Comme l’ont fait Haynes et Sen [Haynes and Sen, 1998], on peut aussi utiliser un apprentissage multiagent a base de cas pour apprendre des comportements compl´men` e taires pour ainsi am´liorer la performance du groupe. Dans cette approche, les agents e sont initialis´s avec des comportements de base qui sont modifi´s selon leurs interactions e e avec le monde. Lorsqu’une action d´clench´e par les r`gles comportementales ne peut e e e pas ˆtre ex´cut´e, alors ils consid`rent ce cas comme un cas d’apprentissage n´gatif. e e e e e Ils modifient par la suite les r`gles comportementales de l’agent pour qu’il ´vite de ree e faire la mˆme action. En d’autres mots, les agents apprennent sur la base de punitions, e c’est-`-dire qu’on leur dit ce qu’il convient de ne pas faire. a

2.4. Limitations des approches actuelles

33

2.4

Limitations des approches actuelles

Dans cette section, nous pr´sentons certaines limitations des approches actuelles de e mani`re a faire ressortir l’apport de nos recherches au domaine de l’apprentissage de la e ` coordination dans une syst`me multiagent. Pour ce faire, les approches seront vues selon e trois caract´ristiques importantes a l’apprentissage de la coordination dans un syst`me e ` e multiagent : – Communications. Est-ce que les agents communiquent lors de l’apprentissage ? La communication peut aider les agents a acqu´rir de l’information a propos des autres ` e ` agents. Ces informations peuvent par la suite aider l’agent a trouver une bonne ` mani`re de se coordonner avec les autres. e – Mod`les des autres agents. Il peut ˆtre utile pour un agent de conserver un mod`le e e e du comportement des autres agents avec qui il doit interagir. Avec un tel mod`le, e tout agent pourrait pr´dire les actions des autres agents, ce qui lui permettrait de e se coordonner en choisissant des actions compatibles avec les actions pr´vues par e les autres agents. – Connaissance de l’environnement. Est-ce que les agents ont une connaissance globale de l’environnement ? Bien entendu, si les agents ont une connaissance globale, il est plus facile pour eux de se coordonner, car ils savent o` sont tous les agents u et ils peuvent mˆme en d´duire ce qu’ils font ou ce qu’ils s’apprˆtent a faire. e e e `

2.4.1

Communications

Les communications sont une caract´ristique importante des syst`mes multiagents et e e par le fait mˆme de l’apprentissage a l’int´rieur de tels syst`mes. Certaines m´thodes e ` e e e pr´sent´es dans ce chapitre ne permettent pas la communication entre agents. Une des e e limitations a cette fa¸on de faire est que si l’on veut que les agents se coordonnent ` c sans communiquer, ils ont besoin de pouvoir s’observer. Pouvoir se coordonner sans communications est tr`s int´ressant, car les communications peuvent ˆtre coˆteuses. e e e u Toutefois, d`s que les agents ´voluent dans des environnements partiellement observables, e e la coordination est beaucoup plus difficile a obtenir, car les agents ne peuvent plus se ` percevoir les uns les autres tout le temps. Dans la majorit´ des syst`mes r´els, les agents e e e n’ont qu’une perception partielle de l’environnement et ils ne peuvent donc voir que les agents qui sont a proximit´. Dans de tels environnements, la majorit´ des agents ne sont ` e e pas visibles, donc pour se coordonner, les agents vont devoir utiliser les communications. Comme nous l’avons pr´sent´ a la section 1.2, les environnements consid´r´s dans e e ` ee nos recherches sont des environnements partiellement observables. Par cons´quent, les e communications deviennent importantes pour permettre aux agents d’avoir une vision plus compl`te de la situation. Par ailleurs, les communications peuvent ˆtre tr`s utiles e e e pour acc´l´rer l’apprentissage en permettant aux agents de s’´changer des exp´riences ou ee e e

2.4. Limitations des approches actuelles

34

mˆme des valeurs apprises. Il s’ensuit que les m´thodes n’utilisant pas les communications e e ne sont pas tr`s bien adapt´es a notre probl`me. e e ` e Toutefois, il est tout de mˆme important de mentionner que les communications, e quoique tr`s utiles, sont aussi coˆteuses et peuvent aussi ˆtre incertaines et limit´es. Il e u e e devient donc important de contrˆler les communications de mani`re a obtenir le niveau o e ` « optimal » de communications. Le niveau optimal est celui o` les agents ne se transu mettent que les informations utiles a la coordination, ni plus ni moins. Une augmentation ` ou une diminution des communications entraˆ ıneraient une diminution des performances du syst`me multiagent. Pour atteindre le niveau optimal de coordination, il serait bien e que les agents apprennent quels messages envoy´s selon la situation courante. Les deux e m´thodes vues aux sections 2.2.1 et 2.2.2 permettent de g´rer les messages envoy´s entre e e e agents. Comme nous l’avons pr´sent´ a la section 1.3.2, les communications a l’int´rieur de e e` ` e l’environnement de simulation de la RoboCupRescue sont tr`s limit´es et incertaines. e e Toutefois, comme les agents n’ont qu’une vision partielle de l’environnement, alors les communications sont tr`s importantes pour maintenir une coordination entre les agents. e Pour ces raisons, nous proposons a la section 3.1 une m´thode utilisant l’analyse de traces ` e d’ex´cution pour am´liorer l’utilisation de la bande passante. Le but est que les agents e e puissent transmettre le plus de messages possibles tout en s’assurant qu’ils pourront ˆtre e bien re¸us. c

2.4.2

Mod`les des autres agents e

Les mod`les des autres agents permettent aux uns et aux autres de pouvoir pr´dire e e qu’elle action sera effectu´e par chacun des agents et agir ainsi en cons´quence pour e e conserver une bonne coordination. Toutefois, si le nombre d’agents augmente, il devient de plus en plus coˆteux de maintenir de tels mod`les pour chacun des agents. La comu e plexit´ est aussi due au fait que les agents consid´r´s sont des agents apprenants, c’este ee a-dire dont le comportement change constamment. Il est donc beaucoup plus difficile ` d’apprendre un mod`le de quelque chose d’instable. C’est pourquoi tr`s peu d’approches e e essaient de maintenir un mod`le des autres agents ou si elles le font, c’est uniquement e sur des probl`mes simplifi´s. e e Malgr´ le fait que les mod`les sur les autres agents sont difficiles a maintenir, nous e e ` croyons que les avantages de tels mod`les font en sorte qu’ils sont tout mˆme utiles e e ` la section 3.3.2, nous proposons deux mˆme s’ils ne sont pas mis a jour constamment. A e ` avenues pour simplifier la maintenance des mod`les : la mise a jour a intervalles r´guliers e ` ` e des mod`les des autres agents et le regroupement des agents en groupes d’agents ayant e des caract´ristiques semblables. Avec ces deux m´thodes, les agents pourront maintenir e e des mod`les approximatifs des autres agents qui leur permettront de se coordonner plus e efficacement.

2.4. Limitations des approches actuelles

35

2.4.3

Connaissance de l’environnement

Comme nous l’avons dit pr´c´demment, nous consid´rons les environnements o` les e e e u agents ont une vue partielle de l’environnement. C’est-`-dire que les agents ne per¸oivent a c pas toutes les informations de l’environnement, qu’ils ont tous des perceptions diff´rentes, e qu’ils ne connaissent pas n´cessairement la position de tous les agents et surtout qu’ils e ne connaissent pas n´cessairement quels sont les buts des autres agents et ce qu’ils sont e en train de faire. Ceci fait en sorte d’´liminer toutes les approches qui consid`rent que e e les agents ont une vision globale de l’environnement et/ou qu’ils peuvent voir tous les autres agents. Mˆme si les agents n’ont pas une vision compl`te de l’environnement, ils peuvent tout e e ` de mˆme apprendre certaines caract´ristiques de celui-ci. A la section 3.2, nous pr´sentons e e e une approche permettant de d´terminer quelles sont les routes les plus importantes. Les e agents peuvent donc utiliser cette liste pour se coordonner de mani`re implicite. Par e exemple, les polices vont d´blayer en priorit´ la route la plus importante. Les agents e e pompiers, pour leur part, vont utiliser en priorit´ cette route. Par cons´quent, les agents e e polices vont d´blayer les routes utilis´es par les autres agents. Il s’ensuit que les agents e e vont avoir r´ussi a coordonner leurs actions, en travaillant sur la mˆme route, sans e ` e communication et sans avoir pu observer la route en question.

Chapitre 3 Approches propos´es e
Comme nous l’avons pr´sent´ a la section 1.1.2, les solutions aux probl`mes de coordie e` e nation entre agents peuvent ˆtre divis´es en trois classes g´n´rales [Boutilier, 1996] : celles e e e e bas´es sur la communication, celles bas´es sur des conventions et celles bas´es sur l’ape e e prentissage. Comme nous consid´rons des environnements o` les communications sont e u limit´es et incertaines (voir a ce sujet la section 1.2), les approches bas´es sur la come ` e ´ munication ne sont, par cons´quent, pas vraiment appropri´es. Etant donn´ que le type e e e d’environnement consid´r´ est tr`s complexe et qu’il peut contenir plusieurs situations ee e diff´rentes, le nombre de r`gles de coordination qu’il faudrait d´finir avec une approche e e e bas´e sur les conventions serait tr`s grand. Par ailleurs, cette approche n’offre pas une e e grande flexibilit´. Si l’environnement change, les r`gles doivent ˆtre ajust´es manuellee e e e ment. La troisi`me approche, quant a elle, permet de r´duire le nombre de r`gles que le e ` e e concepteur doit ´crire en utilisant des techniques d’apprentissage. Ainsi, le concepteur e n’a pas a d´finir toutes les proc´dures de coordination pour toutes les situations pos` e e sibles. Par ailleurs, une approche bas´e sur l’apprentissage permet d’obtenir un syst`me e e multiagent pouvant s’adapter graduellement aux changements de l’environnement. Pour ces raisons, nous croyons que les m´thodes d’apprentissage sont les plus suse ceptibles de permettre aux agents d’obtenir une bonne coordination. Dans cette section, nous allons pr´senter nos travaux et nos propositions qui seront divis´s en trois cat´goe e e ries principales d’approches permettant l’am´lioration de la coordination d’agents dans e des environnements temps r´el, partiellement observables et dynamiques. La premi`re e e cat´gorie concerne principalement une m´thode permettant aux agents d’apprendre a e e ` utiliser le plus efficacement possible le canal de communication qui leur est attribu´. La e deuxi`me cat´gorie tente d’utiliser la connaissance de la structure de l’environnement e e pour am´liorer la fa¸on dont les agents abordent leurs tˆches selon leur position dans e c a cet environnement. Finalement, la troisi`me cat´gorie consiste a donner aux agents les e e ` outils leur permettant d’apprendre comment ´volue l’environnement et comment les ace tions des agents l’influencent pour ainsi leur permettre d’anticiper son ´volution et les e actions des autres agents. 36

3.1. Apprendre ` communiquer efficacement a

37

Toutes ces approches ont un mˆme but principal qui consiste a am´liorer la coore ` e dination des actions des diff´rents agents. Dans les sous sections qui suivent, les trois e cat´gories seront pr´sent´es en d´tails tout en sp´cifiant dans quelle mesure elles am´e e e e e e liorent la coordination des agents.

3.1

Apprendre ` communiquer efficacement a

Dans le type d’environnement qui nous int´resse (section 1.2), les communications e sont limit´es et incertaines, par cons´quent plusieurs messages peuvent ne jamais ate e teindre leur(s) destinataire(s). Malgr´ ces complications, les communications demeurent e tout de mˆme n´cessaires, car les agents n’ont qu’une perception locale de l’environe e nement. Il s’ensuit que les agents ont besoin de communiquer ensemble pour essayer d’obtenir une vision plus compl`te et plus juste de l’environnement. Dans cet apprentise sage distribu´ de l’environnement, les agents doivent coop´rer et communiquer ensemble e e pour pouvoir apprendre efficacement [Alonso et al., 2001]. En d’autres mots, les agents doivent pouvoir mettre en commun leurs perceptions locales ou du moins une partie de celles-ci pour que chacun d’eux puisse avoir une perception de la situation globale, leur permettant ainsi de prendre des d´cisions plus ´clair´es par rapport a la situation. e e e ` Les communications permettent aussi aux agents d’obtenir des informations sur les activit´s des autres agents. Sans communication, les agents n’auraient pratiquement aue cune id´e de ce que les autres agents sont en train de faire. Ils ne le sauraient que pour e les agents faisant partie de leur perception locale. Il serait donc pratiquement impossible pour eux de pouvoir coordonner leurs actions, ne sachant pas ce que les autres font ou vont faire. C’est pourquoi, la coordination des agents est tr`s d´pendante des communie e cations. Par cons´quent, il est bon de tenter d’am´liorer l’efficacit´ des communications e e e pour permettre ainsi d’am´liorer la coordination entre les agents. e Dans plusieurs types d’environnement, les communications ne sont pas totalement libres. Comme c’est le cas pour le type d’environnement consid´r´ par cette proposiee tion de recherche, les communications sont g´n´ralement limit´es par la largeur de la e e e bande passante, la capacit´ des diff´rents agents de g´rer les messages et la qualit´ des e e e e transmissions, c’est-`-dire les pertes possibles de messages. Dans le type d’environnea ment pr´sent´ a la section 1.2, les agents n’ont pas la libert´ d’envoyer et de lire tous les e e` e messages qu’ils voudraient, car ils ont des capacit´s limit´es de gestion des messages. e e C’est pourquoi les agents doivent choisir les messages les plus importants a envoyer ` et a lire. Le but ´tant bien entendu que les messages les plus importants aient une grande ` e probabilit´ d’ˆtre re¸us par le ou les destinataire(s) vis´(s). Le probl`me revient donc e e c e e a trouver tout d’abord une mani`re de d´terminer l’importance d’un message. Cette ` e e importance est d´pendante a la fois de l’information contenue dans le message et de la e ` situation dans laquelle se trouve les agents.

3.1. Apprendre ` communiquer efficacement a

38

Pour permettre aux agents de prendre une d´cision ´clair´e a propos des messages a e e e ` ` envoyer et a recevoir, ils pourraient apprendre, a l’aide de plusieurs simulations, qu’elles ` ` sont les messages les plus utiles selon la situation rencontr´e [Stone and Veloso, 1997]. e Avec cette information, les agents pourraient n’envoyer et ne lire que les messages les plus importants. En faisant cela, il y aura moins de messages utilisant la bande passante, par cons´quent, il y aura moins de messages perdus a cause de la limitation d’´coute des e ` e agents. Il est important de mentionner que moins de messages ne veut pas n´cessairement e dire que les agents recevront beaucoup moins d’informations, parce que les messages contenant les informations les plus importantes seront tout de mˆme envoy´s. Il n’y a que e e les messages de moindre importances qui ne seront pas envoy´s. Grˆce a cette m´thode, e a ` e les messages les plus importants, c’est-`-dire ceux contenant le plus d’informations utiles, a auront plus de chances d’atteindre leur(s) destinataire(s). La technique d’apprentissage pr´sent´e dans cette section utilise l’analyse de traces e e d’ex´cution pour d´terminer l’utilit´ d’un message, voir section 2.2. En r´sum´, la teche e e e e nique consiste pour les agents a enregistrer une trace de leur ex´cution et par la suite, a ` e ` un moment d´termin´, a se rencontrer pour pouvoir demander aux autres si les messages e e ` envoy´s valaient la peine d’ˆtre envoy´s et s’il y avait des informations qu’ils auraient e e e aim´ recevoir. G´n´ralement, la rencontre s’effectue lors de la fin d’une ronde de simulae e e tion qui repr´sente en fait une pratique ou un entraˆ e ınement pour les agents. ` A l’aide des informations recueillies aupr`s des autres agents lors de la rencontre, e chaque agent met a jour sa base de cas, contenant pour chaque message, une description ` de la situation et une valeur d’utilit´. Cette base de cas est utilis´e par la suite par e e l’agent pour ´valuer l’utilit´ d’envoyer un certain message dans une situation donn´e. La e e e technique utilis´e est donc une technique d’apprentissage a base d’instances utilisant un e ` raisonnement a base de cas. Chacune des ´tapes de la m´thode est pr´sent´e de mani`re ` e e e e e plus d´taill´e dans ce qui suit. e e

3.1.1

Enregistrement de la trace

La premi`re ´tape consiste en l’enregistrement par les agents d’une trace de leur e e ` ex´cution pendant qu’ils agissent dans l’environnement. A chaque moment o` l’agent e u effectue une action dans l’environnement, il enregistre les informations suivantes dans sa trace d’ex´cution : e – une description de la situation dans laquelle l’agent est a ce moment l`, ` a – les messages envoy´s par l’agent, e – les messages qui auraient pus ˆtre envoy´s par l’agent, e e – les messages re¸us par l’agent, c – l’action ex´cut´e par l’agent. e e

3.1. Apprendre ` communiquer efficacement a

39

La description repr´sente le contexte de l’agent a ce moment l`. Ce contexte doit e ` a permettre a l’agent de se remettre dans une situation particuli`re pour ainsi lui permettre ` e d’´valuer l’utilit´ de recevoir un certain message a ce moment. Comme nous le verrons e e ` plus tard, cette description est aussi utilis´e par l’agent pour indexer les messages et leur e utilit´ dans sa base de cas. Par ailleurs, les messages qui auraient pu ˆtre envoy´s par e e e l’agent sont les messages que l’agent a g´n´r´s, mais qu’il a d´cid´ de ne pas envoyer, e ee e e car les estimations des utilit´s de ces messages ´taient trop faibles. Il les conserve, parce e e qu’il va demander aux autres agents s’il aurait dˆ les envoyer. u

3.1.2

Rencontre

La deuxi`me ´tape consiste en une rencontre a la fin de la simulation pour que les e e ` agents analysent leur trace d’ex´cution et voient ainsi qu’elles sont les messages qui ont e ´t´ r´ellement utiles et ceux qui auraient pu ˆtre ignor´s. On peut faire une analogie ee e e e entre cette fa¸on de faire pour les agents logiciels et la mani`re qu’on certains groupes c e d’humains de s’entraˆ ıner. Par exemple, les pompiers, l’arm´e et les ´quipes de secours efe e fectuent r´guli`rement des pratiques au cours desquelles ils simulent une situation r´elle. e e e Par la suite, il y a g´n´ralement une r´union apr`s la pratique pour analyser le d´roulee e e e e ment de celle-ci de mani`re a voir ce qui s’est pass´ et par cons´quent, ce qui pourrait e ` e e ˆtre am´lior´. e e e Lors de la rencontre, on consid`re que les agents ont acc`s a une plus grande libert´ de e e ` e communication. Ils peuvent donc s’´changer directement plus de messages. En plus de la e relaxation des contraintes de communication, les agents n’ont plus la contrainte de temps r´el. Le but de cette rencontre est d’analyser les traces des agents. Pour effectuer cette e analyse, chaque agent va envoyer a chacun des autres agents les messages qu’il aurait ` pu transmettre a un certain moment dans la simulation. Par la suite, les autres agents ` vont calculer l’utilit´ que ce message aurait eu pour eux s’ils avaient pu le recevoir au e moment sp´cifi´. Ensuite, ils retournent cette valeur d’utilit´ a l’agent qui l’a demand´. e e e` e Ce processus est illustr´ sur la Figure 3.1. Par exemple, l’agent A veut savoir si le e message m1 a ´t´ ou aurait ´t´ utile pour les agents B et C. Pour cela, il envoie m1 , ee ee avec le temps auquel il aurait pu ˆtre envoy´, a tous les autres agents. Lorsque B et e e ` C re¸oivent m1 , ils regardent leur trace d’ex´cution pour savoir dans quelle situation c e ils ´taient au moment o` ils auraient pu recevoir m1 . Ensuite, ils calculent une valeur e u d’utilit´ u1 pour m1 et la renvoie a l’agent A. La valeur d’utilit´ retourn´e par un agent e ` e e va d´pendre de : e – l’information contenu dans le message, – l’agent qui re¸oit le message, c – la position de l’agent au moment o` il aurait re¸u le message, u c – l’activit´ de l’agent a ce moment, e ` – si l’information contenue dans le message aurait pu ˆtre utilis´e par l’agent. e e

3.1. Apprendre ` communiquer efficacement a

40

m2 m1 m3 m2 m3 u1

u1 u2 u3 u2

m1

u3

(a)

(b)

Figure 3.1: Illustration des communications entre les agents lors de l’´valuation e de l’utilit´ d’un message. Les cercles A, B et C repr´sentent des agents. (a) Tous e e les agents envoient un message ` tous les autres agents. (b) Les agents calculent a l’utilit´ des messages qu’ils re¸oivent et retournent cette utilit´ ` l’agent qui l’a e c ea demand´. e

Par exemple, une information sur une route est utile seulement si l’agent a a utiliser ` cette route peu de temps apr`s la r´ception du message. Un autre exemple pourrait ˆtre e e e que, pour un pompier, un message d’aide pour aller ´teindre un feu est important si e l’agent a suffisamment de temps pour se rendre au feu et l’´teindre. e Dans notre exemple, l’agent A va donc recevoir une ´valuation d’utilit´ de la part e e de chacun des agents. Plusieurs mani`res de combiner les diff´rentes valeurs d’utilit´ e e e peuvent ˆtre ´tudi´es. Par exemple, on peut faire la moyenne ou on peut prendre le e e e maximum des utilit´s re¸ues. Avec la moyenne, l’agent va savoir si une majorit´ des e c e agents ont trouv´ le message utile, donc il va envoyer le message qui risque d’ˆtre utile e e pour le plus grand nombre d’agents. Pour le deuxi`me cas, l’agent consid`re que si le e e message est tr`s important pour un certain agent, alors il vaut mieux l’envoyer, mˆme e e s’il n’est pas vraiment utile pour la majorit´ des agents. Pour ce dernier cas, l’utilit´ du e e message d´pend de l’identit´ de l’agent pour qui le message est important. Si le message e e permet a cet agent d’am´liorer de beaucoup la performance du groupe, alors il vaut ` e mieux envoyer le message. Lors de nos recherches, diff´rentes m´thodes de combinaison des utilit´s seront ´tue e e e di´es. Les m´thodes seront test´es sur diff´rentes situations pour voir laquelle des m´e e e e e thodes est la plus efficace. Le but est d’obtenir la plus grande utilit´ globale pour les e messages. Donc, la m´trique qui sera utilis´e pour effectuer les tests sera de calculer e e la somme des utilit´s pour tous les messages re¸us par les agents. Ainsi, la meilleure e c m´thode sera celle qui permet aux agents de recevoir le plus de messages utiles. Les e tests effectu´s permettront de d´terminer dans quel contexte une m´thode est meilleure e e e

3.1. Apprendre ` communiquer efficacement a

41

Algorithme 3.1 Algorithme utilis´ pour calculer l’utilit´ d’un message. e e Proc´dure CALCULE-UTILITE-MESSAGES(messages) e Entr´e : messages : tous les messages que cet agent a ou aurait pu envoyer. e Statique : BaseConnaissances : la base de connaissance de l’agent contenant tous les messages avec la situation dans laquelle ils ont ´t´ envoy´s et leur estimation d’utilit´. ee e e Pour tout m dans messages Faire Envoyer m avec le temps auquel il aurait pu ˆtre envoy´ aux autres agents e e Attendre que les agents aient retourn´ toutes les valeurs d’utilit´. e e utilit´m = COMBINER(toutes les utilit´s re¸ues) e e c METTRE-A-JOUR-UTILITE(BaseConnaissances, m, utilit´m ) e Fin Pour

qu’une autre. Avec cette information, les agents pourront utiliser la meilleure m´thode e selon le contexte. Peu importe la mani`re de combiner les utilit´s re¸ues, l’agent va utiliser cette ine e c formation pour mettre a jour sa base de cas en ajustant la valeur d’utilit´ du message ` e m1 pour la situation donn´e, ou en ajoutant un nouveau cas si le cas n’existait pas d´j`. e ea Si le cas existait d´j` dans la base de cas, l’agent affectera a ce cas, la moyenne entre ea ` l’ancienne utilit´ et la nouvelle valeur. L’utilit´ est calcul´e s´par´ment pour chaque type e e e e e d’agents, parce que l’utilit´ d’un message est tr`s d´pendante du type de l’agent qui ree e e coit le message. L’algorithme utilis´ pour apprendre progressivement l’utilit´ de chaque ¸ e e message, est pr´sent´ a l’Algorithme 3.1. e e` Pour leur part, les agents B et C vont eux aussi enregistrer dans leur base de cas l’utilit´ du message et l’´metteur du message. Les agents B et C vont pouvoir utiliser e e cette information pour estimer l’utilit´ de lire des messages provenant d’un agent similaire e a A dans des situations futures semblables. `

3.1.3

Utilisation des informations apprises

Cette rencontre donne des informations importantes aux agents ´metteurs et r´cepe e teurs pour les aider a am´liorer leurs communications. Premi`rement, si l’on regarde du ` e e cˆt´ de l’exp´diteur, les informations recueillies lors de la rencontre lui donne une id´e oe e e des messages qui sont utiles pour les autres agents. Ceci lui permettra d’´valuer si un e message est suffisamment important pour ˆtre envoy´. Pour obtenir une estimation de e e l’utilit´ du message qu’il veut envoyer, l’agent utilise la fonction suivante : e

3.1. Apprendre ` communiquer efficacement a

42

S(cq , ci )U (ci ) ˆ U (cq ) =
ci ∈BC

S(cq , ci )
ci ∈BC

(3.1)

o` U (cq ) est l’estimation de l’utilit´ pour le cas courant, ci est un cas dans la base u ˆ e de cas BC, U (ci ) est l’utilit´ du cas i dans la base de cas et S(cq , ci ) est la valeur de e similitude entre cq et ci . Cette fonction retourne comme utilit´ pour le cas courant une e moyenne des utilit´s des cas pr´sents dans la base de cas. Ces utilit´s sont pond´r´es e e e ee selon leur valeur de similitude avec le cas courant. Cette valeur de similitude repr´sente e une distance entre les cas selon la diff´rence du message et de la situation dans laquelle le e message est envoy´. Plus un cas est similaire au cas courant, plus il a un poids important e dans l’´valuation de l’utilit´ du cas courant. e e Comme la base de cas est enrichie apr`s chaque simulation, l’agent va apprendre au e fil des simulations a estimer de plus en plus efficacement l’utilit´ d’un message. Il pourra ` e par cons´quent utiliser cette estimation pour savoir si un certain message vaut la peine e d’ˆtre envoy´. Plus pr´cis´ment, l’agent g´n`re, a chaque tour, tous les messages qu’il e e e e e e ` peut envoyer et il envoie uniquement les messages ayant obtenus les meilleures utilit´s e et de plus, ces utilit´s doivent ˆtre sup´rieures a une certaine borne pr´´tablie. La borne e e e ` ee fait en sorte qu’un agent n’envoie pas de message s’il n’a rien d’important a dire. ` Compte tenu que les messages ont une chance de ne pas se rendre a destination, ` les agents doivent donc ˆtre en mesure de g´rer l’incertitude reli´e a la transmission e e e ` de messages. Pour se faire, ils doivent tenir compte de la probabilit´ qu’un message e atteigne le ou les destinataire(s). La probabilit´ qu’un message soit re¸u va ˆtre estim´ e c e e en enregistrant a chaque simulation les messages envoy´s et les messages re¸us. Donc, ` e c pour chaque type d’agents, il y aura un tableau indiquant le nombre de messages d’un certain type envoy´s et le nombre de ces messages r´ellement re¸us par chaque type e e c d’agents. Le Tableau 3.1 montre un exemple pour seulement deux types d’agents et deux types de messages. Les variables w, x, y et z repr´sentent le nombre moyen de messages e re¸us par chaque type d’agents et pour chaque type de messages. Par exemple, w est la c somme de tous les messages de type M1 re¸us par tous les agents de type A1 , divis´e par c e le nombre d’agents de type A1 : w=
a∈A1

Na,M1

|A1 |

o` Na,M1 est le nombre de messages de type M1 re¸u par l’agent a et |A1 | est le u c nombre d’agents de type A1 . Le Tableau 3.1 sera utilis´ pour calculer la probabilit´ qu’un message soit re¸u par e e c les destinataires. Par exemple, la probabilit´ qu’un agent de type A1 re¸oive un message e c de type M1 est donn´e par w/n1 . Ces probabilit´s seront utilis´es par les agents pour e e e

3.1. Apprendre ` communiquer efficacement a

43

Type message M1 M2

Nb mess. envoy´s e n1 n2

Type agent A1 A2 w x y z

Tableau 3.1: Exemple de tableau utilis´ pour enregistrer le nombre de messages e re¸us. c

calculer l’utilit´ globale d’envoyer un certain message. L’utilit´ globale sera la somme e e des utilit´s pour chacun des types d’agents pond´r´es par les probabilit´s que ces agents e ee e re¸oivent le message. c

U T (m) = P (A1 , m) · U (m, A1 ) + P (A2 , m) · U (m, A2 ) + . . . + P (An , m) · U (m, An ) (3.2) o` P (A1 , m) est la probabilit´ qu’un agent de type A1 re¸oive le message m et u e c U (m, A1 ) est l’utilit´ du message m pour l’agent de type A1 . La probabilit´ est done e n´e a l’aide du Tableau 3.1 et l’utilit´ est donn´e par l’´quation 3.1. e ` e e e D’un autre cˆt´, l’agent r´cepteur va pouvoir avoir une meilleure id´e des messages oe e e ´ qui valent la peine d’ˆtre ´cout´s et ceux qu’il vaut mieux ignorer. Etant donn´ qu’un e e e e agent peut voir, lors de la rencontre d’apr`s simulation, tous les messages que les autres e agents auraient pu lui envoyer, alors il peut savoir dans quelles situations et quels agents avaient des informations utiles pour lui. Par cons´quent, l’agent va pouvoir avoir une e id´e, dans les situations futures, des agents qu’il serait important d’´couter. e e Pour ce faire, l’agent r´cepteur va g´rer une base de cas contenant des cas indiquant e e l’utilit´ d’´couter un certain type d’agent dans une certaine situation. Lorsqu’un agent e e va recevoir un message lors de la rencontre lui demandant de calculer l’utilit´ de ce e message, il va mettre a jour sa base de cas. Si la description de l’agent et de la situation ` correspondent a un cas d´j` pr´sent dans la base de cas, alors l’agent va modifier l’utilit´ ` ea e e en attribuant a ce cas, la moyenne entre l’ancienne utilit´ et la nouvelle utilit´. Si c’est un ` e e nouveau cas, alors l’agent l’ajoute tout simplement dans sa base de cas, comme le montre l’algorithme 3.2. Les cas contenus dans sa base de cas vont contenir les informations suivantes : – la description de l’agent qui l’a envoy´ ; e – l’information contenu dans le message ; – la description de la situation dans laquelle il aurait pu recevoir le message ; – l’utilit´ moyenne des messages correspondant a ce cas. e ` Lors de ses exp´riences futures, l’agent va utiliser sa base de cas pour savoir s’il est e pr´f´rable de lire un message ou non. Pour estimer l’utilit´ de lire un certain message, ee e l’agent utilise la mˆme strat´gie que pour le calcul de l’utilit´ d’envoyer un message. Il e e e

3.2. Apprentissage de l’environnement

44

Algorithme 3.2 Algorithme utilis´ pour calculer l’utilit´ d’un message pour le r´cepteur e e e et mettre a jour la base de connaissances de ce dernier. ` Proc´dure GESTION-MESSAGES-RECEPTEUR(´metteur, situation, message) e e Entr´e : ´metteur : l’agent qui a envoy´ le message. e e e situation : la situation au moment o` le message aurait ´t´ envoy´. u ee e message : le message re¸u par l’agent. c Statique : BaseConnaissances : la base de connaissance de l’agent contenant tous les messages avec la situation dans laquelle ils ont ´t´ re¸us et leur estimation d’utilit´. ee c e um ← CALCULER-UTILITE(message) Retourner um a l’´metteur. ` e Si DEJA-PRESENT(BaseConnaissances, ´metteur, situation, message) Alors e ancienneU tilite ← UTILITE(BaseConnaissances, ´metteur, situation, message) e nouvelleU tilite = (ancienneU tilite + um )/2 METTRE-A-JOUR-UTILITE(BaseConnaissances, ´metteur, situation, message, e nouvelleUtilite) Sinon AJOUTER-CAS(BaseConnaissances, ´metteur, situation, message, u m ) e Fin Si

calcule donc une moyenne pond´r´e de tous les cas qu’il a dans sa base de cas en utilisant ee l’´quation 3.1. e Ainsi, le receveur pourra choisir plus judicieusement les messages qu’il convient d’´couter. Ceci est important, car il n’a le temps d’en ´couter qu’un nombre limit´, e e e c’est pourquoi il doit pouvoir faire le bon choix pour ne pas perdre des informations importantes ou tout simplement perdre son temps a lire des messages inutiles. `

3.2

Apprentissage de l’environnement

La technique pr´sent´e dans cette sous-section est une approche pr´conisant l’ape e e prentissage de l’environnement pour aider la coordination entre agents. Bien entendu, comme l’apprentissage dans ce cas est tr`s d´pendant de l’environnement ´tudi´, les e e e e m´thodes pr´sent´es seront un peu plus d´pendantes du domaine d’application que les e e e e m´thodes pr´c´dentes. Les principes a la base de ces m´thodes demeurent tout de mˆme e e e ` e e g´n´ralisables a d’autres domaines d’application. e e ` Dans la simulation de la RoboCupRescue, les agents ´voluent dans la mˆme ville a e e ` plusieurs reprises, par cons´quent ils pourraient apprendre leur environnement, c’est-`e a dire la structure de la ville. Cette apprentissage serait effectu´ dans le but de trouver e

3.2. Apprentissage de l’environnement

45

la meilleure fa¸on d’aborder un d´sastre selon son emplacement dans la ville. De cette c e mani`re, les agents pourraient avoir diff´rentes strat´gies adapt´es a chacune des parties e e e e ` de la ville. Ceci est semblable a ce que font de vrais pompiers : ils ´voluent constam` e ment dans la mˆme ville et ils connaissent donc les secteurs de la ville qui sont les plus e vuln´rables, les plus importants, etc. e Compte tenu que les agents ´voluent dans une simulation, ils ont un avantage sur les e vrais sauveteurs. Ils peuvent « d´truire » la ville a plusieurs reprises pour tester diff´rentes e ` e strat´gies de sauvetage. Ils peuvent partir des feux dans une certaine partie de la ville e et voir quelles sont les approches les plus efficaces pour solutionner le probl`me qu’ils e ont cr´´. Par exemple, ils pourraient identifier les routes les plus importantes a d´blayer, ee ` e comment positionner les pompiers ou comment organiser les ´quipes de sauvetage, tout e cela d´pendamment de o` le d´sastre est situ´ dans la ville. e u e e Pour apprendre quelles routes d´blayer, les agents doivent identifier les routes les e plus importantes pour permettre a tous les autres agents de pouvoir se d´placer le plus ` e librement possible dans la simulation. Cela ne veut pas dire que les agents PoliceForce vont avoir a d´blayer toutes les routes. Ils ont uniquement a d´blayer les routes qui sont ` e ` e utilis´es par les autres agents pour atteindre leurs buts. La question est donc de savoir e quelles sont les routes qui seront utilis´es par les autres agents ? e Les agents PoliceForce doivent donc pouvoir apprendre quelles sont les routes les plus utilis´es par les autres agents. Cette information leur permettraient, lors de la simulation, e de se coordonner avec les autres agents en priorisant le d´blaiement des routes les plus e utilis´es. Par exemple, pour effectuer ce type d’apprentissage, plusieurs feux pourraient e ˆtre partis dans un secteur de la ville, avec toutes les routes libres. Par la suite, chaque e agent travaillant dans cette simulation pour ´teindre les feux enregistrerait toutes les e ´ routes qu’il a emprunt´es. Etant donn´ que toutes les routes sont d´blay´es, l’agent e e e e emprunterait toujours les chemins optimaux pour se rendre d’un point a un autre. De ` cette mani`re, a la fin de la simulation, toutes les routes auraient une valeur indiquant e ` le nombre de fois qu’elle a ´t´ parcourue. ee Cette information pourrait ˆtre ensuite utilis´e par les agents PoliceForce pour classer e e les routes de la plus utilis´e a la moins utilis´e. Par cons´quent, les agents pourraient e ` e e utiliser cette liste ordonn´e de routes pour choisir les routes a d´blayer si une situation e ` e semblable se reproduit. Ce processus peut ˆtre reparti pour un autre secteur de la ville, e et ainsi de suite pour tous les secteurs de la ville. Le Tableau 3.2 donne un exemple du tableau utilis´ pour enregistrer le nombre de routes visit´es selon l’emplacement des e e feux. Dans le tableau, il y a cinq routes et trois secteurs. Chacune des lettres (a a o) ` repr´sente le nombre de fois que la route a ´t´ visit´e lorsqu’il y avait un feu dans le e ee e secteur en question. Par exemple, a est le nombre de fois que la route 1 a ´t´ visit´e ee e lorsqu’il y avait des feux dans le secteur 1. Ce tableau permet aux agents PoliceForce, lorsqu’ils sont inform´s de l’emplacement d’un feu, de savoir quelles sont les routes a e ` d´blayer prioritairement. e

3.3. Anticipation

46

Routes 1 2 3 4 5

Secteurs 1 2 3 a b c d e f g h i j k l m n o

Tableau 3.2: Exemple de tableau utilis´ pour enregistrer le nombre de routes e visit´es selon l’emplacement des feux. e

Par ailleurs, cette liste ne sera pas uniquement utilis´e par les agents PoliceForce, les e autres agents mobiles, FireBrigade et AmbulanceTeam, vont pouvoir eux aussi utiliser cette liste. Pour leur part, ils vont l’utiliser pour influencer leur algorithme donnant le chemin a suivre pour se d´placer, c’est-`-dire que les agents vont favoriser les routes qui ` e a sont les plus importantes. Pour se faire, ils vont pond´rer chacune des routes par son e utilisation relative. L’agent va recevoir une liste contenant pour chaque route, le nombre de fois qu’elle a ´t´ visit´e. Il additionne toutes les valeurs pour obtenir le nombre total ee e de routes visit´es (Nv ). Par exemple, si la route r1 a ´t´ visit´e 12 fois et que Nv = 123, e ee e alors l’algorithme utilis´ pour calculer le chemin multipliera par 12/123 le coˆt pour e u emprunter la route r1 . De cette fa¸on, l’agent va donc apprendre une distribution de c probabilit´s sur les routes visit´es. Cette distribution lui permet d’avoir une estimation e e de la probabilit´ qu’une route soit emprunt´e si un feu se d´clare dans un certain secteur. e e e En utilisant cette distribution de probabilit´s, les agents vont avoir tendance a utiliser e ` plus souvent les routes les plus importantes, et comme ce sont elles qui seront d´blay´es en e e premier, il y a moins de chance que les routes emprunt´es par les agents soient bloqu´es. e e Cette approche fait en sorte qu’il devient possible de changer de cartes facilement parce qu’il suffira de relancer les algorithmes d’apprentissage pour que les agents puissent adapter leur comportement a cette nouvelle ville, tout cela sans aucune programmation ` de la part des concepteurs. De cette mani`re, toutes les connaissances sp´cifiques a la e e ` ville vont ˆtre apprises par les agents et non programm´es par les concepteurs. e e

3.3

Anticipation

L’anticipation est une composante importante pour maximiser la probabilit´ d’obtenir e une coordination efficace dans des ´quipes d’agents[Veloso et al., 1999]. Par exemple, si e un agent FireBrigade arrose un feu pr´sentement et qu’il estime qu’il ne lui reste que 5 e minutes avant de l’´teindre, alors il pourrait trouver tout de suite sa prochaine destination e et demander aux agents PoliceForce de d´blayer les routes entre sa position actuelle et e sa prochaine destination.

3.3. Anticipation

47

3.3.1

Interactions des agents avec l’environnement

Bien entendu, pour que l’anticipation soit efficace, les agents doivent pouvoir apprendre comment le d´sastre ´volue dans le temps et comment les actions des agents e e interagissent avec l’environnement. Ceci peut ˆtre fait tout simplement en observant e l’´volution d’un d´sastre sur plusieurs simulations pour permettre aux agents d’anticiper e e une telle ´volution dans les simulations futures. e Par exemple, les agents FireBrigade pourraient apprendre combien de temps ca prend ¸ pour ´teindre un feu en essayant d’´teindre des feux dans plusieurs situations diff´rentes. e e e Les agents auraient donc une estimation du temps n´cessaire pour ´teindre des feux dans e e diff´rentes situations, d´finies par les caract´ristiques suivantes : e e e – La grandeur du bˆtiment ; a – La composition du bˆtiment (bois, structure en acier ou b´ton arm´) ; a e e – L’intensit´ du feu ; e – L’´tat du bˆtiment ; e a – Le nombre d’agents FireBrigade pr´sent pour ´teindre le bˆtiment ; e e a – La quantit´ d’eau utilis´e. e e Un autre exemple pourrait ˆtre, pour les agents PoliceForce, d’anticiper le temps e n´cessaire pour d´blayer une route. Un agent arrivant a une route, pourrait ´valuer le e e ` e temps n´cessaire pour la d´blayer en tenant compte de la grandeur de la route et a quel e e ` point elle est bloqu´e. Par la suite, il pourrait informer les autres agents que la route e devrait ˆtre d´blay´e au temps t. Cette information permettrait aux agents de favoriser e e e l’utilisation de cette route lors de la recherche de chemin, car ils sauraient qu’elle est libre. Ces estimations vont permettre aux agents d’anticiper plus pr´cis´ment comment la e e simulation ´voluera. S’ils ont de meilleures anticipations, ils pourront construire des plans e a long terme plus pr´cis. En partageant certaines informations sur leurs plans, comme ` e dans l’exemple au d´but de cette section, les agents pourraient se coordonner avec les e plans des autres agents. Autrement dit, les agents pourraient utiliser une adaptation a ` notre cas de la technique de la planification globale partielle (PGP) [Durfee, 1988] pour se coordonner.

3.3.2

Apprentissage de mod`les des autres agents e

Une autre mani`re d’anticiper serait de permettre aux agents d’apprendre un mod`le e e des autres agents. L’apprentissage de mod`les des autres agents n’est vraiment pas une e tˆche facile, surtout lorsque les agents apprennent et donc changent constamment. Malgr´ a e le fait que les mod`les sur les autres agents sont difficiles a maintenir, nous croyons que les e `

3.3. Anticipation

48

avantages de tels mod`les font en sorte qu’ils sont tout mˆme utiles mˆme s’ils ne sont pas e e e mis a jour constamment. Nous proposons deux avenues pour simplifier la maintenance ` des mod`les. e Une premi`re avenue est l’utilisation du concept de rencontre apr`s pratique, utilis´ e e e a la section 3.1.2 pour l’apprentissage de l’importance des messages. En fait, nous al` lons utiliser cette rencontre comme opportunit´ de mettre a jour les mod`les des autres e ` e agents. Ces rencontres seront donc des moments propices a l’´change d’informations ` e sur les diff´rents mod`les d´cisionnels des agents. En faisant cela, les agents pourraient e e e conserver des mod`les relativement justes des autres agents, mˆme s’ils ´voluent dans e e e un environnement temps r´el. Par exemple, au moment de la rencontre, un agent Firee Brigade pourrait donner aux autres agents des informations sur la fonction qu’il utilise pour choisir le feu a ´teindre. Avec cette information, les agents PoliceForce pourraient `e anticiper, sans aucun messages, le bˆtiment que l’agent FireBrigade va ´teindre et l’aider a e a se rendre a ce bˆtiment en d´blayant les routes a l’avance. ` ` a e ` Deuxi`mement, si on peut regrouper les agents selon certaines caract´ristiques dise e tinctives et en ne consid´rant par la suite que les groupes cr´´s, alors on ferait diminuer e ee de beaucoup le nombre de mod`les a maintenir. Dans le cadre de la RoboCupRescue, il e ` est assez simple de faire cela, ´tant donn´ qu’il n’y a que trois types d’agents mobiles, e e donc chaque agent n’aurait qu’` apprendre deux mod`les. a e Le fait de n’apprendre qu’un seul mod`le par groupe d’agents et de mettre a jour ces e ` mod`les r´guli`rement est un bon compromis qui permettra de g´rer la complexit´ de e e e e e maintenir constamment un « bon mod`le » des autres agents. e Pour les agents de mˆme type, c’est-`-dire des agents homog`nes, l’anticipation est e a e beaucoup plus facile. Comme les agents ont le mˆme processus de raisonnement, il s’ensuit e qu’ils peuvent facilement reproduire le raisonnement d’un autre agent pour pr´dire ce e qu’il va faire. Bien entendu, le probl`me est au niveau des ´tats respectifs des deux e e agents. En effet, les agents ont uniquement des perceptions limit´es, donc un agent ne e peut pas vraiment savoir ce qu’un autre agent voit, par cons´quent, il se doit de faire e des « suppositions » sur ce que l’autre per¸oit. Si les deux agents on une vision similaire c de la situation, alors la coordination sera facilit´e. Toutefois, s’ils n’ont pas la mˆme e e vision, ils pourraient ne pas se coordonner efficacement, mˆme si chacun d’eux essai e de se coordonner avec l’autre. Le travail de l’agent va donc ˆtre d’essayer d’estimer la e situation per¸ue par l’autre agent. c Dans le cas de la RoboCupRescue, on peut supposer que les agents situ´s dans la e mˆme r´gion ont sensiblement la mˆme vision de la situation, donc deux agents proches e e e pourraient arriver a se coordonner sans avoir a communiquer. Toutefois, un autre pro` ` bl`me est de savoir s’il y a un autre agent a proximit´. Les agents ont une perception e ` e locale ne les permettant pas de voir tr`s loin, donc il se peut que deux agents soient dans e la mˆme r´gion, mais que les deux ne le sachent pas parce qu’ils ne peuvent pas se voir. e e ` A ce moment, mˆme s’ils sont des agents homog`nes pensant de la mˆme mani`re, ils e e e e

3.4. Contributions anticip´es e

49

ne pourront pas se coordonner, parce qu’ils ne pourront pas estimer le comportement de l’autre agent, car ils ne sauront pas dans quelle situation il se trouve.

3.4

Contributions anticip´es e

Premi`rement, la partie a laquelle nous nous attaquons est l’am´lioration de l’utie ` e lisation des communications. Nous avons vu que les approches de Sugawara et Lesser (section 2.2.1) et celle de Garland et Alterman (section 2.2.2) ont ´t´ utilis´es pour apee e prendre a diminuer les communications entre les agents ou a atteindre un bon niveau de ` ` communication. Nous proposons de jumeler les deux approches en consid´rant lors de e l’apprentissage a la fois les situations d’´checs (Sugawara et Lesser) et les situations de ` e r´ussites (Garland et Alterman). Nous croyons que l’apprentissage sera plus rapide si les e agents profitent de toutes les situations d’apprentissage possibles. Malgr´ le fait que les mod`les sur les autres agents sont difficiles a maintenir, nous e e ` croyons que les avantages de tels mod`les font en sorte qu’ils sont tout mˆme utiles mˆme e e e s’ils ne sont pas mis a jour constamment. Nous proposons deux avenues pour simplifier ` la maintenance des mod`les. Une des avenues est l’utilisation du concept de rencontre e apr`s pratique, non seulement comme moment o` les agents analyseront leur trace, mais e u aussi comme opportunit´ de mettre a jour les mod`les des autres agents. Nous croyons e ` e pouvoir permettre aux agents de conserver des mod`les relativement justes des autres e agents, mˆme s’ils ´voluent dans un environnement temps r´el. e e e Par ailleurs, nous proposons aussi certaines m´thodes permettant aux agents d’ape prendre leur environnement et d’apprendre les interactions de leurs actions avec l’environnement. La m´thode pr´sent´e pour l’apprentissage de l’environnement concernait e e e l’apprentissage de l’importance relative des routes selon l’emplacement des feux. Une autre m´thode permettait aux agents pompiers d’apprendre le temps n´cessaire pour e e ´teindre un feu. Toutes ces m´thodes d’apprentissage permettent aux agents d’apprendre e e certains comportements de base leur permettant d’agir efficacement dans la simulation. Un des apports de nos recherches visera ´galement a analyser les interactions entres e ` les diff´rentes m´thodes d’apprentissage utilis´es pour voir si elles se combinent bien pour e e e g´rer la complexit´ d’un environnement partiellement observable, stochastique et temps e e r´el pour atteindre une bonne coordination entre les agents. L’´tude des interactions e e entre diff´rentes m´thodes d’apprentissage a ´t´ tr`s peu ´tudi´ et nous croyons que cela e e ee e e e m´rite des ´tudes plus approfondies. e e

Chapitre 4 Plan de travail pour la th`se e
Dans les chapitres pr´c´dents, nous avons pr´sent´ le type d’environnement qui nous e e e e int´resse pour nos recherches. C’est-`-dire un environnement a la fois partiellement obe a ` servables, stochastique, dynamiques et temps r´el. Ces caract´ristiques sont celles des e e environnements r´els. Dans ce type d’environnement complexe, nous nous int´ressons a e e ` la coordination entre agent et plus particuli`rement a des m´thodes permettant d’am´e ` e e liorer cette coordination. Nous consid´rons donc des environnements contenant plusieurs e agents h´t´rog`nes, c’est-`-dire poss´dant des capacit´s diff´rentes. Il est facilement d´ee e a e e e e montrable que le syst`me multiagent gagne ´norm´ment si les agents qui le compose e e e r´ussissent a se coordonner efficacement. e ` Toutefois, cette coordination n’est vraiment pas ´vidente a obtenir et a maintenir. e ` ` Au chapitre 2, nous avons vu quelques approches utilis´es pour am´liorer la coordination e e entre agents. En nous inspirant de ces approches, nous avons montr´ au chapitre 3 les e approches que l’on propose pour l’am´lioration de la coordination dans un environnement e exigeant, celui de la RoboCupRescue. Il est maintenant venu le temps de pr´senter la plan de travail de cette th`se. Tout e e d’abord, nous pr´senterons les travaux d´j` effectu´s, pour par la suite pr´sent´ les e ea e e e travaux restant a accomplir et finalement, nous pr´senterons le plan de la th`se, pla¸ant ` e e c ainsi dans le temps les diff´rentes ´tapes restantes d’ici la fin de cette th`se. Pour bien e e e se replacer dans le contexte, revoici les diff´rentes ´tapes de ces recherches qui ont ´t´ e e ee pr´sent´es a la section 1.2 : e e ` ´ – Etude des approches existantes en apprentissage de la coordination ; – Proposer des m´thodes originales pour l’apprentissage de la coordination applie cables dans le type d’environnement d´crit pr´c´demment ; e e e – Impl´mentation des m´thodes d’apprentissage dans l’environnement de test, c’este e a-dire l’environnement de simulation de la RoboCupRescue (section 1.3.2) ; ` – Montrer l’efficacit´ des m´thodes propos´es en analysant les r´sultats obtenus lors e e e e des tests ; 50

4.1. Travaux effectu´s e

51

Dans les sous-sections suivantes, nous pr´senterons plus en d´tails ce qui a ´t´ fait et e e ee ce qui reste a faire pour l’ach`vement des recherches en cours. Mais en r´sum´, les points ` e e e un, deux et une bonne partie du point trois ont ´t´ effectu´s, tandis qu’il reste le point ee e quatre et une partie du point trois a compl´ter. ` e

4.1

Travaux effectu´s e

Cette section pr´sente les travaux qui ont ´t´ effectu´s jusqu’` ce jour. Les travaux e ee e a effectu´s peuvent se diviser en deux cat´gories. La premi`re ´tant l’´tude th´orique de e e e e e e la coordination, de l’apprentissage et de l’apprentissage de la coordination dans des syst`mes multiagents. L’autre cat´gorie des travaux effectu´s a ´t´ l’impl´mentation d’une e e e ee e ´quipe d’agents pour l’environnement de simulation de la RoboCupRescue. Les deux e sous-sections suivantes pr´sentent plus en d´tails chacune de ces deux grandes cat´gories e e e de travaux.

4.1.1

´ Etude th´orique e

Le premier travail effectu´ a ´t´ l’´tude de l’´tat de l’art sur les algorithmes d’ape ee e e prentissage, de coordination entre agents logiciels et plus principalement sur les d’apprentissage de la coordination entre agents. Pour ce faire, plusieurs livres et articles du domaine ont ´t´ lus et analys´s. Nous ne nous attarderons pas plus sur les d´tails de ee e e l’´tude th´orique a ce moment, car on retrouve au chapitre 2 un bon r´sum´ des princie e ` e e pales m´thodes existantes en lien avec nos recherches. Ce chapitre fait donc foi de l’´tude e e th´orique qui a ´t´ effectu´e. e ee e Une autre partie du travail th´orique a ´t´ l’´tude de l’environnement de la Roe ee e boCupRescue. Tout d’abord, nous avons ´tudi´ le simulateur de la RoboCupRescue e e pour bien comprendre son fonctionnement et voir s’il ´tait possible d’appliquer des ale gorithmes d’apprentissage dans cet environnement. Comme nous l’avons mentionn´ a la e` section 1.3.2, il en est ressorti que cet environnement poss`de plusieurs caract´ristiques e e le rendant tr`s int´ressant pour l’´tude des syst`mes multiagents. Cette ´tude du simue e e e e lateur a demand´ un temps relativement consid´rable vu la complexit´ du syst`me, mais e e e e surtout vu le manque de documentation. Une autre partie importante a ´t´, bien entendu, la conception de certaines techniques ee d’apprentissage de la coordination entre agents pouvant ˆtre appliqu´es dans un tel e e environnement. Au chapitre 3, nous pouvons voir une description des m´thodes les plus e prometteuses. Mentionnons que cette conception est en perp´tuel raffinement et qu’` ce e a moment, nous en sommes rendus a l’impl´mentation et aux tests de certaines m´thodes. ` e e

4.1. Travaux effectu´s e

52

4.1.2

Impl´mentation e

Apr`s avoir acquis une bonne connaissance du simulateur de la RoboCupRescue, e nous avons commenc´ la programmation d’une ´quipe d’agents pouvant ´voluer dans e e e cet environnement. Pour l’impl´mentation, nous avons utilis´ le langage de programmae e tion agent JACK Intelligent AgentsTM [Howden et al., 2001]. C’est un environnement de programmation pour construire et ex´cuter des syst`mes multiagents en utilisant une e e approche bas´e sur les composantes. Le langage de programmation agent de JACK est e un langage qui ´tend le langage Java avec des concepts orient´s agents comme : e e – Agents, – Capacit´s, e ´ enements, – Ev´ – Plans, – Ensembles de croyances, – Gestion des ressources et de la concurrence. Comme il a ´t´ pr´sent´ a la section 1.3.2, il y a six types diff´rents d’agents a ee e e ` e ` impl´menter. Chacun de ces types d’agents est repr´sent´ par un agent dans JACK. e e e Chaque agent a plusieurs plans qu’il peut ex´cuter selon les ´v´nements qu’il re¸oit. Le e e e c projet est d’une taille relativement importante, il contient environ 250 classes diff´rentes. e Pr´sentement, nous avons une ´quipe compl`te d’agents pouvant ´voluer dans l’ene e e e vironnement de simulation de la RoboCupRescue. D’ailleurs, nous avons r´ussi a nous e ` qualifier pour la comp´tition de la RoboCupRescue de l’´t´ 2003 a Padova en Italie. Lors e ee ` de cette qualification, nous nous sommes class´s sixi`me sur les 20 ´quipes qualifi´es pour e e e e la comp´tition, voir le Tableau 4.1. Ce r´sultat est tr`s int´ressant, car il montre le s´rieux e e e e e de notre programme. De plus, nous croyons que les performances seront am´lior´es de e e beaucoup lors de l’impl´mentation des m´thodes d’apprentissage de la coordination pr´e e e sent´es dans cette proposition de recherche. Par cons´quent, nous sommes tr`s impatient e e e de voir quelle sera notre performance lors de la comp´tition. e Finalement, le dernier travail effectu´ au niveau de l’impl´mentation a ´t´ le d´but e e ee e de l’impl´mentation de la technique d’am´lioration de l’utilisation des communications, e e mais elle n’est pas encore termin´e, donc il n’y a pas encore de r´sultats disponibles. Il est e e toutefois important de constater que toutes la structure des agents a ´t´ impl´ment´e ee e e et qu’il ne reste qu’` impl´menter les m´thodes d’apprentissage et a les tester. Nous a e e ` pourrons donc tester dans un avenir rapproch´ les diff´rentes m´thodes. e e e

4.1. Travaux effectu´s e

53

Tableau 4.1: Pointage lors des qualifications pour la comp´tition de la Roboe CupRescue de l’´t´ 2003 ` Padova en Italie. Nous ´tions l’´quipe 10, donc la ligne ee a e e en gras repr´sente notre pointage lors des qualifications. e

Position 1 2 3 4 5

´ Equipes 2 20 17 16 5

Pointage 90.6 88.3 76.4 64.5 54.5

6
7 8 9 10 11 12 13 14 15 16 17 18 19 20

10
1 11 8 7 13 15 6 9 3 14 18 4a 4b 19

49.7
37.8 28.0 26.3 23.1 20.9 20.2 18.4 16.7 16.4 14.8 12.7 11.6 11.4 11.2

4.2. Travaux futurs

54

4.1.3

R´sum´ e e

En r´sum´, les travaux effectu´s a date sont : e e e ` – L’´tude des approches existantes en apprentissage de la coordination ; e – L’´tude du simulateur de la RoboCupRescue ; e – La programmation des agents ´voluant dans la simulation ; e – La conception de diff´rentes approches d’apprentissage ; e – Le d´but de la programmation de l’approche sur l’am´lioration de l’utilisation des e e communications.

4.2

Travaux futurs

Pour la suite des travaux, nous allons compl´ter l’impl´mentation des approches e e d’apprentissage dont il a ´t´ mention au chapitre 3. Par la suite, nous effectuerons des ee tests pour ´valuer l’efficacit´ des agents et par le fait mˆme des approches d’apprentissage. e e e Les travaux futurs incluront bien entendu l’´criture d’articles pr´sentant les r´sultats e e e obtenus. ` A court terme, le but est d’avoir une ´quipe fonctionnelle (au sens des syst`mes e e multiagents [Tambe and Zhang, 2000]) pour la comp´tition de l’´t´ 2003. Apr`s cette e ee e comp´tition, nous continuerons d’appliquer une approche de travail it´rative pour tenter e e d’am´liorer petit a petit la performance des algorithmes d’apprentissage de la coordinae ` tion et par le fait mˆme, la performance des agents. e Le plan de travail pour la suite de la th`se, pr´sent´ a la Figure 4.1, comprend les e e e` points suivants : ´ 1. Etudier les approches existantes en apprentissage de la coordination ; 2. Proposer des m´thodes originales pour l’apprentissage de la coordination applie cables dans des environnements complexes comme celui de la RoboCupRescue ; 3. Analyser le fonctionnement du simulateur de la RoboCupRescue ; 4. Concevoir et impl´menter une ´quipe d’agents pouvant ´voluer dans l’environnee e e ment de la RoboCupRescue ; 5. Sp´cifier et impl´menter les m´thodes d’apprentissage, propos´es au point 2, dans e e e e l’environnement de la RoboCupRescue ; 6. Analyser les r´sultats obtenus lors des tests en comparant sur plusieurs simulations e l’efficacit´ des agents avant et apr`s l’utilisation de la m´thode d’apprentissage. e e e 7. R´diger la th`se. e e

4.2. Travaux futurs

55

2003 Tâches Été 5 6 7 8 9 Automne 10 11 12 1 Hiver 2 3 4 5

2004 Été 6 7 8 9 Automne 10 11 12

1 2 3 4 5 6 7

Figure 4.1: Plan de travail d’ici la fin de la th`se. e

Sur le plan de la Figure 4.1, on peut voir que la tˆche 1, qui consiste a ´tudier les a `e approches existantes, est effectu´e a intervalles r´guliers pour toujours se tenir au courant e ` e des derniers d´veloppements. La deuxi`me ´tape est elle aussi effectu´e r´guli`rement e e e e e e pour ajuster les m´thodes existantes ou en proposer de nouvelles, qui pourraient ˆtre e e inspir´es des r´sultats des tests. e e Les tˆches 5 et 6 sont faites en alternances tout au long des recherches pour indiquer a que l’on code et teste les diff´rentes m´thodes de mani`re it´rative. Juste avant les e e e e comp´titions, au mois de juillet, les intervalles entre la programmation et les tests sont e plus rapproch´s pour indiquer que l’on ajuste rapidement les derniers d´tails avant la e e comp´tition. e ` A la fin de l’´t´ 2004, il y a une bonne p´riode d’analyse finale des r´sultats. Par la ee e e suite, nous allons regarder s’il y a des propositions a faire pour des travaux futurs (tˆche ` a 2). La derni`re session, celle de l’automne 2004, consistera a la r´daction de la th`se e ` e e (tˆche 7). a

4.3. Plan de la th`se e

56

4.3

Plan de la th`se e

Le plan de la th`se pourrait comporter les aspects suivants : e 1. Introduction 2. Description de la RoboCupRescue 3. Probl´matique e 4. Revue de litt´rature e 5. Pr´sentation des m´thodes d’apprentissage d´velopp´es pour l’am´lioration de la e e e e e coordination entre agents 6. Pr´sentation de notre ´quipe d’agents e e 7. Pr´sentation des tests et des r´sultats obtenus e e 8. Conclusion et travaux futurs

Chapitre 5 Conclusion
Pour les syst`mes multiagents, la coordination s’av`re tr`s importante a obtenir, car e e e ` c’est celle-ci qui permet aux agents de pouvoir agir ensemble et b´n´ficier les uns des e e autres, au lieu de se nuire. De plus, dans la majorit´ des syst`mes r´els, l’´tablissement e e e e de politiques de coordination a priori est particuli`rement difficile, voir mˆme impossible, ` e e ´tant donn´ la complexit´ des syst`mes et des interactions possibles entre les agents. Il e e e e est tr`s difficile de pouvoir pr´voir toutes les situations auxquelles les agents auront a e e ` faire face et qu’elle est pour chacune de ces situations la politique de coordination la plus efficace. C’est pourquoi l’apprentissage de la coordination est tr`s int´ressant pour e e permettre aux agents d’adapter leurs politiques de coordination suivant les diff´rentes e situations. Dans cette proposition, nous avons pr´sent´ un ´tat de l’art au chapitre 2 refl´tant les e e e e travaux effectu´s jusqu’` ce jour en apprentissage de la coordination dans des syst`mes e a e multiagents. Partant de l’id´e mise de l’avant par certains chercheurs concernant l’analyse e de traces d’ex´cution, nous avons propos´ une id´e originale qui vise a combiner a la fois e e e ` ` les situations d’´checs et les situations de succ`s pour permettre aux agents d’apprendre e e a l’aide d’un plus grand nombre d’exemples. ` Nous proposons ´galement des m´thodes originales pour l’apprentissage de l’environe e nement et l’anticipation qui permettraient aux agents de se coordonner efficacement. En fait, nous utilisons diff´rentes m´thodes d’apprentissage, car le syst`me ´tudi´ est trop e e e e e complexe pour permettre un apprentissage directe entre les perceptions et les actions. Il y a tout simplement trop de situations et d’actions possibles. Une partie de nos recherches sera donc d’analyser les interactions entre les diff´rentes m´thodes d’apprentissage. e e L’apprentissage de la coordination est un domaine relativement nouveau qui devrait connaˆ un grand succ`s dans un avenir rapproch´, vu l’essor que prend la technologie ıtre e e agent et les syst`mes multiagents. Plus les syst`mes multiagents seront complexes en e e terme de nombre d’agents et de la complexit´ des interactions entre eux, plus l’apprene tissage de la coordination deviendra int´ressant, voir n´cessaire. e e 57

Bibliographie
[Abul et al., 2000] Abul, O., Polat, F., and Alhajj, R. (2000). Multiagent Reinforcement Learning Using Function Approximation. IEEE Transactions on Systems, Man, and Cybernetics - Part C : Application and Reviews, 30(4). [Ahmadi et al., 2002] Ahmadi, M., Sayyadian, M., and Habibi, J. (2002). A Learning Method for Evaluating Messages in Multi-Agent Systems. In Proceedings of the Agent Communication Languages and Conversation Policies, AAMAS’02 Workshop, Bologna, Italy. [Alonso et al., 2001] Alonso, E., d’Inverno, M., Kudenko, D., Luck, M., and Noble, J. (2001). Learning in Multi-Agent Systems. Technical report, Third Workshop of the UK’s Special Interest Group on Multi-Agent Systems. [Berenji and Vengerov, 1999] Berenji, H. R. and Vengerov, D. A. (1999). Cooperation and Coordination Between Fuzzy Reinforcement Learning Agents in Continuous-State Partially Observable Markov Decision Processes. In Proceedings of the 8th IEEE International Conference on Fuzzy Systems (FUZZ-IEEE’99). [Berenji and Vengerov, 2000] Berenji, H. R. and Vengerov, D. A. (2000). Learning, Cooperation, and Coordination in Multi-Agent Systems. Technical Report IIS-00-10, Intelligent Inference Systems Corp. [Bernstein et al., 2002] Bernstein, D. S., Givan, R., Immerman, N., and Zilberstein, S. (2002). The Complexity of Decentralized Control of Markov Decision Processes. To appear in Mathematics of Operations Research. [Bonarini and Trianni, 2001] Bonarini, A. and Trianni, V. (2001). Learning Fuzzy Classifier Systems for Multi-Agent Coordination. Information Sciences, 136 :215–239. [Boutilier, 1996] Boutilier, C. (1996). Planning, Learning and Coordination in Multiagent Decision Processes. In Proceedings of TARK-96 : Theoretical Aspects of Rationality and Knowledge, De Zeeuwse Stromen, Hollande. [Buffet, 2000] Buffet, O. (2000). Apprentissage par renforcement dans un syst`me multie agents. Master’s thesis, Universit´ Henri Poincarr´ - Nancy I. e e [Bui et al., 1998] Bui, H. H., Venkatesh, S., and Kieronska, D. (1998). A Framework for Coordination and Learning among Team of Agents. Lecture Notes in Computer Science, 1441. 58

BIBLIOGRAPHIE

59

[Cassandra, 1998] Cassandra, A. R. (1998). Exact and approximate algorithms for partially observable markov decision processes. PhD thesis, Brown University. [Chalkiadakis and Boutilier, 2003] Chalkiadakis, G. and Boutilier, C. (2003). Coordination in Multiagent Reinforcement Learning : A Bayesian Approach. In Proceedings of the Second International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-03), Melbourne, Australia. [Claus and Boutilier, 1998] Claus, C. and Boutilier, C. (1998). The Dynamics of Reinforcement Learning in Cooperative Multiagent Systems. In Proceedings of the 15th National Conference on Artificial Intelligence (AAAI-98), pages 746–752, Madison. [Crites and Barto, 1998] Crites, R. H. and Barto, A. G. (1998). Elevator Group Control Using Multiple Reinforcement Learning Agents. Machine Learning, 33(2-3) :235–262. [Decker and Lesser, 1993] Decker, K. S. and Lesser, V. R. (1993). Quantitative Modeling of Complex Environments. International Journal of Intelligence Systems in Accounting, Finance, and Management, 2(4) :215–234. Special issue on Mathematical and Computational Models of Organizations : Models and Characteristics of Agent Behavior. [Dietterich, 1998] Dietterich, T. G. (1998). The MAXQ Method for Hierarchical Reinforcement Learning. In Proceedings of the International Conference on Machine Learning, pages 118–126, San Francisco. [Durfee, 1988] Durfee, E. H. (1988). Coordination of Distributed Problem Solvers. Kluwer Academic Press, Boston. [Durfee and Lesser, 1989] Durfee, E. H. and Lesser, V. R. (1989). Negotiating Task Decomposition and Allocation Using Partial Global Planning. In Gasser, L. and Huhns, M. N., editors, Distributed Artificial Intelligence, volume 2 of Research Notes in Artificial Intelligence, pages 229–243. Pitman. [Dutech, 2000] Dutech, A. (2000). Solving POMDP Using Selected Past-Events. In Proceedings of the 14th European Conference on Artificial Intelligence, ECAI2000. [Dutech et al., 2001] Dutech, A., Buffet, O., and Charpillet, F. (2001). Multi-Agent Systems by Incremental Gradient Reinforcement Learning. In Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence IJCAI-01, pages 833–838, Seattle. [Excelente-Toledo and Jennings, 2002] Excelente-Toledo, C. B. and Jennings, N. R. (2002). Learning to Select a Coordination Mechanism. In Proceedings of the First International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-02), Bologna, Italie. [Garland and Alterman, 2001a] Garland, A. and Alterman, R. (2001a). Learning Procedural Knowledge to Better Coordinate. In Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence IJCAI-01, pages 1073–1083, Seattle. [Garland and Alterman, 2001b] Garland, A. and Alterman, R. (2001b). Learning to Better Coordinate with Autonomous Agents. Technical Report CS-01-219, Brandeis University, Computer Science Department.

BIBLIOGRAPHIE

60

[Garland, 2000] Garland, A. E. (2000). Learning to Better Coordinate in Joint Activities. PhD thesis, Brandeis University. [Ghavamzadeh and Mahadevan, 2002] Ghavamzadeh, M. and Mahadevan, S. (2002). A Multiagent Reinforcement Learning Algorithm by Dynamically Merging Markov Decision Processes. In Proceedings of the First International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-02), Bologna, Italie. [Ghavamzadeh et al., 2001] Ghavamzadeh, M., Mahadevan, S., and Makar, R. (2001). Extending Hierarchical Reinforcement Learning to Continuous-Time, AverageReward, and Multi-Agent Models. Submitted to the Journal of Machine Learning Research (JMLR). [Haynes and Sen, 1998] Haynes, T. and Sen, S. (1998). Learning cases to resolve conflicts and improve group behavior. International Journal of Human-Computer Studies, 48 :31–49. [Horling and Lesser, 1999] Horling, B. and Lesser, V. (1999). Using Diagnosis to Learn Contextual Coordination Rules. In Proceedings of the AAAI-99 Workshop on Reasoning in context for AI Applications, pages 70–74. [Howden et al., 2001] Howden, N., R¨nnquist, R., Hodgson, A., and Lucas, A. (2001). o ˚ Summary of an Agent Infrastructure. In Proceedings of JACK Intelligent Agents U the 5th International Conference on Autonomous Agents, Montr´al, Canada. e [Jensen et al., 1999] Jensen, D., Atighetchi, M., Vincent, R., and Lesser, V. (1999). Learning Quantitative Knowledge for Multiagent Coordination. In 16th National Conference on Artificial Intelligence (AAAI-99), pages 24–31, Orlando. [Kapetanakis and Kudenko, 2002] Kapetanakis, S. and Kudenko, D. (2002). Reinforcement Learning of Coordination in Cooperative Multi-Agent Systems. In Proceedings of the 19th National Conference on Artificial Intelligence (AAAI-02). [Kitano, 2000] Kitano, H. (2000). RoboCup Rescue : A Grand Challenge for Multi-Agent Systems. In Proceedings of ICMAS 2000, Boston, MA. [Kitano et al., 1999] Kitano, H., Tadokor, S., Noda, H., Matsubara, I., Takhasi, T., Shinjou, A., and Shimada, S. (1999). Robocup-rescue : Search and rescue for large scale disasters as a domain for multi-agent research. In Proceedings of the IEEE Conference on Systems, Man, and Cybernetics (SMC-99), volume 6, pages 739–743. IEEE. [Koch, 2002] Koch, E. (2002). Simulation multiagent de situations d’urgence dans le cadre de la RobocupRescue. Master’s thesis, Facult´s Universitaires Notre Dame de e la Paix. [Makar et al., 2001] Makar, R., Mahadevan, S., and Ghavamzadeh, M. (2001). Hierarchical Multi-Agent Reinforcement Learning. In Proceedings of the Fifth International Conference on Autonomous Agents, pages 246–253, Montr´al, Canada. e [Malone and Crowston, 1994] Malone, T. W. and Crowston, K. (1994). The Interdisciplinary Study of Coordination. ACM Computing Surveys, 26(1). [Mataric, 1994] Mataric, M. J. (1994). Interaction and Intelligent Behavior. PhD thesis, Massachusetts Institute of Technology.

BIBLIOGRAPHIE

61

[Mataric, 1997] Mataric, M. J. (1997). Learning Social Behavior. Robotics and Autonomous Systems, 20 :191–204. [Mitchell, 1997] Mitchell, T. M. (1997). Machine Learning. WCB/McGraw-Hill, Boston. [Nair et al., 2003] Nair, R., Tambe, M., and Marsella, S. (2003). Team Formation for Reformation in Multiagent Domains like RoboCupRescue. In Kaminka, G., Lima, P., and Roja, R., editors, Proceedings of RoboCup-2002 International Symposium, Lecture Notes in Computer Science. Springer Verlag. [Noda, 2001] Noda, I. (2001). Rescue Simulation and Location-based Communication Model. In Proc. of SCI-2001. [Noda et al., 2002] Noda, I., Takahashi, T., Morita, S., Koto, T., and Tadokoro, S. (2002). Language Design for Rescue Agents. In Birk, A., Coradeschi, S., and Tadokoro, S., editors, RoboCup 2001, volume 2377 of Lecture Notes in Artificial Intelligence, pages 164–172. Springer-Verlag. [Nwana et al., 1996] Nwana, H. S., Lee, L. C., and Jennings, N. R. (1996). Coordination in Software Agent Systems. The British Telecom Technical Journal, 14(4) :79–88. [Ohta et al., 2001] Ohta, M., Takahashi, T., and Kitano, H. (2001). RoboCup-Rescue Simulation : in case of Fire Fighting Planning. In Stone, P., Balch, T., and Kraetzschmar, G., editors, RoboCup 2000, volume 2019 of Lecture Notes in Artificial Intelligence, pages 351–356. Springer-Verlag. [Paquet, 2001] Paquet, S. (2001). Coordination de plans d’agents : Application a la ` gestion des ressources d’une fr´gate. Master’s thesis, Universit´ Laval. e e [Prasad et al., 1996] Prasad, M. N., Lesser, V., and Lander, S. (1996). Learning Organizational Roles in a Heterogeneous Multi-Agent System. In Proceedings of the Second International Conference on Multiagent Systems, pages 291–298. [Prasad, 1997] Prasad, M. V. N. (1997). Learning Situation-Specific Control in MultiAgent Systems. PhD thesis, University of Massachusetts Amherst. [Prasad and Lesser, 1996a] Prasad, M. V. N. and Lesser, V. (1996a). Learning Situationspecific Coordination in Generalized Partial Global Planning. In Sen, S., editor, Working Notes for the AAAI Symposium on Adaptation, Co-evolution and Learning in Multiagent Systems, pages 68–71, Stanford University, CA. [Prasad and Lesser, 1996b] Prasad, M. V. N. and Lesser, V. R. (1996b). Off-line Learning of Coordination in Functionally Structured Agents for Distributed Data Processing. In Workshop on Learning, Interaction and Organizations in Multiagent Environments(ICMAS-96). [Prasad and Lesser, 1997a] Prasad, M. V. N. and Lesser, V. R. (1997a). Learning Problem Solving Control in Cooperative Multi-agent Systems. In Workshop on MultiAgent Learning (AAAI-97), Providence, Rhode Island. [Prasad and Lesser, 1997b] Prasad, M. V. N. and Lesser, V. R. (1997b). The Use of Meta-level Information in Learning Situation-Specific Coordination. In Proceedings of the Fifth International Joint Conference on Artificial Intelligence IJCAI-97, pages 640–646.

BIBLIOGRAPHIE

62

[Prasad and Lesser, 1999] Prasad, M. V. N. and Lesser, V. R. (1999). Learning Situation-Specific Coordination in Cooperative Multi-agent Systems. Autonomous Agents and Multi-Agent Systems, 2(2) :173–207. [Puterman, 1994] Puterman, M. L. (1994). Markov Decision Processes : Discrete Stochastic Dynamic Programming. Wiley-Interscience. [RoboCup, 2003] RoboCup (2003). RoboCup Official Site. [Online]. http://www. robocup.org (Page visited on february 23, 2003). [RoboCupRescue, 2003] RoboCupRescue (2003). RoboCupRescue Official Web Page. [Online]. http://www.r.cs.kobe-u.ac.jp/robocup-rescue (Page visited on february 23, 2003). [Russel and Norvig, 2003] Russel, S. and Norvig, P. (2003). Artificial Intelligence A Modern Approach. Pearson Education, Upper Saddle River, New Jersey, second edition. [Sen and Sekaran, 1995] Sen, S. and Sekaran, M. (1995). Multiagent coordination with learning classifier systems. In Working Notes of the IJCAI-95 Workshop on Adaptation and Learning in Multiagent Systems, pages 84–89. [Sen and Sekaran, 1998] Sen, S. and Sekaran, M. (1998). Individual Learning of Coordination Knowledge. Journal of Experimental and Theoretical Artificial Intelligence, 10 :333–356. (special issue on Learning in Distributed Artificial Intelligence Systems). [Sen et al., 1994] Sen, S., Sekaran, M., and Hale, J. (1994). Learning to coordinate without sharing information. In Proceedings of the National Conference on Artificial Intelligence, pages 426–431. [Sen and Weiss, 2000] Sen, S. and Weiss, G. (2000). Learning in Multiagent Systems. In Weiss, G., editor, Multiagent Systems. A Modern Approach to Distributed Artificial Intelligence, chapter 6, pages 259–298. MIT press. [Stone and Veloso, 1997] Stone, P. and Veloso, M. (1997). Multiagent Systems : A Survey from a Machine Learning Perspective. Technical Report CMU-CS-97-193, Carnegie Mellon University CS. [Stone and Veloso, 1999] Stone, P. and Veloso, M. (1999). Team-Partitioned, OpaqueTransition Reinforcement Learning. In Asada, M. and Kitano, H., editors, RoboCup98 : Robot Soccer World Cup II, volume 1604 of Lecture Notes in Artificial Intelligence. Springer-Verlag. [Sugawara and Lesser, 1993] Sugawara, T. and Lesser, V. (1993). On-Line Learning of Coordination Plans. Twelfth Annual Workshop on Distributed Artificial Intelligence. [Sugawara and Lesser, 1995] Sugawara, T. and Lesser, V. (1995). Learning Coordination Plans in Distributed Problem-Solving Environments. In Proceedings of the First International Conference on Multiagent Systems (ICMAS-95). [Sugawara and Lesser, 1998] Sugawara, T. and Lesser, V. R. (1998). Learning to Improve Coordinated Actions in Cooperative Distributed Problem-Solving Environments. Machine Learning, 33(2-3) :129–153. [Sutton, 1988] Sutton, R. S. (1988). Learning to Predict by the Methods of Temporal Differences. Machine Learning, 3 :9–44.

BIBLIOGRAPHIE

63

[Sutton and Barto, 1999] Sutton, R. S. and Barto, A. G. (1999). Reinforcement Learning. MIT press. [Tadkoro et al., 2000] Tadkoro, S., Kitano, H., Takahashi, T., Noda, I., Matsubara, H., Shinjoh, A., Koto, T., Takeuchi, I., Takahashi, H., Matsuno, F., Hatayama, M., Ohta, M., Tayama, M., Matsui, T., Kaneda, T., Chiba, R., Takeuchi, K., Nobe, J., Noguchi, K., and Kuwata, Y. (2000). The RoboCup-Rescue : an IT challenge to emergency response problem in disaster. In Industrial Electronics Society, 2000. IECON 2000. 26th Annual Conference of the IEEE. IEEE. [Takahashi et al., 2002] Takahashi, T., Tadokoro, S., Ohta, M., and Ito, N. (2002). Agent Based Approach in Disaster Rescue Simulation - From Test-Bed of Multiagent System to Practical Application. In Birk, A., Coradeschi, S., and Tadokoro, S., editors, RoboCup 2001, volume 2377 of Lecture Notes in Artificial Intelligence, pages 102–111. Springer-Verlag. [Tambe and Zhang, 2000] Tambe, M. and Zhang, W. (2000). Towards flexible teamwork in persistent teams : extended report. Journal of Autonomous Agents and Multi-agent Systems, 3 :159–183. [Tan, 1993] Tan, M. (1993). Multi-Agent Reinforcement Learning : Independant vs. Cooperative Agents. In Proceedings of the Tenth International Conference on Machine Learning, pages 330–337. [Tumer et al., 2002] Tumer, K., Agogino, A. K., and Wolpert, D. H. (2002). Learning Sequences of Actions in Collectives of Autonomous Agents. In Proceedings of the First International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS-02), Bologna, Italie. [Veloso et al., 1999] Veloso, M., Stone, P., and Bowling, M. (1999). Anticipation : A Key for Collaboration in a Team of Agents. In Proceedings of SPIE Sensor Fusion and Decentralized Control in Robotic Systems II (SPIE’99). [Watkins and Dayan, 1992] Watkins, C. J. C. H. and Dayan, P. (1992). Q-learning. Machine Learning, 8 :279–292. [Wolpert et al., 2001] Wolpert, D., Sill, J., and Tumer, K. (2001). Reinforcement Learning in Distributed Domains : Beyond Team Games. In Proceedings of the Seventeenth National Conference on Artificial Intelligence, pages 819–824, Seattle, WA. [Wolpert and Tumer, 2000] Wolpert, D. and Tumer, K. (2000). An Introduction to Collective Intelligence. Technical Report NASA-ARC-IC-99-63, NASA Ames Research Center.