IV.5 Création et manipulation des expression du
contenu
Après avoir défini une ontologie (et les classes
associées aux types de prédicat, d'action d'agent et de concept
qu'elle inclut), il faudra choisir un langage approprié et enregistrer
tout cela dans le gestionnaire de contenu de l'agent. La création et la
manipulation des expressions de contenu comme des objets Java est directe.
Le code suivant montre comment l'agent acheteur demande à
l'agent vendeur s'il possède un livre dont le titre est: «Java
».
// prépare le message Query-IF
A CLMessage msg = new A CLMessage (A CLMessage. QUERY_IF);
msg. addReceiver(Vendeur)
msg.setLanguage(codec.getName());
msg.setOntology(ontology.getName());
Livre livre = new Livre();
livre.setTitre(«Java»);
Auteur aut = new Auteur ();
aut.setNom(«Claude»);
Livre.setMaison(«Dunod»); Owns owns
= new Owns(); owns.setOwner(Vendeur);
owns.setItem(livre);
try {
getContentManager().fillContent(msg, owns);
send(msg);
}
catch (CodecException ce) {
ce.printStackTrace();
}
catch (OntologyException oe) {
oe.printStackTrace();
}
70
V. Scénario d'exécution
Ce scénario d'exécution illustre un exemple
d'utilisation de notre application, nous avons jugé utile de donner un
exemple complet d'un achat de livres.
Le processus d'achat s'effectue comme suit:
A partir de cette fenêtre nous pouvons:
72
74
FIG 20 : Fin de l'achat
Dans notre scénario d'exécution, l'ontologie
n'apparaît pas de façon directe pour l'utilisateur, mais son
rôle est exprimé essentiellement dans les échanges des
messages entre les agents. Quand un agent envoie un message vers un autre
agent, le message envoyé est de format String, ce dernier porte
une information, si l'agent récepteur reçoit ce message, alors en
ce moment il valide l'information en se basant sur l'ontologie et effectue la
traduction des objets Java selon des règles syntaxiques du langage de
contenu.
76
VI. CONCLUSION
Dans cette partie, nous avons réalisé une
application, ce qui nous a permis de mettre en pratique les interactions entre
agents au moyen des actes de communication Inter-agents. Ces derniers utilisent
une ontologie que nous avons intégrée, et cela pour que les
agents puissent accéder à la sémantique des messages
qu'ils s'échangent. Pour modéliser ces actes de communication et
les comportements des agents, nous avons utilisé le formalisme CATN, car
il permet une représentation graphique et explicite des actions et des
états des différents agents à tout moment. Concernant la
plateforme, on a choisi JADE qui est une plateforme facilitant
la mise en place des systèmes multi-agents grâce à une
interface personnalisée qui répond aux spécifications de
la Fondation pour les Agents Intelligent Physique (Foundation for Intelligent
Physical Agents -FIPA-) et grâce à un ensemble d'outils qui
supportent la résolution des bugs.
|