Diferentes sistemas naturales, tales como las colonias de hormigas, enjambres de abejas, cardúmenes, bandadas, manadas, grupos de gatos, colonias de murciélagos, grupos de ranas, la propagación de semillas, la formación de ríos, las migraciones, la atracción de los planetas y otros como la improvisación jazzística y la interacción que ocurre en una sala de clases, solo por nombrar algunos, se utilizan actualmente como base para el diseño e implementación de modelos y software para resolver problemas de Optimización en Ingeniería.
Un método de resolución de problemas derivado de la estructura y el comportamiento de un sistema natural se denomina enfoque bioinspirado. Dentro de este tipo de enfoques destacamos la Inteligencia de Enjambre.
Inteligencia de Enjambre
Considera un enjambre o población de elementos que interactúan y son capaces de optimizar un objetivo global a través de la colaboración. Al enjambre lo caracteriza su capacidad de auto-organización, donde una gran cantidad de procesos simples pueden conducir a resultados complejos. Muchas veces, la interacción de los elementos no se realiza directamente, sino que indirectamente a través del entorno (stigmergy).
Una colonia de hormigas es el ejemplo más conocido de Inteligencia de Enjambre. Las hormigas viven en colonias y gracias a la colaboración mutua son capaces de mostrar comportamientos complejos realizando tareas difíciles de lograr por una hormiga individualmente.
En Inteligencia Artificial, la Optimización por Colonia de Hormigas, en inglés Ant Colony Optimization (ACO), es uno de los enfoques bioinspirados que se utiliza para resolver un gran número de problemas de Optimización en Ingeniería. ACO se basa en la habilidad de las hormigas para encontrar los caminos más cortos entre el hormiguero y las fuentes de alimento. Mientras se mueven entre el hormiguero y una fuente de alimento, las hormigas depositan una sustancia química denominada feromona que las otras hormigas pueden detectar. Si no encuentran ningún rastro de feromona en sus desplazamientos, las hormigas se mueven de manera aleatoria, pero cuando existe feromona depositada, tienen mayor tendencia a seguir el rastro. Entonces, las hormigas eligen el camino a seguir con una decisión probabilística sesgada por la cantidad de feromona: cuanto más fuerte es el rastro de feromona, mayor es la probabilidad de elegirlo. Puesto que las hormigas depositan feromona en el camino que siguen, este comportamiento lleva a un proceso de reforzamiento de la feromona en ciertos caminos, permitiendo a las hormigas encontrar los caminos más cortos entre su hormiguero y la fuente de alimento.
Optimización en Ingeniería
Muchos métodos bioinspirados han mostrado un desempeño igual o superior a las técnicas clásicas resolviendo problemas de Optimización en Ingeniería. Más aún, también han podido abordar problemas imposibles de resolver con otras técnicas.
Lo interesante es que el asunto no es solo un ejercicio académico, ya que en muchos casos los resultados obtenidos en las investigaciones científicas se han llevado a la práctica, implementándose software (optimization solvers) que se está utilizando en diferentes industrias. Algunos ejemplos de problemas abordados con Inteligencia de Enjambre son: diseño de antenas de telecomunicaciones, optimización de circuitos de reconocimiento de voz, diseño de espacios físicos, diseño de alas de aviones, planificación de órbitas de satélites, planes tácticos militares, enrutamiento en redes de telecomunicaciones, ubicación de contenedores en puertos, planificación de proyectos, planificación de turnos de trabajo, diseño de líneas de montaje y otros problemas difíciles de optimización combinatoria.
Si bien la inspiración desde la biología ha acompañado desde sus inicios a la computación, el uso de algoritmos que imitan directamente el comportamiento de los organismos naturales es de desarrollo reciente. Esta clase de algoritmos son descentralizados y presentan un comportamiento emergente. Es decir, al sistema no se le dice cómo lograr el objetivo, sino que a través del desempeño individual de elementos que comparten cierta información de sus logros se produce el comportamiento general esperado. Siendo este comportamiento emergente capaz de resolver el problema, probablemente no de manera óptima, pero sí obteniendo soluciones suficientemente buenas, baratas y a tiempo. Son muy útiles cuando no existe un método que asegure encontrar el óptimo, cuando existe un método que consume mucho tiempo para obtener una solución óptima, cuando existen limitaciones de tiempo o para obtener una solución inicial como entrada a otra técnica.
El autor es Investigador Responsable del Proyecto Fondecyt 1140897 "An Autonomous Search System to Hybrid Constraint Solver Cooperation".