¿Qué es un algoritmo evolutivo?

Un algoritmo evolutivo se basa en las ideas de la evolución biológica y su patrón de desarrollo. Es un procedimiento de optimización que permite encontrar nuevos enfoques y soluciones a problemas específicos. Los algoritmos evolutivos también se denominan algoritmos genéticos.

Este método es ideal para problemas más complejos. De este modo, se pueden crear individuos enteros en una simulación y éstos reciben una denominada función de aptitud con valores de aptitud. Este valor de aptitud proporciona información sobre la capacidad de dicho individuo para resolver el problema correspondiente. Posteriormente, se lleva a cabo una selección, mediante la cual "sobreviven" los individuos mejor adaptados.

En todo el proceso, dos elementos importantes se consideran requisitos previos para la mejora, a saber, la recombinación y la mutación. El proceso asegura las propiedades más fuertes y la IA se aproxima a la solución óptima. Los cambios son cada vez menores e incluso pueden producirse en cuanto se alcanza el máximo. Este proceso puede interrumpirse manualmente de antemano para evitar el problema de la sobreadaptación.

¿Cuál es la diferencia entre los algoritmos evolutivos y la retropropagación?

Los algoritmos evolutivos son una alternativa a Retropropagación. En la retropropagación, se utiliza un método de gradiente para mejorar continuamente los resultados. Se utilizan el análisis de errores y el análisis de la causa raíz. Después, se realizan más y más ajustes. Los algoritmos evolutivos se comportan de forma mucho más "aleatoria" cuando se modifican los parámetros de ponderación.

La retropropagación se utiliza en el contexto del aprendizaje supervisado. Por otra parte, los algoritmos evolutivos también pueden utilizarse en el aprendizaje no supervisado.Los resultados se utilizan en el reconocimiento de patrones y el aprendizaje por refuerzo.

¿Dónde entran en juego los algoritmos evolutivos?

Los algoritmos evolutivos pueden utilizarse más allá de la optimización y la búsqueda. Se emplean en el arte, la modelización y la simulación. Otros campos de aplicación son el desarrollo de redes de sensores, el análisis bursátil y la predicción de estructuras de ARN.

En combinatoria, no siempre se puede obtener una solución óptima debido al elevado esfuerzo computacional. Para este tipo de optimizaciones se suele recurrir a la heurística. Para el uso de algoritmos evolutivos son importantes la función de aptitud, la mutación y la variación, con las que se pueden calcular generaciones de nuevos elementos.