Para los que les interesa la programacion genética aquí les dejo una introducción.
La Programación Genética consiste en la evolucion automatica de programas usando
ideas basadas en la selección natural (Darwin).
No solo se ha utilizado para generar programas, sino que cualquier otro tipo de
soluciones cuya estructura sea similar a la de un programa. Por ejemplo, formulas
matemáticas, circuitos electrónicos.
La evolución se produce en la naturaleza gracias a que:
• Existe reproducción entre individuos de una población.
• Las caracter´ýsticas de los individuos afectan su probabilidad de supervivencia.
• Existe herencia.
• Existen recursos finitos, que ocasiona competencia.
En programación genetica se busca que poblaciones de programas evolucionen,
transmitiendo su herencia de manera que se adapten mejor al medio.
Los mejores individuos tienen mayores probabilidades de reproducirse. La medida
de calidad del individuo dependera del tipo de problema.
Una mirada general
Un algoritmo de programacion genetica sigue el siguiente esquema:
1. Genera una poblacion inicial.
2. Mientras no se cumple el criterio de terminacion:
a) Seleccionar individuos (para reproduccion y eliminacion), considerando su
calidad.
b) Combinar y/o variar individuos nuevos.
c) Agregar y eliminar individuos.
Salud2