Nothing Special   »   [go: up one dir, main page]

Academia.eduAcademia.edu

Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des processus décisionnels de Markov

2006

View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by INRIA a CCSD electronic archive server Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des processus décisionnels de Markov Fabrice Lauri, François Charpillet, Daniel Szer To cite this version: Fabrice Lauri, François Charpillet, Daniel Szer. Analyse théorique du problème de la patrouille multiagent en utilisant le cadre des processus décisionnels de Markov. Journées Francophones Planification, Décision, Apprentissage - JFPDA’2006, May 2006, Toulouse/France. �inria-00104432� HAL Id: inria-00104432 https://hal.inria.fr/inria-00104432 Submitted on 6 Oct 2006 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des processus décisionnels de Markov Fabrice Lauri, François Charpillet et Daniel Szer LORIA/INRIA, Campus Scientique, B.P. 239, 54506 Vand÷uvre-Lès-Nancy Mél : {lauri,charp,szer}@loria.fr Résumé Patrouiller implique habituellement une équipe d'agents dont le but consiste à visiter aussi fréquemment que possible les zones stratégiques d'un environnement. Pour une telle tâche, les agents impliqués doivent coordonner leurs actions an d'atteindre des performances optimales. Les recherches actuelles sur le problème de la patrouille multi-agent (ou PPMA) considère généralement que l'environnement est réduit à un graphe métrique. Sous cette hypothèse, ce problème peut donc concerner une large gamme d'applications, telles que la gestion d'un réseau informatique, les jeux vidéo ou la détermination d'itinéraires de véhicules. Dans cet article, nous concentrons notre attention sur des instances particulières de ce problème. Nous considérons uniquement le pire cas où tous les agents commencent à patrouiller à partir d'un n÷ud donné. Nous formulons le problème de la patrouille multi-agent à l'aide d'un processus décisionnel de Markov (PDM). Trouver une politique optimale de patrouille se réduira alors à résoudre ce PDM. Nous prouvons d'une part que les stratégies multi-agents optimales sont nécessairement cycliques. D'autre part, nous avons montré que déterminer une stratégie de patrouille multi-agent consiste à trouver deux politiques à horizon ni. Un algorithme meilleur d'abord est utilisé pour déterminer une telle politique. Les résultats expérimentaux montrent que, pour toutes les congurations testées, notre approche améliore substantiellement ceux obtenus avec la méthode d'apprentissage par renforcement proposée par Santana et al. [10]. 1 Introduction Une patrouille est une mission impliquant une équipe de plusieurs agents dont le but consiste à visiter continuellement les zones pertinentes d'un environnement, an de le superviser, le contrôler ou le protéger de manière ecace. Une équipe de facteurs réalisant leur tournée, une colonie de fourmis cherchant et rassemblant leur nourriture, ou un groupe de marines sécurisant un lieu sont tous des exemples de patrouilles. Une telle tâche nécessite alors que tous les membres impliqués coordonnent leurs actions an d'atteindre des performances optimales. Les techniques permettant de résoudre le problème multi-agent de la patrouille peuvent être utilisées dans de nombreuses applications : de la gestion d'un réseau informatique [9], au sauvetage par des robots de personnes blessées après une catastrophe naturelle [5, 6], en passant par la détection de menaces ennemies ou la protection d'une ville dans un jeu vidéo [7]. Ce problème a été abordé de manière rigoureuse seulement récemment [8, 1, 10, 2]. Dans ces travaux, une myriade de stratégies de patrouille ont été imaginées et validées expérimentalement en utilisant des critères d'évaluation communs [8]. Ces travaux utilisent des approches diérentes, comme des lois heuristiques permettant aux agents de mieux choisir le prochain n÷ud à visiter [8], des mécanismes de négociation [1], des techniques d'apprentissage par renforcement [10] ou des techniques issues de la théorie des graphes [2]. La plupart des solutions trouvées produisent de bons résultats empiriques sur des graphes constitués de moins de cinquante n÷uds et d'au plus une centaine d'arcs. Nous proposons une analyse théorique du problème multi-agent de la patrouille (PPMA) dans le cadre des processus décisionnels de Markov. La principale question qui est adressée ici est : comment caractériser totalement le PPMA an de pouvoir trouver des solutions optimales ? En d'autres termes, existe-t'il un espace de recherche permettant à des agents de synchroniser leurs actions et donc de trouver des stratégies de patrouille optimales, quel que soit le graphe de patrouille et la population d'agents. Pour réaliser cette étude, nous utilisons la dénition formelle du PPMA introduite dans [8]. Par ailleurs, nous supposerons que tous les agents sont situés initialement sur le même n÷ud du graphe. Pour répondre à cette question, le PPMA est tout d'abord formulé à l'aide d'un PDM. Nous montrons alors que trouver une stratégie multi-agent de patrouille équivaut à déterminer une politique π à horizon ni constitué de deux sous-politique πinit et πcyc , πinit représentant la politique des agents dans une phase d'initialisation et πcyc étant la politique cyclique que les agents suivent indéniment. La suite de cet article est organisée de la manière suivante. La section 2 décrit dans un premier temps le cadre de travail du problème multi-agent de la patrouille, et présente dans un second temps l'état de l'art. La section 3 propose une formulation du PPMA en utilisant un PDM. Les résultats expérimentaux sont indiqués et analysés dans la section 4. Finalement, une conclusion et des perspectives de recherche sont données dans la section 5. 2 Le problème de la patrouille à-dire : WI = multi-agent 2.1 Cadre de travail mathématique Le problème de la patrouille multi-agent est habituellement formulé comme suit [8, 2, 10]. L'environnement à patrouiller se réduit à un graphe G = (V, E), V représentant les zones stratégiquement pertinentes et E les moyens de transport ou de communication entre eux. Un coût cij , associé à chaque arc (i, j), mesure le temps nécessaire pour aller d'un n÷ud i à un n÷ud j . Soient r agents destinés à visiter à intervalles réguliers les zones dénies dans le graphe G. Chaque agent se trouve sur un des n÷uds de V à l'instant initial. Résoudre le problème de la patrouille consiste alors à élaborer une stratégie σ de parcours multi-agent du graphe G. Une telle stratégie doit optimiser un critère de qualité donné. σ = {σ1 · · · σr } est constitué des r stratégies individuelles σi de chaque agent i. Une stratégie individuelle σi est dénie telle que σi : N → V , σi (j) représentant le j -ème n÷ud visité par l'agent i, avec σi (j + 1) = x ssi (σi (j), x) ∈ E . max max In (t) t=1,2,...,T n∈V Comme souligné dans [3], utiliser le critère de la pire oisiveté assure de toujours trouver une stratégie de patrouille optimale σ ∗ , puisque si σ ∗ minimise W Iσ∗ , elle minimise aussi AIσ∗ . Le contraire n'est pas vrai. 2.2 Etat de l'art Une stratégie de patrouille multi-agent σ peut être évaluée après T cycles de simulation en utilisant soit le critère de l'oisiveté moyenne AIσ , soit le critère de la pire oisiveté W Iσ . L'oisiveté moyenne dénote la moyenne des OMG sur les T cycles de simulation, c'est-à-dire : P A notre connaissance, [8, 7] sont les travaux pionniers traitant du problème de la patrouille multi-agent. Dans ces articles, les auteurs considèrent respectivement des graphes unitaires et des graphes avec des distances réelles. Plusieurs architectures multi-agents sont proposées, ainsi que les critères décrits dans la section précédente. Chaque architecture est une combinaison de quelques paramètres spéciques, tels que le type de communications entre agents (permises ou interdites), la perception des agents (locale vs globale), la fonction heuristique de sélection du n÷ud suivant (aléatoire, en utilisant une oisiveté individuelle ou partagée, en fonction de la longueur du chemin ...), etc. [1] améliora les meilleures architectures proposées dans [7] en concevant des agents capables d'échanger librement des messages et de conduire des négociations au sujet des n÷uds qu'ils doivent visiter. Chaque agent reçoit au départ un ensemble de n÷uds aléatoires à visiter, et utilise un système d'enchères pour échanger avec les autres agents les n÷uds qu'il considère comme indésirables. Chaque agent tente alors de conserver les n÷uds qu'il peut visiter en un temps raisonnable donné. La capacité de négocier permet donc aux agents d'atteindre une entente mutuelle. Chevaleyre [3, 2] reformula le problème de la patrouille dans les termes d'un problème d'optimisation combinatoire. Il prouva tout d'abord qu'une stratégie de patrouille impliquant un seul agent pouvait être déterminée à l'aide d'un algorithme permettant de résoudre une variante du problème du voyageur de commerce (1 ). Il étudia ensuite trois stratégies de patrouille multi-agent possibles, en introduisant des biais, et montra que toutes permettent d'obtenir des stratégies proches de l'optimale. Dans [10], les agents sont capables d'apprendre à patrouiller en utilisant le cadre de travail de l'apprentissage par renforcement. Chaque agent implémente un processus décisionnel de Markov qui est employé pour savoir quelle action entreprendre dans n'importe quel état de l'environnement graphique. Une action permet à un agent de se rendre sur le n÷ud adjacent à celui sur lequel il se trouve actuellement. Un état de l'environnement représente l'information minimale nécessaire à un agent pour décider aussi précisément que possible quoi faire. Deux architectures furent proposées : une tandis que la pire oisiveté est la plus grande OIN observée pendant les T pas de temps de simulation, c'est- nécessairement complet. Il est communément admis qu'une stratégie de patrouille pertinente est une stratégie qui minimise pour chaque n÷ud le délai entre deux visites. Plusieurs critères ont été imaginés dans [8] an d'évaluer la qualité d'une stratégie de patrouille multi-agent après T pas de temps (ou cycles) de simulation. Tous sont basés sur le concept d'oisiveté instantanée d'un n÷ud (OIN). L'OIN In (t) d'un n÷ud n à l'instant t est le nombre de pas de temps pendant lequel ce n÷ud est resté non visité. Par convention, à l'instant initial, In (0) = 0, ∀n = 1, 2, · · · , |V |. A un instant t donné, GIt est alors l'oisiveté moyenne du graphe (OMG), c'est-à-dire : GIt = 1 X In (t) |V | n∈V De manière similaire, la pire oisiveté W It est la plus grande oisiveté OIN rencontrée pendant les t pas de temps de simulation, c'est-à-dire : W It = max max In (s) s=1,2,...,t n∈V AI = T t=1 GIt T 1 la variante graphical-TSP, pour laquelle le graphe n'est pas dans laquelle les agents ne peuvent pas communiquer, une autre dans laquelle ils peuvent communiquer indirectement (c'est-à-dire via l'environement) leur intention sur la prochaine action. Dans la section dédiée aux résultats, nous comparerons notre approche à cette deuxième architecture (appelée GBLA), qui se révéla être la meilleure des deux dans [10]. Toutes les appproches décrites précédemment fûrent évaluées dans [1] et comparées sur 12 congurations (c'est-à-dire pour six topologies de graphes avec 5 et 15 agents). Il a été montré que la stratégie à cycle unique [2] donne les meilleurs résultats sur toutes les congurations sauf une, tandis que les deux meilleures architectures proposées dans [7, 8] produisirent les moins bons résultats. Toutes les autres techniques présentées dans [1] et [10] fournirent des performances équivalentes. Notons que lorsque les positions initiales des agents sont xées a priori, la stratégie à cycle unique [2] ne peut être utilisée puisque qu'elle considère que les positions initiales des agents sont également des inconnues du problème. C'est la raison pour laquelle nous avons comparé notre approche à l'une des meilleures de l'état de l'art dans ce cas : [10] en fait partie. (a1 , . . . ar ), alors T (s, a, s′ ) = 1 ssi (∀k) : ak = p′k (p ½ k , ′ak ) ∈ E Ik = 0, si (∃m) tel que am = k Ik′ = Ik + 1, sinon (1) Les PDMs multi-agents avec une observabilité totale et un espace d'actions jointes ont été appelés MMDPs [4]. En dépit du fait que le PDM déni ci-dessus ne soit pas totalement observable, puisque chaque agent est seulement conscient de sa propre position, les positions des autres agents et les valeurs des oisivetés de tous les n÷uds peuvent être calculées à tout moment. Ceci est vrai dans le cas d'une planication optimale, puisque toutes les politiques individuelles sont connues par chaque agent avant leur exécution. La même remarque ne peut pas être formulée dans le cas d'un apprentissage. Le MMDP θ est a priori un PDM inni, puisque son espace d'états n'est pas borné. Nous allons maintenant prouver que θ possède en fait une structure particulière qui facilite sa résolution. Nous commençons par présenter le concept de cycle de n÷uds et celui de cycle. Un processus décisionnel de Markov pour le problème de la patrouille multi-agent (MDPMAPP) Dénition 3.1 (Cycle de n÷uds). Nous dénissons un cycle de n÷uds de longueur L comme étant une séquence de positions jointes (p1 , . . . pr )1 , . . . (p1 , . . . pr )L telle que (p1 , . . . pr )1 = (p1 , . . . pr )L . Ceci signie que les agents sont revenus à leur position initiale à l'issue de L pas de temps. Nous faisons maintenant le lien entre le problème de la patrouille multi-agent et la théorie de contrôle discret basée sur les processus décisionnels de Markov. Il est d'abord expliqué comment adresser le PPMA sur des graphes unitaires. La section 3.3 prolonge ensuite notre approche aux graphes non unitaires. Dénition 3.2 (Cycle). Nous appelons un cycle de longueur k une séquence d'états s1 , . . . sk telle que s1 = sk . Ceci signie en particulier que non seulement les positions des agents constituent un cycle, mais également la valeur des oisivetés des n÷uds. 3 3.1 Dénition du PDM Le problème de la patrouille multi-agent sur un graphe unitaire peut être caractérisé de manière globale par un processus décisionnel de Markov θ = (S, A, T, R), tel que : |V |  S = |V |r × N+ incorpore la position actuelle de chacun des r agents, ainsi que l'oisiveté de chacun des n÷uds du graphe.  A ⊆ |V |r représente l'ensemble des actions jointes possibles des agents.  T : S × A × S → {0, 1} est la fonction de transition déterministe entre les états.  R est égale au critère d'évaluation exposé dans la section 2.1 qui permet de produire des stratégies optimales, c'est-à-dire W I . La fonction de transition peut être dérivée à partir de la structure du graphe. Si nous notons un état s = h(p1 , . . . pr ), (I1 , . . . I|V | )i, un autre état ′ s′ = h(p′1 , . . . p′r ), (I1′ , . . . I|V | )i, et une action a = Nous montrons maintenant que l'espace d'états pour résoudre le PPMA de manière optimale est eectivement ni. Lemme 3.1. Considérant une stratégie de patrouille optimale σ, la valeur de l'oisiveté de chaque n÷ud est bornée. Démonstration. Il est en eet simple de montrer que la valeur de W Iσ peut être bornée même pour une stratégie non-optimale visitant tous les n÷uds. Nous dénissons pour cela une stratégie σ ′ qui est cyclique sur les n÷uds et de longueur L. Il est évident que l'exécution répétée d'une telle stratégie borne la pire oisiveté W Iσ′ ≤ L. Puisque la valeur pour n'importe quelle stratégie optimale est au pire aussi grande, alors W Iσ ≤ W Iσ′ ≤ L. Lemme 3.2. Le nombre d'états qui sont eectivement visités par une stratégie de patrouille optimale σ est ni. Démonstration. Il sut de constater que le nombre des positions jointes possibles est ni (puisque le graphe a une taille nie), et que les valeurs des oisiveté pour chaque n÷ud est nie (voir lemme 1). Ceci garantit que le nombre d'états qui sont eectivement visités est ni. Nous pouvons maintenant établir notre théorème principal, qui stipule que la résolution du PPMA peut se réduire à trouver des stratégies nies ayant une structure particulière. Pour n'importe quel PPMA, il existe une stratégie de patrouille à horizon innie σ qui est cyclique, et qui peut être représentée par σ = σinit · (σcyc )∗ . Théoreme 3.1. Démonstration. Supposons une stratégie optimale σ telle que W Iσ = L. Nous savons que le nombre d'états visités par une stratégie optimale est ni. Ceci signie que σ contient des cycles. Pour chaque sousstratégie cyclique σcyc ⊂ σ , nous pouvons garantir que W Iσcyc ≤ L. Si nous appelons σinit la sous-stratégie qui précède σcyc dans σ , nous pouvons aussi garantir que W Iσinit ≤ L. Nous pouvons donc construire une nouvelle stratégie σ ∗ = σinit · (σcyc )∗ qui est au moins aussi bonne que σ . 3.2 Résolution du PDM Nous proposons ici une approche pour résoudre le PDM θ basé sur une recherche meilleure d'abord. Pour un graphe unitaire donné G et une distribution initiale des agents sur les n÷uds, l'algorithme suivant explore l'espace d'états en choisissant, à chaque itération, à partir d'une liste appelée OPEN, l'état s avec la plus petite valeur f (s). f (s) est en fait la récompense obtenue (dans le sens du PDM θ) en atteignant l'état s. La liste OPEN stocke les états qui doivent être étendus. Les successeurs s′ de s sont alors générés. Si un cycle est constitué, c'est-à-dire que s′ et un de ses parents p sont égaux, alors il est considéré comme étant l'état nal se du meilleur cycle découvert jusqu'à présent. Seulement les états s′ qui forment un cycle et tels que f (s′ ) < f (se ) pourront désormais remplacer l'état nal d'un précédent meilleur cycle. Sinon, si un état généré s′ n'appartient pas encore à la liste OP EN , alors il y est ajouté pour une prochaine expansion. Une fois que nous sommes assurés qu'aucun autre meilleur cycle ne peut être trouvé, c'est-à-dire lorsque f (s′ ) > f (se ), l'expansion des états est terminée et les stratégies de patrouille individuelles des agents peuvent être déterminées en suivant les liens de se à s0 . Notre algorithme meilleur d'abord peut être formellement décrit comme suit : 1. Placer les r agents sur les n÷uds du graphe unitaire G Générer l'état initial s0 correspondant, tel que s0 = h(p1 , . . . pr ), (0, 0, . . . , 0)i {z } | |V | Ajouter s0 à la liste OPEN. 2. Tant que la liste OPEN n'est pas vide (a) Récupérer l'état s ayant la plus petite valeur f (s) à partir de la liste OPEN et le retirer de la liste (b) Si un cycle a déjà été découvert et f (s) > f (se ) Alors Sortir de la boucle Tant que Endif (c) Générer chaque successeur s′ de s selon l'équation 1. (d) Pour chaque successeur s′ de s i. Initialiser le parent de s′ comme étant s | ii. Dénir f (s′ ) = max{f (s), max|V n=1 In } iii. Si un cycle a été découvert, c'est-à-dire qu'il existe un parent p de s′ tel que p = s′ , Alors Si ce cycle est le premier Ou f (s′ ) ≤ f (se ) Alors se = s′ Continuer (c'est-à-dire réitérer dans la boucle Pour ) FinSi FinSi iv. Si s′ est déjà dans la liste OPEN Alors L'ignorer et continuer v. Sinon Si un cycle n'a pas encore été trouvé Ou f (s′ ) ≤ f (se ) Alors Ajouter s′ dans la liste OPEN FinSi FinPour FinTantQue 3. Construire les stratégies de patrouille individuelles σi de chaque agent i en suivant les liens des états se à s0 . 3.3 Considération des graphes mé- triques N'importe quel graphe métrique G = (V, E) peut être facilement transformé en un graphe unitaire G′ = (V ′ , E ′ ) équivalent. Avant la transformation, V ′ = V et E ′ = ∅. Soit c le coût minimal d'un arc reliant deux n÷uds dans G. Ce coût sera considéré comme étant désormais le coût unitaire d'un arc dans G′ . Alors, pour chaque paire de n÷uds i et j tel que c i, j ∈ V , mij = ( cij − 1) n÷uds seront ajoutés à V ′ . Si mij = 0 alors seulement les arcs (i, j) et (j, i) seront ajoutés à E ′ . Sinon, si n1 , n2 , . . . , nmij sont les mij n÷uds ajoutés à V ′ an d'obtenir des arcs unitaires entre les n÷uds i et j , alors les arcs dirigés (i, n1 ), (n1 , n2 ), . . . , (nmij , j) seront ajoutés à E ′ . Les arcs dirigés contraindront ainsi les agents à suivre automatiquement les arcs reliant deux n÷uds i et j tels que i, j ∈ V , sans réemprunter un arc déjà traversé. La gure 1 montre un exemple de graphe unitaire G′ obtenue à partir d'un graphe métrique G en utilisant cette méthode. Tab. 2 1  Topologies de graphe "Pseudo Croix" "Grille irrégulière" "Couloir" "Homme sans tête" 4 2 4 1 5 0 1 2 0 6 5 9 7 3 8 3 Graphe métrique G Graphe unitaire G' 2  Paramètres utilisés dans la phase d'apprentissage de GBLA Tab. 1  Graphe métrique G et son graphe unitaire G′ correspondant Fig. L'algorithme meilleur d'abord décrit dans la section précédente peut alors être appliqué à G′ sous les condi|V | tions que S = |V ′ |r × N+ , puisque seules les oisivetés des n÷uds de G sont pertinents, et qu'un cycle constitue une séquence d'états s1 , s2 , . . . , sk telle que s1 = sk et (p11 , p12 , . . . , p1r ), (pk1 , pk2 , . . . , pkr ) ∈ V r . Cette dernière condition garantit que les cycles trouvés sont valides, c'est-à-dire que les agents se trouvent sur les n÷uds de G (et non quelque part sur un arc de G) lorsqu'ils commencent un cycle. 4 Evaluation expérimentale Les strategies de patrouille multi-agents fûrent calculées sur quatre topologies de graphe de complexité différente (gure 1) avec une population constitué de un à quatre agents. Nous avons développé un simulateur permettant de faciliter l'implémentation et l'évaluation de comportements multi-agents qui pourraient être exhibés dans un environnement tridimensionnel. Nous l'avons utilisé pour évaluer nos stratégies de patrouille. 4.1 Protocole expérimental L'apprentissage des stratégies de patrouille en utilisant GBLA fût réalisé de la manière suivante. An d'obtenir des stratégies aussi robustes que possibles, leur apprentissage a été divisé en essais. Au début de chaque essai, les statistiques sur le graphe (oisiveté des n÷uds et oisiveté moyenne du graphe) sont remises à zéro, tous les agents sont placés sur le même n÷ud initial et ils apprennent à patrouiller pendant un certain nombre d'itérations. Le n÷ud initial est changé d'un Nombre d'essais Nombre d'iterations par Essai Taux d'apprentissage (α) Facteur d'escompte (γ ) Probabilité d'exploration (dans Q-Learning) 1000 10000 0.9 0.9 10 % essai à l'autre. Ainsi, un total de 16 stratégies de patrouille (les 4 populations d'agents × 4 topologies de graphes) fûrent apprises. Nous avons conduit des expériences préliminaires an de déterminer les paramètres d'apprentissage de GBLA les plus ecaces, tels que le nombre d'essais, le nombre d'itérations par essai, le taux d'apprentissage α, le facteur d'escompte γ et la probabilité d'exploration ǫ. Le tableau 2 montre les valeurs déterminées empiriquement et que nous avons utilisées pour réaliser l'apprentissage des PDMs. Dans les prochaines sections seront présentés les résultats expérimentaux que nous avons obtenus avec GBLA et notre approche an d'évaluer la robustesse des stratégies de patrouille multi-agent, lorsque le n÷ud où commencent à patrouiller tous les agents change. 4.2 Comparaison expérimentale Les gures 2,3,4 et 5 indiquent l'oisiveté moyenne du graphe obtenue après une simulation de patrouille multi-agent en utilisant soit des stratégies calculées par MDPMAPP, soit des stratégies apprises par GBLA. Chaque stratégie de patrouille fût évaluée 10 fois en changeant le n÷ud initial des agents et en utilisant 50000 cycles de simulation. Ainsi, les résultats suivants représentent l'oisiveté moyenne du graphe sur 10 simulations. Les intervalles de conance indiqués sur les gures ont été calculés en utilisant un risque de 5%. Il est à noter que seulement des graphes avec au plus dix noeuds ont été examinés. En eet, résoudre le MAPP de manière globale a un inconvénient principal : la durée de calcul nécessaire à sa résolution augmente exponentiellement avec la complexité du graphe et le nombre d'agents impliqués. Comme ordre d'idée, 80 minutes ont été nécessaires pour résoudre le MAPP sur le graphe "Pseudo Croix" avec seulement un agent, tandis que moins de 30 secondes étaient susantes pour GBLA. 2  Résultats de comparaison sur le graphe "Pseudo Croix" Fig. 3  Résultats de comparaison sur le graphe "Grille irrégulière" Fig. Nous pouvons déjà remarquer que les stratégies calculées par l'algorithme MDPMAPP permettent à des agents de coordonner leurs actions pour n'importe quelle topologie de graphe, puisque l'oisiveté moyenne du graphe diminue quand le nombre d'agents augmente. Ce n'est pas le cas en utilisant GBLA, où les agents ont appris à coordonner leurs actions seulement sur le graphe "Homme sans tête". Patrouiller sur le graphe "Couloir", qui possède pourtant un degré Fig. loir" 4  Résultats de comparaison sur le graphe "Cou- 5  Résultats de comparaison sur le graphe "Homme sans tête" Fig. minimal (degré 2), semble ainsi être plus compliqué. Comme prévu, l'algorithme MDPMAPP est signicativement meilleur que GBLA pour tous les graphes, excepté pour le graphe "Pseudo Croix", quand un ou deux agents patrouillent. En observant le comportement des agents sur notre simulateur, nous avons noté l'émergence de plusieurs organisations d'agents qui pourraient expliquer les résultats obtenus par GBLA. En eet, GBLA semble pouvoir créer des agents patrouillant qui peuvent être divisés en deux classes. La première classe se compose d'agents qui sont responsables d'une seule région du graphe : ils patrouillent uniquement les noeuds de cette région durant toute la simulation. La deuxième classe se compose d'agents qui traversent une région pour se rendre vers une autre, spécialement pour visiter les n÷uds qui relient plusieurs régions, ce qui évite ainsi de diminuer les performances. Mais parfois, les chemins empruntés par les agents ne sont pas optimaux, c'est-à-dire qu'ils leur arrive de traverser un arc deux fois de suite dans un délai relativement court. Ces comportements fûrent uniquement observés sur le graphe "Homme sans tête". Sur les autres graphes, tous les agents suivent la même politique : ils parcourent tous chaque graphe dans la même direction et en même temps. Ceci explique pourquoi l'oisiveté moyenne de ces graphes ne diminue pas quand le nombre d'agents augmente. 5 Conclusion Nous avons présenté une analyse formelle du problème multi-agent de la patrouille à l'aide des processus décisionnels de Markov. Tandis que toutes les précédentes approches abordant ce problème permettent de trouver des solutions approximatives, notre approche permet de résoudre le PPMA de manière optimale. Nous avons prouvé que les stratégies de patrouille optimales peuvent toujours être représentées par des moyens nis, et nous avons introduit un algorithme de programmation dynamique capable de les déterminer. Les politiques obtenues fûrent testées sur quelques unes des topologies de graphes classiquement employées dans ce domaine an de montrer leur ecacité. Nous envisageons d'une part d'étendre notre approche à des problèmes d'une plus grande complexité. D'autre part, le recours à des fonctions heuristiques admissibles permettra d'accélerer la recherche d'une stratégie de patrouille multi-agent optimale. Références [1] A. Almeida, G. Ramalho, and al. Recent Advances on Multi-Agent Patrolling. In Proceedings of the 17th Brazilian Symposium on Articial Intelligence, pages 474483, 2004. [2] Y. Chevaleyre. Theoretical Analysis of the Multi-Agent Patrolling Problem. In Internatio- nal Joint Conference on Intelligent Agent Technology, pages 302308, 2004. [3] Y. Chevaleyre. The Patrolling Problem. In Annales du LAMSADE n°4, Paris-Dauphine University, France, 2005. available in french at http ://www.lamsade.dauphine.fr/~chevaley/papers/ anna_patro.pdf. [4] C. Claus and C. Boutilier. The dynamics of reinforcement learning in cooperative multiagent systems. In Proceedings of the of the AAAI, pages 746752, 1998. [5] RoboCup Rescue Homepage : http ://www.rescuesystem.org/robocuprescue/, last visit in November 2005. [6] H. Kitano. RoboCup Rescue : A Grand Challenge for Multi-Agent Systems. In Proceedings of the 4th International Conference on Multi Agent Systems, pages 512, 2000. [7] A. Machado, A. Almeida, and al. Multi- Agent Movement Coordination in Patrolling. In Proceedings of the 3rd In- ternational Conference on Computer and Game, 2002. available at http ://www- poleia.lip6.fr/~machado/les/aicg_patrol_nal.pdf. [8] A. Machado, G. Ramalho, and al. Multi-Agent Patrolling : an Empirical Analysis of Alternatives Architectures. In Proceedings of the 3rd Inter- national Workshop on Multi-Agent Based Simulation, pages 155170, 2002. [9] E. Reuter and F. Baude. System and Network Management Itineraries for Mobile Agents. In 4th International Workshop on Mobile Agents for Telecommunications Applications, pages 227238, 2002. [10] H. Santana, G. Ramalho, and al. Multi-Agent Patrolling with Reinforcement Learning. In Pro- ceedings of the 3rd International Joint Conference on Autonomous Agents and Multi-Agent Systems, pages 11221129, 2004.