Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Simulation 如何在AnyLogic中动态更改静态资源的容量_Simulation_Anylogic - Fatal编程技术网

Simulation 如何在AnyLogic中动态更改静态资源的容量

Simulation 如何在AnyLogic中动态更改静态资源的容量,simulation,anylogic,Simulation,Anylogic,我正在急诊科做AnyLogic模拟。科室负责人希望测试添加护士、治疗室等的好处。这样做很容易,他们可以通过GUI动态更改护士人数,因为这是一种“移动”资源类型。但是,如何动态更改绑定到特定网络节点的静态资源类型(如ED rooms) 我并不希望动态创建资源池。但我想控制现有资源池中有多大一部分将被使用。目前的容量是13个房间,我希望这个从13个到28个不等 使用get_Capacity(n)适用于非静态资源,如护士等。但当我使用。set_Capacity(n)用于静态资源时,我会出现以下错误:

我正在急诊科做AnyLogic模拟。科室负责人希望测试添加护士、治疗室等的好处。这样做很容易,他们可以通过GUI动态更改护士人数,因为这是一种“移动”资源类型。但是,如何动态更改绑定到特定网络节点的静态资源类型(如ED rooms)


我并不希望动态创建资源池。但我想控制现有资源池中有多大一部分将被使用。目前的容量是13个房间,我希望这个从13个到28个不等

使用get_Capacity(n)适用于非静态资源,如护士等。但当我使用。set_Capacity(n)用于静态资源时,我会出现以下错误:


“(ECRoom在这里指的是急诊室中的房间):java.lang.RuntimeException:root.ECRoom:Capacity definition类型应为“Direct”以支持此操作”

最简单的方法是预先定义几个
资源池
元素,静态ED房间链接到它们将使用的任何节点

然后,将其正常容量设置为零,并且仅在用户需要时才将其更改为非零值

如果您只需要在运行时更改容量,
myResourcePool.set\u capacity(someNumber)
是您的朋友:)


(动态创建资源池、主节点等都是可能的,但完全不同)

我并不希望动态创建资源池。但关键是现有资源池中有多大一部分将被使用。当前的容量是13个房间,我希望它在13到28之间变化。是的,.set_capacity(n)适用于非静态资源,如护士等。但是当我为静态资源设置_capacity(n)时,我得到以下错误(这里的ECRoom指的是急诊室中的房间):java.lang.RuntimeException:root.ECRoom:Capacity definition type应为“Direct”以支持此操作啊,始终告诉我们错误和您已经尝试过的内容,为我们节省了大量时间;-)。在这种情况下,请参考我的其他建议:)Contributor-在一个可能被删除的答案中,它建议在事件操作表达式中应该是
。set_capacity(n)
而不是
。set_capacity(n)
。我不知道这是否正确,但我想说出来,以防值得考虑。您没有将自己的能力定义为直接能力,因此请更改。。。您被设置为使用set_容量(n)