@cardano moo1.2.0.0.0.0.1

Genetic algorithm library

Moo library provides building blocks to build custom genetic algorithms in Haskell. They can be used to find solutions to optimization and search problems.

Variants supported out of the box: binary (using bit-strings) and continuous (real-coded). Potentially supported variants: permutation, tree, hybrid encodings (require customizations).

Binary GAs: binary and Gray encoding; point mutation; one-point, two-point, and uniform crossover. Continuous GAs: Gaussian mutation; BLX-α, UNDX, and SBX crossover. Selection operators: roulette, tournament, and stochastic universal sampling (SUS); with optional niching, ranking, and scaling. Replacement strategies: generational with elitism and steady state. Constrained optimization: random constrained initialization, death penalty, constrained selection without a penalty function. Multi-objective optimization: NSGA-II and constrained NSGA-II.