III.5 Les Actes de communication
Les actes de communications proposés par JADE sont:
agree, cancel, confirm, cfp, disconfirm, failure, inform, inform_if,
query_if, query_ref, reject_proposal, request, request_when, request_whenever,
subscribe, null, propose, not_understood.
L'acte de communication traduit la nature du message
envoyé entre agents. Les actes se classent dans des catégories,
certaines permettent d'amorcer des protocoles alors que d'autre sont
utilisés pour répondre. Ainsi request, cfp, request_when,
request_whenever, query_if, query_ref, subscirbe sont utilisés
pour amorcer un questionnement ou une demande de proposition et agree,
inform, failure, propose, not_understood, sont des réponses
possibles .Le plus usité est le not_understood,
dès qu'un agent ne comprend pas le message reçu, il
répond par un message not_undertood pour avoir plus de
clarté.
Et voici, le Tab 02 qui explique tous les
performatifs:
59
61
62
IV. Définition et description de l'ontologie
utilisée
Cette section décrit les dispositifs de base du nouveau
support du langage de contenu et d'ontologie de JADE inclus dans le package
jade.content. Ces dispositifs sont dans la majorité des cas
suffisants. Le package jade.content cependant fournit un certain
nombre de dispositifs avancés, tels que la possibilité de
créer les requêtes, qui sont importantes pour des applications
complexes et qui n'étaient pas disponibles dans l'ancien support. Ces
dispositifs sont importants pour faire communiquer des agents et leur permettre
de raisonner au sujet des « objets et des faits » liés
à un domaine donné.
Le processus d'exploitation de ces outils suit les
étapes suivantes:
1) Définir une ontologie comprenant les schémas
pour les types de prédicat, d'action d'agent et de concept qui sont
pertinents au domaine considéré.
2) Développer des classes Java pour tous les types de
prédicat, d'action d'agent et de concept définis dans
l'ontologie.
3) Choisir un langage de contenu approprié parmi ceux
directement soutenus par JADE. Il peut être facilement étendu pour
soutenir de nouveaux langages de contenu définis par l'utilisateur, mais
dans la grande majorité des cas l'utilisateur n'a pas besoin de
définir son propre langage de contenu.
4) Enregistrer l'ontologie définie et le langage de
contenu choisi pour l'agent.
5) Créer et manipuler l'expression de contenu comme des
objets Java qui sont des classes développées dans l'étape
2 pour permettre à JADE de traduire ces objets Java en chaînes de
caractères ou séquences de bits qui seront utilisées par
le champ contenu d'un message ACL.
Nous illustrons les étapes ci-dessus par le
développement de l'ontologie associée à notre SMA. Ce
dernier consiste en un agent vendeur contrôlant une base de
données d'une bibliothèque où un type d'article (livre)
est disponible pour la vente. Chaque article a un numéro de
série, un titre et un auteur. L'agent vendeur possède un certain
nombre d'articles et peut les vendre à un agent acheteur. L'agent
acheteur lui demande s'il possède un livre donné et, si c'est le
cas, il lui demande éventuellement de le lui vendre.
Tous ces actes de communication obéissent au vocabulaire
d'une ontologie dont nous présentons le détail à travers
les sections suivantes :
|