OptaPlanner-以编程方式配置移动选择筛选器



是否有一种通过编程配置移动选择过滤器的方法?

https://www.optaplanner.org/docs/optaplanner/latest/move-and-neighborhood-selection/move-and-neighborhood-selection.html#filteredMoveSelection

我有一个SpringBoot应用程序,它以编程方式配置OP,例如设置终止配置。我想告诉OP使用移动选择过滤器,而不必使用上面文档中描述的XML文件。

提前谢谢。

解算器配置XML和SolverConfig之间存在直接的1对1映射。如果您已经可以设置终止配置,则可以设置其他任何内容。

具体来说,从解算器配置中,可以访问阶段配置列表。在那里,找到本地搜索阶段配置。最后,在那里,找到要筛选的选择器,并设置筛选器。

默认情况下,阶段配置列表可能为空。OptaPlanner通常会在运行时自动添加构造启发式和本地搜索。如果是这种情况,则需要将这些阶段明确添加到配置列表中,包括选择器配置。

正如您自己在上面的评论中指出的那样,这个答案可能会为您提供一切,包括一个代码示例。

最新更新