Class MaxFunctionEvaluations

java.lang.Object
org.moeaframework.core.termination.MaxFunctionEvaluations
All Implemented Interfaces:
Named, TerminationCondition

public class MaxFunctionEvaluations extends Object implements TerminationCondition
Terminates a run when the maximum number of function evaluations is exceeded.
  • Constructor Details

    • MaxFunctionEvaluations

      public MaxFunctionEvaluations(int maxEvaluations)
      Constructs a new termination condition based on the maximum number of function evaluations.
      Parameters:
      maxEvaluations - the maximum number of function evaluations
  • Method Details

    • initialize

      public void initialize(Algorithm algorithm)
      Description copied from interface: TerminationCondition
      Invoked when the algorithm is created to collect any initial conditions. Note that the algorithm may not have been initialized at this point.
      Specified by:
      initialize in interface TerminationCondition
      Parameters:
      algorithm - the algorithm
    • shouldTerminate

      public boolean shouldTerminate(Algorithm algorithm)
      Description copied from interface: TerminationCondition
      Invoked after every step to check if the algorithm should terminate.
      Specified by:
      shouldTerminate in interface TerminationCondition
      Parameters:
      algorithm - the algorithm
      Returns:
      true if the algorithm should terminate; false otherwise
    • getPercentComplete

      public double getPercentComplete(Algorithm algorithm)
      Description copied from interface: TerminationCondition
      Returns the percentage that this condition is complete, as a value between 0.0 and 100.0. If the percentage can not be determined, returns 0d/0d.
      Specified by:
      getPercentComplete in interface TerminationCondition
      Parameters:
      algorithm - the algorithm
      Returns:
      the percentage completion
    • derive

      public static int derive(TerminationCondition terminationCondition)
      Attempts to determine the maximum number of function evaluations that would execute given the termination condition.
      Parameters:
      terminationCondition - the termination condition
      Returns:
      the max number of function evaluations, or -1 if the value could not be derived