You are on page 1of 5

Algoritmos Genticos e Particle Swarm Optimization e

suas aplicaes problemas de Guerra Eletrnica.



CC (EN) Alexandre de Vasconcelos Siciliano sicilian@ita.br, Tel +55-21-2104-5033
Diretoria de Sistemas de Armas da Marinha (DSAM) Rua Primeiro de Maro, 118
Centro Rio de Janeiro, RJ - CEP 20010-000


Resumo Uma estudo sobre Algoritmos Genticos Simples
(AGs) e Particle Swarm Optimization (PSO) otimizao por
enxame de partculas apresentado. O Algoritmo Gentico j
vem sendo muito empregado nos ltimos anos na soluo de
problemas de otimizao na rea de eletromagnetismo e de
microondas. Contudo, apesar de grande eficcia do AGs, sua
implementao, face ao modelo matemtico adotado, envolve
um alto custo computacional. Uma alternativa encontrada est
no uso do PSO, que se aplica igualmente otimizao de
problemas que recaiam em complexas funes no-lineares. A
grande vantagem deste mtodo, a simplicidade de
implementao e a facilidade de estruturao e compreenso.

Palavras-chaves Algoritmos Genticos Simples, e Particle
Swarm Optimization.

I. INTRODUO

O Algoritmo Gentico um mtodo amplamente
utilizado nas aplicaes de eletromagnetismo e microondas
[1-5]. So algoritmos estocsticos de busca global, inspirados
na teoria da evoluo, proposta por Charles Darwin no sculo
XIX em sua clssica obra On the Origin of the Species
(1859), impondo o princpio de sobrevivncia do mais apto
a fim de produzir solues melhores a cada gerao. Ou seja,
a cada gerao, uma nova populao de indivduos criada a
partir das informaes genticas dos melhores indivduos da
gerao anterior, selecionados a partir de um critrio
especfico. O mtodo foi desenvolvido por Holland, J [6] e
popularizado por um de seus alunos, David Goldberg.
A idia do algoritmo codificar solues potenciais
para um dado problema em uma estrutura simples
(cromossomo) e aplicar a ela operadores de recombinao, de
forma a preservar a informao crtica. Cada cromossomo
consiste em um nmero de gene, sendo cada gene composto
por bits. Os AG so capazes de pesquisar e encontrar
mnimos locais ou globais, mas tem um custo computacional
alto, tendo em vista, a necessidade da avaliao da totalidade
da populao a cada iterao do algoritmo. Uma
contrapartida, para suplantar esta desvantagem o mtodo do
PSO.
Introduzido por [7], o Particle Swarm Optimization
(PSO) surgiu de experincias com algoritmos modelados a
partir da observao do comportamento social de
determinadas espcies de pssaros. As partculas
consideradas pelo algoritmo se comportam como os pssaros
procura de alimento ou do local de seus ninhos, utilizando o
aprendizado prprio e o aprendizado do bando (ou enxame).
O PSO composto de partculas representadas por vetores
que definem a velocidade atual de cada partcula e de vetores
de localizao, atualizados segundo sua velocidade atual, seu
aprendizado pessoal e o aprendizado adquirido pelo bando. O
algoritmo de PSO engloba conceituaes simples e pode ser
implementado em poucas linhas de programao, requerendo
apenas operadores matemticos simples.
Apesar de classificado como evolucionrio, o PSO
no apresenta a caracterstica de sobrevivncia do mais apto
ou a utilizao de operadores genticos como o cruzamento e
a mutao.

II. APRESENTAO DOS MTODOS CONSIDERADOS

A. Algoritmo Gentico Simples

A figura 1 apresenta um fluxograma de execuo de um AG,
com o critrio de parada que, no caso, o valor da aptido
mxima.


Fig. 1 Fluxograma de um AG simples

Uma implementao tpica de um AG comea pela
gerao de uma populao inicial de cromossomos de forma
aleatria. No AG bsico o cromossomo consiste em uma
string, geralmente binria, de comprimento L, como a
mostrada na figura 2. Esta populao avaliada, de forma
que aqueles indivduos que representam uma melhor soluo
para o problema, recebem mais chances de se reproduzir e de
gerar descendentes do que aqueles que oferecem solues
mais pobres. A aptido (fitness) ou boa qualidade da soluo
tipicamente definida em relao populao atual.

b1 b2 b3 b4 b5 . . . . bn
L
Fig. 2 String binria de comprimento L

No modelo proposto, a aptido do indivduo
representa a oportunidade reprodutiva dele. Isto significa que
quanto maior a aptido de um indivduo maior a chance de
reproduzir e poder passar a sua informao gentica
adiante.
No processo evolutivo, na transio de uma gerao
para a outra, os indivduos passam por um processo de
seleo natural, que escolhe quais so os indivduos mais
aptos a gerar os descendentes da gerao seguinte.
Existem vrios modos de se fazer a seleo [8].
Pode-se imaginar, por exemplo, a populao disposta em um
mapeamento sobre uma roleta, onde cada indivduo
representado pelo espao que proporcionalmente corresponde
a sua aptido. Para selecionar um indivduo, um nmero
aleatrio gerado para simular um giro da roleta at esse
nmero. O indivduo correspondente ao intervalo onde a
roleta pra selecionado. O processo repetido at que se
atinja o nmero desejado de indivduos da nova populao.
Um outro mtodo de seleo muito empregado o do torneio
[8]. O processo se inicia com a ordenao da populao por
ordem decrescente de aptido (ranking). Dentre aqueles
indivduos de maior aptido ser selecionado
randomicamente um pequeno subconjunto de indivduos que
sero colocados para realizar o torneio. O individuo de maior
aptido ou aquele que superar um determinado limite
previamente determinado ser selecionado como sendo um
dos genitores. Este processo ocorrer tantas vezes quantas
forem necessrias para se atingir a quantidade de genitores.
Em todos os mtodos de seleo existe, ainda, a
possibilidade de se optar pelo elitismo [8], que consiste na
repetio incondicional do indivduo melhor adaptado de uma
gerao na gerao seguinte, para que no haja risco de se
perder a melhor soluo alcanada at aquele momento.
Os dois operadores genticos mais empregados em
um AG simples so o cruzamento (ou crossover) e a mutao
[8].
A principal razo para se realizar o cruzamento
promover a gerao de novos indivduos a partir do material
gentico de seus antecessores, aproveitando o que h de
melhor em cada um deles. Com isso, na medida em que as
geraes avanam, cresce o nmero de descendentes com
maior chance de sobrevivncia, por estarem mais aptos.
Os algoritmos genticos tradicionais geralmente
usam o cruzamento simples ou de um ponto, onde dois
indivduos, o pai e a me, so cada um cortados em um
ponto correspondente, conforme pode ser visto na figura 3 e
seus segmentos, a partir do ponto de corte, so permutveis.


Fig.3 Exemplo da operao de Crossover simples

A operao de cruzamento tem uma caracterstica
desfavorvel em longo prazo, na busca do timo global por
ser um operador que torna populao mais homognea. Aps
algumas geraes a populao ter indivduos semelhantes,
que habitam uma regio do espao de busca, onde existe um
timo que pode no ser necessariamente um timo global,
indicando uma convergncia prematura.
Para contornar o problema, necessrio incluir no
AG um operador que torne a populao mais heterognea.
Esse operador a mutao.
O tipo de mutao mais empregado a inverso,
onde se escolhe um bit do indivduo e inverte-se o seu valor.
A figura 4 apresenta um exemplo de mutao por inverso.



Fig. 4 - operao de mutao por inverso em um indivduo

Finalmente, nos AG podem ser estabelecidos dois
critrios de parada, segundo os quais a evoluo j teria
completado seu objetivo: nmero de geraes ou tolerncia.
Na tolerncia, a execuo do algoritmo encerra-se aps a
constatao da existncia de um indivduo com as mesmas
caractersticas do indivduo-alvo, dentro de uma faixa de
tolerncia estabelecida.

B. Particle Swarm Optimization (PSO)

No modelo matemtico adotado para o PSO, um
enxame de partculas gerado aleatoriamente em um
determinado espao de busca. Dentro deste espao, cada
partcula corresponde a uma possvel soluo, representada
por sua posio no espao de busca para um dado problema.
As partculas tm associado um valor de velocidade e
tambm realizam um deslocamento sob a ao de trs vetores
que se somam. Essas influncias so a inrcia, memria e
comparao. O primeiro vetor impele a partcula em uma
direo idntica que ela vinha seguindo. A memria atrai a
partcula na direo da melhor posio at o momento,
ocupado pela partcula dentro da sua vida. O ltimo vetor
atrai a partcula na direo do melhor ponto do espao at o
momento, descoberto pelo enxame. A figura 5 demonstra
um exemplo de deslocamento de uma partcula, que se
encontrava na posio x
i-1
, para a posio x
i
fazendo uso dos
vetores mencionados.


Fig. 5 Movimento de uma partcula [9]

Na implementao do algoritmo, o primeiro passo
gerar as N partculas que formaro o swarm ou o enxame
com suas respectivas posies. Pode-se tambm neste
momento, arbitrar velocidades iniciais para cada partcula. O
algoritmo manter-se- ativo, atualizando os vetores de
velocidade e posio ciclicamente at que seja atingido
qualquer critrio de parada (nmero mximo de iteraes
atingido, partcula com aptido desejada, etc.).

COOPERAO
MEMRIA
INRCIA
x
i-1
x
c
x
i
x
m

Fig. 5 Fluxograma do PSO [10]

O vetor velocidade de cada partcula deve ser
atualizado por (1).

) .( 2 . 2 ) .( 1 . 1 .
1
i
k
s
k
i
k
i i
k
i
k
x p r c x p r c v w v + + =
+
(1)

Onde
i
k
v a velocidade atual da partcula,
i
p a melhor
posio encontrada pela partcula i,
s
k
p a melhor posio
dentre todas as partculas na iterao k, w um parmetro que
representa a inrcia da partcula e controla a sua capacidade
de explorao do espao de solues. Um valor alto
determina uma busca global enquanto um valor baixo
determina uma busca local. Usualmente estes valores oscilam
entre 0,4 e 1,4, c1 e c2 so os chamados parmetros de
confiana e definem o quanto uma partcula confia em si (c1)
ou no bando (c2). Usualmente ambos assumem o valor igual
a dois, e r1 e r2 so nmeros aleatrios compreendidos entre
zero e um.
Para o clculo da posio futura de cada partcula no
algoritmo utilizada (2).

i
k
i
k
i
K
v x x
1 1 + +
+ = (2)
Onde:
i
K
x
1 +
a posio de cada partcula i na iterao k+1; e
i
k
v
1 +
o vetor velocidade da partcula


III USO DO AG E DO PSO NA OTIMIZAO DE
FUNES


Visando a demonstrar a potencialidade e a permitir
uma avaliao de ambos os mtodos apresentados, os dois
algoritmos foram empregados na otimizao de funes de
teste. O objetivo a minimizao da Eq. (3) e a maximizao
da Eq. (4).

( ) ( )
2
2
2
1 100 ) , ( + = x x y y x f (3)

( ) ( ) | |
(
(

|
.
|

\
|
+ |
.
|

\
|

+ =
2 2
2
1
2
1
2
7
16 cos 16 cos
2
1
) , (
y x
e y x y x f t t
(4)
O ponto de mnimo de (3) (1,1) e o ponto de
mximo de (4) ( , ). As figuras 6 e 7 apresentam as
funes a serem analisadas.


Fig.6 aspecto da funo a ser minimizada


Fig.7 aspecto da funo a ser maximizada

O software utilizado para realizar os algoritmos do
AG e do PSO foi o MATLAB v7.2. Para a minimizao de
(3), o algoritmo gentico foi implementado com seleo por
roleta, taxa de crossover de 80%, taxa de mutao de 1% e
populao inicial de 20 indivduos. Para a minimizao da
mesma funo, o PSO foi implementado com 20 indivduos,
c1 e c2 igual a 2 e com w variando entre 0,4 e 0,9. A tabela I
resume os resultados obtidos para o AG e o PSO.

TABELA I VALORES OBTIDOS PARA O PONTO DE MNIMO DE
(3).
GA PSO
Qtd de
geraes
x y x y
50 1,0691 1,01567 1,00690 1,05493
100 1,00690 1,01567 0,99999 0,99999

Para a maximizao de (4), o AG foi implementado
com seleo por roleta, taxa de crossover de 80%, taxa de
mutao de 1% e com 20 indivduos. Como a funo mais
complexa, a quantidade de geraes (200) necessrias para se
obter um resultado com erro da ordem de 10
-3
foi muito
maior.
Para a mesma funo o PSO, foi implementado com
20 indivduos, parmetros de confiana c1 e c2 iguais a 2 e
inrcia da partcula w variando entre 0,4 e 0,9. A tabela II
apresenta os resultados e conforme se verifica, com uma
quantidade menor de iteraes, o PSO convergiu para o valor
esperado.

TABELA II VALORES OBTIDOS PARA O PONTO DE MXIMO
DE (4).
AG PSO
Qtd de
iteraes
x y x y
50 0,49906 0,37964 0,3729 0,4999
100 0,50577 0,50035 0,5000 0,5000
150 0,50130 0,49903 0,5000 0,5000
200 0,50063 0,50053 0,5000 0,5000


Abaixo so apresentadas as figuras 8 e 9 onde se
encontram a evoluo das partculas para as funes
estudadas. Verifica-se que em ambas, na fase inicial do PSO,
as partculas esto dispostas aleatoriamente dentro do espao
de busca. A medida em que as iteraes aumentam, percebe-
se uma tendncia de deslocamento das partculas para a
posio tima (que pode ser um ponto de mnimo ou de
mximo, conforme o caso em estudo).

0 1 2 3 4 5
0
1
2
3
4
5
disposio inicial
0 1 2 3 4 5
0
1
2
3
4
5
25
0 1 2 3 4 5
0
1
2
3
4
5
50
0 1 2 3 4 5
0
1
2
3
4
5
100

Fig 8 Evoluo das partculas para a Eq. (3), com 100 iteraes

0 0.5 1
0
0.5
1
situao inicial
0 0.5 1
0
0.5
1
25
0 0.5 1
0
0.5
1
50
0 0.5 1
0
0.5
1
100

Fig 9 Evoluo das partculas para a Eq. (4), com 100 iteraes

IV APLICAO DOS ALGORITMOS EM GUERRA
ELETRNICA

Para demonstrar o emprego destes algoritmos, na
rea de Guerra Eletrnica, abaixo so apresentadas trs
aplicaes em que se necessita realizar a otimizao de
funes. Os exemplos citados utilizam Algoritmos Genticos.
O PSO, por ser pesquisa recente, ainda no possui muitos
trabalhos nesta rea. Mas certamente os resultados
demonstrados com o uso do PSO incentivam o seu uso nas
pesquisas associadas ao tema de Guerra Eletrnica.

A) Aplicao em Projeto de Antenas Filamentares [1,11]

Existe uma classe de radiadores eletromagnticos
denominada antenas filamentares. Elas so assim chamadas
por serem constitudas por fios cujos dimetros so muito
menores que seu comprimento. Nesta classe esto inseridas
as antenas monopolo, as antenas dipolo e as antenas do tipo
Yagi-Uda. Esta ltima composta por um conjunto de
elementos paralelos, sendo um deles o elemento refletor,
geralmente seguido pela antena propriamente dita (do tipo
dipolo) e por uma seqncia de diretores, em quantidade
variada de acordo com as necessidades do projeto. Antenas
deste tipo so reconhecidamente difceis de serem projetadas
e otimizadas. A diretividade, o ganho e a sensibilidade
dependem da relao existente entre os diversos elementos
que a compe. No projeto, devem ser considerados os
comprimentos de cada elemento (comprimento este, expresso
em funo do comprimento de onda da freqncia em que a
antena ir trabalhar), a distncia entre cada um deles e a
quantidade de elementos diretores que a antena dever ter
para atuar como desejado. Percebe-se a natureza complexa
deste tipo de projeto.
O AG ento empregado em associao com
softwares de simulao de antenas. A populao criada, e
cada indivduo ser avaliado pelo simulador, que devolver a
resposta ao AG. O algoritmo gentico far ento evoluir a
populao em busca do resultado timo.
Os resultados obtidos nas pesquisas com as antenas
filamentares mencionadas vm estimulando o
desenvolvimento de antenas que fazem uso de combinaes
delas, como se pode ver nas figuras abaixo:

Fig. 10 Antena monopolo carregada com antena dipolo dobrada

B Aplicao em Materiais Absorvedores de Radiao
Eletromagntica (MARE) [11]

Existem pesquisas utilizando o algoritmo gentico
para sintetizar material absorvedor de radiao
eletromagntica (MARE) de pouco peso, com multicamadas
e de banda larga. A idia principal deste tipo de projeto
empregar o material desenvolvido em aeronaves, onde o peso
e a espessura do MARE so crticos.
O emprego do AG neste tipo de projeto, leva em
considerao um conjunto de vrios tipos diferentes de
materiais absorvedores disponveis e tambm a refletividade
da onda eletromagntica em um grande nmero de ngulos de
incidncia. A elaborao do algoritmo ocorre da seguinte da
forma. Inicialmente gerado um banco de dados,
relacionando todos os tipos de MARE disponveis e suas
caractersticas principais. A codificao do cromossomo
binria e cada camada de MARE empregada representada
por bits do cromossomo. Esses bits codificam a espessura da
camada e identificam o material a ser empregado pelo
apontamento da entrada no banco de dados. A funo da
aptido escolhida minimiza a refletividade para vrios
ngulos de incidncia e de vrias freqncias e inclui
penalidades para a espessura total.
Existem trabalhos relatando projetos bem sucedidos
de MARE, com espessuras minimizadas e coeficientes de
reflexo tambm minimizados nas faixas de freqncias de
0.5-8 GHz, e de 2-8 GHz.

C Aplicao em Otimizao de Cobertura Radar [12]

A utilizao de radares terrestres permite a
vigilncia de uma ampla rea territorial, sendo de grande
importncia para a defesa de um pas. A determinao da
melhor distribuio de radares em certa regio uma tarefa
difcil em decorrncia, principalmente, da sensibilidade dos
sinais dos radares s caractersticas climticas e ao relevo da
regio. Desta forma, importante a otimizao do
posicionamento dos radares, com o intuito de aumentar a
eficincia da cobertura total do sinal gerado, determinando a
melhor distribuio de um conjunto de radares em um
conjunto de possveis posies de instalao, visando a
maximizar a rea de cobertura do sinal gerado.
No trabalho pesquisado, o AG foi a utilizado
juntamente com o GPC (Generic Polygon Clipper), uma
biblioteca que permite efetuar os clculos das unies entre a
cobertura de sinais radares.
O indivduo gerado definido como uma possvel
distribuio ou posicionamento de um nmero radares a
partir de algumas posies de instalao. O cromossomo do
indivduo um vetor composto por tantos componentes
quanto forem os radares, onde cada componente contm o
ndice de uma posio, dentre a totalidade de posies, onde
est instalado um dos radares. Os resultados obtidos
apresentam solues mais precisas que as obtidas em
trabalhos anteriores, que utilizam aproximaes circulares
para as coberturas dos sinais dos radares.

V CONCLUSO

Dois algoritmos para otimizao de funes no-
lineares foram apresentados neste artigo. A fim de testar a
efetividade dos mesmos, duas funes de teste foram
propostas. Uma simples, sem mnimos locais e outra com
diversos mnimos e mximos locais. Analisando os dados das
tabelas I e II, verifica-se que o PSO teve desempenho melhor
do que o AG, convergindo com menos iteraes.
O AG um algoritmo amplamente difundido e
utilizado, j possuindo diversas aplicaes em Guerra
Eletrnica e microondas, conforme exposto na seo IV.
um mtodo eficaz, mas que, devido sua formulao
matemtica, possui um custo computacional alto.
Durante a realizao deste trabalho, no foram
encontrados artigos apresentando aplicaes do PSO em
Guerra Eletrnica,. Mas, face ao exposto na seo III,
percebe-se que sua aplicao nesta rea pode culminar em
resultados ainda melhores do que aqueles obtidos com o AG.

VI REFERNCIAS

[1] Altshuler, E. E. e D. S. Linden. Wire-Antenna Designs Using Genetic
Algorithms. IEEE Antennas and Propagation Magazine. 39: 33-43 p. 1997.
[2] Johnson, J. M. e Y. Rahmat-Samii. Genetic Algorithms in Engineering
Electromagnetics. IEEE Antenas and Propagation Magazine. 39: 7-21 p.
1997.
[3] Mognon, V. R. Algoritmos Genticos Aplicados na Otimizao de
Antenas. (Mestrado). Engenharia Eltrica, Universidade Federal do Paran,
Curitiba, 2004. 85 p.
[4] Ramos, R. M., R. R. Saldanha, et al. Otimizao Multiobjetivo Aplicada
ao Projeto de Antenas Filamentares. Cincia & Engenharia (Science &
Engineering Journal), v.Edio Especial, p.67-70. 2003.
[5] Soares, G. L. Algoritmos Genticos: Estudo, Novas Tcnicas e
Aplicaes. (Mestrado). Engenharia Eltrica, Escola de Engenharia Eltrica
da Universidade Federal de Minas Gerais, Belo Horizonte, 1997. 137 p.
[6] Holland, J. H., Adaptation in Natural and Artificial Systems, Ann Arbor,
The University of Michigan Press, 1975
[7] Kennedy, J. e R. Eberhart. Particle Swarm Optimization. IEEE
International Conference on Neural Network. Perth, Australia, 1995. 1942-
1948 p.
[8] Whitley, D., A Genetic Algorithm Tutorial, Statistics and Computing, v.
4, pp. 65-85, 1994.
[9] Borges, G. S. Desenvolvimento de Ambientes Computacionais para
Anlise de Dispositivos e Sistemas para Redes de Comunicaes pticas e
Mveis. Universidade Federal do Par. Par, p.54. 2006
[10] Menezes, N. G. Sntese Topolgica Evolucionria e Otimizao
Numrica de Parmetros em Estrutura CMOS. (Mestrado). Engenharia
Eltrica, COPPE/UFRJ, Rio de Janeiro, 2007. 59 p.
[11] Johnson M. J., e Rahmat-Samii Y., Genetic Algorithms in Engineering
Electromagnetics. IEEE Antennas and Propagation Magazine, Vol. 39, No.
4, August 1997.
[12] Medeiros, F. L. L., Dos Santos, C. R. L., De Marchi M. M. e Pinto, M.
J., Algoritmo Gentico Aplicado Otimizao da Cobertura do Sinal gerado
por Radares Terrestres. XXV Congresso da Sociedade Brasileira da
Computao Unisinos, So Leopoldo, RS 2005.

You might also like