^{*}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

To determine the geographical positions of sensors, numerous localization algorithms have been proposed in recent years. The positions of sensors are inferred from the connectivity between sensors and a set of nodes called anchors which know their precise locations. We investigate the effect of adverse placement and density of anchors on the accuracies of different algorithms. We develop an algorithm called

Localization is an important service in mobile computing, robotics and wireless sensor networks. Many wireless sensor network applications become possible only when precise location information of sensors is available, e.g. habitat monitoring, target tracking, location-based routing, etc. However, determining the location of sensors is a non-trivial task especially when taking the large scale of sensor networks into account. Although equipping receivers with GPS (Global Positioning System) enables sensors to obtain precise location information, the costs prohibit the network-wide deployment. Furthermore, the reception of GPS signal is subjected to the underlying environmental conditions. Another possible solution is manually configure each sensor and install sensors at the predetermined positions. This solution becomes inefficient when the network size increases. To enable location service in wireless sensor networks, various localization algorithms [

Different algorithms employ various mathematical techniques to determine the positions of sensors, such as multilateration [

In this paper, we first study the performances of several representative algorithms when anchors are limited and clustered. To the best of our knowledge, our paper is the first one that addresses this issue. The results show that none of them perform well. We then develop our solution, a distributed localization algorithm called Hybrid Localization (HyBloc) [

The paper is organized as follows. In Section II, we discuss some of the previous works of localization in wireless sensor networks. In Section III, we give the details of our proposed algorithms. Section IV presents the simulation results and the comparison with existing algorithms. Lastly, we conclude our work in Section V.

Localization algorithms can be classified as distributed or centralized algorithms. Most distributed localization algorithms employ multilateration in which nodes localize by themselves. On the other hand, centralized algorithms can be further classified into other sub-categories such as multidimensional scaling (MDS) or mathematical programming.

Niculescu

DV-Hop and DV-Distance adopt the conventional distance-vector exchange methods. Each anchor node broadcasts a message to all nodes in the network. The message carries the location of the broadcasting anchor. In DV-Hop, the message keeps the accumulated hop count along the path it has traversed, while in DV-Distance, it keeps the accumulated path distance. The distance between a sensor and an anchor is estimated by the hop count or the path distance. In DV-Hop, it is estimated by multiplying the hop count and the average hop size. The average hop size is obtained by dividing the geographical distance by the hop count between anchors. Though the absence of ranging makes DV-Hop immune to measurement noise, the coarse estimation of distance gives a poor performance if the variance of the hop size is large. To eliminate this adverse effect, the shortest-path distance is used as the distance estimate in DV-Distance. The last propagation method, Euclidean, propagates the true Euclidean distance. For sensors which are not connected to an anchor, it has to seek help from other sensors to determine the true Euclidean distance. Therefore, a high density of anchors is needed to localize all the nodes in the network. a high density of anchors is needed. To allow 90% of the nodes to localize, the percentage of anchors required is as high as 40%.

Savarese

Costa [

Him

Aspnes

Doherty

Biswas

Shang

Ahmed

In this section, we present a distributed localization algorithm named HyBloc which combines two techniques, multidimensional scaling [

We have examined the accuracies of representative localization algorithms such as DV-distance of APS, MDS-MAP, SDP, and PDM in networks with 50 uniformly distributed nodes and measurement errors of 5%. The errors presented are normalized to the communication range,

From the results, we realized that the performance of MDS is less dependent on the number of anchors. Five anchors are enough for a sensor network with 200 uniformly distributed nodes. Other algorithms usually fail to give meaningful results with such a small number of anchors. However, the accuracy of MDS drops significantly when the network topology is irregular in shape [

The accuracy of PDM can be improved by having more anchors. That is, if we can artificially “add” some anchors, the performance can be improved. HyBloc employs a hybrid approach in which MDS is used to increase the number of

The positions of the secondary anchors are based on the primary anchors. It is in fact a small localization problem since the number of secondary anchors is not large. By limiting the amount of secondary anchors, it is justifiable to use MDS for finding the locations of secondary anchors. Our algorithm works as follows. In the first phase, some sensors are selected as secondary anchors and they are localized through MDS. In the second phase, the normal sensors are localized through proximity-distance map. The mapping is derived from the primary and secondary anchors altogether. In the following discussion, we assume that nodes know the number of primary anchors _{p}_{p}_{p}

Due to the different properties of uniform and anisotropic networks, we adopt different ways to assign secondary anchors. Secondary anchors are spread apart in uniform networks but are relatively close in anisotropic networks.

Uniform Networks

In uniform networks, secondary anchors can be more widely spread and can be farther away from the primary anchors than in anisotropic networks. Each primary anchor sends an invitation packet containing its unique ID, two counters initialized to zero and a value _{s}_{s}_{s}_{p}_{s}_{p}_{p}_{s}

Anisotropic Networks

In a C-shaped network, path distance is an unreliable Euclidean distance estimate when nodes are far apart. Thus unlike an uniform network, nodes close to the anchors are chosen as secondary anchors. Each primary anchor is responsible to choose _{s}_{s}_{s}_{p}_{s}

In this step, secondary anchors have to acquire the proximity information between every pair of primary and secondary anchors. After sending the invitation packet, each primary anchor sends packets containing its unique ID and coordinates to

Every node (including anchors) receiving a proximity packet from an anchor (either primary or secondary) will store its ID and the proximity value. If a packet from a particular anchor has been received before, the node examines the proximity and checks whether it is larger than the stored proximity. If it is larger than the stored value, the packet will be discarded. Otherwise, the stored value and the proximity field of the packet will be updated and the packet will be forwarded to other neighbours. Thus the stored proximity always reflects the shortest path distance or hop count from a particular anchor.

After an anchor

After calculating its physical position using MDS, each secondary anchor also knows the position estimates of other secondary anchors since MDS provides a configuration about the primary and secondary anchors. Thus the proximity-distance map

Let _{ij}_{ii}_{ij}_{ij}_{p}_{s}_{i}

The mapping

Each normal sensor node _{s}

Finally, the node position is calculated by multilateration with the processed proximity vector and the position information of primary and secondary anchors.

For normal sensors, the number of operations required is comparable to existing distributed protocols. The additional operations compared to other multilateration algorithms is the pre-process of the proximity vector which is a matrix multiplication between the proximity vector and the proximity-distance map.

For secondary anchors, their positions are determined by the classical MDS and they are responsible to calculate the proximity-distance map. Both processes involve the computation of the Singular Value Decomposition (SVD) of a matrix whose complexity is in the order of ^{3}) where

To justify our proposal, extensive simulations are conducted to study the performance of HyBloc. Simulations are run with MatLab Version 7.2. Each data point is the average result of 30 different simulation runs.

Two hundred nodes are uniformly distributed in a square grid or a C-shaped region. The average connectivity, which is defined as the average number of neighbours per sensor, is controlled by varying the communication range of sensors. Nodes are capable of measuring the distance between itself and any one-hop neighbour (

The estimation error is normalized by the communication range

As we previously pointed out that it is not always feasible to deploy anchors across the network, unlike conventional approaches that assume anchors are spread across the network, we study the performance when anchors are confined in a certain part of the network.

In this section, we will investigate the effects of the number of primary anchors on the performance of PDM, MDS-MAP, MDS-MAP(P) and our proposed HyBloc under different network topologies.

In this section, the effect of measurement noise will be examined. We test HyBloc and other benchmark algorithms under different noisy factors, ranging from 0 to 0.2.

After considering the computation and communication costs of MDS, the number of secondary anchors should be minimal to give satisfactory performance. To study the effect of the number of secondary anchors, we vary the number of secondary anchors from 0 (i.e. pure PDM) to 40.

In view of the complexity incurred from the first phase of HyBloc and the marginal performance gain through increasing the number of secondary anchors, the number of secondary anchors should be chosen from 10-20 (that is 5% to 10% of the network size).

In previous investigations, anchors are clustered in the corner of the network. In this section, we examine the effect of the positions of anchors on the estimation errors.

For uniform networks, the position of the anchor cluster does not affect the general performance of PDM, MDS-based algorithms nor HyBloc. For PDM, the accuracy is mainly affected by the characterisation of the transformation which is affected by the size of the region covered by the anchors instead of the positions. For MDS-MAP, the performance is also independent of the position of the anchors as the major purpose of anchors is determining the absolute coordinates for the relative map. However, we can anticipate that the performance will be affected in C-shaped networks as path distance becomes an unreliable estimate of the Euclidean distance between two nodes that are far apart.

Instead of putting the cluster of anchors at the top left corner, we placed the anchor cluster at the tip of the ‘C’.

Since secondary anchors are introduced in the HyBloc algorithm, more messages are transmitted comparing with PDM. The additional messages are incurred by the selection and localization of secondary anchors. Each secondary anchor has to perform a flooding so that all other nodes can estimate the proximities from the secondary anchors. Furthermore, extra messages are also used to determine the location of secondary anchors and the proximity-distance map. It requires the primary and secondary anchors to exchange their proximity vectors to each other. Suppose that there are ^{2} unicast messages while PDM incurs ^{2} unicast messages. In MDS-MAP(P), although nodes determine their local maps which cover neighbours within 2 hops, the map merging process is still centralized in nature. A large amount of messages are needed to collect the sub-maps for map merging and to distribute the position estimates between the sensors and a dedicated node.

In this paper, we present a hybrid localization algorithm which performs well with very few anchors. Reducing the number of anchors deployed can reduce the cost of sensor network substantially. Through extensive simulations, we demonstrate that the proposed algorithm gives results as accurate as those of MDS-MAP under uniform networks even when the number of anchors is minimal. At the same time, our algorithm exhibits less complexity by employing secondary anchors and PDM in the second phase of localization. Although HyBloc requires more messages than PDM, the message overheads are much smaller than that of MDS-MAP(P). Simulation results also show that our proposal is less susceptible to adverse effect of anchor placement. The proposed algorithm can be implemented in a distributed fashion efficiently when the number of secondary anchors is chosen appropriately. From simulations, we find that choosing secondary anchors from 5% to 10% of network size can give good performance.

However, most networks in real-world applications are not isotropic. For anisotropic networks, though HyBloc gives better results than PDM when anchors are clustered together, there is room for improvement on accuracy. The major difficulty encountered in localization in anisotropic networks is to obtain a reliable distance measurement between two nodes that are far away from each other. PDM devises a transformation between the path distance and the geographical distance between anchors which helps nodes to refine their path distance estimations. Unfortunately, the anchors may not be distributed across the network all the time. The fact that anchors may be placed close to each other puts the reliability of the transformation devised in doubt. To circumvent this problem, we introduce the secondary anchors in order to increase the coverage of anchors. However, as MDS does not perform very well in anisotropic networks, the position estimations of secondary anchors are less accurate than in isotropic networks. In view of this difficult situation, a possible extension is to perform the localization sequentially and introduce secondary anchors gradually outward from the cluster of anchors. In the future, we would like to explore how to perform more accurate localization for C-shaped networks where anchors are clustered in the tip. We also would like to analyse the performance of the various localization mechanisms from an analytical perspective.

The authors would like to thank the anonymous reviewers for their comments. This work was supported in part by the HKU Small Project Fund, Project No. 200507176083.

50-node networks, 10 anchors, measurement error=5%.

50-node networks, 5 anchors, measurement error=5%.

200-node networks, clustered anchors, measurement error=5%.

Uniform Network.

C-shaped Network.

Uniform Networks,

Uniform Networks,

C-shaped Networks,

C-shaped Networks,

Clustered anchors,

Clustered anchors,

5 Clustered Anchors, Average Connectivity=10.74, Uniform Networks.

5 Clustered Anchors, Average Connectivity=17.16, Uniform Networks.

5 Clustered Anchors, Average Connectivity=11.68, C-shaped Networks.

5 Clustered Anchors, Average Connectivity=18.61, C-shaped Networks.

5 Anchors, Uniform Networks.

5 Anchors, C-shaped Networks.

5 Anchors clustered at the tip of ‘C’.

5 Anchors,

Average number of messages transmitted per uniform network.

Average number of messages transmitted per C-shaped network.

The Pseudo-Code of a Primary Anchor.

The Pseudo-code of a Normal Sensor.

The Pseudo-code of a Secondary Anchor.

Summary of Simulation Results.

PDM | MDS-MAP, MDS-MAP(P) | HyBloc |
---|---|---|

| ||

Performs well in both isotropic and anisotropic networks with moderate amount of anchors uniformly distributed across the network. Performance deteriorates much when anchors are clustered together. Requires the least amount of messages compared to MDS-MAP(P) and HyBloc. |
MDS-MAP performs poorly in anisotropic networks but MDS-MAP(P) performs equally well in different topologies. Performance is less dependent on the number of anchors. Very few anchors (4 to 5) are enough. Centralized in nature, requires a large amount of messages. |
Performs well with clustered anchor placement. Increases of primary anchors gives marginal improvement as performance of MDS is less dependent on number of anchors. 5% to 10% of sensors should be chosen as secondary anchors. Performs relatively poorer in C-shaped networks than in uniform networks. Requires moderate amount of messages. |