Class MaxFunctionEvaluations
java.lang.Object
org.moeaframework.core.termination.MaxFunctionEvaluations
- All Implemented Interfaces:
Named
,TerminationCondition
Terminates a run when the maximum number of function evaluations is exceeded.
-
Constructor Summary
ConstructorDescriptionMaxFunctionEvaluations
(int maxEvaluations) Constructs a new termination condition based on the maximum number of function evaluations. -
Method Summary
Modifier and TypeMethodDescriptionstatic int
derive
(TerminationCondition terminationCondition) Attempts to determine the maximum number of function evaluations that would execute given the termination condition.double
getPercentComplete
(Algorithm algorithm) Returns the percentage that this condition is complete, as a value between0.0
and100.0
.void
initialize
(Algorithm algorithm) Invoked when the algorithm is created to collect any initial conditions.boolean
shouldTerminate
(Algorithm algorithm) Invoked after every step to check if the algorithm should terminate.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.moeaframework.core.termination.TerminationCondition
getName
-
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
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 interfaceTerminationCondition
- Parameters:
algorithm
- the algorithm
-
shouldTerminate
Description copied from interface:TerminationCondition
Invoked after every step to check if the algorithm should terminate.- Specified by:
shouldTerminate
in interfaceTerminationCondition
- Parameters:
algorithm
- the algorithm- Returns:
true
if the algorithm should terminate;false
otherwise
-
getPercentComplete
Description copied from interface:TerminationCondition
Returns the percentage that this condition is complete, as a value between0.0
and100.0
. If the percentage can not be determined, returns 0d/0d.- Specified by:
getPercentComplete
in interfaceTerminationCondition
- Parameters:
algorithm
- the algorithm- Returns:
- the percentage completion
-
derive
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
-