Tutorial JADE-Calcul Parallèle

Transcription

Tutorial JADE-Calcul Parallèle
P. Chauvet – IMA
JADE & Calcul Parallèle
Tutorial JADE & Calcul Parallèle
Table des matières
Introduction............................................................................................................................................. 2
Installation et lancement de JADE........................................................................................................... 2
Pour l’utilisateur .................................................................................................................................. 2
Pour le développeur ............................................................................................................................ 3
Utilisation basique de JADE ..................................................................................................................... 6
Création de containers ........................................................................................................................ 6
Ajout d’Agents ..................................................................................................................................... 7
Utilisation des exemples ..................................................................................................................... 8
1
P. Chauvet – IMA
JADE & Calcul Parallèle
Introduction
Présenter JADE…
Installation et lancement de JADE
JADE est une application Java : on suppose donc que JAVA est installée sur les machines sur
lesquelles JADE et ses agents s’exécutent.
Pour l’utilisateur
1. Récupérer le fichier zip contenant les librairies et les exemples sur le site officiel de JADE
(http://jade.tilab.com/) ou demander la version 3.6.1 à P. Chauvet. Pour la version 3.6.1, le
fichier se nomme « JADE-bin-3.6.1.zip ».
2. Décompresser ce fichier sur le disque de votre choix.
3. Ajouter à la variable d’environnement CLASSPATH le chemin des fichiers « http.jar »,
« iiop.jar », « jade.jar », « jadeTools.jar » (dans le sous-répertoire lib\) et « commons-codec1.3.jar » (dans le sous-répertoire lib\commons-codec\).
Exemple : si le fichier zip a été décompressé dans U:\jade, la variable CLASSPATH est égale à
« U:\jade\lib\http.jar;U:\jade\lib\iiop.jar;U:\jade\lib\jade.jar;U:\jade\lib\jadeTools.jar;U:\jad
e\lib\commons-codec\commons-codec-1.3.jar ».Voir annexe 1 pour créer/modifier cette
variable sous Windows XP.
4. JADE peut maintenant être lancée en tapant en ligne de commande cette instruction :
java jade.Boot -gui -local-port 1100
2
P. Chauvet – IMA
JADE & Calcul Parallèle
Voir annexe 2 pour exécuter cette commande sous Windows XP. La fenêtre « JADE Remote
Agent Management GUI » doit alors apparaître :
Figure 1 : interface fenêtrée de Jade lorsqu’elle vient d’être lancée.
Pour le développeur
Nous utilisons Eclipse comme outil de développement des agents nécessaires à nos applications de
calcul. La version 3.4.2 (« Ganymede ») peut être téléchargée à partir du site officiel :
http://www.eclipse.org/downloads/packages/
L’installation d’Eclipse se fait simplement en décompressant le fichier zip téléchargé sur le disque de
votre choix (voir l’excellent tutorial de Jean-Michel Doudoux pour l’installation et la prise en main
d’Eclipse sur le site : http://jmdoudoux.developpez.com/cours/developpons/eclipse/ ).
Une fois JADE installée (voir le paragraphe précédent), voici comment configurer un projet de
développement d’agents JADE sous Eclipse étape par étape.
-
Dans Eclipse, créer votre projet JAVA. Choisir un nom de projet dans la boîte de dialogue
« New Java Project » puis penser à cliquer sur « Next » pour ajouter les librairies Jade (c’est-
3
P. Chauvet – IMA
JADE & Calcul Parallèle
à-dire http.jar, iiop.jar, jade.jar, jadeTools.jar, commons-codec-1.3.jar) au projet :
Figure 2 : exemple de création d’un projet nommé JadeEssai01. 1) nommer le projet ; 2) cliquer sur Next ; 3)
sélectionner l’onglet Libraries ; 4) cliquer sur le bouton Add External JARs puis ajouter les fichiers jar Jade.
-
Pour développer et tester des agents Jade, il est utile de configurer la fonction « Run as » du
projet qui devra lancer Jade avec le bon paramétrage :
1) ouvrir le menu contextuel du projet (clic droit sur le projet), puis sélectionner « Run as »
« Run Configurations …» ;
2) dans la fenêtre qui apparaît (figure 3), double-cliquer sur « Java Application » (qui a pour
effet de créer une nouvelle configuration);
4
P. Chauvet – IMA
JADE & Calcul Parallèle
3) entrer dans la boîte d’édition « Main class » (onglet « Main ») le nom de la classe
principale « jade.Boot »
4) sélectionner l’onglet « Arguments », puis entrer dans la boîte d’édition « Program
arguments » : « -gui –local-port 1100 » ;
5
P. Chauvet – IMA
JADE & Calcul Parallèle
5) cliquer sur « Apply » puis sur « Close » ;
6) tester la configuration de lancement en cliquant sur le bouton « Run » de la barre d’outil ;
si la configuration est correcte, la fenêtre « JADE Remote Agent Management GUI » doit
apparaître.
Utilisation basique de JADE
Création de containers
Tout agent ne peut être créé que dans un container. Il existe un container par défaut, nommé
« Main-Container », situé sur la machine hôte (celle sur laquelle Jade a été lancée). Pour pouvoir
créer un autre container sur une machine quelconque il faut lancer sur cette machine une nouvelle
fenêtre de commande puis entrer :
Java jade.Boot –container –host nom_machine –port 1100
où nom_machine est l’identifiant de la machine hôte (machine sur laquelle a été lancée Jade). Ce
nom pouvant être récupéré par la commande (sous Windows XP):
localhost
6
P. Chauvet – IMA
JADE & Calcul Parallèle
il s’en suit que la commande :
Java jade.Boot –container –host localhost –port 1100
fonctionne seulement sur la machine hôte ; elle permet d’ajouter des containers sur cette machine.
Exemple 1: Jade est lancée sur la machine LANZAROTE. On veut ajouter un conteneur sur cette
machine.En exécutant :
Java jade.Boot –container –host LANZAROTE –port 1100
ou
Java jade.Boot –container –host localhost –port 1100
le résultat est le suivant :
Exemple 2 : Jade est lancée sur la machine LANZAROTE. On veut ajouter un conteneur sur une autre
machine (du même réseau) identifiée sous le nom CREIZIC. Il faut d’abord aller sur la machine CREIZIC,
puis exécuter :
Java jade.Boot –container –host LANZAROTE –port 1100
le résultat est le suivant :
Ajout d’Agents
L’interface utilisateur de Jade permet d’ajouter les agents « reconnus » dans les containers de
manière très simple :
7
P. Chauvet – IMA
JADE & Calcul Parallèle
-
Sélectionner un container. Exemple : sélection de « Container-1 ».
-
Cliquer sur le bouton « Start New Agent » de la barre d’outils (1ier bouton à gauche).
Dans la fenêtre « Insert Start Parameters » choisir un nom pour le nouvel agent (boîte
d’édition « Agent Name »), choisir la classe de l’agent (cliquer sur le bouton « … »sur la ligne
« Class Name » pour faire apparaître la liste des agents reconnus), puis cliquer « OK ».
-
Développer si nécessaire « Container-1 ». L’agent qui vient d’être créé est visible dans son
container.
Utilisation des exemples
Il existe tout un ensemble d’exemples d’agents JADE avec le code source. Ceux-ci peuvent être
téléchargés sur le site de JADE ou demandés à P. Chauvet pour la version 3.6.1. Ils se présentent sous
la forme d’un fichier zip (JADE-examples-3.6.1.zip pour la version 3.6.1) à décompresser sur le disque
de votre choix.
1. Lancer Eclipse et configurer un projet Java-JADE comme il a été montré en ??.
2. Faire un Clic droit sur le projet, choisir « Import… » puis dans la fenêtre qui vient d’apparaître
sélectionner « General » « File System », puis cliquer sur « Next ».
8
P. Chauvet – IMA
JADE & Calcul Parallèle
3. Dans « From Directory » choisir le sous-répertoire src du fichier décompressé, cocher le
répertoire sous-répertoire examples puis cliquer sur « Finish ».
4. Les packages et fichiers java sont maintenant dans le projet. Supprimer si nécessaire les
packages avec des erreurs (ils correspondent à des fichiers qui utilisent la librairie JESS).
Pour vérifier et faire fonctionner les exemples, il faut lancer JADE avec le bouton « Run » de la
barre d’outils d’Eclipse, puis ajouter un agent au Main-Container (ou d’autres containers s’ils
existent). On voit que la liste des agents disponibles s’est enrichie de tous les exemples :
9
P. Chauvet – IMA
JADE & Calcul Parallèle
Exemple : un agent appelé HelloAgent de type examples.hello.HelloWorldAgent est créé dans
Main-Container ;
cet agent affiche « Hello World ! » dans la console d’Eclipse, et apparaît très furtivement dans le
Main-Container (il est créé puis détruit pratiquement aussitôt, sa tâche terminée) :
10
P. Chauvet – IMA
JADE & Calcul Parallèle
11