Usage
makeAgeFitnessComplexityParetoGpSearchHeuristic(lambda = 50, crossoverProbability = 0.5, enableComplexityCriterion = TRUE, enableAgeCriterion = FALSE, ndsParentSelectionProbability = 0, ndsSelectionFunction = nds_cd_selection, complexityMeasure = function(ind, fitness) fastFuncVisitationLength(ind), ageMergeFunction = max, newIndividualsPerGeneration = if (enableAgeCriterion) 50 else 0, newIndividualsMaxDepth = 8, newIndividualFactory = makePopulation)
Arguments
lambda
The number of children to create in each generation (50
by default).
crossoverProbability
The crossover probability for search-heuristics that support
this setting (i.e. TinyGP). Defaults to 0.5
.
enableComplexityCriterion
Whether to enable the complexity criterion in multi-criterial
search heuristics.
enableAgeCriterion
Whether to enable the age criterion in multi-criterial search heuristics.
ndsParentSelectionProbability
The probability to use non-dominated sorting to select parents
for each generation. When set to 0.0
, parents are selected by uniform random
sampling without replacement every time. Defaults to 1.0
.
ndsSelectionFunction
The function to use for non-dominated sorting in Pareto GP selection.
Defaults to nds_cd_selection
.
complexityMeasure
The complexity measure, a function of signature function(ind, fitness)
returning a single numeric value.
ageMergeFunction
The function used for merging ages of crossover children, defaults
to max
.
newIndividualsPerGeneration
The number of new individuals per generation to
insert into the population. Defaults to 50
if enableAgeCriterion == TRUE
else to 0
.
newIndividualsMaxDepth
The maximum depth of new individuals inserted into the
population.
newIndividualFactory
The factory function for creating new individuals. Defaults
to makePopulation
.