如何将代理关联到优先级范围 Anylogic

How to associate agents to a priority range Anylogic

我正在 Anylogic 上模拟一个模型,由 4 个块组成:source-queue-service-sink。

我有 3 个 类 优先级(低、中、高),我必须用它来组织 "priority-based" 队列。所以:

队列应该这样工作:首先是高点,然后是中点和低点。

我该怎么做?我应该使用数组吗?

首先你需要在你的代理中有一个名为优先级的变量...要随机关联优先级,该变量的默认值应该是:

uniform()<0.7 ? 3 : (uniform()<2/3 ? 2 : 1)

这意味着 70% 的代理的优先级为 3,20% 的代理的优先级为 2,10% 的代理的优先级为 1

在属性的队列模块中,在第一个高级部分中,您将队列更改为 "priority based" 和 select agent.priority 作为优先级,如下图所示:

然后队列会根据代理的优先级释放...优先级高的在前,优先级低的在后。