La Géo-simulation Multi-agent - Université Laval

Dans cet article, nous proposons une approche de géo-simulation basée sur les agents qui a pour .... nécessite une bonne connaissance de l'espace. ... naturelle, une barrière construite sur-le-champ ou une barrière artificielle déjà .... senseurs peuvent être des satellites, des observateurs humains, ou des senseurs-web.
461KB taille 1 téléchargements 127 vues
La Géo-simulation Multi-agent : Un support pour la planification dans un environnement réel Nabil Sahli*,**— Bernard Moulin*,** * Département d’Informatique, Université Laval 3908 Pavillon Pouliot, Québec, G1K7P4, QC, Canada. {nabil.sahli, bernard.moulin}@ift.ulaval.ca. ** Centre de recherche en géomatique, Université Laval Québec G1K 7P4, QC, Canada RÉSUMÉ.

Dans cet article, nous proposons une approche de géo-simulation basée sur les agents qui a pour but d’assister la planification dans un espace réel et surtout à forte composante spatiale. L’approche consiste à établir un parallélisme entre l’environnement réel (par exemple une forêt incendiée) et un environnement de simulation basé sur des données géo-référencées. Cet environnement virtuel utilise des agents logiciels sensibles à l’espace et dotés de capacités cognitives avancées pour aider à planifier et coordonner les interventions sur le terrain. Étant donné que les plans générés dans le cas étudié (feux de forêts) sont essentiellement des chemins, nous proposons également une approche basée sur la géo-simulation orientée agent pour résoudre des problèmes particuliers de recherche de chemin. Finalement, pour appliquer notre approche au cas des feux de forêts, nous avons utilisé MAGS comme plate-forme de géo-simulation et Prometheus comme simulateur du feu. ABSTRACT.

In this paper, we propose an agent-based geo-simulation approach to assist planners when planning under strong spatial constraints in a real space. The approach consists in drawing a parallel between the real environment (for example, a forest on fire) and the simulated environment based on georeferenced data. This virtual environment uses software agents which are aware of the space and equipped with advanced cognitive capabilities, in order to support planning and coordination of operations within the real terrain. Since plans in the studied case (forest fires) are mainly paths, we also propose a new approach based on agent geosimulation in order to solve particular Pathfinding problems. Finally, when applying our approach to firefighting, we use MAGS as a simulation platform and Prometheus as a fire simulator.

MOTS-CLÉS :

Géo-simulation, multi-agent, planification, recherche de chemin, feux de forêts.

KEYWORDS:

Geosimulation, multiagent, planning, pathfinding, forest fires.

Revue. Volume X – n° x/année, pages 1 à X

2

Revue. Volume X – n° x/année

1. Introduction La planification devient complexe quand il s’agit de gérer des situations incertaines telles que les désastres naturels. Prédire de façon précise l’évolution de l’environnement est une tâche fastidieuse pour les planificateurs humains. (Kahneman et al., 1982) ont affirmé

que la simulation est difficile pour les humains. Les expériences de (Forbus 1981) en étaient une preuve. (Forbus 1981) et (Kahneman et al., 1982) ont suggéré que la simulation n’est probablement faite par les humains que dans les cas triviaux. Étant donnée la nature de l’environnement considéré, l’utilisation des modèles analogiques de l’environnement (incluant l’espace et la situation dynamique) fut alors inévitable. Il s’agit d’utiliser la simulation pour représenter l’environnement réel et son évolution (e.g. les phénomènes naturels). Cependant, pour résoudre des problèmes réels de planification, il ne suffit pas de simuler l’environnement, mais il faut également simuler les actions qui se déroulent dans cet environnement. En effet, vu que des prédictions précises des états résultant de l’exécution du plan sont difficiles pour des environnements réels et dynamiques, une planification basée sur la simulation (Simulation-Based Planning : SBP) (Lee et al., 1994) dans l’environnement simulé, ne peut qu’être bénéfique. Le principe de la SBP peut être résumé comme suit : Lorsqu’un ensemble de plans est généré, des simulations sont utilisées pour tester et évaluer les plans afin de choisir le plus approprié pour la situation courante. Le problème est encore plus complexe lorsque viennent s’ajouter des contraintes spatiales. Lorsqu’il s’agit par exemple de planifier lors d’un désastre naturel ou dans une situation de crise, il faut prendre en compte les phénomènes dynamiques qui caractérisent la situation. Par exemple, s’il s’agit d’un feu de forêt, la planification des opérations de lutte doit nécessairement tenir compte de la propagation des feux. Un tel phénomène (propagation des feux dans une forêt) dépend fortement de l’espace et du temps. La planification doit par conséquent être capable de considérer cet aspect spatio-temporel. Dans ce cadre, le planificateur humain est limité. En effet, plusieurs recherches ont démontré que la carte cognitive1 (Kuipers 1982) chez l’être humain, est source de plusieurs types d’erreurs telles que les distorsions mémorielles (Tversky 1981), la mauvaise estimation des distances (e.g. les courtes distances physiques sont surestimées, tandis que les plus grandes distances sont sous-estimées (Kerst et al., 1987). Nous nous sommes demandé si une approche de planification par agents logiciels pourrait aider à résoudre ce problème. En fait, l’utilisation du paradigme agent semble être très bénéfique pour le raisonnement spatial. Les agents sont capables en théorie de raisonner sur l’espace et de l’ « apprendre ». Kray énumère dans ce cadre plusieurs avantages de l’utilisation des agents pour un tel raisonnement (Kray 2001). Cependant, l’étude de la littérature existante a montré que plusieurs obstacles restent à franchir. Dans les recherches

1

Il s'agit d'un processus composé d'une série de transformations psychologiques par lesquelles un individu acquiert, stocke et décode de l'information sur l'emplacement et les attributs d'un phénomène, dans son environnement spatial de tous les jours.

Géo-simulation Multi-agent

3

actuelles, l’utilisation des agents logiciels dans le raisonnement spatial présente deux principales lacunes : – Utilisation incomplète du paradigme agent. Dans le raisonnement spatial, le terme « agent » est souvent utilisé pour décrire des systèmes qui exécutent des tâches spécifiques comme le conseil pour les itinéraires dans (Rogers et al., 1999) et non pas comme des agents interagissant (Jennings et al., 1998). – Faible sensibilité géospatiale des agents. En effet, les agents raisonnent souvent sur un espace de petite taille (et non pas sur un espace géographique à grande échelle tel que défini dans (Egenhofer et al., 1995)), à données simples (et non des données géospatiales extraites d’un Système d’Information Géographique (SIG) et à faible degré de réalisme (les détails sur l’espace sont souvent négligés et les scénarios implémentés sont très simples). Le jeu de la capture de drapeau (Atkin et al., 1998) est un exemple de l’utilisation d’agents à faible sensibilité géospatiale dans des problèmes de planification. Plusieurs projets (Lee et al., 1997 ; Horn et al., 2000 ; Atkin et al., 1998 ; Cohen et al., 1989) ont utilisé des approches de planification basées sur la simulation dans un environnement réel, à grande échelle géographique et à forte composante spatiale. Ces travaux ont également fait appel au paradigme agent, mais ils présentent plusieurs faiblesses : L’environnement de simulation est trop simplifié, les « agents » utilisés dans le processus de planification ne sont ni de vrais agents au sens de (Jennings 2000) (autonomes, proactifs, etc.), ni sensibles à l’espace (capables de raisonner sur les contraintes spatiales quantitatives et qualitatives). Dans cet article, nous proposons une solution basée sur la simulation agent pour planifier dans un environnement dynamique, réel, à grande échelle géographique, et à forte composante spatiale (au-delà de la simple localisation géographique, d’autres caractéristiques de l’espace en jeu telles que la topologie, les formes, etc.). Cette solution remédie aux problèmes évoqués plus haut. Pour que la simulation soit plus réaliste, nous utilisons des données provenant des SIG. On parle dans ce cas de géosimulation. Bien que le terme géo-simulation soit assez récent, plusieurs travaux ont déjà utilisé les simulations multi-agents spatialisés tels que Cormas (Bousquet et al., 1998) ou Repast For GIS (Najlis et al., 2004). Dans notre approche, nous utilisons la géo-simulation comme support à la planification tout en remédiant aux limites discutées plus haut et nous l’illustrons sur le cas des feux de forêts. L’article est organisé comme suit : Dans la Section 2, nous présentons notre domaine d’application, les feux de forêts. En effet, un feu de forêt est un cas typique d’un environnement réel, dynamique et à grande échelle et où la planification nécessite une bonne connaissance de l’espace. Nous proposons ensuite (Section 3) notre architecture de géo-simulation basée sur les agents, ENCASMA, destinée aux problèmes de planification dans un large espace géographique. La Section 4 est dédiée à l’application d’ENCASMA au problème des feux de forêts et plus particulièrement au problème de l’élaboration d’une ligne coupe-feu qui se ramène à la recherche de chemin (Pathfinding). La Section 5 présente les résultats de nos travaux et la validation de notre approche. La Section 6 est une discussion des

4

Revue. Volume X – n° x/année

apports de l’article et de sa position par rapport aux autres travaux dans le domaine. Nous terminons l’article par une conclusion (Section 7).

2. Feux de forêts Lors d’un feu de forêt majeur, les pompiers ont besoin de mener des opérations de lutte pour protéger les ressources de la forêt, les habitations et les personnes. La planification de ces opérations est très complexe. En effet, l’environnement est à évolution rapide (à cause de l’évolution du feu) et à forte composante spatiale (puisque les caractéristiques du terrain déterminent la façon dont le feu se propage et imposent aux pompiers certaines restrictions sur la manière de combattre le feu). Il s’agit donc d’un problème typique de planification dans un environnement réel, dynamique, à grande échelle géographique et à forte contrainte spatiale. Nous donnons ici un bref aperçu de la méthode employée pour une attaque particulière du feu mettant en évidence la forte composante spatiale du problème. Il s’agit de l’attaque indirecte. Un incendie peut être arrêté en perturbant le triangle du feu par l’enlèvement d’au moins un des éléments du triangle : chaleur, oxygène ou combustible (Nicolas et al., 1999). Dans l’attaque indirecte, il s’agit d’enlever le combustible. Cette stratégie est utilisée lorsqu’une attaque directe est impossible à cause de la forte intensité des feux. Une attaque directe consiste à éteindre le feu directement (ce qui revient à enlever l’élément chaleur du triangle). Une attaque indirecte (Nicolas et al., 1999), par contre, utilise des techniques de contrôle du feu tout en se tenant à une distance sécuritaire par rapport au feu. Les pompiers construisent des lignes assez larges (d’environ 3 m de large) qui entourent le périmètre du feu. L’attaque consiste à faire du backfiring à partir d’une ligne d’arrêt qui peut très bien être une barrière naturelle, une barrière construite sur-le-champ ou une barrière artificielle déjà existante (une route ou une ligne d’arrêt par exemple). L’objectif est de brûler et nettoyer une aire (aire rasée) d’environ 30m de large tout en essayant de sacrifier le moins d’aire possible. Idéalement, l’aire à raser doit être entre deux lignes d’arrêt afin d’éviter les turbulences lorsque deux feux se rencontrent. Pour construire une ligne d’arrêt (avec des bulldozers), il faut tenir compte de la progression du feu dans le temps ainsi que des caractéristiques du terrain (afin de passer par les endroits les moins denses en végétation, tout en respectant des contraintes spatiales particulières). Cet exemple sera utilisé pour illustrer notre approche.

3. Architecture ENCASMA : approche par géo-simulation multi-agent Dans ce projet, nous visons à élaborer une approche pour planifier dans un environnement dynamique, réel, à grande échelle géographique, et à forte composante spatiale, et ce en contournant les difficultés rencontrées par les approches actuelles. Dans le monde réel, l’information est souvent manquante ou

Géo-simulation Multi-agent

5

erronée, l’espace perçu est très limité par rapport à l’étendue de l’espace global, la communication est souvent non fiable (communication distante), la planification est souvent difficile et sa validation l’est encore plus. Ces handicaps sont d’autant plus marqués lorsque les acteurs (les intervenants sur le terrain) ont besoin, en plus, de connaître les caractéristiques précises géographiques et topologiques de l’espace dans lequel ils agissent. Nous pensons qu’il est souhaitable de porter le problème dans un environnement de géo-simulation qui offrirait un support à la planification tout en comblant les manques de l’environnement réel. Comme nous le verrons dans la Section 3.1, nous utilisons un environnement de géo-simulation capable d’offrir la connaissance spatiale requise (précise et complète) pour planifier. Le plan doit être transposé par la suite dans l’environnement réel en vue de l’exécuter. Des agents du monde réel et du monde virtuel doivent ainsi collaborer pour maintenir la cohérence des données entre les deux mondes. Les principes de base de notre approche sont présentés dans ce qui suit. 3.1. Notions de base Nous définissons ici les notions de base autour desquelles ENCASMA est bâtie. Géo-simulation : La géo-simulation est un terme utilisé pour décrire une nouvelle tendance de la modélisation de la simulation spatiale. Elle est basée sur une combinaison de diverses techniques et de théories, offrant ainsi une perspective unique qui fait défaut chez la simulation traditionnelle. Plus précisément, elle offre une vue sur les phénomènes urbains, basée sur des objets en interaction représentant l’évolution d’individus et d’autres unités du monde réel, et ce, dans un temps approchant le temps réel (Benenson et al., 2004). Connaissance spatiale augmentée : La simulation est souvent utilisée comme un outil d’aide à la décision. Peu de travaux de recherche utilisent la simulation pour planifier. Dans ce cas, nous estimons que le lien entre les deux environnements (réel (ER) et de simulation (ES)2) est crucial. Un ES sert en fait à apporter aux planificateurs de l’ER la connaissance qui leur manque sur le terrain en termes de données spatiales, de données sur l’évolution de la situation et de l’état des autres acteurs et ressources. Nous parlons ainsi de connaissance augmentée. Dans le cas particulier de la connaissance spatiale, les acteurs manquent de données ou perçoivent mal les caractéristiques spatiales du terrain dans l’ER. L’ES doit alors combler cette faiblesse en mettant à disposition la connaissance spatiale requise. Nous parlons ainsi de connaissance spatiale augmentée. Les représentants de L’ER dans la simulation : Les acteurs de l’ER ont besoin de représentants dans l’ES afin d’accomplir certaines tâches à leur place. Ces représentants doivent, entre autres, inspecter le terrain de façon plus étendue et précise, évaluer la situation en ayant à disposition l’information nécessaire, interagir avec les autres représentants afin de coopérer, etc. Les agents logiciels semblent les

2

Dans le reste du papier, l’environnement de simulation et l’environnement réel seront notés respectivement ES et ER.

6

Revue. Volume X – n° x/année

meilleurs représentants pour accomplir ces tâches. Afin de représenter l’évolution de l’ER dans l’ES, nous avons besoin d’un modèle physique qui simule le phénomène en question (par exemple la propagation du feu de forêt). Le SIG, source de la connaissance spatiale augmentée : Dans des problèmes réels, la connaissance spatiale augmentée doit satisfaire aux deux contraintes essentielles suivantes : (i) la complétude : les données spatiales dans l’ES doivent être les plus complètes possibles; (ii) la fiabilité : la connaissance spatiale doit aussi être fiable. L’utilisation d’un SIG permet de représenter de façon suffisamment précise et complète l’espace géographique étendu dans un ES. La fiabilité des données du SIG est reliée à la fréquence de leur mise à jour Nous supposons dans notre travail que les SIG utilisés ont été mis à jour (dans le cas des feux de forêt cette hypothèse est réaliste car les données peuvent être mises à jour avant la saison des feux (l’été) qui ne dure que quelques mois au Canada). Il est à noter que ces données doivent être accessibles de façon simple et efficace aux différents agents de l’ES. Nous décrirons plus loin la solution technique adoptée. De nouvelles technologies au support de la communication entre l’ER et l’ES : il ne suffit pas de construire un ES précis et complet mais il faut aussi permettre une communication efficace et en temps réel entre l’ES et l’ES. En d’autres termes, d’une part, les agents de l’ES, ayant accès à la connaissance augmentée doivent en faire profiter les acteurs réels. D’autre part, tout ce qui se passe dans l’ER (au niveau des ressources, des acteurs ou de l’évolution de la situation) doit être rapporté à l’ES afin de garantir la cohérence entre les deux environnements. Les progrès technologiques actuels offrent plusieurs solutions de communication : La télédétection, les senseurs web (Delin et al., 1999), les réseaux mobiles et sans fil, Le positionnement géo-référencé (e.g. GPS), etc. 3.2. Architecture Afin de résoudre le problème tel que spécifié dans la Section 1 (planifier dans un environnement dynamique, réel, à grande échelle géographique, et à forte composante spatiale), nous nous proposons de développer un Framework appelé Environnement à Connaissance Augmentée basé sur un Système Multi-agent (ENCASMA). ENCASMA devrait permettre une planification qui utilise les agents logiciels comme planificateurs et la géo-simulation multi-agent comme moyen. ENCASMA fait la correspondance entre l’ER et l’ES. L’architecture, basée sur les principes énumérés précédemment, est décrite par la Figure 1. ENCASMA est constituée de 4 couches en lien étroit avec l’ER. Dans ce qui suit, nous détaillons les différentes couches ainsi que les différents liens qui les relient à l’ER. Plate-forme de simulation : Un SIG est nécessaire pour traduire de façon fidèle et précise les données spatiales réelles. Or, un SIG ne peut constituer un environnement de navigation pour les agents logiciels. Les utilisateurs humains ont également besoin d’un outil plus visuel pour superviser le déroulement des actions. Il est donc nécessaire de traduire ces données SIG dans une plate-forme de simulation qui soit visuelle pour l’utilisateur humain et navigable pour les agents

Géo-simulation Multi-agent

7

logiciels. Nous suggérons l’utilisation de MAGS (Moulin et al., 2003), une plateforme générique de géo-simulation avec laquelle on peut créer des ES de façon fiable à partir de données spatiales réelles et qui offre un environnement de navigation et de perception performant pour les agents logiciels. La plate-forme MAGS sera décrite plus loin (Section 3.3). ENCASMA

Environnement Réel

Applications

Buts Acteurs et ressources

Communication

Évolution de la situation

Senseurs

Données réelles spatiales

SIG

SMA Modèles Physiques Plate-forme de Simulation

Figure 1. Architecture générale d’ENCASMA Modèle physique : Un ER est souvent dynamique et soumis à des phénomènes physiques complexes. Afin de pouvoir simuler au mieux la réalité, il est nécessaire de reproduire ces phénomènes physiques dans l’ES. Le modèle physique simulant la situation dangereuse doit être fiable et réaliste. Pour ce faire, deux conditions doivent être satisfaites: – Le modèle même doit être basé sur des études précises. – Les données d’entrée du modèle doivent être continuellement mises à jour selon l’évolution de la situation réelle. Pour le premier point, nous nous fions aux efforts des physiciens et météorologues pour l’élaboration d’un modèle réaliste du phénomène physique. Par exemple, dans le domaine des feux de forêts, certains modèles comme Prometheus (Prometheus 2005) donnent des prévisions de propagation des feux très proches de la réalité. Quant au deuxième point, il est clair que les prévisions fournies par le modèle ne peuvent être correctes à 100% en raison de la complexité du problème d’une part et des changements imprévus qui peuvent survenir d’autre part. Des senseurs doivent donc assurer la correction et la mise à jour des données fournies par le modèle. Les senseurs peuvent être des satellites, des observateurs humains, ou des senseurs-web (Delin et al., 1999). Cette nouvelle technologie permet de notifier l’ES de l’évolution de la situation. Par exemple, dans le cas d’un feu de forêt, des détecteurs autonomes de feu (ou autonomous fire detector AFD) (Kremens et al., 01) peuvent être déployés. Un AFD est un dispositif qui a la capacité de rapporter sa localisation et d’indiquer si le feu se situe à proximité. Il peut également être équipé pour enregistrer la température locale, le taux d’humidité et la vitesse du vent. Ces données sont ensuite transmises par radio aux pompiers ou à la centrale. Actuellement, les pompiers sont quasi-aveugles pendant la lutte contre le feu. Seuls les avions survolant la région peuvent leur fournir des informations sur la progression des feux. Les AFDs, par contre, peuvent leur fournir des données précises en temps réel et de façon directe. Cette méthode (par senseurs web), bien

8

Revue. Volume X – n° x/année

que moins sûre qu’une constatation humaine, présente plusieurs avantages. En effet, elle permet une meilleure couverture de l’espace, réduit les risques auxquels pourraient être confrontés les humains en allant chercher de telles informations et offre une mise à jour continue de la situation. Système multi-agent : La troisième couche constituant ENCASMA est la couche multi-agent. Elle représente les acteurs de l’ER ainsi que les ressources importantes. Afin de permettre un lien efficace entre ces acteurs et ressources réels, et leurs correspondants dans l’ES, nous adoptons une stratégie complètement agentifiée : tout est agent. En d’autres termes, nous aurons des agents logiciels sur le terrain et d’autres dans l’ES. Concrètement, un acteur (ex. un pompier) aura à sa disposition un dispositif électronique (ex. une station mobile) dans lequel un agent logiciel est chargé d’interagir avec l’acteur et de faire par la suite le lien entre lui et l’ES. Cet agent qu’on appelle Agent Acteur Réel (AAR) interagit avec l’acteur humain via une interface et communique avec l’ES via des messages distants par exemple. Dans l’ES, nous avons également des agents logiciels. A chaque AAR nous associons un Agent Acteur de Simulation (AAS) pour le représenter. Nous représentons également les ressources pertinentes de l’ER par des Agents Ressources de Simulation (ARS) dans l’ES. Un agent ARS n’a donc pas de correspondant dans l’ER, mais sa présence est importante dans l’ES afin d’interagir avec les AAS et former un SMA plus complet. Par exemple, si un ARS se rend compte dans l’ES qu’un danger est proche de lui mais qu’aucune action de la part des acteurs (représentés par des AAS) n’a été entreprise, il peut lancer un appel de détresse aux AAS qui l’entourent pour requérir leur support. Avant que les agents de simulation puissent agir (naviguer, percevoir, etc.) dans l’ES, il est très important d’établir un lien de cohérence entre eux et leurs correspondants dans l’ER. Pour ce faire, la technologie moderne offre plusieurs moyens de communication entre les agents. Nous nous contentons dans cet article de présenter le principe de cette communication. L’Agent Réel doit informer son correspondant (Agent de Simulation) de sa localisation réelle. L’agent de l’ES se place ainsi à la position correspondante au niveau de la plate-forme de simulation. Les positions sont bidimensionnelles mais peuvent être tridimensionnelles si l’altitude est pertinente. Dans ce cas, l’ES doit être en 3D. Si l’Agent Réel se déplace, il doit fournir périodiquement à son correspondant sa position géospatiale afin qu’il puisse reporter sa position dans l’ES. L’Agent de Simulation peut à son tour communiquer avec son correspondant dans l’ER afin de lui faire parvenir des informations qu’il a pu recueillir à partir de son environnement qui, rappelons le, a une connaissance augmentée. Applications : Quoique les trois couches précédentes soient complètement génériques, elles ne constituent qu’un support pour des applications ayant pour objectif de d’assister les acteurs sur le terrain ou encore d’aider les utilisateurs à prendre des décisions stratégiques lors de la planification dans des situations complexes et réelles. Ces applications reflètent donc les buts des utilisateurs. Bien qu’elles puissent être décrites de façon générique indépendamment du type de la situation, nous nous restreignons dans cet article - pour des raisons de simplification

Géo-simulation Multi-agent

9

et de clarté, à un problème bien particulier : Le problème de recherche de chemin pour la construction de la ligne d’arrêt lors d’un feu de forêt (voir Section 4). 3.3. La Plate-forme MAGS Pour implémenter la première couche d’ENCASMA, nous avons choisi MAGS comme plate-forme de simulation. MAGS est une plate-forme générique pour la création de géo-simulations multi-agent impliquant un grand nombre (des milliers) d’agents logiciels interagissant dans des environnements géographiques virtuels (Moulin et al., 2003). Les agents dans MAGS (définis dans le module Agents, Figure 2) sont capables d’accomplir des activités spatiales et cognitives dans le système de géo-simulation (ce que nous avons appelé dans ENCASMA la plateforme de simulation). Pour ce faire, les agents sont capables de percevoir l’environnement spatial avec ce qu’il contient comme objets et agents logiciels. L’environnement spatial doit être généré à partir des données stockées dans des systèmes d’information géographique SIG. Concrètement, l’environnement (défini dans le module Environnement, Figure 2) dans MAGS est représenté par une grille de cellules. Chaque cellule (correspondant à un bitmap) encapsule les informations pertinentes sur la portion du terrain qu’elle représente. L’accès à ces informations est à la base des capacités spatiales et cognitives dont bénéficient des agents MAGS et que nous discutons ci-dessous. Perception : Les agents de MAGS sont capables de percevoir plusieurs types d’objets de natures différentes : (i) La perception des caractéristiques du terrain de l’ES (ex. élévations et pentes) ; (ii) La perception des chemins, des routes et des régions ; (iii) La perception du paysage entourant les agents (les bâtiments et les objets statiques). (iv) La perception d’autres agents logiciels évoluant dans l’ES. Les agents perçus par un agent doivent être situés dans son champ visuel qui est paramétré ; (v) La perception des aires dynamiques qui ont des propriétés spécifiques (les aires de feu, de fumée et les zones d’odeur) ; (vi) La perception de messages communiqués par d’autres agents ; etc. Navigation : Les agents se déplacent dans l’ES de façon autonome (Moulin et al., 2003) et selon plusieurs modes (suivi de chemin, évitement d’obstacles). Dans ces différents modes, les agents utilisent leur mécanisme de perception pour identifier et localiser les chemins ainsi que les autres objets et agents. Un agent qui navigue est un agent qui a l’état Navigation (un des états possibles inclus dans le module États) Connaissance : Afin d’assurer leur propre autonomie, les agents doivent être capables d’interagir avec l’ES et de prendre des décisions qui respectent leurs états internes et leurs préférences (Moulin et al., 2003). En fait, un agent dans MAGS est caractérisé par un certain nombre de variables dont les valeurs décrivent l’état de l’agent à chaque instant durant la simulation. On distingue deux types d’états : des états stables ou statiques (ne changent pas durant la simulation) et des états dynamiques (peuvent changer durant la simulation). Comportement : Un agent dans MAGS a des objectifs à satisfaire. Ces objectifs sont organisés de façon hiérarchique et sont associés à des actions que l’agent peut

10

Revue. Volume X – n° x/année

accomplir. Chaque agent possède un ensemble d’objectifs (définis par le module Comportement, Figure 2) reliés à ses besoins. Un objectif est relié à des règles qui contiennent des contraintes sur les actions et sur l’activation de l’objectif. Pour plus de détails voir (Moulin et al., 2003).

Module Affichage

Module processus

Module particule

Initialisation

Interface

Module Environnement

Module Feu

Prometheus

Module Comportement

Module Agents

Module États

Figure 2. Architecture de MAGS (après intégration des modules spécifiques à l’application de construction des lignes d’arrêt, voir Section 4)

4. Application d’ENCASMA au problème de Recherche de Chemin La Recherche de Chemin (ou Pathfinding), est le processus de recherche d’un chemin entre une origine et une destination (tout en évitant les obstacles) sur une carte, ce qui implique souvent la recherche du chemin le moins coûteux. Le Pathfinding sur une carte est un problème fondamental pour plusieurs applications telles que la robotique et les jeux d’ordinateur. Selon les caractéristiques de l’espace, les contraintes du problème, et les capacités de l’agent qui cherche le chemin (Pathfinder), le problème sera plus ou moins complexe. Au cours des dernières décennies, plusieurs algorithmes ont été proposés pour trouver le meilleur chemin. L’algorithme A* (Hart et al., 1968) qui est certainement encore l’un des plus efficaces, est largement appliqué en robotique et dans le domaine des jeux sur ordinateur. Cependant, certains problèmes réels particuliers sont soumis à trop de contraintes pour pouvoir être résolus par de tels algorithmes. Par exemple, face à un feu de forêt, les chefs d’opérations ont souvent besoin de construire une ligne d’arrêt pour les feux. Ils ont en fait suffisamment d’expérience pour évaluer la situation courante et proposer une esquisse de ce que pourrait être la ligne d’arrêt qui sera par la suite construite par des bulldozers. Étant donné que cette esquisse est approximative, il est souvent possible de trouver un meilleur chemin pour les bulldozers. Ce chemin doit respecter l’allure générale de l’esquisse proposée par

Géo-simulation Multi-agent

11

l’expert humain ainsi que certaines règles et doctrines imposées par le domaine (comme par exemple : ‘pas de virages étroits sur la ligne’). De plus, les extrémités de la ligne à construire ne sont pas connues de façon précise, elles sont souvent « quelque part » près des zones d’ancrage (un lac ou une zone rocheuse). Chercher un chemin sous de telles contraintes n’est pas un problème classique de Pathfinding et ne peut pas être résolu facilement avec les algorithmes connus (Sahli et al., 2005). En effet, ces algorithmes sont conçus pour trouver le meilleur chemin sous des contraintes plus simples. De plus, plusieurs chercheurs tels que LaMothe (LaMothe 1999), affirment qu’aucun de ces algorithmes classiques n’est applicable au Pathfinding en temps réel. Même si des efforts ont déjà été entamés tels que dans (Niederberger et al., 2004), ils ne concernent que certains problèmes temps réel tels que les jeux et les environnements virtuels. Ils ne traitent pas le cas d’un environnement géographique réel. Nous nous intéressons donc au Pathfinding sous les contraintes suivantes : (i) L’environnement est réel (la précision des données est fondamentale) ; (ii) Le Pathfinder a des objectifs vagues et plusieurs caractéristiques du Pathfinder sont à considérer ; (iii) Les contraintes spatiales qualitatives doivent être prises en compte ; (iv) Le processus du Pathfinding doit se faire en temps réel. Vu la non applicabilité des algorithmes classiques à de tels problèmes, nous utilisons une approche basée sur des agents sensibles à l’espace et nous l’illustrons sur le scénario décrit dans ce qui suit. 4.1. Scénario Pratiquement, lors de la construction d’une ligne d’arrêt (attaque indirecte), des experts de lutte contre les feux décident vaguement de l’endroit où il faut construire la ligne en se basant sur les prédictions de progression des feux ainsi que sur leur expérience personnelle. Nous nous proposons donc d’assister les gestionnaires de feu en utilisant un ES (selon l’architecture ENCASMA) dans lequel des agents logiciels essayent de trouver un chemin convenable pour les bulldozers dans le cas de la construction d’une ligne d’arrêt construite par la machinerie lourde. Un chemin approprié est un chemin qui suit le plus possible l’esquisse proposée par le gestionnaire humain, qui tient compte de la progression du feu dans le temps et qui passe par les endroits les moins denses en essences végétales tout en respectant les contraintes liées du domaine (e.g. pas de virages serrés). 4.2. Architecture du système Avant de parler de l’application en tant que telle, nous instancions l’architecture ENCASMA selon les données du problème des feux de forêt (Tableau 1). Une technique efficace de Pathfinding doit considérer trois aspects (Sahli et al., 2005): l’environnement, le Pathfinder et les contraintes de la procédure de recherche. L’architecture du système (Figure 3) doit respecter ces trois éléments. Seules les composantes importantes de MAGS sont représentées ici.

12

Revue. Volume X – n° x/année

Tableau 1. Correspondances entre ENCASMA et FEU DE FORET ENCASMA Espace Acteur But des acteurs AAR AAS ARS Évolution Modèle physique Plate-forme de simulation Senseurs

Prometheus (interface COM)

Simulateur Prometheus

FEU DE FORET Forêt ou parc Pompier Encercler le feu pour l’éteindre Agent Bulldozer Réel ABR Agent Bulldozer de Simulation Objet x de simulation (x∈{ Habitations, lac, etc.}) Feux Modèle PROMETHEUS (Prometheus 2005) MAGS Satellite, avions, autonomous fire detectors, etc. MAGS Environnement

SIG (terrain)

Agents

Figure 3. L’architecture simplifiée de la solution proposée. Simulateur physique Prometheus : C’est le modèle de propagation des feux de forêt élaboré à partir du système Canadian Forest Fire Behaviour Prediction ainsi qu’une vague d’algorithmes de propagation des feux développés à l’université de Brandon. Le système FBP est un système complexe et semi empirique qui exprime et intègre de façon mathématique, plusieurs facteurs qui influencent le comportement des feux de forêt tels que l’essence des arbres, la météorologie, la topographie, etc. Pour pouvoir utiliser les résultats de Prometheus dans un programme (comme MAGS), nous faisons appel à son interface COM qui donne un accès direct au moteur de simulation. Prometheus fournit à chaque période de temps le périmètre de feu prévu. Chaque périmètre est donné sous la forme d’un ensemble de sommets. À titre d’exemple, la fonction GetNumOfNewVertices() de Prometheus COM donne le nombre de sommets du périmètre en cours (ligne 3, Figure 4). Chacun de ces sommets encapsule les caractéristiques du feu à ce point précis : la position géo-référencée, l’intensité du feu, la vitesse de propagation, etc. Concrètement, étant donné les coordonnées X et Y d’un sommet donné, la fonction GetXYParameters() donne les caractéristiques du feu à ce point précis (ligne 7, Figure 4). Environnement de simulation ES: L’environnement est représenté par une grille de cellules. Chaque cellule correspond à un carré réel du terrain (25 m2 dans notre implémentation). Elle encapsule toutes sortes d’informations pertinentes sur cette portion du terrain : élévation, degré de la pente, direction de la pente, type d’essence, etc. Les routes, les lacs et les rivières sont aussi représentés dans l’ES, étant donné leur pertinence pour le domaine étudié. Les lacs et les rivières sont en

Géo-simulation Multi-agent

13

effet des sources potentielles d’eau et de bonnes barrières naturelles qui peuvent être intégrées à une ligne d’arrêt. Les routes et les chemins forestiers permettent d’acheminer les ressources et peuvent servir parfois de ligne d’arrêt pour le feu (dépendamment de leur largeur). Chaque cellule de l’ES contient donc l’information indiquant si la portion correspondante du terrain fait partie d’un lac, d’une rivière ou d’une route. Au besoin, des lacs et des rivières pourraient être représentés par des objets : Objet Lac et Objet Rivière. L’Objet Lac par exemple représenterait tout le lac et encapsulerait des informations générales sur le lac telles que la superficie, la profondeur moyenne, etc. Toutes ces données proviennent d’un SIG. En fait, les données sont extraites d’un SIG et transformées ensuite en un format manipulable dans MAGS. MAGS nécessite deux types de données pour représenter l’environnement : (1) un bitmap qui représente l’environnement visuel ; (2) un fichier binaire qui représente une matrice dont chaque élément contient différentes informations (élévation, type essence, pente, etc.). Dans le prototype réalisé, chaque élément de ce fichier binaire est codé sur 64 bits et représente une cellule de la grille. 1 while( stepResult = = 0) /* Vérifie si le moteur de Prometheus donne un résultat*/ { 2 long NumPoints; /* Fonction COM qui donne le nbre de sommets d’un périmètre*/ 3 NumPoints = pApp→GetNumOfNewVertices("First"); 4 for(int i = 0;i