Bounded exponential crossover (BEX)#

bounded_exponential_crossover() moves each offspring away from its parent by a random step that follows an exponential distribution truncated at the bounds.

KS test results#

moocore

desdeo

moocore

0.199

desdeo

0.199

Both implementations produce the same distribution of offspring.

Performance over number of parents#

../../_images/crossover_bench-bounded_exponential-nparents-time.png

DESDEO takes 20 times as long as moocore with 10 parents, and 1.2 times as long with 10 000 parents.

Performance over number of variables#

../../_images/crossover_bench-bounded_exponential-nvars-time.png

DESDEO takes 3.7 to 15 times as long as moocore.