1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Luận văn thạc sĩ VNU apprentissage interactif et coordination d’agents

55 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Apprentissage Interactif Et Coordination D’agents
Tác giả Pham Phuong Thao
Người hướng dẫn Alexis Drogoul
Trường học VNU
Chuyên ngành Informatique option IA & Multimédia
Thể loại thesis
Năm xuất bản 2009
Thành phố Hanoi
Định dạng
Số trang 55
Dung lượng 2,78 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mon stage se concentre sur l’augmentation du réalisme de la simulation AROUND, en implémentant la coordination entre les agents pour gérer les conflits, et en améliorant les comportement

Trang 1

Apprentissage interactif et Coordination d’agents

Mémoire de fin d’étude Master Informatique option IA & Multimédia

PHAM PHUONG THAO

Trang 2

Remerciements

Je tiens tout d’abord à remercier Alexis Drogoul pour m’avoir proposé ce sujet et pour son encadrement dévoué durant tout mon stage Mes remerciements vont aussi à Chu Thanh Quang et Vo Duc An du laboratoire MSI pour leur support, leur aide chaleureuse et les documents qu’ils m’ont fournis

Merci à Patrick Taillandier et Bertrand Chaussat pour leurs conseils et leur aide sur les SIG

Je remercie tous mes camarades de la promotion 13 pour leur amitié et leur support pendant les deux années passées à l’IFI

Je souhaite remercier ma mère, ma sœur et également la famille de Fabrice pour leur soutien, leur attention et pour m’avoir encouragé tout au long de mes études et de mon stage, à Hanoi et à Bondy

Enfin, je voudrais remercier particulièrement Fabrice Trillaud pour son aide précieuse et son soutien

de chaque instant.

Trang 3

Résumé

Le projet AROUND (Autonomous Robots for Observation of Urban Networks after a Disaster), un des projets principaux du laboratoire MSI à l’IFI, se propose de concevoir et d’implémenter un système complet d’aide à la décision en temps-réel pour la gestion des catastrophes naturelles en milieu urbain

Mon stage se concentre sur l’augmentation du réalisme de la simulation AROUND, en implémentant la coordination entre les agents pour gérer les conflits, et en améliorant les comportements d’apprentissage en ligne Il s’intéresse aussi à l’initialisation de la simulation

à partir de scénarios réalistes Pour gérer les conflits dans la prise de décision des agents, j’ai proposé deux approches : le modèle centralisé et le modèle décentralisé Pour améliorer l’apprentissage en ligne des agents, j’ai implémenté un mécanisme de diffusion de connaissances par la communication

Mots-clés : Apprentissage interactif, décision multi-critères, fonction d’utilité, système

d’aide à la décision, coordination entre les agents

Abstract

The project AROUND (Autonomous Robots for Observation of Urban Networks after a Disaster), one of the principal and important projects of the laboratory MSI at IFI, intend to conceive and implement a complete decision support system in real time for managing the natural catastrophe in the urban area

My work focuses on increasing the realism of the simulation AROUND, by implementing the coordination between the agents to manage conflicts, and by improving on-line learning behaviors I also worked on the simulation’s initialization, based on realistic scenarios To manage the conflicts between the decisions taken by different agents, I proposed two approaches: the centralized model and the decentralized model To improve the on-line learning, I built a learning diffusion mechanism through communication

Keywords: Interactive learning, multi-criteria decision, utility function, decision support

system, coordination between agents

Trang 4

Table des matières

Remerciements 2

Résumé 3

Abstract 3

Table des matières 4

Table des figures 6

Liste des tableaux 7

I Introduction 8

1 Objectif du stage 8

2 Modèle AROUND-RESCUE 9

II Coordination entre les agents dans le système de secours en cas de catastrophe 14

1 Problème de coordination 14

2 Technique de coordination commune 16

a Structure Organisationnelle : 16

b Echange de méta-information 16

c Planification Multi-Agent 17

3 Problème de coordination dans AROUND-RESCUE 19

4 Deux modèles proposés pour gérer les conflits dans AROUND-RESCUE 21

a Modèle de décision décentralisée 21

b Modèle de décision centralisée 25

5 Expérimentations 27

a Comparaison des temps d’exécution 27

b Comparaison de la gestion de conflits 32

c Conclusions expérimentales 33

III Apprentissage interactif dans le système multi-agents 34

1 Problème de l’apprentissage dans AROUND-RESCUE 34

a Fonction d’utilité et ensemble de critères de décision 34

b Apprentissage interactif par le modèle de « préférence additive » 35

c Limites de l’existant 36

2 Approche pour le partage intelligent de connaissance entre les agents 38

a Implémentation de l’action de décision dans GAML 38

b Critères « collectifs » de décision des agents dans AROUND-RESCUE 39

Trang 5

c Diffusion et partage de connaissance 41

3 Expérimentations 43

a Exécution de la nouvelle action « choose » 43

b Comparaison de la performance des deux actions « choose » dans GAML 45

c Comparaison de la performance avec des zones de diffusion différentes 46

d Comparaison les méthodes d’initialisation de fonction d’utilité 50

IV Conclusion et perspectives 52

Références 54

Trang 6

Table des figures

Figure 1 : L’interface de la simulation AROUND-RESCUE 9

Figure 2 : L’indicateur « Victims » 12

Figure 3 : L’indicateur « Fires » 13

Figure 4 : Conflits entre les ambulances dans le modèle de VO Duc An 20

Figure 9 : Le temps total nécessaire (en millisecondes) pour charger et sauver les victimes 28

Figure 10 : Le temps total nécessaire (en cycles de simulation) pour charger et sauver les victimes dans les deux modèles de décision 29

Figure 11 : L’indicateur du nombre de victimes sur le terrain, mortes, dans l’ambulance et à l’hôpital 30

Figure 12 : Volume de communication entre les agents dans AROUND-RESCUE 31

Figure 13 : Un exemple de conflits dans AROUND-RESCUE 32

Figure 14 : Le nombre de conflits dans les deux modèles de décision 32

Figure 17 : L’ambulance va chercher la victime victim10125 43

Figure 18 : l’ambulance va chercher la victime victime10125 44

Figure 19 : l’ambulance va chercher la victime victime10169 44

Figure 20 : La comparaison de la performance de deux actions « choose » dans GAML 45

Figure 21 : La différence de la fonction d’utilité des ambulances et celle des experts 49

Figure 22 : Pourcentages de conflits entre les décisions des agents et ceux de l’expert 50

Figure 23 : Les différences entre la fonction des agents et celle de l’expert 51

Figure 24 : Les proportions de conflits des décisions des agents sur ceux des décisions de l’expert 51

Figure 5 : Les tâches des agents dans le modèle décentralisé d’AROUND-RESCUE 22

Figure 6 : Diagramme de la diffusion de la décision de cible d’une ambulance 23

Figure 7 : Diagramme de la réponse de la diffusion de la décision de cible d’une l’ambulance 24

Figure 8 : Les tâches des agents dans le modèle centralisé d’AROUND-RESCUE 25

Figure 15 : Diffusion de la fonction d’utilité aux ambulances 41

Figure 16 : La mise à jour de la fonction d’utilité d’une ambulance 42

Trang 7

Liste des tableaux

Tableau 1 : Les espèces d’agents dans la simulation AROUND-RESCUE 11

Tableau 2 : Les paramètres principaux de la simulation AROUND-RESCUE 12

Tableau 3 : Les paramètres d’expérimentation de la simulation AROUND-RESCUE 27

Tableau 4 : Le nombre de conflits dans la simulation AROUND-RESCUE 32

Tableau 5 : L’ensemble de critère de décision d’une ambulance A pour choisir une victime V 34

Tableau 6 : Les critères de décision des ambulances pour le choix des victimes 40

Tableau 7 : Les critères de décision des pompiers pour le choix des incendies 41

Tableau 8 : Les temps d’exécution et la différence 46

Trang 8

L’apprentissage actuel ne prend cependant pas en compte les dimensions collectives de compétition et de coordination entre équipes de secours Les critères utilisés

ne portent en effet que sur la localisation et la gravité des victimes reportées, ainsi que sur

la localisation et la disponibilité des centres de soins existants, mais pas sur l’activité parallèle des autres agents de la simulation D’autre part, les comportements appris par une équipe de secours ne sont pas partagés avec les autres agents

De plus, la communication est déjà implémentée dans la plate-forme GAMA [2]

comme un outil efficace pour échanger les informations entre les agents Mon sujet de stage se concentre sur la mise en place d’un mécanisme pour améliorer la performance et

le réalisme de la simulation AROUND-RESCUE Il faut développer :

- un ensemble de critères « collectifs » permettant de prendre en compte dans l’apprentissage la localisation et la disponibilité des autres équipes de secours ;

- une méthode de communication permettant aux agents de partager intelligemment les modèles de décision appris ;

- une méthode de coordination ou de négociation, s’appuyant sur les mécanismes

de communication, et permettant de régler les éventuels conflits entre les agents possédant des modèles de décision différents

L’ensemble sera réalisé au sein de la plate-forme GAMA, développée au sein de l’équipe MSI et de l’UR Geodes, et sur laquelle fonctionne la simulation actuelle

Mon stage se déroule sous la direction du professeur Alexis DROGOUL et reprend les travaux de Chu Thanh Quang et Vo Duc An, deux thésards du laboratoire MSI

Ce rapport présente mes recherches et mes expérimentations au cours du stage en quatre parties La première est l’introduction générale du stage et la description de la simulation

Trang 9

AROUND-RESCUE La deuxième partie parle de la coordination dans le système de secours

en cas de catastrophe, les techniques principales existantes et la solution apportée pour la coordination des agents Le problème d’apprentissage est présenté dans la troisième partie, ainsi que les expérimentations pour le mécanisme de partage et de diffusion de connaissances Enfin ce rapport parle en conclusion des perspectives envisagées pour la simulation

2 Modèle AROUND-RESCUE

Le modèle AROUND-RESCUE est développé pour simuler les activités de secours terrestres après un tremblement de terre La simulation a été créée pour la première fois par Alexis Drogoul et Chu Thanh Quang [1] Ils ont implémenté à ce moment un modèle simple

de prise de décision dans les comportements des agents Ce modèle a été ensuite amélioré par Vo Duc An [2] en y ajoutant la communication et la coordination entre les agents

L’initialisation de la simulation est en cours d’amélioration par Bertrand Chaussat, qui intègre le calcule des positions des victimes et des incendies en se basant sur le niveau de dommages des bâtiments après le tremblement de terre Le projet est toujours en cours de recherche par les thésards et les stagiaires de MSI

Figure 1 : L’interface de la simulation AROUND-RESCUE

Trang 10

Après un tremblement de terre, les bâtiments sont détruits, les habitants sont coincés et blessés dans les effondrements de béton et de briques Des incendies se déclenchent également L’organisation des secours dans les quartiers détruits est effectuée au minimum par la police, les pompiers, les hôpitaux et les ambulances Les espèces d’agents de la simulation se composent donc de :

La description de chaque espèce est présentée dans le tableau suivant :

Espèce Représentation Comportements Tâches

son état de santé s’aggrave au cours du temps Si une victime n’est pas prise à l’heure par une ambulance, elle meurt sur le terrain Si une victime est dans une ambulance ou dans un hôpital, son état de la santé s’améliore au fur

et à mesure

charge par des pompiers, son intensité augmenté au cours du temps Ou inversement, l’intensité d’un incendie diminue en fonction

du nombre de voitures des pompiers qui sont en train de l’éteindre

3 military Polygone

marron

situated, communicating, visible, planning

Un agent de cette espèce représente une caserne Une caserne est responsable de fournir

de l’eau aux pompiers Et chaque militaire s’occupe aussi une équipe d’explorateurs

Trang 11

4 explorer situated, visible,

communicating, exploring

Les explorateurs patrouillent dans le quartier et ramassent les informations des victimes et des incendies

moving, communicating

Les pompiers sont responsables d’aller chercher les incendies et les éteindre Cette espèce a un attribut qui représente la capacité d’eau de chaque agent La quantité d’eau d’un pompier diminue au cours du temps quand il éteint un incendie

Dès qu’un pompier n’a plus d’eau,

il va à une caserne pour prendre

de l’eau

6 hopital Polygone vert situated, visible,

carrying, communicating

Un hôpital se charge de prendre et de soigner les victimes déposées par les ambulances

carrying, choosing, communicating

La tâche principale d’une ambulance est d’aller prendre les victimes sur le terrain puis de les déposer dans un hôpital Une ambulance a une capacité qui représente le nombre de victimes qu’elle peut contenir

Tableau 1 : Les espèces d’agents dans la simulation AROUND-RESCUE

Les paramètres principaux pour initialiser la simulation sont:

quartier après le tremblement de terre

victimes sur le terrain initial

d’incendies initial

d’explorateurs par caserne

Trang 12

pompiers par caserne

d’ambulances par hôpital

Tableau 2 : Les paramètres principaux de la simulation AROUND-RESCUE

Le but de la simulation AROUND-RESCUE est de modéliser et évaluer les activités des secours (sauvetages des victimes, transferts aux hôpitaux, extinction des incendies…) après

un tremblement de terre Il est nécessaire d’ajouter un certains indicateurs pour suivre l’état

de l’environnement de simulation

- L’indicateur « Victims » fait des statistiques sur les victimes selon 4 données: le nombre de victimes sur le terrain, le nombre de victimes chargées dans l’ambulance, le nombre de victimes à l’hôpital et le nombre de victimes mortes

Ces statistiques sont présentées sous forme d’un diagramme linéaire

Figure 2 : L’indicateur « Victims »

- L’indicateur « Fires » calcule le pourcentage d’incendies en cours et le pourcentage d’incendies éteints sous forme d’un diagramme circulaire

Trang 13

Figure 3 : L’indicateur « Fires »

Trang 14

II Coordination entre les agents dans le système de secours en cas de catastrophe

1 Problème de coordination

Dans un système multi-agents, chaque agent représente un individu ou une organisation et agit de manière autonome dans son environnement afin d’atteindre ses objectifs Un système multi-agent est un système distribué composé d’un ensemble d’agents interagissant, hétérogènes et coopératifs ou non L’environnement d’un système multi-agents peut être dynamique et partagé Les agents sont implémentés avec des buts différents, il est donc possible qu’ils ne partagent pas des objectifs communs Les agents doivent mettre au point des stratégies afin d’atteindre les résultats voulus, et avoir la capacité de coordonner dynamiquement leurs activités et de coopérer avec les autres De nombreux exemples de coordination existent dans la vie quotidienne: deux déménageurs déplaçant un meuble lourd, une équipe de football échange la balle pour marquer des buts

et gagner le match, des personnes qui parlent à tour de rơle en se passant un micro, etc La coordination entre les agents est donc un processus très important dans lequel un agent doit analyser sa propre activité et les activités des autres pour essayer d’assurer une action cohérente de la communauté [4]

Il y a quatre raisons principales pour lesquelles les actions des agents ont besoin

d’être coordonnés :

- Parce qu’il existe des dépendances entre les actions des agents

L’interdépendance arrive quand les buts entrepris par les agents sont relatifs Soit parce que les décisions locales prises par un agent ont un impact sur les décisions des autres membres

de la communauté (par exemple en construisant une maison, les décisions de la taille et la position des chambres ont un impact sur l’installation électrique et la plomberie), soit parce que les interactions des différents agents sont incompatibles (par exemple si deux véhicules essayant de passer dans une sortie étroite simultanément, cela entraỵnera une collision qui endommagera les deux véhicules et bloquera la sortie) Les dépendances entre actions,

plans ou buts de chaque agent apportent toujours des conflits potentiels

- Parce qu’il a besoin de satisfaire des contraintes globales

Les contraintes globales existent lorsque la solution développée par un groupe d’agents doit satisfaire un certain nombre de conditions tel que le cỏt, le temps, l’espace,…, pour être un succès Par exemple : un budget maximal pour la construction d’une maison, un système de surveillance distribué doit pouvoir réagir toutes les 30 secondes, etc Si un agent individuel agit de manière isolée, et essaie de n’optimiser que ses performances locales, la satisfaction

de telles contraintes est improbable

Trang 15

- Parce qu’aucun individu n’a les compétences, les ressources, ou les informations

suffisantes pour résoudre le problème de lui-même

Beaucoup de problèmes ne peuvent pas être résolus par les individus travaillant en isolation, parce que ils ne possèdent pas les compétences, les ressources ni les informations suffisantes On peut donner comme exemple des tâches de levage d’objets lourds, jouer une symphonie, jouer au football, ou n’importe quelle tâche en équipe Il peut être irréaliste ou indésirable de vouloir réunir en une seule entité tous les composants nécessaires, à cause

de contraintes historiques, politiques, physiques ou sociales Les alliances provisoires par la coordination sont donc le seul moyen de traiter ces problèmes Les différentes compétences ont besoin d’être combinées pour produire un résultat dépassant le cadre d’un seul individu Par exemple : dans le domaine du diagnostic médical, les connaissances des maladies cardiaques, des troubles de la circulation et des troubles respiratoires ont besoin d’être combinés pour diagnostiquer une maladie Les différents agents peuvent posséder des ressources variées et différentes (la puissance de traitement, la mémoire et la communication) qui sont toutes importantes pour résoudre un problème complexe Enfin, les agents différents ont peut-être des informations ou des points de vue différents Par exemple, dans le domaine du génie logiciel, un produit peut être vu sous la perspective de

l’analyse, de la conception, d’implémentation, du test ou de la maintenance du logiciel

- Parce que la performance, l’efficacité du système ont besoin d’être augmentées

Chaque problème n’a pas simplement besoin d’être résolu de façon correcte, mais également d’une manière efficace Dans le cas du levage d’un objet lourd, un déménageur seul a la capacité de bouger l’objet en deux minutes Mais si deux déménageurs travaillent ensemble, ils peuvent le déplacer plus facilement : le temps nécessaire pour terminer la tâche diminue donc par exemple à une minute Dans le cas de l’analyse d’un terrain pour localiser les obstacles, un ensemble de robots communicant peut finir le parcours plus vite qu’un seul robot Même si les individus peuvent travailler indépendamment, ou si la coordination n’est pas essentielle, les informations, les compétences d’un seul agent peuvent être suffisantes pour atteindre le but, mais deux agents peuvent résoudre le problème deux fois plus rapidement Comme tous les membres de la communauté ne peuvent pas avoir une perspective complète et précise du système dans son ensemble, la cohésion est une méthode pouvant facilement augmenter et assurer l’efficacité d’un système

La coordination est un processus permettant d’organiser la résolution d’un problème

de telle sorte que les interactions nuisibles soient évitées et que les interactions bénéfiques soient exploitées

Trang 16

2 Technique de coordination commune

Dans cette section, les trois mécanismes les plus communs de gestion de la coordination sont présentés : Structure Organisationnelle, Echange de Méta-Information

(Meta‐Level Information Exchange) et Planification Multi-Agent (Multi-Agent Planning)

a Structure Organisationnelle :

La Structure Organisationnelle est un modèle des relations d’information et de contrôle qui existent entre les individus dans la communauté Les relations de contrôle peuvent être hiérarchiques ou plates Elles indiquent l’autorité relative des agents et déterminent les types d’interaction sociale possibles Par exemple : dans la conception d’une communauté d’agents pour diagnostiquer les erreurs dans un réseau électrique (Cockburn

et Jennings, 1995), le concepteur du système peut spécifier une organisation fonctionnelle (l’agent 1 s’occupe des problèmes en haute tension, pendant que l’agent 2 s’occupe des problèmes en basse tension), ou une organisation spatiale (l’agent 1 traite les défauts

électriques dans la région 1 et l’agent 2 traite les défauts électriques dans la région 2)

Les relations spécifiées par la structure organisationnelle donnent des informations sur les agents et ainsi sur communauté en général à long-terme Elles aident le processus de coordination en spécifiant de quelles actions se chargera un individu et en fournissant une méthode de partition de l’espace de recherche Chaque agent décide de la zone de l’espace

de recherche à explorer en se basant sur ses points de vue locaux et ses connaissances organisationnelles des rôles dans la communauté Dans ce contexte, la coordination consiste

en deux activités simultanées: la construction et la maintenance de la structure organisationnelle de la communauté, et le raffinement continu de cette structure en activités précises, en utilisant les connaissances locales et les capacités de contrôle de chaque agent L’organisation elle-même est spécifiée comme un ensemble de zones d’intérêt, et un ensemble de priorités Le premier indique quelle information sera envoyée, quand et à qui, le deuxième indique comment évaluer l’importance du traitement des différents types de buts Les relations d’autorité indiquent les priorités relatives qui

devraient être attachées pour différencier les buts globaux des buts locaux

On peut voir que cette technique est implémentée dans le modèle de Vo Duc An [2]

La carte, qui est ici l’espace de recherche, est divisée en plusieurs zones Chaque explorateur s’occupe d’une seule zone Il s’agit ici d’une relation plate

L’échange de méta-information, également appelée Planification Partielle Globale (Partial Global Planning), est un système dans lequel les agents construisent et partagent leur plans locaux de façon à identifier les améliorations potentielles pour la coordination

Trang 17

[Durfee, 1995] Comme indiqué dans la section précédente, les agents n’ont pas connaissance de l’intégralité l’environnement et du le système, ils peuvent donc s’aider en partageant leurs propres informations et en les combinant pour élaborer une vue plus large

du problème

La Planification Partielle Globale est une approche flexible qui permet aux divers agents d’un système de se coordonner dynamiquement Les agents interagissent en se communiquant leurs plans et leurs buts selon un niveau d’abstraction approprié Ces communications permettent à chacun d’anticiper quelles seront les actions futures d’un ou

de plusieurs autres agents, augmentant ainsi la cohérence de l’ensemble des agents Comme les agents coopèrent, le receveur d’un message peut utiliser les informations reçues afin d’ajuster sa propre planification

La Planification Partielle Globale implique trois étapes itératives : [1] Chaque agent décide de ses buts propres, et gère des plans à court-terme afin de les atteindre

[2] Les agents échangent leurs informations pour déterminer sur quels points les plans et les buts interagissent

[3] Les agents modifient leurs plans locaux afin de mieux coordonner leurs activités propres

L’échange de méta-informations est une source de connaissance à moyen-terme : plus court que la Structure Organisationnelle, mais plus long que la Planification Multi-Agent (section 2.c) Elle améliore la coordination seulement au niveau ó les informations sont encore correctes, car des informations inexactes peuvent être plus nuisibles que l’absence d’information Ainsi, lorsqu’un agent s’engage à remplir une mission dans une zone particulière de l’espace de recherche, l’échec de cette mission aura peut-être pour résultat

la propagation d’informations trompeuses ou mensongères au cœur du réseau De plus, les engagements ne sont pas irrévocables, les conventions sont donc nécessaires pour surveiller leurs progressions Avec l’approche PPG, les agents modifient souvent leurs plans locaux : soit parce que de nouvelles tâches arrivent, soit parce que les actions prennent plus de temps que prévu et leurs engagements ont donc besoin d’être actualisés Si toutefois chaque agent informe les autres de ces changements, il peut provoquer une réaction en chaỵne de diffusion à travers le système Les agents adoptent une convention implicite dans laquelle ils informent leurs connaissances seulement quand la déviation est considérée signifiante

Trang 18

que chaque agent devrait prendre à chaque instant La planification multi-agent est typiquement construite pour éviter les actions incohérentes ou les conflits, en particulier

concernent la consommation des ressources rares

La Planification Multi-Agent est différente de deux premières approches en termes

de niveau de détail des activités des agents Un agent connait exactement à l’avance quelles actions il réalisera, quelles actions relations réaliseront et quelles interactions vont se produire Avec d’une telle spécification exhaustive des comportements, les plans ne peuvent

se faire qu’à court-terme à cause des évènements dynamiques et imprévisibles dans l’environnement Comme la construction de plan doit tenir compte de tous les choix possibles pour les agents, cette approche a généralement besoin de plus de ressources matérielles et de communications que les deux autres mécanismes

(Polycarpou, Yang et Passino, 2001) ont présenté une approche de coordination en utilisant la Planification Multi-Agent pour les agents distribués et le on-line learning pour chercher les cibles d’intérêts et éviter les obstacles [5] A chaque moment, quand un agent est à la position p(k), il a déjà décidé les q positions suivantes : p(k+1), p(k+2) …, p(k+q)

Quand l’agent se déplace de p(k) à p(k+1), il sélectionne la position p(k+q+1) Un agent a toujours en mémoire un plan de ses futures positions Les agents utilisent également une fonction d’utilité pondérée pour sélectionner leur plan :

J = w 1 J 1 + w 2 J 2 +… w s J s

Où Ji sont les sous-buts et wi sont les poids de chaque sous-but Les sous-buts sont :

 Suivre le parcours contenant un maximum d’incertitude dans la carte de recherche

 Suivre le parcours qui mène à la région avec une incertitude maximum dans la carte

de recherche

 Suivre le parcours ayant le minimum de chevauchements avec ceux des autres agents

 Suivre le parcours qui maximise la couverture des cibles de plus haute priorité

 Suivre le parcours vers les cibles les plus prioritaires avec le plus de certitude si son carburant est bas

 Suivre le parcours vers les présentant les moins de chevauchements avec les parcours des autres agents

Par communication avec les autres, un agent va connaitre leurs positions pour les pas suivants et leurs directions principales

q-En général, il y a deux approches élémentaires pour la Planification Multi-Agent :

Trang 19

- Centralisé : les plans des agents individuels sont développés séparément et envoyés à

un coordinateur central qui les analyse pour identifier les interactions potentielles

Ensuite le coordinateur communique ces plans aux agents pour leur permettre de synchroniser leurs actions convenablement

- Distribué : le plan est développé par un ensemble d’agents Aucun agent n’a

connaissance des activités de toute communauté, ainsi la détection et la résolution des conflits deviennent plus difficiles

3 Problème de coordination dans AROUND-RESCUE

La coordination dans AROUND-RESCUE a été implémentée au cours du stage de fin d’études de Vo Duc An, en 2008 La communication est utilisée pour transporter et échanger les informations entres les agents Les points principaux dans la coordination de ses travaux sont décrits ainsi:

- Division en équipe et Contrôle centralisé : Les agents comme les explorateurs, les

ambulances et les pompiers sont divisés en équipes Chaque caserne possède sa propre équipe d’explorateurs, ainsi qu’une équipe de pompiers Chaque hôpital a également sa propre équipe d’ambulances Les casernes s’occupent d’attribuer les tâches à leurs propres explorateurs et pompiers De même les hôpitaux déterminent les cibles de leurs propres ambulances Les ambulances ne se déplacent pas si leur hôpital ne leur indique pas quelle victime aller chercher

- Partition de l’environnement : Le point principal est ce que chaque agent est

responsable d’une région ou une zone Dans le plan (quartier Ba Dinh par exemple),

on a plusieurs casernes Une caserne se charge d’une zone du plan Dès que le tremblement de terre a lieu, la caserne demande à chaque explorateur dans son équipe d’aller faire une patrouille dans sa zone Chaque explorateur fait la patrouille sur des routes données par sa caserne Quand l’explorateur voit des victimes ou des incendies, il envoie ces informations à sa caserne

- Diffusion des informations : Les informations des victimes et des incendies sont

collectées par les explorateurs et transférées aux militaires pour les traiter Les informations sur les victimes sont alors transférées aux hôpitaux Les informations sur les incendies sont traitées par les militaires, et envoyées aux pompiers pour organiser les interventions A chaque fois qu’une victime est récupérée ou un incendie éteint, une confirmation est diffusée vers tous les autres agents concernés

Dans le modèle de Vo Duc An, les conflits créés par exemple lorsque plusieurs ambulances ou pompiers vont chercher la même cible sont éliminés grâce à la communication Les victimes sont distribuées aux hôpitaux par les militaires en fonction de

la distance entre chaque victime et chaque hôpital Les victimes sont à nouveau distribuées

Trang 20

aux ambulances dans l’ordre de réception La première victime détectée sera ainsi récupérée en priorité

Figure 4 : Conflits entre les ambulances dans le modèle de VO Duc An

Les conflits sont significativement réduits mais ne sont pas éliminés complètement

Chaque hôpital gère correctement les conflits au sein de son équipe, mais il existe des conflits entre les ambulances dépendantes d’hôpitaux différents Comme dans la figure 4, on remarque deux cas dans lesquels deux ambulances vont chercher la même victime De plus

la méthode de sélection des cibles chez les militaires et les hôpitaux est encore assez simple

Elle n’est pas flexible et ne tient pas compte des circonstances globales et locales de chaque agent dans l’environnement Par exemple : la gravité de victime, la distance entre les victimes et les ambulances, l’importance des incendies, la densité de distribution des victimes ou des incendies Dans le cas des agents intelligents du modèle de Chu Thanh Quang (section III), cette coordination doit être améliorée pour s’adapter à la décision des agents et pour augmenter la performance de la simulation

Trang 21

4 Deux modèles proposés pour gérer les conflits dans AROUND-RESCUE

Dans cette section, deux modèles de coordination sont proposés afin de gérer les conflits dans la distribution des missions entre les agents dans AROUND-RESCUE : le modèle

de décision décentralisée et le modèle de décision centralisé Ces deux modèles ne sont pas totalement identiques aux modèles présentés dans la partie « Planification Multi-Agent » Ils sont modifiés en combinant les trois techniques pour s’adapter au contexte de la simulation

de secours

Les agents qui jouent le rôle le plus important dans la coordination sont les explorateurs, les ambulances et les pompiers Ces trois espèces d’agents interagissent pour contrôler la recherche et le secours dans AROUND-RESCUE La répartition des tâches entre chaque espèce est décrite dans le schéma ci-dessous :

Dans ce modèle, l’organisation des agents n’est pas importante car tous les agents d’une même espèce jouent les mêmes rôles Leurs actions et leurs décisions sont égales dans la coordination Il n’y a aucun agent global contrôlant un groupe d’agents ou toute la communauté

- Les explorateurs : Les explorateurs patrouillent dans le quartier pour rassembler les informations sur les positions des victimes et des incendies Une fois qu’un explorateur croise une victime ou un incendie, il envoie tout de suite un message à toutes les ambulances s’il s’agit d’une victime, ou aux pompiers s’il s’agit d’un incendie

- Les ambulances : L’objectif des ambulances est d’aller chercher un maximum de victimes le plus vite possible Selon la section II.2, lorsqu’une ambulance a réussi à charger une victime, s’il y a encore de la place dans l’ambulance, elle va chercher une nouvelle cible Il existe plusieurs cas dans lesquels un conflit peut se produire:

o La victime choisie a déjà été chargée par une autre ambulance avant que celle-ci ne calcule sa cible Si l’ambulance courante ne le sait pas, elle va quand même aller chercher la victime, et perdra beaucoup de temps

o La victime est encore vivante, toujours sur sol, mais une ou plusieurs autres ambulances sont en train de venir la chercher Comment vont-elles choisir quelle ambulance est la mieux placée pour venir secourir cette victime ?

Trang 22

Dans les deux cas, le problème est que le processus de prise de décision de plusieurs ambulances donne le même résultat Pour éviter de tels conflits, il faut construire un mécanisme pour gérer les cibles de toutes les ambulances Les agents doivent négocier pour obtenir un accord La négociation se déroule en deux étapes:

Diffusion de la décision : Quand une ambulance a choisi ou a reçu par l’expert une cible, il va envoyer une demande sous la forme de messages « requests » aux autres ambulances pour savoir si elle pourra aller chercher cette victime, puis elle va attendre quelques instants S’il y a un refus avant la fin du délai, c'est-à-dire qu’une autre ambulance ayant possibilité d’aller chercher la victime plus rapidement se manifeste, l’ambulance abandonne la victime choisie et relance son processus de décision

Exploreurs

Ambulances

Pompiers Victimes

Incendies

Patrouiller dans le quartier

Rassembler des informations sur les victimes

Aller éteindre les incendies

Aller chercher les victimes et les emmener à l’hôpital

- Partager la fonction

d’apprentissage

- Envoyer leurs

décisions pour accord sur les cibles

- Echanger les infos

sur les incendies éteints

- Partager la fonction

d’apprentissage

- Envoyer leurs

décisions pour accord sur les cibles

- Echanger les infos

sur les victimes sauvées

Figure 5 : Les tâches des agents dans le modèle décentralisé d’AROUND-RESCUE

Trang 23

Réponse aux messages de prise de décision

Chaque ambulance possède une boîte de messages « request » Si elle ambulance reçoit un message « request », à n’importe quel moment, elle va comparer sa victime courante avec la cible en indiquée dans la requête Si elles sont différentes, l’ambulance courante envoie une réponse de type « agree » pour confirmer qu’elle est d’accord avec la cible Sinon, l’ambulance devra vérifier si elle-même est bien en train d’aller chercher cette victime, c’est-a-dire qu’elle n’a reçu aucun refus avant la fin du délai d’attente Elle va alors refuser la demande de l’émetteur du message en envoyant une réponse de type « refuse »

Au contraire, si l’ambulance est encore en attente de réponse pour sa propre requête, elle

va calculer la distance d v entre elle et la victime et puis la comparer avec la distance d’ v entre l’émetteur et la victime Si elle est plus proche de la victime, elle va aussi refuser la demande

Choix d’une victime à aller chercher

Envoi de messages «requests » aux autres ambulances time := 0 ;

Message de

Aller chercher la victime

No time ++ ;

time = time_out ?

Oui Non

Non

Figure 6 : Diagramme de la diffusion de la décision de cible d’une ambulance

Trang 24

parce qu’elle pourra aller chercher la victime plus rapidement Sinon, il enverra une réponse pour accepter la demande

Aller chercher la victime

Abandonner la victime, choisir une autre cible

Figure 7 : Diagramme de la réponse de la diffusion de la décision de cible d’une l’ambulance

Trang 25

b Modèle de décision centralisée

Dans le modèle décentralisé, les hôpitaux et les stations de polices ne participent à la coordination entre les agents Mais dans le modèle de décision centralisé, ces deux types d’agents jouent un rôle central dans la distribution des tâche entres les ambulances et les pompiers On les appelle les agents centraux, qui ont beaucoup plus de capacité à recevoir, à envoyer et à traiter les messages que les agents comme les ambulances ou les pompiers Ces agents sont appelés également les centres d’information ou de coordination des équipes

L’organisation de la communauté est présentée plus clairement dans ce modèle : Les actions des ambulances et des pompiers doivent dépendre de la distribution de leurs coordinateurs

Les tâches de chaque espèce dans AROUND-RESCUE sont définies ainsi :

-

Ambulances

Assigner les tâches aux pompiers

Stations de police Exploreurs

Hôpitaux

Rassembler des informations sur les victimes Envoyer les informations sur

les victimes et les incendies

Envoyer les listes

de victimes

Assigner les tâches aux ambulances Aller chercher

les victimes et

les emmener à

l’hôpital

Informer et confirmer les incendies éteints

Confirmer le nombre de places disponibles, les circonstances…

Victimes

Patrouiller dans le quartier

Incendies

Rassembler des informations sur les incendies

Pompiers

Aller éteindre les incendies

Informer et confirmer les victimes sauvées,

positions des ambulances

Figure 8 : Les tâches des agents dans le modèle centralisé d’AROUND-RESCUE

Trang 26

- Les explorateurs patrouillent et envoient à leurs stations de police les informations

sur les victimes et les incendies qu’ils rencontrent sur leur chemin Chaque explorateur a une mémoire pour stocker les victimes ou les incendies rencontrés pour éviter de renvoyer deux fois la même donnée à la station de police

- La station de police envoie tout de suite les informations reçues sur les victimes aux

hôpitaux selon la stratégie suivante :

 Les victimes ne sont transmises qu’aux hôpitaux voisins de la station de police courante

 Pour une victime, la station de police choisi le premier hôpital disponible le plus proche de la victime

- Les hôpitaux : Chaque hôpital est responsable d’un ensemble d’ambulances A partir

des informations qui sont envoyées par les stations de police, l’hôpital va assigner les tâches aux ambulances Les hôpitaux reçoivent les informations sur les victimes et les stockent dans une liste Dès qu’une ambulance est libre, l’hôpital va assigner une victime à cette ambulance selon le mécanisme de prise de décision décrit dans la section II.2 Les critères utilisés par les hôpitaux sont :

 La distance entre la victime et l’ambulance courante

 La gravité des blessures des victimes

Les poids de chaque critère peuvent être changés dans l’action « choose » sous GAMA

- Les Ambulances : Les ambulances ne font rien tant qu’ils ne reçoivent pas d’ordre de

leur hôpital Après avoir chargé la victime indiquée, l’ambulance envoie un message à son hôpital pour confirmer qu’elle a fini sa tâche, et est libre

- Les Pompiers : La tâche de chaque pompier est déterminée par sa station de police

La prise de décision pour les pompiers est effectuée par une fonction d’utilité utilisant les critères suivants:

 La distance entre l’incendie et le pompier

 L’importance de l’incendie

 Le nombre de victimes voisines de l’incendie

 La distance entre l’incendie et la victime la plus proche

Après avoir éteint l’incendie qui lui est assigné, le pompier envoie un message à son coordinateur pour confirmer qu’il a fini sa tâche, et est prêt à recevoir une nouvelle mission

Trang 27

5 Expérimentations

Pour estimer et comparer l’efficacité et la performance des deux modèles de décision proposés, j’ai mesuré le temps total nécessaire (en millisecondes et en cycles de simulation) pour secourir toutes les victimes du quartier Le contexte d’environnement est le même dans tous les cas, avec les paramètres de simulation suivant :

Seuil de gravité de l’état des victimes

30 Si la valeur dépasse le seuil, la

victime meurt

Tableau 3 : Les paramètres d’expérimentation de la simulation AROUND-RESCUE

Dans un système de secours, le temps est très important, il faut organiser les véhicules et les personnels de la manière la plus efficace possible pour sauver les victimes et éteindre les incendies sans tarder Les temps d’exécution sont calculés à la fois en millisecondes (temps réel) et en cycles (temps de la simulation) pour estimer la vitesse de chaque modèle Dans les cas urgents comme le secours après la catastrophe naturelle, le système qui fonctionne le plus vite est considéré le plus efficace

Le modèle réalisé par Vo Duc An gère correctement les conflits de cibles entre les ambulances, mais la simulation AROUND marche assez lentement (figure 9) Il lui a fallu près

de 47 secondes pour secourir 10 victimes tandis que mes deux modèles proposés ont besoin

de seulement 7 ou 10 secondes Le temps réel nécessaire est ainsi divisé par 5 Dans les simulations effectuées avec 50 ou 100 victimes, le modèle de Vo Duc An a pris 2 voire 3 fois plus de temps que les modèles proposés

Le graphe de la figure 9 montre aussi qu’en général, la simulation avec le modèle centralisé marche plus rapidement que le modèle décentralisé car le temps total nécessaire

en millisecondes est presque toujours inférieur Mais la différence entre les deux modèles n’est pas très grande, environs de 3000 à 17000 millisecondes soit de 3 à 17 secondes Ce n’est pas beaucoup dans le cas d’un grand système de secours comme AROUND-RESCUE La ligne rouge croît de façon plus régulière que la ligne bleue La raison est que chaque agent d’espèce « ambulance » et « explorateur » doit prendre beaucoup de temps pour envoyer et recevoir un nombre de messages énorme pendant l’exécution de la simulation

Ngày đăng: 06/12/2022, 15:44

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Thanh-Quang Chu, Alexis Drogoul, Alain Boucher, Jean-Daniel Zucker, Interactive Learning of Independent Experts’ Criteria for Rescue Simulations, in Pacific Rim International Conference on Artificial Intelligence (PRIMA), 2008 Sách, tạp chí
Tiêu đề: Pacific Rim "International Conference on Artificial Intelligence
[2] Vo Duc An, Implantation des protocoles de communication FIPA dans la plate-forme GAMA, Mémoire du Stage de Fin d’étude, 2008http://www1.ifi.auf.org/rapports/stages-promo12/stage-vo_duc_an.pdf Sách, tạp chí
Tiêu đề: Mémoire du Stage de Fin d’étude
[3] Sébastien Paquet, Nicolas Bernier and Brahim Chaib-draa , Comparison of Different Coordination Strategies for the RoboCupRescue Simulation, in Proceedings of The 17th International Conference on Industrial & Engineering Applications of Artificial Intelligence & Expert Systems, 2004, 987—996http://damas.ift.ulaval.ca/publications/Paquet(IEA-AIE-2004).pdf Sách, tạp chí
Tiêu đề: Proceedings of The 17th International Conference on Industrial & Engineering Applications of Artificial Intelligence & Expert Systems
[4] Nick. R. Jennings, Coordination Techniques for Distributed Artificial Intelligence, University of London, In: Foundations of Distributed Artificial Intelligence, pp. 187-210, Wiley, 2001.http://eprints.ecs.soton.ac.uk/2187/1/FOUND-DAI-COORD.pdf Sách, tạp chí
Tiêu đề: Foundations of Distributed Artificial Intelligence
[5] Marios M. Polycarpou, Yanli Yang and Kevin M. Passino, Cooperative Control of Distributed Multi-Agent Systems, IEEE Control Systems Magazine, June 2001www.ece.osu.edu/~passino/CSM_Submitted.pdf Sách, tạp chí
Tiêu đề: IEEE Control Systems Magazine
[6] MV Nagendra Prasad and Victor R Lesser, Learning Problem Solving Control in Cooperative Multi-Agent Systems, AAAI Technical Report WS-97-03. Compilation copyright © 1997www.aaai.org/Papers/Workshops/1997/WS-97-03/WS97-03-010.pdf Sách, tạp chí
Tiêu đề: AAAI Technical Report WS-97-03. Compilation copyright
[7] NICK R. JENNINGS, Commitments and Conventions: The Foundation of Coordination in Multi-Agent Systems, University of London, in: The Knowledge Engineering Review, 8(3):223-250, 1993www.ecs.soton.ac.uk/~nrj/download-files/KE-REVIEW-8-3.pdf Sách, tạp chí
Tiêu đề: Knowledge Engineering Review, 8(3):223-250
[8] Keith S.Decker and Victor R.Lesser, Analyzing the Need for Meta-Level Communication, Umass Computer Science Technical report 93 -22, May 1993ftp://ftp.cs.umass.edu/pub/techrept/techreport/1993/UM-CS-1993-022.ps Sách, tạp chí
Tiêu đề: Umass Computer Science Technical report 93 -22
[9] Mathijs de Weerdt, André Bos, Hans Tonino Cees, Witteveen, A Plan Fusion Algorithm for Multi-Agent Systems, Delft University of Technology, In Proceedings of the Workshop on Computational Logic in Multi-Agent Systems (CLIMA-00), pages 56-65, 2000www.pds.ewi.tudelft.nl/~mathijs/cl2000.pdf Sách, tạp chí
Tiêu đề: In Proceedings of the Workshop on Computational Logic in Multi-Agent Systems
[10] Victor R. Lesser, Keith S. Decker, Generalizing the Partial Global Planning Algorithm, International Journal of Intelligent and Cooperative Information Systems, Vol. 1, pages 319-346, 1993ftp://ftp.cs.umass.edu/pub/lesser/decker-ijicis.ps Sách, tạp chí
Tiêu đề: International Journal of Intelligent and Cooperative Information Systems
[11] J. E. Doran, S. Franklin, N. R. Jennings & T. J. Norman, On Cooperation in Multi-Agent Systems, 1997www.csd.abdn.ac.uk/~tnorman/publications/ker1997.pdf Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

🧩 Sản phẩm bạn có thể quan tâm