Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RESUMEN: Este artculo trata acerca de los Algoritmos basados en colonia de hormigas, los
cuales son unos modelos Metaheursticos basados en el comportamiento autoorganizativo que
algunas especies de hormigas presentan en la naturaleza para encontrar los caminos ms cortos
entre el nido y las fuentes de alimento. Inicialmente, se mencionan las caractersticas de las
hormigas en la naturaleza que fundamentan este tipo de modelos, para as pasar, a partir de stas
caractersticas, a describir la Metaheurstica de Optimizacin basada en colonia de Hormigas
explicando el modo de operacin general de stos. Luego de sto, se procede a estudiar el
algoritmo Sistema de Hormigas, el cual fue el primer algoritmo de optimizacin de colonia de
hormigas desarrollado por M. Dorigo, V. Maniezzo, A. Colorni en 1991, y el cual ha servido de
base para muchos otros modelos, y cuyo entendimiento permitir al lector tener una introduccin
para comprender la filosofa y funcionamiento de la mayora de algoritmos basados en colonia de
hormigas. Ya teniendo claro el funcionamiento de la metaheurstica se estudia la aplicacin de esta
en un problema particular, en este caso un problema Job-Shop; para lo cual se introduce en qu
consiste el problema de Job Shop, y se estudia cmo fue abordado con colonia de hormigas en este
trabajo. Finalmente se mencionan las conclusiones a las que se ha llegado producto de la revisin
bibliogrfica y del anlisis del funcionamiento de este tipo de algoritmos.
PALABRAS CLAVE: Optimizacin basada en colonia de hormigas, Sistemas de hormigas, JobShop, Feromona, Metaheursticas.
ABSTRACT: This article is about the algorithms based on ant colony, which are Metaheuristics
models based in self-organizing behavior that some species of ants found in nature to find the
shortest paths between the nest and food sources. Initially referred to the characteristics of ants in
nature that underlie this type of model, and later, from these characteristics, we pass to describe the
optimization metaheuristics based on ant colony, explaining how is their overall operation. After
this, we proceed to study the Ant System algorithm, which was the first algorithm of ant colony
optimization developed by M. Dorigo, V. Maniezzo, A. Colorni in 1991, which was the basis for
many other models, and whose understanding will enable the reader to have an introduction to
understand the philosophy and operation of most algorithms based on ant colony. Already having
clear the operation of the metaheuristic, we studied this algorithm in a particular problem, in this
case Job-Shop problem, which is introduced to what the job shop problema is, and considers how it
was dealt with colony ant in this work. Finally, product of the literature review and analysis of the
performance of such algorithms, we mention the conclusions that have been found.
KEY WORDS: Ant Colony Optimization , Ant system, Pheromone, Metaheuristics, Job Shop.
1. INTRODUCCIN
Existen problemas de optimizacin combinatoria
complejos en diversos campos como la economa, el
comercio, la ingeniera, la industria o la medicina.
Sin embargo, a menudo estos problemas son muy
difciles de resolver en la prctica. El estudio de esta
dificultad inherente para resolver dichos problemas
ha llevado a la comunidad cientfica a formular un
sin nmero de modelos, que an siguen intentando,
cada da ms, aproximarse a soluciones ms optimas
de una forma ms eficaz, logrando resultados
satisfactorios en tiempos de ejecucin cada vez
menores.
Debido a que ante problemas de gran tamao y de
caractersticas combinatorias, los modelos exactos, e
incluso los heursticos, son ineficaces; las tcnicas
metaheursticas aparecen como alternativas muy
razonables para abordarlos, donde diferentes
experimentos ya han logrado demostrar las
bondades de stos modelos.
Las metaheursticas incorporan conceptos de
muchos y diversos campos como la gentica, la
biologa, la inteligencia artificial, las matemticas, la
fsica y la neurologa, entre otras. Algunos ejemplos
de metaheursticas son: Enfriamiento simulado,
bsqueda tab, bsqueda local iterativa (iterated
local search), algoritmos de bsqueda local con
vecindario variable (variable neighborhood
search), GRASP (greedy randomized adaptative
search procedures) y algoritmos evolutivos. Una
metaheurstica relativamente reciente es la
Optimizacin basada en Colonias de Hormigas
(OCH) (Ant Colony Optimization, ACO en
ingls), la cual se inspira en el comportamiento que
rige a las hormigas de diversas especies para
encontrar los caminos ms cortos entre las fuentes
de comida y el hormiguero. De hecho, desde el
trabajo inicial de Dorigo, Maniezzo y Colorni en el
Sistema de Hormigas (SH) (Ant System, AS en
ingls), la ACO se est convirtiendo en un campo de
investigacin importante: un gran nmero de autores
han desarrollado modelos cada vez ms sofisticados
para solucionar de manera satisfactoria un gran
nmero de problemas de optimizacin combinatoria.
Igualmente se ha incrementado el nmero de
desarrollos tericos sobre los algoritmos que se
proponen.
2
hormigas depositan una sustancia qumica
denominada feromona (una sustancia que puede
olerse). Si no se encuentra ningn rastro de
feromona, las hormigas se mueven de manera
bsicamente aleatoria, pero cuando existe feromona
depositada, tienen mayor tendencia a seguir el
rastro. De hecho, los experimentos realizados por
bilogos han demostrado que las hormigas prefieren
de manera probabilstica los caminos marcados con
una concentracin superior de feromona [1]. En la
prctica, la eleccin entre distintos caminos toma
lugar cuando varios caminos se cruzan. Entonces,
las hormigas eligen el camino a seguir con una
decisin probabilstica sesgada por la cantidad de
feromona: cuanto ms 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 autorefuerzo que concluye con la
formacin de rastros sealados por una
concentracin de Feromona elevada. Este
comportamiento permite adems a las hormigas
encontrar los caminos ms cortos entre su
hormiguero y la fuente del alimento.
2.2 De las hormigas naturales a la Metaheurstica
de Optimizacin basada en colonia de Hormigas
Los algoritmos de OCH se inspiran directamente en
el comportamiento de las colonias reales de
hormigas
para
solucionar
problemas
de
optimizacin combinatoria. Se basan en una colonia
de hormigas artificiales, esto es, unos agentes
computacionales simples que trabajan de manera
cooperativa y se comunican mediante rastros de
feromona artificiales.
Los algoritmos de OCH son esencialmente
algoritmos constructivos: en cada iteracin del
algoritmo, cada hormiga construye una solucin al
problema recorriendo un grafo de construccin.
Cada arista del grafo, que representa los posibles
pasos que la hormiga puede dar, tiene asociada dos
tipos de informacin que guan el movimiento de la
hormiga [1]:
Informacin heurstica, que mide la preferencia
heurstica de moverse desde el nodo r hasta el nodo
s, o sea, de recorrer la arista a rs . Se nota por rs. Las
hormigas no modifican esta informacin durante la
ejecucin del algoritmo.
3
desde una perspectiva global que no pueden llevar a
cabo las hormigas por la perspectiva local que
ofrecen. Ejemplos son observar la calidad de todas
las soluciones generadas y depositar una nueva
cantidad de feromona adicional slo en las
componentes asociadas a algunas soluciones, o
aplicar un procedimiento de bsqueda local a las
soluciones generadas por las hormigas antes de
actualizar los rastros de feromona. En ambos casos,
el demonio reemplaza la actualizacin en lnea a
posteriori de feromona y el proceso pasa a llamarse
actualizacin fuera de lnea de rastros de feromona.
Hay que notar que el primer paso para implementar
un algoritmo ACO, incluye la inicializacin de los
valores de los parmetros que se tienen en
consideracin en el algoritmo. Entre otros, se deben
fijar el rastro inicial de feromona asociado a cada
transicin, to, que es un valor positivo pequeo y
que normalmente es el mismo para todas las
conexiones, el nmero de hormigas en la colonia, m,
y los pesos que definen la proporcin en la que
afectarn la informacin heurstica y memorstica en
la regla de transicin probabilstica
Como se ha comentado antes, varias componentes
son o bien opcionales, como las acciones del
demonio, o bien dependientes estrictamente del
algoritmo de OCH especifico, por ejemplo cundo y
cmo se deposita la feromona. Generalmente, la
actualizacin en lnea paso a paso de los rastros de
feromona y la actualizacin en lnea a posteriori de
los rastros de feromona son mutuamente excluyentes
y no suelen estar presentes a la vez ni faltar ambas al
mismo tiempo (si las dos faltan, el demonio suele
actualizar los rastros de feromona).
En este sentido, la seleccin de los parmetros
iniciales y la configuracin de los componentes del
algoritmo pueden ser determinantes para el
rendimiento del mtodo, y es por esto que un buen
algoritmo nunca se desprende de un buen
conocimiento del problema.
3. ANT SYSTEM
En la literatura se han propuesto diversos algoritmos
que siguen la metaheursticas ACO. Entre los
algoritmos de ACO disponibles para problemas de
optimizacin combinatoria NP-duros, se encuentran
el Sistema de Hormigas (SH o Ant System (AS))
4
(actualizacin en lnea a posteriori de feromona).
Esta ltima variante es la que mejor resultados
proporcion y la que se conoce por Ant System
(AS) Sistema de Hormigas (SH).
3.1 Estructura del algoritmo
El AS se caracteriza por el hecho de que la
actualizacin de feromona se realiza una vez que
todas las hormigas han completado sus soluciones, y
se lleva a cabo como sigue: primero, todos los
rastros de feromona se reducen en un factor
constante, implementndose de esta manera la
evaporacin de feromona. A continuacin cada
hormiga de la colonia deposita una cantidad de
feromona que es funcin de la calidad de su
solucin. Inicialmente, el SH no usaba ninguna
accin en un segundo plano, pero es relativamente
fcil, por ejemplo, aadir un procedimiento de
bsqueda local para refinar las soluciones generadas
por las hormigas.
A grandes rasgos el algoritmo presenta el siguiente
desarrollo:
5
En cada paso de construccin, una hormiga k escoge
ir al siguiente nodo con una probabilidad que se
calcula como:
6
a la segunda hormiga. Con estos nuevos
valores la hormiga obtiene las siguientes
probabilidades de opcin de desplazamiento.
7
se evaporan reduciendo todos los rastros de
feromona en un factor constante:
8
La heurstica Shifting Bottleneck, mtodos de
enumeracin gentica,etc.; En este documento se
abordar el problema con ACO con el fin de probar
las bondades de la Metaheurstica.
Utilizando EFT
9
En este caso se ha definido rsk como un valor
constante de 0.05.
4.1.3 Factibilidad de las soluciones
Inicialmente todas las hormigas estn situadas en el
nodo inicial y son libres de identificar una
permutacin cualquiera de todos los nodos, y al
definir aleatoriamente la direccin de los arcos
disyuntivos en un problema JSSP en un grafo cmo
el visto en la Figura 6, es claro que no siempre se
obtendrn soluciones factibles.
Para hacer frente a este problema, las probabilidades
de transicin deben ser ligeramente modificadas:
con el fin de tener permutaciones factibles es
necesario restringir el conjunto de nodos posibles a
elegir en cada paso, este conjunto no debe constar de
todos los nodos que faltan por ser visitados, sino que
debe ser un subconjunto de esta lista Tab general,
cuyos elementos (nodos) deben tener la
caracterstica de que todos sus nodos precedentes ya
han sido visitados.
Definiendo G como el conjunto de todos los nodos
por ser visitados y S como el conjunto de todos los
nodos cuyos predecesores ya han sido desarrollados.
En el primer paso G contiene todos los nodos menos
el inicial y S contiene todos los nodos que
representan la primera operacin de un trabajo. As,
las probabilidades de transicin se calculan teniendo
en cuenta el conjunto S de nodos. Cuando un nodo
es seleccionado, este es retirado de la lista de G y de
S; si el nodo escogido no es el ultimo nodo en un
trabajo, entonces su sucesor inmediato en la cadena
es adicionado al conjunto S. El proceso itera hasta
que el conjunto G se haga vaco.
10
constantemente se estn generando mejoras y
adaptaciones a diferentes tipos de problemas.
Por otro lado, producto de la revisin de la
estructura de este tipo de problemas, se ha
podido observar que la seleccin de los
parmetros iniciales y la configuracin de los
componentes del algoritmo pueden ser
determinantes para el rendimiento del
mtodo, y es por esto que un buen algoritmo
nunca se desprende de un buen conocimiento
del problema, pues por ejemplo, de ste
conocimiento se puede tener mejor criterio
para decidir si priorizar la informacin
heurstica o la informacin de los rastros de
feromona, o para formular la heurstica
adecuada para el problema.
final
eleccin
de
los
CONCLUSIONES
Mediante la revisin bibliogrfica que se ha llevado
a cabo en este trabajo, se ha podido constatar que los
algoritmos basados en colonia de hormigas
constituyen una herramienta bastante satisfactoria
para resolver problemas NP-Hard, y que adems
este tipo de algoritmos son hoy en da objeto de
investigacin de muchos autores, por lo cual
11
abordar desde un estudio de diseo de experimentos.
REFERENCIAS
[1] Alonso, Cordon, ed ol. La Metaheurstica de
Optimizacin Basada en Colonias de Hormigas:
Modelos y Nuevos Enfoques.
[2] Cordn, I. Fernndez de Viana, F. Herrera, y L.
Moreno. A new ACO model integrating
evolutionary computation concepts: The Best-Worst
Ant System. En M. Dorigo, M. Middendorf, y T.
Sttzle, editores, Abstract proceedings of
ANTS2000 - From Ant Colonies to Artificial Ants:
A series of International Workshops on Ant
Algorithms, pginas 22-29. IRIDIA, Universit
Libre de Bruxelles, Belgium, 2000.
[3] Cordn, F. Herrera, L. Moreno. Integracin de
Conceptos de Computacin Evolutiva en
un Nuevo Modelo de Colonias de Hormigas. VIII
Conferencia de la Asociacin Espaola para la
Inteligencia Artificial, (Seminario Especializado en
Computacion Evolutiva), Murcia (Espaa), 1999,
Vol. II, pginas 98-105.
[4] Dorigo, Vittorio Maniezzo, Alberto Colorni; The
Ant System: Optimization by a colony of
cooperating agents. IEEE Transactions on Systems,
Man, and Cybernetics, 1996
Part-B, Vol 26, N 1 pp 1-13
[5] Dorigo y L. M. Gambardella. Ant Colony
System: A cooperative learning approach to the
traveling salesman problem. IEEE Transactions on
Evolutionary Computation, 1: 1, pginas 53-66,
1997.
[6] Dorigo, V. Maniezzo, y A. Colorni. The Ant
System: Optimization by a colony of cooperating
agents. IEEE Transactions on Systems, Man, and
Cybernetics - Part B, 26: 1, pginas 29-41, 1996
[7] Goss, S. Aron, J. L. Deneubourg, y J. M.
Pasteels. Self-organized shortcuts in the
Argentine ant. Naturwissenschaften, 76, pginas
579-581, 1989.
[8] Pasteels, J.-L. Deneubourg, y S. Goss. Selforganization mechanisms in ant societes