La programación evolutiva es uno de los cuatro principales paradigmas de algoritmos evolutivos . Es similar a la programación genética , pero la estructura del programa a optimizar es fija, mientras que sus parámetros numéricos pueden evolucionar.
Fue utilizado por primera vez por Lawrence J. Fogel en los EE. UU. En 1960 para usar la evolución simulada como un proceso de aprendizaje con el objetivo de generar inteligencia artificial . Fogel usó máquinas de estados finitos como predictores y las desarrolló. Actualmente, la programación evolutiva es un amplio dialecto de computación evolutiva sin estructura fija o ( representación ), en contraste con algunos de los otros dialectos. Cada vez es más difícil distinguirlo de las estrategias evolutivas .
Su principal operador de variación es la mutación ; los miembros de la población se consideran parte de una especie específica en lugar de miembros de la misma especie, por lo que cada padre genera una descendencia, utilizando una selección de supervivientes (μ + μ) [ se necesita una explicación adicional ] .
Ver también
Referencias
- Fogel, LJ, Owens, AJ, Walsh, MJ (1966), Inteligencia artificial a través de la evolución simulada , John Wiley.
- Fogel, LJ (1999), Inteligencia a través de la evolución simulada: cuarenta años de programación evolutiva , John Wiley.
- Eiben, AE, Smith, JE (2003), Introducción a la Computación Evolutiva , Springer . ISBN 3-540-40184-9