• 沒有找到結果。

Efficient in-network moving object tracking in wireless sensor networks

N/A
N/A
Protected

Academic year: 2021

Share "Efficient in-network moving object tracking in wireless sensor networks"

Copied!
13
0
0

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

全文

(1)

Efficient In-Network Moving Object Tracking

in Wireless Sensor Networks

Chih-Yu Lin, Student Member, IEEE, Wen-Chih Peng, Member, IEEE, and

Yu-Chee Tseng, Senior Member, IEEE

Abstract—The rapid progress of wireless communication and embedded microsensing MEMS technologies has made wireless sensor networks possible. In light of storage in sensors, a sensor network can be considered as a distributed database, in which one can conduct in-network data processing. An important issue of wireless sensor networks is object tracking, which typically involves two basic operations: update and query. This issue has been intensively studied in other areas, such as cellular networks. However, the in-network processing characteristic of sensor in-networks has posed new challenges to this issue. In this paper, we develop several tree structures for in-network object tracking which take the physical topology of the sensor network into consideration. The optimization process has two stages. The first stage tries to reduce the location update cost based on a deviation-avoidance principle and a highest-weight-first principle. The second stage further adjusts the tree obtained in the first stage to reduce the query cost. The way we model this problem allows us to analytically formulate the cost of object tracking given the update and query rates of objects. Extensive simulations are conducted, which show a significant improvement over existing solutions.

Index Terms—Object tracking, in-network processing, sensor network, data aggregation, mobile computing.

æ

1

I

NTRODUCTION

T

HE rapid progress of wireless communication and

embedded microsensing MEMS technologies has made wireless sensor networks possible. Such environments may have many inexpensive wireless nodes, each capable of collecting, processing, and storing environmental informa-tion, and communicating with neighboring nodes. In the past, sensors are connected by wire lines. Today, this environment is combined with the novel ad hoc networking technology to facilitate intersensor communication [11], [12]. The flexibility of installing and configuring a sensor network is thus greatly improved. Recently, a lot of research activities have been dedicated to sensor networks [4], [5], [6], [7], [8], [9], [13], [14].

Object tracking is an important application of wireless sensor networks (e.g., military intrusion detection and habitat monitoring). Existing research efforts on object tracking can be categorized in two ways. In the first category, the problem of accurately estimating the location of an object is addressed [1], [10]. In the second category, in-network data processing and data aggregation for object tracking are discussed [8], [15]. The main theme of this paper is to propose a data aggregation model for object tracking. Object tracking typically involves two basic operations: update and query. In general, updates of an object’s location are initiated when the object moves from one sensor to another. A query is invoked each time when there is a need to find the location of an interested object.

Location updates and queries may be done in various ways. A naive way for delivering a query is to flood the whole network. The sensor whose sensing range contains the queried object will reply to the query. Clearly, this approach is inefficient because a considerable amount of energy will be consumed when the network scale is large or when the query rate is high. Alternatively, if all location information is stored at a specific sensor (e.g., the sink), no flooding is needed. But, whenever a movement is detected, update messages have to be sent. One drawback is that when objects move frequently, abundant update messages will be generated. The cost is not justified when the query rate is low. Clearly, these are trade-offs.

In [8], a Drain-And-Balance (DAB) tree structure is proposed to address this issue. As far as we know, this is the first in-network object tracking approach in sensor networks where query messages are not required to be flooded and update messages are not always transmitted to the sink. However, [8] has two drawbacks. First, a DAB tree is a logical tree not reflecting the physical structure of the sensor network; hence, an edge may consist of multiple communication hops and a high communication cost may be incurred. Second, the construction of the DAB tree does not take the query cost into consideration. Therefore, the result may not be efficient in some cases.

To relieve the aforementioned problems, we propose a new tree structure for in-network object tracking in a sensor network. The location update part of our solution can be viewed as an extension of [8]. In particular, we take the physical topology of the sensor network into consideration. We take a two-stage approach. The first stage aims at reducing the update cost, while the second stage aims at further reducing the query cost. For the first stage, several principles, namely, deviation-avoidance and highest-weight-first ones, are pointed out to construct an object . The authors are with the Department of Computer Science, National Chiao

Tung University, No., 1001, Ta Hseueh Rd., Hsinchu, Taiwan 300, R.O.C. E-mail: {lincyu, wcpeng, yctseng}@csie.nctu.edu.tw.

Manuscript received 15 Dec. 2004; revised 31 May 2005; accepted 21 June 2005; published online 15 June 2006.

For information on obtaining reprints of this article, please send e-mail to: tmc@computer.org, and reference IEEECS Log Number TMC-0343-1204.

(2)

tracking tree to reduce the communication cost of location update. Two solutions are proposed: Deviation-Avoidance Tree (DAT) and Zone-based Deviation-Avoidance Tree (Z-DAT). The latter approach tries to divide the sensing area into square-like zones, and recursively combine these zones into a tree. Our simulation results indicate that the Z-DAT approach is very suitable for regularly deployed sensor networks. For the second stage, we develop a Query Cost Reduction (QCR) algorithm to adjust the object tracking tree obtained in the first stage to further reduce the total cost.

The way we model this problem allows us to analytically formulate the update and query costs of the solution based on several parameters of the given problem, such as rates that objects cross the boundaries between sensors and rates that sensors are queried. We have also conducted extensive simulations to evaluate the proposed solutions. The results do validate our observations.

Several other tracking-related problems have also been studied, but they can be considered independent issues from our work. The authors in [14] explored a localized prediction approach for power efficient object tracking by putting unnecessary sensors in sleep mode. Techniques for co-operative tracking by multiple sensors have been addressed in [1], [3], [10], [15]. In [3], a dynamic clustering architecture that exploits signal strength observed by sensors is proposed to identify the set of sensors to track an object. In [15], a convoy tree is proposed for object tracking using data aggregation to reduce energy consumption.

The rest of this paper is organized as follows: Prelimin-aries are given in Section 2. DAT, Z-DAT, and QCR algorithms are presented in Section 3. Performance studies are conducted in Section 4. This paper concludes with Section 5.

2

P

RELIMINARIES

We consider a wireless sensor network deployed in a field for the purpose of object tracking. Sensors’ locations are already known at a special node, called sink, which serves as

the gateway of the sensor network to the outside world. We adopt a simple nearest-sensor model, which only requires the sensor that receives the strongest signal from the object to report to the sink (this can be achieved by [3]). Therefore, the sensing field can be partitioned into a Voronoi graph [2], as depicted in Fig. 1a, such that every point in a polygon is closer to its corresponding sensor in that polygon than to any other. In practice, a sensor under our model may represent the clusterhead of a cluster of reduced-function sensors. In this work, however, we are only interested in the reporting behavior of these clusterheads.

Our goal is to propose a data aggregation model for object tracking. We assume that whenever an object arrives at or departs from the sensing range (polygon) of a sensor, a detection event will be reported (note that this update message are not always forwarded to the sink, as will be elaborated later). Two sensors are called neighbors if their sensing ranges share a common boundary on the Voronoi graph; otherwise, they are nonneighbors. Multiple objects may be tracked concurrently in the network, and we assume that from mobility statistics, it is possible to collect the event rate between each pair of neighboring sensors to represent the frequency of objects travelling from one sensor to another. For example, in Fig. 1a, the arrival and departure rates between sensors are shown on the edges of the Vonoroi graph. In addition, the communication range of sensors is assumed to be large enough so that neighboring sensors (in terms of their sensing ranges) can communicate with each other directly. Thus, the network topology can be regarded as an undirected weighted graph G ¼ ðVG; EGÞ

with VG representing sensors and EG representing links

between neighboring sensors. The weight of each link ða; bÞ 2 EG, denoted by wGða; bÞ, is the sum of event rates

from a to b and b to a. This is because both arrival and departure events will be reported in our scheme. In fact, G is a Delaunay triangulation of the network [2]. Fig. 1b shows the corresponding Delaunay triangulation of the sensor network in Fig. 1a.

Fig. 1. (a) The Voronoi graph of a sensor network. The arrival and departure rates between sensors are the numbers associated with arrows. (b) The graph G corresponding to the sensor network in (a). The number labeled on each edge represents its weight.

(3)

In light of the storage in sensors, the sensor network is able to be viewed as a distributed database. We will exploit the possibility of conducting in-network data aggregation for object tracking in a sensor network. Similar to the approach in [8], a logical weighted tree T will be constructed from G. For example, Fig. 2a shows an object tracking tree T constructed from the network G in Fig. 1b. Movement events of objects are reported based on the following rules. Each node a in T will maintain a detected list DDLa¼ ðL0; L1; . . . ; LkÞ such that L0 is the set of objects

currently inside the coverage of sensor a itself, and Li; i¼ 1;    ; k, is the set of objects currently inside the

coverage of any sensor who is in the subtree rooted at the ith child of sensor a, where k is the number of children of a. When an object o moves from the sensing range of a to that of b (ða; bÞ 2 EG), a departure event depðo; a; bÞ and an

arrival event arvðo; b; aÞ will be reported by a and b, respectively, alone the tree T . On receiving such an event, a sensor x takes the following actions:

. If the event is depðo; a; bÞ, x will remove o from the proper Li in DDLxsuch that sensor a belongs to the

ithsubtree of x in T . If x ¼ a, o will be removed from L0in DDLx. Then x checks whether sensor b belongs

to the subtree rooted at x in T or not. If not, the event depðo; a; bÞ is forwarded to the parent node of x in T . . If the event is arvðo; b; aÞ, x will add o to the proper

Li in DDLx such that sensor b belongs to the

ithsubtree of x in T . If x ¼ b, o will be added to L0

in DDLx. Then x checks whether sensor a belongs to

the subtree rooted at x in T or not. If not, the event arvðo; b; aÞ is forwarded to the parent node of x in T . The above data aggregation model guarantees that, disregarding transmission delays, the data structure DDLi

always maintains the objects under the coverage of any descendant of sensor i in T . Therefore, searching the location of an object can be done efficiently in T ; a query is only required to be forwarded to a proper subtree and no flooding is needed. For example, Fig. 2a shows the

forwarding path of a query for Car1 in T . Fig. 2b shows the reporting events as Car1 and Car2 move and the forwarding path of a query for the new location of Car1.

Our goal in this paper is to construct an object tracking tree T ¼ ðVT; ETÞ that incurs the lowest communication cost

given a sensor network G ¼ ðVG; EGÞ and the corresponding

event rates and query rates, where VT ¼ VGand ETconsists

of jVTj  1 edges with the sink as the root. Intuitively, T is a

logical tree constructed from G, in which each edge ðu; vÞ 2 T is one of the shortest paths connecting sensors u and v in G. Therefore, the weight of each edge ðu; vÞ in T , denoted by wTðu; vÞ, is modeled by the minimum hop count between u

and v in G. The cost function can be formulated as CðT Þ ¼ UðT Þ þ QðT Þ, where UðT Þ denotes the update cost and QðT Þ is the query cost.

Table 1 summaries the notations used in this paper.

3

T

REE

C

ONSTRUCTION

A

LGORITHMS

This section presents our algorithms for constructing efficient object tracking trees. In Section 3.1, we develop algorithm DAT targeted at reducing the update cost. Then, in Section 3.2, based on the concept of divide-and-conquer, we devise algorithm Z-DAT to further reduce the update cost. In Section 3.3, algorithm QCR is developed to adjust the tree obtained by algorithm DAT/Z-DAT to further reduce the total cost.

3.1 Algorithm DAT (Deviation-Avoidance Tree)

Object tracking typically involves two basic operations: update and query. Based on the aggregation model in Section 2, updates will be initiated when an object o moves from sensor a to sensor b. It can be seen that both the departure event depðo; a; bÞ and the arrival event arvðo; b; aÞ will be forwarded to the root of the minimum subtree containing both a and b. Therefore, the update cost UðT Þ of a tree T can be formulated by counting the average number of messages transmitted in the network per unit time: Fig. 2. (a) An object tracking tree T , where the dotted lines are the forwarding path of a query for Car1. (b) The events generated as Car1 moves from sensor K to G and Car2 moves from H to C.

(4)

UðT Þ ¼ X

ðu;vÞ2EG

wGðu; vÞ

 ðdistTðu; lcaðu; vÞÞ þ distTðv; lcaðu; vÞÞÞ; ð1Þ

where lcaðu; vÞ denotes the root of the minimum subtree in

T that includes both u and v (from now on, we will call

lcaðu; vÞ the lowest common ancestor of u and v), and distTðx; yÞ is the sum of weights of the edges on the path

connecting x and y in T . For example, in Fig. 2a, distTðF ; KÞ ¼ wTðF ; IÞ þ wTðI; JÞ þ wTðJ; KÞ ¼ 3. In order

to identify which factors affecting the value of UðT Þ, we show that UðT Þ also can be formulated in a different way as follows:

Theorem 1.Given any logical tree T of the sensor network G, we have UðT Þ ¼ X ðpðvÞ;vÞ2ET wTðpðvÞ; vÞ  X ðx;yÞ2EG^x2SubtreeðvÞ ^y =2 SubtreeðvÞ wGðx; yÞ 0 B @ 1 C A; ð2Þ where SubtreeðvÞ is the subtree of T rooted at node v and pðvÞ is the parent of v.

Proof.This can be proved by observing which events will be reported along an edge in T . Given ðpðvÞ; vÞ 2 ET, for any

ðx; yÞ 2 EG, where x 2 SubtreeðvÞ and y =2 SubtreeðvÞ,

since the lowest common ancestor of x and y must not in SubtreeðvÞ, any event generated on ðx; yÞ will be transmitted from v to pðvÞ. Otherwise, no message will be transmitted from v to pðvÞ. This leads to the theorem. tu From (1) and (2), we make three observations about UðT Þ:

. Equation (1) contains the factor distTðu; lcaðu; vÞÞ. Its

minimal value is distGðu; lcaðu; vÞÞ, which denotes

the minimum hop count between sensor u and sensor lcaðu; vÞ in G. Therefore, we would expect that distTðu; sinkÞ ¼ distGðu; sinkÞ for each u 2 VG;

otherwise, we say that u deviates from its shortest path to the sink. If distTðu; sinkÞ ¼ distGðu; sinkÞ for

each u 2 VG, we say that tree T is a

deviation-avoidance tree. Fig. 3 shows four possible object tracking trees for the graph G in Fig. 1b. The one in Fig. 3b is not a deviation-avoidance tree since

distTðE; AÞ ¼ 3 > distGðE; AÞ ¼ 2. The other three

are deviation-avoidance trees.

. Equation (2) contains the factor wTðu; vÞ. Its minimal

value is 1 when u 6¼ v. Consequently, it is desirable that each sensor’s parent is one of its neighbors. Only the tree in Fig. 3d satisfies this criterion. By selecting neighboring sensors as parents, the average value of distTðu; lcaðu; vÞÞ þ distTðv; lcaðu; vÞÞ in (1)

can be minimized. For example, the average values of distTðu; lcaðu; vÞÞ þ distTðv; lcaðu; vÞÞ are 3.591,

2.864, and 2.227 for the trees in Fig. 3a, Fig. 3c, and Fig. 3d, respectively.

. In (1), the weight wGðu; vÞ will be multiplied by

distTðu; lcaðu; vÞÞ þ distTðv; lcaðu; vÞÞ. For two edges

ðu; vÞ and ðu0; v0Þ 2 E

Gsuch that wGðu; vÞ > wGðu0; v0Þ,

it is desirable that

distTðu; lcaðu; vÞÞ þ distTðv; lcaðu; vÞÞ

< distTðu0; lcaðu0; v0ÞÞ þ distTðv0; lcaðu0; v0ÞÞ:

Combining this observation with the second obser-vation, an edge ðu; vÞ with a higher wGðu; vÞ should

be included into T as early as possible and pðvÞ should be set to u if distGðu; sinkÞ < distGðv; sinkÞ,

and vice versa. We call this the highest-weight-first principle.

Based on above observations, we develop our algorithm DAT. Initially, DAT treats each node as a singleton subtree. Then we will gradually include more links to connect these subtrees together. In the end, all subtrees will be connected into one tree T . The detailed algorithm is shown in Algorithm 1, where notation rootðxÞ represents the root of the temporary subtree that contains x. To begin with, EGis

sorted into a list L in a decreasing order of links’ weights. Based on the third observation, algorithm DAT will examine edges in L one by one for possibly being included into tree T . For each edge ðu; vÞ in L being examined by algorithm DAT, ðu; vÞ will be included into T only if u and v are currently located in different subtrees. Also, ðu; vÞ will be included into T only if at least one of u and v is currently the root of its temporary subtree and the other is on a shortest path in G from the former node to the sink (these conditions are reflected by the if statements in lines 5 and 7). An edge in G passing these checks will then be included into T . Note that without these conditions, deviations may TABLE 1

(5)

occur. It can be seen that T is always a subgraph of G and wTðu; vÞ ¼ 1 for all ðu; vÞ 2 ET. For example, Fig. 4a is a

snapshot of an execution of DAT. When ðF ; GÞ is examined by DAT, it will not be included into T because neither F nor Gis the root of its temporary subtree. Another snapshot is shown in Fig. 4b. When ðB; DÞ is examined, it will not be

included into T . Although D is the root of its temporary subtree, B is not on the shortest path from D to A, i.e., distGðD; AÞ 6¼ distGðB; AÞ þ 1. ðA; DÞ will be then examined

after ðB; DÞ. ðA; DÞ can be included into T , because D is the root of its temporary subtree and A is on the shortest path from D to A.

Fig. 3. Four possible location tracking trees for the graph in Fig. 1(b).

(6)

Algorithm 1DAT(G)

1: Let T ¼ ðVT; ETÞ such that VT ¼ VGand ET¼ 

2: Sort EGinto a list L in a decreasing order of their event

rates.

3: for each ðu; vÞ 2 EGin L do

4: if ðrootðuÞ 6¼ rootðvÞÞ then

5: if ðu ¼ rootðuÞÞ ^ ðdistGðu; sinkÞ ¼ distGðv; sinkÞ þ 1Þ

then

6: Let ET ¼ ET[ ðu; vÞ and let the root of the new

subtree be rootðvÞ.

7: else if ðv ¼ rootðvÞÞ ^ ðdistGðv; sinkÞ ¼

distGðu; sinkÞ þ 1Þ then

8: Let ET ¼ ET[ ðu; vÞ and let the root of the new

subtree be rootðuÞ.

9: end if

10: end if

11: end for

Theorem 2. If G is connected, the tree T constructed by

algorithm DAT is a connected deviation-avoidance tree rooted at the sink.

Proof.First, we show that T is connected. Each sensor is the root of a singleton subtree in the beginning and we will prove that only one senor will be the root in the ending. Since G is connected, when a sensor x 6¼ sink is the root of a subtree (i.e., x ¼ rootðxÞ), it always can find a neighbor-ing sensor y such that distGðx; sinkÞ ¼ distGðy; sinkÞ þ 1.

It is clear that rootðyÞ 6¼ x because

distGðrootðyÞ; sinkÞ  distGðy; sinkÞ:

Hence, edge ðx; yÞ can be included into T , and x will not be the root anymore. By repeating such arguments, T will be connected and rooted at the sink. Second, we show that T is a deviation-avoidance tree. This can be derived from two observations. First, when an edge ðu; vÞ is included into T , DAT will choose v as the child of u if distGðv; sinkÞ is larger than distGðu; sinkÞ, and vice versa.

Therefore, if the path from the sink to sensor u is one of the shortest paths, the path from the sink to sensor v is also one of the shortest paths. Second, assuming distGðv; sinkÞ ¼ distGðu; sinkÞ þ 1, DAT will include

ðv; uÞ only when v itself is the root of a subtree. This guarantees that all descendant nodes in SubtreeðvÞ will not deviate from their shortest paths to the sink. Hence,

the theorem follows. tu

3.2 Algorithm Z-DAT (Zone-Based

Deviation-Avoidance Tree)

The Z-DAT is derived based on the following locality concept. Assume that u is v0sparent in T . According to (2), for any edge

ðx; yÞ 2 EG such that x 2 SubtreeðvÞ and y =2 SubtreeðvÞ,

arrival/departure events between x and y will cause a message to be transmitted on ðpðvÞ; vÞ, thus increasing the value of Pðx;yÞ2EG^x2SubtreeðvÞ^y =2 SubtreeðvÞwGðx; yÞ. Therefore,

the perimeter that bounds the sensing area of sensors in each SubtreeðvÞ will impact the update cost UðT Þ. A longer perimeter would imply more events crossing the boundary. For example, in the three subtrees in Fig. 5, although all subtrees have the same number of sensors, the perimeter of the subtree in Fig. 5a is smaller than that in Fig. 5b, which is in turn less than that in Fig. 5c. In geometry, it is clear that a circle has the shortest perimeter to cover the same area as compared with other shapes. Circle-like shapes, however, are difficult to be used in an iterative tree construction. As a result, Z-DAT will be developed based on square-like zones. Z-DAT is derived based on the deviation-avoidance principle and the above locality concept. The algorithm builds T in an iterative manner based on two parameters,  and , where  is a power of 2 and  is a positive integer. To begin with, Z-DAT first uses ð  1Þ horizontal lines to divide the sensing field into  strips. For each horizontal line between two strips, we are allowed to further move it up and down within a distance no more than  units. This gives 2 þ 1 possible locations of each horizontal line. For each location of the horizontal line, we can calculate the total event rate that objects may move across the line. Then we pick the line with the lowest total event rate as its final location. After all horizontal lines are determined, we then further partition the sensing field into 2 regions by using

ð  1Þ vertical lines. Following the adjustment as above, each vertical line is also allowed to move left and right within a distance no more than  units and the one with the lowest total event rate is selected as its final location.

After the above steps are completed, the sensing field is divided into 2square-like zones. First, we run DAT on the

sensors in each zone. This will result in one or multiple subtrees in each zone. Next, we will merge subtrees in the above 2 zones recursively as follows: First, we combine

these zones together into 2



2 larger zones, such that each

larger zone contains 2  2 neighboring zones. Then, we merge subtrees in these 2  2 zones by sorting all interzone edges (i.e., edges connecting these 2  2 zones) according to Fig. 5. Possible structures of subtrees with nine sensors.

(7)

their event rates into a list L and feeding L to steps 3  11 of the original DAT algorithm. Second, we further combine the above larger zones together into 

4 

4 even larger zones,

such that each even larger zone contains 2  2 neighboring larger zones. This process is repeated until one single tree is obtained. The algorithm is summarized in Algorithm 2. An illustrated example is shown in Fig. 6.

Algorithm 2 Z-DATðG; ; Þ

1: Divide the network into    zones based on parameters and .

2: Run DAT on the sensors in each zone. 3: i 1

4: while  2i 6¼ 0 do

5: The network is divided into 

2i2i zones.

6: Run DAT on each zone to merge its subtrees.

7: i i þ 1

8: end while

To summarize, Z-DAT is similar to DAT except that it examines links of EGin a different order. By partitioning the

sensing field into zones, each subtree in T is likely to cover a square-like region, thus avoiding the problem pointed out in Fig. 5. Also, by using the parameter  to fine-tune the lowest-level zones, Z-DAT tends to avoid high-weight links becoming interzone edges. In fact, this is a consequence of the highest-weight-first design principle.

Theorem 3. If G is connected, the tree T constructed by

algorithm Z-DAT is a connected deviation-avoidance tree rooted at the sink.

Proof.Z-DAT will examine all links of G, but in a different order from DAT. However, the proof of Theorem 3 is independent of the order of the links being examined for being included into T . Therefore, the same proof is still

applicable here. tu

3.3 Algorithm QCR (Query Cost Reduction)

The above DAT and Z-DAT only try to reduce the update cost. The query cost is not taken into account. QCR is designed to reduce the total update and query cost by adjusting the object tracking tree obtained by DAT/Z-DAT. To begin with, we define the query rate qðvÞ of each sensor v

as the average number of queries that refer to objects within the sensing range of v per unit time in statistics.

Given a tree T , we first derive its query cost QðT Þ. Suppose that an object x is within the sensing range of v. When x is queried, if v is a nonleaf node, the query message is required to be forwarded to v since pðvÞ only indicates that x is in the subtree rooted at v. On the other hand, if v is a leaf node, the query message only has to be forwarded to pðvÞ because sensor pðvÞ knows that the object is currently monitored by v. The following equation gives QðT Þ by taking into account the number of hops that query requests and query replies have to travel on T .

QðT Þ ¼ 2 X v2VT ^ v=2leaf node qðvÞ  distTðv; sinkÞ þ X v2VT ^ v2leaf node qðvÞ  distTðpðvÞ; sinkÞ 0 B @ 1 C A: ð3Þ We make two observations on QðT Þ. First, because distTðpðvÞ; sinkÞ is always smaller than distTðv; sinkÞ, (3)

indicates that placing a node as a leaf can save the query cost instead of placing it as a nonleaf. For example, when query rates are extremely high, it is desirable that every node will become a leaf node and T will become a star-like graph. Second, the second term in (3) implies that the value of distTðpðvÞ; sinkÞ should be made as small as possible. Thus,

we should choose a node closer to the sink as v0s parent (however, this is at the expense of the update cost).

Based on the above observations, QCR tries to adjust the tree T obtained by DAT or Z-DAT. In QCR, we examine T in a bottom-up manner and try to adjust the location of each node in T by the following operations.

1. If a node v is not a leaf node, we can make it a leaf by cutting the links to its children and connecting each of its children to pðvÞ. (Note that we can do so because T is regarded as a logical tree.) Let T0be the new tree after modification. We derive that

CðT Þ  CðT0Þ ¼ QðT Þ  QðT0Þ þ UðT Þ  UðT0Þ ¼ 2  qðvÞ þ X i2childrenðvÞ^ i2leaf node qðiÞ 0 B @ 1 C A  X i2neighborsðvÞ ^i2SubtreeðvÞ wGðx; iÞ  X i2childrenðvÞ X ðx;yÞ2EG^y =2SubtreeðiÞ ^x2SubtreeðiÞ wGðx; yÞ 0 B @ 1 C A þ X ðx;yÞ2EG^y =2SubtreeðvÞ ^x2SubtreeðvÞ^x6¼v wGðx; yÞ: ð4Þ The derivation of (4) is in Appendix A. If the amount

of reduction is positive, we replace T by T0.

Otherwise, we keep T unchanged. Fig. 7 illustrates this operation.

Fig. 6. An example of the Z-DAT algorithm with ¼ 4. (a) In the first iteration, we divide the field into   zones and adjust their boundaries according to . (b) In the second iteration, each 2 2 neighboring zones is combined into a larger zone.

(8)

2. If a node v is a leaf node, we can make pðvÞ closer to the sink by cutting v0slink to its current parent pðvÞ

and connect v to its grandparent pðpðvÞÞ. Let T0 be the new tree. We derive that

CðT Þ  CðT0Þ ¼ QðT Þ  QðT0Þ þ UðT Þ  UðT0Þ ¼ 2  qðvÞ þ qð 0ðvÞÞ  2 X ðx;yÞ2EG^y=2SubtreeðvÞ^ x2SubtreeðvÞ^y2SubtreeðpðvÞÞ wGðx; yÞ 0 B @ 1 C A; ð5Þ where

q0ðvÞ ¼ 0 if pðvÞ has more than one child in T

qðpðvÞÞ otherwise: 

ð6Þ The derivation of (5) is in Appendix A. If the amount

of reduction is positive, we replace T by T0.

Otherwise, T remains unchanged. Fig. 8 illustrates this operation.

Note that (4) and (5) allow us to compute the reduction of cost without computing UðT0Þ and QðT0Þ. This saves

computational overhead. Also note that T is examined in a bottom-up manner in a layer-by-layer manner. Nodes that are moved to an upper layer will have a chance to be reexamined. However, to avoid going back and forth, nodes that are not moved will not be reexamined.

For example, suppose that we are given a DAT tree in Fig. 9a (which is constructed from Fig. 1b), where the number labeled on each node is its query rate. When examining the bottom layer, we will apply Step 2 to sensors H, J, and K and obtain reductions of 1,974, -62, and -6, respectively. Hence, only H is moved upward as shown in Fig. 9b. When examining the second layer, we will apply Step 1 to sensor G and I and apply Step 2 to sensors C, E, and H. Only when applying to sensor H, it will result in a positive reduction of 1; 970. This updates the tree to Fig. 9c. Finally, sensors B, D, and F are examined. Only D has a positive reduction of 1,842. Thus, D will become a leaf and all its children are connected to D’s parent as shown in

Fig. 9d. Overall, the cost is reduced from 7,121 to 5,150, 3,180, and then 1,338 after each step, respectively.

4

S

IMULATION

R

ESULTS

We have simulated a sensing field of size 256  256. Unless otherwise stated, 4,096 sensors are deployed in the sensing field. Two deployment models are considered. In the first one, sensors are regularly deployed as a 64  64 grid-like network. In the second model, sensors are randomly deployed. In both models, the sink may be located near the center of the network or one corner of the network.

Event rates are generated based on a model similar to the city mobility model in [8]. Assuming the sensing field as a square of size r  r, the model divides the field into

2 2 subsquares called level-1 subregions. Each level-1

subregion is further divided into 2  2 subsquares called level-2 subregions. This process is repeated recursively. Given an object located in any position in the sensing field, it has a probability p1to leave its current level-1 subregion,

and a probability 1  p1 to stay. In the former case, the

object will move either horizontally or vertically with a distance of r=2. In the latter case, the object has a probability p2 to leave its current level-2 subregion, and a probability

1 p2 to stay. Again, in the former case, the object will

move either horizontally or vertically with a distance of r=22, and in the latter case it may cross level-3 subregions.

The process repeats recursively. The probability pi is

determined by an exponential probability pi¼ eC2

di

, where C is a positive constant and d is the total number of levels. In fact, the above behavior only formulates how Fig. 7. Making a nonleaf node v a leaf node.

Fig. 8. Connecting a leaf node vito pðpðviÞÞ.

(9)

objects move in the sensing field. After sensors are deployed in the network (no matter the sensors are deployed in a regular or random way), the movement patterns of these objects will generate event rates between neighboring sensors. Also, objects are queried by the sink with the same probability. Since objects may be located at different sensors with different probabilities, the query rates may vary in different sensors.

We compare our schemes with a naive scheme and the DAB scheme [8]. In the naive scheme, any update is sent to the sink (i.e., there is no in-network processing capability). In this case, the query cost is always zero, so it is preferable when the query rates are relatively high. For the DAB scheme, all sensors are considered leaf nodes, and a logical structure is used to connect these leaf nodes. When two subtrees are merged into one, the root of the subtree which is closer to the sink will become the root of the merged tree (note that this may still cause deviation).

First, we observe the advantage of using in-network processing to reduce update cost. Fig. 10 shows the result under different values of C for regular and random sensor deployment. As can be seen, a larger C implies a higher moving locality, thus leading to a lower update cost. The naive scheme has the highest update cost, which is reasonable. By exploiting the concept of deviation avoid-ance and taking the physical topology into account, DAT and Z-DAT further outperform DAB.

Next, we investigate the effect of deployment models. By comparing, the graphs in Fig. 10, we see that Z-DAT

outperforms DAT under regular deployment, but the advantage is almost negligible under random deployment. This is because maintaining the shapes of subtrees in Z-DAT is difficult. For example, Fig. 11 shows snapshots of DAT trees and Z-DAT trees under regular and random deploy-ments. As can be seen, Z-DAT does exploit the locality of sensors by partitioning sensors into zones under regular deployment. However, this is not true for the random case. To get further insight into the performance of Z-DAT, we vary  and , and show the results in Fig. 12, where a 4,096 and a 2,500-node sensor networks are simulated. Note that when  ¼ 1 and  ¼ 0, Z-DAT is equivalent to DAT. For regular deployment, Z-DAT performs well when  is larger than 4. However, for random deployment, the Z-DAT does not perform well because maintaining the shapes of subtrees in Z-DAT is difficult. Furthermore, it can be seen that when  ¼ 0, Z-DAT has better performance. This means that a square-like zone is better than a rectangle-like zone. Also, note that the trend in both 4,096 and 2,500-node sensors networks (the latter has a nonpower-of-2 number of nodes) are quite similar.

Next, we examine the query cost. The result is shown in Fig. 13. In general, the query cost increases linearly with the aggregate query rate. As mentioned earlier, the query cost of the naive scheme is always zero. Both query costs for DAT and Z-DAT are lower than that of DAB. This is attributed to the fact that query messages are always transmitted along the shortest paths between the sink and sensors in DAT and Z-DAT. Also due to the similar reason, the query cost is Fig. 10. Comparison of update costs. In the Z-DAT scheme, ¼ 8 and  ¼ 0. (a) Regular deployment, sink at a corner. (b) Regular deployment, sink at the center. (c) Random deployment, sink at a corner. (d) Random deployment, sink at the center.

(10)

independent of the shape of T ; thus, DAT and Z-DAT perform similarly despite the deployment models.

Finally, we examine the effectiveness of algorithm QCR by showing the total update and query costs of different schemes in Fig. 14. (For visual clarity, the cost of DAT are not shown.) The naive scheme has a constant cost because it is not affected by the query rate. The costs of DAB and Z-DAT increase linearly with respect to the query rate. As a result, they are outperformed by the naive scheme after the query rate reaches a certain level. Our Z-DAT with QCR scheme performs the best at all query rates. When the query rate is low, it performs close to Z-DAT. On the other hand, when the query rate increases, it works similar to the naive scheme. This verifies the advantage of the proposed DAT/ Z-DAT with QCR schemes.

5

C

ONCLUSIONS

In this paper, we have developed several efficient ways to construct a logical object tracking tree in a sensor network. We have shown how to organize sensor nodes as a logical tree so as to facilitate in-network data processing and to reduce the total communication cost incurred by object tracking. For the location update part, our work can be viewed as the extension of the work in [8], and we enhance the work by exploiting the physical structure of the sensor

network and the concept of deviation avoidance. In addition, we also consider the query operation and formulate the query cost of an object tracking tree given the query rates of sensors. In particular, our approach tries to strike a balance between the update cost and query cost. Performance analyses are presented with respect to factors such as moving rates and query rates. Simulation results show that by exploiting the deviation-avoidance trees, algorithms DAT and Z-DAT are able to reduce the update cost. By adjusting the deviation-avoidance trees, algorithm QCR is able to significantly reduce the total cost when the aggregate query rates is high, thus leading to efficient object tracking solutions.

A

PPENDIX

A

In this appendix, we show how to derive (4) and (5). To begin with, we present two implicit facts used in the following derivations. First, according to Theorem 1, we can conclude that if the members of SubtreeðvÞ are not changed, the number of messages transmitted on edge ðv; pðvÞÞ 2 T will be unchanged. Second, when a node v is being examined by QCR, wTðpðvÞ; pðpðvÞÞÞ must be 1. This fact

holds because the input of QCR algorithm is a DAT/Z-DAT tree and the tree is examined in a bottom-up manner.

First, we derive the QðT Þ  QðT0Þ in (4). When v becomes a leaf and the queried object locates at the sensing field of v, Fig. 11. Snapshots of tree T obtained by DAT and Z-DAT under regular and random deployments. There are 1,024 sensors with the sink at the lower-left corner. (ð; Þ ¼ ð8; 0Þ for Z-DAT.) (a) A DAT tree (regular deployment). (b) A Z-DAT tree (regular deployment). (c) A DAT tree (random deployment). (d) A Z-DAT tree (random deployment).

(11)

Fig. 13. Comparison of query costs. (C¼ 1:0). (a) Regular deployment, sink at a corner. (b) Regular deployment, sink at the center. (c) Random deployment, sink at a corner. (d) Random deployment, sink at the center.

Fig. 12. Comparison of update costs under differentð; Þ for Z-DAT. Sinks are located at the center of the network. (a) Regular deployment, C = 0.1, 4,096 sensors. (b) Random deployment, C = 0.1, 4,096 sensors. (c) Regular deployment, C = 0.1, 2,500 sensors. (d) Random deployment, C = 0.1, 2,500 sensors.

(12)

the query only has to be sent to pðvÞ. In addition, when one of v’s children, say i, is connected to pðvÞ and i is a leaf, pðvÞ also can reply the query if the queried object locates at the sensing field of i. Thus, we have

QðT Þ  QðT0Þ ¼ 2  qðvÞ þ X i2childrenðvÞ ^i2leafnode qðiÞ 0 B @ 1 C A:

Now we derive the UðT Þ  UðT0Þ in (4). The operation of QCR ensures that when one of v0schildren, say i, changes its

parent to pðvÞ, the update cost will be increased by X i2childrenðvÞ X ðx;yÞ2EG^y =2SubtreeðiÞ x^2SubtreeðiÞ wGðx; yÞ 0 B @ 1 C A:

In addition, the events between v and i, where i 2 neighborsðvÞ and i 2 SubtreeðvÞ, will be reported to pðvÞ rather than v when v becomes a leaf. Thus, v must forward an additional message to pðvÞ. The increased cost is

X

i2neighborsðvÞ^ i2SubtreeðvÞ

wGðx; iÞ:

However, when v becomes a leaf, the event across an edge ðx; yÞ 2 EG such that y =2 SubtreeðvÞ, x 2 SubtreeðvÞ,

and x 6¼ v will not be transmitted on ðv; pðvÞÞ. The cost is reduced by

X

ðx;yÞ2EG^y =2SubtreeðvÞ ^x2SubtreeðvÞ^x6¼v

wGðx; yÞ:

Combining above three factors, we have

UðT Þ  UðT0Þ ¼  X i2neighborsðvÞ ^i2SubtreeðvÞ wGðx; iÞ  X i2childrenðvÞ X ðx;yÞ2EG^y =2SubtreeðiÞ ^x2SubtreeðiÞ wGðx; yÞ 0 B @ 1 C A þ X ðx;yÞ2EG^y =2SubtreeðvÞ ^x2SubtreeðvÞ^x6¼v wGðx; yÞ:

Next, we derive (5). To see QðT Þ  QðT0Þ, observe that

when v changes its parent from pðvÞ to pðpðvÞÞ, the saved query cost is qðvÞ. Furthermore, when pðvÞ has only one child v, the adjustment of v will make pðvÞ a leaf. This saves a query cost of qðpðvÞÞ. Therefore, we have

QðT Þ  QðT0Þ ¼ 2  ðqðvÞ þ q0ðvÞÞ:

The value of UðT Þ  UðT0Þ is affected by three factors, when v changes its parent from pðvÞ to pðpðvÞÞ. The update cost will be increased by

X

ðx;yÞ2EG^y =2SubtreeðvÞ ^x2SubtreeðvÞ

wGðx; yÞ:

Fig. 14. Comparison of total costs (C¼ 1:0). (a) Regular deployment, sink at a corner. (b) Regular deployment, sink at the center. (c) Random deployment, sink at a corner. (d) Random deployment, sink at the center.

(13)

For edges that have one incident vertex in SubtreeðvÞ and one incident vertex is in SubtreeðpðvÞÞ but not in SubtreeðvÞ, the events across these edges cannot be absorbed by pðvÞ after v changes its parent from pðvÞ to pðpðvÞÞ. The increased update cost will be:

X

ðx;yÞ2EG^y =2SubtreeðvÞ^ x2SubtreeðvÞ^y2SubtreeðpðvÞÞ

wGðx; yÞ:

However, for edges that have one incident vertex in SubtreeðvÞ and one incident vertex is not in SubtreeðpðvÞÞ, the events across these edges will be transmitted on ðv; pðpðvÞÞÞ rather than ðv; pðvÞÞ when we connects v to pðpðvÞÞ. The update cost will be decreased by

X

ðx;yÞ2EG^x2SubtreeðvÞ ^y =2 SubtreeðpðvÞÞ

wGðx; yÞ:

Combing these terms leads to the following equation:

UðT Þ  UðT0Þ ¼  X ðx;yÞ2EG^y=2SubtreeðvÞ ^x2SubtreeðvÞ wGðx; yÞ  X ðx;yÞ2EG^y =2SubtreeðvÞ^ x2SubtreeðvÞ^y2SubtreeðpðvÞÞ wGðx; yÞ þ X ðx;yÞ2EG^x2SubtreeðvÞ ^y =2 SubtreeðpðvÞÞ wGðx; yÞ ¼  2 X ðx;yÞ2EG^y =2SubtreeðvÞ^ x2SubtreeðvÞ^y2SubtreeðpðvÞÞ wGðx; yÞ 0 B @ 1 C A:

A

CKNOWLEDGMENTS

Y.C. Tseng’s research is cosponsored by NSC under grant numbers 93-2752-E-007-001-PAE and 94-2219-E-007-009, by MOEA under grant number 94-EC-17-A-04-S1-044, by ITRI, Taiwan, and by Intel Inc.

R

EFERENCES

[1] J. Aslam, Z. Butler, F. Constantin, V. Crespi, G. Cybenko, and D. Rus, “Tracking a Moving Object with Binary Sensors,” Proc. ACM SenSys Conf., Nov. 2003.

[2] F. Aurenhammer, “Voronoi Diagrams—A Survey of a Funda-mental Geometric Data Structure,” ACM Computing Surveys, vol. 23, no. 3, pp. 345-405, Sept. 1991.

[3] W.-P. Chen, J.C. Hou, and L. Sha, “Dynamic Clustering for Acoustic Target Tracking in Wireless Sensor Networks,” Proc. IEEE Int’l Conf. Network Protocols (ICNP), Nov. 2003.

[4] D. Ganesan, R. Cristescu, and B. Beferull-Lozano, “Power-Efficient Sensor Placement and Transmission Structure for Data Gathering under Distortion Constraints,” Proc. Int’l Workshop Information Processing in Sensor Networks (IPSN), 2004.

[5] C.-F. Huang and Y.-C. Tseng, “The Coverage Problem in a Wireless Sensor Network,” Proc. ACM Int’l Workshop Wireless Sensor Networks and Applications (WSNA), Sept. 2003.

[6] C. Intanagonwiwat, R. Govindan, and D. Estrin, “Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks,” Proc. Sixth Ann. Int’l Conf. Mobile Computing and Networking (MobiCOM), Aug. 2000.

[7] B. Krishnamachari, D. Estrin, and S. Wicker, “Modelling Data-Centric Routing in Wireless Sensor Networks,” Proc. IEEE Infocom Conf., 2002.

[8] H.T. Kung and D. Vlah, “Efficient Location Tracking Using Sensor Networks,” Proc. IEEE Wireless Comm. and Networking Conf., 2003.

[9] S. Madden, R. Szewczyk, M.J. Franklin, and D. Culler, “Supporting Aggregate Queries over Ad-Hoc Wireless Sensor Networks,” Proc. IEEE Workshop Mobile Computing and Systems Application, 2002. [10] K. Mechitov, S. Sundresh, and Y. Kwon, “Cooperative Tracking with

Binary-Detection Sensor Networks,” Technical Report UIUCDCS-R-2003-2379, Univ. of Illinois at Urbana-Champaign, 2003. [11] G.J. Pottie and W.J. Kaiser, “Wireless Integrated Network

Sensors,” Comm. ACM, vol. 43, no. 5, pp. 51-58, 2000.

[12] K. Sohrabi, J. Gao, V. Ailawadhi, and G.J. Pottie, “Protocols for Self-Organization of a Wireless Sensor Network,” IEEE Personal Comm., vol. 7, no. 5, pp. 16-27, Oct. 2000.

[13] Y.-C. Tseng, S.-P. Kuo, H.-W. Lee, and C.-F. Huang, “Location Tracking in Wireless Sensor Network by Mobile Agents and Its Data Fusion Strategies,” Proc. Int’l Workshop Information Processing in Sensor Networks (IPSN), 2003.

[14] Y. Xu and W.-C. Lee, “On Localized Prediction for Power Efficient Object Tracking in Sensor Networks,” Proc. Int’l Workshop Mobile Distributed Computing (MDC), May 2003.

[15] W. Zhang and G. Cao, “DCTC: Dynamic Convoy Tree-Based Collaboration for Target Tracking in Sensor Networks,” IEEE Trans. Wireless Comm., vol. 3, no. 5, pp. 1689-1701, Sept. 2004.

Chih-Yu Lin received the BS and MS degrees from the National Central University, Taiwan, in 1998 and 2000, respectively. Now, he is a graduate student pursuing the PhD degree in the department of computer science, National Chiao Tung University, Republic of China. His research interests include mobile computing and wireless communication. He is a member of the Phi Tau Phi scholastic honor society. He is a student member of the IEEE.

Wen-Chih Peng received the BS and MS degrees from the National Chiao Tung Univer-sity, Taiwan, in 1995 and 1997, respectively, and the PhD degree in electrical engineering from the National Taiwan University, Taiwan, Repub-lic of China, in 2001. Dr. Peng is currently an assistant professor in the Department of Com-puter Science, National Chiao Tung University. His research interests include mobile computing, mobile data management, and data mining. He is a member of the Phi Tau Phi scholastic honor society, the IEEE, and the IEEE Computer Society.

Yu-Chee Tseng is a full professor in the Department of Computer Science, National Chiao-Tung University, Taiwan. He served as a program chair for the Wireless Networks and Mobile Computing Workshop, 2000 and 2001, as a vice program chair for the International Conference on Distributed Computing Systems (ICDCS), 2004, as a vice program chair in the IEEE International Conference on Mobile Ad-hoc and Sensor Systems (MASS), 2004, as an associate editor for The Computer Journal, as a guest editor for the ACM Wireless Networks special issue on advances in mobile and wireless systems, as a guest editor for the IEEE Transactions on Computers special issue on wireless internet, as a guest editor for the Journal of Internet Technology special issue on wireless internet: applications and systems, as a guest editor for the Wireless Commu-nications and Mobile Computing special issue on research in ad hoc networking, smart sensing, and pervasive computing, as an editor for the Journal of Information Science and Engineering, as a guest editor for the Telecommunication Systems special issue on wireless sensor networks, and as a guest editor for the Journal of Information Science and Engineering special issue on mobile computing. He is a two-time recipient of the Outstanding Research Award, National Science Council, Republic of China, in 2001-2002 and 2003-2005, and a recipient of the Best Paper Award from the International Conference on Parallel Processing, 2003. He is a senior member of the IEEE and the IEEE Computer Society.

數據

Fig. 1. (a) The Voronoi graph of a sensor network. The arrival and departure rates between sensors are the numbers associated with arrows
Table 1 summaries the notations used in this paper.
Fig. 3. Four possible location tracking trees for the graph in Fig. 1(b).
Fig. 6. An example of the Z-DAT algorithm with  ¼ 4. (a) In the first iteration, we divide the field into    zones and adjust their boundaries according to 
+4

參考文獻

相關文件

Because simultaneous localization, mapping and moving object tracking is a more general process based on the integration of SLAM and moving object tracking, it inherits the

Since all nodes in a cluster need to send data to the cluster head, we use the idea of minimum spanning tree (MST for short) to shorten the total transmission distance to reduce

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,

This paper aims the international aviation industry as a research object to construct the demand management model in order to raise their managing

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

In order to serve the fore-mentioned purpose, this research is based on a related questionnaire that extracts 525 high school students as the object for the study, and carries out

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