流量代理一一anylogic

Flow agents one by one anylogic

我在 anylogic 中模拟一个流程,我需要我的代理从一个队列一个一个地流向一个服务,并且只有当服务为空时(即当前面的代理完成它时)。 我能怎么做?我尝试在队列和服务之间使用 Hold,仅当服务为空时才为真,这没问题,但我需要代理一个接一个地流动,而不是一起流动。

感谢您的帮助!

您可以在服务块之前使用 "wait" 块,当您的服务块为空时,您可以执行以下操作:

if(wait.size()>0 && service.size()==0)
wait.free(wait.get(0))

您必须将这段代码放在 2 个地方:

  • 占用服务块
  • 进入等待块

另一种方法是通过占用延迟释放的组合来替换服务块,并且在占用块之间使用限制区域开始和限制区域结束,并将代理数量限制为 1(如果您希望在服务队列中最多有 1 个)或者如果您希望队列始终为零,则在服务块之间设置限制。

选择你最喜欢的