Algoritmos genéticos

Los algoritmos evolutivos partirán de una población de soluciones potenciales a un problema. Cada una de ellas se evaluará para atribuirle una puntuación llamada fitness. Cuanto mayor sea la fitness de una solución, mas prometedora resultará.

ga steps
Haz clic en la imagen para ampliarla

Los algoritmos genéticos se basan en la población, lo que significa que operan dentro de una población que consta de muchos individuos diferentes. Cada individuo está representado por un genotipo único (generalmente codificado como un vector). Los algoritmos genéticos modelan el proceso de evolución genética a través de varios operadores incluyendo el operador de selección que modela la supervivencia del más apto, el operador de combinación que modela la reproducción sexual y el operador de mutación que modela las mutaciones genéticas que ocurren aleatoriamente a individuos en una población. 

cruce arboles
Haz clic en la imagen para ampliarla

La diferencia entre un Algoritmo Genético y el Algoritmo de Programación Genética es la forma en que se representan los genotipos individuales. En los algoritmos genéticos, los genotipos se representan como cadenas o como vectores, mientras que en la programación genética estos genotipos se representan utilizando estructuras de datos de árbol. La operación de cruce en las estructuras de árbol puede ocurrir de varias maneras, ya sea un subárbol intercambiado, un nodo hoja se elimina o cambia, o se ajustan los valores de algún nodo. Una ilustración de esto se muestra a continuación

 

 

La Programación Genética tiene un gran potencial para desarrollar nuevas estrategias de análisis de seguridad y gestión de inversiones, siempre que se puedan derivar mejores funciones para calcular la fitness de una solución. Los árboles de decisión evolucionados usando la Programación Genética, pueden producir una clasificación de soluciones exitosas utilizando árboles de decisión que utilizan indicadores técnicos y árboles de decisión que utilizaron indicadores macro-económicos.