MaDKit forum

Welcome All !
Please, use explicit topic names when creating new threads. Thanks.

You are not logged in.

#1 HowTo » deux paramètres en message » 2013-11-20 14:26:00

ines
Replies: 1

Bonjour,
J'aimerais bien savoir si je peux envoyer deux paramètres (valeurs) dans un seul message. Dans mon exemple je dois passer un ordre de bourse contenant le prix et la quantité, si j'utilise ACLMessage:  new ACLMessage("ORDRE",String.valueOf(Prix))

#2 Re: HowTo » String to AgentAddress » 2013-09-26 18:24:10

Bonjour,

En fait, je l'ai stocké les adresses de mes agents dans un fichier Excel. C'est une sorte de matrice d’adjacence où on détermine la liste des adresses agents voisins que chaque agent peut les envoyer un message: si la relation entre l'agent et un autre est 1, il peut lui envoyer un message par l'adresse affichée dans le fichier Excel (qui est converti en String dans mon cas).

#3 HowTo » String to AgentAddress » 2013-09-22 20:53:39

ines
Replies: 2

Bonjour,

J'ai stocké les adresses de mes agents dans un fichier Excel après la transformation en String (m.getSender().toString()).
Est-ce-qu'il y-a une méthode qui permet de convertir le String (qui contenu en réalité l'adresse d'un agent) en AgentAddress afin que je puisse l'envoyer un message.

J'espère que c'est clair.
Merci d'avance.

#4 Re: HowTo » Object message » 2013-09-20 22:00:13

Bonjour,
PEST est de type double, c'est une valeur. En fait, je veux envoyer un message de type Object contenant cette valeur aussi un string (exp ORDRE-VENTE) comme identifiant parce que j'ai plus qu'un message de ce type à envoyer.

#5 HowTo » Object message » 2013-09-15 13:14:05

ines
Replies: 2

Bonjour,

Je veux passer en paramètre d'un Object message un String comme identifiant du message et une valeur. En utilisant cette syntaxe new ObjectMessage<String>("ORDRE-VENTE"), j'ai pas le droit de passer en paramètre la valeur String.valueOf(PEST). Ce message n'est accepté que lorsque j'utilise ACLMessage new ACLMessage("ORDRE-ACHAT",String.valueOf(PEST)).
Comment pourrai-je passer en paramètre une valeur en utilisant Object message.
Merci d'avance.

#6 Re: HowTo » Représentation des agents sous forme de graphe » 2013-09-11 19:17:24

fmichel wrote:

Bonjour,

Des étudiants d'IUT ont réalisé un projet de ce type. Vous pouvez le récupérer ici avec le rapport détaillé à l'intérieur (c'est un projet Eclipse) : http://www.lirmm.fr/~fmichel/pub/Graph_MDK.zip
N'hésitez pas à contacter les auteurs.

Merci de m'envoyer les adresses mails des auteurs pour que je puisse les contacter vu que je veux structurer mes agents sous forme de graphe small world.

#7 Re: HowTo » Syntaxe de la version 5 » 2013-08-28 12:46:02

Merci pour votre aide et je m'excuse pour le mauvais emplacement de ce sujet.

#8 HowTo » Structuration des agents en graphe small world » 2013-08-28 12:35:36

ines
Replies: 0

Bonjour,

Je veux bien organiser mes agents sous forme d'un réseau Small world avant le passage de messages entre eux.
Est-ce-possible de m'aider dans ce propos vue que la bibliothèque GraphStream, qui a été utilisé dans le projet  "conception de Graphes avec Madkit et GraphStream", présente une classe pour le type de graphe Small world.

Merci d'avance.

PS: Merci de m'envoyer les adresses mails des auteurs du projet "Conception de Graphes avec Madkit et GraphStream".

#9 HowTo » Syntaxe de la version 5 » 2013-08-11 17:53:58

ines
Replies: 2

Bonjour,
Je me suis basculer vers la version 5 du madkit, cependant je me trouve devant quelques difficultés vue que la syntaxe utilisée est différente à celle de la version 4.

Je cite l'exemple suivant, un agent envoi le même message à une liste d'agents ayant le rôle "voisin". Voici le code en utilisant la version 4:

AgentAddress [] agList = getAgentsWithRole("Stockmarket", "inter-invest", "voisin");
AgentAddress me  = getAddress();

for (int i=0;i<agList.length; i++)
{   if (agList [ i ] != me){
sendMessage (agList [ i ] , new StringMessage ("Demande prix estimé"));}}

Comment pourrai-je le modifié ?
Merci d'avance.

#10 Re: HowTo » Représentation des agents sous forme de graphe » 2013-07-27 03:28:21

Bonjour,
Je vous remercie pour votre aimable aide. Je veux bien contacter les auteurs mais je trouve pas les adresses mails dans le rapport. Si c'est possible de me mettre en contact avec parce que mon problème c'est de construire un graphe d'une structure de voisinage entre les agents prédéfinie (small world) et non pas un graphe de messages échangés.

#11 HowTo » Représentation des agents sous forme de graphe » 2013-07-10 14:01:09

ines
Replies: 3

Bonjour,

Je veux savoir si c'est possible de représenter un graphe en utilisant madkit sachant que les sommets désignent les agents et les relations entre eux représentent les arêtes.

#12 Re: HowTo » Launcher Agent » 2013-06-30 18:21:10

Merci bien, je vais essayer de basculer vers la version 5.

#13 Re: HowTo » Launcher Agent » 2013-06-30 15:20:00

Bonjour,
Merci pour votre aide, mais le problème résiste encore. En faite, je dois lancer plusieurs agents de type Investisseur et un agent CentralMarket. je veux bien savoir que dois-je écrire dans le fichier .cfg pour que l'exécution se fait normalement.
<config>

<launch-agent name="Investisseur" type="Java" code="madkit.Stockmarket.Launcher"/>
    <launch-agent name="CentralMarket " type="Java" code="madkit.Stockmarket.Launcher"/>

</config>
Lorsque j'écris ceci dans Stockmarket.cfg , il s'affiche deux interfaces sans auncun traitement dedans, sachant que lorsque j'ignore la présence du Launcher la communication entre les agents se fait.

#14 HowTo » Launcher Agent » 2013-06-27 14:58:15

ines
Replies: 4

Bonjour,
Je suis entrain de créer une classe LauncherAgent() qui est indispensable du lancement des agents, le problème c'est que lors de l'exécution il s'affiche qu'un seul agent. Je veux savoir s'il y a un problème dans le code et ce que je dois écrire dans le fichier .cfg.

package madkit.Stockmarket;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import madkit.kernel.*;



public class Launcher extends Agent
{
int delay = 9;
int numberofInvest=3;
boolean randomMode=true;
boolean active=false;

List InvestList= new ArrayList();
List agentsList = new ArrayList();

Scheduler investScheduler;

public Launcher(){}
public void setNumberofInvest (int I) {  this.numberofInvest= I;}
public int getNumberofInvest () { return numberofInvest;}




public synchronized void launchInvestisseurs(int nbrInvest)
{
    for (int i =0;i<nbrInvest;i++)
    {
        Investisseur I = new Investisseur();
        InvestList.add(I);
       
        launchAgent(I,"Investisseur"+i, false);
    }
}
public synchronized void launchCentralMarket()
{
   
        CentralMarket C= new CentralMarket();
       
        launchAgent(C,"CentralMarket",false);
   
}

public void activate()
{
    System.err.println("Launching simulation...");
    createGroup(true,"Stockmarket", "bourse",null,null);
    requestRole("Stockmarket", "bourse","launcher",null);
    while(active != true)
    {
        exitImmediatlyOnKill();
   
    }

investScheduler=new Scheduler(delay);
    agentsList.add(investScheduler);
  launchInvestisseurs(numberofInvest);
launchCentralMarket();
}
}
Merci d'avance.

Board footer