在 Agent.setspeed() 的任何逻辑异常中

in anylogic exception with Agent.setspeed()

我有一个简单的任意逻辑模型,用于行人从起点线到目标线的运动

我想在某些情况下改变移动代理的速度。

我使用事件测试条件

如果特定区域中的代理数量超过 20,我会使用 agent.setspeed()

更改先前区域中代理的速度

当我 运行 模拟和事件被触发时,我得到这个异常:

这是一个有趣的问题...这就是解决方案...

1) 你的人口不是行人类型......所以你不能使用行人 API 即使你正在使用行人图书馆......你必须使用行人类型:

2) 一旦你创建了行人类型,你的人口 "people" 必须基于该类型创建......只有在这之后你才会有一个人口允许你使用行人 API

3) 在行人API中,setSpeed()函数不存在,你应该用pers.setComfortableSpeed(0.5,MPS);替换它当然你只能在完成至少我的观点后才能这样做1.