BruteForceSolutionIterator bruteForceSolutionIterator
= new BruteForceSolutionIterator(bruteForceSolverScope);
BruteForceStepScope bruteForceStepScope = createNextStepScope(bruteForceSolverScope, null);
for (; bruteForceSolutionIterator.hasNext(); bruteForceSolutionIterator.next()) {
Score score = bruteForceSolverScope.calculateScoreFromWorkingMemory();
bruteForceStepScope.setScore(score);
bestSolutionRecaller.stepTaken(bruteForceStepScope);
logger.debug("Step index ({}), time spend ({}), score ({}), {} best score ({}).",
new Object[]{bruteForceStepScope.getStepIndex(), bruteForceSolverScope.calculateTimeMillisSpend(),
bruteForceStepScope.getScore(), (bruteForceStepScope.getBestScoreImproved() ? "new" : " "),