MASL, langage de contrôle multi-agents robotiques
Résumé
L'approche classique des langages pour le contrôle de Systèmes Multi-Agents (SMA), a fortiori robotiques et autonomes, consiste d'abord en un point de vue microscopique : chaque agent dispose de son propre programme de contrôle contenant des primitives de communication / synchronisation permettant la coopération / collaboration entre agents. L'émergence d'un comportement global, le point de vue macroscopique du calcul, ne peut qu'être observé a posteriori. Dans ce contexte, MASL (Multi-Agent System Language) propose une approche unifiée et macroscopique à l'expression de calculs hétérogènes et distribués sur des agents conçus en suivant le modèle délibératif, réactif ou hybride. C'est un langage de haut niveau indépendant de l'exécutif où chaque agent, vu comme une entité concurrente, détermine localement sa participation à des blocs d'exécution collectifs (e-blocs ou bloc entry). Chaque e-bloc est un programme collectif anonyme pouvant s'exécuter sur un réseau d'agents selon des critères locaux. Le mode d'orchestration (scalaire, synchrone, asynchrone) est déterminé statiquement par un attribut du bloc, les communications supportent le modèle à mémoire partagée, le modèle à envoi de messages et le modèle d'évènements. L'hétérogénéité des agents est assurée par héritage et polymorphisme alors que l'autonomie est proposée par un mécanisme (appelé perméabilité) de filtrage où chaque agent peut masquer/ouvrir son interface dynamiquement et selon la position de l'émetteur dans la hiérarchie d'e-blocs. Dans un contexte d'allocation dynamique des agents, de reprise après échec ou de remplacement d'un agent robotique dans une flotte de robots (cas d'une panne ou perte de fonctionnalité compromettant la mission), le e-bloc propose une perspective de point d'entrée d'un traitement collectif. Dans le cas d'ebloc synchrones, le paradigme sous-jacent est issu du modèle data-parallèle, permettant ici des traitements itératifs par vagues successives d'agents. Au final, MASL propose des avancées dans le domaine des SMA (appartenance dynamique à des groupes, précision du rythme des actions à entreprendre pour permettre une coopération désirée) et au niveau de la gestion des erreurs.
Origine : Fichiers produits par l'(les) auteur(s)