Class OrCompositeTermination<Solution_>
- java.lang.Object
-
- org.optaplanner.core.impl.solver.event.SolverLifecycleListenerAdapter<Solution_>
-
- org.optaplanner.core.impl.phase.event.PhaseLifecycleListenerAdapter<Solution_>
-
- org.optaplanner.core.impl.solver.termination.AbstractTermination<Solution_>
-
- org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination<Solution_>
-
- org.optaplanner.core.impl.solver.termination.OrCompositeTermination<Solution_>
-
- All Implemented Interfaces:
EventListener,PhaseLifecycleListener<Solution_>,SolverLifecycleListener<Solution_>,Termination<Solution_>
public class OrCompositeTermination<Solution_> extends AbstractCompositeTermination<Solution_>
-
-
Field Summary
-
Fields inherited from class org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
terminationList
-
Fields inherited from class org.optaplanner.core.impl.solver.termination.AbstractTermination
logger
-
-
Constructor Summary
Constructors Constructor Description OrCompositeTermination(List<Termination<Solution_>> terminationList)OrCompositeTermination(Termination<Solution_>... terminations)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublecalculatePhaseTimeGradient(AbstractPhaseScope<Solution_> phaseScope)Calculates the maximum timeGradient of all Terminations.doublecalculateSolverTimeGradient(SolverScope<Solution_> solverScope)Calculates the maximum timeGradient of all Terminations.OrCompositeTermination<Solution_>createChildThreadTermination(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)booleanisPhaseTerminated(AbstractPhaseScope<Solution_> phaseScope)Called by thePhaseafter every step and every move to determine if the search should stop.booleanisSolverTerminated(SolverScope<Solution_> solverScope)Called by theSolverafter every phase to determine if the search should stop.StringtoString()-
Methods inherited from class org.optaplanner.core.impl.solver.termination.AbstractCompositeTermination
createChildThreadTerminationList, phaseEnded, phaseStarted, solvingEnded, solvingStarted, stepEnded, stepStarted
-
-
-
-
Constructor Detail
-
OrCompositeTermination
public OrCompositeTermination(List<Termination<Solution_>> terminationList)
-
OrCompositeTermination
public OrCompositeTermination(Termination<Solution_>... terminations)
-
-
Method Detail
-
isSolverTerminated
public boolean isSolverTerminated(SolverScope<Solution_> solverScope)
Description copied from interface:TerminationCalled by theSolverafter every phase to determine if the search should stop.- Parameters:
solverScope- never null- Returns:
- true if any of the Termination is terminated.
-
isPhaseTerminated
public boolean isPhaseTerminated(AbstractPhaseScope<Solution_> phaseScope)
Description copied from interface:TerminationCalled by thePhaseafter every step and every move to determine if the search should stop.- Parameters:
phaseScope- never null- Returns:
- true if any of the Termination is terminated.
-
calculateSolverTimeGradient
public double calculateSolverTimeGradient(SolverScope<Solution_> solverScope)
Calculates the maximum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
solverScope- never null- Returns:
- the maximum timeGradient of the Terminations.
-
calculatePhaseTimeGradient
public double calculatePhaseTimeGradient(AbstractPhaseScope<Solution_> phaseScope)
Calculates the maximum timeGradient of all Terminations. Not supported timeGradients (-1.0) are ignored.- Parameters:
phaseScope- never null- Returns:
- the maximum timeGradient of the Terminations.
-
createChildThreadTermination
public OrCompositeTermination<Solution_> createChildThreadTermination(SolverScope<Solution_> solverScope, ChildThreadType childThreadType)
Description copied from interface:Termination- Specified by:
createChildThreadTerminationin interfaceTermination<Solution_>- Overrides:
createChildThreadTerminationin classAbstractTermination<Solution_>- Parameters:
solverScope- never nullchildThreadType- never null- Returns:
- not null
-
-