Modelo mental

Algoritmos genéticos

Un método para resolver problemas que imita la selección natural para encontrar soluciones óptimas a desafíos complejos.

Descubre

Imagina que estás diseñando una nueva ala de avión para lograr la máxima eficiencia en el consumo de combustible. Puedes cambiar su longitud, curvatura y grosor. ¿Qué estrategia de diseño tiene más probabilidades de encontrar una solución muy eficaz y poco evidente?

Selecciona el enfoque más eficaz:

Veamos cómo funciona este método inspirado en la naturaleza.

Comprende

Comprende

Un algoritmo genético resuelve problemas imitando la evolución. Imagina que diseñas una antena muy eficiente: en lugar de recurrir a una sola persona experta, un algoritmo genético crea cientos de diseños aleatorios, los prueba digitalmente y «reproduce» los mejores combinando sus características. Pequeñas «mutaciones» aleatorias introducen ideas nuevas. Tras miles de generaciones, este proceso puede producir una solución muy eficaz que quizá a una persona nunca se le habría ocurrido diseñar.

Prueba esto: Piensa en una receta compleja. ¿Cómo podrías usar este proceso de «probar, seleccionar, combinar y mutar» para descubrir una versión mejor?

Explicación completa

Explicación completa

Los algoritmos genéticos usan un proceso que se repite para hacer evolucionar una población de posibles respuestas hacia una solución óptima. Esto resulta ideal para problemas complejos sin una fórmula clara. El proceso empieza generando una población grande y aleatoria de soluciones candidatas.

Después, se evalúa cada candidata y se le asigna una puntuación de «aptitud» según lo bien que resuelve el problema. Por ejemplo, una solución candidata para una ruta de reparto se puntuaría según la distancia total y el tiempo del recorrido.

A continuación, se seleccionan los individuos con mayor aptitud para que sean los «progenitores» de la siguiente generación. Sus características se combinan mediante el «cruce» para crear descendientes, y se introducen pequeñas «mutaciones» aleatorias para mantener la diversidad.

Este ciclo de evaluación, selección, cruce y mutación se repite durante cientos o miles de generaciones. Con el tiempo, la aptitud general de la población mejora a medida que desaparecen las soluciones más débiles y se multiplican las más fuertes.

Este método es muy versátil. Una empresa financiera puede hacer evolucionar estrategias de compraventa de activos probando reglas con datos históricos, mientras que los ingenieros pueden optimizar el diseño de la turbina de un motor a reacción para lograr la máxima eficiencia.

En la práctica, los algoritmos genéticos pueden descubrir soluciones innovadoras y poco evidentes. Destacan al explorar enormes «espacios de soluciones» con muchas variables que interactúan entre sí. Por eso son herramientas potentes en campos que van desde la logística hasta el descubrimiento de fármacos.

Investigación

Investigación

Los algoritmos genéticos (AG) son una clase de algoritmos evolutivos que usan los principios de la selección natural como método de búsqueda heurística para problemas complejos de optimización. Son muy eficaces en espacios de problemas enormes o poco conocidos, donde los métodos tradicionales podrían fallar. Los AG equilibran la exploración del espacio de soluciones (encontrar opciones nuevas) con el aprovechamiento de las soluciones que ya se sabe que son buenas (perfeccionar las mejores).

  • John Holland estableció las bases teóricas e introdujo conceptos como los esquemas para explicar cómo los AG procesan y combinan soluciones parciales útiles, o «bloques de construcción», para formar mejores soluciones completas. [1] (1992)
  • Los enfoques modernos destacan el equilibrio entre la exploración y el aprovechamiento. Los AG mantienen una población de soluciones y usan el cruce para aprovechar las similitudes entre las buenas soluciones y la mutación para explorar nuevas regiones del espacio de búsqueda, evitando la convergencia prematura. [2] (2015)
  • Entre las innovaciones clave están los AG multiobjetivo, como NSGA-II, que pueden optimizar simultáneamente varios objetivos, a menudo contrapuestos (por ejemplo, minimizar el costo y maximizar el rendimiento). Esta capacidad es fundamental para los problemas de ingeniería del mundo real. [3] (2002)
  • Las revisiones recientes muestran que los AG siguen evolucionando. Sus aplicaciones se extienden a ámbitos como el ajuste de hiperparámetros de modelos de aprendizaje profundo, el descubrimiento de fármacos y el diseño automatizado de sistemas, a menudo en combinación con otras técnicas de inteligencia artificial. [4] (2021)
  • Los teoremas «No Free Lunch» («no hay almuerzo gratis») establecen que ningún algoritmo de optimización, incluidos los AG, es el mejor para todos los problemas. Esto destaca la importancia de adaptar los operadores y parámetros del algoritmo a la estructura específica del problema que se busca resolver. [5] (1997)

Limitaciones

Limitaciones

A pesar de su potencia, los algoritmos genéticos tienen limitaciones. Su rendimiento depende mucho de la elección de parámetros como el tamaño de la población, la tasa de mutación y la estrategia de cruce, que a menudo requieren un ajuste exhaustivo. Una «función de aptitud» mal diseñada puede llevar al algoritmo a optimizar el objetivo equivocado. Además, pueden sufrir «convergencia prematura»: la población pierde diversidad demasiado rápido y se queda en una solución buena, pero no óptima. Por último, para problemas muy complejos, los AG pueden exigir muchos cálculos y necesitar una cantidad considerable de tiempo y recursos para evaluar muchas generaciones de soluciones.

Fuentes

Fuentes

Pruébalo

Comprueba lo que has entendido

En un algoritmo genético, ¿cuál es el propósito principal de la etapa de «mutación»?

Ver la explicación de la guía

Respuesta: Introducir características nuevas y evitar que el algoritmo se estanque

La mutación introduce cambios aleatorios que ayudan al algoritmo a explorar nuevas partes del espacio de soluciones y a evitar que converja demasiado pronto en un máximo que no sea óptimo. La combinación de características se llama «cruce», y la evaluación utiliza la «función de aptitud».

Una ciudad quiere optimizar los tiempos de sus semáforos para reducir la congestión. ¿Por qué un algoritmo genético es un buen enfoque para este problema?

Ver la explicación de la guía

Respuesta: Porque el problema tiene muchas variables que interactúan entre sí y la mejor solución no es evidente

Los algoritmos genéticos destacan en problemas complejos con muchas variables que interactúan entre sí (los tiempos de cada semáforo), donde la combinación óptima es desconocida y difícil de calcular directamente. No prueban todas las combinaciones, sino que exploran el espacio de soluciones de forma inteligente.

¿Cuál de los siguientes problemas es el MENOS adecuado para un algoritmo genético?

Ver la explicación de la guía

Respuesta: Encontrar el camino más corto entre dos puntos en un mapa sencillo y sin obstáculos

Encontrar el camino más corto en un mapa sencillo es un problema bien definido con métodos eficientes que garantizan una solución óptima, como los algoritmos de Dijkstra o A*. Los algoritmos genéticos son más adecuados para problemas complejos, difíciles de estructurar o poco conocidos, en los que no existen soluciones directas de ese tipo.

Sigue explorando

Encuentra otra idea para la decisión que tienes por delante.

Toda la biblioteca de Reframo es de lectura gratuita. Explora otra guía cuando quieras.