Skip to content
Kilian Brachtendorf edited this page Dec 20, 2018 · 11 revisions

Darwin

The genetic algorithm is a method for solving both constrained and unconstrained optimization problems that is based on natural selection, the process that drives biological evolution. The genetic algorithm repeatedly modifies a population of individual solutions. At each step, the genetic algorithm selects individuals at random from the current population to be parents and uses them to produce the children for the next generation. Over successive generations, the population "evolves" toward an optimal solution. You can apply the genetic algorithm to solve a variety of optimization problems that are not well suited for standard optimization algorithms, including problems in which the objective function is discontinuous, nondifferentiable, stochastic, or highly nonlinear [1]

Quick Rundown How do GA's work

Darwin extends upon the steps outlined in Mathworks' genetic algorithm, deviating slightly from most common implementation found elsewhere. The reproduction task is subdivided into elite, crossover and mutation children as well as a clone prevention phase. Resulting offspring are not generated in pairs and the algorithm allows full customization and supports n-parental crossover operations.

Features

Terminology

  • Fitness function: the main objective of the genetic algorithm is to minimize a given function, otherwise known as objective function. The fitness value of an individual indicates how good of a solution the given answer represents
  • Individual: a solution to the given problem. An individual holds a unique set of variables which can be applied to the fitness function to compute a value
  • Population: A collection of (solution) individuals
  • Generation: Due to the itterative nature of genetic algorithms a single population
  • Search Space:
  • Diversity:
  • Exploration:
  • Exploition:

Key Concepts

Featues

dna_logo

N - Parental Recombination

dna_logo

[1] https://se.mathworks.com/help/gads/what-is-the-genetic-algorithm.html