REDUC
¸ ˜
AO DE DADOS EM REDES DE
SENSORES SEM FIO BASEADA EM STREAM
DE DADOS
Belo Horizonte
REDUC
¸ ˜
AO DE DADOS EM REDES DE
SENSORES SEM FIO BASEADA EM STREAM
DE DADOS
Tese apresentada ao Curso de P ´os-Graduac¸ ˜ao em Ci ˆencia da Computac¸ ˜ao da Universidade Federal de Minas Gerais como requisito parcial para a obtenc¸ ˜ao do grau de Doutor em Ci ˆencia da Computac¸ ˜ao.
Orientador:
Prof. Dr. Ant ˆonio Ot ´avio Fernandes
UNIVERSIDADE FEDERAL DE MINAS GERAIS
P ´OS-GRADUAC¸ ˜AO EM CIENCIA DAˆ COMPUTAC¸ ˜AO
Belo Horizonte
ANDR ´
E LUIZ LINS DE AQUINO
REDUC
¸ ˜
AO DE DADOS EM REDES DE SENSORES SEM FIO
BASEADA EM STREAM DE DADOS
Tese defendida e aprovada pela banca examinadora constitu´ıda pelos(as) Senho-res(as):
Prof. Dr. Ant ˆonio Ot ´avio Fernandes – Orientador Universidade Federal de Minas Gerais
Prof. Dr. Djamel Fawzi Hadj Sadok Universidade Federal de Pernambuco
Profa. Dra. Luciana Salete Buriol Universidade Federal do Rio Grande do Sul
Dr. Eduardo Freire Nakamura
Fundac¸ ˜ao Centro de An ´alise, Pesquisa e Inovac¸ ˜ao Tecnol ´ogica
Prof. Dr. Ant ˆonio Alfredo Ferreira Loureiro Universidade Federal de Minas Gerais
Prof. Dr. Claudionor Jos ´e Nunes Coelho Jr. Universidade Federal de Minas Gerais
A Deus,
A mim,
Aos meus pais,
Ao meu amor e
poss´ıveis.
O
mundo ao nosso redor possui uma variedade de fen ˆomenos que podem ser des-critos por algumas grandezas como temperatura, press ˜ao e umidade, que po-dem ser monitorados por dispositivos com poder de sensoriamento, processamento e comunicac¸ ˜ao. O conjunto desses dispositivos, trabalhando de forma cooperativa, ´e conhecido como rede de sensores sem fio. Cada um desses dispositivos, chama-dos n ´o sensor, tem a capacidade de monitorar um ou mais fen ˆomenos e report ´a-los, atrav ´es de uma comunicac¸ ˜ao sem fio, para um n ´o especial chamado de sorvedouro.Essas redes, devido `as caracter´ısticas da aplicac¸ ˜ao, possuem restric¸ ˜oes de energia, tempo de resposta e largura de banda. Especificamente no que diz respeito `a largura de banda, enviar grandes quantidades de dados pode ser problem ´atico pela quanti-dade de n ´os que acessar ˜ao o meio, causando atraso demasiado no tempo de resposta e, assim, invalidando os dados. Devido a essas restric¸ ˜oes, ´e necess ´ario adotar-se al-guma estrat ´egia para o tratamento dos dados a fim de reduzir ou selecionar apenas os dados mais relevantes para a aplicac¸ ˜ao.
Os fen ˆomenos monitorados geram dados com algumas caracter´ısticas (online, impre-ciso, com ru´ıdo e de tamanho moderado, i.e., grandes o suficiente para n ˜ao poderem ser processados facilmente), que nos leva a defini-los comostreamde dados. Para tal tipo de dados, encontramos algumas t ´ecnicas, como amostragem, histograma, janela deslizante e rascunho, que nos permitem efetuar o processamento e a reduc¸ ˜ao do conjunto de grandezas que representam os fen ˆomenos monitorados, de tal forma que os gastos na rede possam ser reduzidos.
Com isso, o problema geral tratado no nosso trabalho ´e efetuar a reduc¸ ˜ao de dados em redes de sensores sem fio baseada nas t ´ecnicas destreamde dados de tal forma que seja poss´ıvel economizar os recursos da rede sem comprometer a representati-vidade dos fen ˆomenos monitorados. Como soluc¸ ˜ao ´e proposta uma arquitetura para reduc¸ ˜ao nas aplicac¸ ˜oes gerais, que possui uma API de reduc¸ ˜ao baseada nas t ´ecnicas
destreamde dados. Al ´em disso, utilizamos essa arquitetura para modelar aplicac¸ ˜oes
que necessitam efetuar a reduc¸ ˜ao no momento do sensoriamento, atrav ´es de um n ´o agregador, e durante o roteamento.
Os resultados revelam que ´e poss´ıvel utilizar a nossa soluc¸ ˜ao para as diferentes aplicac¸ ˜oes modeladas, uma vez que foi poss´ıvel economizar recursos da rede sem perder a representatividade dos fen ˆomenos monitorados. Especificamente, quando a arquitetura foi integrada `a fase de roteamento em aplicac¸ ˜oes de tempo real vimos atrav ´es dos resultados que na maioria dos cen ´arios ´e poss´ıvel atender aos prazos exigidos pela aplicac¸ ˜ao e ainda assim manter a representatividade dos fen ˆomenos monitorados.
Palavras-chave: Redes de sensores sem fio, reduc¸ ˜ao de dados e algoritmos de
I
N the world there are a variety of phenomena, such as temperature, pressure, and humidity, which can be monitored by specific sensor devices with processing and communication power. These devices, working cooperatively, are known as wireless sensor networks. Each sensor node can monitor and report some phenomena to a special node called sink node, using a wireless communication.Despite their potential applications, wireless sensor networks have particular features imposed by resource restrictions, such as low computational power, reduced bandwidth and especially limited power source. Specifically, when we have a lot of data to be sent, the reduced bandwidth problem is increased since more nodes will try to access the wireless medium generating a packet delay. Thus, some data reduction is necessary where only the data relevant to the application is used.
In wireless sensor networks, the monitored phenomena have data stream characteris-tics (online, imprecise, with noise, and of moderate size). To process a data stream there are some techniques such as sampling, histogram, sliding windows, and sketch. This techniques allow the data processing and reducing where the network require-ments, like energy consumption and packet delay.
Thus, the general problem treated here is the stream-based data reduction in wireless sensor networks so the network resources are saved, but at the same time we are interested to have a minimum data quality that represents the monitored phenomena. Our solution, proposed for this problem is a generic architecture that can be applied to general applications. This architecture has an API that allows to apply data reduction techniques to stream-based applications in wireless sensor networks. We use this architecture to model some applications that need to reduce the data at the sensor nodes, cluster heads, or routing nodes.
The results show that it is possible to use our solution in general applications, leading to reduction in both energy consumption and packet delay without loosing the data repre-sentativeness. Furthermore, when the architecture is integrated to the routing phase on real-time applications the results show that it is possible to achieve the deadline and keep the information quality about the monitored phenomena.
1 Pseudo-c ´odigo do algoritmo de amostragem. . . 62
2 Pseudo-c ´odigo do algoritmo de rascunho. . . 65
3 Pseudo-c ´odigo do algoritmo de reduc¸ ˜ao para dados multivariados . . . . 66
1 Tipos de redes sem fio. . . 32
2 Estrutura do n ´o sensor com os quatro componentes principais e os tr ˆes
componentes opcionais. . . 32
3 Estrutura de uma rede de sensores considerando n ˜ao s ´o o n ´o sensor
mas tamb ´em os demais elementos b ´asicos. . . 33
4 T ´ecnica de janela deslizante para o tratamento dostreamde dados. . . 40
5 T ´ecnica de amostragem para o tratamento dostreamde dados. . . 40
6 Informac¸ ˜oes extra´ıdas do stream de dados pelos algoritmos de rascu-nho e histograma. . . 41
7 Func¸ ˜ao da distribuic¸ ˜ao acumulada para 256 valores. . . 44
8 Representac¸ ˜ao de um sistema de uma rede de sensores onde ´e
mos-trado o comportamento ideal (N →V∗→D∗), sensoriado (N →V∗→ V →D) e reduzido (N →V∗→V →V′→D′). . . . 49
9 Onde utilizar a reduc¸ ˜ao de dados. . . 53
10 Arquitetura OGK. . . 58
11 Passos utilizados para o processamento dostream no algoritmo
OGK-amostragem. . . 61
12 Passos utilizados para o processamento dostream no algoritmo
OGK-rascunho. . . 64
13 Passos utilizados para o processamento dostream no algoritmo
OGK-multivar. . . 66
14 Passos utilizados para o processamento dostream no algoritmo
OGK-or ´aculo. . . 68
15 Avaliac¸ ˜ao do comportamento da rede, considerando a m ´edia de energia
17 Avaliac¸ ˜ao do comportamento dos dados reduzidos, considerando o erro
m ´edio ao aplicar a regraR′dist sobre os dados univariados. . . 78
18 Avaliac¸ ˜ao do comportamento dos dados reduzidos, considerando o erro
m ´edio ao aplicar a regraR′val sobre os dados univariados. . . 79
19 Avaliac¸ ˜ao do comportamento da rede, considerando a m ´edia de energia
consumida na rede ao reduzir dados multivariados. . . 84
20 Avaliac¸ ˜ao do comportamento da rede, considerando a m ´edia do atraso
dostreamao reduzir dados multivariados. . . 84
21 Avaliac¸ ˜ao do comportamento dos dados reduzidos, considerando o erro
m ´edio ao avaliar a regraR′val sobre os dados multivariados com diferen-tes tamanhos do item stream. . . 86
22 Avaliac¸ ˜ao do comportamento dos dados reduzidos, considerando o erro
m ´edio ao aplicar a regraR′val sobre os dados multivariados com diferen-tes n ´umero de sensores. . . 87
23 Topologias de rede consideradas nas aplicac¸ ˜oes gerais. . . 90
24 Avaliac¸ ˜ao do comportamento da rede, considerando a m ´edia da energia
consumida na rede ao reduzir dados nos n ´os l´ıderes. . . 96
25 Avaliac¸ ˜ao do comportamento da rede, considerando a m ´edia do atraso
do pacote ao reduzir dados nos n ´os l´ıderes. . . 98
26 Cen ´ario I: Valores m´ınimos para os prazos exigidos pelas aplicac¸ ˜oes. . 107
27 Cen ´ario I: Atrasos identificados ao utilizar a metade dos prazos
supor-tados pela rede. . . 108
28 Cen ´ario I: Atrasos identificados ao utilizar atrasos gerados pelos n ´os
roteadores. . . 110
29 Cen ´ario II: Valores m´ınimos para os prazos exigidos pelas aplicac¸ ˜oes. . 112
30 Cen ´ario II: Atrasos identificados ao utilizar a metade dos prazos
32 Cen ´ario II: Atrasos identificados ao utilizar atrasos gerados pelos n ´os
roteadores. . . 115
33 Cen ´ario II: Erros identificados ao utilizar atrasos gerados pelos n ´os
1 Par ˆametros de simulac¸ ˜ao para reduc¸ ˜ao de dados univariados. . . 74
2 Par ˆametros de simulac¸ ˜ao para reduc¸ ˜ao de dados multivariados. . . 83
3 Erro m ´edio em porcentagem da reduc¸ ˜ao de dados multivariados
utili-zando a soluc¸ ˜ao OGK. . . 87
4 Raz ˜ao de bits transmitidos numa rede com 1024 n ´os. . . 93
5 Raz ˜ao de bits transmitidos numa rede com 160 n ´os. . . 93
6 Par ˆametros de simulac¸ ˜ao para reduc¸ ˜ao de dados nas redes hier ´arquicas. 95
7 Par ˆametros de simulac¸ ˜ao para reduc¸ ˜ao de dados nas aplicac¸ ˜oes de
tempo real. . . 106
8 Cen ´ario I: Valores m´ınimos para os prazos exigidos pelas aplicac¸ ˜oes. . 107
9 Cen ´ario I: Atrasos identificados ao utilizar a metade dos prazos
supor-tados pela rede. . . 107
10 Cen ´ario I: Raz ˜ao entre os atrasos identificados e os prazos exigidos
pela aplicac¸ ˜ao. . . 108
11 Cen ´ario I: Porcentagem dos dados recebidos pelo sorvedouro, ao
utili-zar a metade dos prazos suportados pela rede. . . 109
12 Cen ´ario I: Erro do teste KS identificado ao utilizar a metade dos prazos
suportados pela rede. . . 109
13 Cen ´ario I: Erro identificado nos valores dos dados ao utilizar a metade
dos prazos suportados pela rede. . . 109
14 Cen ´ario I: Atrasos identificados ao utilizar atrasos gerados pelos n ´os
roteadores. . . 110
15 Cen ´ario I: Porcentagem dos dados recebidos pelo sorvedouro ao utilizar
17 Cen ´ario I: Erro nos valores dos dados identificado ao utilizar atrasos
gerados pelos n ´os roteadores. . . 111
18 Cen ´ario II: Valores m´ınimos para os prazos exigidos pelas aplicac¸ ˜oes. . 112
19 Cen ´ario II: Atrasos identificados ao utilizar a metade dos prazos
supor-tados pela rede. . . 113
20 Cen ´ario II: Raz ˜ao entre os atrasos identificados e os prazos exigidos
pela aplicac¸ ˜ao. . . 114
21 Cen ´ario II: Atrasos identificados ao utilizar atrasos gerados pelos n ´os
1 INTRODUC¸ ˜AO 27
1.1 Motivac¸ ˜ao . . . 28
1.2 Descric¸ ˜ao do problema, objetivos e contribuic¸ ˜oes . . . 29
1.3 Organizac¸ ˜ao do trabalho . . . 30
2 FUNDAMENTOS TE ´ORICOS E TRABALHOS RELACIONADOS 31 2.1 Redes de sensores sem fio . . . 31
2.2 Algoritmos de streamde dados . . . 38
2.3 An ´alise de componentes principais e estudo da qualidade dos dados reduzidos . . . 41
2.3.1 An ´alise de componentes principais - PCA . . . 41
2.3.2 Qualidade dos dados reduzidos . . . 43
2.4 Trabalhos relacionados . . . 44
2.4.1 Streamde dados em redes de sensores . . . 44
2.4.2 Soluc¸ ˜oes para o processamento dos dados monitorados em re-des de sensores . . . 45
2.4.3 Redes de sensores sem fio hier ´arquicas . . . 46
2.4.4 Soluc¸ ˜oes de roteamento em redes de sensores . . . 47
2.4.5 Aplicac¸ ˜oes de tempo real em redes de sensores . . . 47
4.2.1 OGK-amostragem . . . 61
4.2.2 OGK-rascunho . . . 64
4.2.3 OGK-multivar . . . 65
4.2.4 OGK-or ´aculo . . . 67
4.3 Conclus ˜oes parciais . . . 68
5 REDUC¸ ˜AO DE DADOS NO SENSORIAMENTO 71
5.1 Reduc¸ ˜ao de dados univariados . . . 71
5.1.1 Avaliac¸ ˜ao do comportamento da rede . . . 73
5.1.2 Avaliac¸ ˜ao do comportamento dos dados reduzidos . . . 76
5.1.3 Comportamento da rede vs. comportamento dos dados reduzidos 79
5.2 Reduc¸ ˜ao de dados multivariados . . . 81
5.2.1 Avaliac¸ ˜ao do comportamento da rede . . . 82
5.2.2 Avaliac¸ ˜ao do comportamento dos dados reduzidos . . . 85
5.2.3 Comportamento da rede vs. comportamento dos dados reduzidos 87
5.2.4 Conclus ˜oes parciais . . . 88
6 REDUC¸ ˜AO DE DADOS EM REDES HIER ´ARQUICAS 89
6.1 Caracterizac¸ ˜ao da reduc¸ ˜ao em redes hier ´arquicas . . . 89
6.2 Avaliac¸ ˜ao do comportamento da rede . . . 93
6.3 Conclus ˜oes parciais . . . 98
7 REDUC¸ ˜AO DE DADOS EM APLICAC¸ ˜OES DE TEMPO REAL 101
7.1 Caracterizac¸ ˜ao da reduc¸ ˜ao em aplicac¸ ˜oes de tempo real . . . 101
7.2 Avaliac¸ ˜ao do comportamento da soluc¸ ˜ao OGK em aplicac¸ ˜oes de tempo
real . . . 104
7.3 Conclus ˜oes parciais . . . 115
PUBLICAC
¸ ˜
OES
A
seguir, ´e apresentada a lista de publicac¸ ˜oes obtidas durante o doutorado. As publicac¸ ˜oes relacionadas diretamente a esta tese est ˜ao marcadas com umaste-risco (*).
1. AQUINO, A. L. L.; CABRAL, R. da S.; FERNANDES, A. O. Um algoritmo de
reduc¸ ˜ao de dados para aplicac¸ ˜oes de tempo real em redes de sensores sem fio.
In: 26st Brazilian Symposium on Computer Networks (SBRC’08). Rio de Janeiro,
Brazil: SBC, 2008. (*)
2. AQUINO, A. L. L. et al. Sensor stream reduction for clustered wireless sensor
networks. In: 23rd ACM Symposium on Applied Computing 2008 (SAC’08). For-taleza, Brazil: ACM, 2008. p. 2052–2056. (*)
3. ANDRADE, A. V. et al. Analysis of selection and crossover methods used by
genetic algorithm-based heuristic to solve the lsp allocation problem in mpls
networks under capacity constraints. In: International Conference on
Enginee-ring Optimization (EngOpt’08). Rio de Janeiro, Brazil: Springer, 2008. p. 1–15.
4. AQUINO, A. L. L. et al. Data stream based algorithms for wireless sensor network
applications. In: 21st IEEE International Conference on Advanced Information
Networking and Applications (AINA’07). Niagara Falls, Canada: IEEE Computer
Society, 2007. p. 869–876. (*)
5. AQUINO, A. L. L. et al. A sampling data stream algorithm for wireless sensor
networks. In: IEEE International Conference on Communications (ICC’07). Glas-gow, Scotland: IEEE Computer Society, 2007. p. 3207–3212. (*)
6. AQUINO, A. L. L. et al. On the use data reduction algorithms for real-time
wire-less sensor networks. In: IEEE Symposium On Computers and Communications
(ISCC’07). Aveiro, Potugal: IEEE Computer Society, 2007. p. 583–588. (*)
7. FIGUEIREDO, C. M. S. et al. Um esquema de gerenciamento para redes de
Symposium on Computer Networks (SBRC’07). Bel ´em, PA, Brazil: SBC, 2007.
p. 1–12.
8. GUIDONI, D. L. et al. Sistemas do tipo eixo-raio aplicados `a redes de sensores
sem fio modeladas como redes small world. In: 39th Brazilian Symposium on
Operational Research (SBPO’07). Fortaleza, CE, Brasil: SOBRAPO, 2007. p.
1–12.
9. ARTIGUENAVE, F. et al. The tropical biominer project: Mining old sources for
new drugs. OMICS: A Journal of Integrative Biology, v. 9, n. 2, p. 30–138, June 2005.
10. MENEZES, G. C. et al. Uma abordagem paralela para os problemas de cobertura
e conectividade em redes de sensores sem fio. In: 37th Brazilian Symposium on
Operational Research (SBPO’05). Gramado, RS, Brasil: SOBRAPO, 2005. p.
1
INTRODUC
¸ ˜
AO
“D ˆeem-me uma alavanca e um ponto de apoio e eu levantarei o mundo.” (Arquimedes)
O
mundo ao nosso redor possui uma variedade de fen ˆomenos que podem ser descritos por algumas grandezas, como temperatura, press ˜ao e umidade, quepodem ser monitorados por dispositivos com poder de sensoriamento, processamento
e comunicac¸ ˜ao. O conjunto desses dispositivos, trabalhando de forma cooperativa, ´e
conhecido como rede de sensores sem fio (ESTRIN et al., 1999; AKYILDIZ et al.,
2002; TILAK; ABU-GHAZALEH; HEINZELMAN, 2002; ARAMPATZIS; LYGEROS;
MA-NESIS, 2005). Essas redes podem ter, al ´em de n ´os sensores, elementos atuadores
que interferem no meio monitorado, um ou mais sorvedouros que recebem os dados
e os processam e os gateways que s ˜ao respons ´aveis pela comunicac¸ ˜ao da rede de sensores com outras redes.
Cada n ´o sensor tem a capacidade de monitorar um ou mais fen ˆomenos. Os dados que
representam esses fen ˆomenos monitorados podem ser classificados como:
univaria-dos ou multivariaunivaria-dos. Daunivaria-dos univariaunivaria-dos representam um ´unico conjunto de valores
de um mesmo fen ˆomeno. Por exemplo, os dados monitorados por um n ´o que possui
apenas um sensor de temperatura. J ´a os dados multivariados representam mais de
um conjunto de valores de um mesmo fen ˆomeno ou mais de um fen ˆomeno. Por
exem-plo, os dados recebidos por um n ´o respons ´avel por processar os dados monitorados
por um conjunto de n ´os que possuem apenas um sensor de temperatura, ou os
da-dos monitorada-dos por um n ´o que possui simultaneamente os sensores de temperatura,
press ˜ao e umidade.
Os fen ˆomenos monitorados s ˜ao reportados, atrav ´es de uma comunicac¸ ˜ao sem fio
ad-hoc (ROYER; TOH, 1999), para o sorvedouro. Essa comunicac¸ ˜ao, devido `as
ca-racter´ısticas da aplicac¸ ˜ao, possui restric¸ ˜oes de energia, tempo de resposta e largura
de banda. Especificamente no que diz respeito `a largura de banda, enviar grandes
quantidades de dados pode ser problem ´atico pela quantidade de n ´os que ter ˜ao que
acessar o meio, podendo causar atraso demasiado no tempo de resposta e, assim,
seu tempo de vida. Devido a essas restric¸ ˜oes, ´e necess ´ario adotar alguma estrat ´egia
para o tratamento dos dados a fim de reduzir ou selecionar apenas os dados mais
relevantes que representam o fen ˆomeno monitorado. Dentre as diversas abordagens
para reduc¸ ˜ao de dados em redes de sensores sem fio pode-se destacar:
• A agregac¸ ˜ao de dados que efetua a reduc¸ ˜ao dos dados sensoriados seguindo alguma m ´etrica exigida pela aplicac¸ ˜ao. Tem como objetivo principal diminuir o
tr ´afego na rede independente da qualidade dos dados reduzidos
(KRISHANA-MACHARI; ESTRIN; WICKER, 2002; ZHU; PAPAVASSILIOU, 2004; SANTINI;
ROMER, 2006).
• A t ´ecnica de amostragem adaptativa que, ao longo do tempo de vida da rede, modifica a forma de sensoriamento com o objetivo de propagar apenas a
informa-c¸ ˜ao mais relevante para a aplicainforma-c¸ ˜ao. Caso os dados possuam caracter´ısticas
dis-tintas essa t ´ecnica apresentar ´a um n´ıvel de reduc¸ ˜ao baixo (MARBINI; SACKS,
2003; GANESAN et al., 2004; CHEN; KNOW; CHOI, 2006).
• A reduc¸ ˜ao de dados multivariados que utiliza m ´etodos para estimar o compor-tamento dos dados multivariados, como sua correlac¸ ˜ao, permitindo que apenas
as diferenc¸as, na correlac¸ ˜ao dos dados observadas ao longo do tempo, sejam
propagadas at ´e o sorvedouro (SEO; KANG; RYU, 2005; LI; ZHANG, 2006).
1.1
Motivac¸ ˜ao
No contexto de redes de sensores sem fio, existem fen ˆomenos monitorados que
ge-ram dados com algumas caracter´ısticas que nos leva a defini-los como stream de
dados (HENZINGER; RAQHAVAN; RAJAGOPALAN, 1998; BABCOCK et al., 2002;
ELNAHRAWY, 2003; GOLAB; OZSU, 2003; MUTHUKRISHNAN, 2005). As
carac-ter´ısticas gerais de umstreamde dados tradicional ´e que ele ´e obtido de formaonline, pois ´e processado no momento da sua recepc¸ ˜ao; ´e ilimitado, pois o fen ˆomeno
mo-nitorado est ´a constantemente gerando dados; e a ordem de chegada n ˜ao pode ser
controlada. No entanto, ao utilizarmosstreamde dados para representar os dados de sensoriamento, devemos considerar as diferenc¸as entrestream de sensoriamento e o
stream tradicional. O stream de sensoriamento representa um conjunto de amostras
de uma determinada populac¸ ˜ao, ´e impreciso, com ru´ıdo e de tamanho moderado. J ´a o
erros e com tamanho exageradamente grande, i.e., grandes o suficiente para n ˜ao
po-derem ser processados (ELNAHRAWY, 2003). Por convenc¸ ˜ao utilizaremos em nosso
texto apenas o termostreamde dados para representar osstream de sensoriamento.
Para possibilitar a utilizac¸ ˜ao das informac¸ ˜oes presentes nostreamde dados, por parte das aplicac¸ ˜oes, existe uma classe espec´ıfica de algoritmos, chamada de algoritmos
destream de dados. Esses algoritmos podem ser baseados em diferentes t ´ecnicas,
como por exemplo, amostragem, histograma, janela deslizante e rascunho
(MUTHU-KRISHNAN, 2005). A aplicac¸ ˜ao de cada uma dessas t ´ecnicas resulta na gerac¸ ˜ao de
dados aproximados aos originais, onde a fidelidade dos dados aproximados depende
da forma de como os dados s ˜ao processados.
1.2
Descric¸ ˜ao do problema, objetivos e contribuic¸ ˜oes
O problema geral tratado neste trabalho ´e efetuar a reduc¸ ˜ao de dados em redes de
sensores sem fio. A reduc¸ ˜ao ´e baseada nas t ´ecnicas destreamde dados de tal forma que seja poss´ıvel economizar os recursos da rede sem comprometer a
representativi-dade dos fen ˆomenos monitorados. Com isso, o objetivo principal ´e mostrar que essas
t ´ecnicas podem ser aplicadas a reduc¸ ˜oes em redes de sensores. Para isso, foi
pro-posta uma arquitetura para reduc¸ ˜ao de dados juntamente com uma API de reduc¸ ˜ao
que pode ser aplicada a diferentes cen ´arios nessas redes. Al ´em disso, aplicamos a
nossa arquitetura em diferentes momentos em que ´e poss´ıvel efetuar a reduc¸ ˜ao de
dados. Assim, as principais contribuic¸ ˜ao deste trabalho s ˜ao:
• Uma arquitetura para reduc¸ ˜ao de dados, chamada OGK –On a Good Knowledge
(Sobre um bom conhecimento), que utiliza o conhecimento a respeito dostream
de dados para escolher a soluc¸ ˜ao de reduc¸ ˜ao mais apropriada. Essa
arquite-tura pode ser utilizada em diversos cen ´arios e aplicac¸ ˜oes de redes de sensores
desde que os dados tenham caracter´ısticas destream.
• A disponibilizac¸ ˜ao da API-OGK de reduc¸ ˜ao utilizada para dar suporte a nossa arquitetura e que possibilita a reduc¸ ˜ao de dados nas redes de sensores, desde
simples reduc¸ ˜oes no momento do sensoriamento at ´e reduc¸ ˜oes habilitadas de
forma aut ˆonoma pela aplicac¸ ˜ao.
dispon´ıveis na API s ˜ao utilizados para efetuar tal reduc¸ ˜ao. Especificamente, para
a reduc¸ ˜ao de dados atrav ´es de um n ´o agregador, utilizamos uma formulac¸ ˜ao
matem ´atica para comprovar que a utilizac¸ ˜ao de n ´os agregadores atrav ´es de uma
rede hier ´arquica ´e mais eficiente do que propagar as informac¸ ˜oes monitoradas
atrav ´es de uma rede plana.
• A utilizac¸ ˜ao da arquitetura OGK, embutida no roteamento, para reduzir os dados quando os prazos das aplicac¸ ˜oes de tempo real n ˜ao puderem ser atendidos.
Al ´em disso, elaboramos uma formulac¸ ˜ao matem ´atica para estimar o quanto o
dado deve ser reduzido no momento do roteamento.
Os resultados, apresentados ao longo dos pr ´oximos cap´ıtulos, revelam que ´e poss´ıvel
utilizar a nossa soluc¸ ˜ao para as diferentes aplicac¸ ˜oes modeladas, por exemplo,
aplica-c¸ ˜oes gerais em redes planas e hier ´arquicas e cen ´arios com exig ˆencias de tempo
real. Em todas as aplicac¸ ˜oes estudadas foi poss´ıvel economizar recursos da rede
(cerca de 90% de economia nos melhores casos) sem perder a representatividade dos
fen ˆomenos monitorados (um erro m ´aximo de 20% nos piores casos). Especificamente,
quando a arquitetura foi integrada `a fase de roteamento em aplicac¸ ˜oes de tempo real
vimos atrav ´es dos resultados que na maioria dos cen ´arios foi poss´ıvel atender aos
prazos exigidos pela aplicac¸ ˜ao, uma vez que consideramos aplicac¸ ˜oes de tempo real
soft, e ainda assim manter a representatividade dos fen ˆomenos monitorados.
1.3
Organizac¸ ˜ao do trabalho
Este trabalho segue com o cap´ıtulo 2 onde discutimos os principais conceitos
utiliza-dos e apresentamos alguns trabalhos relacionautiliza-dos. No cap´ıtulo 3, apresentamos o
problema de reduc¸ ˜ao de dados baseada em stream de dados para redes de senso-res sem fio. No cap´ıtulo 4, mostramos a arquitetura para reduc¸ ˜ao de dados baseada
em stream de dados e apresentaremos os algoritmos propostos para dar suporte a
arquitetura. Nos cap´ıtulos 5, 6 e 7, falamos, respectivamente, das considerac¸ ˜oes e
cen ´arios utilizados para o caso de reduc¸ ˜ao no momento do sensoriamento, atrav ´es
de um n ´o agregador e no momento do roteamento para dar suporte a aplicac¸ ˜oes de
2
FUNDAMENTOS TE ´
ORICOS E
TRABALHOS RELACIONADOS
“A ci ˆencia, como um todo, n ˜ao ´e nada mais do que um refina-mento do pensar di ´ario.” (Albert Einstein)
E
STE cap´ıtulo tem por objetivo apresentar os conceitos b ´asicos necess ´arios para um bom entendimento deste trabalho. Tais conceitos est ˜ao relacionados a redesde sensores sem fio, astream de dados, ao m ´etodo estat´ıstico utilizado na reduc¸ ˜ao
de dados multivariados e aos mecanismos para a an ´alise da qualidade dos dados
quando reduzidos. Apresentamos apenas os conceitos mais gerais deixando aspectos
espec´ıficos para serem explicados e referenciados quando necess ´ario. Al ´em disso, ao
fim do cap´ıtulo apontamos alguns dos trabalhos relacionados.
2.1
Redes de sensores sem fio
Inicialmente, para melhor contextualizar as redes de sensores no ambiente sem fio,
consideramos as redes estruturadas e ad-hoc. Em relac¸ ˜ao `as redes estruturadas temos que elas possuem n ´os subordinados a uma estac¸ ˜ao base respons ´avel pela
comunicac¸ ˜ao entre os elementos da rede (figura 1(a)). J ´a as redesad-hoc (ROYER;
TOH, 1999) n ˜ao utilizam uma estac¸ ˜ao base para prover a comunicac¸ ˜ao entre os
ele-mentos da rede, pois a comunicac¸ ˜ao ´e feita utilizando os n ´os que est ˜ao entre a origem
e o destino (figura 1(b)). Com isso, para as redes de sensores sem fio temos que elas
possuem a forma de comunicac¸ ˜ao como as redesad-hoc com o objetivo de propagar
os dados sensoriados para um elemento externo a rede (figura 1(c)).
Com isso, podemos apresentar as redes de sensores como sendo redes formadas
por dispositivos compactos e aut ˆonomos, chamados de n ´os sensores, que coletam
dados do ambiente e os processam localmente, ou de forma cooperativa entre n ´os
vi-zinhos. No final, a informac¸ ˜ao processada pode ser enviada para o usu ´ario. Devido ao
seu tamanho os n ´os sensores possuem uma arquitetura simples e com limitac¸ ˜oes de
(a) Rede estruturada. (b) Rede n ˜ao estruturada. (c) Rede de sensores.
FIGURA 1 – Tipos de redes sem fio.
uma unidade perceptiva que pode possuir alguns sensores e um conversor de sinais
anal ´ogicos para digitais (ADC); uma unidade de processamento com mem ´oria e
pro-cessador; um transceptor; e uma fonte de energia que geralmente n ˜ao ´e renov ´avel.
Al ´em disso, de forma opcional podem existir elementos que complementam a
estru-tura dos sensores, como sistema de localizac¸ ˜ao, mecanismo de mobilidade e gerador
de energia. A estrutura b ´asica de um n ´o sensor com os principais componentes pode
ser visto na figura 2.
Fonte de energia
Transceptor Processador
Memória Sensor
ADC
Mecanismo para mobilidade Sistema de
localização
Gerador
FIGURA 2 – Estrutura do n ´o sensor com os quatro componentes principais e os tr ˆes componentes opcionais.
No entanto, uma rede de sensores pode ter outros tr ˆes elementos b ´asicos: os n ´os
atuadores que possuem a func¸ ˜ao de atuar ou interferir no meio onde est ˜ao inseridos,
a fim de corrigir falhas e/ou controlar o objeto monitorado; os sorvedouros ou n ´os
de monitorac¸ ˜ao que recebem os dados e os processam de forma a extrair alguma
informac¸ ˜ao ´util para o usu ´ario; e os n ´os gateways que s ˜ao respons ´aveis por prover a comunicac¸ ˜ao da rede de sensores com outras redes de computadores. Esses tr ˆes
elementos b ´asicos, bem como a estrutura t´ıpica de uma rede de sensores, podem
ser vistos na figura 3. ´E importante destacar que esses elementos n ˜ao precisam ser
fisicamente distintos. Por exemplo, o sorvedouro e o gateway podem ser o mesmo dispositivo.
Gateway
Observador
Nó sensor
Nó sorvedouro
Dados sensoriados
FIGURA 3 – Estrutura de uma rede de sensores considerando n ˜ao s ´o o n ´o sensor mas tamb ´em os demais elementos b ´asicos.
forma com que os n ´os s ˜ao dispostos numa ´area de sensoriamento e a forma com
que os fen ˆomenos s ˜ao monitorados pode-se fazer uma distinc¸ ˜ao entre os diferentes
tipos de redes de sensores existentes. Com isso, as redes de sensores podem ser
classificadas como: hier ´arquica se ela possui agrupamentos de n ´os, onde existe um
l´ıder que representa cada agrupamento, caso contr ´ario a rede ´e considerada plana;
homog ˆenea se os n ´os possuem a mesma configurac¸ ˜ao dehardware, caso contr ´ario a rede ´e considerada heterog ˆenea; sim ´etrica se todos os n ´os possuem o mesmo raio de
comunicac¸ ˜ao, caso contr ´ario a rede ´e considerada assim ´etrica; cont´ınua se os dados
coletados s ˜ao enviados continuamente ou programada se os dados s ˜ao enviados
obe-decendo a programac¸ ˜ao previamente estabelecida; dirigida a eventos se a rede envia
dados apenas quando ocorre algum evento ou sob demanda quando a rede permite a
consulta parcial ou total dos dados aos n ´os (TILAK; ABU-GHAZALEH; HEINZELMAN,
2002).
Como as redes de sensores possuem capacidade de sensoriamento e
processa-mento distribu´ıdo elas podem ser utilizadas em uma grande variedade de aplicac¸ ˜oes,
como por exemplo aplicac¸ ˜oes m ´edicas, industriais, militares, meio ambiente e
agro-pecu ´aria (ESTRIN et al., 1999; POTTIE; KAISER, 2000; ESTRIN et al., 2001; SHEN;
WANG; SUN, 2004; ARAMPATZIS; LYGEROS; MANESIS, 2005; DIAMOND; CERUTI,
2007; FLAMMINI et al., 2007). Essas aplicac¸ ˜oes podem ter um car ´ater de
monito-ramento onde apenas dados do ambiente s ˜ao coletados ou um car ´ater de atuac¸ ˜ao
onde ocorre intervenc¸ ˜ao no meio monitorado (LINS et al., 2003a, 2003b). De forma
geral, podemos considerar tr ˆes n´ıveis de granularidade nas aplicac¸ ˜oes em redes de
sensores:
• As aplicac¸ ˜oes de sensoriamento que dizem respeito `a obtenc¸ ˜ao, ao processa-mento e ao trataprocessa-mento dos dados monitorados antes deles sa´ırem do n ´o sensor.
Nesse caso, para obter um ganho global na rede a aplicac¸ ˜ao pode processar
• Os mecanismos de infraestrutura que s ˜ao respons ´aveis por garantir o bom fun-cionamento da rede para que os dados monitorados possam ser entregues
sa-tisfatoriamente ao sorvedouro. Nesse caso, se necess ´ario, a rede deve se
auto-configurar para garantir a qualidade da informac¸ ˜ao passada para o usu ´ario.
• As aplicac¸ ˜oes para o usu ´ario onde a rede tem por objetivo prover informac¸ ˜oes de sensoriamento para algum usu ´ario externo `a rede levando em conta suas
necessidades. Nesse caso, a aplicac¸ ˜ao considera todos os recursos da rede
para servir ao usu ´ario, inclusive a aplicac¸ ˜ao de sensoriamento e a infraestrutura.
Com o objetivo de melhor contextualizar os diferentes n´ıveis de granularidade de uma
aplicac¸ ˜ao em redes de sensores, a seguir aprofundaremos um pouco mais a discuss ˜ao
em relac¸ ˜ao a esses n´ıveis.
As redes de sensores sem fio possuem restric¸ ˜oes de recursos que aliadas `as
neces-sidades das aplicac¸ ˜oes tornam o projeto dessas redes complexo. Nesse contexto,
existem diversas linhas de pesquisa que tratam problemas relacionados com o
pro-jeto dessas redes, como a auto-organizac¸ ˜ao (SCHURGERS et al., 2002; CHEN et al.,
2002; FIGUEIREDO et al., 2005) e o gerenciamento de recursos (ZHAO; GOVINDAN;
ESTRIN, 2002; RUIZ; NOGUEIRA; LOUREIRO, 2003; ZHAO; GOVINDAN; ESTRIN,
2003; GOUSSEVSKAIA et al., 2005).
Por tratarem de um tipo espec´ıfico de redes ad-hoc e serem utilizadas em ambi-entes hostis com condic¸ ˜oes imprevis´ıveis, as redes de sensores devem ser
auto-configur ´aveis, adapt ´aveis e possuir um gerenciamento escal ´avel. Devido `as
carac-ter´ısticas da aplicac¸ ˜ao de sensoriamento, as redes de sensores possuem um
mo-delo centrado nos dados (KRISHANAMACHARI; ESTRIN; WICKER, 2002;
INTANA-GONWIWAT et al., 2003), pois o objetivo dessas redes ´e levar a informac¸ ˜ao sensoriada
para um ponto fora da rede. Essa caracter´ıstica permite a integrac¸ ˜ao das operac¸ ˜oes
da camada de sensoriamento com a camada de rede, oferecendo soluc¸ ˜oes mais
efi-cientes.
Fatores relacionados com as caracter´ısticas da rede, tipos e configurac¸ ˜oes dos
sen-sores influenciam diretamente no desenvolvimento das aplicac¸ ˜oes de sensoriamento.
Considerando essas caracter´ısticas pode-se classificar as aplicac¸ ˜oes de
sensoria-mento em:
´e-processa-mento nos dados deixando as operac¸ ˜oes mais elaboradas para serem
execu-tadas em outros elementos da rede com maior poder de processamento. Esse
pr ´e-processamento ´e necess ´ario, pois o grande volume de dados sensoriados,
se enviados sem nenhum tratamento, pode consumir a energia dos n ´os e
com-prometer os objetivos da rede.
• Consulta, onde os dados s ˜ao enviados apenas quando requisitados por algum elemento externo `a rede. Nesse caso, o n ´o sensor deve executar algum
pro-cessamento sobre os dados de tal forma que apenas o resultado desse
proces-samento seja guardado para ser enviado quando solicitado. Isso ocorre, pois o
armazenamento de todos os dados sensoriados pode ser muito caro para o n ´o,
se as consultas n ˜ao forem freq ¨uentes.
Para o tratamento dos dados, nas aplicac¸ ˜oes de monitoramento podemos utilizar
t ´ecnicas como agregac¸ ˜ao de dados (KRISHANAMACHARI; ESTRIN; WICKER, 2002;
ZHAO; GOVINDAN; ESTRIN, 2003; DASGUPTA; KALPAKIS; NAMJOSHI, 2003), fus ˜ao
de dados (DURRANT-WHYTE, 1988; BROOKS; IYENGAR, 1997; LUO; YIH; SU,
2002; NAKAMURA; LOUREIRO; FRERY, 2007) ou stream de dados, como apre-sentado neste trabalho. Para as aplicac¸ ˜oes de consultas, a rede ´e vista como um
grande banco de dados onde operac¸ ˜oes sobre os dados s ˜ao calculadas internamente
na rede (ABADI et al., 2004; MADDEN et al., 2005). Essa ´e a abordagem tradicional
para utilizac¸ ˜ao destreamde dados em redes de sensores.
De acordo com Loureiro et al. (2003), as redes de sensores sem fio possuem cinco
fun-cionalidades b ´asicas: o estabelecimento que consiste na configurac¸ ˜ao inicial da rede;
a manutenc¸ ˜ao que consiste na adaptac¸ ˜ao da rede `as mudanc¸as de configurac¸ ˜oes
que surgem ao longo do tempo; o sensoriamento que trata da coleta de dados
so-bre o ambiente; o processamento dos dados a serem enviados para o sorvedouro; e
a comunicac¸ ˜ao que ´e respons ´avel pelo envio desses dados. Discutiremos de forma
mais detalhada apenas as funcionalidades de estabelecimento e manutenc¸ ˜ao, mais
especificamente a tarefa de roteamento por estar diretamente relacionada ao
meca-nismo de infraestrutura explorado neste trabalho.
O estabelecimento de uma rede de sensores basicamente envolve a deposic¸ ˜ao dos
n ´os na ´area a ser monitorada e na formac¸ ˜ao da rede. Essa fase ocorre antes do
senso-riamento, e assim, os n ´os podem realizar tarefas de controle de densidade, formac¸ ˜ao
de agrupamentos e montagem da estrutura de roteamento. Ap ´os o estabelecimento
tempo de vida da rede. Segundo Loureiro et al. (2003): “O objetivo da manutenc¸ ˜ao ´e
prolongar o tempo de vida da rede, reduzir a imprevisibilidade e atender aos requisitos
da aplicac¸ ˜ao, pois ao longo do tempo alguns n ´os atingem n´ıveis de energia que
po-dem restringir de forma parcial ou total sua capacidade”. Todas as tarefas realizadas
para o estabelecimento da rede devem ser repetidas durante a manutenc¸ ˜ao, seja
pe-riodicamente ou na ocorr ˆencia de um determinado evento. Essa decis ˜ao depender ´a
do objetivo da aplicac¸ ˜ao.
Uma das tarefas que ´e considerada tanto na fase de estabelecimento como na fase de
manutenc¸ ˜ao ´e a montagem da estrutura de roteamento. Uma abordagem bastante
uti-lizada em redes de sensores para essa tarefa ´e o roteamento baseado em ´arvore cuja
montagem consiste em configurar os n ´os da rede para que eles saibam para qual
vizi-nho enviar suas informac¸ ˜oes sensoriadas (FIGUEIREDO et al., 2005; NAKAMURA et
al., 2005). Basicamente um algoritmo de roteamento baseado em ´arvore ´e composto
pelas seguintes fases:
• Construc¸ ˜ao da ´arvore que ´e baseada em alguns requisitos de rede ou da aplica-c¸ ˜ao. ´E constru´ıda, via inundac¸ ˜ao†do sorvedouro para os n ´os. ´E nesse momento
que as informac¸ ˜oes da aplicac¸ ˜ao s ˜ao passadas para os n ´os sensores.
• Encaminhamento onde os dados sensoriados pelos n ´os fontes s ˜ao encaminha-dos para o sorvedouro. Nessa fase os n ´os encaminham os daencaminha-dos sensoriaencaminha-dos,
atrav ´es da ´arvore, at ´e o sorvedouro.
• Reconstruc¸ ˜ao da ´arvore, em alguns casos, ´e necess ´ario reconstruir a ´arvore pois a topologia da rede pode mudar por falha, desligamento ou esgotamento da
energia dos n ´os. A estrat ´egia de reconstruc¸ ˜ao pode ser feita de forma pr ´o-ativa
ou reativa, dependendo do gerenciamento da rede.
Como as redes de sensores s ˜ao centradas nos dados, possivelmente, a informac¸ ˜ao
presente nos dados ´e importante nas decis ˜oes da camada de roteamento. Caso a
rede tenha restric¸ ˜oes de energia e atraso, a identificac¸ ˜ao de dados redundantes na
camada de roteamento pode habilitar reduc¸ ˜oes ou descarte desses dados, ou ainda,
caminhos de roteamento alternativos dentro da rede podem ser utilizados para
entre-gar dados com maior prioridade.
As aplicac¸ ˜oes para o usu ´ario em redes de sensores, normalmente, apenas utilizam
a infraestrutura da rede para obter informac¸ ˜oes do fen ˆomeno monitorado. Contudo
existem aplicac¸ ˜oes que o simples envio das informac¸ ˜oes sensoriadas n ˜ao ´e suficiente
e aspectos relacionados com tempo de resposta s ˜ao fundamentais (CHAN; KI; NGAN,
2005; LU et al., 2002). Alguns exemplos dessas aplicac¸ ˜oes com exig ˆencia de prazos
s ˜ao: aplicac¸ ˜oes militares que necessitam efetuar a coleta dos dados e atuac¸ ˜ao no
ambiente monitorado em tempo real; aplicac¸ ˜oes de seguranc¸a que utilizam sensores
ac ´usticos e de v´ıdeo para detectar movimentos e soar algum alarme num intervalo
de tempo bem pequeno; e aplicac¸ ˜oes para detecc¸ ˜ao em tempo real de bio-ataques
que utilizam sensores para identificar a presenc¸a de elementos biol ´ogicos no corpo
humano ou no ambiente.
Em sistemas embutidos de tempo real tradicional, o prazo da tarefa ´e um ponto cr´ıtico
a ser considerado (tempo real hard). Algoritmos de escalonamento s ˜ao desenvol-vidos para reduzir ou evitar a perda dos prazos, seja estatisticamente ou
dinamica-mente. Em um ambiente din ˆamico, o mecanismo de controle de admiss ˜ao aceitar ´a
ou rejeitar ´a a tarefa baseado na restric¸ ˜ao de tempo e de outros recursos do sistema.
O projeto dessas aplicac¸ ˜oes, ´e mais complexo, pois ´e concebido para ambientes
es-pec´ıficos (CHAN; KI; NGAN, 2005). Em redes de sensores ´e comum haver aplicac¸ ˜oes
de tempo realsoft, pois o ambiente n ˜ao ´e controlado. A aplicac¸ ˜ao normalmente usa m ´etodos probabil´ısticos para tratar o dado e n ˜ao tem confirmac¸ ˜ao na comunicac¸ ˜ao.
Esses aspectos tornam o uso de tempo real hard em redes de sensores bem mais dif´ıcil. Por convenc¸ ˜ao, utilizaremos o termo “aplicac¸ ˜oes de tempo real” ao inv ´es de
tempo realsoft em redes de sensores.
Considerando as aplicac¸ ˜oes de tempo real em redes de sensores, utilizar uma soluc¸ ˜ao
que garanta a priori o atendimento dos prazos ´e bem mais dif´ıcil, como dito acima,
devido as caracter´ısticas dessas redes. No entanto, podemos utilizar soluc¸ ˜oes
apro-ximadas que identificam dentro da rede o momento em que os dados n ˜ao podem ser
entregues a tempo, exigindo que algum processamento nos dados seja feito, de tal
forma que alguma informac¸ ˜ao ´util possa chegar para o usu ´ario dentro dos prazos
exi-gidos. No projeto de um sistema de tempo real para rede de sensores, n ´os devemos
conhecer o comportamento do atraso do envio dos dados para cada soluc¸ ˜ao de uma
dada aplicac¸ ˜ao e, com isso, aplicar a melhor soluc¸ ˜ao de processamento dos dados
2.2
Algoritmos de
stream
de dados
Recentemente temos observado um forte crescimento da classe de aplicac¸ ˜oes
data-intensive, onde a melhor forma de modelar o dado n ˜ao ´e como um dado persistente
mas como um stream de dados. Alguns exemplos de dados dessas aplicac¸ ˜oes s ˜ao:
medidas de rede, registros de chamadas telef ˆonicas, p ´aginas web visitadas e dados sensoriados. Comparando stream de dados com dados convencionais, temos que o dado pertencente ao stream chega de forma online, o sistema n ˜ao tem controle na ordem de chegada dos elementos a serem processados, o stream ´e ilimitado e, a
partir do momento que ele ´e processado, ele ´e descartado e apenas a informac¸ ˜ao
processada ´e armazenada.
Streamde dados foi definido pela primeira vez por Henzinger, Raqhavan e
Rajagopa-lan (1998) como “uma seq ¨uencia de pontos ordenadosV1, . . . ,Vn que devem ser
aces-sados em ordem e que podem ser lidos uma vez ou um pequeno n ´umero de vezes.
Cada leitura ´e chamada de pass”. Nesse contexto, existem diferentes modelos que descrevem ostreamde dados. Considere ostream de entradaV1,V2, . . .chegando de forma seq ¨uencial, item por item. Essestreamdescreve o sinalV∗, que ´e uma func¸ ˜ao
unidimensionalV∗:[1. . .N]→R. Os modelos s ˜ao diferenciados na forma como osVi’s
descrevemV∗(MUTHUKRISHNAN, 2005). Com isso, temos os seguintes modelos:
• Time series onde, cada Vi=V∗[i], ou seja, os elementos s ˜ao seq ¨uenciais n ˜ao
possuindo relac¸ ˜ao ente si.
• Cash register onde, cadaVicorresponde a um incremento paraV∗[j]. Considere
Vi = (j,Ii), Ii ≥0 e Vi∗[j] =Vi−∗1[j] +Ii, onde o Vi∗ ´e o estado do sinal ap ´os a
medic¸ ˜ao doi- ´esimo termo dostream. Em outras palavras, cada eventoIi possui
uma relac¸ ˜ao com um elemento jque reflete no sinal V∗.
• Turnstile onde, cada Vi corresponde a uma atualizac¸ ˜ao para V∗[j]. Considere
Vi= (j,Yi)e Vi∗[j] =Vi−∗1[j] +Yi, ondeVi∗ ´e o estado do sinal ap ´os a medic¸ ˜ao do
i- ´esimo termo dostream eYi pode ser positivo ou negativo. Em outras palavras,
cada eventoYi possui uma relac¸ ˜ao com um elemento j que reflete no sinal V∗,
sendo essa relac¸ ˜ao de inserc¸ ˜ao ou remoc¸ ˜ao.
Atrav ´es desses modelos, precisamos processar o sinalV∗em diferentes momentos do
stream. Normalmente para obtermos informac¸ ˜oes sobre ostream, ´e feito um
dos itens, minerac¸ ˜ao dostream,joinse consultas em janelas. Para permitir a avaliac¸ ˜ao
de soluc¸ ˜oes eficientes sobre esses processamentos ´e necess ´ario considerar as
se-guintes medidas de desempenho: tempo de processamento por item Vi do stream,
espac¸o para o armazenamento do itemVi e tempo computacional para computar as
func¸ ˜oes sobreV∗. Um fator importante, apenas considerado no contexto de redes de
sensores, ´e a comunicac¸ ˜ao, ou seja, a quantidade de itens de V∗ que precisam
tra-fegar na rede. Essas m ´etricas devem ser levadas em conta, devido `as caracter´ısticas
dostream de dados que exige uma grande capacidade computacional.
De forma geral, alguns princ´ıpios podem ser aplicados ao stream de dados para ob-termos sistemas mais eficientes. Por exemplo, processamento e armazenamento
pa-ralelo, amostragem dos dados para controlar a taxa de transmiss ˜ao ou a utilizac¸ ˜ao de
m ´etodos de filtragem e agregac¸ ˜ao assim que o dado ´e recebido, deixando c ´alculos
mais complexos no momento que o dado for utilizado, envolvendo menor volume de
dados. Nessa direc¸ ˜ao existem alguns algoritmos de aproximac¸ ˜ao com o objetivo de
reduzir o volume dos dados ao selecionar apenas amostras significativas ou ao
rea-lizarem an ´alises dos dados (DATAR; MUTHUKRISHNAN, 2002; MUTHUKRISHNAN,
2005). Dentre os diversos tipos de algoritmos destreamde dados destacamos: janela deslizante, amostragem, rascunho e histograma (BABCOCK et al., 2002), sendo
es-ses os algoritmos que nos baseamos para algumas das soluc¸ ˜oes apresentadas neste
trabalho.
Os algoritmos de janela deslizante consistem em manter uma janela de dados mais
atual, respeitando um tamanho espec´ıfico de janela. Esses algoritmos de aproximac¸ ˜ao
t ˆem v ´arias vantagens como, por exemplo, s ˜ao determin´ısticos e possuem um f ´acil
entendimento, pois seus m ´etodos de aproximac¸ ˜ao s ˜ao claros e o usu ´ario do sistema
pode confiar nos dados aproximados produzidos. O mais importante ´e que esses
algoritmos enfatizam os dados mais recentes, onde na maioria das aplicac¸ ˜oes reais,
s ˜ao mais importantes que os dados antigos. Por exemplo, na figura 4 um item do dado
chega a cada intervalot e expira em um tempot+N, ondeN ´e o tamanho da janela e, conseq ¨uentemente, a quantidade de dados a ser enviada ou processada (BABCOCK
et al., 2002).
Os algoritmos de amostragem e rascunho consistem em abandonar a id ´eia de fazer
um processamento em cada elemento do dado que chega, aplicando algum tipo de
amostragem e resumo dos dados. Geralmente as amostras utilizadas s ˜ao suficientes
para representar o dado original, como apresentado na figura 5. Os algoritmos de
. . . . 2 7 1 6 5 8 ? ? ?
t + N t
Dado Recente Dado
Passado
Dado Futuro Stream:
FIGURA 4 – T ´ecnica de janela deslizante para o tratamento dostream de dados.
freq ¨u ˆencia dos dados, como ilustrado na parte inferior da figura 6. Essas informac¸ ˜oes
s ˜ao utilizadas para inferir propriedades a respeito do total dos dados, por ´em a escolha
da melhor informac¸ ˜ao para compor o resumo depende da aplicac¸ ˜ao (BABCOCK et al.,
2002).
9 3 5 2 7 1 6 5 8 4 Stream:
10 Elementos
9 5 1 8 Amostra:
9 5 1 8
FIGURA 5 – T ´ecnica de amostragem para o tratamento dostreamde dados.
Algoritmos baseados em histograma s ˜ao utilizados para capturar uma distribuic¸ ˜ao do
conjunto dos dados, ou seja, os dados s ˜ao analisados e acumulados em relac¸ ˜ao ao
seu tipo, de tal forma que apenas um dado dessa distribuic¸ ˜ao seja armazenado. Um
histograma ´e constru´ıdo atrav ´es da utilizac¸ ˜ao de uma regra de particionamento na
distribuic¸ ˜ao dos dados formando conjuntos distintos que s ˜ao as colunas. Nas colunas
est ˜ao armazenadas as aproximac¸ ˜oes das freq ¨u ˆencias de ocorr ˆencia dos valores mais
comuns. Sobre cada valor do atributo na coluna ´e assumido que algum valor entre o
menor e o maior elemento pode ocorrer. Na pr ´atica as colunas guardam a informac¸ ˜ao
do total de ocorr ˆencias, o menor e maior valor ocorrido para cada dimens ˜ao e o
n ´umero de valores distintos (IOANNIDIS; POOSALA, 1999). As informac¸ ˜oes que
comp ˜oem um histograma s ˜ao ilustradas na figura 6. Uma caracter´ıstica importante
desses algoritmos ´e que os histogramas s ˜ao constru´ıdos emO(n), sendono n ´umero de elementos do stream, lendo os dados de forma online sem a necessidade de ar-mazen ´a-los.
Como dito anteriormente, existe uma forte relac¸ ˜ao entre stream de dados e redes de sensores. Por ´em os algoritmos de stream tradicionais n ˜ao podem ser aplicados
di-retamente em redes de sensores devido `as diferenc¸as encontradas entre o stream
Stream:
min = 1, max = 100, intevalo = 10 Dados:
1 1000
. . . 5%8% 6%
10%
6% 10%
FIGURA 6 – Informac¸ ˜oes extra´ıdas dostreamde dados pelos algoritmos de rascunho e histograma.
ao se projetar algoritmos de stream de dados para as redes de sensores (ELNAH-RAWY, 2003).
2.3
An ´alise de componentes principais e estudo da
qua-lidade dos dados reduzidos
Neste trabalho utilizamos, para diferentes fins, duas importantes ferramentas
estat´ısti-cas: an ´alise de componentes principais para auxiliar na reduc¸ ˜ao de dados
multivari-ados; e o teste Kolmogorov-Smirnov para avaliar a qualidade dos dados reduzidos.
Ambos os mecanismos ser ˜ao detalhados a seguir.
2.3.1
An ´alise de componentes principais - PCA
A transformac¸ ˜ao de componentes principais†(KRZANOWSKI, 1995; JACKSON, 2003),
tamb ´em conhecida como transformac¸ ˜ao de Karhunen-Lo `eve, ´e uma das
ferramen-tas mais poderosas para o tratamento de dados multivariados. ´E uma transformac¸ ˜ao
entre espac¸os γ-dimensionais, derivada da matriz de covari ˆancia dos dados de
en-trada gerando um novo conjunto de dados, de modo que cada valor resultante ´e uma
combinac¸ ˜ao linear dos valores originais. O n ´umero de componentes principais ´e igual
ao n ´umero de dimens ˜oes dos dados originais e esses podem ser ordenados de acordo
com a sua vari ˆancia. Com isso, o primeiro e ´ultimo componentes principais devem ter
a maior e a menor vari ˆancia, respectivamente.
A propriedade mais importante do novo conjunto de dados gerado pelo PCA ´e que os
dados n ˜ao apresentam correlac¸ ˜ao (JACKSON, 2003), garantindo dessa forma que n ˜ao
haja redund ˆancia entre os dados e que seja obtido um novo conjunto de dados com
†An ´alise de componentes principais ´e abreviada na literatura como PCA do ingl ˆesPrincipal
propriedades para an ´alise multivariada. A transformac¸ ˜ao de componentes principais
pode ser descrita nas seguintes etapas:
1. Calcular Σ, a matriz de covari ˆancia dos dados (vamos supor que ela ´e definida positiva pois estamos tratando de vari ˆancias).
2. DecomporΣnos autovetoresU e autovaloresλ. Essa matriz ser ´a diagonaliz ´avel uma vez que a matriz de covari ˆancia ´e definida positiva (KRZANOWSKI, 1995).
3. Calcular o novo conjunto de dados, multiplicando o valor de cada vari ´avel pela
matriz dos autovetores.
Os autovalores representam o comprimento dos eixos dos componentes principais
do conjunto de dados e s ˜ao medidos na unidade da vari ˆancia. Associado a cada
autovalor, existe um vetor de m ´odulo unit ´ario chamado autovetor. Os elementos de
cada autovetor s ˜ao fatores de ponderac¸ ˜ao que definem a contribuic¸ ˜ao da vari ´avel da
matriz de dados original para um componente principal, numa combinac¸ ˜ao linear. Os
autovetores representam as direc¸ ˜oes dos eixos das componentes principais.
O m ´etodo de componentes principais pode ser formulado da seguinte forma: dada
uma matriz de dados originaisV, com s vari ´aveis correlacionadas, aplicar PCA con-siste em calcular a matrizC, que possuisvari ´aveis n ˜ao correlacionadas, de forma que cada componente principal ser ´a calculado por
Ci=u′i[V−V], (2.1)
onde para cada1≤i≤s,ui= (ui,1, . . . ,ui,s) ´e o autovetorida matriz de covari ˆancia dos
dadosV.
Outra propriedade importante do PCA ´e que a equac¸ ˜ao (2.1) pode ser invertida
res-taurando as vari ´aveis originais em func¸ ˜ao dos componentes principais. Para isso
utili-zamos
V =V+U C, (2.2)
devido aU ser ortonormal (WINTERLE; STEINBRUCH, 1987), temosU−1=U′; com isso, dada a matrizC, os dados originaisV podem ser unicamente determinados pela equac¸ ˜ao (2.2).
No contexto do nosso trabalho o PCA ´e utilizado para classificar os dados
multivari-ados, de tal forma que escolhemos apenas os dados mais correlacionados para
2.3.2
Qualidade dos dados reduzidos
Ao efetuarmos a reduc¸ ˜ao dos dados ´e importante avaliar o quanto o dado reduzido
representa o dado original. Nessa direc¸ ˜ao, duas an ´alises foram realizadas no nosso
trabalho: a aproximac¸ ˜ao entre as distribuic¸ ˜oes de freq ¨u ˆencia dos dados originais e
amostrados; e a discrep ˆancia entre os valores originais e amostrados.
Para a avaliac¸ ˜ao da aproximac¸ ˜ao entre as distribuic¸ ˜oes de freq ¨u ˆencia dos dados
ori-ginais e amostrados utilizamos o teste de Kolmogorov-Smirnov (teste KS) (SIEGEL;
CASTELLAN, 1988; RESCHENHOFER, 1997). Esse teste avalia se duas amostrasV
eV′t ˆem distribuic¸ ˜oes similares n ˜ao exigindo que as amostras sigam a distribuic¸ ˜ao nor-mal, ou seja, caso os valores amostrados sigam outra distribuic¸ ˜ao este teste tamb ´em
pode ser utilizado. O teste KS ´e descrito a seguir:
1. Construir a distribuic¸ ˜ao acumuladaFn dos dois gruposV eV′usando a mesma classe para ambas as distribuic¸ ˜oes.
2. Determinar as diferenc¸as acumuladas para cada ponto da distribuic¸ ˜ao e
consi-derar a maior das diferenc¸as (Dmax).
3. Computar o valor cr´ıtico,
Dcrit =y
p
(|V|+|V′|)/|V||V′|
ondey ´e um valor tabulado e representa o n´ıvel de signific ˆancia do teste.
4. As amostras seguem a mesma distribuic¸ ˜ao se
Dmax ≤Dcrit. (2.3)
Apenas como ilustrac¸ ˜ao, considere a figura 7 que apresenta a comparac¸ ˜ao entre as
distribuic¸ ˜oes de freq ¨u ˆencia acumulada, com |V|=256 e |V′|={log|V|,|V|/2}† onde
V′ ⊂V. Em ambos os casos, atrav ´es do teste KS, temos que V′ segue a mesma distribuic¸ ˜ao deV.
Como o teste KS apenas identifica se duas amostras seguem a mesma distribuic¸ ˜ao, ´e
importante avaliar se os conjuntosV eV′possuem a m ´edia de seus valores pr ´oximos. Para isso podemos calcular a maior dist ˆancia entre V e os valores do intervalo de confianc¸aIC= [vin f;vsup]deV. Os passos para essa avaliac¸ ˜ao s ˜ao descritos a seguir:
†Em todo o trabalho, ao utilizarmoslogx, estaremos sempre nos referindo ao logaritmo dexna base
0.40 0.45 0.50 0.55 0.60 0.65 0.70
0.0
0.4
0.8
Função distribuição acumulada − |V| vs. log |V|
x
Fn(x)
(a) Comparando com log dos dados.
0.40 0.45 0.50 0.55 0.60 0.65 0.70
0.0
0.4
0.8
Função distribuição acumulada − |V| vs. |V|/2
x
Fn(x)
(b) Comparando com a metade dos dados.
FIGURA 7 – Func¸ ˜ao da distribuic¸ ˜ao acumulada para 256 valores.
1. Obter a m ´edia dos valores dos dados reduzidos e originais, que s ˜ao
respectiva-menteV eV′.
2. Calcular o intervalo de confianc¸aICcom confianc¸a de 95% paraV′.
3. Calcular o valor absoluto da maior diferenc¸a entreV eIC
ε =max{|vin f −V|,|vsup−V|}. (2.4)
Essas duas an ´alises s ˜ao utilizadas no nosso trabalho com o objetivo de identificar
o comportamento dos fen ˆomenos monitorados e reportados pelos sensores ap ´os
al-guma reduc¸ ˜ao ser efetuada.
2.4
Trabalhos relacionados
Os trabalhos relacionados est ˜ao agrupados nos seguintes t ´opicos: algoritmos de
stream de dados; stream de dados em redes de sensores; soluc¸ ˜oes alternativas
ao processamento do stream; soluc¸ ˜oes de roteamento em redes de sensores; e aplicac¸ ˜oes de tempo real em redes de sensores.
2.4.1
Stream
de dados em redes de sensores
Considerando apenas os estudos relacionados aos algoritmos de stream de dados,
esses est ˜ao quase sempre voltados a estabelecer limites inferiores para a classe
e espac¸o (ALON; MATIAS; SZEGEDY, 1996; HENZINGER; RAQHAVAN;
RAJAGO-PALAN, 1998; IOANNIDIS; POOSALA, 1999; DATAR et al., 2002; CORMODE et
al., 2003; GUHA et al., 2003; MUTHUKRISHNAN, 2005; AL-KATEB; LEE; WANG,
2007; LIAN; CHEN, 2008; ALTIPARMAK; TUNCEL; FERHATOSMANOGLU, 2008).
Existem propostas que apresentam aplicac¸ ˜oes de stream de dados para resolver
problemas espec´ıficos modelados usando algoritmos de stream de dados (INDYK, 1999; BAR-YOSSEFF; KUMAR; SIVAKUMAR, 2002; CHARIKAR; CHEN;
FARACH-COLTON, 2002; DATAR; MUTHUKRISHNAN, 2002; BURIOL et al., 2005, 2006b, 2006a;
AKCAN; BRONNIMANN, 2007; NASRAOUI et al., 2008; CAMMERT et al., 2008). No
entanto, ao considerarmos a utilizac¸ ˜ao dos algoritmos destream de dados em redes de sensores, em alguns casos, ´e feita uma abstrac¸ ˜ao da rede, ao utilizar uma camada
de software chamada de Data Stream Management System (DSMS). O problema a
ser resolvido com essas aplicac¸ ˜oes ´e de como responder `as consultas efetuadas pelo
usu ´ario (BABCOCK et al., 2002; GEHRKE; MADDEN, 2004; ABADI et al., 2004;
MAD-DEN et al., 2005; ROHM; SCHOLZ; GABER, 2007; XU; TANG; LEE, 2008). Algumas
propostas usam ostream para extrair informac¸ ˜oes de gerenciamento da rede de
sen-sores, tais como energia, agrupamento e localizac¸ ˜ao de n ´os (BABU; SUBRAMANIAN;
WIDOM, 2001; LEDLIE; NG; HOLLAND, 2005; PHUNG; GABER; ROHM, 2007). O
que diferencia esses trabalhos do nosso ´e que al ´em de estarmos utilizando os
algorit-mos destreamde dados como parte integrante das redes de sensores, utilizamos as
informac¸ ˜oes extra´ıdas dostreampara auxiliar a infraestrutura da rede, no nosso caso o roteamento, o que n ˜ao ´e considerado nesses trabalhos.
2.4.2
Soluc¸ ˜oes para o processamento dos dados monitorados em
redes de sensores
Para o problema de reduc¸ ˜ao de dados e manutenc¸ ˜ao de qualidade do dado em
re-des de sensores existem trabalhos que prop ˜oem a utilizac¸ ˜ao de amostragem
adap-tativa, ou seja, `a medida que o fen ˆomeno monitorado se modifica, a forma de
amos-tragem se adapta para obter dados mais precisos. Al ´em disso, existem trabalhos
que observam os dados objetivando identificar dados correlacionados e eliminar
re-dund ˆancia (MARBINI; SACKS, 2003; JAIN; CHANG, 2004; GANESAN et al., 2004;
WILLETT; MARTIN; NOWAK, 2004; CHEN; KNOW; CHOI, 2006; ALIPPI et al., 2007;
GEDIK; LIU; YU, 2007; YUEN; LIANG; LI, 2008). Tamb ´em existem trabalhos que
fa-zem fus ˜ao, compress ˜ao, correlac¸ ˜ao, reduc¸ ˜ao de dados ou agregac¸ ˜ao, normalmente
economi-zar recursos da rede, como energia, tempo de resposta e perda de pacotes
(KRISHA-NAMACHARI; ESTRIN; WICKER, 2002; DASGUPTA; KALPAKIS; NAMJOSHI, 2003;
ZHAO; GOVINDAN; ESTRIN, 2003; ZHU; PAPAVASSILIOU, 2004; SANTINI; ROMER,
2006; BROWN; SREENAN, 2007; KIM; PARK; CHO, 2007; NAKAMURA; LOUREIRO;
FRERY, 2007; ZHENG; BARTON, 2007; GUITTON; SKORDYLIS; TRIGONI, 2007;
YUEN; LIANG; LI, 2008; YU; KRISHNAMACHARI; PRASANNA, 2008). Al ´em disso,
existem t ´ecnicas para reduc¸ ˜ao de dados multivariados que utilizam m ´etodos para
es-timar o comportamento do dado a ser sensoriado e envia apenas as diferenc¸as
ob-servadas ao longo do tempo (SEO; KANG; RYU, 2005; LI; ZHANG, 2006; SCHIZAS;
GIANNAKIS; LUO, 2007; CVEJIC; BULL; CANAGARAJAH, 2007). O que diferencia
esses trabalhos do nosso ´e que essas propostas, n ˜ao s ˜ao baseadas nas t ´ecnicas de
streamde dados, apesar de n ˜ao terem dispon´ıveis todos os dados para o seu
proces-samento.
2.4.3
Redes de sensores sem fio hier ´arquicas
Existem v ´arias soluc¸ ˜oes para os diversos problemas de agrupamentos em redes de
sensores que podem ser vistos em diversossurveysda ´area (POTTIE; KAISER, 2000; AKYILDIZ et al., 2002; LOUREIRO et al., 2003). No entanto, de forma geral as
soluc¸ ˜oes est ˜ao relacionadas a melhorar o desempenho da rede atrav ´es da utilizac¸ ˜ao
de agrupamentos ou encontrar a melhor maneira de montar o agrupamento de acordo
com o interesse da aplicac¸ ˜ao (KRISHNA et al., 1997; BASAGNI, 1999; BANERJEE;
KHULLER, 2001; KARAATA, 2006; VLAJIC; XIA, 2006; CHANG; LIN; CHEN, 2006;
YADAV; YADAV; VARMA, 2007; SOLTAN; MALEKI; PEDRAM, 2007; MUDUNDI; ALI,
2007; REIS et al., 2007; LIAN; NAIK; AGNEW, 2007). Al ´em disso, existem algumas
soluc¸ ˜oes que utilizam agrupamentos na rede com o objetivo de atender `as
necessida-des das aplicac¸ ˜oes fazendo reduc¸ ˜ao, agregac¸ ˜ao e o processamento dos dados
(HEIN-ZELMAN; CHANDRAKASAN; BALAKRISHNAN, 2000; PHAM; KIM; MOH, 2004; LEE;
CHUNG, 2005; CHEN; LIESTMAN; LIU, 2006; GAO et al., 2007; LIU; WU; PEI, 2007).
O que diferencia esses trabalhos do nosso ´e que essas propostas n ˜ao s ˜ao baseadas
2.4.4
Soluc¸ ˜oes de roteamento em redes de sensores
V ´arias soluc¸ ˜oes para os problemas de roteamento em redes de sensores podem ser
vistos em algunssurveysda ´area (ESTRIN et al., 1999; ROYER; TOH, 1999; ESTRIN et al., 2001; LUO; LIU; DAS, 2007). Enfatizamos apenas `as soluc¸ ˜oes relacionadas
com roteamento em ´arvores pois foi a t ´ecnica abordada neste trabalho. Sabemos
que as soluc¸ ˜oes, para o problema de roteamento, podem ser reativas ou pr ´o-ativas,
onde as ´arvores s ˜ao montadas levando em considerac¸ ˜ao aspectos da rede como
vizi-nho mais pr ´oximo ou vizivizi-nho com mais energia residual (HEINZELMAN; KULIK;
BA-LAKRISHNAN, 1999; SOHRABI et al., 2000; INTANAGONWIWAT et al., 2003;
HEI-DEMANN; SILVA; ESTRIN, 2003; FIGUEIREDO et al., 2005; VASS; VIDACS, 2007;
ZHANG; MA; YANG, 2008). Como as redes de sensores s ˜ao centradas nos dados,
´e importante que as soluc¸ ˜oes de roteamento levem em considerac¸ ˜ao aspectos dos dados. Por ´em boa parte dessas soluc¸ ˜oes desconsideram o dado sensoriado para
montar a ´arvore de roteamento e nenhuma delas consideram t ´ecnicas de stream de
dados. O que diferencia esses trabalhos do nosso ´e que utilizamos as informac¸ ˜oes
contidas no stream para tomar decis ˜oes na camada de roteamento como o objetivo de reduzir os dados.
2.4.5
Aplicac¸ ˜oes de tempo real em redes de sensores
As pesquisas relacionadas com aplicac¸ ˜oes de tempo real em redes de sensores, no
geral, est ˜ao voltadas a arquiteturas e modelos matem ´aticos para aplicac¸ ˜oes gerais (LU
et al., 2002; HE et al., 2003; LI; SHENOY; RAMAMRITHAM, 2004; CHAN; KI; NGAN,
2005; ZHOU; XIONG; LIN, 2007; AFONSO et al., 2007). No entanto, ´e poss´ıvel
encon-trar algumas soluc¸ ˜oes, de roteamento e/ou aplicac¸ ˜ao, direcionadas para aplicac¸ ˜oes
espec´ıficas (PENG et al., 2007; PAN et al., 2007; LI; GU; ZHAO, 2007). Essas
propos-tas consideram os prazos e a energia, como principais m ´etricas a serem estudadas.
Isso ocorre porque os prazos s ˜ao importantes em aplicac¸ ˜oes de tempo real e energia
´e um recurso n ˜ao renov ´avel em redes de sensores, necessitando de uma atenc¸ ˜ao especial. O que diferencia esses trabalhos do nosso ´e que efetuamos de formaonline
simult ˆaneas reduc¸ ˜oes permitindo que a rede possa atender aos prazos exigidos pela
3
PROBLEMA DE REDUC
¸ ˜
AO DE DADOS
EM REDES DE SENSORES SEM FIO
“Aprender sem pensar ´e trabalho perdido.” (Conf ´ucio)
C
OMO discutido anteriormente, as redes de sensores sem fio consistem de dispo-sitivos de sensoriamento aut ˆonomos que trabalham de forma distribu´ıda ecoope-rativa com o objetivo de monitorar condic¸ ˜oes f´ısicas ou ambientais, tais como
tempe-ratura, som, vibrac¸ ˜oes, press ˜ao, movimento ou poluic¸ ˜ao (ROMER; MATTERN, 2004).
Tais sistemas f´ısicos ou ambientais podem ser representados pelo diagrama mostrado
na figura 8, ondeN denota o ambiente e o processo a ser medido,F ´e o fen ˆomeno de
interesse, comV∗ seu dom´ınio espac¸o-temporal. Se uma observac¸ ˜ao foi completada
sem problemas, teremos um conjunto de regras (R∗) ideais para tomada de decis ˜oes ideais (D∗). De acordo com essas caracter´ısticas n ´os consideramos V∗ o stream de
dados.
D∗
N V∗ V D
V′ D′
w
F
u
R∗
w
S
w
R
u
Ψ
w
R′
FIGURA 8 – Representac¸ ˜ao de um sistema de uma rede de sensores onde ´e mostrado o comportamento ideal (N →V∗→D∗), sensoriado (N →V∗→V →D) e reduzido
(N →V∗→V →V′→D′).
Ao inv ´es de uma situac¸ ˜ao ideal, temos um conjunto de s sensores, S= (S1, . . . ,Ss),
monitorando um fen ˆomeno e produzindo conjuntos de amostras no dom´ınio Vi, com
1≤i≤s; todos os poss´ıveis conjuntos do dom´ınio s ˜ao denotados porV = (V1, . . . ,Vs).