Você está na página 1de 7

Anais do XX Congresso Brasileiro de Automtica

Belo Horizonte, MG, 20 a 24 de Setembro de 2014

DE ROBOS
UTILIZANDO INTELIGENCIA

LOCALIZAC
AO
DE ENXAME
, Nadia Nedjah, Luiza de Macedo Mourelle, Leandro dos Santos
Alan Oliveira de Sa
Coelho

Centro de Eletr
onica, Comunicac
oes e Tecnologia da Informac
ao
Centro de Instruc
ao Almirante Wandenkolk, Marinha do Brasil

Departamento de Engenharia Eletr


onica e Telecomunicac
oes

Departamento de Engenharia de Sistemas e Computac


ao
Faculdade de Engenharia, Universidade do Estado do Rio de Janeiro

Programa de P
os-Graduac
ao em Engenharia de Produc
ao e Sistemas (PPGEPS), Pontifcia
Universidade Cat
olica do Paran
a
Programa de P
os-Graduac
ao em Engenharia Eletrica (PPGEE), Universidade Federal do Paran
a
Emails: alan.oliveira.sa@gmail.com, nadia@eng.uerj.br, ldmm@eng.uerj.br,
leandro.coelho@pucpr.br
Abstract The localization problem arises from the need of the agents of a Wireless Sensor Network (WSN)
in general, and of a swarm of robots in particular, to determine its position without the use of external references,
such as the Global Positioning System (GPS). In this problem, the localization is computed based on distance
measurements to anchor nodes, which have known positions. In the search for efficient and accurate algorithms
to discover the location, some bio-inspired algorithms have been explored, such as Genetic Algorithm (GA) and
Particle Swarm Optimization Algorithm (PSO). Accordingly, in order to obtain more accurate solutions to the
localization problem, this paper presents and compares the results obtained with the PSO, with the Backtracking
Search Optimization Algorithm (BSA) and with a new algorithm that combines characteristics of both, entitled
Backtracking Cognitive Particle Swarm Optimization Algorithm (BC-PSO). The results show that the BSA is
more robust with regard to changes in the nodes distribution, the PSO demands less processing time and the
BC-PSO, under specific conditions, is the most accurate.
Keywords Particle Swarm Optimization (PSO), Backtracking Search Optimization Algorithm (BSA),
swarm intelligence, swarm robotics, Wireless Sensor Network (WSN), localization.
Resumo O problema de localizac
ao surge da necessidade dos agentes de uma rede de sensores sem fio
em geral, e de um enxame de rob
os em particular, de determinar as suas posic
oes sem o uso de refer
encias
externas, tal como o Sistema de Posicionamento Global ou GPS (Global Positioning System). Neste problema,
a localizac
ao
e realizada baseando-se em medidas de dist
ancia para n
os de refer
encia, os quais t
em suas posic
oes
conhecidas. Na busca por algoritmos eficientes e precisos para descobrir a localizac
ao, alguns algoritmos bioinspirados v
em sendo explorados, tais como o Algoritmo Gen
etico ou GA (Genetic Algorithm) e o algoritmo de
Otimizaca
o por Enxame de Partculas ou PSO (Particle Swarm Optimization). Nesse sentido, visando soluco
es
mais precisas para o problema de localizaca
o, este artigo apresenta e compara os resultados alcancados com o
PSO, com o Algoritmo de Busca por Retrocesso ou BSA (Backtracking Search Optimization Algorithm) e com
um novo algoritmo que combina caractersticas de ambos, denominado algoritmo de Otimizac
ao por Enxame
de Partculas com Retroac
ao Cognitiva ou BC-PSO (Backtracking Cognitive Particle Swarm Optimization). Os
resultados mostram que o BSA
e mais robusto no que diz respeito `
as variaco
es na distribuic
ao dos n
os, o PSO
demanda menos tempo de processamento e o BC-PSO, em condic
oes especficas,
e o mais preciso.
Palavras-chave Otimizaca
o por Enxame de Partculas, Algoritmo de Busca por Retrocesso, intelig
encia de
enxame, rob
otica de enxame, Rede de Sensores sem fio, localizac
ao.

Introdu
c
ao

ractersticas comuns aos dispositivos, sejam eles


robos ou sensores. A solucao mais evidente, que
consiste em equipar cada elemento com um Sistema de Posicionamento Global ou GPS(Global
Positioning System), torna-se muitas vezes inviavel.

Diversas das possveis aplicacoes de um enxame de


robos demandam que cada indivduo seja capaz de
descobrir sua posic
ao, seja ela absoluta, em funcao
de um sistema de referencia universal, ou relativa,
em relacao a outros indivduos, com base em um
sistema de coordenadas local. Da mesma forma,
as redes de sensores sem fio, cujas perspectivas de
aplicacao sao amplas e tem atrado grande atencao
da ind
ustria, na maioria dos casos possuem pouca
utilidade quando n
ao e possvel dispor da posicao
de seus sensores (Sun, 2011).
Em ambos os casos, o tamanho reduzido, a
limitada fonte de energia e o baixo custo sao ca-

O problema de localizacao consiste em inferir a posicao de um conjunto de robos ou sensores


em situacoes onde nao e possvel utilizar referencias externas, como o GPS. Muitos dos algoritmos de localizacao dependem da capacidade do
no (robo ou sensor) de medir sua distancia para
os nos de referencia, cujas posicoes sao conhecidas.
Algumas das tecnicas mais comuns para a medicao
de distancia baseiam-se na potencia do sinal rece-

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

bido, no tempo de propagac


ao de um sinal, e/ou
na comparac
ao do tempo de propagac
ao de dois
sinais com velocidades de propagac
ao diferentes
(Ekberg, 2009) (Mao et al., 2007) (Lymberopoulos
et al., 2006).
Uma vez que as tecnicas de medic
ao apresentadas dependem da propagac
ao de sinais, ha de
se considerar uma dist
ancia limite para tais medicoes. Nos casos mais simples, onde todos os nos de
referencia est
ao dentro da dist
ancia limite de medicao, as medidas s
ao diretas e feitas em um u
nico
salto. Entretanto, nos casos em que um ou mais
nos de referencia est
ao fora da dist
ancia limite, as
medidas sao obtidas indiretamente em m
ultiplos
saltos, por meio de algoritmos como Sum-dist ou
DV-hop (Langendoen, 2005). Dependendo da topologia da rede, ou enxame, os casos de um e de
m
ultiplos saltos podem coexistir.
Em (Langendoen, 2005), os autores propoem
tres fases para a abordagem do problema com
m
ultiplos saltos:

na Secao 8, sao apresentadas as conclusoes, juntamente com algumas possibilidades de trabalhos


futuros.
2

Trabalhos Relacionados

A importancia da informacao de localizacao dos


elementos de uma rede de sensores, ou enxame de
robos, e as limitacoes de hardware e energia, tpicas destes dispositivos, tem motivado a busca por
algoritmos de localizacao cada vez mais eficientes
e precisos.
Em (Sun, 2011), os autores reportam o uso de
algoritmos geneticos para a solucao do problema
de localizacao em uma rede de sensores, sem obstaculos e sem rudo.
Uma outra abordagem ao problema de localizacao e relatada em (Huanxiang et al., 2010),
onde os autores propoem o uso de nos de referencia moveis e um algoritmo baseado em algoritmos geneticos para estabelecer a localizacao de
nos desconhecidos estaticos. Este metodo, entretanto, pode apresentar desvantagens em redes com
grande area de cobertura, devido ao elevado gasto
de energia na movimentacao dos nos de referencia.
Em (Ekberg, 2009), o autor apresenta o algoritmo de localizacao por inteligencia de enxame
ou SIL (Swarm-Intelligent Localization), baseado
no PSO, para a solucao do problema de localizacao em uma rede de sensores estaticos, de duas ou
tres dimensoes, com medidas de distancia para os
nos de referencia feitas em m
ultiplos saltos. Em
(Ekberg, 2011), e demonstrada a capacidade do
SIL em resolver o problema de localizacao em redes de sensores m
oveis.
Nesse contexto, este trabalho visa contribuir
com a busca por algoritmos mais eficientes e mais
precisos para o problema de localizacao, por meio
da avaliacao e da comparacao do desempenho do
PSO, BSA e de um algoritmo proposto, que combina as caractersticas de ambos.

1. Estimar as dist
ancias de cada n
o para os nos
de referencia.
2. Calcular a posic
ao de cada n
o a partir das
distancias medidas na fase 1.
3. Refinar a posicao de cada n
o a partir das
informac
oes de posic
ao e dist
ancia dos nos
vizinhos.
A otimizacao por tecnicas bio-inspiradas vem
sendo aplicada ao problema de localizac
ao, tanto
nos casos de um u
nico salto, quanto nos casos de
m
ultiplos saltos (Sun, 2011) (Ekberg, 2009). Este
trabalho visa comparar o desempenho e a precisao do algoritmo de otimizac
ao por enxame de
partculas ou PSO (Particle Swarm Optimization)
(Engelbrecht, 2005), do algoritmo de busca por retrocesso ou BSA (Backtracking Search Optimization Algorithm) (Civicioglu, 2013a) e de um novo
algoritmo que combina caractersticas de ambos,
denominado algoritmo de otimizacao por enxame
de partculas com retroac
ao cognitiva ou BC-PSO
(Backtracking Cognitive Particle Swarm Optimization), na soluc
ao de problemas de localizacao.
Nos tres casos, as dist
ancias medidas s
ao de um
u
nico salto.
Para tal, o presente artigo e organizado da
seguinte forma: Primeiramente, na Sec
ao 2, sao
apresentados alguns trabalhos relacionados. Posteriormente, na Sec
ao 3, e especificado o problema
de localizacao. Nas Sec
oes 4 e 5, s
ao brevemente
descritos os passos do PSO e BSA, respectivamente. Na Sec
ao 6, e proposto o algoritmo BCPSO, que combina as caractersticas do PSO com
o BSA, visando obter maior precis
ao na solucao do
problema de localizac
ao. Em seguida, na Secao 7,
sao reportados os resultados obtidos. Finalmente,

Especifica
c
ao do Problema

A formulacao dada ao problema de localizacao


pode ser aplicada a problemas com duas ou tres
dimensoes. Sendo assim, para simplificar a an
alise, adotou-se caso de duas dimensoes. Como premissa, o problema e considerado como sendo de
um u
nico salto, ou seja, todos os nos desconhecidos sao capazes de medir a distancia para os nos
de referencia, de forma direta. Neste cenario nao
foram considerados erros nas medidas de distancia.
Para estabelecer a funcao de aptidao, e preciso
considerar que, para um dado n
o desconhecido, o
quadrado do erro em dist
ancia para cada no de referencia e definido conforme (1), onde, dr e pr sao
a distancia medida e posicao do no de referencia

10

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

Algoritmo 1: Algoritmo PSO


incio
Inicia o enxame com x e v aleatorias;
Avalia o enxame;
Armazena mi e mg ;
repita
Atualiza velocidades, conforme
(4) e (5);
Atualiza posicoes, conforme (3);
Avalia o enxame;
Atualiza mi e mg , caso melhores
posicoes tenham sido
encontradas;
at
e Condic
ao de parada;
retorna mg ;

r, respectivamente, e xi e a posic
ao estimada para
o no desconhecido i.
g(xi , dr , pr ) = (dr ||pr xi ||)2

(1)

Dessa forma, a func


ao de aptid
ao para a posicao de um n
o desconhecido e obtida pela soma
do quadrado dos erros de dist
ancia para cada no
de referencia, conforme apresentado em (2), onde
R e o n
umero de n
os de referencia.
f (xi , dr , pr ) =

R
X

g(xi , dr , pr )

(2)

r=1

Sendo assim, para encontrar a posic


ao de um
no e preciso minimizar a func
ao definida em (2).
Neste cenario, onde n
ao h
a erros de medida de
distancia, o valor mnimo de f (xi , dr , pr ) e 0.
4

fim
5

Otimiza
c
ao por Enxame de Partculas

O BSA e um novo algoritmo evolucionario


(Civicioglu, 2013a), que utiliza informacoes obtidas por geracoes passadas para buscar solucoes de
melhor aptidao. A filosofia bio-inspirada do BSA e
analoga a um grupo social de seres vivos que, em
intervalos aleatorios, retornam `as zonas de caca
que foram previamente consideradas boas para a
busca de alimentos. A estrutura geral do BSA e
apresentada no Algoritmo 2.

O PSO tem origem na simulac


ao de modelos sociais simplificados, como, por exemplo, a movimentacao de cardumes de peixes ou bandos de aves
(Kennedy, 1995) (Shi, 1998), sendo o termo partcula utilizado para generalizar o indivduo. Nesta
analogia, uma partcula representa uma possvel
solucao para um problema. O enxame, por sua
vez, representa um conjunto de possveis solucoes.
A cada ciclo iterativo a posic
ao de cada partcula e
atualizada conforme (3), onde xi e vi s
ao a posicao
e a velocidade da partcula i, respectivamente.
xi (t + 1) = xi (t) + vi (t + 1)

Algoritmo 2: BSA
incio
Inicializacao;
repita
Selecao-I;
Gera nova popula
c
ao
Mutacao;
Cruzamento;
fim
Selecao-II;
at
e Condic
ao de parada;
fim

(3)

Apos atualizar a posic


ao das partculas, e feita
a avaliacao das suas aptid
oes.
O vetor de velocidade vi de cada partcula e
calculado pela soma de tres componentes: uma
componente de inercia do movimento, uma componente cognitiva, baseada na melhor solucao obtida pela partcula, e uma componente social, baseada na melhor soluc
ao global encontrada pelo
enxame. O c
alculo de vi e feito conforme (4),
onde w e uma constante que representa a inercia
da partcula, 1 e 1 s
ao constantes que atribuem
pesos `as componentes social e cognitiva, respectivamente, r1 e r2 s
ao n
umeros aleat
orios entre [0,1],
mi e a melhor posic
ao da partcula i e mg e a me estabelecido ainda um
lhor posicao do enxame. E
limite de velocidade para cada dimens
ao j, dado
por (5), onde maxj e minj s
ao os limites maximo
e mnimo do espaco de busca na dimensao j, e
[0, 1].
vi (t + 1) = wvi (t) + 1 r1 (t)(mi xi (t))
+2 r2 (t)(mg xi (t))
0 vij (maxj minj )

Algoritmo de Busca por Retrocesso

Na etapa de inicializacao, o algoritmo gera e


avalia a populacao inicial P0 e inicia uma populacao historica Phist . A populacao historica constitui a mem
oria do BSA.
Durante a Selecao-I, o algoritmo determina
aleatoriamente, utilizando uma distribuicao uniforme, se a populacao atual P sera gravada como
populacao historica Phist e entao embaralha indivduos de Phist .
O operador de mutacao cria Pmod (versao inicial da nova populacao Pnova ), de acordo com (6).
Dessa forma, Pmod e o resultado do movimento
dos indivduos de P nas direcoes estabelecidas por
(Phist P ). S representa a amplitude do deslocamento, que, neste algoritmo, e dada por (7).

(4)
(5)

A estrutura geral do PSO e definida pelo Algoritmo 1.

Pmod = P + S(Phist P )

11

(6)

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

S =k

Cabe ressaltar que para formar a componente


cognitiva, nao e armazenado o historico completo
das posicoes ja visitadas pelas partculas. A cada
iteracao, o algoritmo determina aleatoriamente,
utilizando uma distribuicao uniforme, se a posicao atual das partculas sera gravada na memoria
para compor a componente cognitiva. Uma vez
determinada a gravacao, tais posicoes sobrescrevem as posicoes gravadas anteriormente na memoria. Dessa forma, a retroacao cognitiva nao
aumenta os requisitos computacionais, em termos
de memoria, quando comparado ao PSO.
No que tange ao c
alculo da componente de
inercia, o modelo utilizado e inspirado nos conceitos apresentados em (Shi, 1998), no qual e estabelecido que altos valores de coeficiente de inercia
tendem a facilitar a busca global, enquanto baixos
valores de coeficiente de inercia tendem a facilitar
a busca local.
A estrutura do BC-PSO e definida pelo Algoritmo 3, onde xhist e a populacao historica selecionada aleatoriamente.

(7)

O valor de k e ajustado empiricamente via


uma serie de simulac
oes, j
a N(0, 1), onde N
e a distribuic
ao normal padr
ao. Para criar a versao final de Pnova , o operador de cruzamento combina aleatoriamente, utilizando uma distribuicao
uniforme, elementos de Pmod com elementos de P.
Na etapa Selec
ao-II, o algoritmo seleciona os
elementos de Pnova (indivduos obtidos apos mutacao e cruzamento) que tenham a aptid
ao melhor
do que os de P (indivduos antes da mutac
ao e do
cruzamento) e os substitui em P. Dessa forma, P
so incluira novos indivduos que tenham evoludo.
Apos atendida a condic
ao de parada, o algoritmo
retorna a melhor soluc
ao encontrada.
6

Algoritmo de Otimiza
c
ao por Enxame
de Partculas com Retroa
c
ao Cognitiva

O algoritmo BC-PSO, que combina caractersticas do PSO com o BSA, e proposto com base na
estrutura geral do PSO, porem, com modificacoes
no que tange ao c
alculo da velocidade das partculas. Neste algoritmo, a componente cognitiva de
(4) foi modificada, inspirada no BSA, passando a
ser computada n
ao em func
ao da melhor posicao
da partcula e sim em func
ao de uma posicao da
mesma selecionada aleatoriamente no passado. A
componente social foi mantida de forma identica
`aquela usada no PSO. J
a a componente de inercia foi mantida apenas para os ciclos iniciais do
algoritmo, a fim de prover uma melhor exploracao
do espaco de busca, sendo anulada quando o coeficiente de variac
ao da populac
ao atinge um valor
ajustado empiricamente, com o objetivo de melhorar a busca local no final do processo de otimizacao. Estas modificac
oes resultam em (8), onde cv
e o coeficiente de variac
ao da populac
ao, xh e uma
posicao historica da partcula, escolhida aleatoriamente utilizando uma distribuic
ao uniforme, e
e uma constante que representa o valor do coeficiente de variac
ao a partir do qual a componente
de inercia e anulada. Foi mantido um limite de
velocidade, conforme definido em (5).

Algoritmo 3: Algoritmo BC-PSO


incio
Inicia xhist aleatoriamente; Inicia o
enxame com x e v aleatorias;
Avalia o enxame;
Armazena mg ;
repita
Atualiza velocidades, conforme
(8) e (5);
Atualiza posicoes, conforme (3);
Avalia o enxame;
Atualiza mg , caso uma melhor
posicao tenha sido encontrada;
Seja xhist = x , aleatoriamente;
at
e Condic
ao de parada;
retorna mg ;
fim
7

As simulacoes foram feitas numa area de 100


100 unidades de medida. Neste espaco de busca,
foram distribudos aleatoriamente 1000 nos, denominados nos desconhecidos pelo fato deles nao
conhecerem sua posicao real. Ainda neste espaco
de busca, foram alocados aleatoriamente 3, depois
4 e posteriormente 5 nos de referencia, sendo 3 o
n
umero mnimo para um problema de duas dimensoes (Ekberg, 2009). Para cada quantidade de nos
de referencia, foram gerados 10 cenarios distintos.
O grande n
umero de nos desconhecidos foi
adotado para dar confiabilidade aos resultados obtidos, tendo em vista o carater estocastico dos algoritmos utilizados, e o fato de que cada no desconhecido representa um problema de localizacao.
Cumpre ressaltar que, apesar de gerados aleatoriamente, os mesmos cenarios foram precisa-

wvi (t)
Se (cv < );

+
r
(t)(x

x
(t))

1
1
h
i

+2 r2 (t)(mg xi (t))
vi (t+1) =

Se (cv ).

1 r1 (t)(xh xi (t))

+2 r2 (t)(mg xi (t))
(8)
O coeficiente de variac
ao da populacao cv e
calculado conforme (9), onde e s
ao o desvio
padrao e a media da populac
ao, respectivamente.
cv =

Resultados Obtidos

(9)

12

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

mente reproduzidos para ser submetidos aos tres


algoritmos, tornando justa a comparac
ao de desempenho. Em todas as simulac
oes realizadas foram empregadas populac
oes de 100 indivduos.
Para efeito de comparac
ao entre os tres algoritmos, foi calculada, a cada gerac
ao, a media
do erro de posicionamento (MEP) de todos os
nos desconhecidos, para todos os cen
arios gerados, conforme descrito em (10), onde g representa
o n
umero da gerac
ao, c o n
umero do cen
ario, i o
identificador do n
o desconhecido, D e o n
umero
total de nos desconhecidos, xreal e a posicao real
do no e xcalc e a posic
ao calculada pelo algoritmo
de otimizacao.
P10 PD
||xreal (c, i) xcalc (c, i)||
M EPg = c=1 i=1
10D
(10)
As simulac
oes com o PSO, BSA e BC-PSO foram conduzidas em implementac
oes feitas no MATLAB, sendo, no caso do BSA, utilizada a implementacao disponvel em (Civicioglu, 2013b).
Os parametros dos tres algoritmos foram ajustados empiricamente por meio de uma serie de
simulacoes. Com o BSA, o melhor resultado foi
obtido com k = 1. Para o PSO e para o BC-PSO,
o melhor resultado foi obtido com os par
ametros
apresentados na Tabela 1.

otimo em 100 geracoes.


1

Mdia do Erro de Posicionamento (MEP) (log)

10

10

10

10

BSA
PSO
BCPSO
3

10

10

20

30

40

50
Geraes

60

70

80

90

100

Figura 1: Curvas de MEP geracao, com 3 nos


de referencia
1

Mdia do Erro de Posicionamento (MEP) (log)

10

Tabela 1: Par
ameros do PSO e BC-PSO
Parametro
PSO
BC-PSO

0,31
w
0,7298
0,7298
1
2,05
1,05
2
2,05
2,05

0,01
0,01

10

10

10

10

BSA
PSO
BCPSO
4

10

10

20

30

40

50
Geraes

60

70

80

90

100

Figura 2: Curvas de MEP geracao, com 4 nos


de referencia

Os resultados da MEP por gerac


ao, obtidos
com os tres algoritmos, s
ao apresentados nas Figuras 1, 2 e 3. Observando as Figuras 1 e 2, podese constatar que, para 3 e 4 n
os de referencia, o
BSA apresenta a menor MEP. Na Figura 1, para
3 nos de referencia, verifica-se que ao final de 100
geracoes o BSA apresenta uma MEP da ordem de
103 enquanto que os outros algoritmos apresentam uma MEP da ordem de 1. Na Figura 2, para
4 nos de referencia, o BSA apresenta uma MEP da
ordem de 104 enquanto que os outros algoritmos
apresentam uma MEP da ordem de 102 .
Entretanto, comparando as Figuras 2 e 3,
pode-se constatar uma melhora significativa no
desempenho dos algoritmos PSO e BC-PSO,
quando sao adotados 5 n
os de referencia. Neste
caso o algoritmo BC-PSO apresentou uma MEP
da ordem de 106 , superando a MEP dos demais
algoritmos em duas ordens de grandeza. Cabe
ainda ressaltar que, com o algoritmo BC-PSO,
para 5 nos de referencia, 34,06% dos n
os desconhecidos alcancaram o resultado
otimo (i.e. erro=0)
ao final de 100 gerac
oes. Com o BSA e PSO, nenhum dos nos desconhecidos alcancou o resultado

10

Mdia do Erro de Posicionamento (MEP) (log)

10

10

10

10

10

BSA
PSO
BCPSO

10

10

10

20

30

40

50
Geraes

60

70

80

90

100

Figura 3: Curvas de MEP geracao, com 5 nos


de referencia
A elevada MEP dos algoritmos PSO e BCPSO, para 3 e 4 nos de referencia, ocorre em virtude destes algoritmos terem apresentado maior
dificuldade para solucionar problemas em que os
nos de referencia se aproximam de formar uma
linha reta. No caso extremo, quando os nos de

13

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014
0
100

referencia sao colineares, a func


ao de aptidao e simetrica em relac
ao a reta formada por estes nos e
consequentemente o problema admite matematicamente duas soluc
oes, sendo apenas uma valida
(Langendoen, 2005). Nos casos onde os nos de
referencia nao s
ao colineares, mas se aproximam
desta condicao, a func
ao de aptid
ao se aproxima
de tal simetria apresentando dois mnimos (um local e um global) com valores de aptid
ao pr
oximos.
Nestas condic
oes, os algoritmos PSO e BC-PSO
convergem, em alguns casos, para o mnimo local que nao corresponde `
a posic
ao real (mnimo
global). O BSA, por sua vez, n
ao encontra dificuldades para convergir para o mnimo global, em
condicoes identicas. As Figuras 4, 5 e 6 exemplificam a diferenca de resposta dos tres algoritmos
para nos de referencia quase colineares. Nestas figuras, 3 nos de referencia est
ao posicionados proximos `a reta destacada. Nos mapas gerados para
os algoritmos PSO e BC-PSO (Figuras 4 e 5, respectivamente), foram demarcadas regi
oes onde ha
grande incidencia de n
os cujas posic
oes calculadas estao incorretamente do lado oposto da reta.
A Figura 6 mostra a soluc
ao correta obtida pelo
BSA para o mesmo problema.
0
100

20

40

60

80

50
40
30
20
10
0

Ha uma melhora significativa nos resultados,


com os tres algoritmos, quando o n
umero de nos
de referencia aumenta. Cabe ressaltar que a medida que o n
umero de nos de referencia aumenta,
diminui a probabilidade destes nos se alinharem,
o que tambem contribui para a melhora do desempenho dos algoritmos PSO e BC-PSO.
Observa-se ainda que os algoritmos PSO e
BC-PSO demoram mais a convergir para a solucao do problema quando o no desconhecido est
a
proximo ao limite do espaco de busca. O BSA, por
sua vez, converge para a solucao com a mesma velocidade, independente da localizacao do no desconhecido. O comportamento dos tres algoritmos,
sob este aspecto, e demonstrado no vdeo disponibilizado em (Sa, A. O., 2014).
No que diz respeito ao tempo de processamento, o PSO foi o algoritmo que teve o menor
tempo medio, aproximadamente 14% menos do
que o BC-PSO e 28% menos do que o BSA. O
tempo de processamento nao sofreu mudancas significativas com o aumento do n
umero de nos de referencia: entre 2,5% e 4,1% de aumento a cada n
o
de referencia adicionado. A Figura 7, apresenta
uma comparacao entre o tempo de processamento
requerido pelos tres algoritmos, para 3, 4 e 5 nos
de referencia. Os tempos de processamento foram
normalizados em relacao ao maior tempo de processamento, que ocorre para o BSA com 5 nos de
referencia.

100

40
30
20
10
Posio calculada
Posio real
Ns de referncia

Figura 4: Exemplo de erro de simetria com o PSO


80

100

90
80

Tempo de Processamento, normalizado (%)

70
60
50
40
30
20
10
0

Posio calculada
Posio real
Ns de referncia

Figura 6: Exemplo de resposta sem erro de simetria, com o BSA

50

60

100

60

60

40

80

70

70

20

60

80

80

0
100

40

90

90

20

Posio calculada
Posio real
Ns de referncia

100

80

82,6%
68,3%

64,4%

85,3%
71,4%

60

40

20

Figura 5: Exemplo de erro de simetria com o BCPSO

78,4%

100%

96,0%

93,5%

PSO
BCPSO
BSA
3

4
Ns de referncia

Figura 7: Comparacao dos tempos de processamento

14

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

Conclus
oes

networks with mobile nodes, Wireless Communications and Mobile Computing Conference (IWCMC), 7th International, IEEE,
pp. 8388.

Com base nos resultados obtidos, conclui-se que,


para o problema de localizac
ao, o BSA apresenta
maior robustez que os demais algoritmos testados
no que tange a` disposic
ao dos n
os. No que diz
respeito `a posic
ao dos n
os desconhecidos, a velocidade de convergencia foi a mesma tanto para os
nos da periferia quanto para os n
os posicionados
em outras regi
oes do espaco de busca. No que diz
respeito `a posic
ao relativa dos n
os de referencia,
o BSA manteve a capacidade de convergir para o
mnimo global, mesmo quando os n
os de referencia estao quase alinhados. Esta robustez, garantiu
ao BSA menores erros que os demais algoritmos
para 3 e 4 nos de referencia.
O algoritmo que apresentou a menor MEP foi
o BC-PSO, para 5 n
os de referencia. Neste caso, o
mesmo superou a MEP do BSA em aproximadamente duas ordens de grandeza, tendo 34,06% dos
nos desconhecidos alcancado o resultado
otimo em
menos de 100 gerac
oes. Cabe ressaltar que este
resultado foi obtido em um tempo de processamento 14% menor do que o consumido pelo BSA.
Em contrapartida, este algoritmo se mostrou inadequado para problemas cujos n
os de referencia
sao colineares ou quase colineares.
O PSO foi o algoritmo com menor consumo
de tempo de processamento, o que pode ser vantajoso para problemas em que n
ao existam nos de
referencia quase colineares.
Para trabalhos futuros, prop
oe-se a investigacao do desempenho destes algoritmos em problemas com m
ultiplos saltos e em problemas onde
haja rudo nas medidas de dist
ancia.
9

Engelbrecht, A. P. (2005). Fundamentals of Computational Swarm Intelligence, Wiley.


Huanxiang, J. et al. (2010). Localization algorithm for mobile anchor node based on genetic algorithm in wireless sensor network, Intelligent Computing and Integrated Systems
(ICISS), International Conference on, IEEE,
pp. 4044.
Kennedy, J. e Eberhart, R. (1995). Particle swarm
optimization, Proceedings of 1995 IEEE International Conference on Neural Networks,
pp. 19421948.
Langendoen, K. e Reijers, N. (2005). Distributed localization algorithms, In: R. Zurawski
(Eds.) Embedded Systems Handbook, CRC
press, pp. 36.136.23.
Lymberopoulos, D. et al. (2006). An empirical characterization of radio signal strength
variability in 3-d ieee 802.15. 4 networks
using monopole antennas, Wireless Sensor
Networks, Springer, pp. 326341.
Mao, G. et al. (2007). Wireless sensor network
localization techniques, Computer networks
51(10): 25292553.
Sa, A. O. (2014). Comportamento dos algoritmos
PSO, BC-PSO e BSA, aplicados ao problema
de localizacao, http://youtu.be/d7xgjlKTXs.

Agradecimentos

Shi, Y. e Eberhart, R. (1998). A modified particle


swarm optimizer, Evolutionary Computation
Proceedings, 1998. IEEE World Congress on
Computational Intelligence., The 1998 IEEE
International Conference on, IEEE, pp. 69
73.

Agradecemos `
a Fundac
ao Carlos Chagas Filho de
Amparo `a Pesquisa do Estado do Rio de Janeiro
(FAPERJ, http://www.faperj.br), por financiar
este estudo.

Sun, W. e Su, X. (2011). Wireless sensor network


node localization based on genetic algorithm,
IEEE 3rd. Int. Conf. on Communication
Software and Networks, 2011, pp. 316319.

Refer
encias
Civicioglu, P. (2013a). Backtracking search optimization algorithm for numerical optimization problems, Applied Mathematics and
Computation 219(15): 81218144.
Civicioglu, P. (2013b). BSA code for MATLAB,
http://www.pinarcivicioglu.com/bsa.html.
Ekberg, P. (2009). Swarm-intelligent localization,
Masters thesis, Uppsala Universitet, Uppsala, Sweden.
Ekberg, P. e Ngai, E. (2011).
A distributed swarm-intelligent localization for sensor

15

Você também pode gostar