服务块中的Anylogic更改顺序

时间:2018-11-09 17:16:54

标签: java simulation anylogic

尊敬的AnyLogic社区,

我创建了一个模型来评估不同的自主控制方法。

我的代理商的到期日不同,我希望最先交付截止日期最快的代理商。目前,传入的代理程序没有进行任何排序,而是根据FIFO规则进行服务。

是否有可能在不添加单独队列的情况下修改服务块中代理的顺序?

非常感谢您的时间和帮助!

2 个答案:

答案 0 :(得分:0)

您可以按照Felipe的建议将到期日映射到优先级。

或者,更直接的方法是使用队列优先级模式“代理比较”。假设您的代理具有类型Date的参数“ myDueDate”。

然后,您可以简单地按如下所示安排最紧急截止日期的座席,本质上说“如果更紧急,将传入的agent1优先于现有的agent2”。传入代理将跳到每个队列成员之前,直到找到一个更紧急的成员为止。 enter image description here

答案 1 :(得分:0)

Benjamin的解决方案很好,但是如果您坚持不希望在服务块之前使用队列,并且无论如何都需要使用服务块,则可以这样设置优先级:

how to set priorities

当到期日临近时,您的业务代表的优先级将更高。

由于您已经在座席内部设置了优先级,因此除此以外别无其他事情(除非您想要抢占)。

但是,如果要设置它,优先级可以是以下优先级(优先级是代理中定义的参数): priority setting