Class DefaultExhaustiveSearchPhase<Solution_>
java.lang.Object
ai.timefold.solver.core.impl.phase.AbstractPhase<Solution_>
ai.timefold.solver.core.impl.exhaustivesearch.DefaultExhaustiveSearchPhase<Solution_>
- Type Parameters:
Solution_- the solution type, the class with thePlanningSolutionannotation
- All Implemented Interfaces:
ExhaustiveSearchPhase<Solution_>,PhaseLifecycleListener<Solution_>,Phase<Solution_>,SolverLifecycleListener<Solution_>,EventListener
public class DefaultExhaustiveSearchPhase<Solution_>
extends AbstractPhase<Solution_>
implements ExhaustiveSearchPhase<Solution_>
Default implementation of
ExhaustiveSearchPhase.-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class ai.timefold.solver.core.impl.phase.AbstractPhase
AbstractPhase.AbstractPhaseBuilder<Solution_> -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final booleanprotected final booleanprotected final ExhaustiveSearchDecider<Solution_>protected final EntitySelector<Solution_>protected final Comparator<ExhaustiveSearchNode>Fields inherited from class ai.timefold.solver.core.impl.phase.AbstractPhase
assertExpectedStepScore, assertPhaseScoreFromScratch, assertShadowVariablesAreNotStaleAfterStep, assertStepScoreFromScratch, logger, logIndentation, phaseIndex, phaseLifecycleSupport, phaseTermination -
Method Summary
Modifier and TypeMethodDescriptionvoidphaseEnded(ExhaustiveSearchPhaseScope<Solution_> phaseScope) voidphaseStarted(ExhaustiveSearchPhaseScope<Solution_> phaseScope) protected <Score_ extends Score<Score_>>
voidrestoreWorkingSolution(ExhaustiveSearchStepScope<Solution_> stepScope) voidsolve(SolverScope<Solution_> solverScope) voidsolvingEnded(SolverScope<Solution_> solverScope) voidsolvingStarted(SolverScope<Solution_> solverScope) voidstepEnded(ExhaustiveSearchStepScope<Solution_> stepScope) voidstepStarted(ExhaustiveSearchStepScope<Solution_> stepScope) Methods inherited from class ai.timefold.solver.core.impl.phase.AbstractPhase
addPhaseLifecycleListener, assertWorkingSolutionInitialized, calculateWorkingStepScore, getPhaseIndex, getPhaseTermination, isAssertExpectedStepScore, isAssertShadowVariablesAreNotStaleAfterStep, isAssertStepScoreFromScratch, isNested, phaseEnded, phaseStarted, predictWorkingStepScore, removePhaseLifecycleListener, stepEnded, stepStartedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ai.timefold.solver.core.impl.phase.Phase
addPhaseLifecycleListener, removePhaseLifecycleListenerMethods inherited from interface ai.timefold.solver.core.impl.phase.event.PhaseLifecycleListener
phaseEnded, phaseStarted, stepEnded, stepStartedMethods inherited from interface ai.timefold.solver.core.impl.solver.event.SolverLifecycleListener
solvingError
-
Field Details
-
nodeComparator
-
entitySelector
-
decider
-
assertWorkingSolutionScoreFromScratch
protected final boolean assertWorkingSolutionScoreFromScratch -
assertExpectedWorkingSolutionScore
protected final boolean assertExpectedWorkingSolutionScore
-
-
Method Details
-
getPhaseTypeString
- Specified by:
getPhaseTypeStringin classAbstractPhase<Solution_>
-
solve
-
solvingStarted
- Specified by:
solvingStartedin interfaceSolverLifecycleListener<Solution_>- Overrides:
solvingStartedin classAbstractPhase<Solution_>
-
phaseStarted
-
stepStarted
-
restoreWorkingSolution
protected <Score_ extends Score<Score_>> void restoreWorkingSolution(ExhaustiveSearchStepScope<Solution_> stepScope) -
stepEnded
-
phaseEnded
-
solvingEnded
- Specified by:
solvingEndedin interfaceSolverLifecycleListener<Solution_>- Overrides:
solvingEndedin classAbstractPhase<Solution_>
-