Anylogic,动态改变资源的容量
Posted
技术标签:
【中文标题】Anylogic,动态改变资源的容量【英文标题】:Anylogic, mutate the capacity of the resource dynamically 【发布时间】:2020-09-17 20:37:10 【问题描述】:我有一个带有一个队列和两台机器的模型,其中一台用于在这些资源前面的队列过度拥挤的情况下使用。 我的模型有一个简单的队列和延迟块,我尝试使用这样的函数(写在延迟块容量文本字段中)根据先前的队列长度改变延迟容量:
if (queue.size() > 5)
return 2;
else
return 1;
但是好像不行……可以根据条件动态改变资源的数量吗?
【问题讨论】:
【参考方案1】:延迟块中的容量值只是在模拟开始时才考虑的,所以只能认为是初始值...
稍后要更改容量,可以在队列块的进入和退出时放置一些代码:
delay.set_capacity(queue.size() > 5 ? 2 : 1);
类似的东西。
【讨论】:
哇!费利佩你是大师!感谢您的建议 嗨,Felipe,非常感谢您的解决方案。由于我需要更改 PedWait 代理的容量,类似于问题。但是,我想知道如何获得像 PedWait 这样的 Agent 的所有启用方法?当我查看 Anylogic 帮助文档时,我找不到方法set_capacity
。这是约定吗?比如set_<parameter_name>()
,或者有其他的开发者文档?
set_capacity 在 pedwait 的帮助文档中有清楚的显示,仔细看... Ctrl F "capacity"... 你会发现它以上是关于Anylogic,动态改变资源的容量的主要内容,如果未能解决你的问题,请参考以下文章