extraProblems.length + (inputSolutionFileList == null ? 0 : inputSolutionFileList.size())); SolutionDescriptor<Solution_> solutionDescriptor = solverBenchmarkResult.getSolverConfig() .buildSolutionDescriptor(solverConfigContext); int extraProblemIndex = 0; for (Solution_ extraProblem : extraProblems) {
private void restoreOtherOmittedFields(SolverConfigContext configContext, PlannerBenchmarkResult plannerBenchmarkResult) { for (SolverBenchmarkResult solverBenchmarkResult : plannerBenchmarkResult.getSolverBenchmarkResultList()) { SolverConfig solverConfig = solverBenchmarkResult.getSolverConfig(); solverBenchmarkResult.setScoreDefinition( solverConfig.buildSolutionDescriptor(configContext).getScoreDefinition()); } }
public void buildSolverBenchmark(SolverConfigContext solverConfigContext, PlannerBenchmarkResult plannerBenchmark, Solution_[] extraProblems) { validate(); SolverBenchmarkResult solverBenchmarkResult = new SolverBenchmarkResult(plannerBenchmark); solverBenchmarkResult.setName(name); solverBenchmarkResult.setSubSingleCount(ConfigUtils.inheritOverwritableProperty(subSingleCount, 1)); solverBenchmarkResult.setSolverConfig(solverConfig); SolutionDescriptor<Object> solutionDescriptor = solverConfig.buildSolutionDescriptor(solverConfigContext); for (Solution_ extraProblem : extraProblems) { if (!solutionDescriptor.getSolutionClass().isInstance(extraProblem)) { throw new IllegalArgumentException("The solverBenchmark name (" + name + ") for solution class (" + solutionDescriptor.getSolutionClass() + ") cannot solve a problem (" + extraProblem + ") of class (" + (extraProblem == null ? null : extraProblem.getClass()) + ")."); } } solverBenchmarkResult.setScoreDefinition( solutionDescriptor.getScoreDefinition()); solverBenchmarkResult.setSingleBenchmarkResultList(new ArrayList<>()); ProblemBenchmarksConfig problemBenchmarksConfig_ = problemBenchmarksConfig == null ? new ProblemBenchmarksConfig() : problemBenchmarksConfig; plannerBenchmark.getSolverBenchmarkResultList().add(solverBenchmarkResult); problemBenchmarksConfig_.buildProblemBenchmarkList(solverConfigContext, solverBenchmarkResult, extraProblems); }
SolutionDescriptor<Solution_> solutionDescriptor = buildSolutionDescriptor(configContext); ScoreDirectorFactoryConfig scoreDirectorFactoryConfig_ = scoreDirectorFactoryConfig == null ? new ScoreDirectorFactoryConfig()