InicioBiologíaColonia de Hormigas

🐜 Colonia de Hormigas

Observa cómo la optimización por colonia de hormigas (ACO) resuelve el problema del camino más corto. Las hormigas depositan feromona en las mejores rutas; la evaporación elimina los rastros más débiles. Inteligencia estigmérgica emergente en tiempo real.

Biología3DModerado60 FPS
ant-colony ↗ Abrir independiente

Sobre la Optimización por Colonia de Hormigas

La Optimización por Colonia de Hormigas (ACO) es una metaheurística probabilística inspirada en el comportamiento de forrajeo de las hormigas reales, introducida por Marco Dorigo en 1992. Cuando las hormigas buscan comida, inicialmente exploran al azar, pero depositan una señal química llamada feromona en sus rastros. Los caminos más cortos se recorren con más frecuencia, por lo que la feromona se acumula más rápido en ellos; otras hormigas siguen preferentemente los rastros de feromona más fuertes, creando un bucle de retroalimentación positiva que converge en la ruta más corta. ACO se ha aplicado con éxito al Problema del Viajante de Comercio, la planificación de rutas de vehículos, el enrutamiento de redes en telecomunicaciones y la optimización del plegamiento de proteínas.

La simulación coloca un conjunto de ciudades (nodos) en un lienzo y libera una colonia de hormigas virtuales que construyen recorridos probabilísticamente, guiadas tanto por la fuerza de la feromona como por el inverso de la distancia de la arista. Puedes ajustar el número de hormigas, la tasa de evaporación de feromona (ρ), la importancia relativa de la feromona (α) frente a la distancia (β), y observar cómo estos parámetros equilibran la velocidad de convergencia frente al riesgo de quedar atrapados en un óptimo local.

Preguntas Frecuentes

¿Cómo eligen las hormigas qué arista tomar?

En cada nodo, una hormiga selecciona la siguiente ciudad probabilísticamente usando la fórmula Pᵢⱼ = (τᵢⱼ𝑚 ⋅ ηᵢⱼᵇ) / Σ(τ𝕪𝓂 ⋅ η𝕪𝓂), donde τᵢⱼ es el nivel de feromona en la arista (i,j), ηᵢⱼ = 1/dᵢⱼ es la heurística (distancia inversa), α controla la influencia de la feromona y β controla la influencia de la distancia. Establecer α=0 da un algoritmo voraz del vecino más cercano; establecer β=0 depende por completo de la feromona acumulada sin tener en cuenta la distancia.

¿Qué es la evaporación de feromona y por qué es importante?

Tras cada iteración, la feromona en todas las aristas se reduce en un factor (1−ρ), donde ρ es la tasa de evaporación, típicamente entre 0,01 y 0,5. Sin evaporación, el algoritmo se fijaría en la primera solución decente que encontrara y nunca exploraría alternativas, porque la feromona solo se acumularía y nunca disminuiría. La evaporación actúa como un mecanismo de olvido que evita la convergencia prematura y permite que la colonia se adapte si las condiciones cambian — de forma análoga a como la feromona real se degrada con la luz solar y el viento.

¿Cómo se compara ACO con los algoritmos genéticos?

Ambos son metaheurísticas basadas en población que evitan quedar atrapadas en óptimos locales mediante la exploración. ACO construye soluciones de forma incremental y comparte información a través de rastros de feromona (una forma de comunicación indirecta llamada estigmergia), mientras que los algoritmos genéticos operan sobre soluciones candidatas completas y comparten información mediante operadores de cruce y mutación. ACO tiende a rendir mejor en problemas basados en rutas (enrutamiento, secuenciación), mientras que los algoritmos genéticos son más flexibles para problemas con estructuras de solución no secuenciales.

¿Qué es el Problema del Viajante de Comercio?

El Problema del Viajante de Comercio (TSP) plantea: dadas N ciudades, ¿cuál es el recorrido cerrado más corto que visita cada ciudad exactamente una vez y vuelve al inicio? Es NP-difícil, lo que significa que no existe un algoritmo exacto conocido de tiempo polinómico para N grande; el número de recorridos posibles crece como (N−1)!/2. Para 20 ciudades eso son más de 60 billones de recorridos. ACO normalmente encuentra soluciones casi óptimas mucho más rápido que la búsqueda exhaustiva, lo que lo hace práctico para problemas logísticos reales con cientos o miles de ciudades.

¿Qué controla la tasa de evaporación ρ?

Una tasa de evaporación alta (ρ cercano a 1) significa que la feromona se disipa rápidamente, manteniendo todas las aristas casi igual de atractivas y favoreciendo una exploración amplia pero ralentizando la convergencia. Una tasa baja (ρ cercano a 0) permite que la feromona se acumule durante muchas iteraciones, reforzando las mejores rutas encontradas al principio pero arriesgándose al estancamiento. En la práctica, valores de 0,1–0,3 tienden a equilibrar bien la exploración y la explotación para instancias de TSP de tamaño moderado.

¿Cuál es el papel de los parámetros α y β?

α es el exponente que controla cuánto favorecen las hormigas las aristas con alta feromona; β controla cuánto favorecen las aristas cortas (de bajo coste). Con β=5 y α=1 (valores típicos del artículo original de Dorigo), la distancia heurística domina al principio cuando la feromona es uniforme, dando recorridos iniciales sensatos, mientras que la feromona va desplazando gradualmente el equilibrio. Un α demasiado alto hace que el algoritmo dependa en exceso de depósitos de feromona tempranos, posiblemente deficientes.

¿Puede ACO resolver otros problemas además del enrutamiento?

Sí — ACO se ha adaptado a la coloración de grafos, la programación de talleres, la predicción de estructuras de proteínas e incluso la optimización continua (ACOR). En el enrutamiento de redes, el Enrutamiento Basado en Hormigas (ABR) envía «paquetes exploradores» que sondean rutas y depositan feromona digital, reencaminando dinámicamente el tráfico alrededor de la congestión. Cisco ha implementado variantes de esta idea en algoritmos de enrutamiento adaptativo para redes de telecomunicaciones.

¿Qué es la estigmergia?

La estigmergia es la coordinación indirecta mediante la modificación del entorno — los agentes se comunican cambiando el entorno compartido en lugar de mediante señales directas. Los rastros de feromona de las hormigas son el ejemplo canónico: cada hormiga responde a los rastros dejados por hormigas anteriores, y su propio rastro influye en las hormigas futuras, sin ningún controlador central. La estigmergia también se observa en la construcción de montículos de termitas, la construcción de nidos de avispas, y ha inspirado arquitecturas de computación distribuida.

¿Cuáles son las limitaciones de ACO?

ACO puede sufrir estancamiento, donde todas las hormigas convergen en un recorrido subóptimo y la diversidad de feromona colapsa. También requiere un ajuste cuidadoso de parámetros (α, β, ρ, número de hormigas), y su tasa de convergencia es generalmente más lenta que la de algoritmos especializados para problemas bien estudiados como el TSP. Los sistemas ACO híbridos que combinan la búsqueda basada en hormigas con heurísticas de mejora local (movimientos 2-opt o 3-opt) suelen rendir mucho mejor que el ACO puro en instancias grandes.

¿Cuántas hormigas se deben usar?

Una regla general habitual es usar una hormiga por ciudad. Más hormigas aumentan la diversidad de soluciones y reducen la posibilidad de convergencia prematura, pero también incrementan el cómputo por iteración. Las investigaciones han demostrado que, para el TSP, entre 10 y 50 hormigas suelen dar buenos resultados en instancias de hasta 200 ciudades, mientras que instancias muy grandes pueden beneficiarse de cientos de hormigas con computación paralela. El número ideal interactúa con ρ: una evaporación más rápida puede compensar tener menos hormigas manteniendo la diversidad.

⚙ Bajo el capó

Ajusta el peso de la feromona, la evaporación y la fuerza de depósito para observar cómo las hormigas convergen en el camino más corto en una ejecución de optimización por colonia de hormigas.

biology

3D · Renderizador Three.js / WebGL · objetivo de 60 FPS · funciona totalmente en el navegador, sin instalación

¿Qué encontraste?

Añadir pasos para reproducirlo (opcional)