Evolutionary algorithms include:
- genetic programming and genetic algorithms which use the gene transmission and mutation mechanism as an optimization technique
- evolutionary programming, which allows one to parameterize computer programs to find optimal solutions according to a goal function.
Evolutionary computation and algorithms have also used as an experimental framework within which to validate theories about evolution and natural selection, particularly through the work in artificial life. Techniques from evolutionary algorithms applied to the modelling of biological evolution mostly model microevolutionary processes, however some computer simulations commonly called artificial life such as Tierra attempt to model macroevolutionary dynamics.EC as framework for evolutionary modeling