当前位置: 首页 > 知识库问答 >
问题:

在特定的视角下,我如何与另一个代理(anylogic)通信?

法风畔
2023-03-14

我试图使用Anylogic Pastern library进行建模,其中一个agent(A)将与另一个agent(B)通信,只有当另一个agent在A的特定视角和弧半径内时。传统的通信方式是定义一定的基于距离的通信,其中定义的距离形成围绕该agent的球体。但我想建模,代理将无法与不在他视野角度内的其他代理通信(像一个圆锥形投影&一定距离)。例如,代理应该无法与身后的其他人进行交流。我怎么能这么做?

此外,我正试图通过代理状态图来模拟个体代理的行为(上面提到的行人代理)。不幸的是,在我的模型中,代理状态并不是基于通信而改变的。是不是因为使用了步行图书馆?我们能用州议会来模拟行人代理人的行为吗?如果有人能回答那些问题,那将是一个很大的帮助。

共有1个答案

龙弘济
2023-03-14

如果您想评估行人或代理是否在视野中,您需要为该代理获得x和y并执行以下操作:

if(fieldOfVision.contains(x,y))
//communicate with that dude
 类似资料:
  • 我有一群“乘客”代理人,其中每一个代理人都会向另一个“机场”代理人发出请求(“OrderPassenger”代理人类型)。此时,“机场”代理人必须通过“机场建议”代理人响应请求,并将其发送给“乘客”群体中的特定“乘客”。 我尝试使用:send(airportSuggestion,main.passengers(orderPassenger.passenger));但是乘客。乘客不是整数类型。 我尝

  • 谁能帮助我如何创建一个新的代理人,并将其链接到旧的,以治愈人民? 多谢!

  • 如何从代理中引用Main 我有一个由1个代理组成的资源池,在Main中移动项目。在那里,使用过程建模库对过程进行建模。代理既不进入也不退出流程模型,而是无限期地运行<现在,我想向我的代理添加一个状态图,在该状态图中,我想测试代理是否主要到达某个队列块。然而,我不能从我经纪人的状态图中引用Main。“get\u Main()”和“Main”都不起作用,因为我也没有带Main的箭头(我在参考模型上看到

  • 我正在解决一个作业车间调度问题,我有20个作业(代理)和5台机器(资源),每个作业作为访问机器的特定顺序。我的问题是:我如何确保每个作业都遵循它的顺序。 这就是我所做的。一个称为“作业”的代理和5个代理,每个代理对应一台机器。一个与每个服务块相关联的资源池。在集合enterblocks中,我选择了5个enter块。 在代理“jobs”中,我有这个。从数据库文件读取的与每个作业相关联的参数,以及我在

  • 关于基于代理的模型,我有一个问题。 我建立了两个代理。一个有状态图。我希望状态图能够通过发送消息或其他方式被其他代理使用。 我该怎么做?