Exercice
Auteur Muthanna Alshoufi
Et maintenant vous allez apprendre comment créer un système multi agents simple à l'aide des outils de Zeus.
Vous pouvez télécharger Zeus à partir de
cette adresse : télécharger
le toolkit Zeus
«Fruit Market» est un très bon exemple sur les
agents de vente-achat développé en utilisant Zeus, cet
exemple offre une simulation directe de comment plusieurs agents
peuvent actionner de manière autonome et négocier entre eux afin d'atteindre leurs objectifs.
Vous avez besoin d'ouvrir une console de commandes pour cet
exercice. Pour faire cela tapez cmd dans la fenêtre
d'exécution des programmes pour démarrer une console de comandes DOS-like
- Dans la console de commandes, allez au répertoire
où vous avez installé votre logiciel, normalement
C:\zeus\examples\fruitmarket, tapez run1 qui va
démarrer le (ANS Agent Name Server), pas d'erreurs
normalement et l'interpréteur de JAVA devrait être en
exécution dans le background
- Entrez la commande run2, cela va lancer les agents
OrchardBot, SupplyBot et ShopBot, par conséquent trois
nouveaux processus Java devraient être en exécution
dans le background, une fenêtre d'affichage d'agent et une
fenêtre Trading GUI apparaîtrons pour chaque
agent.
- Entrez run3, cela va lancer les agents (Visualiser et
Facilitator
- Testez les fenêtres exécutées, il devrait y
en avoir trois nommées : SupplyBot Trade Window,
OrchardBot Trade Window, ShopBot Trade Window avec leurs Agents
Viewers et Zeus Visualisers
- Choisissez OrchardBot Trade Window. Une fenêtre
colorée avec trios tabs différents va
apparaître comme le montre le figure
ci-dessous
L'idée est d'avoir une présentation d'un verger
essayant de vendre ses produits. On considère que le produit
est prêt et qu'il y a 100 boites de pommes, 80 boites d'oranges
et 60 boites de poires, et pas de cash dans la main.
Si vous appuyez sur le tab Sell Fruit, vous pouvez choisir quel produit
vous voulez vendre. Cliquez sur (Choose button) et sélectionnez
(apple) sous Entity, et puis cliquez sur Trade. L'agent de
verger est maintenant en état d'attente d'un acheteur. Il estime avoir une marge de bénéfice d'au moins 10%.
- Selectionnez la fenêtre SupplyBot Trade. SupplyBot est un
autre participant représentant plusieurs producteurs de
fruits. Il a aussi ses propres inventaires. Vous pouvez commander au
SupplyBot d'acheter quelques fruits de l'OrchardBot. Pour faire cela,
cliquez sur le tab Buy Fruit et puis sur Choose
button et selectionnez apple sous
Entity. Cliquez sur Trade
Après quelques instants et si les préférences
entrées sont cceptées,alors les agents vont commencer
à faire des enchères avec les prix souhaités.
- Le dernier
participant est ShopBot, c'est un
représentant d'une société de supermarchés .Des activités similaires peuvent
être faites avec les deux autres agents .Vous pouvez vous expérimenter en entrant des
paramètres différents et voir les résultats sur le processus de négociation.
Cet exercice va vous familiariser avec Zeus Agent Generator. Il montre les choses qui se rapportent à l'environnent multi-agents
- Lancez ZEUS Agent Generator.
- Une fois démarré, lancez le projet Fruit Market en utilisant soit le bar des outils soit en clicquant sur l'icône Load sous Project Options. Le fichier de projet est localisé sous
c:/zeus/examples/fruitmarket, et il est nommé fruitdemo.def
- L'ontology est extrêmement utile
dans l'environnement multi-agent. Donc, sous Ontology Options, cliquez sur Edit et amusez-vous en jouant avec les items excitants dans l'ontology.
- Modifiez le programme de sorte qu'il vende kiwis au lieu de vendre apples
Remarques:
- Modifiez l'ontology sous Ontology Options, renommez le Fact of apples à kiwi. Sauvez tout.
- Ajoutez le nouveau fact (kiwi) dans
l'Initial Agent Resources de tous les trois agents participants. Supprimez
apples car ils ne veulent plus le fact. Sauvez.
- Générez de nouveaux codes basés
sur les attributs modifiées. Allez au Project; cliquez sur Generate Codes, et sur le Code Generator window. Cliquez sur Generate. Un certain nombre de fichiers java va être créés automatiquement.
- Modifiez la GUI pour qu'elle dise Kiwi au lieu de dire Apples. Utilisez votre éditeur java favori pour éditer StockPanel.java Note: Renommez chaque mot apple à l'intérieur du point de citation pour qu'il devienne kiwi. Compilez tous les codes sources java dans le répertoire fruitmarket
- Lancez le programme récemment modifié, et observez comment se déroule-il?
C'est génial, vous savez maintenant comment créer un système multi-agents simple avec le TOOLKIT Zeus.