java.lang.Object
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminationCriterionBase
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.evolutionaryAlgorithm.TerminateByDiversityDistMax
All Implemented Interfaces:
TerminationCriterion

public class TerminateByDiversityDistMax extends TerminationCriterionBase
Diversity-based termination criterion: Termination is triggered when the relative difference between the cost of the best plan and the worst plan within each generation has not exceeded a specified distance threshold for a number of generations.
  • Field Details

    • distMaxThreshold

      protected final double distMaxThreshold
  • Constructor Details

    • TerminateByDiversityDistMax

      public TerminateByDiversityDistMax(double distMaxThreshold, LogicalPlan plan)
  • Method Details

    • getFactory

      public static TerminationCriterionFactory getFactory(double distMaxThreshold)
    • 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 test
      allPreviousGenerations - a list of all previous generations, in the order in which they have been created