如何在AnyLogic资源池中使用程序化创建的Schedule作为容量?
解决AnyLogic程序化创建Schedule无法关联资源池容量的问题
- 先在代码里创建好你的动态Schedule,示例代码:
// 在模型启动时创建自定义Schedule Schedule myDynamicSchedule = new Schedule(this, "动态容量调度"); // 按需添加时间点和对应容量,比如凌晨1点容量设为5,早8点设为10 myDynamicSchedule.addTimepoint(timeToDouble(1, 0, 0), 5); myDynamicSchedule.addTimepoint(timeToDouble(8, 0, 0), 10); - 跳过属性面板的“由启停Schedule定义容量”选项,直接用代码把这个动态Schedule绑定到你的ResourcePoolSortation:
// 替换成你的资源池对象名 myResourcePool.setCapacitySchedule(myDynamicSchedule); - 把这段代码放在模型初始化的逻辑里(比如Main的
on startup事件),确保模型运行前就完成绑定。之后如果要修改Schedule的时间点或容量,直接操作myDynamicSchedule对象即可,资源池会自动同步更新容量。
内容的提问来源于stack exchange,提问作者Yashar Ahmadov
相关产品推荐
相关产品推荐

