我在OptaPlanner中有一个先前已解决的解决方案,并且我想从该解决方案中检索ScoreDirectorFactory,而无需运行该求解器。通过当前的API是否可以实现?
以下是我要实现的示例:
MyPlanningSolution mpe = getMySolution();
SolverFactory<MyPlanningSolution> solverFactory = SolverFactory.createFromXmlResource(CONFIG);
Solver<MyPlanningSolution> solver = solverFactory.buildSolver();
solver.setSolution(mpe);
ScoreDirectorFactory factory = solver.getScoreDirectorFactory();
我通过固定所有计划实体并将终止设置为0秒成功获得了ScoreDirectorFactory。对我来说,这似乎是绕道而行,因为我什么都不需要启动求解器。还有另一种方法吗?
答案 0 :(得分:1)
请参见https://issues.jboss.org/browse/PLANNER-1686
我们要添加SolverFactory.getScoreDirectorFactory()
并弃用Solver.getScoreDirectorFactory()
。