• 沒有找到結果。

Multiresolution Spatial and Temporal Coding in a Wireless Sensor Network for Long-Term Monitoring Applications

N/A
N/A
Protected

Academic year: 2021

Share "Multiresolution Spatial and Temporal Coding in a Wireless Sensor Network for Long-Term Monitoring Applications"

Copied!
12
0
0

加載中.... (立即查看全文)

全文

(1)

Multiresolution Spatial and Temporal Coding

in a Wireless Sensor Network for Long-Term

Monitoring Applications

You-Chiun Wang, Member, IEEE, Yao-Yu Hsieh, and Yu-Chee Tseng, Senior Member, IEEE

Abstract—In many WSN (wireless sensor network) applications, such as [1], [2], [3], the targets are to provide long-term monitoring of environments. In such applications, energy is a primary concern because sensor nodes have to regularly report data to the sink and need to continuously work for a very long time so that users may periodically request a rough overview of the monitored environment. On the other hand, users may occasionally query more in-depth data of certain areas to analyze abnormal events. These requirements motivate us to propose a multiresolution compression and query (MRCQ) framework to support in-network data compression and data storage in WSNs from both space and time domains. Our MRCQ framework can organize sensor nodes hierarchically and establish multiresolution summaries of sensing data inside the network, through spatial and temporal compressions. In the space domain, only lower resolution summaries are sent to the sink; the other higher resolution summaries are stored in the network and can be obtained via queries. In the time domain, historical data stored in sensor nodes exhibit a finer resolution for more recent data, and a coarser resolution for older data. Our methods consider the hardware limitations of sensor nodes. So, the result is expected to save sensors’ energy significantly, and thus, can support long-term monitoring WSN applications. A prototyping system is developed to verify its feasibility. Simulation results also show the efficiency of MRCQ compared to existing work.

Index Terms—Coding, data compression, sensor data aggregation, sensor data management, wireless sensor networks.

Ç

1

I

NTRODUCTION

W

IRELESS sensor networks (WSNs) provide a new opportunity for pervasive and context-aware mon-itoring of physical environments. A WSN is composed of numerous sensor nodes, each being a tiny wireless device that can continuously collect environment information and report to a remote sink through a multi-hop ad hoc network [4]. A WSN is usually deployed in a region of interest to observe particular phenomena or track objects inside the region. Practical applications of WSNs include, for example, habitat monitoring, health care, smart home, and surveil-lance [5], [6], [7].

Because sensor nodes are typically operated by batteries and recharging is usually infeasible, it is a critical issue to extend the network lifetime by conserving their energy. In this paper, we consider WSNs with the following char-acteristics:

. These WSNs are deployed to support long-term

monitoring of some specified regions [1], [2], [3]. Since sensor nodes need to regularly report data to

the sink, the communication overhead will dominate their energy consumption. In addition, due to the large amount of such regular reporting, sensor nodes closer to the sink will suffer from heavier traffic loads and thus rapider energy drain [8]. When these nodes exhaust their energy, the network would be broken. Thus, it is important to reduce the amount of transmissions of regular reporting of sensor nodes.

. Sensing data often exhibit a certain degree of

correlation. Specifically, the readings of nearby sensor nodes may present high spatial correlation because of their similar environment. Besides, the sensing data collected by a single node may present high temporal correlation when its surrounding remains stable or changes slowly. Fig. 1 shows an experimental result to support the above argument, where four sensor nodes are used to collect the temperatures of a room in a day. We can observe that the temperatures reported by sensors 1, 2, and 4 are quite spatially correlated because they are close to each other, and the temperatures collected by each individual node during the periods [12:35 PM, 05:35 PM] and [08:05 PM, 01:05 AM] are quite temporally correlated. Therefore, there is large space to compress sensing reports to reduce transmissions. . Users could query different “resolutions” of sensing data, both spatially and temporally, from the net-work [9], [10]. In the space domain, they may want to receive a periodical rough report containing an overview of the environment from the sink. Occa-sionally, they may query more in-depth data of certain areas where something abnormal may be . Y.-C. Wang and Y.-C. Tseng are with the Department of Computer

Science, National Chiao-Tung University, 1001 University Road, HsinChu, 30010, Taiwan, R.O.C.

E-mail: {wangyc, yctseng}@cs.nctu.edu.tw.

. Y.-Y. Hsieh is with the Realtek Semiconductor Corp., Hsinchu Science-based Industrial Park, HsinChu, 30076, Taiwan.

E-mail: [email protected].

Manuscript received 16 Aug. 2008; accepted 30 Dec. 2008; published online 14 Jan. 2009.

Recommended for acceptance by J.C.S. Lui.

For information on obtaining reprints of this article, please send e-mail to [email protected], and reference IEEECS Log Number TC-2008-08-0420. Digital Object Identifier no. 10.1109/TC.2009.20.

(2)

happening. As a result, the WSN should be designed to allow periodical lower resolution reports to be sent to the sink as well as to keep higher resolution data inside the network for further queries. In the time domain, they may be more interested in recent sensing data than older ones.

. Sensor nodes are usually simple devices. They have

a very limited computation power and a smaller memory size. Therefore, the proposed compression and storage schemes cannot be too complicated to fit into sensor nodes.

In this paper, we propose a multiresolution compression and query (MRCQ) framework to support in-network data compression and data storage in WSNs. The idea is to organize sensor nodes hierarchically and then establish multiresolution summaries of sensing data, via spatial and temporal coding techniques. To reduce communication cost, only lower resolution summaries are sent to the sink. The other higher resolution summaries will be stored at different “layers” of the network to be retrieved via further queries. The hierarchical architecture of sensor nodes is to support such layering. Data reported from lower layer nodes will be compressed by an upper layer node through a spatial coding technology. In this way, the amount of data transmissions can be significantly reduced. Each node also compresses its historical data by a temporal coding technique. To keep historical summaries inside the network, we develop a reverse-exponential storage algorithm, where historical data also exhibit a multiresolution characteristic in the sense that finer resolutions are available for more recent data, while coarser resolutions are available for older data. To summar-ize, major contributions of this paper are three-fold:

. We propose a transmission and storage framework

for WSNs to support multiresolution spatial and temporal coding of sensing data. To avoid sensor nodes wasting too much energy on regular reporting, they only report periodical lower resolution summa-ries to the sink. On the other hand, higher resolution data are kept in the network to allow occasional queries from users. This design can significantly extend a WSN’s lifetime, especially in long-term monitoring applications in a somewhat stable or slowly changed environment.

. We develop in-network spatial and temporal

compression algorithms to help reduce data

transmissions in a WSN. Not only the network lifetime can be extended, but also the network congestion can be alleviated. Compression ratios are tunable, so users are allowed to trade data accuracy for energy consumption according to their require-ments. In addition, we also design an efficient storage mechanism to help sensor nodes to maintain their historical sensing data in local memories. The historical data also have multiple resolutions depend-ing on their seniority.

. The proposed compression and storage algorithms

consider the limitation of computation power and memory size of sensor nodes. We have developed a prototyping system to evaluate the feasibility of the MRCQ framework. Extensive simulations are also conducted to verify the efficiency of the proposed algorithms. The results show that MRCQ incurs a lower amount of data transmissions and renders more accurate reports compared to DIMENSIONS [11]. The rest of this paper is organized as follows: Section 2 reviews some related work. Section 3 presents our MRCQ framework. Section 4 discusses our prototyping results. Simulation results are given in Section 5. Section 6 con-cludes this paper.

2

R

ELATED

W

ORK

Data compression has been widely researched in various fields. Some of these concepts have also been applied to WSNs. Below we give a classification and a review.

. Text-based compression: The Lempel-Ziv-Welch

(LZW) algorithm [12] is a popular lossless compres-sion scheme for text data. It is a dictionary-based algorithm that encodes new strings based on pre-viously encountered strings. This concept is adopted by S-LZW [13] to reduce data transmissions in a WSN. S-LZW treats sensing data as strings and divides them into fixed-size blocks, each being compressed by LZW. Although it is appropriate for sensor nodes, S-LZW does not utilize the spatial and temporal correlations of sensing data.

. Wavelet-based compression: Wavelet-based

com-pression such as JPEG 2000 [14] is designed for image compression. It divides an image into multiple small pixels and compresses them through wavelet trans-form and quantization [15]. DIMENSIONS[11] adopts this concept to support multiresolution storage in a WSN by organizing the network into multiple levels. The three-dimensional discrete wavelet transform (3D-DWT) [16] is adopted to generate spatiotemporal summarization of sensing data in each level. Users can obtain different resolutions of sensing reports from different levels via drill-down queries. Although DIMENSIONS meets our multiresolution requirement, it is too complicated for sensor nodes because wavelet-based compression would incur high computation and storage complexity. Also, such expensive wavelet compression and decompression operations are performed at each level of the DIMENSIONS hierarchy.

(3)

. Distributed source coding: The Slepian-Wolf theorem [17] is the foundation of such coding. Given two correlated sources, each being encoded indepen-dently, and then decoded jointly at a receiver, the Slepian-Wolf theorem proves that it is possible to achieve lossless encoding of these two sources at a rate equal to their joint entropy, even though there is no negotiation between the two encoders. The theorem and its rate-distortion extension [18] pro-vide a theoretical tool to characterize the amount of communications required for the distributed source coding in a network where nodes will generate highly correlated data [19]. S.S. Pradhan et al. [20] adopts this property to provide distributed compres-sion in a dense sensor network. However, inherited from the Slepian-Wolf theorem, prior correlation knowledge of the data to be compressed is required in [20], which limits its feasibility to be applied to real WSNs.

. Compressed sensing: Compressed sensing (or compres-sive sensing) [21] is an emerging sampling theory that leverages compressibility without relying on any specific prior knowledge or assumption on signals. It indicates that any sufficiently compressible signal can be accurately recovered from a small number of nonadaptive, randomized linear projection samples. Specifically, given a set of sparse signal x ¼ ðxi;jÞn1,

we can find a random projection matrix A ¼ ðAi;jÞkn

with far fewer rows than columns (i.e., k  n) to obtain a small compressed data set y ¼ ðyi;jÞk1¼ Ax.

This concept is adopted in [22] to provide lossless compression in WSNs. Each of n sensors locally draws a vector with k elements by a random generator to form matrix A, and then uses A to compress its sensing data. This scheme provides a decentralized compression in WSNs, but it cannot support multi-resolution compression.

. Data aggregation: In-network data aggregation for

WSNs [23], [24], [25], [26], [27] focuses on reducing the message cost by fusing similar sensing data into some representative values. For example, TAG [23] organizes a sensor network into a tree and proposes SQL-like semantics to aggregate streaming data into histograms. Nevertheless, such a compression pro-vides only one level of resolution.

Our MRCQ framework provides multiresolution com-pressions in both space and time domains. Our spatial compression algorithm modifies the popular DCT (discrete cosine transform) method in the image processing field, and

our temporal compression algorithm adopts a differential coding to transmit continuous data and a reverse-exponential concept to store historical data. Table 1 compares the features of prior work and our MRCQ framework. Since DIMEN-SIONS is the only work that possesses the multiresolution feature, we will compare with it numerically in Section 5.

3

M

ULTIRESOLUTION

C

OMPRESSION AND

Q

UERY

(MRCQ) F

RAMEWORK

Fig. 2 illustrates the system architecture of our MRCQ framework. We assume that sensor nodes are homoge-neous and they are arbitrarily deployed in the sensing field. The network is recursively divided into  ( > 1) blocks and is organized into multiple layers, where a block in layer i þ 1 contains  blocks in layer i. In each layer, we select a node in each block as the processing node (PN) to

TABLE 1

Comparison of Prior Work and Our MRCQ Framework

Fig. 2. System architecture of the MRCQ framework (with three layers and ¼ 4).

(4)

collect and compress sensing reports from lower layer blocks. The number of layers decides the resolutions and message sizes of sensing reports, and can be adjusted depending on application requirements.

In the lowest layer 1, the PN is responsible for compressing sensing reports from leaf sensor nodes (LNs). The area handled by each PN is divided into k  k grids (called pixels), where k is a small integer. Ideally, each pixel should contain exactly one LN and the sensing report of this LN is the pixel’s value. Nevertheless, since LNs are randomly deployed, it is possible that some pixels contain no or multiple LNs. In a pixel with multiple LNs, its value is the LNs’ average. In a pixel containing no LN, its value can be estimated by some interpolation scheme.

In MRCQ, sensing data are transmitted to the sink layer by layer. There are three algorithms. Data passing each layer will be compressed by its PN through a spatial compression algorithm (discussed in Section 3.1). LNs and layer-1 PNs will compress their data by a temporal compression algorithm (Section 3.2). Historical data will be stored by each LN and PN via a reverse-exponential storage algorithm (Section 3.3). Since the spatial and temporal compression algorithms may cause loss of precision, multiple resolutions can be sup-ported. In particular, as we go deeper into the tree, a finer resolution can be obtained. When a query arrives at a PN, it can reply if its resolution satisfies the requirement of the query. Then, the content of the response will be decom-pressed at the sink. In this way, both computation and space complexities of PNs are greatly reduced.

3.1 Spatial Compression Algorithm

The spatial compression algorithm is performed by each PN to compress sensing data from its lower layer. A compression ratio  (0 <   1) can be specified, which is defined as the ratio of the size of compressed data to the size of uncompressed data. The spatial correlation of data is exploited in the compression. There are three compo-nents: layer-1 compression, layer-i compression (i > 1), and decompression.

3.1.1 Layer-1 Compression

A layer-1 PN collects the sensing data from its local LNs and stores them in a k  k matrix M ¼ ðsi;jÞkk, where si;jis

the value of the local pixel ði; jÞ. Then, we apply the two-dimensional discrete cosine transform (2D-DCT) [28] on M to generate a new matrix M0¼ ðti;jÞkk, where

ti;j¼ 2 kCðiÞCðjÞ Xk1 x¼0 Xk1 y¼0 sx;y cos i 2xþ 1 2k    cos j2yþ 1 2k     ; ð1Þ where CðiÞ ¼ 1ffiffi 2 p ; if i¼ 0; 1; otherwise: (

The 2D-DCT is widely used in image processing. It can transform an image from the spatial domain to the frequency domain and extract significant values of the image. In particular, these significant values will appear in

the upper left part of matrix M0, while insignificant values will appear in the opposite part. Therefore, we can preserve most characteristics of M by truncating the lower right part of M0for compression purpose.

The cosine operations in (1) might be too costly for sensor nodes. Fortunately, the variable k is a predefined system parameter. Since k is a small integer, we can maintain a small table in each PN to record the results of cosine operations for each ði; xÞ and ðj; yÞ pair. Thus, the calcula-tion of (1) can be reduced to simple addicalcula-tion and multi-plication operations.

After calculating M0, a reduced zigzag scan (RZS) is

performed to translate M0into a one-dimensional array D.

RZS retrieves elements of M0 from the upper left corner toward the lower right corner along the diagonal direction, as shown in Fig. 3, until d  k2e elements are scanned. Then, the

array D is transmitted to its layer-2 PN. Due to the property of 2D-DCT, array D keeps most significant values of M. 3.1.2 Layer-i Compression

A layer-i (i > 1) PN will further compress the data from its  child blocks in layer i  1. Intuitively, one possible solution is: 1) decompress the block from each lower layer node, 2) combine all  blocks together to form a larger block, and 3) apply the 2D-DCT method again on the larger block. Nevertheless, this solution has two draw-backs. First, the 2D-DCT decompression and compression are too expensive. The situation becomes worse as we move to the higher layers. Second, the effectiveness of compression may degrade because in a larger area, the degree of spatial correlation of sensing data will decrease. Here, we propose a simple layer-i compression scheme, as shown in Fig. 4. Specifically, for each layer-2 PN, it will collect reduced matrices M0from its  layer-1 PNs, each with

d  k2e pixels. For each reduced layer-1 matrix M0, we

transmit the first dð  k2Þe significant pixels and discard the

remaining b  k2 2 k2c pixels,1 as shown in Fig. 4. So,

only   d2 k2e pixels will be sent to its layer-3 PN. Similarly,

for each layer-i PN, it will collect i1layer-1 matrices, and only preserve the first most significant di k2e pixels of each

layer-1 matrix to be sent to its layer-(i þ 1) PN and discard the remaining bi1 k2 i k2c pixels. The above scheme

Fig. 3. An example of RZS with compression ratio ¼20 25¼ 0:8.

1. These discarded pixels will be stored in the PN’s local memory for further queries.

(5)

incurs quite low computation cost. Besides, since entries of a layer-1 matrix are more spatially correlated, such a compres-sion is more efficient.

Next, we analyze the size of packets transmitted in each layer. Suppose that the size of a pixel is l bits and each packet header is h bits. Given a compression ratio of , the size of each packet transmitted by a layer-1 PN is h þ d  k2le bits. For each layer-2 PN, after including a packet

header, h þ   d2 k2le bits will be sent to its parent.

Similarly, the size of each packet transmitted by a layer-i PN is h þ i1 di k2le bits. In summary, excluding packet

headers, only a i ratio of the amount of original sensing

data is transmitted by layer-i PNs. A smaller  incurs less amount of data transmission, and thus preserves more energy of PNs, but it also reduces data accuracy. We will discuss this trade-off by simulations in Section 5.

3.1.3 Decompression

There are two cases where decompression may be taken. The first case is at the sink based on the d1reduced

layer-1 matrices collected from its children, each with dd k2e

pixels, where d is the number of layers. Then, each reduced matrix will be expanded to a k  k matrix M0¼ ðt

i;jÞkkby

appending sufficient 0’s at the end. We then adopt the inverse 2D-DCT to transform M0to a matrix M ¼ ðsi;jÞkk,

where si;j¼ 2 k Xk1 x¼0 Xk1 y¼0

CðxÞCðyÞ  tx;y cos x

2iþ 1 2k     cos y2jþ 1 2k   : ð2Þ

Since (2) is the inverse of (1), we can obtain an approximation of the original matrix of sensing data. The sink then puts all these recovered d1matrices together to

form a large matrix of approximate sensing data.

The second case happens when we query a certain layer i. A query will be flooded from the sink to all layer-i PNs. Then, each layer-i PN will send the discarded part

(bi1 k2 i k2c pixels, as shown in Fig. 4) to its

layer-(i þ 1) PN. Such operation is repeated until the sink receives all discarded pixels of all PNs from layers i to d. In this way, the sink can have the “complete” matrices seen by all layer-i PNs and then recover the sensing data with a resolution of “layer i.” As can be seen, the above scheme requires each PN to transmit only few pixels.

3.2 Temporal Compression Algorithm

The aforementioned discussion assumes that LNs and PNs will periodically report data to their parents. In this section, we propose a temporal compression algorithm, which tries to reduce the amount of transmissions by exploiting the similarity of data items that are generated at close times.

The concept of temporal compression is shown in Fig. 2. The compression is done only between LNs and layer-1 PNs and between layer-1 PNs and layer-2 PNs. The time axis is divided into complete reporting intervals of the same length c. Each complete reporting interval is further divided into

smaller partial reporting intervals of length p, where cis a

multiple of p. In the beginning of each complete reporting

interval, LNs and PNs will report and compress data as we discussed earlier. During each complete reporting interval, differential compression will be conducted in the beginning of each partial reporting interval. Specifically, each LN will decide to report or not to report according to the variance of its current sensing data and its previous sensing data. If an LN does not report, its layer-1 PN will assume that its sensing data are unchanged. Similarly, a layer-1 PN will do the same thing to its layer-2 PN.

The compression between LNs and layer-1 PNs will be controlled by a small update threshold L. An LN will not

report if its current sensing data vcurrent differs from its

previous reported data vrepby an amount no more than L,

i.e., jvrep vcurrentj  L. If so, its layer-1 PN will use vrepas

its current sensing data. The compression between layer-1 PNs and layer-2 PNs will be controlled by a threshold P. A

layer-1 PN will not report if the difference between its current matrix Mcurrent¼ ðti;jÞkk and its previously

re-ported matrix Mrep¼ ðsi;jÞkksatisfies the inequality

1 k2 Xk i¼1 Xk j¼1 jsi;j ti;jj  P:

If so, its layer-2 PN will use Mrepas its current sensing

matrix.

Note that all layer-i PNs, i  2, will not conduct temporal compression because the matrices seen by such nodes have already been compressed by the 2D-DCT method and computing the difference of two compressed matrices is time-consuming.

Remark 1. Since sensor nodes will regularly report their sensing data, we can set up timers at PNs and the sink, and apply a retransmission mechanism to handle the packet loss problem. The length of timeout can be set to the reporting interval c. When a node does not respond

after a predefined number of retransmission requests, it is treated as failure. In the case of an LN failure, the layer-1 PN can use interpolation to estimate its value. In the case of a PN failure, a new PN can be elected to replace the old one.

(6)

3.3 Reverse-Exponential Storage Algorithm

The above compression and decompression algorithms only concern the current sensing data. In fact, sensing data is usually a streaming data. Thus, it is a challenging issue to store historical data in PNs and LNs under sensors’ limited storages. In this section, we propose a reverse-exponential storage algorithm for this purpose. Thus, users can query different resolutions of sensing data on the time domain.

Let nL and nP be the maximum numbers of frames that

an LN and a PN can store in its local memory, respectively, where a frame is the unit of sensing data for the node. Below, for simplicity, we will write both nLand nP as n (it

will be clear from the context). For an LN, a frame is a piece of sensing data generated by itself. For a PN, a frame is a set of discarded pixels in the compression process (refer to Fig. 4). Let fibe the frame stored by an LN/PN at

timestamp i. Suppose that the current time is t. The objective of the reverse-exponential storage algorithm is to store historical frames at timestamps with intervals at an exponentially increasing order from t. Specifically, we would like to store frames ft2n1þ1, . . . , ft3, ft1, and ftin

the node, as shown in Fig. 5. In this way, users can query sensing data long time ago with different resolutions. When a query of a past frame fi ði  tÞ arrives at a node,

two cases may happen:

Case A: The node is an LN.The response includes three possibilities:

. If fi is stored in the node’s local memory, it can

directly reply fito the sink.

. If t  2jþ 1 < i < t  2j1þ 1, it replies two frames

ft2jþ1and ft2j1þ1to the sink. The sink then applies

a linear interpolation to calculate fi, that is,

fi ft2jþ1 i ðt  2iþ 1Þ¼ ft2j1þ1 ft2jþ1 t 2j1þ 1  ðt  2jþ 1Þ; )fi¼ ft2jþ1þ ðft2j1þ1 ft2jþ1Þ  ði  t þ 2j 1Þ 2j1 : ð3Þ

. If i < t  2n1þ 1, it replies a FAIL message to the

sink since this information is too old.

Case B: The node is a PN. The query should specify a

certain layer i. First, the sink will flood the query to all layer-i PNs. Then, each layer-i PN will send its frame(s) or a FAIL message according to the above three cases to its layer-(i þ 1) PN. Note that since data stored in PNs are all compressed data, each layer-(i þ 1) PN also needs to send

the similar frame(s) to its parent. Such operation is repeated until the sink receives all frames from all layer-i to layer-d PNs. Then, the sink can combine these frames and recover the historical data via the inverse 2D-DCT method and a linear interpolation (as in (3)).

There are two properties in the reverse-exponential storage scheme. First, a long history of data can be stored with small buffers. Second, finer resolutions are available for more recent data, while coarser resolutions are available for older data.

The remaining problem is to maintain historical frames in a node’s memory as time moves on. There are two cases to be discussed.

Case A: The node is an LN.Suppose that the current

time is t. What are stored locally are frames ft2n1þ1;

. . . ; ft3; ft1, and ft. As the time moves to t þ 1, each frame

is aged by one. So, the place for ftshould be given to ftþ1,

and the place for ft1 should be given to ft. For each

remaining frame ft2þ2,  ¼ 2; . . . ; n  1, we can apply the

linear interpolation in (3) on the frames ft2þ1and ft21þ1

to approximate its value. For example, ft2 can be

interpolated from ft3and ft1.

Case B: The node is a PN.Recall that frames ft2n1þ1;

. . . ; ft3; ft1, and ftare stored locally, where t is the current

time. As the time moves to t þ 1, the place for ftshould be

given to ftþ1, and the place for ft1should be given to ft.

For each remaining frame ft2þ2,  ¼ 2; . . . ; n  1, we need

to select one frame that has the closest timestamp to it to represent this frame. (Note that linear interpolation is infeasible here because these data are compressed data.) Specifically, for each  ¼ n  1; . . . ; 2, the place for frame ft2þ2will be given to the frame whose original timestamp

is closest to t  2þ 2 (to make this possible, we need to

store each frame’s original timestamp). One exception is frame ft2n1þ2. We will not consider frames older than

timestamp t  2n1þ 2 (because such frames are too old).

Fig. 6 illustrates an example, where the number in each box represents the real age of a frame at each time instance. Suppose that at time t, we have historical frames with ages 1, 2, 4, 8, and 16 in locations ft; ft1; ft3; ft7, and ft15,

respectively. As the time moves to t þ 1, the age of each stored frame is increased by one. So, frames with ages 1, 2, 3, 5, and 9 are kept. The frame with age 17 is deleted according to our exceptional rule. Fig. 6 shows the buffering results from t to t þ 10. We can observe that

the frames stored in places ft and ft1 are always

accurate. For each place ft2þ1,  ¼ 2; . . . ; n  1, the actual

frame fa stored in that place always satisfies a timestamp

ja  ðt  2þ 1Þj  21. This is because the original frame

stored in the place ft21þ1 will eventually move to the

place ft2þ1.

Finally, we comment on the values of LN and LP.

Suppose that each node has a buffer space of m bits and the size of a pixel is l bits. Clearly, LN ¼ ml

 

. For LP, recall

Fig. 4. Each layer-i PN should keep i1 ð i1 iÞ  k2

pixels after each compression. Therefore, we have LP ¼

m maxd

i¼1fi1 bði1 iÞ  k2c  lg

 

: Fig. 5. Concept of the reverse-exponential storage algorithm.

(7)

4

P

ROTOTYPING

E

XPERIENCE

We use the MICAz Motes [29] to build a two-tier, 16-node WSN, as shown in Fig. 7. Each Mote’s radio is a 2.4 GHz, IEEE 802.15.4-compatible module allowing low-power operations and offering a data rate of 250 Kbps. We set

¼ 4 and k ¼ 2, so there are four layer-1 PNs in our

prototype, each being responsible for collecting and compressing 2  2 pieces of data. We use this network to collect the indoor temperatures during 45 hours. The complete reporting interval c is set to ten minutes. The

compression ratio  is set to 0.75 and the update thresholds Land P are set to 0.5C. For each LN, a sensing report is

15 bytes, which contains 11 bytes of header and trailer and

4 bytes of payload. The size of packets reported from a PN is 19 bytes with 8 bytes of payload.

Fig. 8a shows the total amount of data transmitted by these 16 nodes. We can observe that the amount of data transmissions is greatly reduced by our MRCQ framework. This is because temperatures have high data correlations, and thus, can be compressed in both spatial and temporal domains. Fig. 8b illustrates the average temperatures being reported by the 16 nodes. The maximum error is 0.189C. This indicates that our MRCQ framework can preserve most characteristics of the sensing reports.

At the remote sink, we provide a user interface to monitor the network’s status and query data from sensor nodes, as shown in Fig. 9. It contains three major components: monitoring, statistical, and querying areas. The monitoring area shows the network topology and status. Inside each square, the corresponding sensor ID, coordinates, and current temperature are shown. The color of a circle means the corresponding sensor’s status (black = inactive). The statistical area reports the total amount of data transmissions when different compression algorithms are applied. The querying area allows users to obtain more in-depth sensing data from the network. Users can specify the sensor nodes to be queried and add conditions to restrict the queried data.

5

S

IMULATION

S

TUDIES

Since a large-scale deployment is difficult to realize, in this section, we develop a simulator to verify the efficiency of

our MRCQ framework. We set up a 256  256 m2 sensing

Fig. 7. A 16-mote prototype in our experiment.

Fig. 8. Experimental results from the prototyping system. (a) The amount of data transmission. (b) The reported temperatures.

(8)

field, on which 1,000 sensor nodes are randomly deployed. We set k ¼ 8 and  ¼ 4, and designate 20 and 4 nodes as layer-1 and layer-2 PNs, respectively. The transmission range of each sensor node is set to 30 m. The size of each packet transmitted by a PN is 18 bytes containing 16 bytes of payload, whereas the size of each sensing data reported by an LN is 6 bytes containing 4 bytes of payload. The sensing field is divided into 32  32 grids. The total simulation time is 100 minutes. During every minute, the temperature of each grid may be changed and a number of events will arbitrarily occur in the sensing field. We measure the total amount of data being transmitted by sensor nodes and the average errors caused by the compression algorithms. Here, we define the average error as

1 K2 XK i¼1 XK j¼1

jMsink½i; j  Mreal½i; j j;

where Msink is a K  K matrix of sensing data seen by the

sink and Mreal is a matrix of the real temperatures seen by

LNs. In these simulations, K ¼ 32.

5.1 Comparison with DIMENSIONS

We compare our MRCQ framework against DIMENSIONS [11]. The compression ratio  is set as 0.75 and 0.5 in both MRCQ and DIMENSIONS. For MRCQ, we set the update thresholds Land P as 0.5Cin the temporal compression

algorithm. Three different environmental scenarios are considered in this experiment.

In the first scenario, we observe the effect of the ranges of grid temperatures. Specifically, the average temperature

of each grid is randomly picked from ½ð25  xÞC;

ð25 þ xÞC , where the range x is selected from 0.1 to 2.1.

In addition, there are five events arbitrarily occurring in the sensing field, each increasing ½1C; 3C in its vicinity. Clearly, when the value of x is larger, it means that the environment changes more drastically. Fig. 10a shows the total amount of data transmissions of MRCQ and DIMEN-SIONS. As can be seen, when the compression ratio  becomes smaller, more data can be compressed. Our MRCQ framework can have less amount of data transmission compared with DIMENSIONS when x  1:6. This means that MRCQ can compress more data when the environment is more stable. When the environment changes more drastically (e.g., x  1:7), MRCQ will transmit more data to respond to the change. This will reflect on the average error of reporting data, as shown in Fig. 10b. We can observe that MRCQ always has a lower average error compared with DIMENSIONS, even when the value of x exceeds 1.7.

In Fig. 10a, we can observe that the amount of data transmission in DIMENSIONS is irrelevant to the range of grid temperatures, because it periodically compresses data in a constant manner. This will make DIMENSIONS Fig. 9. User interface at the remote sink in our prototype.

Fig. 10. Comparison of MRCQ and DIMENSIONS under different ranges of grid temperatures. (a) The amount of data transmission. (b) The average errors.

(9)

difficult to respond to environmental changes, and causes more data inaccuracy when the environment is more unstable. On the other hand, the temporal compression algorithm can help MRCQ flexibly respond to environ-mental changes. In Fig. 10a, when the environment is almost stable (e.g., x  1:3), the temporal compression algorithm can help MRCQ reduce a large amount of data transmission. When 1:4  x  1:8, since the difference between successive sensing data in each grid could often exceed the threshold L, the effect of temporal compression decreases, and thus,

the amount of data transmission in MRCQ grows. As

x 1:9, the temporal compression becomes almost of no

effect so the data compression in MRCQ is dominated by the spatial compression. Thus, the amount of data transmission in MRCQ becomes constant. The above behavior can help MRCQ flexibly reduce more data when the environment is stable and render more accurate reports when the environ-ment changes drastically.

In the second scenario, we observe the effect of the increasing temperatures of events. Specifically, there are 20 events arbitrarily appearing in the sensing field, and each event will cause an increase of yCin its vicinity, where y is ranged from 0.2 to 4.2. The average temperature of each grid is randomly selected from ½24:8C; 25:2C . Clearly, a larger

value of y means that the events will cause a larger difference in temperatures in their vicinity. Fig. 11 shows

the amount of data transmission and average errors of MRCQ and DIMENSIONS. We can observe that MRCQ outperforms DIMENSIONS in this scenario. Since the temperature range in each grid is limited to 0:4C and the number of events is fixed, the effect of temporal compres-sion in MRCQ will be almost constant. So, the amount of data transmission changes slowly in MRCQ, as shown in Fig. 11a. The average errors of MRCQ and DIMENSIONS increase as y increases, because these events will introduce more difference in temperatures inside their neighboring regions.

In the third scenario, we observe the effect of the number of events. The average temperature of each grid is randomly set among ½24C; 26C . In addition, there are 0-100 events randomly occurring in the sensing field. When an event happens, an increase of 1-3C can be seen in its vicinity. Fig. 12a shows the total amount of data transmission in MRCQ and DIMENSIONS. We can observe that MRCQ has less amount of data transmission compared with DIMEN-SIONS when  ¼ 0:75 and when the number of events is smaller than 70 as  ¼ 0:5. Similar to the first scenario, the amount of data transmission grows in MRCQ as the number of events increases, because of the effect of the temporal compression algorithm. This flexibility can help MRCQ result in a smaller average error when there are more events, as shown in Fig. 12b.

Fig. 11. Comparison of MRCQ and DIMENSIONS under different increasing temperatures of events. (a) The amount of data transmission. (b)The average errors.

Fig. 12. Comparison of MRCQ and DIMENSIONS under different numbers of events. (a) The amount of data transmission. (b) The average errors.

(10)

In summary, MRCQ can compresses more data when the environment is stable, and preserve more accuracy on reports by transmitting more data when the environment changes drastically. In the following experiments, we will measure the effects of spatial and temporal compression algorithms in MRCQ. The simulation settings are the same as that in the third scenario.

5.2 Effect of the Spatial Compression Algorithm

We then evaluate the effect of the spatial compression

algorithm in MRCQ. We set the update thresholds L and

P as zero to eliminate the effect of the temporal

compression algorithm. Fig. 13a shows the total amount of data transmission of MRCQ under different number of events and different compression ratios . Clearly, when  becomes smaller, the spatial compression algorithm can reduce more data. The data transmission of the spatial compression algorithm is irrelevant to the number of events because it discards a constant number of pixels depending on the value of . However, this behavior will affect the average errors, as shown in Fig. 13b. We can observe that when the value of  becomes larger, the spatial compression algorithm can keep lower errors because PNs can transmit more data to reflect the changes of environment. However, when  becomes too small (for example,  ¼ 0:2), the average error grows fast as the number of events increases. In this case, since each

PN can only transmit a small portion of the compressed matrix, only a small number of significant values can be kept and thus the error increases.

Fig. 14 shows the effect of compression ratio  on the spatial compression algorithm when the number of events are 20 and 80. From Fig. 14, we can find that the suitable value of  is around 0.35-0.4 since both the amount of data transmission and average error can be kept quite small.

5.3 Effect of the Temporal Compression Algorithm

Finally, we evaluate the effect of the temporal compression algorithm in MRCQ. We set the compression ratio  ¼ 0:8 to fix the effect of the spatial compression algorithm and set

L¼ P ¼ . Fig. 15a shows the total amount of data

transmission of MRCQ under different number of events and different update thresholds . We can observe that when  is very small (for example,  ¼ 0:1), the effect of the temporal compression algorithm becomes insignificant and thus the amount of data transmission remains constant under different number of events. However, as  becomes larger, the temporal compression algorithm can reduce more data when the number of events is smaller. When the number of events increases, the amount of data transmission also increases because the difference between Fig. 13. Effect of the spatial compression algorithm. (a) The amount of

data transmission. (b) The average errors.

Fig. 14. Effect of compression ratio  on the spatial compression algorithm. (a) Event number: 20. (b) Event number: 80.

(11)

two sequential sensing reports may often exceed the update threshold. Fig. 15b shows the average errors. We can observe that the errors can be kept quite small because in the temporal compression algorithm, LNs and layer-1 PNs will periodically report complete data to their upper PNs.

6

C

ONCLUSIONS

In this paper, we have proposed an MRCQ framework to provide multiresolution data compression and data storage in a WSN by spatial and temporal coding techniques. The proposed multiresolution idea can significantly extend a WSN’s lifetime, especially in long-term monitoring applica-tions with a slowly changed environment. Our in-network compression algorithms adopt the concepts of DCT and differential coding to reduce data redundancy. Our storage algorithm helps sensor nodes to store historical data in their small memories by a reverse-exponential solution. We have implemented a prototyping system on the MICAz platform to demonstrate the flexibility of MRCQ. Extensive simulation results have also been presented to verify the efficiency of MRCQ. They show that our MRCQ framework can flexibly adjust the amount of data transmission according to the environmental stability and preserve important character-istics of sensing reports.

A

CKNOWLEDGMENTS

Y.-C. Tseng’s research is cosponsored by MoE ATU Plan, by NSC grants 95-2221-E-009-058-MY3, 2218-E-009-004, 96-2219-E-007-008, 97-3114-E-009-001, 97-2221-E-009-142-MY3, and 97-2218-E-009-026, by MOEA under grant 94-EC-17-A-04-S1-044, by ITRI, Taiwan, and by III, Taiwan.

R

EFERENCES

[1] R. Szewczyk, E. Osterweil, J. Polastre, M. Hamilton, A. Mainwaring, and D. Estrin, “Habitat Monitoring with Sensor Networks,” Comm. ACM, vol. 47, no. 6, pp. 34-40, 2004. [2] R. Szewczyk, A. Mainwaring, J. Polastre, J. Anderson, and

D. Culler, “An Analysis of a Large Scale Habitat Monitoring Application,” Proc. ACM Int’l Conf. Embedded Networked Sensor Systems (SenSys ’04), pp. 214-226, 2004.

[3] G. Barrenetxea, F. Ingelrest, G. Schaefer, M. Vetterli, O. Couach, and M. Parlange, “SensorScope: Out-of-the-Box Environmental Monitoring,” Proc. IEEE Int’l Conf. Information Processing in Sensor Networks (IPSN ’08), pp. 332-343, 2008.

[4] I.F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “A Survey on Sensor Networks,” IEEE Comm. Magazine, vol. 40, no. 8, pp. 102-114, Aug. 2002.

[5] S. Helal, W. Mann, H. El-Zabadani, J. King, Y. Kaddoura, and E. Jansen, “The Gator Tech Smart House: A Programmable Pervasive Space,” Computer, vol. 38, no. 3, pp. 50-60, Mar. 2005. [6] C.C.Y. Poon, Y.T. Zhang, and S.D. Bao, “A Novel Biometrics

Method to Secure Wireless Body Area Sensor Networks for Telemedicine and M-Health,” IEEE Comm. Magazine, vol. 44, no. 4, pp. 73-81, Apr. 2006.

[7] Y.C. Tseng, Y.C. Wang, K.Y. Cheng, and Y.Y. Hsieh, “iMouse: An Integrated Mobile Surveillance and Wireless Sensor System,” Computer, vol. 40, no. 6, pp. 60-66, June 2007.

[8] C.T. Ee and R. Bajcsy, “Congestion Control and Fairness for Many-to-One Routing in Sensor Networks,” Proc. ACM Int’l Conf. Embedded Networked Sensor Systems (SenSys ’04), pp. 148-161, 2004. [9] D. Ganesan, B. Greenstein, D. Perelyubskiy, D. Estrin, and

J. Heidemann, “An Evaluation of MultiResolution Storage for Sensor Networks,” Proc. ACM Int’l Conf. Embedded Networked Sensor Systems (SenSys ’03), pp. 89-102, 2003.

[10] D. Ganesan, D. Estrin, and J. Heidemann, “Dimensions: Why Do We Need a New Data Handling Architecture for Sensor Net-works?” ACM SIGCOMM Computer Comm. Rev., vol. 33, no. 1, pp. 143-148, Jan. 2003.

[11] D. Ganesan, B. Greenstein, D. Estrin, J. Heidemann, and R. Govindan, “Multiresolution Storage and Search in Sensor Networks,” ACM Trans. Storage, vol. 1, no. 3, pp. 277-315, 2005.

[12] T.A. Welch, “A Technique for High-Performance Data Compres-sion,” Computer, vol. 17, no. 6, pp. 8-19, June 1984.

[13] C.M. Sadler and M. Martonosi, “Data Compression Algorithms for Energy-Constrained Devices in Delay Tolerant Networks,” Proc. ACM Int’l Conf. Embedded Networked Sensor Systems (SenSys ’06), pp. 265-278, 2006.

[14] D.S. Taubman and M.W. Marcellin, JPEG2000: Fundamentals, Standards, and Practice. Kluwer Academic Publishers, 2002. [15] R.M. Rao and A.S. Bopardikar, Wavelet Transforms: Introduction to

Theory and Applications. Addison Wesley Publications, 1998. [16] G. Davis, “Wavelet Image Compression Construction Kit,”

http://www.geoffdavis.net/dartmouth/wavelet/wavelet.html, 2009.

[17] D. Slepian and J.K. Wolf, “Noiseless Coding of Correlated Information Sources,” IEEE Trans. Information Theory, vol. 19, no. 4, pp. 471-480, July 1973.

[18] A.H. Kaspi and T. Berger, “Rate-Distortion for Correlated Sources with Partially Separated Encoders,” IEEE Trans. Information Theory, vol. 28, no. 6, pp. 828-840, Nov. 1982.

[19] R. Cristescu, B. Beferull-Lozano, and M. Vetterli, “Networked Slepian-Wolf: Theory, Algorithms, and Scaling Laws,” IEEE Trans. Information Theory, vol. 51, no. 12, pp. 4057-4073, Dec. 2005. [20] S.S. Pradhan, J. Kusuma, and K. Ramchandran, “Distributed

Compression in a Dense Microsensor Network,” IEEE Signal Processing Magazine, vol. 19, no. 2, pp. 51-60, Mar. 2002.

Fig. 15. Effect of the temporal compression algorithm. (a) The amount of data transmission. (b) The average errors.

(12)

[21] D. Donoho, “Compressed Sensing,” IEEE Trans. Information Theory, vol. 52, no. 4, pp. 1289-1306, Apr. 2006.

[22] J. Haupt, W.U. Bajwa, M. Rabbat, and R. Nowak, “Compressed Sensing for Networked Data,” IEEE Signal Processing Magazine, vol. 25, no. 2, pp. 92-101, Mar. 2008.

[23] S. Madden, M.J. Franklin, J.M. Hellerstein, and W. Hong, “TAG: A Tiny Aggregation Service for Ad-Hoc Sensor Networks,” ACM SIGOPS Operating Systems Rev., vol. 36, pp. 131-146, 2002. [24] S. Lindsey, C. Raghavendra, and K.M. Sivalingam, “Data

Gathering Algorithms in Sensor Networks Using Energy Me-trics,” IEEE Trans. Parallel and Distributed Systems, vol. 13, no. 9, pp. 924-935, Sept. 2002.

[25] R. Kumar, M. Wolenetz, B. Agarwalla, J. Shin, P. Hutto, A. Paul, and U. Ramachandran, “DFuse: A Framework for Distributed Data Fusion,” Proc. ACM Int’l Conf. Embedded Networked Sensor Systems (SenSys ’03), pp. 114-125, 2003.

[26] C. Intanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, and F. Silva, “Directed Diffusion for Wireless Sensor Networking,” IEEE/ACM Trans. Networking, vol. 11, no. 1, pp. 2-16, Feb. 2003. [27] K.W. Fan, S. Liu, and P. Sinha, “Structure-Free Data Aggregation

in Sensor Networks,” IEEE Trans. Mobile Computing, vol. 6, no. 8, pp. 929-942, Aug. 2007.

[28] N. Ahmed, T. Natarajan, and K.R. Rao, “Discrete Cosine Transfom,” IEEE Trans. Computers, vol. 23, no. 1, pp. 90-93, Jan. 1974.

[29] Crossbow, “MOTE-KIT2400—MICAz Developer’s Kit,” http:// www.xbow.com, 2009.

You-Chiun Wang received the BEng and MEng degrees in computer science and information engineering from the National Chung-Cheng University and the National Chiao-Tung Univer-sity, Taiwan, in 2001 and 2003, respectively and the PhD degree in computer science from the National Chiao-Tung University, Taiwan, in October 2006. Currently, he is a postdoctoral research associate at the Department of Com-puter Science, National Chiao-Tung University, Taiwan. His research interests include wireless network and mobile computing, communication protocols, and wireless sensor networks. He is a member of the IEEE.

Yao-Yu Hsieh received the MS degree in computer science from the National Chiao-Tung University, Taiwan, in 2007. He is a software engineer at Realtek Semiconductor Corp., Hsinchu Science-based Industrial Park, Taiwan. His research interests include wireless commu-nication and mobile computing, mobile ad hoc networks, wireless sensor networks, and Ether-net protocols.

Yu-Chee Tseng received the PhD degree in computer and information science from Ohio State University in January 1994. He is a professor (2000-preset), chairman (2005-pre-sent), and an associate dean (2007-present) at the Department of Computer Science, National Chiao-Tung University, Taiwan. He is also adjunct chair professor at Chung-Yuan Christian University (2006-present). He received the Out-standing Research Award, by the National Science Council, ROC, in both 2001-2002 and 2003-2005, the Best Paper Award by the Int’l Conf. Parallel Processing in 2003, the Elite I.T. Award in 2004, and the Distinguished Alumnus Award by Ohio State University, in 2005. His research interests include mobile computing, wireless communication, and parallel and distributed computing. He serves on the editorial boards for Telecommunications Systems (2005-present), IEEE Transactions on Vehicular Technology (2005-(2005-present), IEEE Transactions on Mobile Computing (2006-present), and IEEE Transactions on Parallel and Distributed Systems (2008-present). He is a senior member of the IEEE.

. For more information on this or any other computing topic, please visit our Digital Library at www.computer.org/publications/dlib.

數據

Fig. 1. Indoor temperatures collected by four sensor nodes during a day.
Fig. 2 illustrates the system architecture of our MRCQ framework. We assume that sensor nodes are  homoge-neous and they are arbitrarily deployed in the sensing field
Fig. 3. An example of RZS with compression ratio  ¼ 20 25 ¼ 0:8.
Fig. 4. Layer-i compression scheme.
+7

參考文獻

相關文件

• Compare ρESDP as solved by LPCGD method with ESDP as solved by Sedumi 1.05 Sturm (with the interface to Sedumi coded by Wang et al )... Left: Soln of ρESDP found by

The simulation environment we considered is a wireless network such as Fig.4. There are 37 BSSs in our simulation system, and there are 10 STAs in each BSS. In each connection,

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

Krishnamachari and V.K Prasanna, “Energy-latency tradeoffs for data gathering in wireless sensor networks,” Twenty-third Annual Joint Conference of the IEEE Computer

When Zigbee network is operating, Router will keep update request to Sensor, by which the sensed data will be transmitted through Router to Coordinator and then transformed by

The dynamic feature points are roughly clustered by the C-means algorithm and then a spatial-temporal shortest spanning tree is proposed to segment each

Connected Component for CDM image Color Edge Detection. Combine spatial

Many kinds of sensors like sound sensor, light sensor, temperature/humidity sensor and infrared sensor are used in the hardware system to imitate the sense organs of