Selector
that disregards fitness and individual values and selects individuals by order in which they are given.
shuffle_selection
:: logical(1)
Whether to shuffle the selected output. When this is TRUE
, selected individuals are returned in random order, so when this
operator is e.g. used in mies_generate_offspring()
, then subsequent recombination operators effectively operate on pairs
(or larger groups) of random individuals. Otherwise they are returned in order, and recombination operates on the first
batch of n_indivs_in
returned individuals first, then the second batch etc. in order. Initialized to TRUE
(recommended).
This Selector
can be created with the short access form sel()
(sels()
to get a list), or through the the dictionary
dict_selectors
in the following way:
miesmuschel::MiesOperator
-> miesmuschel::Selector
-> SelectorNull
sn = sel("null")
p = ps(x = p_dbl(-5, 5))
# dummy data; note that SelectorNull does not depend on data content
data = data.frame(x = rep(0, 5))
fitnesses = c(1, 5, 2, 3, 0)
sn$prime(p)
sn$operate(data, fitnesses, 2)
#> [1] 1 2
sn$operate(data, fitnesses, 4)
#> [1] 1 2 3 4
sn$operate(data, fitnesses, 6)
#> [1] 2 1 3 5 4 1