【问题标题】:Calculate the time available in the service block in anylogic在anylogic中计算服务块中可用的时间
【发布时间】:2021-11-04 00:24:19
【问题描述】:

您好,我正在轮班工作(上午 8 点到下午 4 点 30 分)从事生产模型工作,并且要求只能在一个班次中完成工作,否则将其转移到第二天。例如,假设我的代理在下午 4:00 进入服务区并在下午 4:30 结束轮班,完成此任务所需的平均时间是 3 小时,我想要做的是检查可用时间以及是否有时间是不够的(比如在这种情况下,我只有 30 分钟)应该将代理发送到等候区,第二天服务块应该首先开始处理该代理。

【问题讨论】:

标签: anylogic


【解决方案1】:

一种方法:在服务之前添加一个 SelectOutput 块。在条件下,检查

mySchedule.getTimeOfNextValue() - time() > x

其中 x 是您允许的剩余时间窗口,即代理进入服务后所需的任务持续时间。

如果没有足够的x,你将代理发送到某个等待块,否则他们被允许进入

PS:还要检查Schedule 允许的其他功能,可能你需要其中一些。始终通过代码完成(Mac 上的 ctrl+space 或 Option+space)检查块为您提供的所有功能

【讨论】:

    猜你喜欢
    • 2020-09-09
    • 2016-10-21
    • 1970-01-01
    • 2019-04-16
    • 2019-04-13
    • 2012-06-28
    • 1970-01-01
    • 2021-09-01
    • 2021-07-30
    相关资源
    最近更新 更多