Loading...
Please wait, while we are loading the content...
Similar Documents
Langage de programmation pour les simulations géoréférencées à base d'agents
| Content Provider | Semantic Scholar |
|---|---|
| Author | Garneau, Tony |
| Copyright Year | 2011 |
| Abstract | ion et raffinement itératif (sous-comportement) Le développement de comportements dans PLAMAGS peut se faire en effectuant une abstraction des comportements (les comportements généraux) et en y effectuant un raffinement itératif de chacun des comportements (sous-comportements, objectifs composés/agrégés) jusqu‘à ce que chacun d‘entre eux corresponde au comportement souhaité. De cette façon, l‘utilisateur peut se concentrer sur une partie du comportement à la fois, tout en étant en mesure d‘exécuter l‘ensemble des comportements (les sous-comportements abstraits n‘ayant tout simplement pas de structures internes). Élimination de l’étape de transition entre le modèle et l’implantation La modélisation visuelle peut par la suite être directement transférée en code PLAMAGS puisque le langage intègre dans ses structures primitives tous les éléments de syntaxe pour le support direct et intégral des graphes comportementaux. Ce qui permet encore une fois d’éliminer l’étape de transition entre le modèle et l’implantation, et ce, même lors de la définition de structures complexes telles que les comportements des agents. Séparation explicite entre le niveau décisionnel et la couche exécutoire La couche exécutoire des graphes comportementaux se retrouve au niveau des objectifs simples qui sont des objectifs non décomposables constitués d‘un ensemble d‘actions à accomplir (fonctions/méthodes). Ces objectifs représentent l‘aspect dynamique de l‘agent qui agit et interagit avec le reste de la simulation. C‘est dans ces objectifs que l‘on retrouve par exemple, le traitement des perceptions, les fonctions de déplacement de l‘agent, etc. Le niveau décisionnel est quant à lui représenté à l‘aide des objectifs composés/agrégés et des différentes listes de règles. D‘un côté, les objectifs composés et agrégés permettent d‘établir une hiérarchie/décomposition entre objectifs ou des relations d‘appartenance d‘objectifs à un ensemble. De leur côté, les listes de règles permettent d‘établir les conditions nécessaires à l‘exécution d‘un objectif (simple, composé ou agrégé), les conditions nécessaires à la réalisation d‘un objectif Tony Garneau, thèse doctorale 2011 Grizli777Résultats et contributions 229 (objectif atteint) et les transitions potentielles entre les objectifs, c‘est-à-dire de déterminer quels objectifs seront exécutés suite à la réalisation d‘un objectif particulier. Transition entre objectifs à l’aide de structures décisionnelles et d’états intégrés aux objectifs Contrairement à la plupart des modèles comportementaux à base de graphes où la transition entre les nœuds est effectuée à l‘aide de conditions sous forme de fonctions booléennes qui déterminent si la transition doit être faite ou non, les objectifs PLAMAGS fournissent des états accessibles pour chacun des objectifs qui sont gérés automatiquement par l‘engin d‘exécution. Les listes de règles peuvent donc utiliser ces états pour déterminer si l‘exécution d‘un objectif doit être complétée avec succès et s‘il est nécessaire d‘effectuer une transition vers d‘autres objectifs. De plus, les transitions potentielles sont aussi déterminées à l‘aide de listes de règles et de fonctions de priorités. Le modèle de transition entre les objectifs est donc plus évolué que les mécanismes classiques de transition entre états/objectifs/nœuds de la plupart des modèles à base de graphes existants. Contrôle de l’exécution de chaque objectif en plusieurs phases Contrairement à la majorité des modèles possédant une structure sous forme de graphe où l‘exécution d‘un nœud (correspondant soit à un état, un objectif, un but, etc.) est monolithique, l‘exécution d‘un objectif PLAMAGS (qu‘il soit simple, composé ou agrégé) est un procédé flexible regroupant plusieurs phases où chacune d‘entre elles peut facilement être contrôlée (voir Figure 32). Tony Garneau, thèse doctorale 2011 Grizli777Résultats et contributions 230 Figure 32 : Étapes menant à l‘exécution d'un objectif. Exécution concurrente d’objectifs multicouches PLAMAGS permet d‘exécuter plusieurs objectifs concurremment à l‘intérieur de l‘exécution d‘un comportement, ce qui est absolument nécessaire si l‘on veut permettre une modélisation intuitive de la majorité des comportements humains. Sans cette capacité, la modélisation sous forme de graphes de comportements aussi simples que « faire des emplettes (acheter un t-shirt, aller chez le nettoyeur et aller chez à l‘épicerie) dans un centre commercial tout en cherchant un endroit où manger » est une tâche complexe. Une telle planification devient complexe à faire puisque les objectifs « acheter un t-shirt », « aller chez le nettoyeur », « aller l‘épicerie » et « aller manger » sont indépendants et ne peuvent être réalisés en même temps, mais la tentative d‘atteindre ces objectifs doit s‘effectuer en même temps (par exemple, pendant que la personne effectue ses emplettes et cherche le nettoyeur, elle trouve une aire de restauration et s‘arrête quelques minutes pour manger). Ce type de comportement se modélise rapidement et de façon intuitive à l‘aide d‘objectifs composés (sous-comportements) concurrents, ce qui n‘est pas le cas si l‘exécution des nœuds/états d‘un graphe est séquentielle. Tony Garneau, thèse doctorale 2011 Grizli777Résultats et contributions 231 Très peu de modèles comportementaux permettent l‘exécution concurrente d‘objectifs. Et, lorsque c‘est le cas, les modèles n‘offrent pas la souplesse du modèle concurrent de PLAMAGS qui permet d‘exécuter un nombre illimité d‘objectifs en concurrence, et ce, à différents niveaux dans un graphe comportemental, c‘est-à-dire qu‘il est possible que deux objectifs s‘exécutent en parallèle à un certain niveau, mais par exemple qu‘un de ces objectifs soit composé d‘un sous-graphe comportemental où à l‘intérieur de ce dernier plusieurs sous-objectifs s‘exécutent aussi en concurrence. Gestion automatisée de la concurrence à l’aide de ressources et de priorités Le modèle d‘exécution concurrente d‘objectifs à plusieurs niveaux de PLAMAGS est un concept puissant, mais qui se doit d‘être appuyé par des mécanismes automatisés pour la gestion de l‘exécution cohérente de ces derniers. Ces mécanismes permettent de faciliter la tâche du concepteur et s‘assurer que l‘exécution concurrente de plusieurs objectifs ne les place pas en contradiction les uns avec les autres. Dans PLAMAGS ceci est fait à l‘aide de ressources exclusives, de priorités et du moteur d‘exécution des comportements qui s‘assure que l‘exécution d‘un objectif n‘est pas dupliquée (déclenché deux fois en parallèle). Autres capacités des graphes comportementaux de PLAMAGS Les comportements des agents dans PLAMAGS possèdent plusieurs autres caractéristiques qui font d‘eux un outil puissant, polyvalent, extensible et simple d‘utilisation pour l‘implantation d‘agents cognitifs pour les SGBA, entre autres : Le comportement d‘un agent est constitué d‘un ensemble de graphes comportementaux qui peuvent eux aussi être exécutés en concurrence ; Des conditions sur chacun des graphes sont évaluées à chaque itération pour déterminer si le graphe en question doit être déclenché à cette itération ; Chaque graphe comportemental et chaque objectif peut être ajouté/retiré/modifié dynamiquement pendant l‘exécution de la simulation. Les priorités et ressources nécessaires de chacun peuvent aussi être modifiées de façon dynamique durant la simulation ; Les graphes comportementaux sont des structures « avec mémoire », c‘est-à-dire que l‘engin d‘exécution des comportements garde en mémoire l‘état de chacun des objectifs, Tony Garneau, thèse doctorale 2011 Grizli777Résultats et contributions 232 sous-objectifs de chaque graphe comportemental pour chaque agent de façon automatisée. 7.1.4 Modèle d’interactions clairement défini et intégré au langage Dans le but de bien supporter et intégrer l‘aspect géospatial dans les simulations, PLAMAGS définit de façon explicite le modèle permettant les interactions spatialisées entre agents et avec l‘EVG. Pour ce faire, les différents mécanismes d‘interactions sont directement intégrés dans le langage et accessibles à l‘aide de 3 mots-clés (percepts, references et perform). Les interactions y sont séparées par catégories où chacune regroupe un ensemble de fonctionnalités/capacités sémantiquement reliées. La Figure 33 résume les mécanismes d‘interactions spatialisés définis dans le langage. Figure 33 : Mécanismes d'interactions définis dans le langage. Tony Garneau, thèse doctorale 2011 Grizli777Résultats et contributions 233 L‘utilisateur peut récupérer à tout moment les perceptions d‘un agent qui obtient alors une connaissance partielle de l‘environnement dans lequel il évolue, l‘agent peut donc utiliser ces informations dans son processus de décision. Les perceptions sont séparées en cinq catégories pour simplifier l‘implantation des développeurs et à des fins d‘efficacité du traitement des informations. Le langage permet aussi à un agent de connaître à tout moment sa situation spatiale sur le terrain. À l‘aide de ces informations, l‘agent peut donc se mettre en relation avec l‘EVG et les autres agents. Les perceptions et la situation spatiale permettent à un agent de connaître les agents qui l‘entourent ainsi que l‘environnement dans lequel il évolue. Les actions spatialisées permettent quant à elles à l‘agent d‘être proactif dans la simulation et ainsi d‘agir et d‘influer sur l‘EVG ou sur d‘autres agents. Automatisation des mécanismes d’interaction et de la cohérence spatiale/physique/visuelle Les trois mécanismes d‘interactions présentés précédemment sont intégrés et gérés de façon complètement transparente dans PLAMAGS et l‘utilisateur n‘a pas à se préoccuper par exemple, du résultat de l‘utilisation d‘actions spatiales (par exemple, est-ce possible de se déplacer à une position donnée), de la mise à jour de la simulation, des conséquences d‘une collision (déplacement des composants impliqués dans la collision), etc. L‘engin d‘exécution de la simulation, ainsi que l |
| File Format | PDF HTM / HTML |
| Alternate Webpage(s) | https://corpus.ulaval.ca/jspui/bitstream/20.500.11794/22364/1/27803.pdf |
| Language | English |
| Access Restriction | Open |
| Content Type | Text |
| Resource Type | Article |