IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation par agent Java Discussion :

Les communications des agents JADE [Tutoriel]


Sujet :

Programmation par agent Java

  1. #201
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Bonjour,

    Il n y’a pas de contradiction, quand on lance l’agent à partir d’Eclipse, celui-là passe le chemin de la classe à la plateforme jade, mais quand on le lance à partir du GUI de la plateforme, Jade essaye de retrouver tout seul son chemin, et pour cette raison il fallait ajouter le chemin du dossier qui contient les fichiers .class à la variable classpath.
    Quant à ce que tu as trouvé dans le guide d’administration du jade, si tu relis l’exemple de la section 2.3.4, tu trouveras qu’il s’agit d’une manipulation via la ligne de commande. En d’autres termes, la commande de l’exemple demande à l’invite de commande d’ajouter :
    ;c:\jade\lib\jade.jar; c:\jade\lib\Commons-codec\commons-codec-1.3.jar
    Au contenu de la variable classpath. Remarques bien le point qui se trouve juste après le « =%CLASSPATH%; » et qui sert à concaténer le contenu des deux chaines.
    Je suis désolé, mais je crois que je ne pourrai pas continuer à suivre ton cas parce qu’on est en train de tourner sur le même problème depuis des jours, alors qu’il fallait juste appliquer ce que je t’ai expliqué plusieurs fois pour résoudre le problème.

    Bonne chance.

  2. #202
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Points : 7
    Points
    7
    Par défaut convert classe java en classe jade
    BONJOUR Mr.djug

    pouvez vous nous donner quelques recommandations de convertir les classe JAVA en classe ou syntaxe JADE

    merci pour la reponse

  3. #203
    Membre du Club
    Femme Profil pro
    Etudiante
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par Djug Voir le message
    Bonjour,

    Il n y’a pas de contradiction, quand on lance l’agent à partir d’Eclipse, celui-là passe le chemin de la classe à la plateforme jade, mais quand on le lance à partir du GUI de la plateforme, Jade essaye de retrouver tout seul son chemin, et pour cette raison il fallait ajouter le chemin du dossier qui contient les fichiers .class à la variable classpath.
    Quant à ce que tu as trouvé dans le guide d’administration du jade, si tu relis l’exemple de la section 2.3.4, tu trouveras qu’il s’agit d’une manipulation via la ligne de commande. En d’autres termes, la commande de l’exemple demande à l’invite de commande d’ajouter :
    ;c:\jade\lib\jade.jar; c:\jade\lib\Commons-codec\commons-codec-1.3.jar
    Au contenu de la variable classpath. Remarques bien le point qui se trouve juste après le « =%CLASSPATH%; » et qui sert à concaténer le contenu des deux chaines.
    Je suis désolé, mais je crois que je ne pourrai pas continuer à suivre ton cas parce qu’on est en train de tourner sur le même problème depuis des jours, alors qu’il fallait juste appliquer ce que je t’ai expliqué plusieurs fois pour résoudre le problème.

    Bonne chance.
    Merci beaucoup Mr.Djug

    Pas de problème, moi qui est désolée pour le dérangement, j'essaierai de résoudre ce problème et si je trouve la solution, je vais vous informer

  4. #204
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    j'essaierai de résoudre ce problème et si je trouve la solution, je vais vous informer
    La solution ? Je te l’ai déjà donnée, il suffit juste de l’appliquer (Il n’y a pas 36000 manières de créer et lancer un agent jade).

    pouvez vous nous donner quelques recommandations de convertir les classe JAVA en classe ou syntaxe JADE
    ??

  5. #205
    Membre du Club
    Femme Profil pro
    Etudiante
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par Djug Voir le message
    La solution ? Je te l’ai déjà donnée, il suffit juste de l’appliquer (Il n’y a pas 36000 manières de créer et lancer un agent jade).


    ??
    Oui, c'est vrai, vous m'avez donné la solution mais elle ne résout pas mon problème, et je ne sais pas pourquoi

    En général, je vous remercie pour vos efforts et aides

  6. #206
    Futur Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    BONSOIR Mr. Djug

    quelle sont les recommandations pour convertir un programme ou des classes JAVA vers des programmes ou des classes JADE

    merci pour la réponse
    http://www.developpez.net/forums/ima...s/icon_cry.gif

  7. #207
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Citation Envoyé par msx741 Voir le message
    BONSOIR Mr. Djug

    quelle sont les recommandations pour convertir un programme ou des classes JAVA vers des programmes ou des classes JADE

    merci pour la réponse
    http://www.developpez.net/forums/ima...s/icon_cry.gif
    Bonjour,
    Désolé, Je n’ai jamais entendu d’une telle conversion (d’ailleurs, je ne crois pas qu’elle existe).
    Il s’agit d’une approche différente de programmation, il faut concevoir le système d’une autre manière. Il ne s’agit pas d’une simple conversion de classe java « classique » en Agents Jade.

  8. #208
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Janvier 2007
    Messages : 27
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    Je vous remercie pour les tutoriels

    j'ai essayé le programme de communication, et l'AgentB ne se lancer pas

    L'exécution du programme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    ---------------------------------------
    ----------------agent A----------------
    ---------------------------------------
    en attente de l agent B
    ----------------agent B----------------
    ***  Uncaught Exception for agent a2  ***
    java.lang.NumberFormatException: For input string: "( (action ( agent-identifier :name a2@176.64.0.18:1099/JADE  :addresses (sequence http://auchan-PC:7778/acc )) (ACLMessage) ) (MTS-error ( agent-identifier :name AgentA@176.64.0.18:1099/JADE ) (internal-error "Agent not found: getContainerID() failed to find agent AgentA@176.64.0.18:1099/JADE")) )"
            at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
            at java.lang.Integer.parseInt(Integer.java:449)
    ERROR: Agent a2 died without being properly terminated !!!
    State was 2
            at java.lang.Integer.parseInt(Integer.java:499)
            at communication.AgentB$afficher.action(AgentB.java:61)
            at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:344)
            at jade.core.behaviours.CompositeBehaviour.action(CompositeBehaviour.java:109)
            at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:344)
            at jade.core.Agent$ActiveLifeCycle.execute(Agent.java:1500)
            at jade.core.Agent.run(Agent.java:1439)
            at java.lang.Thread.run(Thread.java:662)
    j'utilise Netbeans, au début j'ai lancé AgentA puis Agent B, par la suite j'ai les lancé les deux agents en meme temps comme indiqué dans la première page, et toujours la meme erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
          try {
                AgentController a1 = ac.createNewAgent("a1", "communication.AgentA", null);
                a1.start();          
                AgentController a2 = ac.createNewAgent("a2", "communication.AgentB", null);
                a2.start();
          } catch (StaleProxyException ex) {
                Logger.getLogger(pricipale.class.getName()).log(Level.SEVERE, null, ex);
            }
    j'ai aussi essayé de lancer les agents à partir de la ligne de commandes, j'ai fait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -cp C:\jade\lib\jade.jar;. jade.Boot -gui -agents a1:AgentA a2:AgentB
    et il y avait un autre message d'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    ATTENTION: WARNING: overriding agents specification set with the "-agents" option
    2 fÚvr. 2012 11:20:26 jade.core.Runtime beginContainer
    INFO: ----------------------------------
        This is JADE snapshot - revision 6357 of 2010/07/06 16:27:34
        downloaded in Open Source, under LGPL restrictions,
        at <a href="http://jade.tilab.com/" target="_blank">http://jade.tilab.com/</a>
    ----------------------------------------
    Retrieving CommandDispatcher for platform null
    2 fÚvr. 2012 11:20:26 jade.imtp.leap.LEAPIMTPManager initialize
    INFO: Listening for intra-platform commands on address:
    - jicp://176.64.0.18:1099
     
    2 fÚvr. 2012 11:20:26 jade.core.BaseService init
    INFO: Service jade.core.management.AgentManagement initialized
    2 fÚvr. 2012 11:20:26 jade.core.BaseService init
    INFO: Service jade.core.messaging.Messaging initialized
    2 fÚvr. 2012 11:20:26 jade.core.BaseService init
    INFO: Service jade.core.mobility.AgentMobility initialized
    2 fÚvr. 2012 11:20:26 jade.core.BaseService init
    INFO: Service jade.core.event.Notification initialized
    2 fÚvr. 2012 11:20:26 jade.core.messaging.MessagingService clearCachedSlice
    INFO: Clearing cache
    2 fÚvr. 2012 11:20:27 jade.mtp.http.HTTPServer <init>
    INFO: HTTP-MTP Using XML parser com.sun.org.apache.xerces.internal.jaxp.SAXParse
    rImpl$JAXPSAXParser
    2 fÚvr. 2012 11:20:27 jade.core.messaging.MessagingService boot
    INFO: MTP addresses:
    <a href="http://auchan-PC:7778/acc" target="_blank">http://auchan-PC:7778/acc</a>
    2 fÚvr. 2012 11:20:27 jade.core.AgentContainerImpl joinPlatform
    INFO: --------------------------------------
    Agent container Main-Container@176.64.0.18 is ready.
    --------------------------------------------
    ----------------agent B----------------
    ***  Uncaught Exception for agent a2  ***
    java.lang.NumberFormatException: For input string: "( (action ( agent-identifier
     :name a2@176.64.0.18:1099/JADE  :addresses (sequence <a href="http://auchan-PC:7778/acc" target="_blank">http://auchan-PC:7778/acc</a>
    )) (ACLMessage) ) (MTS-error ( agent-identifier :name AgentA@176.64.0.18:1099/JA
    DE ) (internal-error "Agent not found: getContainerID() failed to find agent Age
    ntA@176.64.0.18:1099/JADE")) )"
            at java.lang.NumberFormatException.forInputString(Unknown Source)
            at java.lang.Integer.parseInt(Unknown Source)
            at java.lang.Integer.parseInt(Unknown Source)
            at AgentB$afficher.action(AgentB.java:61)
            at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:344)
            at jade.core.behaviours.CompositeBehaviour.action(CompositeBehaviour.jav
    a:109)
            at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:344)
            at jade.core.Agent$ActiveLifeCycle.execute(Agent.java:1500)
            at jade.core.Agent.run(Agent.java:1439)
            at java.lang.Thread.run(Unknown Source)
    ERROR: Agent a2 died without being properly terminated !!!
    State was 2
    2 fÚvr. 2012 11:20:27 jade.core.messaging.MessagingService removeLocalAliases
    INFO: Removing all local alias entries for agent a2
    2 fÚvr. 2012 11:20:27 jade.core.messaging.MessagingService removeGlobalAliases
    INFO: Removing all global alias entries for agent a2

  9. #209
    Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Décembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2011
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Bonjour à tous,

    Je voudrai savoir comment lancer 5 agents et chaque agent doit être lancé dans le même Container et enfin ce Container doit avoir les agents lancés.

    Mon agent cherche dans le registre DF les agents offrant un service spécifique et il lance ces agents
    La récupération des agents marche très bien mais le lancement ne marche pas. Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    DFAgentDescription[] resultat = DFService.search(this, template);
    		        AID[] agt = new AID[resultat.length];
    		        for (int i = 0; i < resultat.length; i++) {
    		        agt[i] = resultat[i].getName();
    				System.out.println(this.getLocalName()+" a lancé les agents suivants "+ String.valueOf(agt[i].getLocalName()));
     
    for (int i=0;i<agt.length;i++)
    			{
    				((AgentController) getContainerController().createNewAgent(String.valueOf(agt[i].getLocalName()), String.valueOf(agt[i].getClass()), null)).start();
    			}
    Merci d'avance pour votre aide.

  10. #210
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Bonjour,

    Je n’utilise plus Jade depuis un bon moment.
    Il existe surement un moyen de faire ce que tu veux faire, il faut juste trouver dans la documentation officielle la bonne commande qu’il faut utiliser.
    Mais si j’étais à ta place j’aurais fait ceci :
    Faire l’itération avec une boucle java mais lancer les agents via la ligne de commande.
    Voici comment exécuter une commande externe à partir d’un code java :
    http://java.developpez.com/faq/java/...icationExterne
    Et voici comment lancer un agent via la ligne de commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java jade.Boot  NomDuL'agent:LeNomDuPackage.LeNomDeLaClasse
    Donc il faut juste combiner les deux pour lancer les 5 agents.
    Mais je ne sais pas comment les lancer dans le même container (désolé).

  11. #211
    Nouveau Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    jé essayé l'exemple de communication qui se trouve dans le tutoriel mé ça pas marché il affiche le message suivant:

    22 févr. 2012 10:29:43 jade.core.Runtime beginContainer
    INFO: ----------------------------------
    This is JADE 3.6 - revision 6032 of 2008/05/05 14:07:10
    downloaded in Open Source, under LGPL restrictions,
    at http://jade.tilab.com/
    ----------------------------------------
    22 févr. 2012 10:29:45 jade.core.BaseService init
    INFO: Service jade.core.management.AgentManagement initialized
    22 févr. 2012 10:29:45 jade.core.BaseService init
    INFO: Service jade.core.messaging.Messaging initialized
    22 févr. 2012 10:29:45 jade.core.BaseService init
    INFO: Service jade.core.mobility.AgentMobility initialized
    22 févr. 2012 10:29:45 jade.core.BaseService init
    INFO: Service jade.core.event.Notification initialized
    22 févr. 2012 10:29:45 jade.core.messaging.MessagingService clearCachedSlice
    INFO: Clearing cache
    22 févr. 2012 10:29:45 jade.mtp.http.HTTPServer <init>
    INFO: HTTP-MTP Using XML parser com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser
    22 févr. 2012 10:29:45 jade.core.messaging.MessagingService boot
    INFO: MTP addresses:
    http://192.168.50.42:7778/acc
    22 févr. 2012 10:29:45 jade.core.AgentContainerImpl joinPlatform
    INFO: --------------------------------------
    Agent container Main-Container@hpcompak-HP is ready.
    --------------------------------------------
    ----------------agent B----------------
    *** Uncaught Exception for agent toutou ***
    java.lang.NumberFormatException: For input string: "( (action ( agent-identifier :name toutou@hpcompak-HP:1099/JADE :addresses (sequence http://192.168.50.42:7778/acc )) (ACLMessage) ) (MTS-error ( agent-identifier :name AgentA@hpcompak-HP:1099/JADE ) (internal-error "Agent not found: getContainerID() failed to find agent AgentA@hpcompak-HP:1099/JADE")) )"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at firstAgent.HelloWorldAgent$afficher.action(HelloWorldAgent.java:59)
    at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:340)
    at jade.core.behaviours.CompositeBehaviour.action(CompositeBehaviour.java:109)
    at jade.core.behaviours.Behaviour.actionWrapper(Behaviour.java:340)
    at jade.core.Agent$ActiveLifeCycle.execute(Agent.java:1530)
    at jade.core.Agent.run(Agent.java:1468)
    at java.lang.Thread.run(Unknown Source)
    ERROR: Agent toutou died without being properly terminated !!!
    State was 2

  12. #212
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 16
    Points : 19
    Points
    19
    Par défaut lancement de deux agents jade
    salut
    est ce qu'on peut lançer deux agents jade en parallèle et comment?

    j'ai essayé votre tutoriel (communication) mais ça na marche pas il se bloque à ------------ agentB---------------

    merci cordialement

  13. #213
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Citation Envoyé par amina19990 Voir le message
    salut
    est ce qu'on peut lançer deux agents jade en parallèle et comment?

    j'ai essayé votre tutoriel (communication) mais ça na marche pas il se bloque à ------------ agentB---------------

    merci cordialement

    Bonjour,
    Oui, il est possible de lancer plusieurs agents en parallèle :
    Vous pouvez utiliser le GUI du JADE ou la ligne de commande pour lancer les agents l’un après l’autre. il faut utiliser une nouvelle « fenêtre » pour chaque agent, si vous optez pour la ligne de commande.

  14. #214
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 16
    Points : 19
    Points
    19
    Par défaut migration entre plusieurs plateformes jade
    bonjour djug

    je n'arrive pas à faire migrer les agents entre plateformes
    j'ai creé deux plateformes
    j'ai creé una agent Agent1 dans la plateform1 mais je n'arrive as à le faire migrer vers l'autre platefrome
    voici le code que j'ai essayé


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    import jade.core.*;
    import jade.core.Runtime;
    import jade.core.behaviours.OneShotBehaviour;
    import jade.wrapper.AgentContainer;
    import jade.wrapper.AgentController;
    import jade.wrapper.ContainerController;
    import jade.wrapper.ControllerException;
    import jade.wrapper.PlatformController.Listener;
    import jade.wrapper.PlatformState;
    import jade.wrapper.PlatformEvent;
    import jade.wrapper.StaleProxyException;
    import jade.domain.mobility.MobilityOntology;
    import jade.core.mobility.AgentMobilityService;
    public class essai extends Agent {
     
    	public void setup(){
    		System.out.println("hellow je suis l'agent" +getLocalName());
    		Runtime rt =Runtime.instance();
    		Profile pmain = new ProfileImpl(null,9999,null);
    		AgentContainer mc=rt.createMainContainer(pmain);
    		ProfileImpl pContainer = new ProfileImpl(null,9999,null);
    		 try {
                 AgentController	rma = mc.createNewAgent("RMA", "jade.tools.rma.rma", new Object[0]);
    			  rma.start();
    			  } catch (StaleProxyException e) {
    		      e.printStackTrace();
    		      }
    		  addBehaviour(new OneShotBehaviour(this){
    			  public void action() {
    				  AID remoteAMS = new AID("ams@qlubic:9999/JADE", AID.ISGUID);
    				// Specify the MTP by setting the transport address of the remote
    				// AMS
    				remoteAMS.addAddresses("http://qlubicaddr:7778/acc");
    				// Create the Location object
    				PlatformID destination = new PlatformID(remoteAMS);
    				// Change of the agent state to move
    				myAgent.doMove(destination);
    }});
    		  }
    }

  15. #215
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Vous essayez de faire migrer l’agent d’un container à un autre sur la même plateforme (des containers sur une ou plusieurs machine), ou entre deux plateforme sur deux machines distincts ?

  16. #216
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 16
    Points : 19
    Points
    19
    Par défaut migration entre plusieurs plateformes jade
    bonjour djug
    j'essaye de faire migrer les agents entre deux platforme sur la meme machine
    c'est possibile?

    je veux faire migrer les agents entre deux platformes je ne sais pas est ce que c'est possible entre la meme machine ou non?

  17. #217
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Citation Envoyé par amina19990 Voir le message
    bonjour djug
    j'essaye de faire migrer les agents entre deux platforme sur la meme machine
    c'est possibile?

    je veux faire migrer les agents entre deux platformes je ne sais pas est ce que c'est possible entre la meme machine ou non?
    A ce que je sache, il n’est pas possible de faire migrer un agent entre deux plateformes sur la même machine (mes informations remontent à plus de deux ans, et je travaille plus avec jade depuis), parce que, tout simplement, il n’est pas possible de lancer deux instances de jade (donc deux plateformes) sur la même machine.
    La migration sur jade s’effectue sur plusieurs niveaux :
    • La migration entre deux containers qui appartiennent à la même plateforme et qui se trouvent sur la même machine: dans ce cas-là, il suffit d’utiliser la méthode doMove() afin de déplacer l’agent d’un container à l’autre (il ne s’agit pas vraiment d’une migration, mais juste d’un déplacement).
    • La migration entre deux containers qui qui appartiennent à la même plateforme mais qui se trouvent sur deux machines différentes : dans ce cas-là, après le lancement de la plateforme sur une machine, on doit lancer un autre container sur la machine distante mais qui doit s’enregistrer auprès de la plateforme de la premières machine. la commande de ligne qui permet de lancer un container contient un paramètre qui permet de spécifier l’adresse IP de la machine sur laquelle le container doit s’enregistrer (je ne me souviens pas de la syntaxe de cette commande, mais tu la trouveras sûrement au niveau de la documentation officielle).
    • La migration entre deux containers qui se trouvent sur deux plateformes différentes et sur deux machines différentes : c’est le cas de la migration le moins facile à mettre en œuvre parce qu’il nécessite l’utilisation du module supplémentaire qui s’appelle jipms (JADE Inter-Platform Mobility Service) : http://sourceforge.net/projects/jipms/

  18. #218
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 16
    Points : 19
    Points
    19
    Par défaut lancement de deux plateformes
    bonjour djug

    voici le code qui peux lançer deux plateformes sur la meme machine ,
    mais je n'arrive pas à faire migrer l'agent mobile entre ces deux platefromes.


    le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    import jade.core.*;
    import jade.core.Runtime;
    import jade.core.behaviours.OneShotBehaviour;
    import jade.wrapper.AgentContainer;
    import jade.wrapper.AgentController;
    import jade.wrapper.ContainerController;
    import jade.wrapper.ControllerException;
    import jade.wrapper.PlatformController.Listener;
    import jade.wrapper.PlatformState;
    import jade.wrapper.PlatformEvent;
    import jade.wrapper.StaleProxyException;
    import jade.domain.mobility.MobilityOntology;
    import jade.core.mobility.AgentMobilityService;
    public class amina extends Agent{
    	          public void setup(){	  
    	          System.out.println("hellow je suis l'agent" +getAID().getLocalName());
    			  addBehaviour(new OneShotBehaviour(this){
    			  public void action() {		
    		      Runtime rt =Runtime.instance();
    		      Profile pMain = new ProfileImpl(null, 8888, null);
    			  AgentContainer mc = rt.createMainContainer(pMain);
    			  ProfileImpl pContainer = new ProfileImpl(null, 8888, null);  
    			  try {
                  AgentController	rma = mc.createNewAgent("RMA", "jade.tools.rma.rma", new Object[0]);
    			  rma.start();
    			  } catch (StaleProxyException e) {
    		      e.printStackTrace();
    		      }	
    			  }
                  });
                  }      
                  }
    merciiiii pour vos réponses.

  19. #219
    Expert éminent sénior

    Avatar de Djug
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    2 980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 980
    Points : 17 970
    Points
    17 970
    Par défaut
    Qu’est ce qu’il vous fait croire qu’il s’agit bien d’une deuxième plateforme ? Il me semble que quand vous exécuter ce code, une deuxième fenêtre (invite de commandes) s’affiche, il s’agit de la fenêtre qui « représente » le Container que vous venez de créer, et non pas d’une nouvelle instance de Jade.

    Est-ce que vous arrivez à lancer une deuxième instance de jade avec la commande (java jade.Boot –gui) après le lancement d’une première instance avec la même commande ? Jade vérifie avant chaque lancement qu’aucune instance de la plateforme n’a été créée/lancée avant d’en lancer une autre.

    Revenons maintenant à la migration des agents. Comme vous voulez faire déplacer l’agent sur la même machine, il suffit alors d’utiliser la méthode doMove(), qui accepte, si je me souviens bien, un seul argument (le nom du Container cible).

  20. #220
    Membre à l'essai
    Inscrit en
    Décembre 2011
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 16
    Points : 19
    Points
    19
    Par défaut
    bonjour djug

    donc est ce que vous pouvez m'indiquer la procedure de migration entre deux plateformes sur deux machines distinctes
    merciiiiiiiiiiiiiiiii

Discussions similaires

  1. Communication entre des agents jade
    Par Nouur dans le forum Programmation par agent
    Réponses: 0
    Dernier message: 28/04/2014, 23h39
  2. Communication entre des agents jade
    Par Nouur dans le forum Programmation par agent
    Réponses: 0
    Dernier message: 28/04/2014, 23h36
  3. Pour les fanas des Agents
    Par carla-la-belle dans le forum Windows 7
    Réponses: 2
    Dernier message: 12/11/2009, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo