【发布时间】:2020-04-24 20:51:05
【问题描述】:
我正在使用 anyLogic 模拟器来模拟我的流量模型。如何获取当前数量等待任何信号的汽车?
【问题讨论】:
标签: anylogic
我正在使用 anyLogic 模拟器来模拟我的流量模型。如何获取当前数量等待任何信号的汽车?
【问题讨论】:
标签: anylogic
道路的函数 int nCars(boolean isOnForwardSide) 将为您提供这条道路上指定方向上的汽车数量。取决于特定的布局功能可能有用。此外,应该注意.nCars 函数给出了汽车的数量,这将包括最后停止的汽车,以及沿途以任何速度移动的汽车。根据人们如何考虑“等待”交通信号,可能需要额外的处理/计算。这可能也适用于第一个答案中的解决方案。
【讨论】:
据我所知,在 AnyLogic 中没有直接的函数来检索有多少汽车在交通信号灯前等待。
您必须手动执行此操作:
使用两条停止线,一条位于您要监控的区域的起点,另一条连接到您的交通信号灯。
使用相应停止线的 Actions/On car passed 代码字段从集合中添加(在第一个停止线)和删除(在红绿灯停止线)汽车。为此,请使用代码carCollection.add(car) 和carCollection.remove(car),假设您的收藏名为carCollection。
要检索监控街道区域中当前存在的汽车数量,只需检索carCollection.size()。
【讨论】: