Chapitre i : La plate forme multi agents JADE
l'agent qui a fait la meilleure proposition. Ensuite, le
gestionnaire et les contractants échangent les informations
nécessaires durant l'accomplissement des tâches.
Figure 1.2: Etapes du protocole réseau
contractuel [14]
L'avantage de ce protocole est que les rôles des agents
ne sont pas spécifiés d'avance. Donc n'importe quel agent peut
agir comme un gestionnaire ou bien comme un contractant. Cette
flexibilité permet de nouvelles décompositions des tâches:
un contractant pour une tâche spécifique peut agir comme un
gestionnaire en décomposant sa tâche et en annonçant les
sous-tâches à d'autres agents. Cependant, Un problème qui
peut survenir avec le réseau contractuel est qu'une tâche puisse
être attribuée à un contractant moins qualifié pour
la résoudre si un contractant plus qualifié est occupé au
moment de l'annonce des tâches.
Figure 1.3 : le protocole FIPA-Contract-net
[4]
Generation des diagrammes AlliviL d _partir de
_programmes JADE
Cha_pitre 1 : La _plate forme multi agents
JADE
4. L'architecture logicielle de JADE
JADE fournit une couche homogène qui cache
complètement la complexité et la
diversité du réseau des agents et possède une
architecture très précise permettant la construction
dite « normalisée » d'agents (reprend
l'architecture de l'Agent Management
) [Fer05] et
Reference Model proposé par FIPA inclut tous les
composants obligatoires qui
contrôlent un SMA. Ces composants sont l'AMS, le DF
et MTS.
Figure 1.4 : Architecture logicielle de la plate-forme
JADE [Fer05]
1. AMS « Agent Management System »
: dans JADE, il y a une méthode fournie par la
classe Agent permet d'obtenir l'identifiant de l'agent AMS :
getAMS().
2. DF « Directory Facilitator » :
dans JADE, On a un DF par défaut dans le conteneur
principal et pour obtenir l'identifiant de l'agent DF, la classe Agent
fournie la méthode : getDefaultDF()
.
Dans JADE, il faut utiliser le
jade.domain.DFService pour chercher et/ou publier des
services dans un DF [10] . Cependant, l e service DF
propose quatre méthodes afin de pouvoir :
ü Enregistrer un agent dans les pages jaunes
(register). « il est recommandé
de faire le registre dans setup »
[Fer05].
ü Supprimer un agent des pages jaunes
(deregister) [Fer05]. « il est
recommandé de faire le deregister dans
takeDown» [Oli04].
ü Modifier le nom d'un service fourni par un agent
(modify) [Fer05].
|