【问题标题】:How to receive messages from different Agents如何接收来自不同代理的消息
【发布时间】:2020-09-20 16:00:33
【问题描述】:

我有 4 个具有股票行为的代理,他们在每一步之后将值发送到接收器代理,我希望这个接收器将从代理接收到的值存储在 4 个数组中(每个数组用于发送者之一) 如何实现接收代理行为?

【问题讨论】:

    标签: java pug agents-jade multi-agent


    【解决方案1】:

    类似的东西

    public class ReceiveMessageBehaviour extends CyclicBehaviour {
      private Map<AID, String[]> values = new HashMap<>();
      
      @Override
      public void action() {
          ACLMessage aclMessage = myAgent.receive();
          if(aclMessage == null){
              return;
          }
          String value = aclMessage.getContent();
          String[] aidValues = values.get(aclMessage.getSender());
          if(aidValues == null){
              aidValues = new String[]{value};
              values.put(aclMessage.getSender(), aidValues);
          } else {
              values.put(aclMessage.getSender(), ArrayUtils.add(aidValues, value));
          }
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-05-03
      • 1970-01-01
      • 1970-01-01
      • 2018-10-19
      • 1970-01-01
      • 1970-01-01
      • 2015-05-26
      • 1970-01-01
      • 2020-11-01
      相关资源
      最近更新 更多