Institut de la Francophonie pour Laboratoire Lorraine de Recherche en l’Informatique Informatique et ses Applications (LORIA) – UMR 7503 Master INTELLIGENCE ARTIFICIELLE ET MULTIMÉDIA, 2ème année, Spécialité RECHERCHE Année universitaire 2005 – 2007 APPROCHES COLLECTIVES POUR LE PROBLEME DE LA PATROUILLE MULTI-AGENTS Mémoire présenté par CHU Hoang Nam Stage effectué au LORIA, Projet INRIA MaIA Directeurs : • M. Olivier SIMONIN – Maître de Conférences (Université Henri Poincaré – Nancy 1) • M. François CHARPILLET – Directeur de Recherche (INRIA) Vandœuvre-lès-Nancy, Septembre 2007 TIEU LUAN MOI download : skknchat@gmail.com Remerciements Je tiens en premier lieu à remercier tout particulièrement Olivier Simonin et François Charpillet pour m’avoir encadré pendant ces six mois. Je remercie de leur contact chaleureux, leurs conseils et encouragements, leur soutien permanent et la liberté de recherche qu’il a bien voulu me laisser.
Je souhaite également remercier Alexis Drogoul pour m’avoir introduit ce stage, fait confiance et encouragé dès le début de mon travail. Mes sincères remerciements vont également à tous les professeurs de l’Institut de le Francophonie pour l’Informatique (IFI) pour m’avoir dirigé tout au long de mes études à l’IFI. Je remercie l’ensemble du personnel de l’équipe MaIA pour leur formidable accueil, leur gentillesse et une ambiance de travail particulièrement favorable. Merci à Cédric, Jamal, Yoann, Ilham et Arnaud pour leurs amabilités et chaleurs, à Geoffray pour son cours de langue humoriste, à Rodolphe, Nazim pour leurs conseils précieux.
Un grand merci aux mes camarades de la promotion XI pour leur amitié et leur aide dès le début de mon étude à l’IFI. Merci enfin à mes parents et mes amis pour leur soutien et leur encouragement à tout instant. TIEU LUAN MOI download : skknchat@gmail.com Table des matières REMERCIEMENTS. 2 TABLE DES MATIERES.
3 TABLE DES FIGURES. 6 1 PROBLÈME MULTI-AGENTS DE LA PATROUILLE. 10 2 APPROCHE PAR SYSTÈMES MULTI-AGENTS RÉACTIFS. EVAP : UN MODÈLE BASÉ SUR L’ÉVAPORATION DES PHÉROMONES.
CLING : UN MODÈLE BASÉ SUR LA PROPAGATION D’INFORMATIONS. 14 3 COMPARAISON LES PERFORMANCES ENTRE EVAP ET CLING. SIMULATION ET ANALYSE. Exploration et patrouille.
Avantages et défauts des méthodes. 21 4 PROBLÈME D’ÉNERGIE DANS LA PATROUILLE. MARKA : UN MODÈLE COLLECTIF BASÉ SUR LA CONSTRUCTION DE CHAMP NUMÉRIQUE POTENTIEL. Comportement des agents.
Estimation de l’autosuffisance. TANKER : UNE APPROCHE AUTO-ORGANISÉE COLLECTIVE POUR L’OPTIMISATION DE POSITION DE TANKER. Les forces attractives et répulsives. Comportement du modèle (algorithme).
28 5 PERFORMANCES DE MARKA ET TANKER. AVANTAGES ET DÉFAUTS DES MODÈLES. 39 SWARM APPROACHES FOR THE PATROLLING PROBLEM, INFORMATION PROPAGATION VS. 40 TIEU LUAN MOI download : skknchat@gmail.AGENTS Table des figures Figure 1 : Espace « discret » et espace « continu ».
9 Figure 2 : Oisiveté propagée. 14 Figure 3 : Topologies étudiées. 17 Figure 4 : Topologie sans obstacles, 8 agents, 1000 itérations. 18 Figure 5 : Topologie sans obstacle, moyenne IGI.
18 Figure 6 : Topologie couloir-salles, 1 agent, 4000 itération. 19 Figure 7 : Topologie 6-pièces, 4 agents, 2000 itérations. 19 Figure 8 : Topologie 6-pièces, moyenne IGI. 19 Figure 9 : EVAP et CLInG, Map E.
20 Figure 10 : Le processus de marquage d’environnement. 24 Figure 11 : La formation de gradient des champs numériques. 25 Figure 12 : Attraction guide le Tanker au barycentre des demandes. 27 Figure 13 : Répulsion garde la distance entre Tankers A et B.
28 Figure 14 : Diffusion en environnement discret. 29 Figure 15 : MARKA et TANKER, 4 agents, 4000 itérations. 31 Figure 16 : Installation d’environnement. 32 Figure 17 : MARKA et TANKER, 2 groupes, 4000 itérations.
32 Figure 18 : Illustration de TANKER. 33 TIEU LUAN MOI download : skknchat@gmail.AGENTS TIEU LUAN MOI download : skknchat@gmail.AGENTS Approches collectives pour le problème de la patrouille multi-agents Introduction Ce stage a été réalisé dans le cadre du master recherche informatique, intelligence artificielle et multimédia, option intelligence artificielle. Il a eu lieu au laboratoire LORIA (UMR 7503, Nancy) au sein de l’équipe INRIA MaIA. Le stage s’est déroulé sous la direction d’Oliver SIMONIN, Chargé de Recherche INRIA, et François CHARPILLET, Directeur de Recherche INRIA, responsable scientifique de l’équipe MaIA.
Le problème multi-agents de la patrouille consiste à faire parcourir un territoire à des agents de telle sorte que les différentes parties du territoire soient visitées le plus souvent possible par ces agents. Ce problème avait été introduit par Ramalho et al. dans [8], et avait été abordé avec des algorithmes multi-agents classiques. Dans le cadre du stage effectué au LORIA, nous abordons l’approche par l’intelligence en essaim pour le problème de la patrouille et de l’exploration multi-agents.
Plus précisément, ce stage se destine à l’étude des algorithmes multi-agents réactifs dont le but est de patrouiller et explorer un environnement inconnu. De plus, un autre objectif de ce stage est d’intégrer la limitation d’énergie au problème de la patrouille, de proposer un algorithme qui permette aux agents de coordonner les activités de patrouille et de recharge. Le rapport se divise en 4 parties. La première introduit le problème multi-agents de la patrouille ainsi que les travaux antérieurs.
Dans une seconde partie, nous présentons l’intelligence collective et deux algorithmes, EVAP et CLInG, basés sur cette approche pour traiter le problème de la patrouille. La troisième partie présente la comparaison des performances entre ces deux algorithmes. Enfin, la dernière partie est consacrée au problème de l’énergie dans la patrouille. CHU Hoang Nam 6 TIEU LUAN MOI download : skknchat@gmail.AGENTS Approches collectives pour le problème de la patrouille multi-agents 1 Problème multi-agents de la patrouille Selon le dictionnaire Petit Larousse, une patrouille est « une mission de renseignements, de surveillance ou de liaison confiée à une formation militaire (aérienne, terrestre ou navale) ou policière ; désigne également la formation elle- même ».
Selon le dictionnaire Oxford, « patrolling is the act of walking or travelling around an area, at regular interval, in order to protect or to supervise it ». Le problème multi- agents de la patrouille, ou patrolling en anglais, consiste à déployer un ensemble d’agents, généralement en nombre fixe, afin de visiter à intervalle régulier les lieux stratégiques d’une région. Ce problème se pose typiquement dans les jeux vidéos [8] [10] lorsqu’une équipe de créatures virtuelles a pour mission de patrouiller sur un territoire déterminé, dans certaines applications internet, ainsi que dans le déplacement d’une équipe de robots, dans la surveillance d’un lieu ou d’un bâtiment en vue de le défendre de toute intrusion, etc. Malgré son utilité et son intérêt scientifique, la patrouille multi-agents n’a été étudiée que récemment.
Dans [8], un des premiers travaux, Machado et al. ont déjà proposé les premières notions et aussi évalué différents architectures d’agent pour traiter ce problème. Ainsi, nous plaçant dans cette configuration du problème nous pensons que des approches de type intelligence en essaim peuvent s’avérer particulièrement pertinentes. Elles reposent en général sur le marquage de l’environnement et définissent un moyen de communication et de calcul indirect entre les agents.
Les sous-sections suivantes présentent des critères d’évaluations de la performance d’une stratégie de patrouille, les types d’environnements ainsi que leur représentation. Critères d’évaluation Patrouiller efficacement dans un environnement, éventuellement dynamique, nécessite que le délai entre deux visites d’un même lieu soit minimal. L’ensemble des travaux portant sur les stratégies de patrouille considèrent que l’environnement est connu, bidimensionnel et qu’il peut être réduit à un graphe G(V,E) (V l’ensemble des nœuds à visiter, E les arrêtes définissant les chemins valides entre les nœuds). Plusieurs critères peuvent être utilisés afin d’évaluer la qualité d’une stratégie de CHU Hoang Nam 7 TIEU LUAN MOI download : skknchat@gmail.AGENTS Approches collectives pour le problème de la patrouille multi-agents patrouille.
Nous utilisons ceux se basant sur le calcul de l’oisiveté des nœuds (ou Idleness) qui peuvent être calculés au niveau d’un nœud ou au niveau du graphe. Nous utilisons les critères suivants qui sont introduits dans [8] : • Instantaneous Node Idleness (INI) : nombre de pas de temps où un nœud est resté non visité, appelé oisiveté dans le reste du présent rapport. Critère calculé pour chaque nœud. • Instantaneous Graph Idleness (IGI) : moyenne de l'Instantaneous Idleness de tous les noeuds pour un instant donné.
Critère calculé au niveau du graphe. • Average Graph Idleness (AvgI) : moyenne de IGI sur n pas de temps. Critère calculé au niveau du graphe. • Instantaneous Worst Idleness (IWI) : plus grande INI apparue au cours d’un pas de temps donné, appelé oisiveté maximale ou pire oisiveté dans le reste du présent rapport.
Critère calculé au niveau du graphe. Environnement On trouve dans les travaux antérieurs deux types d’environnement utilisés par les modèles de la patrouille multi-agent : espace « discret » et espace « continu » Espace « discret » L’espace « discret », qui se compose d’un ensemble de nœuds à visiter, est représenté sous forme un graphe G (V, E) (V l’ensemble des nœuds à visiter, E les arrêtes définissant les chemins valides entre les nœuds). Ce type de représentation convient pour le cas de la patrouille entre les lieux intérêts. Espace « continu » L’espace continu représente une aire à couvrir, comme une chambre, un bâtiment etc.
On peut modéliser ce type d’espace par une grille où chaque cellule représente soit un lieu à visiter, soit un lieu inaccessible (mur, obstacle) (cf. CHU Hoang Nam 8 TIEU LUAN MOI download : skknchat@gmail.AGENTS Approches collectives pour le problème de la patrouille multi-agents Figure 1 : Espace « discret » et espace « continu » La pré-connaissance de l’environnement est également une condition importante dans le problème de la patrouille. En effet, elle influe sur le choix de l’algorithme de patrouille ainsi que sur sa performance. Environnement connu Les agents sont ici dotés d’une pré-connaissance de l’environnement.
Une architecture de type cognitive conviendra donc à ce type d’environnement. Les agents peuvent travailler de façon offline, par exemple, mémoriser la carte ou faire une planification du parcours optimale, avant l’exécution de la tâche [4] [1]. Environnement inconnu La tâche de patrouille est exécutée sans connaissance de l’environnement. Il est alors évident que les agents doivent effectuer deux tâches : explorer l’environnement et patrouiller.
Dans ce cadre, on peut utiliser des agents réactifs, ces derniers pouvant réaliser un apprentissage ou bien recourir à des techniques basées sur le marquage de l’environnement. Dans le cadre de ce stage, nous nous concentrons sur le problème de la patrouille en environnement inconnu, c'est-à-dire qu’il est impossible de disposer du graphe représentant l’environnement. L’espace exploré par les agents est représenté comme une matrice de cellules dont chaque cellule peut être soit: • Libre • Occupée par un agent • Être inaccessible (un obstacle, un mur …) CHU Hoang Nam 9 TIEU LUAN MOI download : skknchat@gmail.AGENTS Approches collectives pour le problème de la patrouille multi-agents 1. Travaux antérieurs Le problème de la patrouille a été abordé ces dernières années selon des approches centralisées, heuristiques ou encore distribuées, mais toujours dans le cadre d’une représentation sous forme d’un graphe de l’environnement (un nœud étant un lieu prédéterminé qu’il faut visiter, une arrête un chemin reliant deux nœuds) et donc nécessairement une pré-connaissance de l’environnement.
Il existe divers travaux reposant sur des algorithmes de parcours de graphes dérivant souvent du problème du voyageur de commerce [1]. On trouve dans [4] une solution reposant sur le principe d’optimisation par colonie de fourmis (ACO algorithms) mais qui nécessite là encore une pré-connaissance de l’environnement sous la forme d’un graphe. Il en est de même pour les techniques à base d’apprentissage qui reposent sur la recherche d’un parcours multi-agent optimal calculé offline, c'est-à-dire que le parcours optimal est calculé avant l’exécution de tâche dans l’environnement considéré. Par conséquent, une telle technique n’est pas capable de s’adapter à un changement online du problème tel qu‘une modification de la topologie de l’environnement ou l’ajout ou la perte d’un certain nombre d’agents.