微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

方法测量模拟期间代理未使用的时间

如何解决方法测量模拟期间代理未使用的时间

我有一个供应链交付模拟的模拟,其中三个车辆代理从制造商转移到客户,该模型基于 AnyLogic 网络研讨会,用于使用 GIS 进行交付车队优化。并且流程图逻辑是这样设置的:

enter image description here

我试图从模拟中提取一些时间。其中一个时间是代理两次旅行之间的时间,因此需要找到代理在模拟期间没有移动的时间,理想情况下,这将对每辆车单独完成或提供平均类型的事情。

在这里看到了一个例子:TimeMeasurementStart and End 在讨论它的地方,您可以使用代码来收集时间数据而不是块,但是如果有人有任何提示,那么有关所需代码的细节或代码去向的一些帮助将非常有帮助!

我的假设是,如果我可以这样说: 总时间 - 移动的时间 = 不移动的时间

任何帮助都会被感谢! 娜塔莎

解决方法

@Benjamin 提议的替代方案是在退出时执行:

agent.timeDriving+=time()-agent.getBlockEnterTime()
,

首先,确保您的卡车是您自己创建的自定义代理类型,我们将它们称为 @objc func showChatController(notification: Notification) { print("DEBUG: show chat controller here..") } 。此外,您的 Truck 块必须知道它是 MoveTo 代理流过它(将“高级”下的“代理类型”设置为 Truck

向其中添加一个变量 Truck 和另一个 timeDriving。前者用于对所有驾驶持续时间求和。后者用于临时测量何时开始行驶。

然后,在所有 timerStart 元素中使用代码框,如下所示: enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。