Optaplanner 和 Quarkus 求解器配置更新
Optaplanner and Quarkus solver config update
我正在使用 quarkus 和 optaplanner 开发一个项目,我正在尝试访问和修改求解器的配置,以添加启发式算法、更改搜索算法等。
我正在使用 solverJob 和 solverManager,而 quarkus 似乎对我隐藏了求解器的配置。我基本上遵循 Quarkus 教程 (https://quarkus.io/guides/optaplanner) 的步骤。
public PlannerSolution solve() {
UUID problemId = UUID.randomUUID();
SolverJob<PlannerSolution, UUID> solverJob;
solverJob = solverManager.solve(problemId, problem);
PlannerSolution solution;
try {
// Wait until the solving ends
System.out.println("Waiting................");
solution = solverJob.getFinalBestSolution();
System.out.println("Done");
} catch (InterruptedException | ExecutionException e) {
throw new IllegalStateException("Solving failed.", e);
}
return solution;
}
我也在使用 constraintProvider API。
有没有办法让我访问和修改 quarkus 自动生成的配置?我尝试了使用 solverFactory 和 xml conf 文件的基本方法,但 quarkus 对此一点都不满意。
提前致谢!
要更改默认求解器配置,请在项目的类路径中创建 XML 配置文件。 optaplanner-quarkus 扩展默认尝试读取 solverConfig.xml
。在项目中,它应该位于:
.../src/main/resources/solverConfig.xml
配置文件的默认位置可以被application.properties
中的属性quarkus.optaplanner.solver-config-xml
覆盖。
我正在使用 quarkus 和 optaplanner 开发一个项目,我正在尝试访问和修改求解器的配置,以添加启发式算法、更改搜索算法等。
我正在使用 solverJob 和 solverManager,而 quarkus 似乎对我隐藏了求解器的配置。我基本上遵循 Quarkus 教程 (https://quarkus.io/guides/optaplanner) 的步骤。
public PlannerSolution solve() {
UUID problemId = UUID.randomUUID();
SolverJob<PlannerSolution, UUID> solverJob;
solverJob = solverManager.solve(problemId, problem);
PlannerSolution solution;
try {
// Wait until the solving ends
System.out.println("Waiting................");
solution = solverJob.getFinalBestSolution();
System.out.println("Done");
} catch (InterruptedException | ExecutionException e) {
throw new IllegalStateException("Solving failed.", e);
}
return solution;
}
我也在使用 constraintProvider API。 有没有办法让我访问和修改 quarkus 自动生成的配置?我尝试了使用 solverFactory 和 xml conf 文件的基本方法,但 quarkus 对此一点都不满意。
提前致谢!
要更改默认求解器配置,请在项目的类路径中创建 XML 配置文件。 optaplanner-quarkus 扩展默认尝试读取 solverConfig.xml
。在项目中,它应该位于:
.../src/main/resources/solverConfig.xml
配置文件的默认位置可以被application.properties
中的属性quarkus.optaplanner.solver-config-xml
覆盖。