如何将代理关联到优先级范围 Anylogic
Posted
技术标签:
【中文标题】如何将代理关联到优先级范围 Anylogic【英文标题】:How to associate agents to a priority range Anylogic 【发布时间】:2018-08-08 10:39:32 【问题描述】:我在 Anylogic 上模拟一个模型,由 4 个块组成:source-queue-service-sink。
我有 3 类优先级(低、中、高),我必须用它们来组织“基于优先级”的队列。所以:
70% 的代理必须关联到“高”; 20% 的代理到“媒介”; 10% 的代理为“低”。队列应该是这样工作的:首先是高位,然后是中位,最后是低位。
我该怎么做?我应该使用数组吗?
【问题讨论】:
【参考方案1】:首先,您的代理中需要有一个名为priority 的变量...要随机关联优先级,该变量的默认值应为:
uniform()<0.7 ? 3 : (uniform()<2/3 ? 2 : 1)
这意味着 70% 的代理将具有优先级 3,20% 将具有优先级=2,10% 将具有优先级=1
在属性的队列模块中,在第一个高级部分中,您将排队更改为“基于优先级”并选择 agent.priority 作为优先级,如下图所示:
然后队列会根据他们的优先级释放代理...高优先级先,低优先级最后。
【讨论】:
以上是关于如何将代理关联到优先级范围 Anylogic的主要内容,如果未能解决你的问题,请参考以下文章
基于两个参数的 AnyLogic 优先级队列作为 Java 代码