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