• Aucun résultat trouvé

Grizli777 État de l‘art 99 À notre avis, toutes ces stratégies sont insuffisantes pour le développement de simulations

géoréférencées de phénomènes sociaux.

2.4 Synthèse de l’état de l’art

La section 2.1 a permis d‘introduire les principaux concepts liés aux simulations et aux différentes approches à base d‘agents.

Dans la section 2.2, les différents langages (et les outils/architectures qui y sont rattachés) en lien avec l‘approche à base d‘agents ont été abordés. À ce sujet, il existe une panoplie de langages, architectures et outils ayant des liens avec l‘approche à base d‘agent, la programmation orientée- agent, les systèmes multiagents et les simulations à base d‘agents et il était évidemment impossible de présenter tous les outils existants. Nous avons donc décidé de présenter certains langages et outils par catégories. Bien que le choix des catégories et des outils présentés soit subjectif, nous croyons qu‘ils sont représentatifs des tendances dans le domaine des systèmes à base d‘agents.

Enfin, dans la section 2.3 nous avons présenté certains des principaux outils de simulations à base d‘agents et de simulations géoréférencées à base d‘agents.

Bien que chaque outil, architecture et langage ait ses propres faiblesses, certaines limites pour le développement des SGBA sont récurrentes et sont observées dans la presque totalité des outils. Voici les principales faiblesses et limites des langages et outils existants.

Transition très difficile entre la modélisation et l’implantation

La transition entre la modélisation du système et son implantation est généralement très difficile. Ce qui peut être causé par plusieurs facteurs :

- Aucune méthodologie n‘existe pour supporter le développement avec l‘outil ou le langage ;

- La méthodologie qui est utilisée pour la modélisation permet de décrire un système à un niveau conceptuel qui est beaucoup trop abstrait et éloigné du modèle applicatif ;

Grizli777État de l‘art

100

- L‘outil ou le langage ne supporte pas ou supporte mal les concepts proposés pour effectuer la modélisation.

Ce qui mène souvent à des systèmes qui ne reflètent pas le modèle défini ou pire encore, à l‘abandon du modèle étant donné la trop grande complexité d‘implantation.

Manques au niveau de la définition comportementale

La majorité des langages et outils proposent une panoplie de stratégies pour l‘implantation des comportements des agents qui évolueront dans leurs systèmes. De façon simplifiée, ces stratégies peuvent être regroupées en quatre grandes familles : l‘approche libre, l‘approche réactive, l‘approche BDI et l‘approche à base de buts.

- L‘approche libre consiste à fournir à l‘utilisateur un mécanisme (généralement appelé

scheduler) qui déclenche automatiquement la fonction comportementale de l‘agent lors de

l‘exécution du système. La fonction comportementale représente le comportement de l‘agent et celle-ci doit être implantée par l‘utilisateur qui doit définir le comportement de façon analogue à l‘implantation avec n‘importe quel langage à usage commercial. Ce qui n‘offre aucun avantage pour l‘implantation d‘agents cognitifs.

- L‘approche réactive englobe les architectures comportementales à base de senseurs/effecteurs, d‘automates cellulaires et de machines à états finis. Bien que ces architectures permettent plus facilement le développement de certains comportements qu‘avec l‘approche libre, celles-ci ont plusieurs limites les rendant inutilisables pour l‘implantation de comportements cognitifs :

• Aucun support pour l‘exécution parallèle de plusieurs comportements ou sous- comportements ;

• Augmentation exponentielle du niveau de complexité de spécification du comportement en fonction du nombre d‘états/objectifs/buts et de transitions entre ces derniers ;

• Mécanisme de transition entre les états/objectifs/buts d‘un comportement basé sur le résultat de fonctions élémentaires ;

• Décomposition en sous-comportements généralement difficile, voire même impossible dans la majorité des cas ;

Grizli777État de l‘art

101

• Réutilisation de structures comportementales généralement impossible.

- L‘approche à base de règles et BDI englobe quant à elle les architectures et langages axés sur l‘utilisation de bases de règles et de bases de connaissances où quelques fois ces dernières sont combinées à un engin gérant une liste de buts à atteindre. Ces types de représentations ont été très populaires ces dernières années pour l‘implantation d‘agents intelligents et les systèmes les utilisant sont nombreux. Cependant, bien que ces architectures permettent la représentation d‘états internes évolués ainsi qu‘une certaine capacité à raisonner, elles présentent plusieurs limites rendant leur utilisation inadéquate pour l‘implantation d‘agents cognitifs pour les SGBA :

• L‘utilisation de faits et de règles rend la modélisation des comportements difficile et non intuitive. De plus, l‘utilisation exclusive de règles, faits et bases de connaissances rend la spécification très lourde ;

• Mécanisme lourd au niveau de l‘exécution, même à l‘aide d‘engins optimisés spécialement conçus pour ce type d‘applications ;

• Mécanisme difficile à supporter dans des systèmes de grande envergure « scalability » (où il y a des milliers d‘agents) ;

• La concurrence n‘est pas prise en compte (ou la façon de la gérer est mal définie) dans ces systèmes (pour l‘atteinte de plusieurs buts en parallèle, par exemple). De plus, les mécanismes de priorisation des buts, l‘importance et la préséance des croyances, etc. ne sont pas clairement définis ;

• Ces architectures ne sont particulièrement pas enclines à supporter la décomposition, la modularité et d‘autres concepts importants permettant de développer de façon modulaire, incrémentale et systématique un système ;

• Les architectures BDI sont souvent mal définies au niveau applicatif ; • Très difficile de passer du comportement modélisé à son implémentation.

- L‘approche à base de buts peut être considérée comme une variante de l‘approche BDI supportant les buts dans laquelle la définition et l‘enchaînement des buts sont mieux définis. De plus, la décomposition est généralement possible sous forme de hiérarchie de

Grizli777État de l‘art

102

buts. L‘approche a cependant quelques limites que l‘on retrouvait déjà dans les approches précédentes :

• La concurrence n‘est pas prise en compte (ou la façon de la gérer est mal définie) dans ces systèmes (pour l‘atteinte de plusieurs buts en parallèle, par exemple). De plus, les mécanismes de priorisation des buts sont souvent mal définis ;

• Les mécanismes de transition entre les buts sont trop simplistes et rigides ;

• Le processus de gestion de l‘exécution des buts est « unidimensionnel », c‘est-à- dire qu‘un seul niveau de vérification est effectué pour déterminer si le but doit être exécuté ou non ;

• Aucune démarche n‘est fournie pour la définition des comportements ; • Difficile de passer du comportement modélisé à son implémentation.

Support déficient au niveau de l’interaction spatialisée entre les agents et l’EVG.

Rares sont les outils offrant un réel support pour l‘interaction spatialisée entre les agents et avec l‘EVG. Dans les rares cas où il existe des mécanismes permettant de récupérer les informations spatialisées, la configuration des paramètres nécessaires et la récupération de ces informations sont des tâches très complexes et dépendantes de l‘application.

Plus encore, d‘après nos recherches aucun langage existant ne fournit de support intégré pour la définition, la récupération, la manipulation et la gestion des informations en liens avec l‘aspect spatialisé; un des éléments clés des SGBA qui doit impérativement être supporté par l‘outil et le langage. Sans un support adéquat dans le langage, il devient alors impossible d‘intégrer ces informations (perceptions des autres agents et de l‘EVG, connaissance de l‘environnement spatial, connaissance du terrain, des bâtisses, obstacles, collisions, etc.) dans le processus de décision des agents (leurs comportements).