Master Informatique 1ère année:

Programmation orientée agents (FMIN207)

Resp: Jacques Ferber, Tiberiu Stratulat

TP 5 - Warbot - prise en main

 

proposé par Jacques Ferber - Mars 2010

 

 

Warbot est un logiciel destiné à modéliser des stratégies de coopération et de conflits à partir d'une vision multi-agents.. On pourra lire une description générale de Warbot et un tutoriel pour démarrer sur Warbot.

Première chose à faire, commencer à lire le tutoriel de Warbot. On pourra aussi se référer à la description de Warbot (fichier de présentation).

Pendant ce temps, téléchargez la version stable de MadKit (lequel contient Warbot. Dézippez l'archive dans un directory quelconque (on l'appellera <madkit> par la suite). allez dans le directory <madkit>/bin et lancez MadKit en faisant

./desktop.sh

Si cela ne démarre pas, c'est qu'il y a un problème de droit d'exécution. Dans ce directory, tapez la commande chmod +x *.sh pour donner les droits d'exécution aux fichiers .sh (si vous êtes sur Windows vous double cliquez directement sur madkit.exe. De même si vous êtes sur Mac, vous double cliquez sur madkit.app ou madkit tout court dans le même directory bin).

Commencez à jouer avec le logiciel, en suivant le http://www.madkit.net/warbot/. Regardez notamment les équipes : Red de Dumb (ce sont des agents un peu élémentaires), KKTeam, et BPV_Team..

2. Créez votre équipe

Pour créer votre équipe, vous modifiez directement le fichier de formalisme <madkit>/lib/formalisms/warbot05.fml, en ajoutant votre équipe, c'est à dire trois <nodedesc> (c'est expliqué à la fin du tutoriel). Vous trouverez ici un template de fichier .xml qu'il n'y a plus qu'à modifier et à copier-coller dans le fichier de formalisme.

Si vous sauvegardez le fichier warbot05.fml et que vous cliquez dessus sous MadKit (cf. le tutoriel de Warbot) vous verrez que votre équipe a bien été créée. Mais comme vous n'avez pas encore écrit de code, si vous essayez de créer des agents de votre équipe, vous obtiendrez un message d'erreur.

Il faut ensuite que vous créeiez un projet Eclipse pour créer vos brains...

Créer un projet Java sous Eclipse. Ajouter les jars suivants dans le path: madkitkernel.jar, warbot.jar, madkitutils.jar qui se trouvent dans le directory <madkit>/lib

Lorsque vous avez compilé votre projet avec vos fichiers Java, (utilisez les sources des equipes de la catégorie Dumb, ce sont les plus faciles à comprendre), créez un jar et mettez le dans le directory <madkit>/lib

Vous pouvez aussi utiliser le designer de Madkit (une explication est donnée dans le fichier madkit pas à pas) en créant un projet de type "Warbot". Cela crée un dossier dans le directory <madkit>/plugins avec un template vous permettant de faciliter la création d'un projet sous MadKit. Ensuit, en mettant à jour le projet, il compile les sources, crée un jar et le place au bon endroit...

2. Récupérer de la nourriture

a) Faites un robot explorateur qui envoie un message à la base dès qu'il aperçoit de la nourriture. Mettez de la nourriture et vérifiez votre comportement.

b) Ecrivez un comportement collectif de ramassage de nourriture par les explorateurs. Dès que la base sait où se trouve de la nourriture, elle envoie l'information à tous les explorateurs, qui se dirigent ensuite vers l'endroit où il y a de la nourriture.