【发布时间】:2020-08-11 10:54:27
【问题描述】:
我正在使用 OptaPlanner 解决规划问题。配置求解器后,我调用 solve() 方法并等待它产生解决方案。问题是,如果我想将求解器方法创建的几个最佳解决方案相互比较并选择其中之一,该怎么办。可能吗? 我想通过比较最后两个解决方案并查看它们之间的差异来设置终止条件。这就是为什么我要实现这一点。 提前谢谢你。
【问题讨论】:
标签: optaplanner vehicle-routing
我正在使用 OptaPlanner 解决规划问题。配置求解器后,我调用 solve() 方法并等待它产生解决方案。问题是,如果我想将求解器方法创建的几个最佳解决方案相互比较并选择其中之一,该怎么办。可能吗? 我想通过比较最后两个解决方案并查看它们之间的差异来设置终止条件。这就是为什么我要实现这一点。 提前谢谢你。
【问题讨论】:
标签: optaplanner vehicle-routing
简单的答案:将SolverEventListener 添加到Solver 并收听bestSolutionChanged() 事件以记住它们。这对大多数用户来说已经足够了。
难题的答案:请参阅 optaplanner 文档中的“帕累托优化”。 尚不支持开箱即用,但有几个用户通过破解 BestSolutionRecaller 自行添加。
【讨论】: