Avaliac¸˜ao de Heur´ısticas para Coleta de Dados em Redes de Sensores
Daniel Ludovico Guidoni Universidade Federal de Minas Gerais
E-mail: guidoni@dcc.ufmg.br Abstract
Um dos recursos mais importantes em redes de sen-sores ´e a energia, porque, em geral, as baterias dos n´os n˜ao podem ser recarregadas. Por isso, quaisquer soluc¸˜oes para essas redes devem ser eficientes em ter-mos de utilizac¸˜ao do r´adio, pois este ´e o compoonente que mais consomem energia. Neste trabalho s˜ao ana-lisadas trˆes heur´ısticas para agregac¸˜ao de dados em Redes de Sensores. Resultados de simulac¸˜ao mostram que nesse ambiente, as heur´ısticas simples tendem a ser melhores devido `a menor quantidade de pacotes transmitidos.
1 Introduc¸˜ao
As Redes de Sensores Sem Fio (RSSFs) [2, 9, 12] s˜ao compostas por uma grande quantidade de disposi-tivos computacionais inteligentes que realizam o sen-soriamento do ambiente em que foram inseridos e co-municam entre si para propagarem os dados coleta-dos at´e o n´o sink. Esse n´o apresenta uma capacidade computacional superior a dos demais n´os e sua res-ponsabilidade ´e processar as informac¸˜oes de sensoria-mento, disponibiliz´a-las para observadores externos e disseminar informac¸˜oes de controle para a rede. As RSSFs podem ser aplicadas no monitoramento, ras-treamento, coordenac¸˜ao e processamento de diversas aplicac¸˜oes. Devido `as aplicac¸˜oes das RSSFs, os micro sensores devem apresentar um tamanho reduzido e um baixo custo de produc¸˜ao o que implica em restric¸˜oes de mem´oria, de processamento e de energia. A energia ´e o recurso mais escasso porque os n´os sensores utilizam baterias finitas cuja recarga nem sempre ´e poss´ıvel. O acesso aos sensores ´e dif´ıcil, quando n˜ao invi´avel. Al´em disso, se a recarga de bateria for realizada,
de-vido ao grande n´umero de n´os na rede, ter-se-´a um pro-blema de escalabilidade. Outra dificuldade existente nesse ambiente ´e a topologia dinˆamica da rede que se faz presente perante a “morte” de sensores, a falhas de comunicac¸˜ao, ou a n´os adormecidos para economizar energia.
Nas aplicac¸˜oes de RSSFs, a comunicac¸˜ao de dados ´e um dos principais t´opicos de pesquisa porque seu custo ´e o mais significativo, seu consumo de energia ´e de aproximadamente trˆes ordens de grandeza superior ao custo de processamento. Logo, qualquer soluc¸˜ao para a comunicac¸˜ao de dados em RSSFs deve ser efi-ciente, em termos de energia, para aumentar o tempo de vida da rede. A comunicac¸˜ao de dados em RSSFs pode ser dividida em trˆes casos [3]: dos sensores para o sink (coleta de dados), entre os n´os sensores vizi-nhos (cooperac¸˜ao), e do n´o sink para os n´os sensores (disseminac¸˜ao de dados). Este tarabalho aborda o pro-blema da coleta de dados eficiente em redes de senso-res.
de heur´ısticas para sua construc¸˜ao torna-se de funda-mental importˆancia para sua utilizac¸˜ao.
O objetivo deste trabalho ´e analizar trˆes heur´ısticas para a construc¸˜ao da ´arvore de Steiner distribu´ıda em redes de senores. Ser´a feita a comparac¸˜ao entre os trˆes algoritmos avaliando a quantidade de transmiss˜oes ne-cess´arias para construir a ´arvore de Steiner de forma distribu´ıda. Ser´a analisado tambem, a ”qualidade” da soluc¸˜ao (´arvore) encontrada por cada heur´ıstica. Re-sultados de simulac¸˜ao mostram que heur´ısticas que obtem resultados pr´oximo do ´otimo possuem um alto custo na sua construc¸˜ao, por´em, a agregac¸˜ao de dados ´e feita de forma mais eficiente.
O restante do trabalho est´a organizado da seguinte maneira. A sec˜ao 2 define o problema que ser´a tratado neste trabalho. A sec¸˜ao 3 apresenta as heur´ısticas ava-liadas. Na sec¸˜ao 4 s˜ao apresentados os resultados de simulac¸˜ao e, finalmente, na sec¸˜ao 5 s˜ao apresentados as conclus˜oes e trabalhos futuros.
2 Definic¸˜ao do Problema
Considere que nem todos os n´os necess´ariamente alcanc¸am o n´o sink com apenas uma transmiss˜ao. Por-tanto, uma vez que um evento ´e detectado na rede, ´e necess´ario definir uma estrutura na rede com multiplas transmiss˜oes (hops). Idealmete, essa estrutura deve maximixar a agregac¸˜ao de dados e reduzir a quanti-dade de transmiss˜oes, i.e., uma ´arvore de transmiss˜ao m´ınima.
Definic¸˜ao 1. Definic¸˜ao do problema: Dado uma rede com m´ultiplos hops G = (V, E), deseja-se en-contrar de forma reativa1, a ´arvore de transmiss˜ao m´ınima conectando todos os n´os S1, S2, ...Sk a D, onde os n´os S s˜ao os n´os que detectaram um evento e D o n´o sink.
A ´arvore de transmiss˜ao m´ınina ´e, na verdade, uma ´arvore m´ınima de Steiner conectando os n´os que detec-taram o evento ao n´o sink. Dessa forma, a quantidade m´ınima de transmiss˜oes para o roteamento da coleta do evento detectado na rede ´e a quantidade de ares-tas da ´arvore m´ınima de Steiner na rede que cont´em o conjunto de n´os (S1, S2, ...Sk, D).
1De forma dinˆamica.
3 Heur´ısticas para Construc¸˜ao da ´Arvore de Steiner
A presente sec¸˜ao discute trˆes heur´ısticas para a construc¸˜ao da ´arvore de Steiner Distribu´ıda. Ser˜ao analizados as seguintes heur´ısticas: Shortest Paths Tree (SPT), Center at Nearest Source (CNS) e Gre-edy Incremental Tree (GIT). Existem v´arias heur´ısticas para encotrar a ´arvore de Steiner m´ınina [13, 5], por´em, s˜ao heur´ısticas que aplicadas a redes de sen-sores necessitam de uma grande troca de mensagens, tornando-as inadequadas.
3.1 Shortest Paths Tree
Umas dss formas mais simples de construc¸˜ao da ´arvore de Steiner distribu´ıda ´e utilizando a heur´ıstica Shorteste Paths Tree. Nessa heur´ıstica, cada n´o Sique detectou um evento (n´o fonte), envia seu pacote con-tendo as informac¸˜oes sensoreadas para o n´o sink, no menor caminho entre o n´o fonte e o sink. Quando o caminho entre o n´o fonte Si e Sj ao sink se sobrep˜oe, o pacote ´e agregado. A figura 1 apresenta o funcina-mento do algoritmo descrito.
Figura 1. Funcionamento do SPT. As regi ˜oes em cinza claro representam enventos.
de menor caminho. Quando um n´o da ´arvore recebe um pacote, esse ´e retransmitido para seu pai at´e chegar no sink. Se um n´o da ´arvore receber pacotes de filhos diferentes, ele agrega esse pacote e retransmite apenas um.
3.2 Center at Nearest Source
Nessa heur´ıstica, proposta em [10], cada n´o Sique detecta um evento na rede, transmite um pacote con-tendo as informac¸˜oes sensoreadas para algum n´o Sj (n´o que tamb´em detectou um evento) mais pr´oximo do sink. O n´o Sj agrega todas os pacotes recebidos e envia apenas um pacote para o n´o sink. A figura 2 apresenta o funcionamento do algoritmo descrito.
Figura 2. Funcionamento do CNS. As regi ˜oes em cinza claro representam enventos.
O algoritmo funciona da seguinte forma: no ins-tante 0 de simulac¸˜ao o n´o sink executa uma difus˜ao na rede. Todos os n´os ao receberem o pacote, atua-lizam a sua tabela de rota com o menor caminho at´e o sink. Quando um n´o detecta o primeiro evento na rede, ele ir´a transmitir as informac¸˜oes sensoreadas uti-lizando o menor caminho dele at´e o sink e executar´a uma difus˜ao informando a todos os n´os que ele ´e um fonte mais pr´oximo do sink. Quando um novo evento acontece na rede, o n´o que detectou o evento ir´a ve-rificar se esse evento que acabou de acontecer ´e mais pr´oximo do sink do que o evento j´a detectado, se for, ele executar´a uma difus˜ao informando que existe um n´o fonte mais pr´oximo do sink. Caso contr´ario, ele en-viar´a seus pacotes para o fonte existente mais pr´oximo do sink. Os n´os fontes mais pr´oximos do sink ir˜ao fa-zer a agragac¸˜ao dos dados recebidos.
3.3 Greedy Incremental Tree
Em [1], os autores descrevem uma heur´ıstica para construc¸˜ao da ´arvore de Steiner com fator de aproximac¸˜ao de 2. Essa heur´ıstica funciona em eta-pas. Primeiramete o n´o fonte Sienvia seus dados pelo menor caminho at´e o n´o sink. A cada novo evento na rede, ´e encontrado o menor caminho desses n´os fontes at´e a ´arvore j´a criada. A cada nova sub-´arvore conc-tada a ´arvore, tem-se um ponto de agragac¸˜ao. A figura 3 ilustra o funcionamento do algoritmo.
Figura 3. Funcionamento do GIT. As regi ˜oes em cinza claro representam enventos.
O funcionamento do algoritmo segue da seguinte forma: no instante 0 de simulac¸˜ao, o n´o sink executa uma difus˜ao na rede. Cada n´o atualiza sua tabela de rota para o menor caminho at´e o sink. Quando o pri-meiro evento acontece na rede, os n´os fontes enviam seus pacotes pelo menor caminho na ´arvore. Quando um novo evento acontece, os n´os que detectaram esse novo evento, executam uma difus˜ao na rede requisi-tando aos n´os da ´arvore criada previamente um ca-minho at´e eles. Quando os n´os da ´arvore recebem esse pacote, eles executam uma difus˜ao criando um caminho dele para todos os fontes que requisitaram a criac¸˜ao da sub-´arvore. Quando o n´o que requisitou a criac¸˜ao da sub-´arvore recebe o pacote contendo o esse caminho, esse n´o atualiza sua tabela de rota com o menor caminho entre todos recebidos. Ap´os isso, esse novo n´o fonte enviar´a suas informac¸˜oes pela sub-´arvore criada. Os n´os de intercec¸˜ao das sub-sub-´arvores ir˜ao fazer a agregac¸˜ao dos pacotes recebidos, enviando apenas um pacote para o sink.
de transmiss˜oes necess´arias para a criac¸˜ao da ´arvore m´ınima de Steiner. ´E mostrado que no melhor caso, o algoritmo executa cS log S transmiss˜oes. Para o pior caso, o algoritmo executa cSN . Onde S ´e a quanti-dade de n´os fontes, N ´e a quantiquanti-dade de n´os da rede e c ´e a quantidade de vizinhos que cada n´o possui. Por-tanto, no limite inferior tem-se Ω(S log S), e no limite superior, tem-se O(SN ). Na sec¸˜ao 4.3 os resultados anal´ıticos ser˜ao comparados com os resultados experi-mentais.
4 Resultado de Simulac¸˜ao
Nesta sec¸˜ao, ser´a avaliado o desempenho das heur´ısticas SPT, CNS e GIT. A sec¸˜ao est´a dividida da seguinte forma: na sec¸˜ao 4.1 ser´a apresentado o cen´ario em que as simulac¸˜oes foram executadas. A sec¸˜ao 4.2 apresenta an´alise experimental entre as heur´ısticas descritas, e, finalmente, na sec¸˜ao 4.3 ´e apresentada a comparac¸˜ao entre o resultado anal´ıtico e experimental da heur´ıstica GIT.
4.1 Cen´ario
No cen´ario analisado, a rede utilizada ´e composta por 529 n´os est´aticos, homogˆeneos, dispostos aleatori-amente em uma ´area de 657 × 657 m2 e cuja recarga da bateria ´e considerada imposs´ıvel. Cada n´o sensor apresenta em m´edia 24 vizinhos. A energia inicial dos n´os ´e igual a 10 J e o raio de comunicac¸˜ao ´e 80 m. A largura de banda ´e de 250Kbps. O sink se encontra no canto inferior esquerdo da rede. O tempo total de simulac¸˜ao ´e igual a 1000 segundos. Foram gerados 4 eventos na rede de forma aleat´oria do tipo CBR, onde o n´o envia continuamente a cada 20s um pacote com as informac¸˜oes sensoreadas. O primeiro evento comec¸a no isntante 100 da simulac¸˜ao, o segundo evento no ins-tante 200, o tereiro evento no insins-tante 300 e o quarto evento no instante 400. Todos os eventos terminar˜ao no instante 900 da simulac¸˜ao. As implementac¸˜oes das heur´ısticas foram feitas no simulador ns-2 [11].
Todos os valores apresentados nos resultados cor-respondem `a m´edia aritm´etica de 33 simulac¸˜oes. Em todos os experimentos, utilizou-se 95% de intervalo de confianc¸a. Al´em disso, o Teste-T [8] foi utilizado para afirmar se um protocolo ´e superior, inferior ou igual a outro.
4.2 Comparac¸˜ao entre as Heur´ısticas
A figura 4 ilustra a quantidade de pacotes transmi-tidos durante o tempo de vida da rede. Pode-se ob-servar, aplicando o Teste-T com 95% de confinac¸a, que a heur´ıstica GIT efetua aproximadamente 3 ve-zes mais transmiss˜oes do que o CNS e 6 veve-zes mais transmiss˜oes do que a heur´ıstica SPT. Isso se deve ao fato de a cada evento novo na rede, uma grande quan-tidade de transmiss˜oes s˜ao necess´arias para a criac¸˜ao da ´arvore pelo GIT, como visto na sec¸˜ao na sec¸˜ao 3.3. Por sua vez, a heur´ıstica CNS efetua mais trans-miss˜oes do que a heur´ıstica SPT (Teste-T com 95% de confianc¸a), j´a que para cada novo evento, os n´os que detectaram esse evento devem descobrir (caso pos-sua) os n´os fontes mais pr´oximo do sink. A heur´ıstica SPT apresenta o melhor resultado em termos de pa-cotes transmitidos, j´a que ela envia seus dados senso-reados diretamente ao sink pelo menor caminho, n˜ao tendo nehuma fase de descobrimento de um ”novo” menor caminho para agregac¸˜ao dos dados.
0 5000 10000 15000 20000 25000 30000 35000 40000 0 100 200 300 400 500 600 700 800 900 1000 Pacotes transmimitos Tempo (s) GIT CNS SPT
Figura 4. N ´umero de Transmiss ˜oes.
A figura 5 complementa a figura 4, enfatizando apenas a quantidade de pacotes de controle transmi-tidos na rede. Pode-se comprovar que o GIT exe-cuta um n´umero muito elevado de transmiss˜oes. Uma observac¸˜ao importante ´e que o SPT, como observado na mesma figura, executa apenas uma difus˜ao na rede (difus˜ao executada pelo sink) para descobir o menor caminho de todos os n´os ao no sink. Assim, ele possui o menor overhead de pacotes de controle transmitidos na rede comparado as outras heur´ısticas (Teste-T com 95% de confianc¸a).
0 5000 10000 15000 20000 25000 30000 35000 0 100 200 300 400 500 600 700 800 900 1000 Pacotes Transmitidos Tempo (s) GIT CNS SPT
Figura 5. Pacotes de Controle Transmitidos.
tes de eventos transmitidos. A an´alise desse gr´afico ´e uma boa m´etrica para observar qual heur´ıstica con-segue agregar a maior quantidade de pacotes de even-tos detectados na rede. Pode-se obervar que o GIT ´e a heur´ıstica que apresenta a maior quantidade de pa-cotes agregados, j´a que a quantidade de papa-cotes de eventos transmitidos ´e inferior aos demais protocolos (Teste-T com 95% de confianc¸a). Esse bom resultado do GIT deve-se ao fato, como descrito anteriormente, de a cada novo evento detectado na rede, os n´os ten-tam descobrir a melhor rota que levar´a a uma maior quantidade de pacotes agregados.
A heur´ıstica CNS apresenta o pior resultado (Teste-T com 95% de confianc¸a) comparada `as demais heur´ısticas. Mesmo tentando executar agregac¸˜ao dos pacotes a cada novo evento detectado na rede, facil-mente encontra-se um cen´ario para seu pior caso, onde o n´o fonte mais pr´oximo do sink encontra-se muito pr´oximo desse, proporcionando uma agregac¸˜ao tar-dia dos dados. A heur´ıstica SPT apresenta resulta-dos superior `a heur´ıstica CNS (Teste-T com 95% de confianc¸a) e resultado inferior `a heur´ıstica GIT. Isso acontece pois, para o cen´ario avaliado, o menor cami-nho entre os fontes de um evento podem facilmente se sobrepor durante o seu percurso, proporcionando uma boa agregac¸˜ao de dados.
4.3 An´alise de Desempenho do GIT
Nesta sec¸˜ao ser´a comparado os limites superiores e inferiores anal´ıticos do GIT com os resultados expe-rimentais encontrado nas simulac¸˜oes. Como descrito anteriormente, o limite inferior do GIT ´e Ω(S log S) e o limite superior ´e de O(SN ). Para cada novo evento
0 5000 10000 15000 20000 25000 30000 35000 0 100 200 300 400 500 600 700 800 900 1000 Pacotes Transmitidos Tempo (s) GIT CNS SPT
Figura 6. Pacotes de Eventos Transmitidos.
na rede, em m´edia 6 n´os o detectam. Assim, S assume os valeres de 6, 12, 18 e 24 durante o tempo de vida da rede, a medida que os eventos acontecem. A cons-tante c ´e definida a partir da quantidade de vizinhos e como mencionado anteriormente, c ≈ 24. A figura 7 ilustra a complexidade anal´ıtica e resultado experi-mental encontrado com relac¸˜ao ao n´umero de trans-miss˜oes. Pode-se perceber que o resultado experimen-tal encontra-se pr´oximo ao limite inferior comparado a sua distˆancia do limite superior. Assim, a quantidade excessiva de pacotes transmitidos pelo GIT encontra-se dentro do esperado para o cen´ario analisado.
1 10 100 1000 10000 100000 1e+06 1 2 3 4
Número de Pacotes transmimitos
Tempo (s) Limite Superior
GIT Limite Inferior
Figura 7. Comparac¸ ˜ao dos Limites Superior e Inferior com o Resultado Experimental.
5 Conclus˜ao e Trabalhos Futuros
obser-vado que as heur´ısticas que possuem baixa quantidade de transmiss˜oes de pacotes de controle, mostraram-se mais eficientes com relac¸˜ao ao n´umero total de paco-tes transmitidos, contabilizando os de controle e de eventos, mesmo tendo uma ´arvore com poucos pon-tos de agregac¸˜ao. A heur´ıstica CNS moutrou-se infe-rior `a heur´ıstica SPT, tanto na quantidade de pacotes transmitidos, quanto na qualidade da ´arvore gerada. A heur´ıstica GIT foi analisada, e verificou-se que a ´arvore criada ´e a ”melhor” entre as trˆes analisadas, mas n˜ao compensando o custo na sua construc¸˜ao, j´a que em Redes de Sensores, a transmiss˜ao de dados ´e a tarefa que mais consome energia. Assim, para o cen´ario ana-lisado, a heur´ıtica com melhor desempenho foi a SPT. Como trabalho futuro, as heur´ısticas ser˜ao analisa-das em diferentes cen´arios, alterando a densidade da rede, raio de comunicac¸˜ao e quantidade de eventos. Assim, ser´a verificado o desempenho dos algoritmos de forma generalizada.
Referˆencias
[1] Bauer and Varma. Distributed algorithms for mul-ticast path setup in data networks. IEEETNWKG:
IEEE/ACM Transactions on NetworkingIEEE Com-munications Society, IEEE Computer Society and the ACM with its Special Interest Group on Data Com-munication (SIGCOMM), ACM Press, 4, 1996.
[2] D. Estrin, R. Govindan, J. Heidemann, and S. Ku-mar. Next century challenges: scalable coordination in sensor networks. In MOBICOM 99, pages 263– 270, USA, 1999.
[3] O. Goussevskaia, M. do Val Machado, R. A. Mini, A. A. Loureiro, G. R. Mateus, and J. M. Nogueira. Data dissemination based on the energy map. In IEEE
Communications Magazine, July 2005.
[4] J. S. Heidemann, F. Silva, C. Intanagonwiwat, R. Go-vindan, D. Estrin, and D. Ganesan. Building efficient wireless sensor networks with low-level naming. In
Symposium on Operating Systems Principles, pages
146–159, 2001.
[5] Hougardy and Promel. A 1.598 approximation algo-rithm for the steiner problem in graphs. In SODA:
ACM-SIAM Symposium on Discrete Algorithms (A Conference on Theoretical and Experimental Analy-sis of Discrete Algorithms), 1999.
[6] C. Intanagonwiwat, R. Govindan, and D. Estrin. Stei-ner problem in network: A survey. In Networks, vo-lume 17, pages 129–167, 1987.
[7] C. Intanagonwiwat, R. Govindan, and D. Estrin. Di-rected diffusion: a scalable and robust
communica-tion paradigm for sensor networks. In Mobile
Com-puting and Networking, pages 56–67, 2000.
[8] R. Jain. The Art of Computer Systems Performance
Analysis: techniques for experimental design, measu-rement, simulation and modeling. John Wiley, 1991.
[9] J. M. Kahn, R. H. Katz, and K. S. J. Pister. Next cen-tury challenges: Mobile networking for smart dust. In
In Proceedings of MOBICOM, pages 271–278,
Seat-tle, 1999.
[10] B. Krishnamachari, D. Estrin, and S. Wicker. Model-ling data-centric routing in wireless sensor networks, 2002. In IEEE INFOCOM.
[11] ns2. The network simulator. www.isi.edu/nsnam/ns, 2002.
[12] G. Pottie and W. Kaiser. Wireless integrated network sensors. In Communications of the ACM, volume 43, pages 551–8, may 2000.
[13] G. Robins and A. Zelikovsky. Improved steiner tree approximation in graphs. In Symposium on Discrete