【问题标题】:A question about seizing more than one ressource in Anylogic一个关于在Anylogic中获取多个资源的问题
【发布时间】:2021-01-17 01:41:01
【问题描述】:

我正在与 AnyLogic 合作开展供应链项目。在我的模型中,类似于 AnyLogic 示例中的产品交付示例,有两个代理 RetailerFulfillment center。两者都有自己的车辆。我想做的是共享车辆,所以retailersFulfillment centers 使用彼此的车辆。我所做的是在每个代理中创建两个Ressource Pool。所以在下图中的抓住块中,我添加了两个 ressource sets 。在如下所示的每辆车的每个状态图中,在交付产品后,我通知我的车辆回到他的初始位置,在这种情况下,它可以是RetailerFulfillment center。但是在模拟之后,我在控制台中收到一条错误消息,告诉我我的代理 vehicle 正在尝试移动到 unknown source

【问题讨论】:

  • 另外,您的“moveTo(Retailer)”代码是错误的。您的模型中没有名为“零售商”的代理实例,只有一个具有该名称的代理类。但是您的资源不能移动到一个类,它需要一个特定的实例。 (阅读“Java for AnyLogic”一书了解这些概念)

标签: anylogic


【解决方案1】:

如果将 2 个 ResourcePools 放入 2 个代理中,则总共有 4 个池。但是您只需要 1 个共享池,对吗?

仅向 Main 添加 1 个 ResourcePool 并从两个代理的 Seize 元素中使用它。您将无法在通常的下拉列表中选择池(因为两个代理中都没有池),但您可以轻松地使用动态代码来指定它。请注意,下面的代码假定两个代理都嵌入在 Main 中:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-27
    • 1970-01-01
    • 1970-01-01
    • 2019-08-13
    • 2018-10-18
    • 2023-03-08
    • 2020-12-18
    • 1970-01-01
    相关资源
    最近更新 更多