recSBX function

Simulated Binary Crossover (SBX) recombinator.

Simulated Binary Crossover (SBX) recombinator.

The Simulated Binary Crossover was first proposed by [1]. It i suited for float representation only and creates two offspring. Given parents p1,p2p_1, p_2

the offspring are generated as c1/2=xˉ±12β(p2p1)c_{1/2} = \bar{x} \pm \frac{1}{2}\beta(p_2 - p_1)

where xˉ=12(p1+p2),p2>p1\bar{x} = \frac{1}{2}(p_1 + p_2), p_2 > p_1. This way cˉ=xˉ\bar{c} = \bar{x}

is assured.

recSBX(inds, eta = 5, p = 1, lower, upper)

Arguments

  • inds: [numeric]

    Parents, i.e., list of exactly two numeric vectors of equal length.

  • eta: [numeric(1)]

    Parameter eta, i.e., the distance parameters of the crossover distribution.

  • p: [numeric(1)]

    Crossover probability for each gene. Default is 1.0.

  • lower: [numeric]

    Vector of minimal values for each parameter of the decision space.

  • upper: [numeric]

    Vector of maximal values for each parameter of the decision space.

Returns

[ecr_recombinator]

Note

This is the default recombination operator used in the NSGA-II EMOA (see nsga2).

References

[1] Deb, K. and Agrawal, R. B. (1995). Simulated binary crossover for continuous search space. Complex Systems 9(2), 115-148.

See Also

Other recombinators: recCrossover(), recIntermediate(), recOX(), recPMX(), recUnifCrossover()

  • Maintainer: Jakob Bossek
  • License: GPL-3
  • Last published: 2023-03-08