Abstract
In order to solve the node localization problem in wireless sensor networks, we propose a novel distributed weighted search localization algorithm (WSLA) in this paper. The WSLA adopts a modified received signal strength indicator-based range model to estimate the distances between nodes, utilizes the results of a centroid localization algorithm as the search initial point, and employs a new weighted search method to compute the positions of nodes in a distributed and recursive manner. The key ideas of the WSLA include a node localization precision classification scheme, a processing scheme for special nodes, and weight-based searches. Compared with three state-of-art localization algorithms—namely, maximum likelihood estimation (MLE), edge-based second-order cone programming + nonconvex sequential greedy (ESOCP + NCSG), and particle swarm optimization (PSO)—the simulation results show that localization performance of the WSLA is superior to that of MLE, ESOCP + NCSG, and PSO.
1. Introduction
A wireless sensor network (WSN) is a wireless ad hoc network that consists of a large number of tiny battery-powered, randomly deployed sensor nodes with limited processing, storage, and communication capacity [1]. Many WSN applications, for example, environmental monitoring, forest fire prevention, search and rescue, target detection, and tracking, require knowledge regarding sensor node positions [2]. Therefore, sensor nodes should have ability to localize their positions in many WSN applications.
Today, sensor nodes mainly have two methods of obtaining position information. The first is that sensor nodes are equipped with dedicated localization hardware (e.g., GPS) [3] or are manually configured after deployment. This method is simple and accurate, but it requires higher hardware or deployment costs, which are not acceptable in large-scale WSNs. Therefore, only a few nodes, known as anchor nodes, employ this method. The other method is that sensor nodes localize their positions using software localization techniques. This method has low costs and low energy consumption, with worse localization accuracy than the first method, but it can meet the requirements of most applications. Therefore, the majority of nodes employ this method; these nodes are called normal or unknown nodes.
In general, localization algorithms can be divided into two categories: range-based localization and range-free localization. In range-based localization, nodes are able to measure the distances or angles to their neighbors using received signal strength indicator (RSSI), time-of-arrival, time difference of arrival, angle-of-arrival, and so on [4, 5]. In range-free localization, for example, centroid localization, APIT, DV-Hop, and LAEP [6–10], nodes have no ability to measure the distances or angles to their neighbors and instead use connectivity or hop information to compute the positions of the nodes. Range-based localization can provide higher localization accuracy than range-free localization, but the latter is simpler and does not require extra hardware for measurement.
Localization algorithms can also be classified as centralized localization and distributed localization [11]. Centralized algorithms can process all range or connectivity information of the nodes from the global optimization angle. Therefore, their results are more accurate than those of distributed algorithms. However, they need to transmit a large amount of range or connectivity information to a fusion node (e.g., base station), which results in large energy communication and bandwidth consumption and shortens the lifespan of the entire network. Therefore, they are not suitable for large-scale resource-constrained WSNs. In contrast to centralized algorithms, distributed algorithms use only the local information available from its neighbors, and they are energy efficient and scalable to the size of a network. Therefore, distributed algorithms are more attractive for large-scale resource-constrained WSNs.
In this paper, we propose a distributed weighted search localization algorithm (WSLA) for node localization in WSNs. The WSLA adopts a modified RSSI-based range model to estimate the distances between nodes, and it employs a novel search method to compute node positions. To the best of knowledge, our contributions are as follows:
In order to make the simulation results more consistent with the measured results of RSSI- based range model, we point out that the variance of the Gaussian random variable in the log-normal distribution path loss model should be proportional to the real distance. We propose a novel weighted search method, which has a heuristic search process, to solve the node localization problem in WSNs. In order to further improve the localization accuracy of our method, we propose a FIFO-based localization precision classification scheme, a processing scheme for localizing the special nodes, and a simple scheme for detecting nodes with a large localization error. We have evaluated the performance of the WSLA using extensive simulations, and the simulation results show that the localization performance of the WSLA is superior to that of three state-of-art localization algorithms, namely, maximum likelihood estimation (MLE), edge-based second-order cone programming + nonconvex sequential greedy (ESOCP + NCSG), and particle swarm optimization (PSO).
The remainder of this paper is organized as follows. In the next section, we review the related work about range-based localization. The RSSI-based range model in this paper is discussed in Section 3. In Section 4, we propose the WSLA in detail. The simulation experiments appear in Section 5, and we conclude this paper in Section 6.
2. Related Work
Range-based localization is often modeled as an optimization problem with an objective function that depends on the distances and positions of nodes. In general, even in the absence of range errors, it is possible to have a nonconvex optimization problem with many local minima. Therefore, it is impossible to localize nodes at their true positions with noisy range. The solution to the localization problem can be roughly divided into two categories: one based on mathematical optimization theories and the other based on intelligent search methods.
MLE is a simple method for computing the extreme values of math functions with limited computational complexity [12]. MLE and its improvement versions have become the basic methods used for WSN localization. The performance of MLE-based localization is very good in the absence of range errors. However, its localization accuracy deteriorates rapidly with noisy range. Multidimensional scaling (MDS) is another kind of classic range-based algorithm, and a set of localization algorithms based on MDS is proposed in [13]. In [14], Costa et al. proposed distributed weighted MDS for localization, which adopts a weighted cost function, an adaptive neighbor selection method, and a majorization method to achieve node localization.
Recently, a number of approaches that relax the original localization nonconvex problem to derive a convex problem have been proposed. After relaxation, the convex problem can be efficiently solved using the currently available optimization techniques, such as the interior point method. Two convex relaxation techniques are involved in these algorithms: semidefinite programming (SDP) relaxation in [15, 16] and second-order cone programming (SOCP) relaxation in [11, 17, 18]. Compared with SDP relaxation, SOCP relaxation, although weaker (and thus less accurate), has a simpler structure and allows for efficient distributed implementation. The drawback of the relaxation methods is that even when the original problem is uniquely localizable, the relaxed problem may not be [19]. In addition, both SDP and SOCP rely on a sophisticated optimization package that cannot be easily implemented on a sensor node with limited resources.
Search-based localizations are another kind of WSN localization algorithm, and this kind of algorithm has the potential to achieve relatively high accuracy with relatively low complexity. Zhang et al. achieved localization with genetic algorithm (GA) in [20], which adopts two new genetic operators: single-vertex-neighborhood mutation and descend-based arithmetic crossover. Kulkarni and Venayagamoorthy proposed a distributed particle swarm optimization (PSO) approach for localization in [21]. Shekofteh et al. proposed a localization algorithm based on tabu search (TS) and simulated annealing (SA) in [22], where TS is a dynamic neighbor search technique that drives the search by escaping from local optima and avoiding the cycling. Wang et al. proposed a sequence search (SS) based localization algorithm in [23] that can improve localization accuracy by optimizing the localization sequence. Manjarres et al. proposed a harmony search (HS) localization algorithm in [24] that mimics the improvisation process of musicians seeking the best harmony. The main drawback of these search-based algorithms is that the search points are generated randomly, which results in a very slow convergence process, and they cannot ensure convergence to the global optima.
3. Improved RSSI Range Model
The basic idea of the RSSI range model is to estimate the distance between the receiving and the transmitting nodes by measuring the transmitted loss rate of the radio signal, and its key is the path loss model of signal propagation. The most used path loss model in RSSI range is the log-normal distribution model [4], which is as follows:
In (2),

RSSI simulation data,
The actual measured RSSI data in [25] are shown in Figure 2. We can see that there exists a visible difference between Figures 1 and 2, which shows that the traditional RSSI-based range model is too optimistic.

RSSI measured data in [25].
According to the results in [25–27], the features of the measured RSSI data in the open outdoor environment are as follows:
The actual measured RSSI value is close to the estimated value of (1) when the distance is small (e.g., shorter than 10 m) but fluctuates around the estimated value of (1) when the distance is far. The actual measured RSSI value is a normal distribution at the same point. Range error is proportional to distance, which means the error is small when the distance is short, and longer distances result in more errors.
Therefore, in our RSSI range model, we assume

The improved RSSI range model,
4. The Proposed WSLA
4.1. Localization Problem in WSNs
The WSN can be represented by an undirected graph
4.2. The Basic Search Scheme
The proposed WSLA runs in a round manner to recursively localize the unknown nodes. In each round, it mainly employs a novel heuristic search method to localize the nodes as follows, where
Step 1.
Determine the initial search point
Step 2.
Take N equal interval points from the circle whose center is

The proposed heuristic search scheme.
Step 3.
Calculate the value of the objective function, defined in (6), at the above
In order to enhance the localization accuracy, the WSLA classifies nodes into four classes—
Step 4.
We assume that the point
Step 5.
Repeat Steps 2–4 until search_step is less than stop_th. Finally, the estimated coordinates of a node i are
Remark 1.
In (10), α is the convergence factor, which can control the convergence speed and belongs to
4.3. The Localization Scheme of Special Nodes
In general, the BEP of a node i may be not unique if one of the following conditions is satisfied: (1) the number of its known neighbors is less than 3 or (2) its known neighbors are collinear or near collinear. This situation appears frequently in the initial several rounds of the WSLA or when the node is near to the boundary of network. From the angle of improving localization accuracy, the WSLA should ignore these nodes. However, if these nodes cannot be localized, the WSLA maybe cannot run because all nodes may not have three or more known neighbors in the first round. Therefore, to quickly realize higher localization coverage, we propose the following localization methods for these special nodes.
(1) A Node with One Known Neighbor. The first special case is that a node i has one known neighbor in the early rounds of the WSLA. In this case, any point on the circle whose center is its known neighbor and whose radius is the range distance between them can satisfy (3) or (8); the WSLA takes the position of its known neighbor as its localization position in the current round. We expect that the localization error of i will decrease with the running of the WSLA when more neighbors become known in the following rounds.
(2) A Node with Collinear or Near Collinear Neighbors. The second special case is that a node i has collinear or near collinear neighbors. A typical scene is shown in Figure 5, where node C has two neighbors, A and B, and hence the neighbors of node C are collinear. Both points

Node localization with two neighbors.
Point D can be obtained using the following steps:
Make a straight line Make the vertical line of Take the intersection (point D) of the two lines as the final BEP of C.
We assume that the coordinates of A, B,
4.4. Node Localization Precision Classification Scheme
We define a FIFO queue
At the beginning, there are only anchor nodes and unknown nodes in the networks. During localization algorithm running, the WSLA gradually classifies unknown nodes into
Rule 1.
The WSLA classifies node i into Its queue The distance from any element in
Rule 2.
The WSLA classifies node i into Its queue The distance from some element in
An example of node localization precision classification is shown in Figure 6. In Figure 6, we assume

An example of node localization precision classification.
In addition, we also observe that the node localization sequence has an obvious influence on the localization accuracy for some localization scenes, as described in [23]. Specifically, in the initial several rounds of the WSLA, if a node with a large localization error takes part in the localization process of other nodes, its localization error may propagate due to the recursive localization method and thus results in a network localization accuracy decline. In order to avoid the emergence of this situation, in the initial several rounds (e.g., the first 30% rounds), the WSLA employs the following method to detect the node with a large localization error.
Rule 3.
If the absolute difference value between
4.5. The Specific Flow of the WSLA
The specific steps of the WSLA in each round are as follows.
Step 1 (node broadcasting).
All nodes except unknown nodes broadcast their messages, for example, transmitting power, ID, coordinates, and types, at the beginning of each round.
Step 2 (RSSI ranging).
All nodes except anchor nodes receive messages from their neighbors and calculate the range distances according to (2). In our simulations, each node carries out 10 RSSI ranges in each round, and the final range distance is the average results.
Step 3 (node localization).
If the number of known neighbors of node i is larger than 1, the WSLA employs the search method in Section 4.2 to search its BEP.
Step 4 (Special node processing).
If node i is a special node, the WSLA employs the scheme in Section 4.3 to compute its new BEP.
Step 5 (node classification).
The WSLA puts the BEP into queue
In addition, when the position errors of anchor nodes is not zero, the WSLA degrades the anchor nodes into low precision nodes to refine their positions after running 15 rounds.
5. Simulation Experiments
To prove the localization accuracy of the WSLA, we have carried out extensive simulations using MATLAB software.
5.1. Experiment Parameters
The default simulation parameters are as follows: the number of total nodes is 108, including 8 anchor nodes and 100 unknown nodes; the positions of the anchor nodes are fixed and their coordinates are [0.1, 0.1], [0.1, 0.5], [0.1, 0.9], [0.5, 0.1], [0.5, 0.9], [0.9, 0.1], [0.9, 0.5], and [0.9, 0.9]; the unknown nodes are uniformly distributed in a square region of 1 × 1; the communication range
5.2. The Performance of the WSLA
(1) The Convergence Process of the WSLA. We first examine the convergence performance of the WSLA in the ideal range condition, that is,

The convergence process of the WSLA.
From Figure 7, we can observe the following.
(2) The Relationship between

The relationship between
From Figure 8, we can see that the correlation between
(3) The Relationship between

The relationship of between
From Figure 9, we can see the following. (1) Both range errors and localization errors increase with the growth of nf, but range errors increase faster than localization errors. (2) The WSLA is more sensitive to na than nf. Specifically, the change of
(4) The Relationship between

Localization error versus the number of nodes.
(5) The Localization Results of a Typical Scene. Finally, we give the straightforward localization results of one typical scene. In this experiment, all parameters are default values. The reason we choose this scene is that its localization error is slightly larger than the average localization error. In Figure 11, ○ denotes the real position of anchor nodes, × denotes the real position of unknown nodes, and ◊ denotes the localized position of nodes. The green nodes are high-precision nodes and the red nodes are low-precision nodes. By comparing Figures 11(a)–11(c), we can obviously see that the localization error becomes gradually smaller, and from Figure 11(d), we can see that the

The localization results of one typical scene.
5.3. Performance Comparison with MLE, PSO, and ESOCP + NCSG
In this section, we have compared the localization error of the WSLA with that of MLE [12], ESOCP + NCSG [11], and PSO [21], which are three representatives of state-of-art localization algorithms. Specifically, MLE is representative of a simple localization algorithm, PSO is representative of a search-based localization algorithm, and ESOCP + NCSG is representative of a complex relaxation-based localization algorithm. In this experiment, we use the range model in [11], as shown in (16); the other parameters are the same as the default parameters. The parameters of PSO are set as follows: population = 30, iterations = 60; acceleration constants

Performance comparison with other localization algorithms.
From Figure 12, we can see the following:
6. Conclusion
The localization technique is one of the key techniques in practical WSN application. On the basis of analyzing the error distribution features of the traditional RSSI-based range model and the measured RSSI data, we improve the RSSI-based range model. We also propose a novel WSLA, which is a range-based heuristic distributed localization algorithm for WSNs. The innovative ideas of the WSLA include a FIFO-based localization precision classification scheme, a processing scheme for special nodes, and a weight-based search. The performance of the WSLA is evaluated by comparing it with three state-of-art localization algorithms, namely, MLE, ESOCP + NCSG, and PSO. The experimental results show that the localization performance of the WSLA is superior to that of MLE, ESOCP + NCSG, and PSO. The features of our algorithm are distributed, low complexity with
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
The authors would like to thank the anonymous reviewers for their valuable feedback to this paper. The work was supported in part by The National Science Foundation of China under Grant no. 61100044, Zhejiang Province Science and Technology Innovation Focused Team Foundation under Grant no. 2013TD03, and Zhejiang Province Science and Technology Project under Grant no. 2013C31100.
