JOHN R. KOZA
El considerado "padre" de la PG es John R. Koza, y fue el quien acuñó el término "Programación
Genética”.
En 1992, John R. Koza creó el paradigma de la programación genética. En él, se aumentaba el nivel de abstracción, admitiendo
la evolución de poblaciones con menos restricciones que las impuestas por los algoritmos genéticos, tales como la posibilidad
de individuos de diferentes tamaños y no simplemente limitados a una cadena de longitud fija o el uso de estructuras jerárquicas
frente a una cadena binaria que el propio usuario tenía que interpretar. Con este paradigma se ha logrado incluso resolver
algunos problemas del mundo real de forma más precisa que con métodos analíticos convencionales en diversos campos de la ciencia.
La PG surgió como una evolución de los Algoritmos Genéticos (AGs).
- Algoritmo Genético (Genetic Algoritm)-Modelo de aprendizaje computacional que usa una metáfora genético-evolutiva. Las implementaciones
usan típicamente cadenas de bits de longitud fija para representar la información genética.
- Programación Genética (Genetic Programing)- Algoritmos Genéticos aplicados a programas. La Programación Genética es más expresiva que las cadenas de bits de longitud fija de los
AGs, aunque los AGs pueden ser más eficientes para algunas clases de problemas.
Esta técnica fue
creada por John Koza a finales de los 80's, culminando con la publicación de su libro titulado "Genetic Programming: On the
Programming of Computers by Means of Natural Selection" (1992).
Según esta publicación la meta de la PG es lograr que
las computadoras aprendan a resolver problemas sin ser explícitamente programadas, generando soluciones a problemas a partir
de la inducción de programas. El programador no especifica el tamaño, forma y complejidad estructural de los programas-solución,
sino que los programas evolucionan hasta generar soluciones satisfactorias.
Fig.
1. Evolución según la PG
Fig. 2. Diagrama
de flujo de la Programación Genética