【问题标题】:Anylogic library dependenciesAnylogic 库依赖项
【发布时间】:2019-08-13 23:41:10
【问题描述】:

查看我的一个玩具模型,我注意到在依赖项 - Anylogic 库中,我创建了一个较旧的模型。当我删除对这个模型的依赖时,我得到一个错误。

  • 是否有可能从这个旧型号中找出需要什么?
  • 尚不清楚为什么它甚至在那里。我能想到的唯一想法是我复制/粘贴了一个我想在我的新模型中重用的代理。但如果我是正确的,那么我仍然不明白为什么需要对旧模型的依赖......

如何解决这个问题?

谢谢

【问题讨论】:

    标签: anylogic


    【解决方案1】:

    发生这种情况的正常原因是因为您已将另一个模型中定义的一个或多个代理添加到您的模型中(例如,将代理类型 A 从您的另一个模型拖到您模型的 Main 中,创建一个或代理类型的更多实例A)。

    错误应该告诉您哪个代理类型有问题。 (也可以是其他模型中定义的选项列表或 Java 类。)

    可能是您将代理类型定义从另一个模型复制/粘贴到您的模型中(这使事情变得更加混乱),然后可以修复通过将 type-from-other-model 实例替换为 type-from-my-model 实例。

    【讨论】:

    • 我做了以下实验。我创建了一个空白模型。我将代理 MyAgent 从旧模型复制/粘贴到这个新模型。没问题,不需要依赖。现在,我正在将使用 MyAgent 的源代码从旧模型复制到新模型。现在需要依赖项。另一方面,如果我在新模型中从头开始重新创建这个源,那就没问题了。因此,它就像在复制源时一样,它不会更新新模型中对 MyAgent 的引用。最后,在源代码中,在 Advanced/Agent 类型中,我只有 MyAgent,所以我不能真正手动更改引用
    • 你的实验完全证实了我所说的。 “我复制/粘贴了代理 MyAgent”表示您将代理 类型定义 复制到您的模型中。当您复制“使用旧模型中的 MyAgent 的源”时,您复制了一个 type 定义,其中嵌入了 MyAgentinstance
    • "最后,在源代码中,在 Advanced/Agent 类型中,我只有 MyAgent,所以我不能真正手动更改引用。"是的,您不能更改属性的类型;您必须使用正确的在我的模型中定义的代理类型来删除/重新创建嵌入式代理(或代理群体)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-18
    • 2019-07-13
    • 2016-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-17
    相关资源
    最近更新 更多