如何在 AnyLogic 中自定义 pedwait 吸引子选择?

问题描述

我想根据社交距离模拟行人​​的坐姿。

节点内部有 10 个吸引子代表座位(第 1 到第 10 个)。 每个吸引子相距 0.5 m。

如果社交距离规则为 1m,则行人将相互让出一个座位,并且仅在第 1、第 3、第 5、第 7 和第 9 个座位上就座。

如果社交距离规则是 1.5m,行人将空两个座位,只坐在第 1、4、7 和 10 位。

如果社交距离规则是 2m,则行人将空三个座位,并且只坐在第 1、第 5 和第 8 个座位。

目前,我准备了一个编辑框来控制社交距离。

我应该如何对 pedwait 中的自定义吸引子进行建模并链接到社交距离控件?这样行人只是坐在特定的座位上,而不是所有的座位。

有什么建议吗?谢谢。

解决方法

没有预定义的方法可以做到这一点,吸引子是在内部选择的,您没有任何影响。

因此,您需要创建一个 AgentType myAttractor,它是一个单一的吸引子。为它创建一个代理群体,然后您可以精细控制谁去哪里,哪些吸引子是“禁区”等。

然而,您需要动态地将代理吸引子添加到您的行人空间,这并不简单。也许这个关于使用 Material-Handling 库做类似事情的网络广播有帮助:https://youtu.be/casVdmKC-S0