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

在资源空闲时为资源创建任务列表的方法

如何解决在资源空闲时为资源创建任务列表的方法

Image to illustrate point of freezing 上下文: 为生产线创建可扩展的模型以提高人机优化率。将为操作员(资源)扩展模型以在多台机器(相同类型)上工作。在机器的工艺流程中,操作员会因不同的任务被多次扣押和释放。

问题: 当操作员在多个抢占区块同时被抢占时,整个流程会冻结。

想法: 有没有办法创建一个列表,在当前占用资源的情况下添加任务。资源将在空闲时处理任务列表。任何其他解决此问题的方法也值得赞赏!

解决方法

如果这将成为一个复杂的模型,您可能需要考虑使用纯基于代理的方法。

您的资源具有 JobRequest 代理的 LinkedList,这些代理在必要时由机器创建和发送。它们按某些优先级排序。

然后资源在下一个之后简单地执行一个 JobRequest

不需要 ResourcePools 或 Seieze 元素。

这通常是更强大、更灵活的方法,因为您不再受制于进程块。但显然,它需要你很好的控制和测试:)

,

问题:当操作员被 同时在多个扣押区块中扣押。

您需要更好地解释您的问题:不可能“同时在多个抢占块上抢占同一个操作员”(除非您使用资源选择条件或类似条件来尝试“强制”抢占特定资源 - -- 即便如此,这更准确地表述为“我已经设置了资源选择条件,这意味着我最终没有可用的有效资源”)。

您的模型“冻结”代表什么?例如,这可能只是没有可用资源的自然结果,特别是如果您有很长的延迟时间或正在使用设置了“Until stopDelay()”的 Delay 块 --- 即,您依赖于其他地方的事件您的模型从块中释放代理(并占用资源),不正确的模型设计可能意味着在某些情况下永远不会发生。 (如果您的模型因为没有可用资源而“冻结”,那么它应该在有资源时“解冻”。)

在机器的工艺流程中,操作员将 为不同的任务多次扣押和释放。

您可以通过将机器上的操作分解为多个具有不同特征的捕获/延迟/释放操作(或者如果需要,可以围绕由某些数据驱动的一组这些操作循环的过程流来实现这一点)更加灵活/数据驱动)。

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