# Decomposition Based Localization for Anisotropic Sensor Networks

Authors: Baojian Gao; Xiaoning Zhao; Jun Wang; Xiaojiang Chen
Journal: International Journal of Distributed Sensor Networks
 (2015)

---

## Abstract

Range-free localization algorithms have caused widespread attention due to their low cost and low power consumption. However, such schemes heavily depend on the assumption that the hop count distance between two nodes correlates well with their Euclidean distance, which will be satisfied only in isotropic networks. When the network is anisotropic, holes or obstacles will lead to the estimated distance between nodes deviating from their Euclidean distance, causing a serious decline in localization accuracy. This paper develops HCD-DV-Hop for node localization in anisotropic sensor networks. HCD-DV-Hop consists of two steps. Firstly, an anisotropic network is decomposed into several different isotropic subnetworks, by using the proposed Hop Count Based Decomposition (HCD) scheme. Secondly, DV-Hop algorithm is carried out in each subnetwork for node localization. HCD first uses concave/convex node recognition algorithm and cleansing criterion to obtain the optimal concave and convex nodes based on boundary recognition, followed by segmentation of the network’s boundary. Finally, the neighboring boundary nodes of the optimal concave nodes flood the network with decomposition messages; thus, an anisotropic network is decomposed. Extensive simulations demonstrated that, compared with range-free DV-Hop algorithm, HCD-DV-Hop can effectively reduce localization error in anisotropic networks without increasing the complexity of the algorithm.


---

## Body

## 1. Introduction

Node localization is one of the most fundamental technologies in wireless sensor networks (WSNs). For most applications of WSNs [1–3], only when nodes know their locations can they tell the system “what is happening in what position.” For instance, in a fire monitoring system, a sensor node detects that a fire breaks out. The system is able to notify people where the fire is only when it knows the node’s location. This allows fireman to reach the correct location and take effective measures immediately in order to prevent the spread of the fire. In addition, accurate localization is the foundation of many other WSNs technologies, such as position-aware data processing [4–6] and geographic routing [7, 8].Among existing localization algorithms, range-free schemes [9–12] have been widely used due to their low cost and low power consumption. However, these schemes assume that the hop count distance between two nodes correlates well with their Euclidean distance, which will be satisfied only in isotropic networks [9, 13] (the definition of isotropic and anisotropic networks can be found in [14]). In practical applications, such as large-scale heritage protection [15] and military reconnaissance [16], sensor nodes are often randomly deployed in complex environments, which makes their network topologies highly irregular, with the possibility of holes or obstacles. Such network is called anisotropic network.For example, Figure1 shows an application of WSNs. In this scenario, sensors are distributed in the region to be monitored, and Figure 2 shows the corresponding node deployment. It is obvious in Figure 2 that the hop count distances between some pairs of nodes heavily deviate from their Euclidean distances (Take A and B in Figure 2, e.g., the black solid line represents the hop count distance between A and B, and the orange dotted line represents the Euclidean distance between them). Using the deviated shortest path distance instead of Euclidean distance to take part in localization will cause a serious decline in localization accuracy.Figure 1
Application example of WSNs.Figure 2
Node deployment.(1) Related Work. In order to improve the node localization accuracy in anisotropic networks, scholars have put forward many schemes in recent years, which can be divided into three categories.The first scheme is mainly dedicated to amending the estimated distance between nodes. Li and Liu [17] proposed REP (Rendered Path) for localization in anisotropic sensor networks. REP assumes that the boundary nodes around obstacles have been obtained by a boundary recognition algorithm. The shortest path between nodes is divided into many different subsections according to the location of the obstacles. The angle between two subsections is calculated by constructing a unit circle in the intersection point of the shortest path and network holes; then, the Euclidean distance can be obtained by using the cosine law. REP is able to amend the estimated distance that is affected by obstacles. The main drawback is that REP suffers heavy computation and communication overhead, requiring high density and computation power of nodes. PDM (Proximity-Distance Map) [18] first uses a matrix to record the estimated distance and the Euclidean distance between anchor nodes. Then, it calculates the linear transformation matrix between the estimated distance and the Euclidean distance using the least square method. By using the linear transformation matrix, the estimated distance can be transformed into an amended distance, which is used to participate in localization. The disadvantage is that PDM requires the uniform deployment of anchor nodes, which is difficult in real applications.The second solution aims at reducing the localization error by avoiding serious bent path participating in localization. Reference [19] proposed an improvement scheme for DV-Hop. It uses the cubic polynomial interpolation to obtain paths that are not heavily bent. By using these “good” paths in the calculations, the performance of DV-Hop in an anisotropic network can be improved. Reference [20] estimates the shortest paths affected by obstacles or network boundaries between unknown nodes and anchor nodes. By grading the estimating result, [20] chooses the anchor nodes corresponding to those less affected paths to participate in calculation, thus reducing the localization error. Reference [21] chooses some suitable anchor nodes in the networks and calculates the locations of unknown nodes through iterative multilateration. The localization error is controlled by avoiding the use of serious bent paths. Since iterative multilateration is employed, there is cumulative effect in localization error. Reference [22] proposed an improved multihop localization algorithm which is called i-multihop. It can automatically identify and eliminate severely miscalculated distances. In the localization process, these “bad” distances will not be used in calculation. Thus, the localization error can be controlled.The third method achieves localization of unknown nodes by means of building landmark network. Reference [23] first locates a landmark network, which is composed of nodes that are uniformly sampled from the original network. The density of the landmark network is preset by the system. Each nonlandmark node uses trilateration to calculate its own location according to the distances to its closest three landmarks. References [24, 25] first select some landmark nodes using particular rules. Then, they calculate the Voronoi diagram and its dual Delaunay diagram according to the landmark nodes. The location of an unknown node is computed in each subdiagram. Finally, the original network can be restored through all the Delaunay diagrams. The difference between [24] and [25] is the method of selecting landmarks. Since both of the algorithms require Delaunay division for anisotropic networks, they are much more complicated to implement, which limits the application of the algorithms.As can be seen from the above analysis, the similarity among the methods in [17–22] is that they all use various mechanisms to avoid or amend serious bent paths, which does not fundamentally solve the impact of anisotropic networks characteristics on localization. Although the schemes in [24, 25] proposed new ideas, their implementation processes are complex, which is not suitable for large-scale sensor networks.(2) The HCD-DV-Hop Scheme. In this paper, a new method for localization is proposed based on decomposition. Our scheme is composed of two steps. First, it decomposes an anisotropic network into several isotropic subnetworks by using the proposed Hop Count Based Decomposition (HCD) algorithm. Second, it uses the typical range-free DV-Hop algorithm to achieve node localization in each subnetwork. For simplicity, we call the proposed method HCD-DV-Hop algorithm. The contributions of this paper are summarized as follows:(i)
We analyze the reason why range-free DV-Hop algorithm is suitable for localization in isotropic networks but causes serious localization error in anisotropic networks. Then, we give an improved solution.(ii)
We introduce a distributed localization algorithm for anisotropic networks, which is called HCD-DV-Hop algorithm. HCD-DV-Hop first decomposes an anisotropic network into several different isotropic networks, so that the influence of holes or obstacles on the shortest communication path between far-away nodes is avoided. Since there is no longer serious bent path in each isotropic subnetwork, DV-Hop can be carried out for node localization in such subnetwork.(iii)
A Hop Count Based Decomposition (HCD) algorithm for anisotropic networks is proposed. HCD includes four steps: boundary recognition, concave/convex node recognition and cleansing, boundary segmentation, and region decomposition. All of these steps are distributed and only require connectivity information.(iv)
Simulation results demonstrate the superior performance of HCD-DV-Hop under different ratios of anchor node and communication radius in anisotropic networks.The rest of this paper is organized as follows. In Section2, we present the motivation of our scheme. Section 3 is an overview of HCD-DV-Hop. Section 4 is devoted to a description of the proposed HCD algorithm for anisotropic networks. The performance of HCD-DV-Hop is evaluated in Section 5. Finally, Section 6 concludes this paper.


## 2. Motivation

### 2.1. DV-Hop Algorithm

DV-Hop [9, 26] is one of the most widely used range-free schemes and it consists of three steps.Step 1 (obtain the minimum hop count).
Each anchor node broadcasts its location information and hop count value with a packet(xi,yi,hi), where (xi,yi) is the coordinate of anchor node i and hi is the minimum hop count from the anchor node i. By this means, all nodes (including anchor and unknown nodes) can obtain locations of anchor nodes and minimum hop count to each anchor.Step 2 (calculate the estimated distance).
Once an anchor node gets distances to other anchors, it estimates an average size for one hop, that is,Ci, which is then deployed as a correction to the entire network:(1)Ci=∑j≠ixi-xj2+yi-yj2∑j≠ihi,where (xi,yi) and (xj,yj) are the coordinates of anchor node i and anchor node j and hi is the minimum hop count between anchor nodes i and j. Each unknown node receives the correction from its nearest anchor node and multiplies it by the minimum hop count, so that the estimated distance to each anchor node is obtained.Step 3 (each unknown node estimates its location by using the maximum likelihood estimation).
Let the coordinate of unknown nodeM be (x,y), and the distance between anchor node i and unknown node M is di. Assuming there are n anchor nodes in the network, (2) can be obtained:(2)x-x12+y-y12=d12,x-x22+y-y22=d22,⋮x-xn2+y-yn2=dn2.
By using the maximum likelihood estimation, we get the location of unknown nodeM by(3)X=A′A-1A′B,where(4)A=2x1-xn2y1-yn2x2-xn2y2-yn⋮⋮2xn-1-xn2yn-1-yn,B=x12+y12-xn2-yn2+dn2-d12x22+y22-xn2-yn2+dn2-d22⋮xn-12+yn-12-xn2-yn2+dn2-dn-12,X=xy.


### 2.2. The Limitation of DV-Hop in Anisotropic Networks

As can be seen from DV-Hop, the estimated location accuracy of an unknown node depends on the accuracy of its estimated distances to the anchor nodes. That is, if the estimated distance between two nodes is closer to their Euclidean distance, the localization result will be more accurate. If the estimated distance heavily deviates from the Euclidean distance, the localization accuracy will be seriously declined.In Figure3, we use AG and MN to, respectively, represent the Euclidean distance between nodes A and G and M and N (the dotted line in Figures 3(a) and 3(b)). |AG| and |MN| are the estimated distances between A and G and M and N, respectively. In DV-Hop, the estimated distance between nodes i and j is calculated by hij×HS, where hij is the minimum hop count between i and j (the hop count represented by the solid line in Figure 3). HS is the average size for one hop. The estimated distance between A and G in Figure 3(a) is(5)AG=hAG×HS≈AB+BC+CD+DE+EF+FG.Figure 3
The shortest communication path between nodes in different networks.
(a)
Isotropic network
(b)
Anisotropic networkThe estimated distance betweenM and N in Figure 3(b) is(6)MN=hMN×HS≈MH+HI+IJ+JK+⋯+KL+LP+PQ+QN,where · represents the Euclidean distance between two nodes. From Figure 3(a), we have(7)AB+BC+CD+DE+EF+FG≈AG.Then,(8)AG≈AG.That is to say, the estimated distance betweenA and G is approximately equal to their Euclidean distance. Therefore, in such isotropic networks, when the estimated distance takes the place of the Euclidean distance in localization, it will not cause serious error. That is why DV-Hop is suitable for localization in isotropic networks.However, in an anisotropic network like Figure3(b), it is obvious that(9)MH+HI+IJ+JK+KL+LP+⋯+PQ+QN≫MN.Taking formula (6) into consideration, then we have(10)MN≫MN.Formula (10) means that the estimated distance between M and N is much larger than their Euclidean distance. When we use the estimated distance to replace the Euclidean distance to participate in localization, it will cause serious localization error.From the above analysis, we observe that the shortest communication path between nodes is crucial to localization result. Only when the shortest estimated distance between nodes is approximately equal to their Euclidean distance can the estimated location of node obtained by localization algorithm be approximate to its real location. In an anisotropic network, because of the barrier and irregularity of the network topology, the shortest estimated distance between far-away nodes will heavily deviate from the Euclidean distance, which will cause serious localization error.A straightforward way is decomposing an anisotropic network into many different isotropic subnetworks and then carrying out DV-Hop for node localization in each subnetwork. Since there is no longer serious bent path between nodes in each subnetwork, the estimated distance can be approximately equal to the Euclidean distance. Therefore, in theory, this scheme can reduce localization error to a certain extent in anisotropic networks.


## 2.1. DV-Hop Algorithm

DV-Hop [9, 26] is one of the most widely used range-free schemes and it consists of three steps.Step 1 (obtain the minimum hop count).
Each anchor node broadcasts its location information and hop count value with a packet(xi,yi,hi), where (xi,yi) is the coordinate of anchor node i and hi is the minimum hop count from the anchor node i. By this means, all nodes (including anchor and unknown nodes) can obtain locations of anchor nodes and minimum hop count to each anchor.Step 2 (calculate the estimated distance).
Once an anchor node gets distances to other anchors, it estimates an average size for one hop, that is,Ci, which is then deployed as a correction to the entire network:(1)Ci=∑j≠ixi-xj2+yi-yj2∑j≠ihi,where (xi,yi) and (xj,yj) are the coordinates of anchor node i and anchor node j and hi is the minimum hop count between anchor nodes i and j. Each unknown node receives the correction from its nearest anchor node and multiplies it by the minimum hop count, so that the estimated distance to each anchor node is obtained.Step 3 (each unknown node estimates its location by using the maximum likelihood estimation).
Let the coordinate of unknown nodeM be (x,y), and the distance between anchor node i and unknown node M is di. Assuming there are n anchor nodes in the network, (2) can be obtained:(2)x-x12+y-y12=d12,x-x22+y-y22=d22,⋮x-xn2+y-yn2=dn2.
By using the maximum likelihood estimation, we get the location of unknown nodeM by(3)X=A′A-1A′B,where(4)A=2x1-xn2y1-yn2x2-xn2y2-yn⋮⋮2xn-1-xn2yn-1-yn,B=x12+y12-xn2-yn2+dn2-d12x22+y22-xn2-yn2+dn2-d22⋮xn-12+yn-12-xn2-yn2+dn2-dn-12,X=xy.


## 2.2. The Limitation of DV-Hop in Anisotropic Networks

As can be seen from DV-Hop, the estimated location accuracy of an unknown node depends on the accuracy of its estimated distances to the anchor nodes. That is, if the estimated distance between two nodes is closer to their Euclidean distance, the localization result will be more accurate. If the estimated distance heavily deviates from the Euclidean distance, the localization accuracy will be seriously declined.In Figure3, we use AG and MN to, respectively, represent the Euclidean distance between nodes A and G and M and N (the dotted line in Figures 3(a) and 3(b)). |AG| and |MN| are the estimated distances between A and G and M and N, respectively. In DV-Hop, the estimated distance between nodes i and j is calculated by hij×HS, where hij is the minimum hop count between i and j (the hop count represented by the solid line in Figure 3). HS is the average size for one hop. The estimated distance between A and G in Figure 3(a) is(5)AG=hAG×HS≈AB+BC+CD+DE+EF+FG.Figure 3
The shortest communication path between nodes in different networks.
(a)
Isotropic network
(b)
Anisotropic networkThe estimated distance betweenM and N in Figure 3(b) is(6)MN=hMN×HS≈MH+HI+IJ+JK+⋯+KL+LP+PQ+QN,where · represents the Euclidean distance between two nodes. From Figure 3(a), we have(7)AB+BC+CD+DE+EF+FG≈AG.Then,(8)AG≈AG.That is to say, the estimated distance betweenA and G is approximately equal to their Euclidean distance. Therefore, in such isotropic networks, when the estimated distance takes the place of the Euclidean distance in localization, it will not cause serious error. That is why DV-Hop is suitable for localization in isotropic networks.However, in an anisotropic network like Figure3(b), it is obvious that(9)MH+HI+IJ+JK+KL+LP+⋯+PQ+QN≫MN.Taking formula (6) into consideration, then we have(10)MN≫MN.Formula (10) means that the estimated distance between M and N is much larger than their Euclidean distance. When we use the estimated distance to replace the Euclidean distance to participate in localization, it will cause serious localization error.From the above analysis, we observe that the shortest communication path between nodes is crucial to localization result. Only when the shortest estimated distance between nodes is approximately equal to their Euclidean distance can the estimated location of node obtained by localization algorithm be approximate to its real location. In an anisotropic network, because of the barrier and irregularity of the network topology, the shortest estimated distance between far-away nodes will heavily deviate from the Euclidean distance, which will cause serious localization error.A straightforward way is decomposing an anisotropic network into many different isotropic subnetworks and then carrying out DV-Hop for node localization in each subnetwork. Since there is no longer serious bent path between nodes in each subnetwork, the estimated distance can be approximately equal to the Euclidean distance. Therefore, in theory, this scheme can reduce localization error to a certain extent in anisotropic networks.


## 3. HCD-DV-Hop Overview

In this paper, we assume that the network is fully connected. Our proposed decomposition based localization scheme, that is, HCD-DV-Hop, mainly consists of the following two steps, as is shown in Figure4.(i)
The anisotropic network is decomposed into several different isotropic subnetworks by using the Hop Count Based Decomposition (HCD) algorithm. HCD goes through four steps: boundary recognition, concave/convex node recognition and cleansing, boundary segmentation, and region decomposition, which will be shown in Section4.(ii)
For each isotropic subnetwork, the typical range-free DV-Hop algorithm will be carried out for node localization.Figure 4
HCD-DV-Hop overview.


## 4. Hop Count Based Decomposition (HCD) Algorithm for Anisotropic Networks

In large-scale wireless sensor networks, there may be thousands of sensor nodes, which makes it almost impossible to decompose the network by artificial means. So this paper will design an algorithm to achieve decomposition by using connectivity information of the network. The proposed Hop Count Based Decomposition (HCD) algorithm consists of four steps.Step 1 (boundary recognition).
This step aims at recognizing the boundary nodes in the network.Step 2 (concave/convex node recognition and cleansing).
Based on boundary recognition, the concave/convex node recognition algorithm and cleansing criterion is proposed to obtain the optimal concave and convex nodes.Step 3 (boundary segmentation).
The optimal concave and convex nodes are used to flood the boundary nodes to segment the boundary into different branches.Step 4 (region decomposition).
The neighboring boundary nodes of optimal concave nodes flood the network to decompose an anisotropic network into different subnetworks.


### 4.1. Boundary Recognition

The existing boundary recognition algorithms can be divided into two categories: statistical methods [27] and geometrical methods [28]. After years of researches and developments, scholars have proposed many boundary recognition algorithms with good performance, such as [29–31]. Since this paper mainly focuses on region decomposition and node localization, we directly use [31] in our simulations for boundary recognition.


### 4.2. Concave/Convex Node Recognition and Cleansing

#### 4.2.1. Definition of Concave/Convex Node Based on Cyclotomy

The cyclotomy [32] refers to increasing the number of sides of the regular polygon inside a circle to estimate the circumference by summing them (see Figure 5), based on which the concavity and convexity function of O point is given as (11)φ=ϕ180∘≈n×dπ×R,where d represents side length of the polygon, R is the radius of the circle, and n is the number of sides corresponding to ϕ. It means in (11) that the summation of n sides approximately equals the arc length of ϕ. When the vertexes of the polygon in Figure 5 are regarded as sensor nodes in the network, d can be considered as the maximum communication distance and n is the hop count between nodes.Figure 5
Schematic diagram of the cyclotomy.In practical application, since the sensor network is discrete, there may be deviations in the calculation results due to the boundary noise. Considering this factor, the definitions of the concave nodes and the convex nodes based on the boundaries ofϕ=157.5∘ and ϕ=202.5∘ are given by(12)0<φ≤78,Ois  a  convex  node,78<φ<98,Ois  a  nonconcave/convex  node,98≤φ<2,Ois  a  concave  node.Therefore, the concavity/convexity of pointO can be determined by calculating the value of φ.


#### 4.2.2. Concave/Convex Node Recognition Algorithm Based on Minimum Hop Count

Given an anisotropic network (see C-shape network in Figure6 for an example), the boundary nodes can be recognized through [31]. Define ω as the set of boundary nodes (the black nodes in Figure 6). For an arbitrary node Pi∈ω, we define ∂Nk(Pi) as k-hop neighborhood of Pi, which means the set of nodes exactly k hops away from Pi. Intuitively, ∂Nk(Pi) can be considered as a (or a part of) circle centered at Pi (see Pi in Figure 6). Given two nodes pi1,pi2∈∂Nk(Pi), define δ as the set of nodes that are on the shortest path from pi1 to pi2 (including pi1 and pi2) through the nodes in ∂Nk(Pi). Then, we define the minimum hop count between pi1 and pi2, denoted by n, as δ minus one.Figure 6
Boundary nodes are filled with black. (a) ForPi (filled with red), the nodes in ∂N3(Pi) are filled with green. pi1 and pi2 are both boundary nodes and 3-hop nodes of Pi. Intuitively, δ=16. The minimum hop count from pi1 to pi2 is n=16-1=15, as is indicated by the arrows. (b) For Pj (filled with red), the nodes in ∂N2(Pj) are filled with green. pj1 and pj2 are both boundary nodes and 2-hop nodes of Pj. The auxiliary nodes (pj4 and pj5) to make ∂N2(Pj) a connected component are filled with orange, λ=1. The minimum hop count from pj1 to pj2 is n=(11-1)-1=9, as is indicated by the arrows.For each boundary nodePi, as shown in Figure 6, it first floods the network for k hops to obtain its k-hop neighborhood ∂Nk(Pi). Two nodes pi1 and pi2 belonging to both ∂Nk(Pi) and boundary nodes identify themselves. Note that pi1 and pi2 are on different sides of Pi. It is possible that there may be several boundary nodes belonging to ∂Nk(Pi) at each side of Pi, and these boundary nodes naturally form a connected component. For this case, we randomly choose one boundary node at each side of Pi. pi1 and pi2 then flood ∂Nk(Pi) to obtain the minimum hop count between them.Because of the discreteness of the network,∂Nk(Pj) might be disconnected, as Pj in Figure 6 for an example. For this case, we use the following method to solve the problem. pj1, pj2, pj3, pj6, and the nodes filled with green belong to ∂N2(Pj), and pj4 and pj5 belong to ∂N1(Pj). Since node pj3 cannot send the message received from pj1 to pj6 directly, pj3 then sends this message to its neighbor pj4, called auxiliary node, which is k-1 hops from Pj. As pj4 has no neighbor belonging to ∂N2(Pj), it sends the message to pj5. pj5 then sends the message to pj6, which belongs to ∂N2(Pj). With the help of auxiliary nodes, ∂N2(Pj) is considered connected. Thus, the minimum hop count from pj1 to pj2 is obtained. Obviously, the message from pj2 to pj1 can travel in the same way. The minimum hop count is estimated by (n-λ), where λ is the difference between k and the hop count (k-1 in Figure 6) of the closest auxiliary node to the boundary node Pj. Another case that needs to be considered is when k-1 hop auxiliary nodes cannot make ∂Nk(Pj) connected, it will turn to k+1 hop auxiliary nodes for help. The process is the same as the case of k-1. The worst case, which is almost impossible as the network is fully connected, is that neither k-1 hop nor k+1 hop auxiliary nodes can make ∂Nk(Pj) connected. For this case, we discard the concavity/convexity recognition of Pj.Next, we give the detail derivation process of concave/convex node recognition criterion. Takek=2 for example. For an arbitrary boundary node Pi, with the above definitions of ∂Nk(Pi), k-hop neighboring boundary nodes pi1 and pi2 for Pi (i.e., pi1,pi2∈ω and pi1,pi2∈∂N2(Pi)), and the minimum hop count (denoted by n) from pi1 to pi2, we assume each hop count distance is Si, i=1,2,…,n. According to (11), the concavity and convexity function of Pi can be described by(13)φ=S1+S2+⋯+Snπ×R′.Taking account of the deployment efficiency of sensor nodes, it is reasonable to assume thatSi is uniformly distributed in [R/2,R], where R is the maximum communication distance. Let Si=Si′·R; then, Si′ is uniformly distributed in [1/2,1]. As shown in Figure 6, it can be seen that R<R′≤2R. Because of the randomness distribution of the nodes, we take R′=1.5R. Similarly, we take R′=2.5R when k=3, R′=3.5R when k=4, and R′=4.5R when k=5. Then, (13) can be rewritten as(14)φ=S1′R+S2′R+⋯+Sn′Rπ×1.5R=∑i=1nSi′1.5π.Note that eachSi′/1.5π is a small random variable which is uniformly distributed in [1/3π,1/1.5π]. According to the central limit theorem, when n is large enough, the distribution of φ is close to normal distribution. As E[Si′/1.5π]=1/2π and D[Si′/1.5π]=1/108π2, we have μ=E[φ]=n/2π and σ2=D[φ]=n/108π2. Then,(15)φ=∑i=1nSi′1.5π≈12π×n=n2π.Letn1, n2, and n3 be the minimum hop count between pi1 and pi2 when Pi, respectively, is a convex node, a nonconcave/convex node, and a concave node. Then, φ1=n1/2π, φ2=n2/2π, and φ3=n3/2π. According to (12),(16)0<n12π≤78,78<n22π<98,98≤n32π<2.Thus,n1≤5.5, 5.5<n2<7.1, and 7.1≤n3<12.6. Since n is a positive integer, we have 1≤n1≤5, n2=6,7, and 8≤n3≤12. Calculating the different values of n through the above processes, we can get the initial concave/convex node recognition criterion in different values of k based on the minimum hop count, as is shown in Table 1.Table 1
Initial concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
5
6
≤
n
≤
7
n
≥
8
3
n
≤
9
10
≤
n
≤
11
n
≥
12
4
n
≤
12
13
≤
n
≤
16
n
≥
17
5
n
≤
16
17
≤
n
≤
21
n
≥
22In order to make the results more accurate, the values ofn1, n2, and n3 will be corrected using the following method. We also take k=2, for example, and choose n1=3, n2=7, and n3=10 during the calculation.As shown in Figure7, α and β, respectively, are the intersection points of φ1 and φ2 and φ2 and φ3. The probability theory shows that when α and β are taken as optimal threshold, the misclassification probability can be minimized.Figure 7
Distribution curve whenk is 2.The normal probability density function is(17)fx=12πσexp⁡-x-μ22σ2,where μ1=n1/2π, σ12=n1/108π2, μ2=n2/2π, and σ22=n2/108π2. Then,(18)12πσ1exp⁡-α-μ122σ12=12πσ2exp⁡-α-μ222σ22.Thus,(19)α≈0.729.The corresponding minimum hop count ofα is n1∗=α·2π≈4.6. The value of β can be calculated in the same way. Thus, β≈1.332, and its corresponding minimum hop count is n2∗=β·2π≈8.4. Since the hop count value is a positive integer, it is easy to know that, in the case of k=2, when the minimum hop count n≤4, Pi is identified as a convex node, when 5≤n≤8, Pi is a nonconcave/convex node, and when n≥9, Pi is a concave node.Letk, respectively, be 3, 4, and 5, and calculate the corresponding values of α and β. Then, the corrected value of the minimum hop count n is determined and the concavity or convexity of Pi can be identified, as is shown in Table 2.Table 2
Final concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
4
5
≤
n
≤
8
n
≥
9
3
n
≤
7
8
≤
n
≤
13
n
≥
14
4
n
≤
9
10
≤
n
≤
18
n
≥
19
5
n
≤
12
13
≤
n
≤
23
n
≥
24Assume that there areM boundary nodes in the network, represented by Pi, i=1,2,…,M. For an arbitrary node Pi∈ω, it can use its k-hop neighboring boundary nodes pi1 and pi2 to identify the concavity or convexity of itself, where k∈{2,3,4,5}. According to the above-mentioned mathematical analysis and criterion, we give the concave/convex node recognition algorithm based on the minimum hop count as follows, which includes four steps.Step 1.
For each boundary nodePi, Pi obtains its k-hop neighboring boundary nodes pi1 and pi2; that is, pi1,pi2∈ω and pi1,pi2∈∂N2(Pi), where k∈{2,3,4,5}, and its value is preset by the system.Step 2.
If there arepi1 and pi2 that meet the condition in Step 1, then turn to Step 3. Otherwise, Pi gives up the concavity/convexity identification of itself.Step 3.
P
i derives the minimum hop count n between pi1 and pi2.Step 4.
P
i identifies its concavity or convexity by using the criterion in Table 2.


#### 4.2.3. Concave/Convex Node Cleansing

After concave/convex node recognition algorithm, the concavity or convexity of each boundary node has been identified. Since the sensor network is discrete, it is possible that a nonconcave node which is in the nonconcave region is identified as a concave node by mistake. These mistaken concave nodes often appear in an isolate way. In contrast, there always are several concave nodes in a concave area; that is, real concave nodes always gather together (seen in Figures8(c), 9(c), and 10(c), e.g.; the black nodes are ordinary nodes, and the red nodes are boundary nodes. The nodes with peach circles are concave nodes, and those with cyan circles are convex nodes. Other red nodes without any circles are nonconcave/convex nodes). Therefore, the isolate concave node can be directly eliminated from the recognition result (to simplify our algorithm, we define isolate concave node as the concave node which has no concave node within its two hops; similarly, isolate convex node is the convex node which has no convex node within its two hops), as well as the isolate convex node.Figure 8
Region decomposition of L-shape network. 763 nodes are uniformly distributed, and average degree of the network is 9.13. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 9
Region decomposition of C-shape network. 1295 nodes are uniformly distributed, and average degree of the network is 9.04. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 10
Region decomposition of single-window-shape network. 1505 nodes are uniformly distributed, and average degree of the network is 9.01. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)For the concave nodes that gather together in one concave area, since larger concavity of the concave node will lead to larger deviation between hop count distance and the Euclidean distance, we choose the concave node with the maximum concavity as the optimal concave node in this area. In our algorithm, the node with maximum concavity corresponds to the node which is with the biggest minimum hop count between its twok-hop neighboring boundary nodes. It is possible that in some concave area there may be more than one concave node with the same biggest minimum hop count. For this case, we randomly choose one of them as the optimal concave node. The above process is called cleansing process.Similarly, we use the cleansing criterion to cleanse the convex node in the network. The difference is that the convex node with the smallest minimum hop count should be taken as the optimal convex node. If there is more than one convex nodes with the same smallest minimum hop count in a convex area, we randomly choose one of them as the optimal convex node.Through the cleansing criterion, the optimal concave/convex node is obtained. For example, the cleansing results of Figures8(c), 9(c), and 10(c), respectively, are Figures 8(d), 9(d), and 10(d), where the optimal concave nodes are marked with peach and the optimal convex nodes are marked with cyan.


### 4.3. Boundary Segmentation

Assume that the boundary of the network is fully connected. For simplicity, the optimal concave and convex nodes are called the optimal nodes in this section. In order to segment the boundary, we use the optimal nodes to flood Boundary Segmentation PacKeT (BS-PKT) among the boundary nodes. Each BS-PKT concludes the ID number of the node which generates the BS-PKT. When a boundary nodeA receives a BS-PKT, A deals the current BS-PKT with the following ways:(1)
IfA is not a boundary node, A discards BS-PKT.(2)
IfA is a boundary node but not an optimal node, A records the ID number in BS-PKT and sends BD-PKT to its neighbor nodes.(3)
IfA is both a boundary node and an optimal node, but A has not recorded any ID number of other optimal nodes, then A records the ID number in BS-PKT and does not send BS-PKT anymore.(4)
IfA is both a boundary node and an optimal node, and A has recorded an ID number of another optimal node, A discards the BS-PKT.After flooding, each boundary node will record two different ID numbers of the optimal nodes. Assume the ID numbers, respectively, areI and J. Let BoundID=[I,J]. Only when two boundary nodes have the same I and J is their BoundID defined to be equal. In such situation, the boundary nodes which have the same BoundID belong to the same boundary branch, and BoundID is the boundary number of this branch. Thus, the boundary of the network is segmented (e.g., Figures 8(e), 9(e), and 10(e) are the boundary segmentation results of the networks, where different color and markers represent different boundary branches).


### 4.4. Region Decomposition

For a fully connected anisotropic network, defineU as the set of the optimal concave nodes. For an arbitrary optimal concave node qi∈U, its two k-hop neighboring boundary nodes have been obtained in the concave/convex node recognition process. For simplicity, the k-hop neighboring boundary nodes are also called neighboring boundary nodes.To decompose the network, all neighboring boundary nodes of the optimal concave nodes flood Region Decomposition PacKeT (RD-PKT) in the network. Each RD-PKT concludes the ID number of the node which generates this RD-PKT and the boundary numberBoundID recorded by the node. The format of RD-PKT is (ID, BoundID). When an arbitrary node B receives a RD-PKT for the first time, B records (ID, BoundID) in RD-PKT and sends RD-PKT to its neighbor nodes; if B receives a RD-PKT not for the first time, B discards it directly. This policy ensures that most nodes will receive only one RD-PKT from the closest neighboring boundary node.By this means, each node in the network will record only one RD-PKT, in which the ID andBoundID number of the corresponding neighboring boundary node are included. The nodes which have the same ID number belong to one subregion; then, the original region decomposition result is obtained. To avoid the network from decomposing to too many subregions, the nodes with the same BoundID can be merged to one subregion. Finally, an anisotropic network is decomposed into many different subnetworks. See Figures 8(f), 9(f), and 10(f), for example; different colors represent different subnetworks. It is obvious that there is no longer serious bent path between far-away nodes in each subnetwork. Thus, each subnetwork can be considered as an isotropic network.In summary, after boundary recognition, concave/convex node recognition and cleansing, boundary segmentation, and region decomposition, an anisotropic network finally is decomposed into several different isotropic subnetworks. During the process of HCD, we only need to use the connectivity information of the network, without any additional hardware on sensor nodes. As a range-free localization algorithm, the complexity of communication cost of DV-Hop isO(N·m). Here, N and m are the numbers of sensor nodes and anchor nodes, respectively. For HCD (Hop Count Based Decomposition) scheme, the complexity of communication cost is O(N). Since our proposed HCD-DV-Hop scheme is composed of HCD and DV-Hop, the complexity of communication cost of HCD-DV-Hop is the same as DV-Hop.


## 4.1. Boundary Recognition

The existing boundary recognition algorithms can be divided into two categories: statistical methods [27] and geometrical methods [28]. After years of researches and developments, scholars have proposed many boundary recognition algorithms with good performance, such as [29–31]. Since this paper mainly focuses on region decomposition and node localization, we directly use [31] in our simulations for boundary recognition.


## 4.2. Concave/Convex Node Recognition and Cleansing

### 4.2.1. Definition of Concave/Convex Node Based on Cyclotomy

The cyclotomy [32] refers to increasing the number of sides of the regular polygon inside a circle to estimate the circumference by summing them (see Figure 5), based on which the concavity and convexity function of O point is given as (11)φ=ϕ180∘≈n×dπ×R,where d represents side length of the polygon, R is the radius of the circle, and n is the number of sides corresponding to ϕ. It means in (11) that the summation of n sides approximately equals the arc length of ϕ. When the vertexes of the polygon in Figure 5 are regarded as sensor nodes in the network, d can be considered as the maximum communication distance and n is the hop count between nodes.Figure 5
Schematic diagram of the cyclotomy.In practical application, since the sensor network is discrete, there may be deviations in the calculation results due to the boundary noise. Considering this factor, the definitions of the concave nodes and the convex nodes based on the boundaries ofϕ=157.5∘ and ϕ=202.5∘ are given by(12)0<φ≤78,Ois  a  convex  node,78<φ<98,Ois  a  nonconcave/convex  node,98≤φ<2,Ois  a  concave  node.Therefore, the concavity/convexity of pointO can be determined by calculating the value of φ.


### 4.2.2. Concave/Convex Node Recognition Algorithm Based on Minimum Hop Count

Given an anisotropic network (see C-shape network in Figure6 for an example), the boundary nodes can be recognized through [31]. Define ω as the set of boundary nodes (the black nodes in Figure 6). For an arbitrary node Pi∈ω, we define ∂Nk(Pi) as k-hop neighborhood of Pi, which means the set of nodes exactly k hops away from Pi. Intuitively, ∂Nk(Pi) can be considered as a (or a part of) circle centered at Pi (see Pi in Figure 6). Given two nodes pi1,pi2∈∂Nk(Pi), define δ as the set of nodes that are on the shortest path from pi1 to pi2 (including pi1 and pi2) through the nodes in ∂Nk(Pi). Then, we define the minimum hop count between pi1 and pi2, denoted by n, as δ minus one.Figure 6
Boundary nodes are filled with black. (a) ForPi (filled with red), the nodes in ∂N3(Pi) are filled with green. pi1 and pi2 are both boundary nodes and 3-hop nodes of Pi. Intuitively, δ=16. The minimum hop count from pi1 to pi2 is n=16-1=15, as is indicated by the arrows. (b) For Pj (filled with red), the nodes in ∂N2(Pj) are filled with green. pj1 and pj2 are both boundary nodes and 2-hop nodes of Pj. The auxiliary nodes (pj4 and pj5) to make ∂N2(Pj) a connected component are filled with orange, λ=1. The minimum hop count from pj1 to pj2 is n=(11-1)-1=9, as is indicated by the arrows.For each boundary nodePi, as shown in Figure 6, it first floods the network for k hops to obtain its k-hop neighborhood ∂Nk(Pi). Two nodes pi1 and pi2 belonging to both ∂Nk(Pi) and boundary nodes identify themselves. Note that pi1 and pi2 are on different sides of Pi. It is possible that there may be several boundary nodes belonging to ∂Nk(Pi) at each side of Pi, and these boundary nodes naturally form a connected component. For this case, we randomly choose one boundary node at each side of Pi. pi1 and pi2 then flood ∂Nk(Pi) to obtain the minimum hop count between them.Because of the discreteness of the network,∂Nk(Pj) might be disconnected, as Pj in Figure 6 for an example. For this case, we use the following method to solve the problem. pj1, pj2, pj3, pj6, and the nodes filled with green belong to ∂N2(Pj), and pj4 and pj5 belong to ∂N1(Pj). Since node pj3 cannot send the message received from pj1 to pj6 directly, pj3 then sends this message to its neighbor pj4, called auxiliary node, which is k-1 hops from Pj. As pj4 has no neighbor belonging to ∂N2(Pj), it sends the message to pj5. pj5 then sends the message to pj6, which belongs to ∂N2(Pj). With the help of auxiliary nodes, ∂N2(Pj) is considered connected. Thus, the minimum hop count from pj1 to pj2 is obtained. Obviously, the message from pj2 to pj1 can travel in the same way. The minimum hop count is estimated by (n-λ), where λ is the difference between k and the hop count (k-1 in Figure 6) of the closest auxiliary node to the boundary node Pj. Another case that needs to be considered is when k-1 hop auxiliary nodes cannot make ∂Nk(Pj) connected, it will turn to k+1 hop auxiliary nodes for help. The process is the same as the case of k-1. The worst case, which is almost impossible as the network is fully connected, is that neither k-1 hop nor k+1 hop auxiliary nodes can make ∂Nk(Pj) connected. For this case, we discard the concavity/convexity recognition of Pj.Next, we give the detail derivation process of concave/convex node recognition criterion. Takek=2 for example. For an arbitrary boundary node Pi, with the above definitions of ∂Nk(Pi), k-hop neighboring boundary nodes pi1 and pi2 for Pi (i.e., pi1,pi2∈ω and pi1,pi2∈∂N2(Pi)), and the minimum hop count (denoted by n) from pi1 to pi2, we assume each hop count distance is Si, i=1,2,…,n. According to (11), the concavity and convexity function of Pi can be described by(13)φ=S1+S2+⋯+Snπ×R′.Taking account of the deployment efficiency of sensor nodes, it is reasonable to assume thatSi is uniformly distributed in [R/2,R], where R is the maximum communication distance. Let Si=Si′·R; then, Si′ is uniformly distributed in [1/2,1]. As shown in Figure 6, it can be seen that R<R′≤2R. Because of the randomness distribution of the nodes, we take R′=1.5R. Similarly, we take R′=2.5R when k=3, R′=3.5R when k=4, and R′=4.5R when k=5. Then, (13) can be rewritten as(14)φ=S1′R+S2′R+⋯+Sn′Rπ×1.5R=∑i=1nSi′1.5π.Note that eachSi′/1.5π is a small random variable which is uniformly distributed in [1/3π,1/1.5π]. According to the central limit theorem, when n is large enough, the distribution of φ is close to normal distribution. As E[Si′/1.5π]=1/2π and D[Si′/1.5π]=1/108π2, we have μ=E[φ]=n/2π and σ2=D[φ]=n/108π2. Then,(15)φ=∑i=1nSi′1.5π≈12π×n=n2π.Letn1, n2, and n3 be the minimum hop count between pi1 and pi2 when Pi, respectively, is a convex node, a nonconcave/convex node, and a concave node. Then, φ1=n1/2π, φ2=n2/2π, and φ3=n3/2π. According to (12),(16)0<n12π≤78,78<n22π<98,98≤n32π<2.Thus,n1≤5.5, 5.5<n2<7.1, and 7.1≤n3<12.6. Since n is a positive integer, we have 1≤n1≤5, n2=6,7, and 8≤n3≤12. Calculating the different values of n through the above processes, we can get the initial concave/convex node recognition criterion in different values of k based on the minimum hop count, as is shown in Table 1.Table 1
Initial concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
5
6
≤
n
≤
7
n
≥
8
3
n
≤
9
10
≤
n
≤
11
n
≥
12
4
n
≤
12
13
≤
n
≤
16
n
≥
17
5
n
≤
16
17
≤
n
≤
21
n
≥
22In order to make the results more accurate, the values ofn1, n2, and n3 will be corrected using the following method. We also take k=2, for example, and choose n1=3, n2=7, and n3=10 during the calculation.As shown in Figure7, α and β, respectively, are the intersection points of φ1 and φ2 and φ2 and φ3. The probability theory shows that when α and β are taken as optimal threshold, the misclassification probability can be minimized.Figure 7
Distribution curve whenk is 2.The normal probability density function is(17)fx=12πσexp⁡-x-μ22σ2,where μ1=n1/2π, σ12=n1/108π2, μ2=n2/2π, and σ22=n2/108π2. Then,(18)12πσ1exp⁡-α-μ122σ12=12πσ2exp⁡-α-μ222σ22.Thus,(19)α≈0.729.The corresponding minimum hop count ofα is n1∗=α·2π≈4.6. The value of β can be calculated in the same way. Thus, β≈1.332, and its corresponding minimum hop count is n2∗=β·2π≈8.4. Since the hop count value is a positive integer, it is easy to know that, in the case of k=2, when the minimum hop count n≤4, Pi is identified as a convex node, when 5≤n≤8, Pi is a nonconcave/convex node, and when n≥9, Pi is a concave node.Letk, respectively, be 3, 4, and 5, and calculate the corresponding values of α and β. Then, the corrected value of the minimum hop count n is determined and the concavity or convexity of Pi can be identified, as is shown in Table 2.Table 2
Final concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
4
5
≤
n
≤
8
n
≥
9
3
n
≤
7
8
≤
n
≤
13
n
≥
14
4
n
≤
9
10
≤
n
≤
18
n
≥
19
5
n
≤
12
13
≤
n
≤
23
n
≥
24Assume that there areM boundary nodes in the network, represented by Pi, i=1,2,…,M. For an arbitrary node Pi∈ω, it can use its k-hop neighboring boundary nodes pi1 and pi2 to identify the concavity or convexity of itself, where k∈{2,3,4,5}. According to the above-mentioned mathematical analysis and criterion, we give the concave/convex node recognition algorithm based on the minimum hop count as follows, which includes four steps.Step 1.
For each boundary nodePi, Pi obtains its k-hop neighboring boundary nodes pi1 and pi2; that is, pi1,pi2∈ω and pi1,pi2∈∂N2(Pi), where k∈{2,3,4,5}, and its value is preset by the system.Step 2.
If there arepi1 and pi2 that meet the condition in Step 1, then turn to Step 3. Otherwise, Pi gives up the concavity/convexity identification of itself.Step 3.
P
i derives the minimum hop count n between pi1 and pi2.Step 4.
P
i identifies its concavity or convexity by using the criterion in Table 2.


### 4.2.3. Concave/Convex Node Cleansing

After concave/convex node recognition algorithm, the concavity or convexity of each boundary node has been identified. Since the sensor network is discrete, it is possible that a nonconcave node which is in the nonconcave region is identified as a concave node by mistake. These mistaken concave nodes often appear in an isolate way. In contrast, there always are several concave nodes in a concave area; that is, real concave nodes always gather together (seen in Figures8(c), 9(c), and 10(c), e.g.; the black nodes are ordinary nodes, and the red nodes are boundary nodes. The nodes with peach circles are concave nodes, and those with cyan circles are convex nodes. Other red nodes without any circles are nonconcave/convex nodes). Therefore, the isolate concave node can be directly eliminated from the recognition result (to simplify our algorithm, we define isolate concave node as the concave node which has no concave node within its two hops; similarly, isolate convex node is the convex node which has no convex node within its two hops), as well as the isolate convex node.Figure 8
Region decomposition of L-shape network. 763 nodes are uniformly distributed, and average degree of the network is 9.13. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 9
Region decomposition of C-shape network. 1295 nodes are uniformly distributed, and average degree of the network is 9.04. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 10
Region decomposition of single-window-shape network. 1505 nodes are uniformly distributed, and average degree of the network is 9.01. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)For the concave nodes that gather together in one concave area, since larger concavity of the concave node will lead to larger deviation between hop count distance and the Euclidean distance, we choose the concave node with the maximum concavity as the optimal concave node in this area. In our algorithm, the node with maximum concavity corresponds to the node which is with the biggest minimum hop count between its twok-hop neighboring boundary nodes. It is possible that in some concave area there may be more than one concave node with the same biggest minimum hop count. For this case, we randomly choose one of them as the optimal concave node. The above process is called cleansing process.Similarly, we use the cleansing criterion to cleanse the convex node in the network. The difference is that the convex node with the smallest minimum hop count should be taken as the optimal convex node. If there is more than one convex nodes with the same smallest minimum hop count in a convex area, we randomly choose one of them as the optimal convex node.Through the cleansing criterion, the optimal concave/convex node is obtained. For example, the cleansing results of Figures8(c), 9(c), and 10(c), respectively, are Figures 8(d), 9(d), and 10(d), where the optimal concave nodes are marked with peach and the optimal convex nodes are marked with cyan.


## 4.2.1. Definition of Concave/Convex Node Based on Cyclotomy

The cyclotomy [32] refers to increasing the number of sides of the regular polygon inside a circle to estimate the circumference by summing them (see Figure 5), based on which the concavity and convexity function of O point is given as (11)φ=ϕ180∘≈n×dπ×R,where d represents side length of the polygon, R is the radius of the circle, and n is the number of sides corresponding to ϕ. It means in (11) that the summation of n sides approximately equals the arc length of ϕ. When the vertexes of the polygon in Figure 5 are regarded as sensor nodes in the network, d can be considered as the maximum communication distance and n is the hop count between nodes.Figure 5
Schematic diagram of the cyclotomy.In practical application, since the sensor network is discrete, there may be deviations in the calculation results due to the boundary noise. Considering this factor, the definitions of the concave nodes and the convex nodes based on the boundaries ofϕ=157.5∘ and ϕ=202.5∘ are given by(12)0<φ≤78,Ois  a  convex  node,78<φ<98,Ois  a  nonconcave/convex  node,98≤φ<2,Ois  a  concave  node.Therefore, the concavity/convexity of pointO can be determined by calculating the value of φ.


## 4.2.2. Concave/Convex Node Recognition Algorithm Based on Minimum Hop Count

Given an anisotropic network (see C-shape network in Figure6 for an example), the boundary nodes can be recognized through [31]. Define ω as the set of boundary nodes (the black nodes in Figure 6). For an arbitrary node Pi∈ω, we define ∂Nk(Pi) as k-hop neighborhood of Pi, which means the set of nodes exactly k hops away from Pi. Intuitively, ∂Nk(Pi) can be considered as a (or a part of) circle centered at Pi (see Pi in Figure 6). Given two nodes pi1,pi2∈∂Nk(Pi), define δ as the set of nodes that are on the shortest path from pi1 to pi2 (including pi1 and pi2) through the nodes in ∂Nk(Pi). Then, we define the minimum hop count between pi1 and pi2, denoted by n, as δ minus one.Figure 6
Boundary nodes are filled with black. (a) ForPi (filled with red), the nodes in ∂N3(Pi) are filled with green. pi1 and pi2 are both boundary nodes and 3-hop nodes of Pi. Intuitively, δ=16. The minimum hop count from pi1 to pi2 is n=16-1=15, as is indicated by the arrows. (b) For Pj (filled with red), the nodes in ∂N2(Pj) are filled with green. pj1 and pj2 are both boundary nodes and 2-hop nodes of Pj. The auxiliary nodes (pj4 and pj5) to make ∂N2(Pj) a connected component are filled with orange, λ=1. The minimum hop count from pj1 to pj2 is n=(11-1)-1=9, as is indicated by the arrows.For each boundary nodePi, as shown in Figure 6, it first floods the network for k hops to obtain its k-hop neighborhood ∂Nk(Pi). Two nodes pi1 and pi2 belonging to both ∂Nk(Pi) and boundary nodes identify themselves. Note that pi1 and pi2 are on different sides of Pi. It is possible that there may be several boundary nodes belonging to ∂Nk(Pi) at each side of Pi, and these boundary nodes naturally form a connected component. For this case, we randomly choose one boundary node at each side of Pi. pi1 and pi2 then flood ∂Nk(Pi) to obtain the minimum hop count between them.Because of the discreteness of the network,∂Nk(Pj) might be disconnected, as Pj in Figure 6 for an example. For this case, we use the following method to solve the problem. pj1, pj2, pj3, pj6, and the nodes filled with green belong to ∂N2(Pj), and pj4 and pj5 belong to ∂N1(Pj). Since node pj3 cannot send the message received from pj1 to pj6 directly, pj3 then sends this message to its neighbor pj4, called auxiliary node, which is k-1 hops from Pj. As pj4 has no neighbor belonging to ∂N2(Pj), it sends the message to pj5. pj5 then sends the message to pj6, which belongs to ∂N2(Pj). With the help of auxiliary nodes, ∂N2(Pj) is considered connected. Thus, the minimum hop count from pj1 to pj2 is obtained. Obviously, the message from pj2 to pj1 can travel in the same way. The minimum hop count is estimated by (n-λ), where λ is the difference between k and the hop count (k-1 in Figure 6) of the closest auxiliary node to the boundary node Pj. Another case that needs to be considered is when k-1 hop auxiliary nodes cannot make ∂Nk(Pj) connected, it will turn to k+1 hop auxiliary nodes for help. The process is the same as the case of k-1. The worst case, which is almost impossible as the network is fully connected, is that neither k-1 hop nor k+1 hop auxiliary nodes can make ∂Nk(Pj) connected. For this case, we discard the concavity/convexity recognition of Pj.Next, we give the detail derivation process of concave/convex node recognition criterion. Takek=2 for example. For an arbitrary boundary node Pi, with the above definitions of ∂Nk(Pi), k-hop neighboring boundary nodes pi1 and pi2 for Pi (i.e., pi1,pi2∈ω and pi1,pi2∈∂N2(Pi)), and the minimum hop count (denoted by n) from pi1 to pi2, we assume each hop count distance is Si, i=1,2,…,n. According to (11), the concavity and convexity function of Pi can be described by(13)φ=S1+S2+⋯+Snπ×R′.Taking account of the deployment efficiency of sensor nodes, it is reasonable to assume thatSi is uniformly distributed in [R/2,R], where R is the maximum communication distance. Let Si=Si′·R; then, Si′ is uniformly distributed in [1/2,1]. As shown in Figure 6, it can be seen that R<R′≤2R. Because of the randomness distribution of the nodes, we take R′=1.5R. Similarly, we take R′=2.5R when k=3, R′=3.5R when k=4, and R′=4.5R when k=5. Then, (13) can be rewritten as(14)φ=S1′R+S2′R+⋯+Sn′Rπ×1.5R=∑i=1nSi′1.5π.Note that eachSi′/1.5π is a small random variable which is uniformly distributed in [1/3π,1/1.5π]. According to the central limit theorem, when n is large enough, the distribution of φ is close to normal distribution. As E[Si′/1.5π]=1/2π and D[Si′/1.5π]=1/108π2, we have μ=E[φ]=n/2π and σ2=D[φ]=n/108π2. Then,(15)φ=∑i=1nSi′1.5π≈12π×n=n2π.Letn1, n2, and n3 be the minimum hop count between pi1 and pi2 when Pi, respectively, is a convex node, a nonconcave/convex node, and a concave node. Then, φ1=n1/2π, φ2=n2/2π, and φ3=n3/2π. According to (12),(16)0<n12π≤78,78<n22π<98,98≤n32π<2.Thus,n1≤5.5, 5.5<n2<7.1, and 7.1≤n3<12.6. Since n is a positive integer, we have 1≤n1≤5, n2=6,7, and 8≤n3≤12. Calculating the different values of n through the above processes, we can get the initial concave/convex node recognition criterion in different values of k based on the minimum hop count, as is shown in Table 1.Table 1
Initial concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
5
6
≤
n
≤
7
n
≥
8
3
n
≤
9
10
≤
n
≤
11
n
≥
12
4
n
≤
12
13
≤
n
≤
16
n
≥
17
5
n
≤
16
17
≤
n
≤
21
n
≥
22In order to make the results more accurate, the values ofn1, n2, and n3 will be corrected using the following method. We also take k=2, for example, and choose n1=3, n2=7, and n3=10 during the calculation.As shown in Figure7, α and β, respectively, are the intersection points of φ1 and φ2 and φ2 and φ3. The probability theory shows that when α and β are taken as optimal threshold, the misclassification probability can be minimized.Figure 7
Distribution curve whenk is 2.The normal probability density function is(17)fx=12πσexp⁡-x-μ22σ2,where μ1=n1/2π, σ12=n1/108π2, μ2=n2/2π, and σ22=n2/108π2. Then,(18)12πσ1exp⁡-α-μ122σ12=12πσ2exp⁡-α-μ222σ22.Thus,(19)α≈0.729.The corresponding minimum hop count ofα is n1∗=α·2π≈4.6. The value of β can be calculated in the same way. Thus, β≈1.332, and its corresponding minimum hop count is n2∗=β·2π≈8.4. Since the hop count value is a positive integer, it is easy to know that, in the case of k=2, when the minimum hop count n≤4, Pi is identified as a convex node, when 5≤n≤8, Pi is a nonconcave/convex node, and when n≥9, Pi is a concave node.Letk, respectively, be 3, 4, and 5, and calculate the corresponding values of α and β. Then, the corrected value of the minimum hop count n is determined and the concavity or convexity of Pi can be identified, as is shown in Table 2.Table 2
Final concave/convex node recognition criterion in different values ofk.
k
Convex node
Nonconcave/convex node
Concave node
2
n
≤
4
5
≤
n
≤
8
n
≥
9
3
n
≤
7
8
≤
n
≤
13
n
≥
14
4
n
≤
9
10
≤
n
≤
18
n
≥
19
5
n
≤
12
13
≤
n
≤
23
n
≥
24Assume that there areM boundary nodes in the network, represented by Pi, i=1,2,…,M. For an arbitrary node Pi∈ω, it can use its k-hop neighboring boundary nodes pi1 and pi2 to identify the concavity or convexity of itself, where k∈{2,3,4,5}. According to the above-mentioned mathematical analysis and criterion, we give the concave/convex node recognition algorithm based on the minimum hop count as follows, which includes four steps.Step 1.
For each boundary nodePi, Pi obtains its k-hop neighboring boundary nodes pi1 and pi2; that is, pi1,pi2∈ω and pi1,pi2∈∂N2(Pi), where k∈{2,3,4,5}, and its value is preset by the system.Step 2.
If there arepi1 and pi2 that meet the condition in Step 1, then turn to Step 3. Otherwise, Pi gives up the concavity/convexity identification of itself.Step 3.
P
i derives the minimum hop count n between pi1 and pi2.Step 4.
P
i identifies its concavity or convexity by using the criterion in Table 2.


## 4.2.3. Concave/Convex Node Cleansing

After concave/convex node recognition algorithm, the concavity or convexity of each boundary node has been identified. Since the sensor network is discrete, it is possible that a nonconcave node which is in the nonconcave region is identified as a concave node by mistake. These mistaken concave nodes often appear in an isolate way. In contrast, there always are several concave nodes in a concave area; that is, real concave nodes always gather together (seen in Figures8(c), 9(c), and 10(c), e.g.; the black nodes are ordinary nodes, and the red nodes are boundary nodes. The nodes with peach circles are concave nodes, and those with cyan circles are convex nodes. Other red nodes without any circles are nonconcave/convex nodes). Therefore, the isolate concave node can be directly eliminated from the recognition result (to simplify our algorithm, we define isolate concave node as the concave node which has no concave node within its two hops; similarly, isolate convex node is the convex node which has no convex node within its two hops), as well as the isolate convex node.Figure 8
Region decomposition of L-shape network. 763 nodes are uniformly distributed, and average degree of the network is 9.13. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 9
Region decomposition of C-shape network. 1295 nodes are uniformly distributed, and average degree of the network is 9.04. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)Figure 10
Region decomposition of single-window-shape network. 1505 nodes are uniformly distributed, and average degree of the network is 9.01. (a) Original map. (b) Boundary recognition result. The red nodes are boundary nodes. (c) Concave/convex node recognition result,k=3. The nodes with peach circles are concave nodes, and the nodes with cyan circles are convex nodes. (d) Optimal concave/convex nodes. Optimal concave nodes are marked with peach, and optimal convex nodes are marked with cyan. (e) Boundary segmentation result. Different color and markers represent different boundary branches. (f) Region decomposition result. The same color nodes belong to one subregion.
(a)
(b)
(c)
(d)
(e)
(f)For the concave nodes that gather together in one concave area, since larger concavity of the concave node will lead to larger deviation between hop count distance and the Euclidean distance, we choose the concave node with the maximum concavity as the optimal concave node in this area. In our algorithm, the node with maximum concavity corresponds to the node which is with the biggest minimum hop count between its twok-hop neighboring boundary nodes. It is possible that in some concave area there may be more than one concave node with the same biggest minimum hop count. For this case, we randomly choose one of them as the optimal concave node. The above process is called cleansing process.Similarly, we use the cleansing criterion to cleanse the convex node in the network. The difference is that the convex node with the smallest minimum hop count should be taken as the optimal convex node. If there is more than one convex nodes with the same smallest minimum hop count in a convex area, we randomly choose one of them as the optimal convex node.Through the cleansing criterion, the optimal concave/convex node is obtained. For example, the cleansing results of Figures8(c), 9(c), and 10(c), respectively, are Figures 8(d), 9(d), and 10(d), where the optimal concave nodes are marked with peach and the optimal convex nodes are marked with cyan.


## 4.3. Boundary Segmentation

Assume that the boundary of the network is fully connected. For simplicity, the optimal concave and convex nodes are called the optimal nodes in this section. In order to segment the boundary, we use the optimal nodes to flood Boundary Segmentation PacKeT (BS-PKT) among the boundary nodes. Each BS-PKT concludes the ID number of the node which generates the BS-PKT. When a boundary nodeA receives a BS-PKT, A deals the current BS-PKT with the following ways:(1)
IfA is not a boundary node, A discards BS-PKT.(2)
IfA is a boundary node but not an optimal node, A records the ID number in BS-PKT and sends BD-PKT to its neighbor nodes.(3)
IfA is both a boundary node and an optimal node, but A has not recorded any ID number of other optimal nodes, then A records the ID number in BS-PKT and does not send BS-PKT anymore.(4)
IfA is both a boundary node and an optimal node, and A has recorded an ID number of another optimal node, A discards the BS-PKT.After flooding, each boundary node will record two different ID numbers of the optimal nodes. Assume the ID numbers, respectively, areI and J. Let BoundID=[I,J]. Only when two boundary nodes have the same I and J is their BoundID defined to be equal. In such situation, the boundary nodes which have the same BoundID belong to the same boundary branch, and BoundID is the boundary number of this branch. Thus, the boundary of the network is segmented (e.g., Figures 8(e), 9(e), and 10(e) are the boundary segmentation results of the networks, where different color and markers represent different boundary branches).


## 4.4. Region Decomposition

For a fully connected anisotropic network, defineU as the set of the optimal concave nodes. For an arbitrary optimal concave node qi∈U, its two k-hop neighboring boundary nodes have been obtained in the concave/convex node recognition process. For simplicity, the k-hop neighboring boundary nodes are also called neighboring boundary nodes.To decompose the network, all neighboring boundary nodes of the optimal concave nodes flood Region Decomposition PacKeT (RD-PKT) in the network. Each RD-PKT concludes the ID number of the node which generates this RD-PKT and the boundary numberBoundID recorded by the node. The format of RD-PKT is (ID, BoundID). When an arbitrary node B receives a RD-PKT for the first time, B records (ID, BoundID) in RD-PKT and sends RD-PKT to its neighbor nodes; if B receives a RD-PKT not for the first time, B discards it directly. This policy ensures that most nodes will receive only one RD-PKT from the closest neighboring boundary node.By this means, each node in the network will record only one RD-PKT, in which the ID andBoundID number of the corresponding neighboring boundary node are included. The nodes which have the same ID number belong to one subregion; then, the original region decomposition result is obtained. To avoid the network from decomposing to too many subregions, the nodes with the same BoundID can be merged to one subregion. Finally, an anisotropic network is decomposed into many different subnetworks. See Figures 8(f), 9(f), and 10(f), for example; different colors represent different subnetworks. It is obvious that there is no longer serious bent path between far-away nodes in each subnetwork. Thus, each subnetwork can be considered as an isotropic network.In summary, after boundary recognition, concave/convex node recognition and cleansing, boundary segmentation, and region decomposition, an anisotropic network finally is decomposed into several different isotropic subnetworks. During the process of HCD, we only need to use the connectivity information of the network, without any additional hardware on sensor nodes. As a range-free localization algorithm, the complexity of communication cost of DV-Hop isO(N·m). Here, N and m are the numbers of sensor nodes and anchor nodes, respectively. For HCD (Hop Count Based Decomposition) scheme, the complexity of communication cost is O(N). Since our proposed HCD-DV-Hop scheme is composed of HCD and DV-Hop, the complexity of communication cost of HCD-DV-Hop is the same as DV-Hop.


## 5. Performance Evaluation

To evaluate the proposed algorithm, we simulate on three typical anisotropic network topologies: L-shape, C-shape, and single-window-shape network topologies. In simulations, nodes are uniformly distributed. All nodes have the same communication range. Two nodes are connected if and only if the Euclidean distance between them is smaller than a given communication radiusR.We compare our algorithm with DV-Hop. For comparison, two metrics are used in this section: LE (localization error) and ALE (average localization error). The LE of an unknown nodei is calculated by(20)LEi=xi-xi′2+yi-yi′2R×100%,where (xi,yi) is the real location of node i and (xi′,yi′) is the estimated location which is obtained by the localization algorithm. ALE is the average localization error of all unknown nodes in the network, it can be computed by(21)ALE=1N∑i=1NLEi,where N is the number of unknown nodes. It is obvious that the smaller the LE and ALE, the better the localization algorithm.


### 5.1. Region Decomposition

Given three typical anisotropic networks, L-shape network, C-shape network, and single-window-shape network, as shown in Figures8(a), 9(a), and 10(a), respectively, nodes are uniformly distributed in each network. The communication radius is 40 m. First we use HCD (Hop Count Based Decomposition algorithm) to decompose the networks. Simulation results are shown in Figures 8–10.


### 5.2. Performance Evaluation of Algorithms under Certain Communication Radius and Ratio of Anchor Node

Here the communication radius is 40 m and the ratio of anchor node is 10%. Anchors are randomly distributed in the networks.For each anisotropic network, after decomposing, DV-Hop is carried out in each subnetwork. Thus, the LE (localization error) of each unknown node is obtained through HCD-DV-Hop algorithm, as shown in Figures11(a), 11(c), and 11(e). The LE obtained by DV-Hop is shown in Figures 11(b), 11(d), and 11(f), respectively. Table 3 gives the corresponding ALE (average localization error) of each network by HCD-DV-Hop and DV-Hop.Table 3
ALE of each network by HCD-DV-Hop and DV-Hop algorithm.
Network topology
HCD-DV-Hop
DV-Hop
L-shape
57.8%
172.4%
C-shape
65.8%
595.3%
Single-window-shape
65.7%
161.3%Figure 11
LE (localization error) of each network by different algorithms. (a) LE of L-shape network by HCD-DV-Hop. (b) LE of L-shape network by DV-Hop. (c) LE of C-shape network by HCD-DV-Hop. (d) LE of C-shape network by DV-Hop. (e) LE of single-window-shape network by HCD-DV-Hop. (f) LE of single-window-shape network by DV-Hop.
(a)
HCD-DV-Hop
(b)
DV-Hop
(c)
HCD-DV-Hop
(d)
DV-Hop
(e)
HCD-DV-Hop
(f)
DV-HopAs shown in Figure11 and Table 3, we found that whatever the network topology is, HCD-DV-Hop can effectively reduce the LE of most unknown nodes compared with DV-Hop, and the ALE obtained by HCD-DV-Hop is much smaller than that by DV-Hop. Obviously, the reason is that HCD-DV-Hop uses decomposition scheme to avoid serious bent path between far-away nodes participating in localization.


### 5.3. Performance Evaluation of Algorithms under Different Ratios of Anchor Node

Given a certain communication radius (take 40 m as the communication radius in the simulations), we examine the performance of HCD-DV-Hop and DV-Hop under different ratios of anchor node. In simulations, we randomly generated 200 networks and computed the ALE of each network. Finally, we take the average value of the 200 ALE as the average error under each ratio of anchor node. Simulation results of L-shape, C-shape, and single-window-shape network are shown in Figures12(a), 12(b), and 12(c), respectively.Figure 12
Average error under different ratios of anchor node.
(a)
L-shape network
(b)
C-shape network
(c)
Single-window-shape networkFigure12 shows that, for different communication radius in Lshape, C-shape, and Single-window-shape networks, compared with DV-Hop, the average error of HCD-DV-Hop is significantly decreased. That is, HCD-DV-Hop performs much better in localization than DV-Hop.


### 5.4. Performance Evaluation of Algorithms under Different Communication Radius

Given a certain ratio of anchor node (take 10% as the ratio of anchor node in the simulations), we examine the performance of HCD-DV-Hop and DV-Hop under different communication radius. In simulations, we randomly generated 200 networks and computed the ALE of each network. Finally, we take the average value of the 200 ALE as the average error under each communication radius. Simulation results of L-shape, C-shape, and single-window-shape network are shown in Figures13(a), 13(b), and 13(c), respectively.Figure 13
Average error under different communication radius.
(a)
L-shape network
(b)
C-shape network
(c)
Single-window-shape networkFrom Figure13, we observe that the average error of our proposed HCD-DV-Hop is much smaller than that of DV-Hop, which obviously proves the localization advantage of HCD-DV-Hop in anisotropic networks.


## 5.1. Region Decomposition

Given three typical anisotropic networks, L-shape network, C-shape network, and single-window-shape network, as shown in Figures8(a), 9(a), and 10(a), respectively, nodes are uniformly distributed in each network. The communication radius is 40 m. First we use HCD (Hop Count Based Decomposition algorithm) to decompose the networks. Simulation results are shown in Figures 8–10.


## 5.2. Performance Evaluation of Algorithms under Certain Communication Radius and Ratio of Anchor Node

Here the communication radius is 40 m and the ratio of anchor node is 10%. Anchors are randomly distributed in the networks.For each anisotropic network, after decomposing, DV-Hop is carried out in each subnetwork. Thus, the LE (localization error) of each unknown node is obtained through HCD-DV-Hop algorithm, as shown in Figures11(a), 11(c), and 11(e). The LE obtained by DV-Hop is shown in Figures 11(b), 11(d), and 11(f), respectively. Table 3 gives the corresponding ALE (average localization error) of each network by HCD-DV-Hop and DV-Hop.Table 3
ALE of each network by HCD-DV-Hop and DV-Hop algorithm.
Network topology
HCD-DV-Hop
DV-Hop
L-shape
57.8%
172.4%
C-shape
65.8%
595.3%
Single-window-shape
65.7%
161.3%Figure 11
LE (localization error) of each network by different algorithms. (a) LE of L-shape network by HCD-DV-Hop. (b) LE of L-shape network by DV-Hop. (c) LE of C-shape network by HCD-DV-Hop. (d) LE of C-shape network by DV-Hop. (e) LE of single-window-shape network by HCD-DV-Hop. (f) LE of single-window-shape network by DV-Hop.
(a)
HCD-DV-Hop
(b)
DV-Hop
(c)
HCD-DV-Hop
(d)
DV-Hop
(e)
HCD-DV-Hop
(f)
DV-HopAs shown in Figure11 and Table 3, we found that whatever the network topology is, HCD-DV-Hop can effectively reduce the LE of most unknown nodes compared with DV-Hop, and the ALE obtained by HCD-DV-Hop is much smaller than that by DV-Hop. Obviously, the reason is that HCD-DV-Hop uses decomposition scheme to avoid serious bent path between far-away nodes participating in localization.


## 5.3. Performance Evaluation of Algorithms under Different Ratios of Anchor Node

Given a certain communication radius (take 40 m as the communication radius in the simulations), we examine the performance of HCD-DV-Hop and DV-Hop under different ratios of anchor node. In simulations, we randomly generated 200 networks and computed the ALE of each network. Finally, we take the average value of the 200 ALE as the average error under each ratio of anchor node. Simulation results of L-shape, C-shape, and single-window-shape network are shown in Figures12(a), 12(b), and 12(c), respectively.Figure 12
Average error under different ratios of anchor node.
(a)
L-shape network
(b)
C-shape network
(c)
Single-window-shape networkFigure12 shows that, for different communication radius in Lshape, C-shape, and Single-window-shape networks, compared with DV-Hop, the average error of HCD-DV-Hop is significantly decreased. That is, HCD-DV-Hop performs much better in localization than DV-Hop.


## 5.4. Performance Evaluation of Algorithms under Different Communication Radius

Given a certain ratio of anchor node (take 10% as the ratio of anchor node in the simulations), we examine the performance of HCD-DV-Hop and DV-Hop under different communication radius. In simulations, we randomly generated 200 networks and computed the ALE of each network. Finally, we take the average value of the 200 ALE as the average error under each communication radius. Simulation results of L-shape, C-shape, and single-window-shape network are shown in Figures13(a), 13(b), and 13(c), respectively.Figure 13
Average error under different communication radius.
(a)
L-shape network
(b)
C-shape network
(c)
Single-window-shape networkFrom Figure13, we observe that the average error of our proposed HCD-DV-Hop is much smaller than that of DV-Hop, which obviously proves the localization advantage of HCD-DV-Hop in anisotropic networks.


## 6. Conclusion and Future Work

In this paper, we have proposed a novel decomposition based localization (HCD-DV-Hop) scheme for anisotropic sensor networks. The main idea of HCD-DV-Hop is first decomposing an anisotropic network into several different isotropic subnetworks in order to avoid the influence of holes or obstacles on the shortest communication path between far-away nodes; then, the typical range-free DV-Hop algorithm is used for node localization in each subnetwork. The HCD algorithm is the core of HCD-DV-Hop. It includes boundary recognition, concave/convex node recognition and cleansing, boundary segmentation, and region decomposition. All of these steps are distributed and only require network connectivity information. Simulation results show that no matter how node communication radius or the ratio of anchor node changes, compared with DV-Hop algorithm, the proposed HCD-DV-Hop scheme can effectively reduce localization error in anisotropic networks without increasing the complexity of the algorithm.In HCD-DV-Hop, we use the typical range-free DV-Hop algorithm to achieve node localization in each isotropic subnetwork. As HCD scheme is able to decompose an anisotropic network into different isotropic subnetworks, it can be used to investigate the localization performance on the combination of HCD with other range-free algorithms. Additionally, the proposed HCD-DV-Hop scheme is designed for 2D networks. In our future research, we will explore the possible improvements on HCD-DV-Hop in order to adapt to 3D networks.



---

*Source: 805061-2015-10-29.xml*