public class ProportionalTournamentSelection extends TournamentSelection
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?) |
| base.fitness-prob double >= 0 and <= 1 |
(the probability of comparing individuals based on fitness, rather than size) |
Default Base
select.proportional-tournament
| Modifier and Type | Field and Description |
|---|---|
double |
fitnessPressureProb
The probability of having the tournament based on fitness
|
static String |
P_PROBABILITY
The parameter for the probability of having the tournament based on fitness
|
static String |
P_PROPORTIONAL_TOURNAMENT
default base
|
P_PICKWORST, P_SIZE, P_TOURNAMENT, pickWorst, probabilityOfPickingSizePlusOneINDS_PRODUCEDNO_PROBABILITY, P_PROB, probability| Constructor and Description |
|---|
ProportionalTournamentSelection() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
betterThan(Individual first,
Individual second,
int subpopulation,
EvolutionState state,
int thread)
Returns true if *first* is a better (fitter, whatever) individual than *second*.
|
Parameter |
defaultBase()
Returns the default base for this prototype.
|
void |
setup(EvolutionState state,
Parameter base)
Sets up the BreedingPipeline.
|
getRandomIndividual, getTournamentSizeToUse, individualReplaced, produce, sourcesAreProperFormfinishProducing, prepareToProduce, produce, produces, typicalIndsProducedclone, getProbability, pickRandom, preparePipeline, setProbability, setupProbabilitiespublic static final String P_PROPORTIONAL_TOURNAMENT
public static final String P_PROBABILITY
public double fitnessPressureProb
public Parameter defaultBase()
PrototypedefaultBase in interface PrototypedefaultBase in class TournamentSelectionpublic void setup(EvolutionState state, Parameter base)
BreedingSourceThe 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 interface Prototypesetup in interface Setupsetup in class TournamentSelectionPrototype.setup(EvolutionState,Parameter)public boolean betterThan(Individual first, Individual second, int subpopulation, EvolutionState state, int thread)
TournamentSelectionbetterThan in class TournamentSelectionCopyright © 2014 Evolutionary Computation Laboratory at George Mason University. All rights reserved.