Class TerminateByDistancePercBest
java.lang.Object
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminationCriterionBase
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminateByDistancePercBest
- All Implemented Interfaces:
TerminationCriterion
Distance-based termination criterion:
Termination is triggered when the relative distance between the cost of the best plan
in the current generation and in the previous generation has not exceeded
a specified distance threshold for a number of generations.
-
Field Summary
Fields inherited from class se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminationCriterionBase
nrGenerations
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic TerminationCriterionFactory
getFactory
(double percBestThreshold) boolean
readyToTerminate
(Generation currentGeneration, List<Generation> allPreviousGenerations) Returns true if this termination criterion has been reached with the current generation.Methods inherited from class se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminationCriterionBase
calcFactorial, countNumOfOps
-
Field Details
-
percBestThreshold
protected final double percBestThreshold
-
-
Constructor Details
-
TerminateByDistancePercBest
-
-
Method Details
-
getFactory
-
readyToTerminate
public boolean readyToTerminate(Generation currentGeneration, List<Generation> allPreviousGenerations) Description copied from interface:TerminationCriterion
Returns true if this termination criterion has been reached with the current generation.- Parameters:
currentGeneration
- the current generation for which the termination criterion is testallPreviousGenerations
- a list of all previous generations, in the order in which they have been created
-