• Nenhum resultado encontrado

Localização de robôs utilizando inteligência de enxame

N/A
N/A
Protected

Academic year: 2019

Share "Localização de robôs utilizando inteligência de enxame"

Copied!
7
0
0

Texto

(1)

LOCALIZA ¸C ˜AO DE ROB ˆOS UTILIZANDO INTELIGˆENCIA DE ENXAME

Alan Oliveira de S´a∗, Nadia Nedjah, Luiza de Macedo Mourelle, Leandro dos Santos

Coelho§

Centro de Eletrˆonica, Comunica¸c˜oes e Tecnologia da Informa¸c˜ao

Centro de Instru¸c˜ao Almirante Wandenkolk, Marinha do Brasil

Departamento de Engenharia Eletrˆonica e Telecomunica¸c˜oes

Departamento de Engenharia de Sistemas e Computa¸c˜ao

Faculdade de Engenharia, Universidade do Estado do Rio de Janeiro

§Programa de P´os-Gradua¸c˜ao em Engenharia de Produ¸c˜ao e Sistemas (PPGEPS), Pontif´ıcia

Universidade Cat´olica do Paran´a

Programa de P´os-Gradua¸c˜ao em Engenharia El´etrica (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 localiza¸c˜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 posi¸c˜oes sem o uso de referˆencias externas, tal como o Sistema de Posicionamento Global ou GPS (Global Positioning System). Neste problema, a localiza¸c˜ao ´e realizada baseando-se em medidas de distˆancia para n´os de referˆencia, os quais tˆem suas posi¸c˜oes conhecidas. Na busca por algoritmos eficientes e precisos para descobrir a localiza¸c˜ao, alguns algoritmos bio-inspirados vˆem sendo explorados, tais como o Algoritmo Gen´etico ou GA (Genetic Algorithm) e o algoritmo de Otimiza¸c˜ao por Enxame de Part´ıculas ou PSO (Particle Swarm Optimization). Nesse sentido, visando solu¸c˜oes mais precisas para o problema de localiza¸c˜ao, este artigo apresenta e compara os resultados alcan¸cados com o PSO, com o Algoritmo de Busca por Retrocesso ou BSA (Backtracking Search Optimization Algorithm) e com um novo algoritmo que combina caracter´ısticas de ambos, denominado algoritmo de Otimiza¸c˜ao por Enxame de Part´ıculas com Retroa¸c˜ao Cognitiva ou BC-PSO (Backtracking Cognitive Particle Swarm Optimization). Os resultados mostram que o BSA ´e mais robusto no que diz respeito `as varia¸c˜oes na distribui¸c˜ao dos n´os, o PSO demanda menos tempo de processamento e o BC-PSO, em condi¸c˜oes espec´ıficas, ´e o mais preciso.

Palavras-chave— Otimiza¸c˜ao por Enxame de Part´ıculas, Algoritmo de Busca por Retrocesso, inteligˆencia de enxame, rob´otica de enxame, Rede de Sensores sem fio, localiza¸c˜ao.

1 Introdu¸c˜ao

Diversas das poss´ıveis aplica¸c˜oes de um enxame de robˆos demandam que cada indiv´ıduo seja capaz de descobrir sua posi¸c˜ao, seja ela absoluta, em fun¸c˜ao de um sistema de referˆencia universal, ou relativa, em rela¸c˜ao a outros indiv´ıduos, com base em um sistema de coordenadas local. Da mesma forma, as redes de sensores sem fio, cujas perspectivas de aplica¸c˜ao s˜ao amplas e tˆem atra´ıdo grande aten¸c˜ao da ind´ustria, na maioria dos casos possuem pouca utilidade quando n˜ao ´e poss´ıvel dispor da posi¸c˜ao de seus sensores (Sun, 2011).

Em ambos os casos, o tamanho reduzido, a limitada fonte de energia e o baixo custo s˜ao

ca-racter´ısticas comuns aos dispositivos, sejam eles robˆos ou sensores. A solu¸c˜ao mais evidente, que consiste em equipar cada elemento com um Sis-tema de Posicionamento Global ou GPS(Global Positioning System), torna-se muitas vezes invi´ a-vel.

(2)

rece-bido, no tempo de propaga¸c˜ao de um sinal, e/ou na compara¸c˜ao do tempo de propaga¸c˜ao de dois sinais com velocidades de propaga¸c˜ao diferentes (Ekberg, 2009) (Mao et al., 2007) (Lymberopoulos et al., 2006).

Uma vez que as t´ecnicas de medi¸c˜ao apresen-tadas dependem da propaga¸c˜ao de sinais, h´a de se considerar uma distˆancia limite para tais medi-¸c˜oes. Nos casos mais simples, onde todos os n´os de referˆencia est˜ao dentro da distˆancia limite de me-di¸c˜ao, as medidas s˜ao diretas e feitas em um ´unico salto. Entretanto, nos casos em que um ou mais n´os de referˆencia est˜ao fora da distˆancia limite, as medidas s˜ao obtidas indiretamente em m´ultiplos saltos, por meio de algoritmos como Sum-distou DV-hop(Langendoen, 2005). Dependendo da to-pologia da rede, ou enxame, os casos de um e de m´ultiplos saltos podem coexistir.

Em (Langendoen, 2005), os autores prop˜oem trˆes fases para a abordagem do problema com m´ultiplos saltos:

1. Estimar as distˆancias de cada n´o para os n´os de referˆencia.

2. Calcular a posi¸c˜ao de cada n´o a partir das distˆancias medidas na fase 1.

3. Refinar a posi¸c˜ao de cada n´o a partir das informa¸c˜oes de posi¸c˜ao e distˆancia dos n´os vizinhos.

A otimiza¸c˜ao por t´ecnicas bio-inspiradas vem sendo aplicada ao problema de localiza¸c˜ao, tanto nos casos de um ´unico salto, quanto nos casos de m´ultiplos saltos (Sun, 2011) (Ekberg, 2009). Este trabalho visa comparar o desempenho e a preci-s˜ao do algoritmo de otimiza¸c˜ao por enxame de part´ıculas ou PSO (Particle Swarm Optimization) (Engelbrecht, 2005), do algoritmo de busca por re-trocesso ou BSA (Backtracking Search Optimiza-tion Algorithm) (Civicioglu, 2013a) e de um novo algoritmo que combina caracter´ısticas de ambos, denominado algoritmo de otimiza¸c˜ao por enxame de part´ıculas com retroa¸c˜ao cognitiva ou BC-PSO (Backtracking Cognitive Particle Swarm Optimi-zation), na solu¸c˜ao de problemas de localiza¸c˜ao. Nos trˆes casos, as distˆancias medidas s˜ao de um ´

unico salto.

Para tal, o presente artigo ´e organizado da seguinte forma: Primeiramente, na Se¸c˜ao 2, s˜ao apresentados alguns trabalhos relacionados. Pos-teriormente, na Se¸c˜ao 3, ´e especificado o problema de localiza¸c˜ao. Nas Se¸c˜oes 4 e 5, s˜ao brevemente descritos os passos do PSO e BSA, respectiva-mente. Na Se¸c˜ao 6, ´e proposto o algoritmo BC-PSO, que combina as caracter´ısticas do PSO com o BSA, visando obter maior precis˜ao na solu¸c˜ao do problema de localiza¸c˜ao. Em seguida, na Se¸c˜ao 7, s˜ao reportados os resultados obtidos. Finalmente,

na Se¸c˜ao 8, s˜ao apresentadas as conclus˜oes, jun-tamente com algumas possibilidades de trabalhos futuros.

2 Trabalhos Relacionados

A importˆancia da informa¸c˜ao de localiza¸c˜ao dos elementos de uma rede de sensores, ou enxame de robˆos, e as limita¸c˜oes de hardwaree energia, t´ıpi-cas destes dispositivos, tˆem motivado a busca por algoritmos de localiza¸c˜ao cada vez mais eficientes e precisos.

Em (Sun, 2011), os autores reportam o uso de algoritmos gen´eticos para a solu¸c˜ao do problema de localiza¸c˜ao em uma rede de sensores, sem obs-t´aculos e sem ru´ıdo.

Uma outra abordagem ao problema de loca-liza¸c˜ao ´e relatada em (Huanxiang et al., 2010), onde os autores prop˜oem o uso de n´os de refe-rˆencia m´oveis e um algoritmo baseado em algo-ritmos gen´eticos para estabelecer a localiza¸c˜ao de n´os desconhecidos est´aticos. Este m´etodo, entre-tanto, pode apresentar desvantagens em redes com grande ´area de cobertura, devido ao elevado gasto de energia na movimenta¸c˜ao dos n´os de referˆencia. Em (Ekberg, 2009), o autor apresenta o al-goritmo de localiza¸c˜ao por inteligˆencia de enxame ou SIL (Swarm-Intelligent Localization), baseado no PSO, para a solu¸c˜ao do problema de localiza-¸c˜ao em uma rede de sensores est´aticos, de duas ou trˆes dimens˜oes, com medidas de distˆancia para os n´os de referˆencia feitas em m´ultiplos saltos. Em (Ekberg, 2011), ´e demonstrada a capacidade do SIL em resolver o problema de localiza¸c˜ao em re-des de sensores m´oveis.

Nesse contexto, este trabalho visa contribuir com a busca por algoritmos mais eficientes e mais precisos para o problema de localiza¸c˜ao, por meio da avalia¸c˜ao e da compara¸c˜ao do desempenho do PSO, BSA e de um algoritmo proposto, que com-bina as caracter´ısticas de ambos.

3 Especifica¸c˜ao do Problema A formula¸c˜ao dada ao problema de localiza¸c˜ao pode ser aplicada a problemas com duas ou trˆes dimens˜oes. Sendo assim, para simplificar a an´ a-lise, adotou-se caso de duas dimens˜oes. Como pre-missa, o problema ´e considerado como sendo de um ´unico salto, ou seja, todos os n´os desconheci-dos s˜ao capazes de medir a distˆancia para os n´os de referˆencia, de forma direta. Neste cen´ario n˜ao foram considerados erros nas medidas de distˆ an-cia.

(3)

r, respectivamente, exi´e a posi¸c˜ao estimada para o n´o desconhecidoi.

g(xi, dr, pr) = (dr− ||pr−xi||)

2

(1) Dessa forma, a fun¸c˜ao de aptid˜ao para a po-si¸c˜ao de um n´o desconhecido ´e obtida pela soma do quadrado dos erros de distˆancia para cada n´o de referˆencia, conforme apresentado em (2), onde R´e o n´umero de n´os de referˆencia.

f(xi, dr, pr) = R X

r=1

g(xi, dr, pr) (2)

Sendo assim, para encontrar a posi¸c˜ao de um n´o ´e preciso minimizar a fun¸c˜ao definida em (2). Neste cen´ario, onde n˜ao h´a erros de medida de distˆancia, o valor m´ınimo def(xi,dr,pr) ´e 0.

4 Otimiza¸c˜ao por Enxame de Part´ıculas O PSO tem origem na simula¸c˜ao de modelos soci-ais simplificados, como, por exemplo, a movimen-ta¸c˜ao de cardumes de peixes ou bandos de aves (Kennedy, 1995) (Shi, 1998), sendo o termo part´ı-cula utilizado para generalizar o indiv´ıduo. Nesta analogia, uma part´ıcula representa uma poss´ıvel solu¸c˜ao para um problema. O enxame, por sua vez, representa um conjunto de poss´ıveis solu¸c˜oes. A cada ciclo iterativo a posi¸c˜ao de cada part´ıcula ´e atualizada conforme (3), ondexievi s˜ao a posi¸c˜ao e a velocidade da part´ıculai, respectivamente.

xi(t+ 1) =xi(t) +vi(t+ 1) (3)

Ap´os atualizar a posi¸c˜ao das part´ıculas, ´e feita a avalia¸c˜ao das suas aptid˜oes.

O vetor de velocidadevi de cada part´ıcula ´e calculado pela soma de trˆes componentes: uma componente de in´ercia do movimento, uma com-ponente cognitiva, baseada na melhor solu¸c˜ao ob-tida pela part´ıcula, e uma componente social, ba-seada na melhor solu¸c˜ao global encontrada pelo enxame. O c´alculo de vi ´e feito conforme (4), ondew´e uma constante que representa a in´ercia da part´ıcula,ϕ1eϕ1s˜ao constantes que atribuem

pesos `as componentes social e cognitiva, respecti-vamente,r1er2s˜ao n´umeros aleat´orios entre [0,1],

mi ´e a melhor posi¸c˜ao da part´ıculaiemg´e a me-lhor posi¸c˜ao do enxame. ´E estabelecido ainda um limite de velocidade para cada dimens˜ao j, dado por (5), ondemaxj eminj s˜ao os limites m´aximo e m´ınimo do espa¸co de busca na dimens˜ao j, e δ∈[0,1].

vi(t+ 1) =wvi(t) +ϕ1r1(t)(mi−xi(t))

+ϕ2r2(t)(mg−xi(t))

(4)

0≤vij ≤δ(maxj−minj) (5)

A estrutura geral do PSO ´e definida pelo Al-goritmo 1.

Algoritmo 1: Algoritmo PSO in´ıcio

Inicia o enxame comx ev aleat´orias; Avalia o enxame;

Armazenami emg; repita

Atualiza velocidades, conforme (4) e (5);

Atualiza posi¸c˜oes, conforme (3); Avalia o enxame;

Atualizami emg, caso melhores posi¸c˜oes tenham sido

encontradas;

at´eCondi¸c˜ao de parada; retornamg;

fim

5 Algoritmo de Busca por Retrocesso O BSA ´e um novo algoritmo evolucion´ario (Civicioglu, 2013a), que utiliza informa¸c˜oes obti-das por gera¸c˜oes passaobti-das para buscar solu¸c˜oes de melhor aptid˜ao. A filosofia bio-inspirada do BSA ´e an´aloga a um grupo social de seres vivos que, em intervalos aleat´orios, retornam `as zonas de ca¸ca que foram previamente consideradas boas para a busca de alimentos. A estrutura geral do BSA ´e apresentada no Algoritmo 2.

Algoritmo 2: BSA in´ıcio

Inicializa¸c˜ao; repita

Sele¸c˜ao-I;

Gera nova popula¸c˜ao Muta¸c˜ao;

Cruzamento; fim

Sele¸c˜ao-II;

at´eCondi¸c˜ao de parada; fim

Na etapa de inicializa¸c˜ao, o algoritmo gera e avalia a popula¸c˜ao inicialP0e inicia uma

popula-¸c˜ao hist´oricaPhist. A popula¸c˜ao hist´orica consti-tui a mem´oria do BSA.

Durante a Sele¸c˜ao-I, o algoritmo determina aleatoriamente, utilizando uma distribui¸c˜ao uni-forme, se a popula¸c˜ao atual Pser´a gravada como popula¸c˜ao hist´oricaPhist e ent˜ao embaralha indi-v´ıduos dePhist.

O operador de muta¸c˜ao criaPmod (vers˜ao ini-cial da nova popula¸c˜aoPnova), de acordo com (6). Dessa forma, Pmod ´e o resultado do movimento dos indiv´ıduos dePnas dire¸c˜oes estabelecidas por (Phist−P). Srepresenta a amplitude do desloca-mento, que, neste algoritmo, ´e dada por (7).

(4)

S=k·Γ (7) O valor de k ´e ajustado empiricamente via uma s´erie de simula¸c˜oes, j´a Γ∼N(0,1), onde N ´e a distribui¸c˜ao normal padr˜ao. Para criar a ver-s˜ao final dePnova, o operador de cruzamento com-bina aleatoriamente, utilizando uma distribui¸c˜ao uniforme, elementos dePmod com elementos deP. Na etapa Sele¸c˜ao-II, o algoritmo seleciona os elementos dePnova (indiv´ıduos obtidos ap´os mu-ta¸c˜ao e cruzamento) que tenham a aptid˜ao melhor do que os deP(indiv´ıduos antes da muta¸c˜ao e do cruzamento) e os substitui emP. Dessa forma,P s´o incluir´a novos indiv´ıduos que tenham evolu´ıdo. Ap´os atendida a condi¸c˜ao de parada, o algoritmo retorna a melhor solu¸c˜ao encontrada.

6 Algoritmo de Otimiza¸c˜ao por Enxame de Part´ıculas com Retroa¸c˜ao Cognitiva O algoritmo BC-PSO, que combina caracter´ısti-cas do PSO com o BSA, ´e proposto com base na estrutura geral do PSO, por´em, com modifica¸c˜oes no que tange ao c´alculo da velocidade das part´ıcu-las. Neste algoritmo, a componente cognitiva de (4) foi modificada, inspirada no BSA, passando a ser computada n˜ao em fun¸c˜ao da melhor posi¸c˜ao da part´ıcula e sim em fun¸c˜ao de uma posi¸c˜ao da mesma selecionada aleatoriamente no passado. A componente social foi mantida de forma idˆentica `aquela usada no PSO. J´a a componente de in´er-cia foi mantida apenas para os ciclos iniin´er-ciais do algoritmo, a fim de prover uma melhor explora¸c˜ao do espa¸co de busca, sendo anulada quando o coe-ficiente de varia¸c˜ao da popula¸c˜ao atinge um valor ajustado empiricamente, com o objetivo de melho-rar a busca local no final do processo de otimiza-¸c˜ao. Estas modifica¸c˜oes resultam em (8), ondecv ´e o coeficiente de varia¸c˜ao da popula¸c˜ao,xh ´e uma posi¸c˜ao hist´orica da part´ıcula, escolhida aleatori-amente utilizando uma distribui¸c˜ao uniforme, eλ ´e uma constante que representa o valor do coefi-ciente de varia¸c˜ao a partir do qual a componente de in´ercia ´e anulada. Foi mantido um limite de velocidade, conforme definido em (5).

vi(t+1) = 

      

      

wvi(t) Se (cv< λ);

+ϕ1r1(t)(xh−xi(t))

+ϕ2r2(t)(mg−xi(t))

ϕ1r1(t)(xh−xi(t)) Se (cv≥λ).

+ϕ2r2(t)(mg−xi(t))

(8) O coeficiente de varia¸c˜ao da popula¸c˜ao cv ´e c´alculado conforme (9), onde σ eµ s˜ao o desvio padr˜ao e a m´edia da popula¸c˜ao, respectivamente.

cv =

σ

µ (9)

Cabe ressaltar que para formar a componente cognitiva, n˜ao ´e armazenado o hist´orico completo das posi¸c˜oes j´a visitadas pelas part´ıculas. A cada itera¸c˜ao, o algoritmo determina aleatoriamente, utilizando uma distribui¸c˜ao uniforme, se a posi-¸c˜ao atual das part´ıculas ser´a gravada na mem´oria para compor a componente cognitiva. Uma vez determinada a grava¸c˜ao, tais posi¸c˜oes sobrescre-vem as posi¸c˜oes gravadas anteriormente na me-m´oria. Dessa forma, a retroa¸c˜ao cognitiva n˜ao aumenta os requisitos computacionais, em termos de mem´oria, quando comparado ao PSO.

No que tange ao c´alculo da componente de in´ercia, o modelo utilizado ´e inspirado nos concei-tos apresentados em (Shi, 1998), no qual ´e esta-belecido que altos valores de coeficiente de in´ercia tendem a facilitar a busca global, enquanto baixos valores de coeficiente de in´ercia tendem a facilitar a busca local.

A estrutura do BC-PSO ´e definida pelo Algo-ritmo 3, ondexhist ´e a popula¸c˜ao hist´orica seleci-onada aleatoriamente.

Algoritmo 3: Algoritmo BC-PSO in´ıcio

Iniciaxhist aleatoriamente; Inicia o enxame comx ev aleat´orias; Avalia o enxame;

Armazenamg; repita

Atualiza velocidades, conforme (8) e (5);

Atualiza posi¸c˜oes, conforme (3); Avalia o enxame;

Atualizamg, caso uma melhor posi¸c˜ao tenha sido encontrada; Sejaxhist =x, aleatoriamente; at´eCondi¸c˜ao de parada;

retornamg; fim

7 Resultados Obtidos

As simula¸c˜oes foram feitas numa ´area de 100 ×

(5)

precisa-mente reproduzidos para ser submetidos aos trˆes algoritmos, tornando justa a compara¸c˜ao de de-sempenho. Em todas as simula¸c˜oes realizadas fo-ram empregadas popula¸c˜oes de 100 indiv´ıduos.

Para efeito de compara¸c˜ao entre os trˆes al-goritmos, foi calculada, a cada gera¸c˜ao, a m´edia do erro de posicionamento (MEP) de todos os n´os desconhecidos, para todos os cen´arios gera-dos, conforme descrito em (10), ondegrepresenta o n´umero da gera¸c˜ao,c o n´umero do cen´ario, io identificador do n´o desconhecido, D ´e o n´umero total de n´os desconhecidos, xreal ´e a posi¸c˜ao real do n´o excalc ´e a posi¸c˜ao calculada pelo algoritmo de otimiza¸c˜ao.

M EPg= P10

c=1

PD

i=1||xreal(c, i)−xcalc(c, i)||

10D

(10) As simula¸c˜oes com o PSO, BSA e BC-PSO fo-ram conduzidas em implementa¸c˜oes feitas no MA-TLAB, sendo, no caso do BSA, utilizada a imple-menta¸c˜ao dispon´ıvel em (Civicioglu, 2013b).

Os parˆametros dos trˆes algoritmos foram ajus-tados empiricamente por meio de uma s´erie de simula¸c˜oes. Com o BSA, o melhor resultado foi obtido comk= 1. Para o PSO e para o BC-PSO, o melhor resultado foi obtido com os parˆametros apresentados na Tabela 1.

Tabela 1: Parˆameros do PSO e BC-PSO Parˆametro PSO BC-PSO

λ – 0,31

w 0,7298 0,7298

ϕ1 2,05 1,05

ϕ2 2,05 2,05

δ 0,01 0,01

Os resultados da MEP por gera¸c˜ao, obtidos com os trˆes algoritmos, s˜ao apresentados nas Fi-guras 1, 2 e 3. Observando as FiFi-guras 1 e 2, pode-se constatar que, para 3 e 4 n´os de referˆencia, o BSA apresenta a menorMEP. Na Figura 1, para 3 n´os de referˆencia, verifica-se que ao final de 100 gera¸c˜oes o BSA apresenta umaMEPda ordem de 10−3

enquanto que os outros algoritmos apresen-tam umaMEPda ordem de 1. Na Figura 2, para 4 n´os de referˆencia, o BSA apresenta umaMEPda ordem de 10−4

enquanto que os outros algoritmos apresentam umaMEPda ordem de 10−2

. Entretanto, comparando as Figuras 2 e 3, pode-se constatar uma melhora significativa no desempenho dos algoritmos PSO e BC-PSO, quando s˜ao adotados 5 n´os de referˆencia. Neste caso o algoritmo BC-PSO apresentou uma MEP da ordem de 10−6

, superando aMEPdos demais algoritmos em duas ordens de grandeza. Cabe ainda ressaltar que, com o algoritmo BC-PSO, para 5 n´os de referˆencia, 34,06% dos n´os desconhe-cidos alcan¸caram o resultado ´otimo (i.e. erro=0) ao final de 100 gera¸c˜oes. Com o BSA e PSO, ne-nhum dos n´os desconhecidos alcan¸cou o resultado

´otimo em 100 gera¸c˜oes.

0 10 20 30 40 50 60 70 80 90 100 10−3

10−2

10−1 100 101

Gerações

Média do Erro de Posicionamento (MEP) (log)

BSA PSO BC−PSO

Figura 1: Curvas de MEP×gera¸c˜ao, com 3 n´os de referˆencia

0 10 20 30 40 50 60 70 80 90 100 10−4

10−3 10−2 10−1 100 101

Gerações

Média do Erro de Posicionamento (MEP) (log)

BSA PSO BC−PSO

Figura 2: Curvas de MEP×gera¸c˜ao, com 4 n´os de referˆencia

0 10 20 30 40 50 60 70 80 90 100 10−6

10−5 10−4 10−3 10−2 10−1 100 101

Gerações

Média do Erro de Posicionamento (MEP) (log)

BSA PSO BC−PSO

Figura 3: Curvas de MEP×gera¸c˜ao, com 5 n´os de referˆencia

(6)

referˆencia s˜ao colineares, a fun¸c˜ao de aptid˜ao ´e si-m´etrica em rela¸c˜ao a reta formada por estes n´os e consequentemente o problema admite matemati-camente duas solu¸c˜oes, sendo apenas uma v´alida (Langendoen, 2005). Nos casos onde os n´os de referˆencia n˜ao s˜ao colineares, mas se aproximam desta condi¸c˜ao, a fun¸c˜ao de aptid˜ao se aproxima de tal simetria apresentando dois m´ınimos (um lo-cal e um global) com valores de aptid˜ao pr´oximos. Nestas condi¸c˜oes, os algoritmos PSO e BC-PSO convergem, em alguns casos, para o m´ınimo lo-cal que n˜ao corresponde `a posi¸c˜ao real (m´ınimo global). O BSA, por sua vez, n˜ao encontra difi-culdades para convergir para o m´ınimo global, em condi¸c˜oes idˆenticas. As Figuras 4, 5 e 6 exempli-ficam a diferen¸ca de resposta dos trˆes algoritmos para n´os de referˆencia quase colineares. Nestas fi-guras, 3 n´os de referˆencia est˜ao posicionados pr´ o-ximos `a reta destacada. Nos mapas gerados para os algoritmos PSO e BC-PSO (Figuras 4 e 5, res-pectivamente), foram demarcadas regi˜oes onde h´a grande incidˆencia de n´os cujas posi¸c˜oes calcula-das est˜ao incorretamente do lado oposto da reta. A Figura 6 mostra a solu¸c˜ao correta obtida pelo BSA para o mesmo problema.

0 20 40 60 80 100

0 10 20 30 40 50 60 70 80 90 100

Posição calculada Posição real Nós de referência

Figura 4: Exemplo de erro de simetria com o PSO

0 20 40 60 80 100

0 10 20 30 40 50 60 70 80 90 100

Posição calculada Posição real Nós de referência

Figura 5: Exemplo de erro de simetria com o BC-PSO

0 20 40 60 80 100

0 10 20 30 40 50 60 70 80 90 100

Posição calculada Posição real Nós de referência Figura 6: Exemplo de resposta sem erro de sime-tria, com o BSA

H´a uma melhora significativa nos resultados, com os trˆes algoritmos, quando o n´umero de n´os de referˆencia aumenta. Cabe ressaltar que a me-dida que o n´umero de n´os de referˆencia aumenta, diminui a probabilidade destes n´os se alinharem, o que tamb´em contribui para a melhora do desem-penho dos algoritmos PSO e BC-PSO.

Observa-se ainda que os algoritmos PSO e BC-PSO demoram mais a convergir para a solu-¸c˜ao do problema quando o n´o desconhecido est´a pr´oximo ao limite do espa¸co de busca. O BSA, por sua vez, converge para a solu¸c˜ao com a mesma ve-locidade, independente da localiza¸c˜ao do n´o des-conhecido. O comportamento dos trˆes algoritmos, sob este aspecto, ´e demonstrado no v´ıdeo disponi-bilizado em (S´a, A. O., 2014).

No que diz respeito ao tempo de processa-mento, o PSO foi o algoritmo que teve o menor tempo m´edio, aproximadamente 14% menos do que o BC-PSO e 28% menos do que o BSA. O tempo de processamento n˜ao sofreu mudan¸cas sig-nificativas com o aumento do n´umero de n´os de re-ferˆencia: entre 2,5% e 4,1% de aumento a cada n´o de referˆencia adicionado. A Figura 7, apresenta uma compara¸c˜ao entre o tempo de processamento requerido pelos trˆes algoritmos, para 3, 4 e 5 n´os de referˆencia. Os tempos de processamento foram normalizados em rela¸c˜ao ao maior tempo de pro-cessamento, que ocorre para o BSA com 5 n´os de referˆencia.

3 4 5

0 20 40 60 80 100

Nós de referência

Tempo de Processamento, normalizado (%)

PSO BC−PSO BSA

82,6%

68,3% 93,5%

78,4%

64,4%

71,4% 85,3%

96,0% 100%

(7)

8 Conclus˜oes

Com base nos resultados obtidos, conclui-se que, para o problema de localiza¸c˜ao, o BSA apresenta maior robustez que os demais algoritmos testados no que tange `a disposi¸c˜ao dos n´os. No que diz respeito `a posi¸c˜ao dos n´os desconhecidos, a velo-cidade de convergˆencia foi a mesma tanto para os n´os da periferia quanto para os n´os posicionados em outras regi˜oes do espa¸co de busca. No que diz respeito `a posi¸c˜ao relativa dos n´os de referˆencia, o BSA manteve a capacidade de convergir para o m´ınimo global, mesmo quando os n´os de referˆen-cia est˜ao quase alinhados. Esta robustez, garantiu ao BSA menores erros que os demais algoritmos para 3 e 4 n´os de referˆencia.

O algoritmo que apresentou a menorMEPfoi o BC-PSO, para 5 n´os de referˆencia. Neste caso, o mesmo superou aMEPdo BSA em aproximada-mente duas ordens de grandeza, tendo 34,06% dos n´os desconhecidos alcan¸cado o resultado ´otimo em menos de 100 gera¸c˜oes. Cabe ressaltar que este resultado foi obtido em um tempo de processa-mento 14% menor do que o consumido pelo BSA. Em contrapartida, este algoritmo se mostrou ina-dequado para problemas cujos n´os de referˆencia s˜ao colineares ou quase colineares.

O PSO foi o algoritmo com menor consumo de tempo de processamento, o que pode ser van-tajoso para problemas em que n˜ao existam n´os de referˆencia quase colineares.

Para trabalhos futuros, prop˜oe-se a investiga-¸c˜ao do desempenho destes algoritmos em proble-mas com m´ultiplos saltos e em problemas onde haja ru´ıdo nas medidas de distˆancia.

9 Agradecimentos

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

Referˆencias

Civicioglu, P. (2013a). Backtracking search op-timization algorithm for numerical optimi-zation problems, Applied Mathematics and Computation 219(15): 8121–8144.

Civicioglu, P. (2013b). BSA code for MATLAB, http://www.pinarcivicioglu.com/bsa.html.

Ekberg, P. (2009). Swarm-intelligent localization, Master’s thesis, Uppsala Universitet, Upp-sala, Sweden.

Ekberg, P. e Ngai, E. (2011). A distribu-ted swarm-intelligent localization for sensor

networks with mobile nodes, Wireless Com-munications and Mobile Computing Confe-rence (IWCMC), 7th International, IEEE, pp. 83–88.

Engelbrecht, A. P. (2005).Fundamentals of Com-putational Swarm Intelligence, Wiley. Huanxiang, J. et al. (2010). Localization

algo-rithm for mobile anchor node based on gene-tic algorithm in wireless sensor network, In-telligent Computing and Integrated Systems (ICISS), International Conference on, IEEE, pp. 40–44.

Kennedy, J. e Eberhart, R. (1995). Particle swarm optimization, Proceedings of 1995 IEEE In-ternational Conference on Neural Networks, pp. 1942–1948.

Langendoen, K. e Reijers, N. (2005). Distribu-ted localization algorithms, In: R. Zurawski (Eds.) Embedded Systems Handbook, CRC press, pp. 36.1–36.23.

Lymberopoulos, D. et al. (2006). An empiri-cal characterization of radio signal strength variability in 3-d ieee 802.15. 4 networks using monopole antennas, Wireless Sensor Networks, Springer, pp. 326–341.

Mao, G. et al. (2007). Wireless sensor network localization techniques, Computer networks 51(10): 2529–2553.

S´a, A. O. (2014). Comportamento dos algoritmos PSO, BC-PSO e BSA, aplicados ao problema de localiza¸c˜ao, http://youtu.be/d7xgjlKTX-s.

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.

Imagem

Tabela 1: Parˆameros do PSO e BC-PSO Parˆ ametro PSO BC-PSO
Figura 5: Exemplo de erro de simetria com o BC- BC-PSO 0 20 40 60 80 1000102030405060708090100Posição calculadaPosição realNós de referência

Referências

Documentos relacionados

Chora Peito Chora Joao Bosco e Vinicius 000 / 001.. Chão De Giz Camila e

A seqüência analítica • Definição do problema • Escolha do método • Amostragem • Pré-tratamento da amostra • Medida • Calibração • Avaliação •

O desenvolvimento das interações entre os próprios alunos e entre estes e as professoras, juntamente com o reconhecimento da singularidade dos conhecimentos

1) As Operadoras obrigam-se a cumprir o que foi declarado na CPI da Telefonia Móvel em Santa Catarina quanto à execução de investimentos previstos nos termos do Plano de Melhoria

Se você vai para o mundo da fantasia e não está consciente de que está lá, você está se alienando da realidade (fugindo da realidade), você não está no aqui e

2. Identifica as personagens do texto.. Indica o tempo da história. Indica o espaço da história. Classifica as palavras quanto ao número de sílabas. Copia do texto três

1- A vida das comunidades recoletoras era muito difícil, devido ao frio intenso e aos animais ferozes, mas também porque era difícil encontrar comida e lugares onde se abrigarem.. 2-

O empregador deverá realizar a avaliação ambiental de poeira de asbesto nos locais de trabalho em intervalos não superiores a seis meses.. Os registros das avaliações deverão