【问题标题】:Is there a way to trigger event in Anylogic by timestamps from database有没有办法通过数据库中的时间戳触发 Anylogic 中的事件
【发布时间】:2020-06-16 21:44:47
【问题描述】:

简单地说,我需要我的延迟块根据数据库中的时间戳释放代理。当 Source 块基于 Arrival Time(来自 DB)生成代理时,应用相同的逻辑

延迟块似乎无法使用数据库中的绝对时间,它只使用延迟时间(周期)。

因此,另一种选择是使用 StopDelay 功能,但要激活它,我需要将我的数据库连接到需要它的事件。 但是 Event 似乎没有任何简单的(类似于 Source 块)方法可以由 DB 的时间戳触发。 您能否分享您对解决此问题的方法的想法?

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    使用“动态事件”元素(而不是“事件”)。

    在模型开始时,遍历所有 dbase 条目并为每一行创建一个动态事件,例如 create_MyDynamicEvent(XXX),其中 XXX 是您的 dbase 的到达时间(假设它是相对于模型开始的绝对持续时间)

    在动态事件操作代码中,只需调用myDelay.stopDelay() 即可释放此时的所有代理

    【讨论】:

      猜你喜欢
      • 2017-08-05
      • 2021-06-13
      • 2020-04-10
      • 2021-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多