Application of model-driven engineering to multi-agent systems : a language to model behaviors of reactive agents

par Paulo Pimenta

Thèse de doctorat en Informatique

Sous la direction de Jean-Pierre Müller.

Soutenue le 05-01-2017

à Montpellier , dans le cadre de I2S - Information, Structures, Systèmes , en partenariat avec Gestion des ressources renouvelables et environnement (laboratoire) .

Le président du jury était Jacques Ferber.

Le jury était composé de Jean-Pierre Müller, Jacques Ferber, David Hill, Jean-Michel Bruel, Mamadou Kaba Traoré, Fabien Michel.

Les rapporteurs étaient David Hill, Jean-Michel Bruel.

  • Titre traduit

    Application de l'ingénierie dirigée par les modèles dans le domaine des systèmes multi-agents : un langage pour décrire les comportements des agents réactifs


  • Résumé

    Des nombreux utilisateurs des systèmes multi-agents (SMA) sont très souvent découragés de modéliser et simuler dans les plates-formes actuelles SMA. Plus précisément, modéliser la dynamique d'un système (en particulier les comportements de l'agent) est très souvent vu comme un défi pour les utilisateurs de SMA. Dans le domaine des systèmes socio-écologiques (SES), cet inconvénient est plus souvent observé une fois que les experts de domaine en SES sont rarement des programmeurs. De plus, la majorité des plateformes SMA n'a pas été conçue en prenant en considérant le fait que les experts de domaines ne sont pas des programmeurs. On constate que la majeure partie des outils MAS ne sont pas dédiés à SES, ou qu'ils ne possèdent pas un formalisme compréhensible pour représenter les comportements de SMA. En outre, comme ces outils sont dépendant des plateformes, un modèle réalisé dans une plateforme SMA ne peut pas être correctement utilisé dans une autre plate-forme en raison de l'incompatibilité entre ces plateformes SMA. Afin de surpasser ces limitations, nous proposons un langage dédié au domaine SES pour décrire les comportements des agents réactifs, quelle que soit la plate-forme utilisée pour la simulation des SMA. Pour ce faire, nous avons appliqué l’approche de l’ingénierie dirigée par les modèles (IDM), une approche qui fournit des outils pour développer des langages dédiés à partir d'un méta-modèle (syntaxe abstraite), des éditeurs textuels avec coloration syntaxique (pour la syntaxe concrète) et des outils des générateurs de code (pour la génération de source code à partir d'un modèle). En conséquence, nous avons mis en œuvre un langage et un éditeur de texte qui permet à des experts du domaine SES de décrire les comportements de trois manières différentes qui sont fermées à leur expression naturelle : sous forme d'équations quand ils sont familiers avec celles-ci, en tant que séquence d'activités proche du langage naturel ou comme un diagramme d'activité pour représenter les décisions et une séquence de comportements en utilisant un formalisme graphique. Pour montrer la généralité, nous avons également développé des générateurs de code ciblant deux plates-formes différentes SMA (Cormas et Netlogo). Nous avons testé les générateurs de code en mettant en œuvre deux modèles SES avec le langage dédié développé. Le code généré obtenu a été généré pour les deux plates-formes SMA Cormas et NetLogo, et simulé avec succès dans un des deux plateformes. Nous avons conclu que l'approche IDM fournit des outils adéquats à développer des langages dédiés et des générateurs de code pour faciliter la modélisation et la simulation SMA par des non-programmeurs. En ce qui concerne le langage développé, bien que l’aspect comportemental de la simulation MAS fasse partie de la complexité de la modélisation en SMA, il y a encore d'autres aspects essentiels du modèle et de la simulation de SMA qui sont encore à être explorés, tels que l'initialisation et les points de vue sur un le monde simulé d’un modèle.


  • Résumé

    Many users of multi-agent systems (MAS) are very commonly discouraged to model and simulate using current MAS platforms. More specifically, modeling the dynamics of a system (in particular the agent's behaviors) is very often a challenge to users of MAS. That issue is more often observed in the domain of socio-ecological systems (SES), because SES domain experts are rarely programmers. Indeed,the majority of MAS platforms were not conceived taking into consideration domain-experts that are non-programmers. Most of the current MAS tools are not dedicated to SES, or they do not possess an easily understandable formalism to represent behaviors of agents. Moreover, because it is platform-dependent, a model realized in a MAS platform cannot be properly used in another platform due to incompatibility between MAS platforms. To overcome these limitations, we propose a domain-specific language (DSL) to describe the behaviors of reactive agents, regardless of the MAS platform used for simulation. To achieve that, we applied model-driven engineering (MDE), an approach that provides tools to develop DSLs from a meta-model (abstract syntax), textual editors with syntax highlighting (for the concrete syntax) and code generation capabilities (for source-code generation of a model). As a result, we implemented a language and a textual editor that allows SES domain experts to describe behaviors in three different ways that are closed to their natural expression: as equations when they are familiar to those, as a sequence of activities close to natural language or as an activity diagram to represent decisions and a sequence of behaviors using a graphic formalism. To show the generality we also developed code generators targeting two different MAS platforms (Cormas and Netlogo). We tested the code generators by implementing two SES models with the developed DSL. The generated code was targeted for both MAS platforms (Cormas and Netlogo), and successfully simulated in one of them.We conclude that the MDE approach provides adequate tools to develop DSL and code generators to facilitate MAS modeling and simulation by non-programmers. Concerning the developed DSL, although the behavioral aspect of MAS simulation is part of the complexity of modeling in MAS, there are still other essential aspects of model and simulation of MAS that are yet to be explored, such as model's initialization and points of view on the model's simulated world


Il est disponible au sein de la bibliothèque de l'établissement de soutenance.

Consulter en bibliothèque

La version de soutenance existe

Où se trouve cette thèse\u00a0?

  • Bibliothèque : Bibliothèque interuniversitaire. Bibliothèque électronique.
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.