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