Class FixedElapsedTime
java.lang.Object
org.apache.commons.math3.genetics.FixedElapsedTime
- All Implemented Interfaces:
StoppingCondition
Stops after a fixed amount of time has elapsed.
The first time isSatisfied(Population)
is invoked, the end time of the evolution is determined based on the
provided maxTime
value. Once the elapsed time reaches the configured maxTime
value,
isSatisfied(Population)
returns true.
- Since:
- 3.1
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate long
The predetermined termination time (stopping condition).private final long
Maximum allowed time period (in nanoseconds). -
Constructor Summary
ConstructorsConstructorDescriptionFixedElapsedTime
(long maxTime) Create a newFixedElapsedTime
instance.FixedElapsedTime
(long maxTime, TimeUnit unit) Create a newFixedElapsedTime
instance. -
Method Summary
Modifier and TypeMethodDescriptionboolean
isSatisfied
(Population population) Determine whether or not the maximum allowed time has passed.
-
Field Details
-
maxTimePeriod
private final long maxTimePeriodMaximum allowed time period (in nanoseconds). -
endTime
private long endTimeThe predetermined termination time (stopping condition).
-
-
Constructor Details
-
FixedElapsedTime
Create a newFixedElapsedTime
instance.- Parameters:
maxTime
- maximum number of seconds generations are allowed to evolve- Throws:
NumberIsTooSmallException
- if the provided time is < 0
-
FixedElapsedTime
Create a newFixedElapsedTime
instance.- Parameters:
maxTime
- maximum time generations are allowed to evolveunit
-TimeUnit
of the maxTime argument- Throws:
NumberIsTooSmallException
- if the provided time is < 0
-
-
Method Details
-
isSatisfied
Determine whether or not the maximum allowed time has passed. The termination time is determined after the first generation.- Specified by:
isSatisfied
in interfaceStoppingCondition
- Parameters:
population
- ignored (no impact on result)- Returns:
true
IFF the maximum allowed time period has elapsed
-