将JADE代理从代理启动到另一个Container

时间:2016-05-20 12:28:02

标签: pug agents-jade agents

所以我开发了一个由一些管理代理和一些控制代理组成的多代理系统。我有一个JADE平台的inprocess启动器,我在其中创建了两个新的非主要容器(一个用于管理代理,另一个用于控制代理)。管理员代理设置模拟过程,然后开始模拟。控制代理为仿真模型提供参数。每个模拟项目可以是不同的,这意味着需要不同的控制代理,并且必须在管理代理协商配置后启动。

我从我的一个管理代理启动代理,但由于我的管理代理位于管理容器中,控制代理也会在那里启动! (我只能抓住管理代理的驻留容器控制器)我可以将控制代理直接启动到控件容器中吗?

1 个答案:

答案 0 :(得分:0)

所以我想出了一个解决方案。我从admin代理启动的控制代理将作为参数传递一个ContainerID对象,该参数表示控件容器的地址。然后,控制代理在与管理代理程序相同的容器中启动。

在ControlAgent的设置中,可以使用doMove()方法从一个容器转移到另一个容器。 doMove()需要一个使用Location接口的对象,根据API v4.4.0,ContainerID实现。

我将在本周晚些时候尝试这个并发布结果。