"Double Geometric" mutation operator for integer parameters: with
probability p a random geometrically distributed value is added,
and another (different) one subtracted.
mutDoubleGeomScaled scales sdev with each component's range and then uses
geomp = (sqrt(2 * sdev^2 + 1) - 1) / sdev^2.
mutDoubleGeom(ind, p = 1, geomp = 0.9, lower, upper)mutDoubleGeomScaled(ind, p = 1, sdev = 0.05, lower, upper)
[integer]
[integer] individual to mutate.
[numeric(1)] per-entry probability to perform mutation.
[numeric] geometric distribution parameter.
[integer] lower bounds of ind values. May have same length as
ind or may be a single number, if the lower bounds are the same for all
values.
[integer] upper bounds of ind values. May have same length as
ind or may be a single number, if the upper bounds are the same for all
values.
[numeric] standard deviation, relative to upper - lower.
Other operators:
mutGaussIntScaled(),
mutGaussInt(),
mutGaussScaled(),
mutPolynomialInt(),
mutRandomChoice(),
mutUniformInt(),
recGaussian(),
recIntIntermediate(),
recIntSBX()