protected void runSolverPhases() {
Iterator<SolverPhase> it = solverPhaseList.iterator();
while (!termination.isSolverTerminated(solverScope) && it.hasNext()) {
SolverPhase solverPhase = it.next();
solverPhase.solve(solverScope);
}
// TODO support doing round-robin of phases (only non-construction heuristics)
}
public void solvingEnded(DefaultSolverScope solverScope) {