Function mutate
expects a control object, a list of individuals, and a mutation
probability. The mutation operator registered in the control object is then applied
with the given probability to each individual.
Function recombinate
expects a control object, a list of individuals as well as
their fitness matrix and creates lambda
offspring individuals by recombining parents
from inds
. Which parents take place in the parent selection depends on
the parent.selector
registered in the control object.
Finally, function generateOffspring
is a wrapper for both recombinate
and mutate
. Both functions are applied subsequently to generate new individuals
by variation and mutation.
generateOffspring(control, inds, fitness, lambda, p.recomb = 0.7, p.mut = 0.1)mutate(control, inds, p.mut = 0.1, slot = "mutate", ...)
recombinate(
control,
inds,
fitness,
lambda = length(inds),
p.recomb = 0.7,
slot = "recombine",
...
)
[list
] List of individuals.
[ecr_control
]
Control object.
[list
]
List of individuals.
[matrix
]
Matrix of fitness values (each column contains the fitness value(s) of one
individual).
[integer(1)
]
Number of individuals generated in each generation.
[numeric(1)
]
Probability of two parents to perform crossover.
Default is 0.7.
[numeric(1)
]
The probability that the mutation operator will be applied to a child.
Refers only to the application of the mutation operator, not to the
probability of mutating individual genes of the respective child.
Default is 0.1.
[character(1)
]
The slot of the control object which contains the registered operator to use.
Default is “mutate” for mutate
and “recombine” for recombinate
.
In most cases there is no need to change this. However, it might be useful if you make use
of different mutation operators registerted, e.g., in the slots “mutate1” and “mutate2”.
[any]
Furhter arguments passed down to recombinator/mutator.
There parameters will overwrite parameters in par.list
.