|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ec.BreedingSource | +--ec.SelectionMethod | +--ec.parsimony.LexicographicTournament
Does a simple tournament selection, limited to the subpopulation it's working in at the time.
Tournament selection works like this: first, size individuals are chosen at random from the population. Then of those individuals, the one with the best fitness is selected. If two individuals have the same fitness, the one with smaller size is prefered. The default tournament size is 7.
Typical Number of Individuals Produced Per produce(...) call
Always 1.
Parameters
base.size int >= 1 |
(the tournament size) |
base.pick-worst bool = true or false (default) |
(should we pick the worst individual in the tournament instead of the best?) |
Default Base
select.lexicographic-tournament
Field Summary | |
static int |
DEFAULT_SIZE
Default size |
static java.lang.String |
P_PICKWORST
|
static java.lang.String |
P_SIZE
size parameter |
static java.lang.String |
P_TOURNAMENT
default base |
boolean |
pickWorst
Do we pick the worst instead of the best? |
int |
size
Size of the tournament |
Fields inherited from class ec.SelectionMethod |
INDS_PRODUCED |
Fields inherited from class ec.BreedingSource |
CHECKBOUNDARY, DEFAULT_PRODUCED, NO_PROBABILITY, P_PROB, probability, UNUSED |
Constructor Summary | |
LexicographicTournament()
|
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. |
void |
setup(EvolutionState state,
Parameter base)
Sets up the BreedingPipeline. |
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 ec.SelectionMethod |
finishProducing, preparePipeline, prepareToProduce, produce, produces, typicalIndsProduced |
Methods inherited from class ec.BreedingSource |
getProbability, pickRandom, protoClone, protoCloneSimple, setProbability, setupProbabilities |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final java.lang.String P_TOURNAMENT
public static final java.lang.String P_PICKWORST
public static final java.lang.String P_SIZE
public static final int DEFAULT_SIZE
public int size
public boolean pickWorst
Constructor Detail |
public LexicographicTournament()
Method Detail |
public Parameter defaultBase()
Prototype
public void setup(EvolutionState state, Parameter base)
BreedingSource
The most common modification is to normalize it with some other set of probabilities, then set all of them up in increasing summation; this allows the use of the fast static BreedingSource-picking utility method, BreedingSource.pickRandom(...). In order to use this method, for example, if four breeding source probabilities are {0.3, 0.2, 0.1, 0.4}, then they should get normalized and summed by the outside owners as: {0.3, 0.5, 0.6, 1.0}.
setup
in class BreedingSource
ec.BreedingSource
Prototype.setup(EvolutionState,Parameter)
public int produce(int subpopulation, EvolutionState state, int thread)
SelectionMethod
produce
in class SelectionMethod
public void individualReplaced(SteadyStateEvolutionState state, int subpopulation, int thread, int individual)
SteadyStateBSourceForm
individualReplaced
in interface SteadyStateBSourceForm
public void sourcesAreProperForm(SteadyStateEvolutionState state)
SteadyStateBSourceForm
sourcesAreProperForm
in interface SteadyStateBSourceForm
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |