Algoritmo evolutivo

Un algoritmo evolutivo (EA) es un algoritmo que utiliza mecanismos inspirados en la naturaleza y resuelve problemas a través de procesos que emulan los comportamientos de los organismos vivos. EA es un componente tanto de la computación evolutiva como de la computación bioinspirada.

Los EA se inspiran en los conceptos de Darwinian Evolution. En las EA, las soluciones desempeñan el papel de organismos individuales en una población. La combinación de posibles soluciones a un problema se completa al azar en primer lugar. Luego, se evalúa la aptitud de la población: qué tan bien y qué tan rápido resuelve un problema. A continuación, se seleccionan los individuos más aptos para la reproducción. El ciclo comienza de nuevo cuando se evalúa la aptitud de la población y se eliminan los individuos menos aptos.

Dado que los mecanismos por los que funcionan los EA se inspiran en la evolución y los organismos vivos, las funciones pueden incluir selección, reproducción, mutación y recombinación. El proceso adaptativo de elegir las mejores soluciones disponibles a un problema en el que la selección se produce de acuerdo con la aptitud es análogo a la supervivencia del más apto de Darwin. Las soluciones de algoritmo que funcionan mejor entre las opciones disponibles se reproducen; los menos aptos, al ser eliminados, no. Al probar la aptitud de acuerdo con el rendimiento medido, la optimización se produce durante generaciones a través de funciones como la mutación.

Los EA son excelentes para optimizar soluciones. Sin embargo, es importante tener en cuenta que, si bien los EA optimizan de manera efectiva, no necesariamente encuentran la solución óptima. En cambio, los EA encuentran constantemente soluciones de trabajo y miden el rendimiento entre sí, lo que puede o no encontrar la mejor solución posible. Los requisitos computacionales relativamente altos de los EA, que también pueden ser una consideración, se deben en gran medida a la complejidad de la determinación de la aptitud. Esta complejidad se puede reducir mediante la aproximación de la aptitud.