【问题标题】:How to don’t seize resource units that are not needed?如何不占用不需要的资源单元?
【发布时间】:2021-05-13 10:31:24
【问题描述】:

我正在模拟一艘船的卸货过程。只需要两个资源往返(装载、移动到目的地、卸载、返回装载)就可以完美地完成船舶的完全卸载,并且船舶永远不会闲置等待卡车装载。

我需要证明,如果我将资源单元(卡车)的数量增加到 3 个,第三个将永远不会被占用,因为它不需要,问题是占用块平均占用所有单元,所以最后,所有单元的利用率最终都大于 0。

如何将占用块配置为仅使用所需的资源而使“多余”单元的利用率为零?

(默认情况下,真实模型将有许多可用资源,并且船只可能需要两辆以上的卡车。我想要的是确定所需的最佳资源量)。

谢谢。

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    ResourcePool 中有一个选项Customize request choice,当设置为True 时将允许创建Request choice condition 函数。可以确保首先占用的资源是利用率 > 0 的资源。如果您的假设正确,则永远不会占用第三辆卡车。

    【讨论】:

      【解决方案2】:

      您只需要运行两个实验。一个有 2 辆卡车,另一个有 3 辆。然后在船舶等待时间和卡车池利用率方面进行比较。

      【讨论】:

        【解决方案3】:

        我以非常简单的方式解决了这个问题:

        在 Seize 块中,使用“自定义资源选择”选项,“资源选择”等于“具有最高评级的单位”和“单位评级”= unit.getUtilization()。

        顺便说一句,Anylogic按照利用率等级对空闲资源进行排序,选择利用率最高的资源,这意味着永远不会占用不需要的资源。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-08-16
          • 2021-12-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-04-09
          • 1970-01-01
          相关资源
          最近更新 更多