What if you could breed better software the same way nature breeds better organisms?

Survival of the fittest - but the 'organisms' are computer programs competing for solutions.

The answer

Genetic algorithms (GAs), pioneered by John Holland at the University of Michigan in his 1975 book 'Adaptation in Natural and Artificial Systems,' apply Darwin's principles of natural selection to optimization problems. A population of candidate solutions is encoded as 'chromosomes,' evaluated for fitness, and subjected to selection, crossover (recombination), and mutation over successive generations. Holland's schema theorem provided the first theoretical framework for why this works, showing that short, low-order, high-fitness patterns (schemata) are exponentially sampled. His student David Goldberg popularized GAs with practical engineering applications in the late 1980s, and the broader field of evolutionary computing expanded to include genetic programming (John Koza, 1992), evolution strategies, and evolutionary programming - all inspired by biological evolution.

Source: MIT Press

More from AI & Machine Learning

All AI & Machine Learning →