我正在尝试在分布式网络上安装多代理系统(Windows计算机和安装了Raspbian OS的Raspberry pi)。我使用以下命令在Windows上启动我的Jade平台:
java mylibrary jade.Boot -gui -platfrom-id Platform1 -agents starter:Starter
我也使用以下命令在Raspbian上启动我的Jade平台:
java mylibrary jade.Boot -gui -platform-id Raspy1 -agents starter:Starter
这是两台计算机上的Starter.java:
import jade.core.Agent;
import jade.core.behaviours.CyclicBehaviour;
import jade.lang.acl.ACLMessage;
import java.util.Arrays;
public class Starter extends Agent {
@Override
protected void setup() {
System.out.println("Setup of starter agent");
addBehaviour(new ReceiveBehaviour());
}
private class ReceiveBehaviour extends CyclicBehaviour {
@Override
public void action() {
ACLMessage msg = myAgent.receive();
if (msg != null) {
System.out.println(msg.getContent());
System.out.println(Arrays.toString(msg.getSender().getAddressesArray()));
ACLMessage reply = msg.createReply();
reply.setContent("I got it. Thank you " + msg.getSender().getName());
myAgent.send(reply);
} else {
block();
}
}
}
}
另外,这是我的Windows中的mtpaddress:http://192.168.1.6:7778/acc
,这也是我的树莓派上的mtpaddress:http://192.168.1.6:7778/acc
我的两台计算机都使用wifi连接到本地网络(无线调制解调器)。
现在发生的事情是,我在两台计算机上都启动了平台,在Windows上启动了DummyAgent,并尝试向raspbian平台发送消息。因此,我添加了一个接收器,然后将名称和地址放入图像中,如[>]
这是控制台输出:
http://raspy1:7778/acc我可以从树莓派上的DummyAgent发送消息到我的Windows平台,但是不会发生相反的情况。我该怎么办?
我正在尝试在分布式网络上安装多代理系统(Windows计算机和安装了Raspbian OS的Raspberry pi)。我使用以下命令在Windows上启动我的Jade平台:java ...
我们正在分布式智能电网环境中广泛使用不同机器(Win,Linux,Mac)之间的JADE通信。