在 Anylogic 中与单个块内的两个代理进行通信
Posted
技术标签:
【中文标题】在 Anylogic 中与单个块内的两个代理进行通信【英文标题】:Communication with two agents within a single block in Anylogic 【发布时间】:2017-04-14 05:06:50 【问题描述】:如下面的流程图所示,我正在尝试对发送到服务器的作业进行建模。在服务块中,我的资源池是服务器。
我当前的模型在源中创建了代理“工作”。然后将它们发送到队列和服务块,服务块将从资源池中获取服务器(服务器代理)。
我已经设置了我的模拟,以便随机删除服务器。
我的麻烦是:当当前正在处理作业的服务器被删除时(随机时间),如何将作业发送回队列。
我在让服务块/服务器池访问作业代理时遇到问题
【问题讨论】:
让我看看我是否理解。您随机删除服务器。如果这些服务器正在处理作业,您希望将进程发送到初始队列。是这样吗? 是的,没错。 下面的答案没有解决问题? 确实如此。谢谢! 请将问题标记为已回答,谢谢。 【参考方案1】:我不确定您是如何删除服务器的,但如果您是通过减少资源池的容量来删除服务器,我的答案将如您所愿。
要让作业返回队列,首先需要对流程图进行一些更改。 (见图)
然后,在您的服务块中,更改您的设置以匹配我的:
瞧,就是这样。如果您使用不同类型的删除并且此方法不起作用,请告诉我。
干杯, 路易斯·佩雷拉
【讨论】:
以上是关于在 Anylogic 中与单个块内的两个代理进行通信的主要内容,如果未能解决你的问题,请参考以下文章
在 AnyLogic 中将预定数量的代理放置在折线中的随机位置
基于两个参数的 AnyLogic 优先级队列作为 Java 代码