Chapitre i : La plate forme multi agents JADE
·:* Structure des messages FIPA
ACL:
1. Structure des messages de communication simple
(non macro-action) : Le message minimum type du FIPA ACL contient
tout d'abord [Oli04]:
ü le type du message envoyé = syntaxe de ce
message.
ü l'expéditeur du message.
ü le destinataire du message.
ü le contenu du message
Cependant, ces messages minimums ne suffisent pas toujours
pour communiquer [Oli04]: on peut avoir besoin, pour la
compréhension du message et pour la rapidité de celle-ci ainsi
que la rapidité de traitement du message, d'indiquer d'autres
informations telles que:
ü le langage utilisé dans le contenu du message
("language ...").
ü le protocole utilisé.
ü l'ontologie auquel le message se rattache ("ontology
...").
ü la référence d'un message
antérieur auquel le message actuel se rattache ("inreply-to ..."), ou la
référence d'un message ultérieur attendu en retour
("reply-with...").
ü la référence de la conversation.
Exemple : L'agent A veut informer l'agent B du temps
qu'il fera demain, selon ses prévisions[Oli04]:
(inform
: sender (agent-identifier: name_A)
:receiver (set (agent-identifier : name_B))
:content "weather (tomorrow, raining)"
:language Prolog)
2. Structure des messages de communication de
macro-action: La structure des messages de communication
de macro-action est différente vu qu'elle utilise la structure de
l'action de communication simple "inform". Cependant, le contenu du message est
différent [Oli04]: il donne le nom de l'agent pour
lequel il attend une action, ainsi qu'un autre message où est contenue
la demande.
Generation des diagrammes AlliviL d partir de
programmes JADE
Chapitre i : La plate forme multi agents JADE
Exemple [Oli04]:
(request
:sender (agent-identifier : name A)
:receiver (set (agent-identifier : name B))
:content
"( (action (agent-identifier :name B) (inform-if: sender
(agent-identifier :name B) :receiver (set (agent-identifier :name
A))
:content \"in( lannion, normandy)\"
:language Prolog)) )"
:language fipa-sl)
3. Les protocoles d'interaction dans la norme FIPA
Un protocole d'interaction est définit comme un
ensemble de règles qui guident l'interaction entre plusieurs agents.
Donc l'utilisation de protocole permet d'arriver plus vite à la solution
car les agents connaissent quels sont les messages qu'ils peuvent recevoir pour
un état donné de l'interaction, quels sont les messages qu'ils
peuvent envoyer et quelles sont les règles qui guident le choix
lorsqu'il y a indéterminisme entre plusieurs messages possibles. Les
agents convergent plus vite vers la solution.
Pour un état donné du protocole d'interaction :
il existe un nombre fini de messages admis en émission ou
réception. Si un agent accepte d'utiliser un protocole, il accepte de se
conformer à ce protocole et respecter les règles (syntaxique,
sémantique). De plus, il approuve la sémantique du protocole.
Parmi les notions fondamentales qui caractérisent un
protocole d'interaction [Tar06]:
ü un protocole d'interaction est un pattern d'interaction.
Donc il est nécessaire de le représenter d'une manière
générique, indépendamment du contexte d'application.
ü chaque protocole d'interaction a un but.
ü un protocole d'interaction fait intervenir deux ou
plusieurs agents. Chaque agent joue un rôle qui permet de l'identifier au
cours de l'interaction.
|