1 / 33

Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des PDM

Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des PDM. Fabrice Lauri, François Charpillet, Daniel Szer Equipe MAIA – LORIA Nancy. Plan. Problématique générale Cadre de travail [Machado, 2002] Domaines d’applications Etat de l’art Modélisation par un PDM

shaun
Download Presentation

Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des PDM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Analyse théorique du problème de la patrouille multi-agent en utilisant le cadre des PDM Fabrice Lauri, François Charpillet, Daniel Szer Equipe MAIA – LORIA Nancy

  2. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  3. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  4. Problématique générale Patrouille = « mission impliquant une équipe de plusieurs agents dont le but consiste à visiter régulièrement les lieux stratégiques d’un environnement, afin de : • le défendre • le surveiller • ou le contrôler. » Plusieurs questions : • Comment représenter l’environnement ? • Qu’entend t’on par « lieu stratégique » ? • Quelle architecture d’agent utiliser ? • Quel(s) critère(s) utiliser ? • …

  5. Un exempleEnvironnement 2D, 5 agents

  6. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  7. C C Cadre de travailEnvironnement graphique • Environnement à patrouiller graphe (de patrouille) • Soit G = (V, E, c) un graphe de patrouille : • V={1,2,…} : lieux pertinents de l’environnement, • E={(i,j) ; i,j V} : ensemble des liaisons sûres entre ces lieux. • Pour chaque arc (i,j) : c(i,j) : coût (temps) pour aller de i à j.

  8. Cadre de travail - ExempleGraphe de patrouille, 5 agents • Graphe de : • 50 nœuds • 69 arcs • degré 5

  9. Cadre de travailStratégie de patrouille • Objectif : Trouver une stratégie multi-agent de parcours du graphe qui minimise le temps entre deux visites d’un même nœud pour chacun des nœuds. • = ( 1, 2, …, N), avec : • i : stratégie individuelle de l’agent i • i(t) : nœud visité par l’agent i à l’instant t s s s s s s s

  10. Cadre de travailCritères d’évaluation d’une stratégie Soient : • In(t) : oisiveté (ou Idleness) du nœud n à l’instant t • AvgI(t) : oisiveté du graphe à l’instant t, avec : • AvgI( t ) = moyenne des In(t) • AvgI : oisiveté du graphe à l’issue de T pas de simulation (ou cycles) • WI : pire oisiveté rencontrée au cours de la simulation Mesurer la qualité d’une stratégie S de patrouille = déterminer AvgI (ou WI) après T cycles de simulation de S. La stratégie minimisant WI = stratégie optimale.

  11. Cadre de travail – ExempleStratégie de patrouille, 5 agents Stratégie Agent #1 2,5,7,8,10,12 Stratégie Agent #2 1,3,4,9,12,15,20, 25,30 … A l’issue de T pas de simulation WI = 1463 AvgI = 549.6

  12. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  13. Domaines d’applications Toutes les applications pour lesquelles un contrôle ou une surveillance distribué(e) dans un graphe est requis : • Surveillance contre les intrusions dans un réseau informatique, • Sauvetage par des robots de blessés ayant subi une catastrophe (RoboCup Rescue), • Détection de menaces ennemis ou protection de territoires dans le domaine des jeux vidéos, • etc.

  14. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  15. Etat de l’art(1/2) • [Machado et al., 2002a; Machado et al., 2002b] : travaux pionniers. • [Almeida et al., 2004] : techniques de négociation • [Chevaleyre, 2003] : PPMA = problème d’optimisation combinatoire : • Avec 1 agent = Graphical-TSP, • > 1 agent : proposition de stratégies proches de l’optimum (stratégies à cycle unique)

  16. Etat de l’art(2/2) • [Santana et al., 2004] : apprentissage par renforcement de PDM. • [Almeida et al., 2004] : comparaison des techniques de l’état de l’art : • Travaux pionniers : les moins bons résultats • Stratégie à cycle unique : les meilleurs résultats • Autres techniques : résultats équivalents

  17. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  18. Définition du PDM pour un graphe unitaire • S = { (<positions des agents>, <oisivetés des nœuds>, <pire oisiveté rencontrée>) }

  19. Optimisation sur le critère WI Définition du PDM pour un graphe unitaire • S = { (<positions des agents>, <oisivetés des nœuds>, <pire oisiveté rencontrée>) }

  20. 0 si pire oisiveté de l’état courant < pire oisiveté de l’état précédent -1 sinon Définition du PDMpour un graphe unitaire • S = { (<positions des agents>, <oisivetés des nœuds>, <pire oisiveté rencontrée>) } • A = { <actions jointes des agents> } • T : S x A x S { 0, 1 } (déterministe) • R : S x A x S { -1, 0 } R = g g

  21. N E{ Σt rt } avec [0,1] t=0 C C Résolution du PPMApour un graphe unitaire • Déterminer la politique qui minimise le critère gamma pondéré : et telle que la suite d’états s0, …, si, …, sk constitue un cycle, c’est-à-dire que i avec si = sk. • Stratégie obtenue est optimale (démonstration dans l’article) p g g $

  22. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) 2 3 1 5 4

  23. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) 2 3 1 5 4

  24. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) 2 3 1 5 4

  25. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) s3 = (<1, 1>, <0,3,1,1,3>, 3) 2 3 1 5 4

  26. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) s3 = (<1, 1>, <0,3,1,1,3>, 3) s4 = (<5, 2>, <1,0,2,2,0>, 3) 2 3 1 5 4

  27. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) s3 = (<1, 1>, <0,3,1,1,3>, 3) s4 = (<5, 2>, <1,0,2,2,0>, 3) s5 = (<1, 1>, <0,1,3,3,1>, 3) 2 3 1 5 4

  28. 2 1 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) s3 = (<1, 1>, <0,3,1,1,3>, 3) s4 = (<5, 2>, <1,0,2,2,0>, 3) s5 = (<1, 1>, <0,1,3,3,1>, 3) s6 = (<3, 4>, <1,2,0,0,2>, 3) 2 3 1 5 4

  29. 2 1 s s 1 2 Exemple d’une patrouilleavec 2 agents Séquence d’états représentant la meilleure stratégie de patrouille Configuration initiale s0 = (<5, 2>, <0,0,0,0,0>, 0) s1 = (<1, 1>, <0,1,1,1,1>, 1) s2 = (<3, 4>, <1,2,0,0,2>, 2) s3 = (<1, 1>, <0,3,1,1,3>, 3) s4 = (<5, 2>, <1,0,2,2,0>, 3) s5 = (<1, 1>, <0,1,3,3,1>, 3) s6 = (<3, 4>, <1,2,0,0,2>, 3) s7 = (<1, 1>, <0,3,1,1,3>, 3) 2 3 1 5 = 4 Stratégie Agent #1 5, 1, 3, 1, { 5, 1, 3, 1 }* Stratégie Agent #2 2, 1, 4, 1, { 2, 1, 4, 1 }*

  30. cij c C C Transformation d’un graphe non unitaire en graphe unitaire (1/2) • Soit G = (V, E) un graphe non unitaire. G’ = (V’, E’ ) est le graphe unitaire à construire. • Soit c : coût minimal du graphe G. • Pour chaque paire i, j V, ajouter mij = ( - 1) nœuds. • Si mij = 0, ajouter les arcs (i,j) et (j,i) • Sinon, ajouter les arcs (i, n1), (n1, n2), …, (n , j). mij

  31. 4 2 2 1 0 3 5 Transformation d’un graphe non unitaire en graphe unitaire (2/2) 2 4 5 1 0 6 7 9 8 3 Graphe non unitaire Graphe unitaire correspondant

  32. Plan • Problématique générale • Cadre de travail [Machado, 2002] • Domaines d’applications • Etat de l’art • Modélisation par un PDM • Conclusions et Perspectives

  33. Conclusions • Première analyse formelle du PPMA à l’aide d’un PDM • Solutions exactes sur les instances les moins complexes du problème • Proposer un algorithme pour résoudre efficacement le PDM du PPMA • Tester cette approche sur des instances du PPMA • Déterminer la complexité des graphes qui peuvent être traités par cette approche • Evaluer le biais de la transformation d’un graphe non unitaire en graphe unitaire • Proposer un autre cadre de travail prenant en compte : • la perception des agents • la superficie effectivement surveillée Perspectives

More Related