Está en la página 1de 7

Marco de Desarrollo Para la Optimizacin Basada en Algoritmos de Colonia de Hormigas

Heder Julio Salgado


Universidad tecnolgica de bolvar, Facultad de ingeniera de sistemas, Inteligencia Artificial Colombia departamento de bolvar Cartagena 2011

Abstract
This paper provides an overview of the optimization metaheuristic based on ant colony, describing several existing optimization models where we took of the page TSPLIB one of the best solutions to Heidelberg University to implement one of the algorithms based on TSP, of course we take the algorithm of ant colony optimization and implemented a solution called eil51 dealing with 51 vertices for a particular solution of the algorithm, making it virtually have a desktop test if the algorithm is efficient .

Palabras claves
Optimizacin, Colonia, Hormigas, Nodos, Ciclos, Distancia, Aristas, Peso, Feromonas, Recorrido, Rastro ,Corto, Ruta, Evaporacin, Camino

1.) Introduccin
El trabajo se refiere a problemas de optimizacin, donde las soluciones posibles conforman un conjunto muy discreto (por ejemplo con el peso, o la distancia) cuando el tamao del dominio del problema no es muy grande se puede abortar con soluciones optimas globales conocidas como Heuristicas, sin embargo en medida que el dominio aumenta el problema se vuelve cada vez mas complejo y hay que recurrir a soluciones de calidad aunque no sean las mas optimas denominadas metaheuristicas. En el comportamiento de las hormigas se distingue la bsqueda de alimentos, trazando el camino mas corto entre el hormiguero y el emplazamiento de alimentos, el eje de esta bsqueda es el depsito de feromona como rastro que orienta el recorrido. Las hormigas prefieren seguir la mayor concentracin de feromona, la misma que se consigue por el recorrido mas corto hecho por hormigas. En principio siguen rutas aleatorias, pero las que han utilizado las de menor longitud pueden regresar mas rpidamente pues transitan a una velocidad uniforme y repetir el camino dejando una mayor densidad de huellas de feromonas, las depositadas en las otra rutas se van evaporando y dejan de tener inters en nuevos recorridos.

2.) Optimizacin con Colonias de Hormigas


Muchas veces para resolver problemas de inteligencia artificial no hay nada como fijarse en la naturaleza. Uno de estos casos es la capacidad que tienen las hormigas para encontrar el camino ms corto entre la comida y el hormiguero, teniendo en cuenta que las hormigas son ciegas. Pero actuando como una colonia y no como individuos aislados consiguen el objetivo.

2.1.) Las Hormigas en la naturaleza


Las hormigas son ciegas y salen del hormiguero en busca de comida sin nada que las oriente, van caminando a ciegas en busca de alimento hasta que lo encuentran, luego regresan al hormiguero y comunica al resto de las hormigas el camino hacia la comida y no solo eso, sino que ha medida que van ms hormigas consiguen optimizarse para encontrar el camino ms corto del hormiguero a la fuente de alimento. Cmo es esto posible si son ciegas y no tienen un medio de comunicacin entre ellas? La clave est en las feromonas. Las hormigas al caminar van dejando tras de s una sustancia llamada feromonas que aparte de servirle para encontrar el camino de regreso al hormiguero sirve para orientar a otras hormigas hacia la comida. Las hormigas tienden a seguir el rastro de feromonas de otros individuos de su especie. Las hormigas solo detectan las feromonas cuando estn en contacto directo con ella, es decir, es un contacto local.

2.2.) Optimizando el resultado


Y como pueden encontrar el camino ms cort con este mtodo? Las feromonas es una sustancia qumica que al pasar otra hormiga por el mismo lugar intensifica y si no pasa ninguna con el tiempo se evapora. Esto hace que entre ms hormigas pasan por un lugar ms feromonas tendr ese camino y ms deseable ser para otras hormigas, en cambio en los caminos menos transitados se van evaporando las feromonas haciendo que sean menos deseables.

3.) Descripcin

En la imagen superior podemos ver dos caminos para llegar desde el hormiguero hasta la comida, en principio, las hormigas a ciegas elegirn aleatoriamente uno de las dos caminos como podemos ver en B. Es obvio que el camino superior es mucho ms corto, esto produce que las hormigas que han optado por el camino superior lleguen y vuelvan ms rpido a la comida que las que eligen el camino inferior, al ir y venir ms rpido la cantidad de feromonas se ver reforzada ms rpidamente y se evaporar mucho ms despacio. Con esto se conseguir que prximas hormigas a la hora de decidir uno de los dos caminos elijan el camino con ms feromonas, reforzando el camino superior y hacienda cada vez menos atractivo el camino inferior. Al cabo de un tiempo casi todas las hormigas irn por el camino superior como podemos ver en D. Aqu hemos visto como las hormigas en la naturaleza sin comunicarse entre ellas son capaces de organizarse como una colonia para lograr un objetivo comn. Los individuos por si solo no son nada, pero la suma de los agentes hace un sistema muy eficaz, en el prximo artculo veremos como aplicar esto en un programa informtico para encontrar el camino ms cort.

4.) Implementacin de la Liberia Eil51 al algoritmo de optimizacin de colonias de hormigas


Dado que el problema esta basado en TSP buscando el camino ms cort y siendo uno de los problemas de optimizacin mas conocidos, en su formulacin mas general dada una serie de ciudades o puntos el objetivo consiste en encontrar el camino con menor coste que parte de una ciudad o un punto que pase por todas las dems una vez sin repetirla y retorne a la ciudad o el punto de origen en nuestro caso trabajaremos con una instancia del problema obtenida de lTSPLIB todas ellas correspondientes a TSP Simtrico la escogida fue:

Eil51: tamao 51 ciudades o vrtices

coste de la solucin ptima: 426

Luego de introducir al algoritmo el nodo con los 51 vrtices de eil51, definimos nodos para convertirlo en la matriz de distancia con la formula general aplicada al algebra entre distancia entre dos puntos calculando puntos en (x1, y1) y (x2, y2) para calcular la distancia y el coste de un punto a otro. A partir de un ciclo se llenan los vectores N,P;T donde N es la heurstica local, T es la vector Feromonas y P el vector peso, estas variables inicialmente eran matrices, pero como vamos a trabajar con nodos se inicializan en 0 y se calculan como un vector para la formula general de distancia entre dos puntos El resultado obtenido fue de 466 aproximndose mucho al resultado original que es de 426 estando en un rango de 95% de optimizacin despus de muchas pruebas y basndose en eil 51 tratando de encontrar una mejor matriz el mejor resultado que nosotros encontramos fue muy cercano

4.1.) Calculando la distancia while j<51: vector_pesos.append(0) vector_t.append(1.5) vectorn.append(0) j=j+1 pesos.append(vector_pesos) t.append(vector_t) n.append(vectorn) i=i+1 i=j=0 while i<51: j=i while j<51: #calcular funcion distancia distanciaenx=nodos[i][0]-nodos[j][0] distanciaeny=nodos[i][1]-nodos[j][1] distanciatotal=round(math.sqrt(distanciaenx*distanciaenx+distanciaeny*distanc iaeny)) if distanciatotal==0: pesos[i][j]=1 pesos[j][i]=1 else: pesos[i][j]=distanciatotal pesos[j][i]=distanciatotal j=j+1 i=i+1

Imprimiendo las iteraciones, el numero de hormigas en cada iteracin, la mejor solucin inicial y la mejor solucin encontrada

5.) Conclusin
Podemos concluir de este trabajo que la tcnica de optimizacin basada en colonias de hormigas e implementando una solucin particular eil51 de 51 vrtices o puntos y calculando para cada punto la distancia entre dos puntos de la forma general algebraica que calcula las coordenadas de X y Y para las 51 aristas que tiene la implementacin del nuevo nodo a calcular. Luego de calcular la distancia entre dos puntos lo que se quiere buscar es el camino mas corto entre esos diferentes vrtices, hay juega un papel muy importante saber o tener muy bien implementado el algoritmo para que as al leer el nodo y con las diferentes iteraciones lograr una muy buena respuesta, en el caso de este trabajo logramos un muy buen resultado ya que fue muy satisfactorio probar eil51 con el algoritmo que ya tenamos, eso quiere decir que el algoritmo de optimizacin de hormigas estaba muy bien implementado y optimizo muy bien

Referencias
[1] La Metaheurstica de Optimizacin Basada en Colonias de Hormigas: Modelos y Nuevos Enfoques* Sergio Alonso, Oscar Cordn, Iaki Fernndez de Viana, Francisco Herrera Tomado de http://sci2s.ugr.es/publications/ficheros/OCH%20Modelos%20y

[2] Razn Artificial por Adrin Guerra Marrero El contenido de este sitio est bajo licencia http://razonartificial.com/2010/01/optimizacion-basada-en-colonias-de-hormigas-

[3]

UNIVERSIDAD DE GRANADA E.T.S. DE INGENIER_IA INFORM_ATICA Departamento de Ciencias de la Computacin http://sci2s.ugr.es/docencia/bioinformatica Algoritmos de Optimizacin Basados en Colonias de Hormigas Curso 2010-2011 http://sci2s.ugr.es/docencia/bioinformatica/bio/ficheros/Practicas/p1/P1_10-11.pdf