ec.select
Class FirstSelection
java.lang.Object
|
+--ec.BreedingSource
|
+--ec.SelectionMethod
|
+--ec.select.FirstSelection
- All Implemented Interfaces:
- java.lang.Cloneable, Prototype, RandomChoiceChooser, java.io.Serializable, Setup, SteadyStateBSourceForm
- public class FirstSelection
- extends SelectionMethod
- implements SteadyStateBSourceForm
Always picks the first individual in the subpopulation. This is mostly
for testing purposes.
Default Base
select.first
- See Also:
- Serialized Form
Field Summary |
static java.lang.String |
P_FIRST
default base |
Method Summary |
Parameter |
defaultBase()
Returns the default base for this prototype. |
void |
individualReplaced(SteadyStateEvolutionState state,
int subpopulation,
int thread,
int individual)
Called whenever an individual has been replaced by another
in the population. |
int |
produce(int subpopulation,
EvolutionState state,
int thread)
An alternative form of "produce" special to Selection Methods;
selects an individual from the given subpopulation and
returns its position in that subpopulation. |
int |
produce(int min,
int max,
int start,
int subpopulation,
Individual[] inds,
EvolutionState state,
int thread)
Produces n individuals from the given subpopulation
and puts them into inds[start...start+n-1],
where n = Min(Max(q,min),max), where q is the "typical" number of
individuals the BreedingSource produces in one shot, and returns
n. |
void |
sourcesAreProperForm(SteadyStateEvolutionState state)
Issue an error (not a fatal -- we guarantee that callers
of this method will also call exitIfErrors) if any
of your sources, or their sources, etc., are not
of SteadyStateBSourceForm. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
P_FIRST
public static final java.lang.String P_FIRST
- default base
FirstSelection
public FirstSelection()
defaultBase
public Parameter defaultBase()
- Description copied from interface:
Prototype
- Returns the default base for this prototype.
This should generally be implemented by building off of the static base()
method on the DefaultsForm object for the prototype's package. This should
be callable during setup(...).
produce
public int produce(int subpopulation,
EvolutionState state,
int thread)
- Description copied from class:
SelectionMethod
- An alternative form of "produce" special to Selection Methods;
selects an individual from the given subpopulation and
returns its position in that subpopulation.
- Overrides:
produce
in class SelectionMethod
produce
public int produce(int min,
int max,
int start,
int subpopulation,
Individual[] inds,
EvolutionState state,
int thread)
throws java.lang.CloneNotSupportedException
- Description copied from class:
BreedingSource
- Produces n individuals from the given subpopulation
and puts them into inds[start...start+n-1],
where n = Min(Max(q,min),max), where q is the "typical" number of
individuals the BreedingSource produces in one shot, and returns
n. max must be >= min, and min must be >= 1. For example, crossover
might typically produce two individuals, tournament selection might typically
produce a single individual, etc.
- Overrides:
produce
in class SelectionMethod
individualReplaced
public void individualReplaced(SteadyStateEvolutionState state,
int subpopulation,
int thread,
int individual)
- Description copied from interface:
SteadyStateBSourceForm
- Called whenever an individual has been replaced by another
in the population.
- Specified by:
individualReplaced
in interface SteadyStateBSourceForm
sourcesAreProperForm
public void sourcesAreProperForm(SteadyStateEvolutionState state)
- Description copied from interface:
SteadyStateBSourceForm
- Issue an error (not a fatal -- we guarantee that callers
of this method will also call exitIfErrors) if any
of your sources, or their sources, etc., are not
of SteadyStateBSourceForm.
- Specified by:
sourcesAreProperForm
in interface SteadyStateBSourceForm