在JADE中将操作附加到服务

时间:2015-10-05 12:51:50

标签: service agent agents-jade multi-agent

我是JADE中多代理系统开发的初学者,我一直在阅读有关它的一些教程,但我仍有疑问,每个教程都展示如何注册如何在DF中搜索服务,据我所知,服务应该是一个行动吧?如果代理提供了一组服务,那么应该有一种方法,当其他代理请求其中一个服务时,我会为请求的服务执行一些代码。我有一个与服务相关的方法列表,但在JADE中:

  1. 我如何编写服务的动作?
  2. 我如何调用与服务相关的方法?
  3. 谢谢!

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您就会问如何了解特定服务并使用它? 例如,玉器示例集中的Book-Trading示例,书籍卖家在向DF注册时将其设置为sd.setType(“Book-selling”) 当图书采购员需要找到一些卖家时,它会再次搜索 //更新卖家代理商列表

DFAgentDescription template = new DFAgentDescription();
    ServiceDescription sd = new ServiceDescription();
    sd.setType("Book-selling");
    template.addServices(sd);
    try {
      DFAgentDescription[] result = DFService.search(myAgent, template);

因此,只有那些与指定模板匹配的服务才能向图书买家代理提供服务。 因此,您需要在DF中注册您的特定服务,以便其他可以使用它们的代理可见。