Hindawi Publishing Corporation Mobile Information Systems Volume 2016, Article ID 8310296, 16 pages http://dx.doi.org/10.1155/2016/8310296
Research Article Detecting Boundary Nodes and Coverage Holes in Wireless Sensor Networks Li-Hui Zhao,1,2 Wenyi Liu,1,2 Haiwei Lei,1,2 Ruixia Zhang,1,2 and Qiulin Tan1,2 1
Key Laboratory of Instrumentation Science & Dynamic Measurement, Ministry of Education, North University of China, Shanxi, Taiyuan 030051, China 2 National Key Laboratory for Electronic Measurement Technology, North University of China, Taiyuan, Shanxi 030051, China Correspondence should be addressed to Wenyi Liu;
[email protected] Received 19 October 2015; Revised 18 January 2016; Accepted 18 January 2016 Academic Editor: Laurence T. Yang Copyright © 2016 Li-Hui Zhao et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. The emergence of coverage holes in wireless sensor networks (WSNs) means that some special events have broken out and the function of WSNs will be seriously influenced. Therefore, the issues of coverage holes have attracted considerable attention. In this paper, we focus on the identification of boundary nodes and coverage holes, which is crucially important to preventing the enlargement of coverage holes and ensuring the transmission of data. We define the problem of coverage holes and propose two novel algorithms to identify the coverage holes in WSNs. The first algorithm, Distributed Sector Cover Scanning (DSCS), can be used to identify the nodes on hole borders and the outer boundary of WSNs. The second scheme, Directional Walk (DW), can locate the coverage holes based on the boundary nodes identified with DSCS. We implement the algorithms in various scenarios and fully evaluate their performance. The simulation results show that the boundary nodes can be accurately detected by DSCS and the holes enclosed by the detected boundary nodes can be identified by DW. The comparisons confirm that the proposed algorithms outperform the existing ones.
1. Introduction Wireless sensor networks are widely applied in many fields such as battlefield surveillance [1, 2], target tracking [2–4], environment monitoring [5], and health care [6, 7]. Most of the above applications are mission-critical and require complete coverage of the monitored area so that the events under observation can be precisely detected. However, these requirements constantly encounter the obstacles from coverage holes. On the one hand, coverage holes degrade the performance of WSNs, such as decreasing the connectivity, unbalancing the WSNs load, and aggravating the burden of hole border nodes in data forwarding. On the other hand, the appearance of coverage holes indicates the burst of special events, such as forest fire and earthquake [8]. Unfortunately, due to nonuniformity of deployment [9], failure of nodes [10], and obstacle of terrain [11], coverage holes are bound to appear and gradually increase in number and size. Thus, to alleviate the increase is stringently demanded [12]. However,
no matter which idea is adopted, optimizing routing protocols [13, 14] or reducing energy consumption [15], to identify coverage holes comes first and foremost. Existing works take advantage of various characteristics of nodes in terms of geometrical morphology [4, 16–22], distribution [23, 24], and connectivity [8, 12, 25–30] to identify coverage holes. However, most of the algorithms require relatively high average node degrees [23, 24, 29], leading to a high communication overhead [25] in the process of searching the specific patterns [28, 29]. It is noted that although all the algorithms identify coverage holes by locating the nodes on the boundary of holes, none of them provides an approach for clustering the nodes except [25]. Regrettably the tremendous communication overhead in [25] badly shrinks the life cycle of WSNs. In this paper, we tackle the problem of identifying coverage holes in various scenarios by detecting the nodes located on the border of holes. Our contributions are as follows. First, we formally define the notions of boundary nodes and
2 coverage holes. Second, we generalize our work into two questions: one is how boundary nodes are identified and the other is how coverage holes are detected. Correspondingly, we propose two algorithms, Distributed Sector Cover Scanning (DSCS) and Directional Walk (DW) algorithm. DSCS, motivated by the observation that a node can have its sensing area divided into different sectors by its neighbors, transforms the problem of identifying boundary nodes into judging whether all the sensing sectors of a node are covered by the adjacent neighbors of the node. DW, based on DSCS, is responsible for detecting coverage holes by connecting the boundary nodes that enclose the same coverage hole and clustering the nodes on the outer boundary of WSNs. Finally, we implement DSCS and DW and verify their correctness and robustness. The remainder of this paper is organized as follows. Section 2 reviews related works. In Section 3, we present the net model and define coverage holes and boundary nodes. Section 4 presents the DSCS and DW algorithms in detail and states the related theoretical analysis to prove the correctness of the algorithms. Section 5 presents a part of the simulation results and compares the proposed algorithms with the existing ones. Finally, we conclude the paper.
2. Related Work In this section, we recall the previous studies on the boundary node identification and coverage hole detection. The existing works can be classified into three categories: geometrical, statistical, and topological [25]. In general, geometry-based methods employ the geometrical tools to recognize the boundary nodes and coverage holes with the assumption that nodes are aware of their own locations. Fang et al. [16] proposed a two-step distributed approach, in which each node autonomously checks whether it is a stuck node serving the identification of coverage holes and then an alternative route is created for data transmission along the holes. Khedr et al. applied Barycentric technique to propose a decentralized algorithm in [17], in which each node can determine whether it is a boundary node by calculating the distance of the adjacent nodes. The scheme proposed by Deogun et al. identifies a boundary node by Choosing Good Neighbors (CGN) of a node and then checking whether the Good Neighbors can form a triangle enclosing the node in [18]. Simek et al. proposed Boundary Recognition using Cset (BRC) in [19] based on the improved CGN. The implementation of both CGN and BRC is restricted by the communication range of nodes. Ma et al. [20] utilized the characters of the circumcircle of a triangle to propose a simple distributed algorithm for boundary node identification. Wang and Ssu described a scheme in [21] that if all the intersection points of the sensing area of a node with those of other nodes can be covered by the sensing region of any other node, then the node is not a boundary node. Li and Zhang [22] used the properties of empty circle based on Delaunay triangulation [31] to discover boundary nodes. All the above-mentioned algorithms can recognize whether a node is located on the border of coverage holes. However,
Mobile Information Systems few of them offered a clear scheme how coverage holes are identified. Statistical methods usually identify boundary nodes by assuming that the nodes in WSNs abide by the probability distribution. Fekete et al. [23] proposed an algorithm to detect boundary nodes based on the fact that mostly the node degree of boundary nodes is less than that of the nonboundary nodes of WSNs. Although good results can be achieved when the node degree in WSNs is smooth, the method is prone to being invalid when the node degree fluctuates sharply. In their subsequent work, Fekete et al. [24] derived the location of boundary nodes from the restricted stress centrality of node. However, to achieve the desirable performance, both of the above methods demand such an unrealistic node density that the average node degree should be not less than 100. Topology-based approaches, particularly applied to the location-free environment, recognize boundary nodes and coverage holes by exploiting the connectivity information of nodes. Funke et al. developed a distributed hole detection algorithm (DHD) that identifies boundary nodes by locating the broken contour in [8]. DHD firstly selects each node in the max independent set of WSNs as a seed to build its different layers of contours by connecting its neighbors that share the same hop distance, and then the algorithm identifies boundary nodes by locating the end points of a broken contour. On the basis of DHD, Chu and Ssu [26] proposed to recognize boundary nodes through creating the contour of each node based on the three-hop neighboring information of the node. Huang et al. [27] extended the idea of isocontour and proposed a scheme that uses the two-hop neighbors of any node to build the isocontour of it. The node is a boundary node if its isocontour is broken. Although the scheme does not require the location of node, it marks too many boundary nodes. Kr¨oller et al. [28] identified coverage holes and the outer boundary of WSNs by searching a complex combinatorial structure, called flower, on the assumed prerequisite that the average node degree is more than 20. After that, Saukh et al. improved the flower pattern to recognize boundary nodes in [29], but both of them fail to detect some special patterns. Different from the above, Wang et al. [25] utilized the cut pair of the shortest path tree constructed by an arbitrary node in WSNs to identify boundary nodes, which can work well even with low average node degree. However, the high communication cost produced by repeatedly using the flooding way shrinks the lifetime of WSNs. To overcome this problem, Khan et al. proposed a hop-based approach in [12]. In this approach, each node determines whether it is a boundary node by checking whether the 𝑘-hop neighbors of a node can form an enclosed cycle of the node. Ghrist and Muhammad put forward a scheme [30] based on algebraic homology theory. However, the centralized design does not follow the trend of actual implementation in WSNs. In this paper, we propose two distributed algorithms based on computational geometry, which can effectively prevent the drawbacks of the aforementioned approaches. In the first algorithm, each node can autonomously determine
Mobile Information Systems
3
whether it is a boundary node. In the second, boundary nodes can be clustered according to the coverage holes and the outer boundary of WSNs that they enclose.
3. Preliminary
two-hop neighbor nodes of V𝑖 . Let |𝑁1,2 (V𝑖 )| denote the node number of 𝑁1,2 (V𝑖 ): 𝑁𝑘 (V𝑖 ) = {V𝑢 | (𝑘 − 1) × 𝑅𝑐 < 𝑑V𝑢 ,V𝑖 ≤ 𝑘 × 𝑅𝑐 , (𝑢 ≠ 𝑖, 𝑘 = 1, 2, . . . , 𝑛)}
3.1. Network Model and Assumption. Imagine the following scenario: a WSN is formed by 𝑛 homogeneous sensor nodes V𝑖 (𝑖 = 1, . . . , 𝑛) that are randomly deployed in a 2dimensional monitored area A. The WSN is modeled as a connected graph 𝐺 = (𝑉, 𝐸), where 𝑉 represents the set of all nodes in the WSN and 𝐸 denotes the set of edges (communication links) between the pairwise nodes. In this model, it is assumed that each node has a unique ID and knows its own location via GPS or some other localization approaches [32, 33]. Besides, we assume that all the nodes can communicate directly with the adjacent nodes within the communication range and collect their own one- and twohop neighbors. At the same time, this work assumes that the sensing area and communication range of node V𝑖 in WSN are regular disks with 𝑅𝑠 and 𝑅𝑐 as the radii, respectively, centered at V𝑖 . Here, 𝑅𝑠 equals 𝑅𝑐 . 3.2. Definitions Definition 1 (neighbor set). Let 𝑁𝑘 (V𝑖 ), described in formula (1), denote the 𝑘-hop neighbor set of node V𝑖 ; node V𝑢 is called the 𝑘-hop neighbor of node V𝑖 if V𝑢 ∈ 𝑁𝑘 (V𝑖 ). Let 𝑁1,2 (V𝑖 ), described as formula (2), represent the union set of one- and
𝑁1,2 (V𝑖 ) = 𝑁1 (V𝑖 ) ∪ 𝑁2 (V𝑖 ) ,
Definition 5 (sensing sector). 𝑆(V𝑖 ) can be divided into 𝑘 (𝑘 = 1, . . . , |𝑁1,2 (V𝑖 )|) sectors by 𝑁1,2 (V𝑖 ); each sector is called a sensing sector and the 𝑘th sensing sector is denoted by S(V𝑖 , 𝑘); if the central angle corresponding to S(V𝑖 , 𝑘) is ∠(V𝑚 , V𝑖 , V𝑛 ), then S(V𝑖 , 𝑘) can also be denoted by S(V𝑚 , V𝑖 , V𝑛 ). The sectors satisfy the following formula: 𝑆 (V𝑖 ) =
|𝑁1,2 (V𝑖 )|
⋃ S (V𝑖 , 𝑘) .
(5)
𝑘=1
Definition 6 (communication range). As shown in Figure 1, the communication range of node V𝑖 is the circular disk
(2)
where 𝑑V𝑢 ,V𝑖 is the Euclidean distance between the nodes V𝑢 and V𝑖 . Definition 2 (sensing area). The sensing area of node V𝑖 , denoted as 𝑆(V𝑖 ), is described as formula (3). 𝑆(V𝑖 ) is a circular disk with 𝑅𝑠 as the radius and V𝑖 as the center. As shown in Figure 1, with the location of node V𝑖 as the origin of local Cartesian Coordinate System (CCS), the circular disk enclosed by dashed line is the sensing area of node V𝑖 ; the dashed line represents the boundary of sensing area, denoted as 𝜕𝑆(V𝑖 ): 𝑆 (V𝑖 ) : 𝑥2 + 𝑦2 ≤ 𝑅𝑠2 .
(3)
Definition 3 (absolute angle). As shown in Figure 1, a local CCS is created with node V𝑖 (𝑥V𝑖 , 𝑦V𝑖 ) as the origin, and V𝑚 ∈ 𝑁1,2 (V𝑖 ). The coordinate of V𝑚 in local CCS is (𝑥V𝑚 , 𝑦V𝑚 ). The absolute angle of V𝑚 refers to the forward angle from V→ 𝑥-axis positive direction to the ray V𝑖 𝑚 and it is denoted ∘ by ∠abs(V𝑖 , V𝑚 )(∠abs(V𝑖 , V𝑚 ) ∈ [0 , 360∘ ]) or ∠abs(V𝑖 , 𝑘); 𝑘 represents the position of V𝑚 in 𝑁1,2 (V𝑖 ) where the nodes are sorted according to the ascent of absolute angles of nodes:
𝑦V − 𝑦V𝑖 { , 360)) , mod (360 + arctan ( 𝑚 { { 𝑥V𝑚 − 𝑥V𝑖 { { ∠abs (V𝑖 , V𝑚 ) = {90∘ , { { { { ∘ {270 ,
Definition 4 (central angle). As shown in Figure 1, an angle → V→ formed by the two rays, V𝑖 𝑚 and V𝑖 V𝑛 , is called a central angle, denoted as ∠(V𝑚 , V𝑖 , V𝑛 )(∠(V𝑚 , V𝑖 , V𝑛 ) ∈ [0, 𝜋]).
(1)
𝑥V𝑚 ≠ 𝑥V𝑖 𝑥V𝑚 = 𝑥V𝑖 ∧ 𝑦V𝑚 > 0
(4)
𝑥V𝑚 = 𝑥V𝑖 ∧ 𝑦V𝑚 < 0.
enclosed by dashed line, with V𝑖 as its center and 𝑅𝑐 as its radius; 𝑅𝑐 = 𝑅𝑠 in this paper. Definition 7 (investigated node (ItN)). ItN is the node that has already collected the neighbor information and is ready to perform the boundary node detection algorithm. Definition 8 (boundary node (BN)). A node is called a BN if it lies on the border of holes or the outer boundary of WSNs. A set of boundary nodes is denoted by BNs. If a node is not a BN, then it is called a non-BN; the set of nonboundary nodes is denoted by non-BNs, as illustrated in Figure 2. Definition 9 (coverage hole). In this paper, a coverage hole means a hole that is not covered by the sensing area of any node in A, as illustrated in Figure 2. A summary of the symbols is described in Symbol.
4
Mobile Information Systems y
m
m, i, ) n
∠abs(i , m )
∠(
m, i, n)
S(
𝜕S(
m, i, n)
u
x
∠abs(i , u ) i
Rs
=R
c
n
S(i )
𝜕S(i )
𝑁𝑘 (V𝑖 ) =
Figure 1: Illustration of definitions.
34
35
33
32
31
30
36 37
38
39
15
16
17
28 27
13 12
7
1
11
Hole
5
3
10
4
20
9
41
42
43
26
2 8
19
40
29
14
6
18
44
Before executing the algorithm of DSCS, the neighboring information of all the nodes in A should be prepared. Each node needs to collect the information of its one- and twohop neighbors, including the location and ID of the neighbor nodes. In this procedure, each node (or sender), with its unique ID and location, broadcasts a hello message to its neighbors within its communication range, and then the neighbors (or receivers) calculate the distance (𝑑 ) between each of them and the sender after receiving the hello message; if 𝑑 meets formula (1) (𝑘 = 1), then the receivers set themselves as the one-hop neighbors of the sender and unicast a response message with their IDs and locations to the sender. In the subsequent step, the sender initiates a request message for exchanging one-hop neighbor list with its onehop neighbors. Finally, the sender carries out formula (6) to achieve the two-hop neighbors [12]:
21
25
24
23 22
BN Non-BN
Figure 2: Illustration of BNs and coverage holes.
4. Detecting Boundary Nodes and Coverage Holes In this section, we focus on how BNs, coverage holes, and the outer boundary of WSNs are identified. To begin with, we present a mechanism for the recognition of BNs. Then, we offer the method of clustering BNs, namely, how coverage holes and the outer boundary are located. Finally, we prove the lemmas used in the schemes. 4.1. Detecting Boundary Nodes. DSCS, proposed for identifying boundary nodes, is described in Algorithms 1 and 2.
⋃ V𝑢 ∈𝑁𝑘−1 (V𝑖 )
𝑁1 (V𝑢 ) − 𝑁𝑘−1 (V𝑖 ) − {V𝑖 } .
(6)
DSCS is carried out after the required information is collected. We exploit Figure 3 and Algorithms 1 and 2 to explain the implementation of DSCS. As shown in Figure 3, V1 is an ItN; 𝑁1 (V1 ) = {V2–5 , V7 , V17 }, 𝑁2 (V1 ) = {V6 , V8–16 , V18 }, and 𝑁1,2 (V1 ) = 𝑁1 (V1 ) ∪ 𝑁2 (V1 ). According to row (5) of Algorithm 1, the absolute angle of every node in 𝑁1,2 (V1 ) is calculated, with these nodes being arranged in the ascending order of their absolute angles. It is noted that nodes V2 and V18 have the same absolute angles; we retain node V2 and remove V18 (marked as red) from 𝑁1,2 (V1 ) based on row (6) of Algorithm 1. Then, the set 𝑁1,2 (V1 ) changes into {V12-13 , V5 , V14 , V6 , V15 , V7 , V16-17 , V2 , V8–10 , V3 , V11 , V4 }. Next, DSCS examines the absolute angles of the nodes in 𝑁1,2 (V1 ); if the absolute angles satisfy the condition of rows (9)–(11) of Algorithm 1, V1 is a BN. Otherwise, DSCS starts to examine whether the border of each sector of 𝑆(V1 ) is completely covered by the sensing area of the corresponding neighbor nodes. According to row (13) of Algorithm 1, 𝜕S(V12 , V1 , V13 ) is selected in the first step. Obviously, 𝜕S(V12 , V1 , V13 ) can be fully covered by 𝑆(V12 ); a similar procedure will continue until the last sector. It is apparent that V1 has no holes around it; therefore, it is a non-BN. This procedure can be distributedly executed by any node of WSNs. 4.2. Identifying Coverage Holes. In this section, we present DW, as described in Algorithm 3, to illustrate how the BNs that enclose the same coverage hole are clustered. It serves to fulfill our work in a more meaningful way. Here are the concrete steps. Step 1. Initialize an empty queue 𝑄 for storing the clustered nodes in the following steps. Step 2. Select the node with the minimum coordinate from BNs as the start node (Vst ), being marked as the current node of DW (denoted by V𝑐 ) and pushed into 𝑄. Then V𝑐 checks, from its 𝑁1 (V𝑐 ) ⊂ BNs, whether there are any nodes whose absolute angles belong to [3𝜋/2, 2𝜋]. If there exist any, V𝑐 selects the node which has the minimum absolute angle as its
Mobile Information Systems
5
Input: V𝑖 , Graph 𝐺 = (𝑉, 𝐸) Output: 𝐻V𝑖 (1) Set 𝐼𝑡𝑁 ← V𝑖 // choosing a node V𝑖 randomly from set 𝑉 as ItN (2) 𝐻V𝑖 ← 𝑓𝑎𝑙𝑠𝑒 (3) Collect 𝑁1 (V𝑖 ) and 𝑁2 (V𝑖 ) of node V𝑖 (4) Set 𝑁1,2 (V𝑖 ) = 𝑁1 (V𝑖 ) ∪ 𝑁2 (V𝑖 ) (5) Calculate the ∠abs(V𝑖 , 𝑘) (𝑘 = 1, . . . , |𝑁1,2 (V𝑖 )|) of nodes in 𝑁1,2 (V𝑖 ) (6) if (∠abs(V𝑖 , 𝑚) = ∠abs(V𝑖 , 𝑙)) ∧ (𝑑𝑚,𝑖 ≤ 𝑑𝑙,𝑖 ) then (7) 𝑁1,2 (V𝑖 ) = 𝑁1,2 (V𝑖 ) − {V𝑙 } (8) Sort the nodes of 𝑁1,2 (V𝑖 ) on the basis of their absolute angles in the ascending way (9) if the absolute angle of the node in 𝑁1,2 (V𝑖 ) meets any one of the following conditions: (10) (a) ∠abs(V𝑖 , |𝑁1,2 (V𝑖 )|) ≤ 𝜋, (b) ∠abs(V𝑖 , 1) > 𝜋, (c) ∀𝑘, ∠abs(V𝑖 , 𝑘) ∈ (𝜋/2, 3𝜋/2], (d) ∀𝑘, ∠abs(V𝑖 , 𝑘) ∈ [0, 𝜋/2] | ∠abs(V𝑖 , 𝑘) ∈ (3𝜋/2, 2𝜋]. then (11) 𝐻V𝑖 ← true (12) else (13) for 𝑗 ← 1 to |𝑁1,2 (V𝑖 )| do (14) if 𝑗 < |𝑁1,2 (V𝑖 )| then (15) 𝐻V𝑖 ← 𝐻V𝑖 ∪ 𝑠𝑒𝑐𝑡𝑜𝑟𝐶𝑜V𝑒𝑟((𝑁1,2 (V𝑖 ))𝑗 , (𝑁1,2 (V𝑖 ))𝑗+1 ) // (𝑁1,2 (V𝑖 ))𝑗 and (𝑁1,2 (V𝑖 ))𝑗+1 represent the elements of 𝑗 and 𝑗 + 1 of 𝑁1,2 (V𝑖 ), respectively (16) else (17) 𝐻V𝑖 ← 𝐻V𝑖 ∪ 𝑠𝑒𝑐𝑡𝑜𝑟𝐶𝑜V𝑒𝑟((𝑁1,2 (V𝑖 ))|𝑁1,2 (V𝑖 )| , (𝑁1,2 (V𝑖 ))1 ) (18) return 𝐻V𝑖 Algorithm 1: DSCS algorithm.
Input: 𝑠𝑡𝑎𝑟𝑡, 𝑒𝑛𝑑, V𝑖 , 𝑁1,2 (V𝑖 ) Output: 𝑓𝑙𝑎𝑔 (1) 𝑓𝑙𝑎𝑔 ← 𝑓𝑎𝑙𝑠𝑒 (2) if S(𝑁1,2 (V𝑖 )𝑠𝑡𝑎𝑟𝑡 , V𝑖 , 𝑁1,2 (V𝑖 )𝑒𝑛𝑑 ) is covered by the sensing area of the neighbor of V𝑖 then (3) 𝑓𝑙𝑎𝑔 ← 𝑓𝑎𝑙𝑠𝑒 (4) else (5) 𝑓𝑙𝑎𝑔 ← 𝑡𝑟𝑢𝑒 (6) return 𝑓𝑙𝑎𝑔 Algorithm 2: Function sectorCover.
6
inorder successor (denoted by Vsu ), and Vsu , as the new V𝑐 , is put into 𝑄. Otherwise, change the scope of the absolute angle to [0, 𝜋/2] and repeat the above procedure. If there does not exist Vsu in 𝑁1 (V𝑐 ), then repeat the same searching process in 𝑁2 (V𝑐 ).
14
15 13 16
7
5
1 17
18
12
4 2
8
11
3
9
10
Figure 3: Illustration of BN detection.
Step 3. Repeat Step 2 until V𝑐 cannot find its Vsu any longer; then change the scope of the absolute angle to [𝜋/2, 𝜋] and execute the same procedure as in Step 1. Note that the first Vsu found in this procedure is called the first inflection node; after that, the searching procedure will be continued within the scope [0, 𝜋]. Step 4. If Vsu of V𝑐 cannot be found in Step 3, change the scope of absolute angle to [𝜋, 3𝜋/2] and continue the searching process as in Step 3. In this procedure, the first found node is marked as the second inflection node, and then the searching process is continued within the scope [𝜋/2, 3𝜋/2]. Step 5. When Vsu of V𝑐 cannot be found in Step 4, change the scope of absolute angle to [3𝜋/2, 2𝜋] and repeat the same
6
Mobile Information Systems
Input: 𝐺BNs = (BNs, 𝐸(BNs)), 𝐺, 𝛿 Output: BoundCycle (1) 𝑖 ← 0 (2) while BNs ≠ 𝛿 do (3) 𝑄←⌀ (4) 𝑖←𝑖+1 (5) Vst ← finding the starting node from BNs according to Step 2 (6) 𝑄 ← 𝑄 ∪ {Vst } (7) while the Vsu of V𝑐 is not equal to Vst or Vst ∉ 𝑁1,2 (V𝑐 ) do (8) Vsu ← searching for Vsu of V𝑐 from BNs according to Steps 2–5 (9) 𝑄 ← 𝑄 ∪ {Vsu } (10) examining the continuity according to Step 6 (11) 𝐵𝑜𝑢𝑛𝑑𝐶𝑦𝑐𝑙𝑒[𝑖] ← 𝑄 (12) BNs ← BNs \ {𝐵𝑜𝑢𝑛𝑑𝐶𝑦𝑐𝑙𝑒[𝑖], 𝑁1 (𝐵𝑜𝑢𝑛𝑑𝐶𝑦𝑐𝑙𝑒[𝑖])} Algorithm 3: DW algorithm.
searching procedure as in Step 4. If the first node found during the procedure is Vst or the one- or two-hop neighbor of Vst , then the searching procedure is done. Each time the implementation from Step 1 to Step 5 is over, a boundary cycle formed by selected nodes is identified. Of all the boundary cycles, the first identified is the outer boundary, while the rest are coverage holes. Step 6. Check the queue 𝑄; if there is any node in 𝑄 that has its two-hop neighbor as its Vsu , insert a relay node that is the one-hop neighbor of both the node and its Vsu . At the same time, the sum of the distance between the node and this relay node and the distance between the relay node and Vsu should be the minimum. Note that the relay node may be a non-BN. Step 7. Remove all the nodes in 𝑄 and their one-hop neighbors from BNs. Step 8. If BNs = ⌀, repeat the procedure from Steps 1 to 7 until the set of BNs is empty or the number of the remaining nodes in the set is 𝛿 (in our practice 𝛿 = 2). We use Figure 2 to describe the whole procedure of DW. We set queue 𝑄 = ⌀. The node V41 , bearing the minimum coordinate in all BNs, is selected as Vst according to Steps 1 and 2, being marked as V𝑐 and pushed into 𝑄 (𝑄 = {V41 }). Among the one-hop neighbors of V𝑐 , V42 is the best choice to be Vsu of V𝑐 according to Step 2; then V42 takes the place of V41 to become V𝑐 and is pushed into 𝑄 (𝑄 = {V41 , V42 }). This process is executed repetitively until the first inflection point V24 appears. Next, DW changes the searching direction according to Step 3 and continues the same procedure. When the second inflection point V29 appears, DW changes the searching direction again according to Step 4 and repeats the same searching process until Vsu of V𝑐 is Vst or Vst ∈ 𝑁1,2 (V𝑐 ); the searching process is over. In the following, DW finds that Vsu of all nodes in 𝑄 are the one-hop neighbors of the nodes. Hence, the nodes enclosing the outer boundary are identified. Finally, DW removes all the nodes in 𝑄 (𝑄 = {V41–44 , V21–40 }) and their one-hop neighbors {V4 , V9–20 } from BNs. As a result, BNs = {V1–3 , V5 } are left.
If DW finds BNs ≠ ⌀ after the outer boundary is identified, it resets 𝑄 = ⌀, selects V5 as Vst , and then performs the following operation. V5 is marked as V𝑐 and pushed into 𝑄. Then, V𝑐 finds V3 as its Vsu , being marked as new V𝑐 and pushed into 𝑄. At the same time, DW detects that V𝑐 is the first inflection node according to Step 3; therefore, it changes the searching scope and finds V2 as its Vsu as well as the second inflection node according to Step 4, with V2 being taken as V𝑐 and pushed into 𝑄. Here, DW changes the searching scope again and finds V1 as Vsu of V𝑐 . Hence, DW takes V1 as new V𝑐 and pushes it into 𝑄. Next, V𝑐 finds that V5 is both its one-hop neighbor and Vst according to Step 5. Therefore, DW begins to check Vsu of the nodes in 𝑄. As a result, DW finds that Vsu of V3 and Vsu of V2 are their two-hop neighbors, respectively, so V4 is inserted between V5 and V3 according to Step 6. Similarly, V8 is inserted between V2 and V3 . So far, all the nodes have their one-hop neighbors as their Vsu in 𝑄. That is to say, the nodes enclosing coverage holes are identified. In the following, DW removes all the clustered nodes in the second round of identification from BNs except V4 and V8 (V4 and V8 do not exist in BNs). At this moment, BNs = ⌀, which means that the hole detection is over. 4.3. Theoretical Analysis. To prove the correctness of the implementation, we conduct the following theoretical analysis. Lemma 10. Consider an ItN V𝑖 , V𝑚 , and V𝑛 are any pair of adjacent neighbors (V𝑚 , V𝑛 ∈ 𝑁1,2 (V𝑖 )), and S(V𝑚 , V𝑛 ) = 𝑆(V𝑚 ) ∩ 𝑆(V𝑛 ), which is described as formula (7). If S(V𝑚 , V𝑛 ) is empty or S(V𝑚 , V𝑛 ) is not empty, the intersection of S(V𝑚 , V𝑛 ) with 𝜕S(V𝑚 , V𝑖 , V𝑛 ) is empty. That is, S(V𝑚 , V𝑛 ) = ⌀ or (S(V𝑚 , V𝑛 ) ≠ ⌀) ∧ (S(V𝑚 , V𝑛 ) ∩ 𝜕S(V𝑚 , V𝑖 , V𝑛 ) = ⌀); V𝑖 is a BN: 2
2
2 {(𝑥 − 𝑥V𝑚 ) + (𝑦 − 𝑦V𝑚 ) ≤ 𝑅𝑠 S (V𝑚 , V𝑛 ) = { 2 2 2 {(𝑥 − 𝑥V𝑛 ) + (𝑦 − 𝑦V𝑛 ) ≤ 𝑅𝑠 ,
(7)
where (𝑥V𝑚 , 𝑦V𝑚 ) and (𝑥V𝑛 , 𝑦V𝑛 ) are the coordinates of V𝑚 and V𝑛 , respectively, in the local CCS with V𝑖 as the origin.
Mobile Information Systems
7 ∠abs(V𝑖 , 𝑘) ∈ (𝜋/2, 3𝜋/2], and (d) ∀𝑘, ∠abs(V𝑖 , 𝑘) ∈ [0, 𝜋/2] | ∠abs(V𝑖 , 𝑘) ∈ (3𝜋/2, 2𝜋].
S(i )
m1
i
n1
S(n )
S(m ) m
m2
n2
n
Figure 4: Illustration for Case 1.
Proof. Given a node V𝑖 and any pair of adjacent neighbors V𝑚 and V𝑛 , we assume that V𝑚 and V𝑛 are located within the CCS with V𝑖 as the origin. To prove the correctness of Lemma 10, we discuss it via the following three cases. Case 1. If S(V𝑚 , V𝑛 ) = ⌀, 𝑑V𝑚 ,V𝑛 > 2𝑅𝑠 . Hence, 𝜕S(V𝑚 , V𝑖 , V𝑛 ) cannot be fully covered by 𝑆(V𝑚 ) and 𝑆(V𝑛 ); thereby, V𝑖 is a BN according to Definition 8. As shown in Figure 4, the blue shaded area represents the coverage hole. Case 2. In another scenario, S(V𝑚 , V𝑛 ) = {𝑃}, if point 𝑃 lies on 𝜕S(V𝑚 , V𝑖 , V𝑛 ), 𝜕S(V𝑚 , V𝑖 , V𝑛 ) can be fully covered by 𝑆(V𝑚 ) and 𝑆(V𝑛 ). That is to say, there does not exist a hole in S(V𝑚 , V𝑖 , V𝑛 ) and V𝑖 is a non-BN, as shown in Figure 5(a). Otherwise, no matter whether 𝑃 is inside or outside 𝑆(V𝑖 ), there must be a hole at least around it. Hence, V𝑖 is a BN, as shown in Figures 5(b), 5(c), and 5(d). Case 3. In the third case, S(V𝑚 , V𝑛 ) ≠ ⌀; whether holes exist is determined by the position of S(V𝑚 , V𝑛 ), if S(V𝑚 , V𝑛 ) ∩ 𝜕S(V𝑚 , V𝑖 , V𝑛 ) = ⌀, as shown in Figures 6(a) and 6(b); there must exist a hole and V𝑖 is a BN. Otherwise, no holes exist and V𝑖 is a non-BN, as shown in Figures 6(c), 6(d), 6(e), and 6(f). Lemma 11. Considering an ItN V𝑖 , 𝑆(V𝑖 ) is divided into |𝑁1,2 (V𝑖 )| by 𝑁1,2 (V𝑖 ). If 𝜕S(V𝑖 , 𝑘) (𝑘 ∈ {1, . . . , |𝑁1,2 (V𝑖 )|}) is not covered by the sensing areas of the neighbors of V𝑖 , then V𝑖 is a BN. Otherwise, it is a non-BN. Proof. According to Definition 5, 𝑆(V𝑖 ) is divided into |𝑁1,2 (V𝑖 )| sectors by the neighbors of V𝑖 . If there exists a sector whose border cannot be covered by the sensing areas of the neighbors of V𝑖 , according to Lemma 10 and Definition 8, node V𝑖 is a BN. Otherwise, it is a non-BN. Lemma 12. Given a sensor node V𝑖 , V𝑖 is a BN if the absolute angle of a node in 𝑁1,2 (V𝑖 ) meets any of the four cases: (a) ∠abs(V𝑖 , |𝑁1,2 (V𝑖 )|) ≤ 𝜋, (b) ∠abs(V𝑖 , 1) > 𝜋, (c) ∀𝑘,
Proof. We prove Case (a) and the other cases can be proved in the same way. As shown in Figure 7, nodes V𝑚 and V𝑛 are neighbors of node V𝑖 . The three disk areas enclosed by the dashed lines are 𝑆(V𝑚 ), 𝑆(V𝑖 ), and 𝑆(V𝑛 ), respectively. For V𝑚 is the |𝑁1,2 (V𝑖 )| neighbor of V𝑖 , its absolute angle is the largest one. According to Case (a) of Lemma 12, ∠abs(V𝑖 , V𝑚 ) ≤ 𝜋. V𝑛 is the adjacent node of V𝑚 , and V𝑛 ∈ 𝑁1,2 (V𝑖 ); thus, ∠abs(V𝑖 , V𝑛 ) < ∠abs(V𝑖 , V𝑚 ). The probable positions of V𝑚 and V𝑛 are shown in Figures 7(a), 7(b), and 7(c). In Figure 7(a), we assume that V𝑚 , V𝑖 , and V𝑛 do not coincide with each other and they all lie on the 𝑥-axis and 𝜕S(V𝑚 , V𝑖 , V𝑛 ) can be completely covered by 𝑆(V𝑚 ) and 𝑆(V𝑛 ); meanwhile, 𝑆(V𝑚 ) ∩ 𝑆(V𝑛 ) ∩ 𝑆(V𝑖 ) = {𝑃1 , 𝑃2 }. In addition, the radii of 𝑆(V𝑚 ), 𝑆(V𝑖 ), and 𝑆(V𝑛 ) are equal. Hence, if 𝜕S(V𝑚 , V𝑖 , V𝑛 ) can be fully covered, 𝑆(V𝑚 ), 𝑆(V𝑖 ), and 𝑆(V𝑛 ) must coincide; in other words, 𝑑V𝑚 ,𝑃2 , 𝑑V𝑖 ,𝑃2 , and 𝑑V𝑛 ,𝑃2 are equal. However, this contradicts with the assumption. Therefore, V𝑖 is a BN when Case (a) is satisfied and all V𝑚 , V𝑛 , and V𝑖 are on the 𝑥-axis. In Figures 7(b) and 7(c), we can clearly find that the blue shaded area cannot be covered by any sensors wherever V𝑚 is located. Consequently, V𝑖 is a BN when the position of 𝑁1,2 (V𝑖 ) conforms to any case shown in Figures 7(b) and 7(c). Lemma 13. The BNs clustered by DW depict the outer boundary and coverage holes of WSNs, respectively. Proof. Because all the BNs located on the border of coverage holes and the outer boundary are identified by DSCS, we only need to cluster the BNs into different groups that map coverage holes and the outer boundary. Without loss of generality, within each group of the BNs, there must exist a BN with the minimum coordinate. Besides, the coverage holes lie within WSNs; hence, the BN with the minimum coordinate in all the BNs must lie on the border of the outer boundary. Therefore, the first identified boundary is the outer boundary. Similarly, the other boundary cycles identified in the subsequent rounds are coverage holes.
5. Experiments and Performance Evaluation Both DSCS and DW are implemented in MATLAB 2013b on the platform of Windows 7. In the simulations, the sensor nodes are randomly deployed in a monitored square, the size of which is from 100 m × 100 m to 500 m × 500 m. The number of the deployed nodes ranges from 200 to 2000 with the increment of 200. The communication radius of each node varies from 20 m to 50 m with the increment of 10 m. Besides, we compare our algorithms with the existing detection schemes, BRC and DHD, in terms of the correct detection rate, false detection rate, runtime, average energy dissipation, and algorithm complexity. Figure 8 shows the simulation results in such a WSN that 2000 nodes are randomly deployed in a 500 m × 500 m monitored area with coverage holes different in size, shape, and number. In Figure 8(c), the green points represent the BNs detected by DSCS and the purple represent the refined
8
Mobile Information Systems
S(i )
m
S(m )
n
i
m
S(i ) i
m1 S( ) n n
P
n1
S(m ) m
P i m2
(a) No hole
n1
m1 m2
S(m ) m
n S(n )
n2 P
n2
(b) Hole
m1 S(i ) i S(m ) m n S(n )
n1 P
m2
(c) Hole
n2
n S(n )
(d) Hole
Figure 5: Illustration for Case 2.
S(i )
i S(i )
S(m )
i n1 m1
m1
P1 i
S(m )
m1
S(i ) n
S(n )
m
n1 m 2 n2 P1
S(m )
n2 n1 m
P1
P2
n
n
m
P2
S(n )
m2
P2
m2n2
S(n )
(a) Hole
(b) Hole
(c) No hole
S(i )
i n1
S(i )
n1
S(m )
m1
m1
P1
m1
i n
m
S(i )
S(n ) S(m )
P1 i
n
m
S(n )
n1
P1
S(n ) n
S(m ) m
n2
m2 P2
(d) No hole
P2 (e) No hole
Figure 6: Illustration for Case 3.
P2 (f) No hole
Mobile Information Systems
9
y
y
y
i
Rs
, m
∠(m , i , n ) m n x
n
x m
i
x
d𝑛 ,P2
d𝑚 ,P2
i
n
∠(
m
i , n)
P1
P2
(a) ∠(V𝑚 , V𝑖 , V𝑛 ) = 𝜋
(b) 𝜋/2 < ∠(V𝑚 , V𝑖 , V𝑛 ) < 𝜋
(c) 0 < ∠(V𝑚 , V𝑖 , V𝑛 ) < 𝜋/2
Figure 7: Illustration for Lemma 12.
ones by DW from the detected BNs. Moreover, DW connects the refined BNs to form different holes and the outer boundary of the WSN. Compared with BRC and DHD, DSCS hardly has any noise points. Let BN𝑐 denote the correctly detected BNs and BN𝑓 (BN𝑓 = BNs \ BN𝑐 ) denote the falsely detected BNs. The correct detection rate and false detection rate can be determined by the following formula: BN correctRate = 𝑐 × 100%, |BNs| BN𝑓 × 100%. falseRate = |BNs|
(8)
Figure 9 lists all the correct detection rates and false detection rates of algorithms DSCS, BRC, and DHD. For convenience, we apply the data set offered by Simek et al. [19] in this simulation. It can be observed that the correct detection rate of DSCS always keeps at more than 92% and the false detection rate keeps at less than 10% in the simulations with various sizes and different average node degrees. Although the correct detection rate increases and the false detection rate decreases along with the ascent of average node degree in all algorithms, it is clearly found that the fluctuation of the correct detection rate and false detection rate of BRC and DHD is significantly higher than that of DSCS, which shows that DSCS has a better robustness in all the simulation cases. As shown in Figures 10(a) and 10(b), the number of BNs increases with the ascent of the size of the monitored area while it decreases with the ascent of the length of the communication radius. The reason is that when the same number of nodes is deployed in the monitored areas with different sizes, the node density decreases with the ascent of the size, which results in the reduction of the number of each node’s neighbors and the enhancement of the BNs’ occurrence probability. On the contrary, the node density increases with the ascent of the length of the communication radius, which lowers the BNs’ occurrence probability. From Figure 10(c), we can clearly observe that the number of BNs detected by DSCS is neither the most nor the least, but
the outer boundary and the coverage holes are identified more accurately. As for the runtime, Figures 11(a) and 11(b) show that it decreases with the enlargement of the monitored area and the reduction of the communication radius. The reason is that, given the number of nodes, the node density increases with the size reduction of the monitored area or the length increase of the communication radius. The increase of node density results in the fact that each node has to spend more time to transmit messages and compute its relation with the neighbors. As shown in Figure 11(c), although the runtime is increasing exponentially along with the ascent of the node number, the growth of runtime of DSCS and DW is slower than that of the other two algorithms. As a key factor to prolonging the lifetime of WSNs, the energy efficiency during the phase of identifying BNs is evaluated through figuring out the energy each node consumes. During the simulations, all the algorithms apply the energy dissipation model as depicted in [34, 35]. Figure 12(a) shows the average energy dissipation of DSCS and DW in the WSNs with the size ranging from 100 m × 100 m to 500 m × 500 m. It can be observed that the energy dissipation is inversely proportional to the size of the monitored area. The main reason is that each node needs to transmit more messages in the case of high node density. As mentioned in [34, 35], the dissipation of energy mainly concentrates on message transmission. Thus, the higher the node density is, the more the energy consumption is. Similarly, Figure 12(b) shows that the longer the communication radius is, the more the energy consumption is. In Figure 12(c), different algorithms show a common feature that the energy dissipation is proportional to the amount of nodes. However, the curves of DSCS and DW and BRC, especially of DSCS and DW, grow more smoothly than that of DHD. That is, DSCS is more energy-efficient than BRC and DHD. The same results are obtained from the comparison of remaining energy, as shown in Figure 12(d). The remaining energy of the nodes is the highest when DSCS and DW are employed. To fully evaluate the performance of DSCS and DW, the computation complexity is considered and illustrated in Table 1. By the foregoing analysis, the implementation of DSCS and DW can be divided into five subprocedures,
Mobile Information Systems 500
500
450
450
400
400
350
350
300
300 y (m)
y (m)
10
250
250
200
200
150
150
100
100
50
50
0
0
50
0
100 150 200 250 300 350 400 450 500 x (m)
0
50
100 150 200 250 300 350 400 450 500 x (m) (b) DHD
500
450
450
400
400
350
350
300
300 y (m)
y (m)
(a) BRC
500
250
250
200
200
150
150
100
100
50
50
0
0
50
0
100 150 200 250 300 350 400 450 500 x (m)
0
50
100 150 200 250 300 350 400 450 500 x (m) (d) BRC
500
450
450
400
400
350
350
300
300 y (m)
y (m)
(c) DSCS and DW
500
250
250
200
200
150
150
100
100
50
50
0
0
50
100 150 200 250 300 350 400 450 500 x (m)
0
0
50
100 150 200 250 300 350 400 450 500 x (m)
(e) DHD
(f) DSCS and DW
Figure 8: The comparison of detection.
Mobile Information Systems
11 100
100
90 Correct rate (%)
Correct rate (%)
90 80 70 60
80 70 60 50
50
40
40 8
10
12
14 16 18 20 Average node degree
22
24
8
26
10
12
22
24
26
BRC DHD DSCS
BRC DHD DSCS (a) Nodes = 100
(b) Nodes = 400
60
70
50
60 False rate (%)
False rate (%)
14 16 18 20 Average node degree
40 30 20 10
50 40 30 20 10
0
0 8
10
12
14 16 18 20 Average node degree
22
24
26
Algorithms BRC DHD DSCS
8
10
12
14 16 18 20 Average node degree
22
24
26
Algorithms BRC DHD DSCS (c) Nodes = 100
(d) Nodes = 400
Figure 9: The comparison in terms of detection rate.
Table 1: The comparison in terms of algorithm complexity. Algorithm
DSCS and DW
BRC DHD
Subprocedure Collecting neighboring information Computing absolute angle per node Sorting nodes Identifying BNs Connecting BNs that enclose holes Choosing Good Neighbors Identifying BNs Finding max independent set Creating isocontours
namely, collecting neighbor information, computing absolute angle per node, sorting nodes, identifying BNs, and connecting them to enclose holes. Correspondingly, their complexities are 𝑂(𝑛 + 𝑚), 𝑂(𝑛), 𝑂(𝑛 log(𝑛)), 𝑂(𝑘𝑛), and 𝑂(𝑎(|BNs|)), respectively. Here, 𝑛 = |𝑉|, 𝑚 = |𝐸|, 𝑘 = 21
Complexity 𝑂 (𝑛 + 𝑚) 𝑂 (𝑛) 𝑂 (𝑛 log (𝑛)) 𝑂 (𝑘𝑛) 𝑂 (𝑎|BNs|) 𝑂 (𝑛 + 𝑚) 𝑂 (3 (𝑘 − 1) 𝑛) 𝑂 (𝑛 + 𝑚) 𝑂 (|𝐼|𝑛)
Overall complexity
𝑂 (34𝑛 + 𝑚)
𝑂 (60𝑛 + 𝑚) 𝑂 (86𝑛 + 𝑚)
(𝑘 represents the average node degree of WSN), 𝑎 = 4 (𝑎 denotes the number of coverage holes and the outer boundary of WSN), and |BNs| = 226. Therefore, the overall complexity of DSCS and DW is 𝑂(34𝑛 + 𝑚 + 904), approximately equal to 𝑂(34𝑛 + 𝑚). The BRC is composed of choosing
Mobile Information Systems 700
700
600
600
500
500 Boundary nodes
Boundary nodes
12
400 300
400 300
200
200
100
100
0
0 100 × 100 200 × 200 300 × 300 400 × 400 500 × 500 Size of monitored area (m2 )
(a) BNs detected in different sizes of WSNs
20
30 40 Communication radius
50
(b) BNs detected under different 𝑅𝑐
500 450
Boundary nodes
400 350 300 250 200 150 100 200 400 600 800 1000 1200 1400 1600 1800 2000 The number of deployed nodes Algorithms BRC DHD DSCS (c) BNs detected by different algorithms
Figure 10: The comparison in terms of the number of detected BNs.
Good Neighbors and identifying BNs; their complexities are 𝑂(𝑛 + 𝑚) and 𝑂(3(𝑘 − 1)𝑛), respectively. For 𝑘 = 21, the overall computation complexity is 𝑂(60𝑛 + 𝑚). The DHD algorithm can be divided into two steps. Firstly, it needs to find a max independent set I; the complexity of the stage is 𝑂(𝑛 + 𝑚). Secondly, every node of set I needs to serve as a seed to construct isocontours and the complexity of this stage is 𝑂(|𝐼|𝑛) and |𝐼| = 85. Hence, the overall computation complexity of DHD is 𝑂(𝑚 + 86𝑛). Obviously,
the complexity of DSCS and DW is lower than that of the other two algorithms.
6. Conclusions In this paper, DSCS and DW are proposed for identifying boundary nodes and coverage holes in a WSN where nodes are randomly distributed. Besides, we simulate various scenarios and evaluate the proposed algorithms from different
Mobile Information Systems
13
350
700 600
300 Runtime (s)
Runtime (s)
500 400
250
300 200 200 150
100
20
100 × 100 200 × 200 300 × 300 400 × 400 500 × 500 Size of monitored area
30 40 Communication radius
50
(b) Runtime under different 𝑅𝑐
(a) Runtime in different sizes of monitored areas
800 700
Runtime (s)
600 500 400 300 200 100 0 200 400 600 800 1000 1200 1400 1600 1800 2000 The number of deployed nodes Algorithms BRC DHD DSCS and DW (c) Runtime for different number of nodes
Figure 11: The comparison in terms of runtime.
aspects, including detection rate, runtime, energy efficiency, and algorithm complexity. In the performance evaluation, the effects from the size of WSN and the length of communication radius are taken into account. Simulation results show that DSCS bears the inspiring performance for detecting boundary nodes and DW works well in identifying coverage holes of different sizes and shapes. The algorithms developed in our work are effective in healing coverage holes, improving data forwarding efficiency, and prolonging the lifetime of WSN.
Symbol A: 𝐺: 𝑉: 𝐸:
The monitored area The connected graph that maps the WSN The set of nodes in the WSN The edge set (also called communication links) of 𝐺 𝑑V𝑖 ,V𝑗 : The Euclidean distance between nodes V𝑖 and V𝑗 𝑁𝑘 (V𝑖 ): The 𝑘-hop neighbor set of node V𝑖 and 𝑘 = 1, 2, . . . , 𝑛
14
Mobile Information Systems 50
26
22
Avg. ED (10−3 J)
Avg. ED (10−3 J)
40
30
20
10
18
14
10
6
0
2 100 × 100 200 × 200 300 × 300 400 × 400 500 × 500 Size of monitored area (m2 )
20
30 40 Communication radius
50
(b) Energy dissipation under different 𝑅𝑐
(a) Energy dissipation in different areas
70
100.0 99.8
60
99.6 Remaining energy (%)
Avg. ED (10−3 J)
50 40 30 20
99.4 99.2 99.0 98.8 98.6 98.4
10 98.2 0
98.0 200 400 600 800 1000 1200 1400 1600 1800 2000 The number of deployed nodes Algorithms BRC DHD DSCS and DW
200 400 600 800 1000 1200 1400 1600 1800 2000 The number of deployed nodes Algorithms BRC DHD DSCS and DW
(c) Energy dissipation by different algorithms
(d) Remaining energy in different algorithms
Figure 12: The comparison in terms of energy dissipation.
𝑁1,2 (V𝑖 ):
The union set of one- and two-hop neighbors of node V𝑖 ∠abs(V𝑖 , V𝑚 ): The absolute angle of node V𝑚 ∠(V𝑚 , V𝑖 , V𝑛 ): The central angle constructed by rays V𝑖 V→ 𝑚 and V𝑖→ V𝑛 𝑆(V𝑖 ): The sensing range of node V𝑖 𝜕𝑆(V𝑖 ): The sensing border of node V𝑖 S(V𝑖 , 𝑘): The sector of 𝑆(V𝑖 ) and the number is 𝑘 S(V𝑚 , V𝑖 , V𝑘 ): The sector of 𝑆(V𝑖 ) corresponding to ∠(V𝑚 , V𝑖 , V𝑛 ) The communication radius of node 𝑅𝑐 : The sensing radius of node 𝑅𝑠 :
BN: The boundary node of WSN ItN: The investigated node of WSN.
Conflict of Interests The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments This work is supported by National Natural Science Foundation of China (NSFC) (51275491). The authors would like
Mobile Information Systems to express sincere gratitude to Simek for his source code and data set, which offered them a great help in the WSN research.
References [1] T. Bokareva, W. Hu, S. Kanhere et al., “Wireless sensor networks for battlefield surveillance,” in Proceedings of the Land Warfare Conference, pp. 1–8, Brisbane, Australia, October 2006. [2] B. Pannetier, J. Dezert, and G. Sella, “Multiple target tracking with wireless sensor network for ground battlefield surveillance,” in Proceedings of the 17th International Conference on Information Fusion (FUSION ’14), pp. 1–8, IEEE, Salamanca, Spain, July 2014. [3] I. Butun, S. D. Morgera, and R. Sankar, “A survey of intrusion detection systems in wireless sensor networks,” IEEE Communications Surveys and Tutorials, vol. 16, no. 1, pp. 266–282, 2014.
15 IEEE Transactions on Computers, vol. 63, no. 12, pp. 3053–3065, 2014. [15] M. R. Senouci, A. Mellouk, and K. Assnoune, “Localized movement-assisted sensordeployment algorithm for holedetection and healing,” IEEE Transactions on Parallel and Distributed Systems, vol. 25, no. 5, pp. 1267–1277, 2014. [16] Q. Fang, J. Gao, and L. J. Guibas, “Locating and bypassing holes in sensor networks,” Mobile Networks and Applications, vol. 11, no. 2, pp. 187–200, 2006. [17] A. M. Khedr, W. Osamy, and D. P. Agrawal, “Perimeter discovery in wireless sensor networks,” Journal of Parallel and Distributed Computing, vol. 69, no. 11, pp. 922–929, 2009. [18] J. S. Deogun, S. Das, H. S. Hamza, and S. Goddard, “An algorithm for boundary discovery in wireless sensor networks,” in High Performance Computing—HiPC 2005, vol. 3769 of Lecture Notes in Computer Science, pp. 343–352, Springer, Berlin, Germany, 2005.
[4] P. K. Sahoo, J.-P. Sheu, and K.-Y. Hsieh, “Target tracking and boundary node selection algorithms of wireless sensor networks for internet services,” Information Sciences, vol. 230, pp. 21–38, 2013.
[19] M. Simek, P. Moravek, D. Komosny, and M. Dusik, “Distributed recognition of reference nodes for wireless sensor network localization,” Radioengineering, vol. 21, no. 1, pp. 89–98, 2012.
[5] C. Alippi, R. Camplani, C. Galperti, and M. Roveri, “A robust, adaptive, solar-powered WSN framework for aquatic environmental monitoring,” IEEE Sensors Journal, vol. 11, no. 1, pp. 45– 55, 2011.
[20] H.-C. Ma, P. Kumar Sahoo, and Y.-W. Chen, “Computational geometry based distributed coverage hole detection protocol for the wireless sensor networks,” Journal of Network and Computer Applications, vol. 34, no. 5, pp. 1743–1756, 2011.
[6] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “Wireless sensor networks: a survey,” Computer Networks, vol. 38, no. 4, pp. 393–422, 2002.
[21] W.-T. Wang and K.-F. Ssu, “Obstacle detection and estimation in wireless sensor networks,” Computer Networks, vol. 57, no. 4, pp. 858–868, 2013.
[7] J. M. L. P. Caldeira, J. J. P. C. Rodrigues, and P. Lorenz, “Toward ubiquitous mobility solutions for body sensor networks on healthcare,” IEEE Communications Magazine, vol. 50, no. 5, pp. 108–115, 2012.
[22] W. Li and W. Zhang, “Coverage hole and boundary nodes detection in wireless sensor networks,” Journal of Network and Computer Applications, vol. 48, pp. 35–43, 2015.
[8] S. Funke and C. Klein, “Hole detection or: how much geometry hides in connectivity?” in Proceedings of the 22nd Annual Symposium on Computational Geometry (SCG ’06), pp. 377–385, ACM, New York, NY, USA, 2006. [9] J. Vales-Alonso, F. J. Parrado-Garc´ıa, P. L´opez-Matencio, J. J. Alcaraz, and F. J. Gonz´alez-Casta˜no, “On the optimal random deployment of wireless sensor networks in non-homogeneous scenarios,” Ad Hoc Networks, vol. 11, no. 3, pp. 846–860, 2013. [10] C. Zhu, C. Zheng, L. Shu, and G. Han, “A survey on coverage and connectivity issues in wireless sensor networks,” Journal of Network and Computer Applications, vol. 35, no. 2, pp. 619–632, 2012. [11] S. Benkirane, A. Beni Hssane, M. Hasnaoui, M. D. El Ouadghiri, and M. Laghdir, “Performance analysis of routing protocols for mobile wireless sensor network in an environment with obstacles using nctuns tools,” in Proceedings of the Next Generation Networks and Services (NGNS ’12), pp. 81–86, IEEE, Faro, Portugal, December 2012. [12] I. M. Khan, N. Jabeur, and S. Zeadally, “Hop-based approach for holes and boundary detection in wireless sensor networks,” IET Wireless Sensor Systems, vol. 2, no. 4, pp. 328–337, 2012. [13] L. Shu, Y. Zhang, L. T. Yang, Y. Wang, M. Hauswirth, and N. Xiong, “TPGF: geographic routing in wireless multimedia sensor networks,” Telecommunication Systems, vol. 44, no. 1-2, pp. 79–95, 2010. [14] A. Mostefaoui, M. Melkemi, and A. Boukerche, “Localized routing approach to bypass holes in wireless sensor networks,”
[23] S. P. Fekete, A. Kr¨oller, D. Pfisterer, S. Fischer, and C. Buschmann, “Neighborhood-based topology recognition in sensor networks,” in Algorithmic Aspects of Wireless Sensor Networks: First International Workshop, ALGOSENSORS 2004, Turku, Finland, July 16, 2004. Proceedings, vol. 3121, pp. 123–136, Springer, Berlin, Germany, 2004. [24] S. P. Fekete, M. Kaufmann, A. Kr¨oller, and K. Lehmann, “A new approach for boundary recognition in geometric sensor networks,” in Proceedings of the 17th Canadian Conference on Computational Geometry (CCCG ’05), pp. 82–85, Ontario, Canada, August 2005. [25] Y. Wang, J. Gao, and J. S. B. Mitchell, “Boundary recognition in sensor networks by topological methods,” in Proceedings of the 12th Annual International Conference on Mobile Computing and Networking (MOBICOM ’06), pp. 122–133, Los Angeles, Calif, USA, September 2006. [26] W.-C. Chu and K.-F. Ssu, “Location-free boundary detection in mobile wireless sensor networks with a distributed approach,” Computer Networks, vol. 70, pp. 96–112, 2014. [27] B. Huang, W. Wu, G. Gao, and T. Zhang, “Recognizing boundaries in wireless sensor networks based on local connectivity information,” International Journal of Distributed Sensor Networks, vol. 2014, Article ID 897039, 12 pages, 2014. [28] A. Kr¨oller, S. P. Fekete, D. Pfisterer, and S. Fischer, “Deterministic boundary recognition and topology extraction for large sensor networks,” in Proceedings of the 17th Annual ACM-SIAM Symposium on Discrete Algorithm (SODA ’06), pp. 1000–1009, ACM, Society for Industrial and Applied Mathematics, Miami, Fla, USA, January 2006.
16 [29] O. Saukh, R. Sauter, M. Gauger, and P. J. Marr´on, “On boundary recognition without location information in wireless sensor networks,” ACM Transactions on Sensor Networks, vol. 6, no. 3, article 20, pp. 1–35, 2010. [30] R. Ghrist and A. Muhammad, “Coverage and hole-detection in sensor networks via homology,” in Proceedings of the 4th International Symposium on Information Processing in Sensor Networks (IPSN ’05), pp. 254–260, IEEE Press, Boise, Idaho, USA, April 2005. [31] X.-Y. Li, G. Calinescu, P.-J. Wan, and Y. Wang, “Localized delaunay triangulation with application in ad hoc wireless networks,” IEEE Transactions on Parallel and Distributed Systems, vol. 14, no. 10, pp. 1035–1047, 2003. [32] Y. Xu, X. Gao, Z. Sun, and C. Li, “WSN node localization algorithm design based on RSSI technology,” in Proceedings of the 5th IEEE International Conference on Intelligent Computation Technology and Automation (ICICTA ’12), pp. 556–559, Zhangjiajie, China, January 2012. [33] H. Chen, G. Wang, Z. Wang, H.-C. So, and H. V. Poor, “Non-line-of-sight node localization based on semi-definite programming in wireless sensor networks,” IEEE Transactions on Wireless Communications, vol. 11, no. 1, pp. 108–116, 2012. [34] G. Smaragdakis, I. Matta, A. Bestavros et al., “Sep: a stable election protocol for clustered heterogeneous wireless sensor networks,” in Proceedings of the 2nd International Workshop on Sensor and Actor Network Protocols and Applications (SANPA ’04), pp. 1–11, Boston, Mass, USA, August 2004. [35] W. B. Heinzelman, A. P. Chandrakasan, and H. Balakrishnan, “An application-specific protocol architecture for wireless microsensor networks,” IEEE Transactions on Wireless Communications, vol. 1, no. 4, pp. 660–670, 2002.
Mobile Information Systems
Journal of
Advances in
Industrial Engineering
Multimedia
Hindawi Publishing Corporation http://www.hindawi.com
The Scientific World Journal Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Applied Computational Intelligence and Soft Computing
International Journal of
Distributed Sensor Networks Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Advances in
Fuzzy Systems Modelling & Simulation in Engineering Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Volume 2014
Submit your manuscripts at http://www.hindawi.com
Journal of
Computer Networks and Communications
Advances in
Artificial Intelligence Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
International Journal of
Biomedical Imaging
Volume 2014
Advances in
Artificial Neural Systems
International Journal of
Computer Engineering
Computer Games Technology
Hindawi Publishing Corporation http://www.hindawi.com
Hindawi Publishing Corporation http://www.hindawi.com
Advances in
Volume 2014
Advances in
Software Engineering Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
International Journal of
Reconfigurable Computing
Robotics Hindawi Publishing Corporation http://www.hindawi.com
Computational Intelligence and Neuroscience
Advances in
Human-Computer Interaction
Journal of
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Journal of
Electrical and Computer Engineering Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014
Hindawi Publishing Corporation http://www.hindawi.com
Volume 2014