| dict_recombinators_sbx | R Documentation |
Numeric Values between two individuals are recombined via component-wise independent simulated binary crossover. See Deb (1995) for more details.
This operator is applied to all components; It is common to apply the operator to only some randomly
chosen components, in which case the rec("cmpmaybe") operator should
be used; see examples.
n :: numeric
Non-negative distribution index of the polynomial distribution for each component.
Generally spoken, the higher n, the higher the probability of creating near parent values.
This may either be a scalar in which case it is applied to all input components, or a vector,
in which case it must have the length of the input components and applies to components in
order in which they appear in the priming ParamSet. Initialized to 1.
Supported Domain classes are: p_int ('ParamInt'), p_dbl ('ParamDbl')
This Recombinator can be created with the short access form rec()
(recs() to get a list), or through the the dictionary
dict_recombinators in the following way:
# preferred:
rec("sbx")
recs("sbx") # takes vector IDs, returns list of Recombinators
# long form:
dict_recombinators$get("sbx")
miesmuschel::MiesOperator -> miesmuschel::Recombinator -> miesmuschel::RecombinatorPair -> RecombinatorSimulatedBinaryCrossover
new()Initialize the RecombinatorSimulatedBinaryCrossover object.
RecombinatorSimulatedBinaryCrossover$new(keep_complement = TRUE)
keep_complement(logical(1))
Whether the operation should keep both resulting individuals (TRUE), or only the first and discard
the complement (FALSE). Default TRUE.
The $keep_complement field will reflect this value.
clone()The objects of this class are cloneable with this method.
RecombinatorSimulatedBinaryCrossover$clone(deep = FALSE)
deepWhether to make a deep clone.
Deb, Kalyanmoy, Agrawal, Bhushan R, others (1995). “Simulated binary crossover for continuous search space.” Complex systems, 9(2), 115–148.
Other recombinators:
OperatorCombination,
Recombinator,
RecombinatorPair,
dict_recombinators_cmpmaybe,
dict_recombinators_convex,
dict_recombinators_cvxpair,
dict_recombinators_maybe,
dict_recombinators_null,
dict_recombinators_proxy,
dict_recombinators_sequential,
dict_recombinators_swap,
dict_recombinators_xonary,
dict_recombinators_xounif
set.seed(1)
rsbx = rec("cmpmaybe", rec("sbx"), p = 0.5)
p = ps(x = p_dbl(-5, 5), y = p_dbl(-5, 5), z = p_dbl(-5, 5))
data = data.frame(x = 0:5, y = 0:5, z = 0:5)
rsbx$prime(p)
rsbx$operate(data)
rsbx = rec("sbx", n = c(0.5, 1, 10))
rsbx$prime(p)
rsbx$operate(data)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.