Professional Documents
Culture Documents
Resumen—El siguiente documento presenta un análisis Son esencialmente algoritmos constructivos: en cada
introductorio relacionado al tema de optimización por iteración del algoritmo, cada hormiga construye una solución
colonia de hormigas, mejor conocido por sus siglas en al problema, recorriendo un grafo de construcción. Cada
inglés ACO. Debido a que muchos problemas de arista, (p,q) del grafo representa los posibles pasos que la
optimización en configuraciones geométricas son NP- hormiga puede dar y tiene asociadas dos informaciones que
duros, el algoritmo que se propone presenta una solución guían el movimiento de la hormiga:
aproximada, utilizando una técnica metaheurística.
Además, se presentará un problema de aplicación al - Información heurística, que mide la preferencia
algoritmo denominado como el “Problema del Agente heurística, η pq , de moverse desde el nodo p hasta el
Viajero” o TSP utilizando MATLAB.
nodo q, o sea, recorrer la arista. Las hormigas no
Índice de Términos— ACO, S-ACO, Metaheurística, modifican esta información durante la ejecución del
TSP algoritmo.
- Información de los rastros de feromona artificiales,
miden la “deseabilidad aprendida” del movimiento, τ pq
I. INTRODUCCIÓN , de p a q, imitando a la feromona real depositada por
en otro caso
{ }
α
La probabilidad pia ( t ) de que una hormiga llegue a tomar una - Un comportamiento promedio del sistema, no uno
estocástico.
decisión en i∈ {1,2 } y seleccione una rama a ∈ {s ,l } en un
- Es un modelo en tiempo discreto, utiliza ecuaciones
instante de tiempo t, está dada por una función del total de
de diferencias.
feromona en la rama φ ia (t ), la cual es proporcional al número
de hormigas que han usado esa rama hasta el tiempo t. V. HORMIGAS ARTIFICIALES Y TRAYECTORIAS DE MÍNIMO
Probabilidad de escoger el camino más corto: COSTO
α
( t s +φ is ( t )) Consideremos un grafo G=(N , A) donde N es el conjunto
pis ( t )= α α de n =|N| nodos y A es el conjunto de arcos indirectos que los
( t s +φis ( t ) ) + ( t s+ φil ( t ) ) conectan.
Con el uso de memoria, las hormigas pueden implementar un
Donde α =2 número de comportamientos útiles que permiten construir las
soluciones al problema del mínimo costo de trayectoria.
El modelo asume que la cantidad de feromona en una rama es
proporcional al número de hormigas que han utilizado la rama; Estos comportamientos son:
en este modelo no se considera la evaporación de la
feromona. a) Solución probabilística a través de rastros de
feromonas, sin actualización de feromona de frente.
IV. HORMIGAS ARTIFICIALES b) Trayectoria determinística de vuelta con un ciclo de
eliminación y con actualización de feromona.
Las hormigas se mueven eligiendo el camino de manera c) Evaluación de la calidad de las soluciones generadas
probabilística: y usar la solución para determinar la cantidad de
pis ( t ): Es la probabilidad para una hormiga localizada en el feromona que se ha depositado.
d) Implementación de la evaporación de la feromona.
nodo i en el tiempo t para elegir el camino más corto, y pil ( t )
la probabilidad para elegir el camino más largo.
Estas probabilidades están en función del rastro de feromona El algoritmo Simple ACO (S-ACO) se implementa esos
φ ia (t ) de hormigas en el nodo i (i∈ {1,2 }) encontrada en la comportamientos más la evaporación de la feromona.
El modelo considera:
OPTIMIZACIÓN POR COLONIA DE HORMIGAS 4
c) Actualización de la feromona basada en la calidad eliminan ciclos que se crearon mientras se buscaba el
de la solución: La intensidad de la feromona decrece nodo destino.
con respecto al tiempo debido a la evaporación. 3. Durante el regreso, la k-ésima hormiga deposita una
cantidad de ∆ τ k feromona, en los arcos que ha
VI. S-ACO
visitado:
τ αij
{ }
k
k k α
si j ∈ N i
p=ij ∑l∈N τi il
0 , si j∉ N ki
Sk = Sk Å j
}
X.REFERENCIAS
Tamaño N=5, 5!=120 Posibles soluciones [4] Eric Bonabeau, M. Dorigo, Guy Theraulaz. Swarm
intelligence: from natural to artificial systems, Oxford
University Press
N=6, 6!=720
N=100, 100! = ? XI. A A: C F PÉNDICE ÓDIGO UENTE
1. main.m
Por lo que cada punto en el grafo, es una permutación de las
ciudades. El siguiente archivo considera los siguientes parámetros
para su ejecución:
El espacio de búsqueda se puede representar mediante el
siguiente diagrama de árbol, definiendo las posibles - x: vector de ubicación en el eje x de la ciudad
combinaciones: (coordenada x)
- y: vector de ubicación en el eje y de la ciudad
(coordenada y)
1 - d: Distancia total para cada posible ruta entre
ciudades
Sk: Solución o permutación construida por la hormiga k - t: Trazado de la ruta primaria, ones forma una matriz
de n x n. Representación del rastro de feromona
Sk = Ciudad_Inicial; (escogida de acuerdo a algún criterio)
mientras no se haya completado el tour puede ser realizado a través de una matriz de
{ números reales (t) de n x n.
Seleccionar próxima ciudad (j) con probabilidad
(i es la última ciudad incluida)
OPTIMIZACIÓN POR COLONIA DE HORMIGAS 6
80
function [cost,f]=
Distancia
cost_hormigas(m,n,d,at,el);
60
% m: Hormigas
% n: Nodos 40
% d: Distancia 0 10 20 30 40 50 60 70 80 90 100
Iteración
% at: Tour con probabilidad Curso óptimo de tamaño: 45.562
% el: Coeficiente de costo de 6 nodo 3
nodo 10
nodo 6
s=0; 0 nodo 7 nodo 11
nodo 4
for j=1:n %Hasta la última ciudad -2 nodo 5
-5 0 5 10 15
s=s+d(at(i,j),at(i,j+1)); X
end
f(i)=s; %Valor objetivo de la
solución k
end
cost=f;
f=f-el*min(f);%Eliminación de costo
común
6. actualización_rastro.m
70
Distancia
60
50
40
0 10 20 30 40 50 60 70 80 90 100
Iteración
Curso óptimo de tamaño: 45.562
6 nodo 3
4 nodo 2 nodo 12 8
nodo
nodo 13
2 nodo 9 nodo 1 nodo 14
y
nodo 10
0 nodo 6
nodo 7 nodo 11
nodo 4
-2 nodo 5
-5 0 5 10 15
X
70
Distancia
60
50
40
0 10 20 30 40 50 60 70 80 90 100
Iteración
Curso óptimo de tamaño: 45.7844
6 nodo 3
4 nodo 2 nodo 12 8
nodo
nodo 13
2 nodo 9 nodo 1 nodo 14
y
nodo 10
0 nodo 6
nodo 7 nodo 11
nodo 4
-2 nodo 5
-5 0 5 10 15
X