【问题标题】:How to associate a probability distribution to Agents - Anylogic如何将概率分布与代理相关联 - Anylogic
【发布时间】:2018-08-03 17:48:06
【问题描述】:
我在 Anylogic 上模拟一个模型,其中代理从队列块流向服务块。
我需要用这样的概率分布来定义代理在服务中花费的时间:
- 70% 的人在服务中花费了 15 到 30 分钟的时间间隔(应该是均匀分布,如:uniform(15, 30))
-其中 20% 在 30 到 45 分钟之间
-其中 10% 在 45 到 60 分钟之间
我已经为代理关联了一个名为“timeInService”的参数,我想我应该使用它,也许还有服务的 Dalay 时间,但我不知道怎么做。
非常感谢!
【问题讨论】:
标签:
javascript
java
simulation
anylogic
event-simulation
【解决方案1】:
关于服务块的延迟你可以放这段代码:
uniform()<0.7 ? uniform(15,30) : (uniform()<2/3 ? uniform(30,45) : uniform(45,60))
这会给你你想要的。
另一种选择是在进入服务块之前的块上,您在“退出时”执行此操作:
double rand=uniform();
if(rand<0.7)
agent.timeInService=uniform(15,30);
else if(rand<0.9)
agent.timeInService=uniform(30,45);
else
agent.timeInService=uniform(45,60);
在服务延迟中你把agent.timeInService
这是两个可能的选择。