【发布时间】:2015-04-02 09:54:44
【问题描述】:
我有点想知道如何实施重复计划。
文档分为3种情况。 “备份计划”、“持续计划”和“实时计划”。
如果我没有遗漏任何内容,所有 optaplanner 示例(例如护士烘焙)都使用“实时计划”下描述的“ProblemFactChange”实施重复计划。没关系。 Solver.addProblemFactChange() 将优雅地处理 ProblemFactChange。
但这听起来像是一种“实时规划”的方法。我们应该如何以更简单的方式实施“备份计划”/“持续计划”?
为了实现“15.2.备份计划”中的内容,
然后,当出现问题时(其中一名员工请病假), 更改原始解决方案的计划事实(删除病人 员工离开他/她的班次未分配),然后重新启动 计划,从具有不同分数的解决方案开始 现在。构建启发式将填补新创建的空白 (可能与备用员工)和元启发式甚至会 进一步改进。
我只是:
- 终止求解器
- 从求解器获取最佳解决方案
- 直接在 BestSolution 中编辑问题事实/计划实体(不关心 ScoreDirector)
- 使用编辑后的 BestSolution 再次运行求解器
这是一种有效的方法吗?
【问题讨论】:
标签: optaplanner