Contenido
PalancaAlgoritmo de programación de evolución
El objetivo del algoritmo de programación evolutiva es maximizar el ajuste de una colección de soluciones candidatas en el contexto de una función objetivo del dominio. Este objetivo se persigue utilizando un modelo adaptativo con sustitutos de procesos evolutivos, en particular hereditarios (reproducción con variación) en competencia. La representación utilizada para las soluciones candidatas es directamente evaluable por una función objetivo o de costo del dominio.
La representación de soluciones candidatas debe ser específica del dominio, como números reales para la optimización continua de funciones. El tamaño de la muestra (BoutSize) para la selección del torneo durante la competencia suele estar entre 5% y 10% del tamaño de la población. La programación evolutiva tradicionalmente usa solo el operador de mutación para crear nuevas soluciones candidatas a partir de soluciones candidatas existentes. El operador de cruce utilizado en algunos otros algoritmos evolutivos no se utiliza en la programación evolutiva. La programación evolutiva se ocupa del vínculo entre las soluciones candidatas de padres e hijos y no se ocupa de los sustitutos de los mecanismos genéticos.
La optimización de funciones continuas es una aplicación popular para este enfoque, donde las representaciones de valores reales se utilizan con un operador de mutación basado en Gauss. Los parámetros específicos de mutación que se utilizan para aplicar el algoritmo a la optimización continua de funciones se pueden adaptar de acuerdo con las soluciones candidatas.
