Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
iterao.
O ponto de mnimo obtido foi:
F
*
= -18.2155
E as variveis de projeto correspondentes ao pnto de mnimo:
X
*
=[ 9.0111 ; 8.7895 ].
FAMAT em Revista - Nmero 04 - Abril de 2005 91
Tabela 1- Evoluo do Mtodo de Ordem Zero aplicado Equao (3)
Iterao X(1) X(2) F(X)
3 8.1776 8.3915 -0.2517
5 9.3963 8.2914 -8.0677
8 9.1431 8.3260 -15.674
26 8.9579 8.5686 -17.898
58 9.0111 8.7895 -18.216
a)
b)
Figura 2- (a) Grfico da funo da Equao (3), (b) curvas de nvel desta funo.
92 FAMAT em Revista - Nmero 04 - Abril de 2005
Os pontos randmicos criados pelo algoritmo podem ser visualizados na Fig. 3, nota-
se que o ponto mnimo obtido ainda pode ser melhorado.
Figura 3- Evoluo do Mtodo de Ordem Zero aplicado Equao (3).
3. OTIMIZAO POR COLNIA DE PARTCULAS (PARTICLE SWARM
OPTIMIZATION)
Otimizao por colnia de partculas (PSO), uma tcnica de otimizao desenvolvida
na dcada de 90, mais precisamente em 1995, por James Kennedy e Russel Eberhart. Neste
modelo analisado algoritmos que modelam o comportamento social visto em vrias
espcies de pssaros.
Dentre vrios modelos vamos estudar a tcnica desenvolvida pelo bilogo Frank
Heppener que baseada no seguinte comportamento: pssaros esto dispostos aleatoriamente
e estes esto a procura por alimento e um local para construir o seu ninho,eles no sabem
onde est esse lugar e este nico. A indagao qual o melhor comportamento que os
pssaros tero que realizar para conseguir efetuar seu objetivo, parece mais evidente que eles
sigam o pssaro que estiver mais prximo do alimento ou do ninho. Inicialmente os pssaros
voam sem nenhuma orientao prvia, eles se aglomeram em bandos, at que um consegue
encontrar o ninho e atrai os que estiverem mais prximos.
Pelo fato de um pssaro encontrar o ninho a chance de os outros pssaros tambm
encontrarem aumenta consideravelmente, isto se deve ao fato de a inteligncia ser social, ou
seja, o indivduo aprende com o acerto do outro.
FAMAT em Revista - Nmero 04 - Abril de 2005 93
3.1 O algoritmo Paticle Swarm Optimization
O algoritmo Particle Swarm Optimization (PSO) foi introduzido por James Kennedy e
Russell Elberhart em 1995 e emergiu de esperincias com algoritmos que modelam o
comportamento social observado em muitas espcies de pssaros (Pomeroy, 2003), os
pssaros so chamados de partculas e durante a busca por alimento ou ninho usam de suas
experincias e da experincia do bando. O PSO um algoritmo que possui um vetor de
velocidades e outro de posio, a posio de cada partcula atualizada de acordo com a
velocidade atual, o saber adquirido pela partcula e o saber adquirido pelo bando. O
fluxograma mostrado na Figura 4 representa um esboo do algoritmo (Rojas et al, 2004).
A posio das partculas calculada segundo a equao:
=
+
i
k
x
1
i
k
i
k
v x
1 +
+ t (5)
Onde:
i
k
x
1 +
a posio de cada partcula i na iterao k+1
i
k
v
1 +
o vetor de velocidade desta partcula
t: equivale ao espao de tempo considerado.
Figura 4 Fluxograma para o algoritmo PSO bsico
94 FAMAT em Revista - Nmero 04 - Abril de 2005
O vetor de velocidade atualizado conforme a equao:
i
k
v
1 +
=
i
k
wv +
1
c
1
r
t
x p
i
k
i
) (
+
2 2
r c
t
x p
i
k
s
k
) (
(6)
Considerando que, v
k
i
a velocidade atual da partcula;
1
r ,
2
r so nmeros aleatrios entre 0 e 1;
i
p a melhor posio encontrada pela partcula i e
s
k
p a melhor posio do bando na iterao k.
O clculo da velocidade necessita, ainda, de alguns parmetros dependentes do
problema, que so: a inrcia da partcula (w), que controla a capacidade de explorao do
algoritmo, ou seja, um valor alto facilita um comportamento mais global, enquanto um valor
baixo facilita um comportamento mais local (Venter e Sobieszczanski-Sobieski, 2002), e os
dois parmetros de confiana c
1
e, c
2
que indicam o quanto uma partcula confia em si (c
1
),e
no bando (c
2
). A Figura 5 mostra a aplicao da equao anterior, considerando duas
partculas se deslocando em um espao de projeto bidimensional.
Os parmetros de confiana e de inrcia, devem ser ajustados de acordo com o
problema, pois so utilizados para a atualizao do vetor velocidade. Alguns autores propem
que sejam adotados c
1
= c
2
= 2 e 0.7 < w < 1.4. Sugere-se, tambm, a adoo de valores
diferentes para c
1
e c
2
desde que satisfaam c
1
+ c
2
= 4.
A inrcia pode ser atualizada de forma iterativa pela expresso:
new
w =
w
f
old
w (7)
Considerando o fator de reduo, f
w
uma constante entre 0 e 1. So usados neste trabalho,a
inrcia constante w
0
= 0.729 e c
1
= c
2
= 2.
FAMAT em Revista - Nmero 04 - Abril de 2005 95
Figura 5: Vetor de velocidades em ao
Onde:
v
s
i
velocidade prxima ao timo da colnia
v
p
i
velocidade prxima ao timo da partcula
p
s
colnia tima
p
i
partcula tima
- posio atual
- posio prxima
3.2 Colnia Inicial
A inicializao da populao de colnia normalmente obtida com as partculas dispostas
aleatoriamente sobre o espao de projeto, cada uma possui um vetor de velocidade aleatrio
inicial. As equaes a seguir mostram como so obtidos a posio e o vetor de velocidades
iniciais.
i
x
0
=
min
x + ) (
min max 1
x x r (8)
96 FAMAT em Revista - Nmero 04 - Abril de 2005
t
x x r x
v
i
+
=
) (
min max 2 min
0
(9)
Onde,
1
r e
2
r so nmeros aleatrios entre 0 e 1;
min
x o limite interior das restries laterais para as variveis de projeto;
max
x o limite superior das restries laterais para as variveis de projeto.
3.3 Otimizao com restries
Os algarismos evolutivos e PSO, por tratarem-se de algoritmos naturais, no trabalham
diretamente com restries. Uma estratgia para se fazer com que estes algoritmos manipulem
restries, utilizao de funes de penalidade quadrtica estendida.
Assim, defini-se uma funo pseudo-objetivo definida (x):
(x) = f(x) + rp
2
1
)] ( , 0 max[ x g
i
m
i
=
(10)
Sendo,
f(x) a funo objetivo original;
rp um fator de penalidade (de ordem varivel segundo o tipo de problema);
) (x g
i
o conjunto de todas as restries (com violaes para ) (x g
i
>0);
Quando h restries nos problemas de otimizao, as partculas que desrespeitam
alguma restrio se enquadram em um grupo que merecem um tratamento especial, esse
tratamento se inicia pelo clculo do novo vetor de velocidade, dado pela seguinte equao:
i
k
v
1 +
=
1
c
1
r +
t
x p
i
k
i
) (
2 2
r c
t
x p
i
k
s
k
) (
(11)
Observe que a Equao (11) no leva em considerao a informao do vetor de
velocidade na iterao anterior para o novo clculo do vetor de velocidade, isto se deve ao
fato de a partcula estar se divergindo em direo a uma violao.
FAMAT em Revista - Nmero 04 - Abril de 2005 97
Na maioria das vezes este novo vetor de velocidades se destinar a uma regio vivel e
a partcula sai da restrio.
3.4 Variveis de Projeto Discretas / Inteiras
O PSO um algoritmo contnuo, contrapondo os Algoritmos Genticos que
primeiramente eram destinados a variveis discretas. Porm, o PSO pode ser muito eficiente
na resoluo de problemas com variveis discretas, desde que sejam feitas algumas
modificaes no algoritmo, por exemplo a posio de cada partcula arredondada para o
valor inteiro mais prximo logo em seguida a aplicao da Equao (5) ou da Equao (8).
4. SIMULAO NUMRICA
Para a realizao de simulaes numricas foram utilizados o programa GAOT para
Algoritmos Genticos e um cdigo desenvolvido em Matlab para o PSO
Exemplo 1:
a) min f(x) = exp(x) * sen(x) ; 0 <x < 9,3;
GAOT: f(x) = -172,6409;
x = 5,4978;
PSO: f(x) = -172,6409;
x = 5,4978;
b) mx f(x) = exp(x) * sen(x) ; 0 <x< 9.3;
GAOT: f(x) = 3995,0;
x =8,6394;
PSO: f(x) = 3995,0;
x = 8,6394;
98 FAMAT em Revista - Nmero 04 - Abril de 2005
Figura 6 Representao grfica de y = exp (x) * sen (x)
Exemplo 2:
a) min f(x) = (x
1
+ 2)
2
+ (x
2
1)
2
; -10<x
1
<10; -10<x
2
<10;
GAOT: f(x) = 0;
x = [-2 1];
PSO: f(x) = 0;
x = [-2 1];
b) mx f(x) = (x
1
+ 2)
2
+ (x
2
1)
2
; -10<x
1
<10; -10<x
2
<10;
GAOT: f(x) = 265;
x = [10 -10];
PSO: f(x) = 265;
x = [10 -10];
Figura 7 Representao grfica de y = (x
1
+2)
2
+ (x
2
2)
2
FAMAT em Revista - Nmero 04 - Abril de 2005 99
Exemplo 3:
a) min f(x) = (x
1
+ 2)
2
+ (x
2
1)
2
+ x
3
; -10<x
1
<10; -10<x
2
<10; -10<x
3
<10
GAOT: f(x) = -10;
x = [-2 1 -10];
PSO: f(x) = -10;
x = [-2 1 -10];
b) mx f(x) = (x
1
+ 2)
2
+ (x
2
1)
2
+ x
3
; -10<x
1
<10; -10<x
2
<10; -10<x
3
<10
GAOT: f(x) =275;
x = [10 - 10 10];
PSO: f(x) = 275;
x = [10 -10 10];
Exemplo 4:
Seja o seguinte problema:
Determinar a posio de equilbrio esttico de um sistema constitudo de 2 molas (K
1
e K
2
)
solicitado por duas foras constantes (P
1
e P
2
), de forma a minimizar sua energia potencial:
Figura 8 - Esquema do problema fsico
dados: P
1
= P
2
= 5 N; K
1
= 8 N/cm; K
2
= 1 N/cm ; l
1
l
2
=10 cm
restries laterais: X
i
[0 , 10]
100 FAMAT em Revista - Nmero 04 - Abril de 2005
A energia potencial (Ep) calculada pela seguinte equao:
+ + +
(
+
=
2 2 1 1
2
2
2
2 2
2
1 2
2
1
2
2 1
2
1 1
) ( 5 , 0
) ( 5 , 0
X P X P
l X l X K
l X l X K
Ep
Como deseja-se minimizar a energia potencial do sistema, a funo objetivo a ser maximizada
ser:
+ +
+
(
+
=
2 2 1 1
2
2
2
2 2
2
1 2
2
1
2
2 1
2
1 1
2 1
) ( 5 , 0
) ( 5 , 0
) , (
X P X P
l X l X K
l X l X K
X X F
Utilizando o cdigo computacional GAOT, obteve-se os seguintes resultados:
Ep
min
= 0.418082 J
X
otimo
= [8.6323 4.5319] (cm)
Utilizando o cdigo computacional PSO, obteve-se os seguintes resultados:
Ep
min
= 0418082 J
X
otimo
= [8.6323 4.5319] (cm)
FAMAT em Revista - Nmero 04 - Abril de 2005 101
Concluso
Este trabalho apresenta um estudo sobre algoritmos evolutivos, considerando duas
tcnicas desenvolvidas recentemente: otimizao por colnia de partculas (particle swarm) e
algoritmos genticos.
Atravs de simulaes numricas aplicadas a problemas simples, pode-se observar que
as duas tcnicas convergem para os mesmos resultados. Alm disso, observa-se que a
otimizao por colnia de partculas trabalha com um tamanho de populao bastante
reduzido, portanto seu esforo computacional pequeno. Este fato, incentiva pesquisas
futuras, onde esta tcnica ser aplicada a problemas complexos que requerem muitas
avaliaes da funo objetivo.
102 FAMAT em Revista - Nmero 04 - Abril de 2005
Referncias Bibliogrficas
H.P. SCHWEFEL E L TAYLOR, Evolution and Optimum Seeking, John Wiley & Sons
Inc, United States of America, pp. 87-88, 1994.
ROJAS, J. E., VIANA, F.A.C., Rade, D. A. and Steffen Jr, V., Force identification of
mechanical systems by using particle swarm optimization. In Proceedings of the 10
th
AIAA/ISSMO Multidisciplinary Analysis and Optimization Conference, Albany, New York,
Aug 30-01 Sept 2004.
VENTER, G. AND SOBIESZCZANSKI-SOBIESKI, J., Particle Swarm Optimization,
Proceedings of the 43
rd
AIAA/ASME/ASCE/AHS/ASC Strutures, Structural Dynamics, and
Materials Conference, Denver, CO, Vol. AIAA-2002-1235, April 22-25 2002.
KENNEDY, J. and Eberhart, R. C., Particle Swarm Optimization, Proceedings of the 1995
IEEE Internacional Conference on Nerual Networks, Perth, Australia, 1995, pp. 1942-1948.
POMEROY, P., An Introduction to Particle Swarm Optimization,
http://www.adaptiveview.com, [15 Setembro de 2003].
FAMAT em Revista - Nmero 04 - Abril de 2005 103