Genetic Algorithm

Evolutionary.GA — Type

Implementation of Genetic Algorithm

The constructor takes following keyword arguments:

  • populationSize: The size of the population
  • crossoverRate: The fraction of the population at the next generation, not including elite children, that is created by the crossover function.
  • mutationRate: Probability of chromosome to be mutated
  • ɛ/epsilon: Positive integer specifies how many individuals in the current generation are guaranteed to survive to the next generation.

Floating number specifies fraction of population.

  • selection: Selection function (default: tournament)
  • crossover: Crossover function (default: genop)
  • mutation: Mutation function (default: genop)
  • after_op: a function that is executed on each individual after mutation operations (default: identity)
  • metrics is a collection of convergence metrics.
source
Evolutionary.default_options — Function
default_options(method)

Return the default Options keyword values for an evolutionary optimization method.

Algorithm implementations extend this function with a method for their optimizer type. The returned named tuple is passed to Options when the user does not provide explicit options.

source

Description

The Genetic Algorithm is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to generate high-quality solutions to optimization and search problems by relying on biologically inspired operators such as Mutation, Crossover and Selection [1].

References