Anylogic,将代理拆分为多种不同的代理类型
Posted
技术标签:
【中文标题】Anylogic,将代理拆分为多种不同的代理类型【英文标题】:Anylogic, split an agent in multiple different agent types 【发布时间】:2020-09-12 15:17:49 【问题描述】:我对任何逻辑中的模拟有疑问。 我有一个必须由资源处理的项目(代理),此服务块的结果是起始对象和两个不同的文档,它们在两个单独的办公室中处理,并且在流程结束时必须链接到有问题的文章。 我找不到将这种划分为 3 个不同代理的方法,或者一般来说,无法对此流程进行建模。 谢谢指教
【问题讨论】:
【参考方案1】:您可以使用 2 个拆分块生成 2 个独立文档,并通过变量或链接将它们连接到代理...也许每个原始代理都有一个 id,拆分块中的副本将具有类似 agent.id=original.id;
的内容
然后,在处理完文档后,您可以检查哪些文档具有相同的 id 以将它们合并到文章中...
但如果你想变得更复杂,还有以下选项:
创建 2 个输入块(enter1 和 enter2),每个文档一个。我将假设您的文档对应于 2 种不同的代理类型,称为 Document1 和 Document2
在每种代理类型上,您都将添加到代理的链接,以便能够将文档相互连接起来。如果您不知道那是什么,请阅读帮助文档中有关代理链接的更多信息。
在服务块结束时,在退出操作上,您可以执行以下操作:
Document1 doc1=add_Document1();
Document2 doc2=add_Document2();
doc1.linkToDoc2.connectTo(doc2);
enter1.take(doc1);
enter2.take(doc2);
我不知道您的原始代理是否必须连接,但您会遵循相同的原则来做到这一点。
稍后,您只需检查连接的文档是否已完成,以便再次将它们加入文章中。
【讨论】:
非常感谢费利佩!以上是关于Anylogic,将代理拆分为多种不同的代理类型的主要内容,如果未能解决你的问题,请参考以下文章
在 Anylogic 中为代理参数分配不同值的正确方法是啥?