Professional Documents
Culture Documents
1
Swarm Intelligence
Tpicos
- No Dia a Dia -
Trnsito (a ao dos indivduos influi na organizao do todo) Swarm Intelligence
http://vwisb7.vkw.tu-dresden.de/~treiber/MicroApplet/ Ant Colony Optimization ACO
Atribuio de pequenas tarefas para uma equipe em um grande Particle Swarm Optimization PSO
projeto
Ant Clustering Algorithms - ACA
Linha de montagem
Cirurgia Mdica
7 8
2
Ant Colony Optimization Ant Colony Optimization
Dado um grafo com n vrtices, colocar uma formiga artificial em
cada um destes.
13 14
15 16
17 18
3
Ant Colony Optimization
Ant Colony Optimization
- build_solution() -
Para construir a soluo, cada formiga utiliza iterativamente uma funo
probabilstica para decidir se incluir ou no determinada aresta na soluo.
While it < max_it do,
i, j (t ) i , j
for each ant do, se j J k
pik, j (t ) = k i, j (t ) i , j
build_solution(); jJ
c.c.
0
endfor
Onde:
update_pheromone();
JK a lista de vrtices no visitados;
endwhile i,j a quantidade de feromnio na aresta (i,j);
i,j a informao de qualidade dessa aresta (geralmente determinada pelo inverso
da distncia)
e so parmetros que definem o grau de importncia de e , respectivamente.
Dorigo, M. Optimization, Learning and Natural Algorithms. Politecnico di Milano, Italy, 1992.
19 20
Aplicaes Aplicaes
TSP Sequential Ordering Problem
Dorigo M., V. Maniezzo & A. Colorni (1996). Ant System: Optimization by a colony of cooperating agents.
IEEE Transactions on Systems, Man, and Cybernetics-Part B, 26(1):29-41
Colorni A., M.Dorigo, F.Maffioli, V. Maniezzo, G. Righini, M. Trubian (1996). Heuristics from Nature for Hard
Combinatorial Problems. International Transactions in Operational Research, 3(1):1-21.
Dorigo M. & L.M. Gambardella (1997). Ant Colony System: A Cooperative Learning Approach to the Traveling
Salesman Problem. IEEE Transactions on Evolutionary Computation, 1(1):53-66. (Also Tecnical Report
TR/IRIDIA/1996-5, IRIDIA, Universit Libre de Bruxelles.)
Dorigo M. & L.M. Gambardella (1997). Ant Colonies for the Traveling Salesman Problem. BioSystems, 43:73-
81. Also Tecnical Report TR/IRIDIA/1996-3, IRIDIA, Universit Libre de Bruxelles:
Similar ao TSP, mas com restrio de precedncia (deve-se
Bullnheimer B., R. F. Hartl & C. Strauss (1999). A New Rank Based Version of the Ant System: A visitar um certo vrtice k antes de passar pelo vrtice l)
Computational Study. Central European Journal for Operations Research and Economics, 7(1):25-38, 1999.
Also available as Working paper POM 3/97, Institute of Management Science, University of Vienna, Austria:
23 24
4
Aplicaes Aplicaes
Sequential Ordering Problem Sequential Ordering Problem
Considere um grafo G = (V, E), com V sendo o conjunto de vrtices Esse problema pode ser escrito como um caso geral do ATSP
e E o conjunto de arestas. (asymmetric traveling salesman problem).
Os vrtices correspondem s tarefas que devem ser realizadas Basta definir as distncias dij de uma aresta do TSP como sendo
sequencialmente.
dij = tij + pj.
A cada aresta (i,j) associado um custo tij que representa o tempo
necessrio para o incio da tarefa j aps a concluso de i. Com isso podemos usar o ACO sem muitas alteraes.
Para cada vrtice i, associado um custo pi que representa o tempo nica diferena que devemos lidar: a lista tabu deve proibir
necessrio para a concluso dessa tarefa. arestas que no obedeam restrio de precedncia.
Aplicaes Aplicaes
Sequential Ordering Problem Vehicle Routing
Gambardella L. M. and M. Dorigo (1997). HAS-SOP: An Hybrid Ant System for the Sequential
Ordering Problem. Tech. Rep. No. IDSIA 97-11, IDSIA, Lugano, Switzerland.
Aplicaes Aplicaes
Vehicle Routing Vehicle Routing
Nesse problema: Ento, para adaptar o ACO a esse problema, basta fazer com
Cada cliente visitado uma nica vez por exatamente um que cada formiga gere o caminho iterativamente conforme o
veculo algoritmo padro e, ao violar uma das restries, volte ao
todas as rotas de cada veculos iniciam e terminam no depsito e inicie uma nova rota com outro veculo.
depsito
cada rota a demanda total no pode exceder a capacidade
do veculo
o comprimento total de cada rota no excede um dado
limitante L
5
Aplicaes Aplicaes
Vehicle Routing Telecommunications
Bullnheimer B., R.F. Hartl and C. Strauss (1999). An Improved Ant system Algorithm for the Vehicle
Routing Problem. Paper presented at the Sixth Viennese workshop on Optimal Control, Dynamic Games,
Nonlinear Dynamics and Adaptive Systems, Vienna (Austria), May 21-23, 1997, to appear in: Annals of
Operations Research (Dawid, Feichtinger and Hartl (eds.): Nonlinear Economic Dynamics and Control, 1999.
Bullnheimer B., R.F. Hartl and C. Strauss (1999). Applying the Ant System to the Vehicle Routing
Problem. In: Voss S., Martello S., Osman I.H., Roucairol C. (eds.), Meta-Heuristics: Advances and Trends in
Local Search Paradigms for Optimization, Kluwer:Boston.
Bullnheimer B. (1999). Ant Colony Optimization in Vehicle Routing. Doctoral thesis, University of Vienna,
January 1999.
Aplicaes Aplicaes
Telecommunications Telecommunications
Aplicaes Aplicaes
Telecommunications Telecommunications
vizinhos vizinhos
2 2
2 4 2 4
1
3
2 0.95 0.05 1
3
2 0.95 0.05
destino
destino
6
Aplicaes Aplicaes
Telecommunications Telecommunications
Schoonderwoerd R., O. Holland, J. Bruten and L. Rothkrantz (1997). Ant-based Load Balancing in
vizinhos Telecommunications Networks. Adaptive Behavior, 5(2):169-207.
2
2 4 Schoonderwoerd R., O. Holland and J. Bruten (1997). Ant-like Agents for Load Balancing in
Telecommunications Networks. Proceedings of Agents'97, Marina del Rey, CA, ACM Press, 209-216.
1
3
2 0.95 0.05 Di Caro G. and M. Dorigo (1997). AntNet: A Mobile Agents Approach to Adaptive Routing. Tech. Rep.
destino
IRIDIA/97-12, Universit Libre de Bruxelles, Belgium.
3 0.49 0.51
Di Caro G. and M. Dorigo (1998). Mobile Agents for Adaptive Routing. Proceedings of the 31st Hawaii
4
4 0.05 0.95 International Conference on System, IEEE Computer Society Press, Los Alamitos, CA, 74-83.
Di Caro G. & Dorigo M. (1998). AntNet: Distributed Stigmergetic Control for Communications
Networks. Journal of Artificial Intelligence Research (JAIR), 9:317-365.
Navarro Varela G. and M.C. Sinclair (1999). Ant Colony Optimisation for Virtual-Wavelength-Path
Routing and Wavelength Allocation. Proceedings of the Congress on Evolutionary Computation (CEC'99),
Essa aplicao diferente das outras abordagens pois ele nunca Washington DC, USA, July 1999.
converge (nunca para), sendo que a rede sofre constantes Ducatelle, F., G. Di Caro and L. M. Gambardella (2005). Using Ant Agents to Combine Reactive and
alteraes. Proactive Strategies for Routing in Mobile Ad Hoc Networks. International Journal of Computational
Intelligence and Applications (IJCIA), Special Issue on Nature-Inspired Approaches to Networks and
Telecommunications, Volume 5, Number 2, Pages 169-184, June 2005
37 38
Aplicaes Aplicaes
Quadratic Assigment Problem Quadratic Assigment Problem
A formulao desse problema descrita a seguir:
s.a.:
Aplicaes Aplicaes
Quadratic Assigment Problem Quadratic Assigment Problem
Maniezzo V., A. Colorni and M. Dorigo (1994). The Ant System Applied to the Quadratic
Assignment Problem. Tech. Rep. IRIDIA/94-28, Universit Libre de Bruxelles, Belgium.
Maniezzo V., L. Muzio, A. Colorni and M. Dorigo (1994). Il sistema formiche applicato al
Para resolv-lo utilizando ACO, basta fazer com que cada formiga, ao problema dell'assegnamento quadratico. Technical Report No. 94-058, Politecnico di Milano,
invs de traar um caminho, escolha seqencialmente um par (i,j) at Italy, in Italian.
completar uma soluo. Taillard E. and L. M. Gambardella (1997). An Ant Approach for Structured Quadratic
Assignment Problems. 2nd Metaheuristics International Conference (MIC-97), Sophia-Antipolis,
France - July 21-24, 1997.
A lista de movimentos tabu definida como (i,j) para cada elemento i que
j foi alocado e para cada centro j. Adicionalmente, a varivel ij Maniezzo V. (1998). Exact and approximate nondeterministic tree-search procedures for the
quadratic assignment problem. Research Report CSR 98-1, Scienze dell'Informazione,
construda utilizando algum limitante inferior (limitantes de Gilmore e Universit^ di Bologna, Sede di Cesena, Italy.
Lawler) definido para este problema, servindo como indicativo da
qualidade de cada pedao da soluo. Gambardella L. M., E. Taillard and M. Dorigo (1999). Ant Colonies for the Quadratic
Assignment Problem. Journal of the Operational Research Society, 50:167-176.
Maniezzo V. and A. Colorni (1999). The Ant System Applied to the Quadratic Assignment
Problem. IEEE Transactions on Knowledge and Data Engineering, to appear.
Sttzle T. and M. Dorigo (1999). ACO Algorithms for the Quadratic Assignment Problem. In
41 D. Corne, M. Dorigo and F. Glover, editors, New Ideas in Optimization, McGraw-Hill. 42
7
Aplicaes Aplicaes
P-Medianas P-Medianas
Nesse caso deve-se resolver dois problemas: primeiro encontrar um grupo
de p centros e, em seguida, alocar todos os clientes esses centros.
s.a.:
Aplicaes Aplicaes
P-Medianas P-Medianas
Onde: Para aplicar o ACO a esse problema, o feromnio deixa de ser matriz e
n = nmero de ns em um grafo passa a ser um vetor i representando a probabilidade de um n ser escolhido
ai = demanda do n i para fazer parte do conjunto de medianas.
cj = capacidade da mediana j
dij = distncia entre ns i e j As formigas ento escolhem seqencialmente, pela equao probabilstica,
p = nmero de medianas a serem alocadas se um dado n far parte da soluo ou no at que uma soluo seja
formada.
Aplicaes Aplicaes
P-Medianas Scheduling (escalonamento)
De Frana, F. O., F. J. Von Zuben e L. N. de Castro. A Max Min Ant System Applied To The
Capacitated Clustering Problem. 2004 IEEE Workshop on Machine Learning for Signal Processing.
So Luiz, Brasil: Proceedings of the 2004 IEEE International Workshop on Machine Learning for
Signal Processing, 2004b. 755-764 p.
De Frana, F. O., F. J. Von Zuben e L. N. de Castro. Max Min Ant System and Capacitated p-Medians:
Extensions and Improved Solutions. Informatica, v.29, n.2, p.163-171. 2005.
8
Aplicaes Aplicaes
Scheduling (escalonamento) Scheduling (escalonamento)
Para utilizarmos o ACO nesse problema, precisamos primeiro A outra matriz a matriz P, onde cada elemento pij determina
represent-lo na forma de grafo. o tempo gasto para executar a tarefa i na mquina j.
Primeiramente, deve-se definir duas matrizes, a matriz T =
{tij} onde cada elemento indica que a mquina tij deve ser Com essas duas matrizes, podemos montar um grafo onde
utilizada pela tarefa i na j-sima seqncia. Ex.: cada n representa um elemento da matriz T e o peso das arestas
so os elementos da matriz P em relao ao n destino (Ex.:
M1 M2 M3 caso a aresta indique que, aps alocar a tarefa 1 mquina 1
T = M3 M1 M2 devemos alocar a tarefa 2 mquina 3, ento o peso da aresta
ser p23).
M2 M1 M3
A lista de movimentos tabus definida como os elementos j
Na tabela T, podemos verificar que na tarefa 2 devemos usar as
escolhidos e os que no desrespeitam a precedncia de
mquinas M3, M1 e M2 nessa seqncia.
alocaes de mquinas de determinada tarefa.
49 50
Aplicaes
ACO para problemas contnuos
Scheduling
Uma forma de utilizar os conceitos de ACO para otimizao em
ambientes contnuos transformar a trilha de feromnio em uma
distribuio normal de probabilidade.
Colorni A., M. Dorigo, V. Maniezzo and M. Trubian (1994). Ant system for Job-shop Scheduling.
JORBEL - Belgian Journal of Operations Research, Statistics and Computer Science, 34(1):39-53. Como, na realidade, a trilha de feromnio deixada pelas formigas tem
uma intensidade crescente e contnua em direo fonte de alimento,
Forsyth P. and A. Wren (1997). An Ant System for Bus Driver Scheduling. Presented at the 7th
International Workshop on Computer-Aided Scheduling of Public Transport, Boston, August 1997.
podemos dizer que a intensidade do feromnio tende a aumentar quando
caminhando em direo varivel x tima.
0.98 0.9
0.8
0.96 0.8
0.6
0.94
0.7
0.4
0.92
0.6
0.2
0.9
0.5
0
0.88
0.4
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
x x x
0.8 0.8
Dessa forma, a cada iterao a altura da funo de distribuio aumenta 0.6 0.6
e sua largura diminui, convergindo para uma soluo no espao de 0.4 0.4
9
ACO para problemas contnuos Tpicos
Swarm Intelligence
Ant Colony Optimization ACO
Seid H. Pourtakdoust, Hadi Nobahari: An Extension of Ant Colony System to Continuous Optimization
Problems. ANTS Workshop 2004: 294-301 . Particle Swarm Optimization PSO
Mathur, M., Karale, S.B., Priye, S., Jayaraman, V.K., and Kulkarni, B.D. Ant Colony Approach to
Continuous Function Optimization. Ind. Eng. Chem. Res., 39, 10, 3814 - 3822,
Ant Clustering Algorithms - ACA
2000, 10.1021/ie990700g
55 56
10
Particle Swarm Optimization - Particle Swarm Optimization -
PSO PSO
(x-g)
v = .v + c1.r.(x-xl) + c2.r.(x-g)
(x-xl)
x=x+v
Iterativamente cada partcula utiliza a informao de sua E ento ela se move em uma combinao linear desses dois
melhor posio no passado (em cinza) e da melhor posio 61
vetores, com pesos diferentes, em uma nova posio. 62
atual entre seus vizinhos.
PSO PSO
- Por dentro das frmulas - - Algoritmo -
x = initialize()
fx = eval(x)
For it = 1 to max_it do,
x=x+v For i = 1 to n do,
v = . v + c1.r.(x-xl) + c2.r.(x-g) For j = 1 to m do,
Onde: vij = w*vij + c1*rand()*(xij xlij) + c2*rand()*(xij gij)
xij = xij + vij
x a posio da partcula
End
xl a melhor posio j visitada por essa partcula
End
g a melhor partcula da vizinhana
fx = eval(x)
v a velocidade (direo) de caminhada da partcula
End
o coeficiente de desacelerao
c1 e c2 so
Onde:
r uma varivel aleatria entre [0;1]
n o nmero de partculas
m a dimenso do problema
63 64
Onwubolu, G. C. and Clerc, M., "Optimal path for automated drilling operations by a new heuristic
approach using particle swarm optimization," International Journal of Production Research, vol. 4
pp. 473-491, 2004.
65 66
11
Ant Clustering Algorithm
67
12