• Aucun résultat trouvé

4.1. Les méthodologies de développement des SMA

Pour qu’on puisse maître en place un bon système multi-agents, différentes méthodologies de développement des systèmes multi-agents ont été proposé, on peut les classer en deux catégories : la première regroupe les méthodologies s’inspirant des méthodologies de développement orienté objet telle que : la méthodologie AAII, GAIA, et AUML, la deuxième regroupe les méthodologies s’inspirant des systèmes à base de connaissances telle que : la méthodologie MAS-CommonKADS.

4.1.1. La méthodologie AAII

La méthodologie AAII (Australian Artificial Intelligence Institute) a été développée par l’institut australien de l’intelligence artificielle, elle est basée sur l’architecture BDI (beliefs, desires, intentions) et sur un système de raisonnement procédural. Dans cette méthodologie, le SMA a deux modèles : un modèle interne représente l’implémentation des agents et un modèle externe définit les agents et les relations entre agents, les classes d’agents et les instances

associées, les rapports d’héritage entre classe d’agents et les instanciations de ces classes lors de l’exécution.

La méthodologie AAII commence par une étape qui identifier les rôles de l’application et développer une hiérarchie des classes d’agents, puit identifier les responsabilités à chaque rôle, les services demandés et fournis par chaque rôle et déterminer les objectifs associés à chaque service, puit pour chaque rôle, déterminer les plans associés suivant les conditions d’exécution et enfin, déterminer la structure des croyances du système. [1]

4.1.2. La méthodologie GAIA

La méthodologie GAIA était développée par Wooldredge (2001) pour permettre au concepteur des systèmes multi-agents de passer d’un cahier des charges aux détails de l’implémentation du système, c'est-à-dire elle permet de passer des concepts abstraits (les rôles, les permissions, les responsabilités, les protocoles) aux concepts concrets (les types d’agents, les services et les connaissances) [MBA 03].

Cette méthodologie est basée sur le concept de rôle qui est défini par quatre attributs (responsabilités, permissions, activités et protocoles). Les responsabilités indiquent la responsabilité de l’entité. Afin de remplir les responsabilités, le rôle dispose d’un ensemble de permissions qui définit les ressources accessibles au rôle. Les activités d’un rôle sont les traitements que ce dernier peut effectuer sans communiquer avec d’autres agents.

4.1.4. La méthodologie Cassiopea

Contrairement aux méthodologies AAII et GAIA, Cassiopea a une vision par le bas. Donc on commence par spécifier les comportements nécessaires pour réaliser les tâches. Cette méthodologie comporte trois étapes :

 Identification des comportements élémentaires de l’ensemble du système ;

 Identification des relations entre les comportements élémentaires ;

 Identifications des comportements organisationnels de l’ensemble du système.

4.1.4. La méthodologie AUML

UML est un langage unifiant les différents paradigmes d’analyse et conception orienté objet des systèmes. UML est un langage non une méthodologie, mais il y a une méthodologie associée à UML qui s’appelle « Rational Unified Process ». Plusieurs chercheurs ont vu en UML un point de départ pour développer des outils et méthodes pour les systèmes multi- agents. Pour cela, Odell et d’autres chercheurs ont proposé des extensions à UML afin de

CommonKDS qui rajoute des techniques pour modéliser les agents et les interactions entre agents. La méthodologie définie les modèles décrits ci-dessous pour l’analyse et la conception d’un système pour chaque modèle, la méthodologie définit les constituants et les rapports entre ces derniers. La méthodologie MAS-CommonKADS comporte les modèles suivants :

• Le modèle d’agents : décrit les caractéristiques principales des agents ;

• Le modèle de tâches : définit les tâches devant être exécutées par les agents ;

• Le modèle d’expertise : décrit les connaissances nécessaires aux agents pour réaliser les tâches ;

• Le modèle de coordination : définit les itérations entre agents ;

• Le modèle d’organisation : définit l’organisation de la société d’agents ;

• Le modèle de communication : décrit les interactions entre l’agent humain et le logiciel.

• Le modèle de conception : c’est le modèle globale du système qui regroupe tous les modèles précédents. [1]

4.2. Les plates-formes des systèmes multi-agents

Une plate-forme multi-agents est un outil qui assiste le développeur tout au long du processus de construction d’un SMA (analyse, conception, développement et déploiement). Parmi les plates-formes les plus connues on a : Agent Builder, Jade, Madkit et Zeus.

4.2.1. Agent Builder

Agent Builder est une suite d’outils permettant de construire des agents intelligents. Elle a été développée en Java par Rectular System. La création du comportement des agents se fait à base du modèle BDI et au langage AGENT-O. Le langage de communication utilisé KQML (Knowledge Query Manipuling Language). Agent Builder est composé d’une interface graphique et d’un langage orienté agent permettant de définir les croyances, les engagements et les actions [RIC 01].

4.2.2. Madkit

Madkit (Multi Agent Development Kit) est une plate-forme multi-agents libre développée en 1996 par Olivier Getknechi et Michel Ferber au laboratoire d’informatique, de robotique et de microélectronique de Montpellier (LIMM) de l’université de Montpellier II dans le langage Java selon le modèle d’organisation Alaadin (Agent, Groupe, Rôle).

Elle est développée en elle est doté d’environnement de développement graphique qui permet facilement la construction des applications. Dans cette plate-forme, chaque agent a un rôle et peut appartenir à un groupe. [1]

4.2.4. Jade

Jade (Java Agent DEvelopment Framework) est une plate-forme multi-agents développé par le laboratoire TILAB dans le langage Java pour le développement des applications multi-agents conforme à la norme FIPA. Elle fournit des classes pour la définition du comportement des agents. Dans la plate-forme Jade, un agent est un processus autonome et indépendant communicant entre eux par envoi du message structurée en FIPA-ACL. Jade possède trois modules principaux: [FOU 02]

• DF « Director Facilitor » fournit un service de « pages jaunes » à la plate-forme ;

• ACC « Agent communication Channel » gère la communication entre les agents ;

• AMS « Agent Management System » supervise l’enregistrement des agents, leur authentification, leur accès et l’utilisation du système.

4.2.4. Zeus

Zeus est une plate-forme multi-agents conçue et réalisée par British Telecom. Zeus est écrit dans le langage Java conformément au norme de la FIPA(Fondation International of Processing Agent). Elle regroupe principalement les composantes suivantes :

• Une boîte aux lettres et un gestionnaire de messages qui analyse les messages de la boîte aux lettres et les transmet aux composantes appropriées ;

• Un moteur de coordination ;

• Un planificateur qui planifie les tâches de l’agent en fonction des décisions du moteur de coordination, des ressources disponibles et des spécifications des tâches ;

• Plusieurs bases de données représentant les plans connus par l’agent, les ressources et l’ontologie utilisée ;

• Un contrôleur d’exécution qui gère l’horloge locale de l’agent et les tâches actives. [1].

Documents relatifs