【问题标题】:change value of schedule during run time在运行时更改计划的值
【发布时间】:2021-07-27 13:47:57
【问题描述】:

我有一个显示服务开放时间的时间表! 这是一个间隔时间表,因此从 8:00 到 1:00 开启,从 1:00 到 2:00 关闭,从 2:00 到 6:00 再次开启,从 6:00 到 8:00 关闭. 是否可以动态改变开放时间,从而通过一些参数来改变这些间隔?

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    如果只有 2 或 3 个替代计划,那么值得将它们明确定义为单独的对象并以这种方式使用它们。

    另一种选择:Schedule 对象具有 Exceptions 的概念 - 这是可以更改 的地方(在这种情况下为 ON而不是 OFF) 的时间表的特定时间段。这些可以通过接口或使用addException() 方法以编程方式完成。更多请看here

    此外,还可以通过编程方式创建计划。 AnyLogic 中实际上有一个示例模型来说明如何做到这一点。请参阅“AnyLogic => 帮助 => 示例模型 => 如何建模”中的“以编程方式创建的计划”。

    不幸的是,以编程方式创建的计划缺少 Action 属性,但是这可以通过具有条件触发器的 Event 对象来实现,该条件触发器在 schedule.getValue() 返回 true 时触发。

    【讨论】:

    • 但是,如果替代时间表多于 2 或 3?我尝试使用变量创建动态计划,但这样做我丢失了我在计划中的“操作”字段
    • 您能否详细说明您想要对日程表进行的更改类型?会有多少变化?
    • 我希望在模拟开始之前可以通过一些按钮或滑块来选择服务的开放时间!然后使用按钮/滑块输出中的值,例如时间表的参数。时间表也可以是H24的开幕
    • 好的,我已经在上面澄清了我的答案。
    猜你喜欢
    • 1970-01-01
    • 2012-01-25
    • 2012-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多