• 沒有找到結果。

The rest of the thesis is organized as follows. Chapter 2 introduces the related work. Chapter 3 presents the proposed hierarchical framework. Chapter 4 discusses the performance analysis. Finally, we conclude this thesis in Chapter 5.

Chapter 2

Related Work

In this chapter, we describe the related work, which includes applications for the WSNs, hierarchical structures, data aggregation and QoS issue.

2.1 Applications of the WSNs

The applications of the WSNs increase rapidly with the improvement of ability and techniques about the sensor node. We introduce some typical applications as follows.

(1) Military: There are many urgent missions in military operations. So, development

of sensor nodes and related techniques is crucial. Sensor nodes not only obtain enemy and battleground information but also help weapon to hunt target [13].

(2) Vehicle: In recent years, more and more intelligent technologies are developed for

automobiles. One is the automatic parking technology by using sensor nodes to assist driver parking securely. In the future, detecting system in urban region is a very promising technique for reducing car accidents in real time. This concept is using sound to alarm for a pedestrian overhanging vehicle or to notify a driver alertness to avoid the imminent accident. And automatic control techniques start to avoid accidents while the accelerator and brake are handled by the driver [14] [15]

[16].

(3) Target tracking: The characteristics of target tracking are the number of targets,

temporal-spatial relation, latency and reaction time [17].

(4) Disaster management: The field of disaster management covers from fire

management to personnel evacuation. Focus on wild fires, management relies on

observation and prediction. This approach depends heavily on human observation and remote imaging [17].

(5) Precision agriculture: This approach improves agriculture efficiencies and raises

yields. In the future, precision agriculture means depends on remote sensing to mine soil, mineral and crop conditions combined with yield through sensor nodes on harvesting equipment. Pest control scenarios (e.g. Locust swarms) can monitor environment to collect information of pests and to halt infestations of invasive pests initially [17].

(6) Animal behavior monitoring: Scientists can identify wild animal behavior

through observation and collection information of animals to guide protection guideline. The sensor nodes install on the animal can collect information such as each individual’s location, moving speed, temperature, 3-axis acceleration values, and 3-axis magnetic field strength. Based on such monitoring information, we can learn each animal’s behavior and activities [18].

(7) Healthcare: In [19] [20] [21], wearable devices support healthcare and activity

monitoring which measure physiological data from human body. For help healthcare, wearable devices monitor without any disturbance to daily life of patient or aging person.

(8) Commerce: In [22] [23], active radio communication technologies can make an

even bigger improvement on process efficiency and reduce cost. Sensor nodes monitor the transportation process and verify handling conditions of goods autonomously like temperature for fresh foods. Radio sensor node can support on transport process that insert sensor nodes at containers in warehouse. The devices signal an alarm whenever the transport is not carried out correctly or within the given time constraints.

2.2 Hierarchical structures

Some hierarchical structure models were proposed in order to reduce energy consumption and improve effectiveness of the WSNs. We describe these models [5] [6]

[24] [25] as follows.

2.2.1 GRID approach

In [26], a mechanism is proposed for effectively maintaining data, delivering query requests, and obtaining the responses. The area covered by the WSN is recursively divided into four grids and organized as a hierarchy in which each cluster is associated with a cluster head (CH). Each CH is selected from the nodes in the cluster by making use of the hash function. The aggregation technique records the average, minimum, maximum values of a group of data by CHs, which delivers the aggregated data to sink node.

2.2.2 K-MEANS approach

In [24], authors proposed a Multi-K-Means approach, which can improve the effectiveness and timeliness of tracking the moving objects by mining the movement log. The Multi-K-Means algorithm is an iterative clustering algorithm and adopts mining movement pattern to predict path of moving object. When prediction occur errors such as object missing, the algorithm will enlarge scope to wake up many sensor nodes. The worse case is to wake up all sensor nodes in the whole WSNs.

2.2.3 Architecture

In [27], authors proposed an architecture that divides the entire area into three tiers. The three tiers are managed by manager node, cluster head (master agent) and sensor node (slave agent). At the beginning, each sensor node runs a specific task including one or more data to produce task data pattern in the WSNs. According to the pattern, the hierarchy will establish and runs data aggregation in master node.

Fig. 2.1: Data aggregation.

2.3 Data aggregation

Because sensor node is equipped with limited-energy battery, the significant objective is to reduce energy consumption in a WSN. Data aggregation is an obvious method to decrease the energy consumption and to prolong lifetime of the WSNs. In [28] [29], comparison of the completeness and energy efficiency for aggregated and non-aggregated schemes are reported. Data aggregation can reduce network congestion and improve bandwidth utilization, so that the lifetime of a WSN can be lengthened. The primary idea is to collect data by making use of the maximum, mean, total or logical OR, AND, XOR operations. The data compression is then developed further.

Some routing algorithms cooperate with the data aggregation mechanism by establishing tree topology and determining appropriate data aggregation such as ant-aggregation algorithm [30], genetic algorithm [31] and lossless packing aggregation algorithm [32].

When many nodes deliver sensory data to their co-ancestor node, the co-ancestor

node aggregates the data into an aggregated data. As shown in Fig.2.1, co-ancestor node C aggregated sensory data from its children nodes E, F and G. Similarly, the co-ancestor node D aggregates sensory data from its children nodes H and I. Then, node B aggregates sensory data from node C and D and sends the aggregated data to sink, node A.

QoS constraints are further considered in data aggregation, so that the data delivery can meet QoS requirements that are imposed by the application. In [8] [9], authors aim at aggregation performance in terms of delay and end-to-end latency requirements.

2.4 Quality of service

Recently, QoS issue is becoming a popular topic on WSNs. In [33], authors describe the QoS factors in WSNs. We present these factors as follows.

(1) Resource constraints: The constraints are introduced from the hardware and

software of sensor nodes. These constraints include energy, bandwidth, memory, buffer size, processor capability and limited transmission power. These constraints should be considered when QoS support is required in the WSNs.

(2) Unbalanced mixture traffic: The sensing type of sensor nodes can be periodic

and non-periodic. Sensors in different sensing types generate different quantity of data flows in the WSNs. Thus, QoS mechanisms should deal with the unbalanced mixture of sensory data traffics to meet QoS requirements.

(3) Data redundancy: For applications of tracking object, much redundant data is

created from sensor nodes. Thus, data aggregation is required to improve transmission efficiency and bandwidth utilization. However, data aggregation brings latency and complicates QoS design in the WSNs.

(4) Network dynamics: Network dynamics may cause dynamic topology changes.

Moreover, functional node changes (ex. cluster head) and node failure can also result in dynamic topology changes. These factors increase the complexity of QoS support.

(5) Energy balance: Since data delivery and data aggregation consume much energy

in WSNs, it is essential to design energy-efficient strategies to balance energy consumption such as routing and power management. These factors should be taken into account in designing QoS support.

Generally speaking, QoS support has to take above factors into account for diverse applications on WSNs. For instance, the QoS requirements may include system lifetime, response time, data novelty, detection probability, data reliability and data resolution.

Fig. 3.1: Voronoi diagram.

CHAPTER 3

THE PROPOSED HIERARCHICAL FRAMEWORK

3.1 Background

Adopting the hierarchical structure in a WSN is an effective approach to facilitate data aggregation, which is capable of reducing traffic, alleviating congestion and saving energy in the WSN. In this thesis, the Voronoi diagram is employed to construct a hierarchal framework which can facilitate data aggregation in a WSN. In the framework, some assumptions are made: (1) Sensor nodes are uniformly distributed in the area of the WSN. (2) The distribution of the residual energy of the sensor nodes in the WSN is uniform.

Voronoi diagram is also called Voronoi tessellation. Given a set of points, S, in a plane. Each point in S is associated with a Voronoi region V(s), which consists of all points closer to S1 than to any other points S2 (see Fig. 3.1). These Voronoi regions

form the Voronoi diagram in the plane. The distance in the edge of Voronoi regions are equidistant between two points in S.

3.2 Voronoi hierarchical framework

We propose a hierarchical framework based on Voronoi diagram. To construct the framework, several steps are executed. The steps are described as follows.

Step1: Choose k1 sensor nodes from all sensor nodes to be cluster heads (CHs) of level 1. And, for each CH, run the Voronoi algorithm to set the boundary of the corresponding Voronoi region for this CH. All of these Voronoi regions are level-1 regions.

Step2: Choose k2 sensor nodes from level-1 CHs to be level-2 CHs. For each level-2 CH, run the Voronoi algorithm to set the boundary of the corresponding Voronoi region for this level-2 CH. All of these Voronoi regions are level-2 regions.

Step3: Repeat the procedure as described in step 2. In other words, for step m, Choose k sensor nodes from level-m (m−1) CHs to be level-m CHs. For each level-m CH, run the Voronoi algorithm to set the boundary of the corresponding Voronoi region for this level-m CH. All of these Voronoi regions are level-m regions.

Step 4: These steps repeat until km+1 <nh(n is the number of sensor nodes in the h highest level h). And, choose the node with the highest energy node from the highest level to be sink node.

Now, the hierarchical framework is constructed. We illustrate the hierarchical framework in Fig.3.2, Fig.3.3 and Fig.3.4, respectively.

Fig. 3.2: Flow chart of build hierarchy

Fig. 3.3: Cluster heads for different levels.

Fig. 3.4: Voronoi hierarchical framework.

3.3 Update and query procedures

The sensory data must be stored in the CHs at some level. So, the update procedure can deliver the new location information of the moving object to the corresponding CH. And, similarly, the query procedure sends query request to the corresponding CH to obtain the location information of the moving object.

A scenario is described as follows. Assume that data aggregation occurs at level 2 and sensory data is stored in sink node. As shown in Fig. 3.5, node E, D, A and M detect the moving objects (blue and red vehicles). These nodes will send sensory data to their CH, node D, C and M, at level 1, respectively. Node M is the CH and the member in this Voronoi region at level 1. Then, node D, C and M deliver the raw sensory data to their CHs (node C and M separately) at level 2 and the data is aggregated. Node M is the CH and member of in Voronoi region at level 2 (see Fig.3.6). Finally, all raw data is aggregated and delivered to sink as shown in Fig.3.7.

Fig. 3.5: Detect moving objects.

Fig. 3.6: Sensory data is transmitted to CHs.

Fig. 3.7: Update is completed.

Fig. 3.8: Query operation.

Fig. 3.9: Update operation (step 1).

For query operation, when a user is interested in some moving object (say, red vehicle), the user can obtain the location information of the moving object immediately through sink node R as shown in Fig 3.8.

The possible second scenario is described as follows. Assume the sensory data is stored in the CHs at level 1. The update procedure is similar to the first scenario. The difference is that CHs at level 1 aggregate and deliver the update data to sink node as shown in Fig. 3.9 and Fig. 3.10. For query operation, the user can obtain the aggregated data from sink node R and, then, track the moving object (i.e., red vehicle)

Fig. 3.10: Update operation (step 2).

Fig. 3.11: Query operation.

according to the aggregated data. Finally, the user can obtain the location information of the red vehicle as shown in Fig 3.11.

3.4 Layer for Anchor Nodes

To determine where to store the sensory data is a crucial issue, since storing data in sink node is good for querying the moving object but, on the other hand, could lengthen the update delay very much. Besides, storing data at sink may cause inconsistency between the stored data at sink and the real data, if the object has moved but the update is not yet completed. In contrast, storing data at level-1 CHs is

Fig. 3.12: Two scenarios for update operation.

Procedure Object Update ( ) {

01. Begin

02. If sensor node X finds object O moving through it’s radio range 03. sensor node X produces raw packet update to CH.

04. If object O moves under branch of anchor node A

05. raw packet only update to anchor node A and aggregate.

06. Else object O moves over branch of anchor node A

07. besides, raw packet update to anchor node and aggregate.

08. aggregated data deliver to sink node, further.

09. End 10. End 11. End }

Fig. 3.13: Update operation algorithm.

good for quick update but results in longer query delay. Therefore, we propose an anchor node approach, which the anchor nodes are located at an intermediate level of the hierarchical framework and are used to store the sensory data to facilitate both query and update operations and meet QoS requirements.

With the anchor nodes, there are two possible cases for the update operation. One is the sensory data for update the location information of a moving object must be delivered to the corresponding anchor node as shown in Fig. 3.12(a). The other one is

Procedure Object Query ( ) {

01. Begin

02. From sink node, we get simplified data about 03. what we interest object

04. Tracking location of object based information 05. from sink node until anchor node and reverse.

06. Get target information.

07. End }

Fig. 3.14: Query operation algorithm.

the update must be sent up to the sink node as shown in Fig. 3.12(b). For the first case, the object moves from one node to the other node, and the two nodes belongs to the same anchor node (say, node A). Thus, the sensory data for update operation is just delivered to the anchor node.

For the second case, the object moves from a node, whose anchor node is node A, to the other node, whose anchor node is node B. Thus, the sensory data for update must be delivered not only to the anchor nodes but also up to the sink node. The algorithms of the update and query procedures are described in Fig. 3.13 and Fig. 3.14, respectively.

We illustrate the query and update operations when anchor nodes are deployed at level 2 as shown in Fig. 3.15 and Fig. 3.16. For update operation (see Fig. 3.15), when node M and L detect the moving object (blue vehicle), the nodes send the sensory data to their CH (node M). Then, node M updates the location information for the moving object at level 2 and the sensory data is aggregated by node M. For the other update operation (see Fig. 3.15), when node E, D, A and J detect a moving object (red vehicle), these nodes send their sensory data to their CH (node D, C and J separately)

Fig. 3.15: Update operation with anchor nodes.

Fig. 3.16: Query operation with anchor nodes.

at level 1. Then, node D, C and J deliver the sensory data to their CH (node C and J separately), which are anchor nodes at level 2. The sensory data is aggregated by the anchor nodes and, then, is delivered to sink node R.

For query operations (see Fig. 3.16), users issue a request from sink node R to query a moving object (red vehicle) and get the summarized information to track the object. With the summarized information users can track the object to the cluster whose CH is node J. Then, the query is delivered to node J to obtain the detailed data

about the red vehicle in anchor node J. Node J then replies to the query with the detailed data to sink node. Thus, users can query the object they are interested in.

3.5 QoS Measures

Query delay and update delay are two important QoS measures for object tracking applications on the WSNs. Thus, to track critical objects always set constraints on query and update delays. In order to satisfy the QoS constraints for tracking critical object the anchor nodes must be deployed at proper layer. Let D u denote the upper bound of update delay, and D denote the upper bound of query q delay. Thus, the anchor nodes must be deployed in the proposed hierarchical framework to meet the above two constraints, D and u D . q

We discuss how to deploy the anchor nodes in the hierarchical framework as follows. First, we describe some assumptions that are made for this study as follows.

(i) The layers of the hierarchical framework are equal to or greater than 3. (ii) Two extreme cases are considered. One is that the anchor nodes are deployed at layer 1 for the purpose of observing the effect of D . The other one is that anchor nodes are q deployed at the highest layer to observe the effect of D . (iii) The real update delay, u

d , must satisfy u duDu. And, the real query delay, d , must satisfy q dqDq. First, we consider the case that the anchor nodes are deployed at layer 3. Let W denote the maximum number of hops and H dH denote the delay time between two adjacent nodes. Moreover, d denotes the time required to aggregate the a sensory data at anchor nodes. Thus, the lower bound on update delay is as follows.

a

In contrast, if anchor nodes are deployed at layer 1, the lower bound on one-way query delay is Therefore, we can obtain the total number of layers, h, as follows.

].

Furthermore, the number of layers in the hierarchical framework, h, must satisfy the following Equation.

Finally, the number of layers in the hierarchical framework, h, can be determined as follows.

) , min(Uofh Qofh

h= (3.5) After finding the value of h, we would determine the layer that the anchor nodes are deployed by considering the condition of du <dq. This inequality ensures that the query can obtain correct data with higher probability, since the update delay is less than query delay. Thus, we obtain the following Equation.

layer 1. Thus, the following Equation is obtained.

⎥⎦⎥

⎢⎣⎢ +

= 2

2

a h . (3.7)

We illustrate how to determine the anchor layer by using D and u D as q follows. For example, D and u D are two forces to push a ball (i.e., anchor layer) q on the stair hierarchy (see Fig. 3.17). The bigger force would decide where the anchor layer is. If D is greater than u Dq

, the anchor layer is pushed toward the higher layer.

However, this situation causes inconsistent data, we can not alter anchor layer. In contrast, if D is greater than q D , the anchor layer is pushed toward the lower layer. u The procedure of decision shows as Fig. 3.18. With the above concept we describe the algorithm for selecting anchor layer in Fig. 3.19. Note that sign is positive if Du >Dq and, on the other hand, sign is negative if Du <Dq.

Fig. 3.17: Select the anchor layer.

Fig. 3.18 Flow chart of algorithm

Procedure Anchor Layer Selection ( ) {

01. If DuDq 02. ⎥⎦

⎢⎣⎢ +

= 2

2 a h

03. Else Dq>Du 04.

⎥⎦

⎢⎣⎢ +

= 2

2

a h +sign(Du-Dq)×

Du Dq

05. End }

Fig. 3.19 Algorithm of select anchor layer

CHAPTER 4

PERFORMANCE ANALYSIS

4.1 Simulation model

To evaluate the performance of the proposed hierarchical framework we have conducted simulations by making use of MATLAB. For the simulations, some assumptions are made: (i) the number of layer is equal to or greater than 3, (ii) transmission delay between two adjacent nodes is 2 ms, (iii) data aggregation incurs 100 ms delay, (iv) the maximum number of hops for query or update operations is 10,

To evaluate the performance of the proposed hierarchical framework we have conducted simulations by making use of MATLAB. For the simulations, some assumptions are made: (i) the number of layer is equal to or greater than 3, (ii) transmission delay between two adjacent nodes is 2 ms, (iii) data aggregation incurs 100 ms delay, (iv) the maximum number of hops for query or update operations is 10,

相關文件