Consultar ensayos de calidad


Estudio Experimental del Comportamiento de Algoritmo Hormigas Aplicado al RTCG



Estudio Experimental del Comportamiento de Algoritmo Hormigas Aplicado al RTCG


Abstract-Algorithms for finding paths are used to try to find the optimal path. As the size increases, finding routes in a task becomes more complex. In an effort to solve problems like this, some researchers have introduced innovative techniques, such as the algorithm of the Ants. The current paper presents an empirical study in experiments related to the use of this class of algorithms applied to the problem of optimizing the public transport network of Guadalajara (RTCG).

Resumen — Los algoritmos para la búsqueda de caminos se utilizan para intentar encontrar el camino óptimo. Conforme el tamaño aumenta, el encontrar tales rutas se torna una labor mas compleja. Con el afan de resolver problemas como este, algunos investigadores han presentado técnicas innovadoras, tales como el algoritmo de las Hormigas. El actual articulo presenta un estudio empírico consistente en la experimentación relacionada con el uso de esta clase de algoritmos aplicados al problema de la optimización de la red de transporte colectivo de Guadalajara (RTCG).Palabras clave — RTCG, Cadena de Hormigas, Optimización de rutas de transporte, estigmergía.



Introducción
A
lgunos investigadores han estudiado el comportamiento social de los insectos. Las colonias de insectos muestran un alto grado de eficiencia en sus actividades y en sus capacidades de supervivencia. Se cree que tal grado es gracias a que los miembros que integran la propia colonia se consideran autosuficientes, es decir, capaces para actuar por si solos y hacer su propia labor. Este impacto sobre la colonia parce ser parte de una coordinación centralizada.

Swarm intelligence [2] es un termino asociado a una metafora computacional y de comportamiento que permite la resolución de problemas complejos tomando inspiración de sociedades exitosas de colaboración y evolución que aparecen en la naturaleza. Ejemplos comunes son insectos que trabajan bajo un sistema grupal, tales como las hormigas, abejas, termitas, etc. Este tipo de inteligencia es encontrada en casi cualquier nivel del mudo biológico (células, órganos, sistema nervioso e inmunológico, etc.).

El concepto estigmergía, introducido por el zoólogo francés Pierre-Paul Grassé (1895-1985), alude a un tipo de comunicación indirecta, donde la coordinación de tareas no recae directamente sobre los propios miembros, sino sobre el entorno que debe estimular la producción de trabajo. Cuando alguno o algunos de los miembros modifican tal ambiente, se propicia una reacción de los restantes; bajo tal panorama se habla de actividades con unacomunicación no directa, con el fin de lograr cambios positivos en el grupo mediante acciones globales.

Durante la recolección de alimento las hormigas depositan un rastro de feromona mientras se desplazan, ésta actúa como un agente guía para los demas individuos desde el nido hacia la fuente de alimento y viceversa sin la necesidad de algún otro sentido. El rastro de feromona permanece en el suelo por un periodo limitado de tiempo y éste hecho tiene repercusión directa sobre la concentración de hormonas. Cuando las hormigas realizan esta actividad continuamente, desde su origen hasta su destino, la hormona se ve reforzada y la ruta se vuelve mas óptima, sin dejar de lado la posibilidad de explorar algún otro camino.

Todo esto ocurre en el mundo natural; si nos referimos al problema de la red de trasporte colectivo en Guadalajara sucede lo mismo, donde el cometido no sólo es encontrar un camino entre un punto origen y un destino, sino que también es muy importante encontrar el mejor de ellos cuando existe mas de una ruta posible para llegar al punto destino.

Conforme el tamaño de la población crece la demanda de trasporte crece de manera proporcional y el proceso de selección de una ruta se vuelve mas complejo. Algunas de las soluciones implementadas pueden no mostrar el desempeño óptimo, y este es uno de los problemas que debe ser analizado de manera puntual.

Otras publicaciones [1] [2] han demostrado que es posible modelar algunos problemas complejos, como optimización discreta,asignación cuadratica, agente viajero entre otros, inspirandose en el proceder de los insectos para resolver sus necesidades en su labor colectiva.

El propósito de este artículo es contribuir al entendimiento de los algoritmos inspirados en el comportamiento de las colonias de hormigas, de cómo funcionan, y de presentar resultados relevantes empíricos en la búsqueda de la combinación óptima de parametros involucrados en el proceso. El algoritmo utilizado es ANTNet, desarrollado por Marco Dorigo, et al. [1] [2], cuya intención es la de aproximar el problema de optimización en la determinación de rutas, mas que la de realizar una aplicación que dé la solución.

MODELADO DE LA RTCG
El algoritmo propuesto consiste en la creación de agentes artificiales (hormigas y feromonas) los cuales simulan los factores que actúan en el proceso de estigmergía.
Estos agentes estan conformados por una colección de parametros que pueden variar cuantitativamente para observar el desempeño global del sistema, e intentar encontrar la combinación optima de los valores que ofrezcan la aproximación al problema en el menor tiempo posible.

El modelo considera un ambiente simulado de la zona metropolitana representado por un grafo, donde cada nodo simboliza las zonas mas concurridas por los habitantes (centros comerciales, sectores turísticos, etc.).

El algoritmo consiste en la creación de una hormiga para cada nodo de la red, con un destino elegido al azar. Esta primer generación de hormigas, elige de modo instintivoel siguiente nodo a visitar durante el transcurso de la búsqueda del nodo destino, utilizando una distribución uniforme de probabilidades.

Durante la selección del siguiente nodo, es necesario verificar que el nodo elegido no haya sido visitado por la misma hormiga, esto con el fin de evitar que ésta limite su trayecto a cierto número de nodos, repercutiendo en un ciclo infinito; para lograrlo, la hormiga almacena el identificador de cada nodo visitado. Si ésta llega a un callejón sin salida, es decir, que ya ha visitado todos los nodos previamente, la hormiga muere y nace una nueva desde ese nodo con un nuevo destino aleatorio.

Cada nodo cuenta con una tabla (registro) que cuantifica el trafico que pasa por él mismo, representando la concentración de feromona que existe en tal nodo. Esta tabla se conforma de un arreglo bidimensional cuyos valores se definen por una función probabilística Pnd. Esta función es la probabilidad de elegir el enlace que lleva a las hormigas hacia el nodo vecino n, cuando el nodo destino es d. En otras palabras, Pnd es el grado de bondad de la ruta que lleva hacia el nodo destino d. Inicialmente, esta tabla tiene valores que corresponden a una distribución uniforme de probabilidades.

Las diversas secuencias del sistema se realizan de forma discreta, en cada una de las secuencias todas las hormigas avanzan un nodo, el nacimiento de una nueva generación de hormigas se hace de manera iterativa después de cierto número de pasos y la frecuencia de nacimiento escontrolable.

Cuando una hormiga ha llegado a un nodo en particular, encuentra que la tabla de registro ha sido modificada por otras hormigas, de esta manera aparece la comunicación indirecta entre ellas, confirmando entonces el proceso de estigmergía.

En la última generación, creamos tantas hormigas como nodos existen en el sistema. Se intenta llegar desde cierto nodo hasta el resto de ellos, con el fin de evaluar el trabajo de todas las generaciones anteriores de hormigas, seleccionando de manera determinista la vía con mayor concentración de feromona, justamente como lo haría un usuario de la RTCG, cuyo comportamiento no sería necesariamente estocastico.

Para simular la sensibilidad de las hormigas a la feromona, buscamos una variable existente en el sistema. La variable seleccionada fue el número de hormigas vivas en cada paso, como un factor que modifica dinamicamente la cantidad de feromona en el sistema para evaluar el rendimiento del algoritmo. Lo que se busca, es que un gran número de hormigas actuando sobre el sistema, generen eventualmente rutas con el número mínimo de saltos, sin importar el nodo origen y destino para cualquier usuario de la RTCG.

Experimentos

Es prudente mencionar que el parametro seleccionado para evaluar el sistema es el conteo de saltos, ó el número de nodos que una hormiga visita hasta que alcanza el destino.
Bajo este esquema, una ruta con menos saltos es considerada mejor que otra en la que se requiera que el usuario de RTCG viaje a través de una cantidad mayor denodos.

Una de las intenciones de este trabajo es la de tener la posibilidad de validar el modelo con casos representativos del problema. Con el fin de ilustrar el problema antes mencionado, hemos utilizado dos figuras distintas. En la (Figura1) ilustramos graficamente las zonas mas concurridas de los municipios de Guadalajara, Zapopan, Tonala y Tlaquepaque. En la (Figura2) se muestra el grafo con sus respectivos enlaces bidireccionales de las zonas mas concurridas por los habitantes.

[pic]

Figura 1: Zona Metropolitana de Guadalajara


Figura 2: Grafo: zonas mas concurridas.

configuración de parametros
Una parte importante de la etapa de experimentación es la selección de los parametros del sistema. Algunos de ellos fueron manipulados de manera sistematica, tratando de encontrar correlación entre esos parametros y el impacto en el rendimiento global del algoritmo, ejecutando un analisis de sensibilidad.

Los parametros manipulados fueron el número de pasos que el sistema actúa, la frecuencia de nacimiento de nuevas generaciones de hormigas, y la cantidad de feromona de cada hormiga. Pruebas preliminares mostraron que los valores representativos para ejecutar las diferentes modalidades desarrolladas del programa, fueron aquellas que se muestran mas adelante. Esas ejecuciones del programa fueron efectuadas con cada posible combinación de valores (expuestos posteriormente), aproximadamente 2,700 ejecuciones en total:

← Número de pasos del sistema: 2048, 4096, 8192, 16384, 32768, 65536

←Frecuencia de nacimiento de nuevas generaciones de hormigas: 64, 32, 16

← Cantidad de feromona: 0.001, 0.005, 0.01, 0.05, 0.1

Se consideró que estos valores conforman un conjunto representativo de pruebas que nos permitiran distinguir y analizar las incidencias de los factores involucrados y las diferencias entre versiones del programa.

Las pruebas fueron efectuadas sobre el grafo principal, que se observa con una complejidad típica, donde es posible calcular los resultados en un tiempo mas reducido y finalmente poderlos comparar, de nuevo, con las distintas versiones del programa.

Tomando en cuenta, la cantidad de nodos recorridos antes de llegar al nodo destino, se determinó que los parametros mas importantes a medir son

← La suma total de nodos transitados que todas las hormigas usaron durante la última generación. Si el sistema funciona correctamente, este valor debe ser cercano a 278 saltos totales, que es la medida óptima del sistema. En adelante, a este parametro lo Llamamos Global.

← Promedio de saltos para cada hormiga de la última generación; el valor óptimo calculado es 3.15 saltos por hormiga. En adelante, a este parametro lo Llamamos Promedio.

← Por último, consideramos la cantidad total de hormigas que fallaron en la búsqueda del nodo destino; cuando las tablas de las rutas no han convergido en valores bien definidos, las hormigas vagan sin encontrar el nodo destino, entran en callejones sin salida, es decir que ciclan su trayecto y en consecuencia mueren. En adelantellamaremos a este parametro Fallas.

Los resultados de los experimentos indican que la cantidad de pasos que el sistema actúa es un factor muy importante para el desempeño global del algoritmo. Para valores similares de frecuencia y feromona, mientras incrementamos el número de pasos, observamos que el parametro Global desciende substancialmente, como se muestra en la (Figura3).

[pic]

Para valores similares de frecuencia y feromona observamos una valor de Global muy cercano al valor óptimo (278), independientemente del valor manejado en pasos, como se muestra en la (Figura4).

[pic]
Observamos en la experimentación, que la cantidad de feromona tiene un impacto importante sobre fallas y promedio para cualquier variación de otros parametros controlables. Esto se muestra en la siguiente grafica (Figura5).

Figura 5: Valores límite.

En el grafo principal no se promedió manualmente los valores óptimos para Global y Promedio, debido a la alta complejidad que el problema representa. Sin embargo, creemos que es importante incluir nuestros resultados para su comentario. En general, suponemos valores para Promedio de 8.5 cuando no existen fallas. Asumimos que este valor es conveniente, cuando estamos hablando de una area metropolitana con 55 nodos. La variable global encuentra una ligera variación negativa conforme Pasos es incrementado, lo que nos lleva a hacer una conclusión importante: la cantidad de pasos que el sistema requiere es mas grande que conforme el número de nodos crece. El tamaño del caso del problemapodría hacer inmanejable el uso de métodos convencionales, si intentaramos encontrar las mejores rutas en una manera no distribuida.

Conclusiones
El uso de algoritmos inspirados en el comportamiento de insectos sociales, han reportado resultados promisorios en la búsqueda de soluciones a problemas complejos. El enrutamiento en redes con algoritmos distribuidos de hormigas, representan un nuevo y excitante tópico para investigación, porque creemos que el conocimiento en swarm intelligence [1] [2], hasta ahora, ha sido adquirido de manera fragmentada, y es tiempo de unir todas las piezas.

Concluimos que la simplicidad de la implementación del algoritmo presentado, juega un rol importante para alcanzar los objetivos.

Los resultados obtenidos en éste trabajo, podrían ser utilizados como punto de partida para el desarrollo de una aplicación del uso de la RTCG para el sector turístico de Guadalajara.

Referencias
[1] Dorigo, M., Di Caro, G., Gambardella, L., Ant Algorithms for Discrete Optimization. Artificial Life, The MIT Press. Volume5, Number 5, 1999
[2] Dorigo, M., Bonabeau, E. Theraulaz, G., Swarm Intelligence, From Natural to Artificial Systems.
The Santa Fe Institute Studies in the Sciences of Complexity. 1999
[3] Daganzo, C.F 1996), Logistic Systems Analysis, Springer-Verlag, Berlin.
[4] Robuste, F., Almogera, J.M., (1996) ” Sistema de ayuda a la decision para la reestrucuturacion de la red logistica de una empresa de trasporte urgente”, Colegio de Caminos, Canales Puertos, Madrid 22-24 de Mayo de 1996


Política de privacidad