[IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery...

8
An Efficient Localization Algorithm using Sparse Anchors for the Internet of Things Guanghui Wang and Subin Shen College of Computer Science & Technology Nanjing University of Posts and Telecommunications Nanjing, China Email: [email protected] Abstract—Localization is crucial for the Internet of Things (IoT). Most of IoT components are characterized by low ca- pabilities in terms of both energy and computing resources and thus, they cannot implement complex algorithms supporting localization. Besides, existing algorithms fail to provide efficient localization supports. In order to address this issue, we design an efficient localization algorithm using sparse anchors, LASA, by modeling IoT into mass-spring system. Compared with previous algorithms, LASA has a lower computational complexity. Theo- retical analysis shows that the algorithm has a good feature of convergence and the computational complexity by O(N), where N is the maximum number of nodes’ neighbors in IoT. We evaluate the performance of this algorithm through some simulations. The results show that LASA is robust to anchors’ position and better for convergence. Index Terms—Localization, Internet of Things, sparse anchors, mass-spring. I. I NTRODUCTION Location information in IoT is critical for application in lo- gistics, product life-cycle management [1], tracking [2] and as- sisted driving [3]. On the other hand, location information can benefit networking protocols to reinforce the performance of IoT in various ways, such as delivering packets using location- based routing, managing network topology with geometric approaches and balancing traffics using location information. In fact, the nodes of IoT will be characterized by low resources in terms of both computation and energy capacity. It is difficult to equip each node of IoT with a positioning device. Instead, only a few nodes, called anchors, know their positions. Other nodes estimate their positions through internode measurements from anchors. Most existing localization algorithms have high- er computational complexity and sparse-anchored localization problem is not fully addressed. The state-of-the-art algorithms of solving the localization problem in sparse networks are CALL [4] and Sweeps [5]. CALL utilizes the concept of component to firstly divide nodes into small components which are globally rigid. Then small components are merged into a larger one through the interconnected edges. After such a mergence, the new com- ponent is realizable through the anchors. During the local- ization process, CALL first records the candidate positions in a potential position set at each node. Then, CALL needs to prune incompatible items from the potential position set. Unfortunately, this procedure may make the computational complexity of CALL grow exponentially with the rise of the number of nodes. Sweeps exploits the concept of finite localization to relax the node participating conditions from trilateration to bilateration. The idea of the Sweeps algorithm is related to simple iterated trilateration. The cost for solving the sparse-anchored localization problem is that the computa- tional complexity of Sweeps could be exponentially increased with the increment of the number of nodes. Therefore, it can be found that both CALL and Sweeps have the limitation of computational complexity. To address this issue, we propose a Localization Algorithm using Sparse Anchors, LASA, which has a low computational complexity O(N), where N is the maximum number of nodes’ neighbors in IoT. Furthermore, LASA is a distributed algo- rithm, that is, each node can run the algorithm locally. Based on the mass-spring model, each node is given a virtual mass and the connection information between pair of neighbors is represented by a virtual spring. LASA locates all the nodes by simulating the physical process of the spring system. If the current estimated distance between the two nodes is smaller than their true length, the spring incurs a force that pushes them apart. On the other hand, if the estimated distance is larger than the true distance, a force pulls them together. Besides, if there is no anchor in IoT scene, LASA can also handle the localization problem. Major contributions of this work are as follows. We present an efficient localization algorithm using s- parse anchors, LASA, which reduces the computational complexity of localization in IoT with sparse anchors. Large-scale simulations are conducted to examine the per- formance of LASA. The results show that this algorithm is robust to anchors’ position and better for convergence. Moreover, it adapts to the situation of sparse anchors. Comparison with CALL and Sweeps shows that the distributed LASA algorithm has a lower computational complexity. This feature has made LASA more applicable in practice. The rest of the paper is organized as follows. We give necessary definitions and review background results in Section II. The details of the LASA algorithm are presented in Section III, followed by the simulation results in Section IV. We 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery 978-0-7695-5106-7/13 $26.00 © 2013 IEEE DOI 10.1109/CyberC.2013.70 371

Transcript of [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery...

Page 1: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

An Efficient Localization Algorithm using SparseAnchors for the Internet of Things

Guanghui Wang and Subin ShenCollege of Computer Science & Technology

Nanjing University of Posts and TelecommunicationsNanjing, China

Email: [email protected]

Abstract—Localization is crucial for the Internet of Things(IoT). Most of IoT components are characterized by low ca-pabilities in terms of both energy and computing resourcesand thus, they cannot implement complex algorithms supportinglocalization. Besides, existing algorithms fail to provide efficientlocalization supports. In order to address this issue, we design anefficient localization algorithm using sparse anchors, LASA, bymodeling IoT into mass-spring system. Compared with previousalgorithms, LASA has a lower computational complexity. Theo-retical analysis shows that the algorithm has a good feature ofconvergence and the computational complexity by O(N), where Nis the maximum number of nodes’ neighbors in IoT. We evaluatethe performance of this algorithm through some simulations. Theresults show that LASA is robust to anchors’ position and betterfor convergence.

Index Terms—Localization, Internet of Things, sparse anchors,mass-spring.

I. INTRODUCTION

Location information in IoT is critical for application in lo-gistics, product life-cycle management [1], tracking [2] and as-sisted driving [3]. On the other hand, location information canbenefit networking protocols to reinforce the performance ofIoT in various ways, such as delivering packets using location-based routing, managing network topology with geometricapproaches and balancing traffics using location information.In fact, the nodes of IoT will be characterized by low resourcesin terms of both computation and energy capacity. It is difficultto equip each node of IoT with a positioning device. Instead,only a few nodes, called anchors, know their positions. Othernodes estimate their positions through internode measurementsfrom anchors. Most existing localization algorithms have high-er computational complexity and sparse-anchored localizationproblem is not fully addressed.

The state-of-the-art algorithms of solving the localizationproblem in sparse networks are CALL [4] and Sweeps [5].CALL utilizes the concept of component to firstly dividenodes into small components which are globally rigid. Thensmall components are merged into a larger one through theinterconnected edges. After such a mergence, the new com-ponent is realizable through the anchors. During the local-ization process, CALL first records the candidate positionsin a potential position set at each node. Then, CALL needsto prune incompatible items from the potential position set.

Unfortunately, this procedure may make the computationalcomplexity of CALL grow exponentially with the rise ofthe number of nodes. Sweeps exploits the concept of finitelocalization to relax the node participating conditions fromtrilateration to bilateration. The idea of the Sweeps algorithmis related to simple iterated trilateration. The cost for solvingthe sparse-anchored localization problem is that the computa-tional complexity of Sweeps could be exponentially increasedwith the increment of the number of nodes. Therefore, it canbe found that both CALL and Sweeps have the limitation ofcomputational complexity.

To address this issue, we propose a Localization Algorithmusing Sparse Anchors, LASA, which has a low computationalcomplexity O(N), where N is the maximum number of nodes’neighbors in IoT. Furthermore, LASA is a distributed algo-rithm, that is, each node can run the algorithm locally. Basedon the mass-spring model, each node is given a virtual massand the connection information between pair of neighbors isrepresented by a virtual spring. LASA locates all the nodesby simulating the physical process of the spring system. If thecurrent estimated distance between the two nodes is smallerthan their true length, the spring incurs a force that pushesthem apart. On the other hand, if the estimated distance islarger than the true distance, a force pulls them together.Besides, if there is no anchor in IoT scene, LASA can alsohandle the localization problem.

Major contributions of this work are as follows.

∙ We present an efficient localization algorithm using s-parse anchors, LASA, which reduces the computationalcomplexity of localization in IoT with sparse anchors.

∙ Large-scale simulations are conducted to examine the per-formance of LASA. The results show that this algorithmis robust to anchors’ position and better for convergence.Moreover, it adapts to the situation of sparse anchors.

∙ Comparison with CALL and Sweeps shows that thedistributed LASA algorithm has a lower computationalcomplexity. This feature has made LASA more applicablein practice.

The rest of the paper is organized as follows. We givenecessary definitions and review background results in SectionII. The details of the LASA algorithm are presented in SectionIII, followed by the simulation results in Section IV. We

2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery

978-0-7695-5106-7/13 $26.00 © 2013 IEEE

DOI 10.1109/CyberC.2013.70

371

Page 2: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

discuss related issues and survey related work in Section Vand VI. Finally, Section VII concludes the paper with a briefsummary.

II. BACKGROUND

In this section, we briefly review the background of sparseanchor localization problems in IoT environment. For the moredetailed descriptions of the following concepts, please refer to[1, 3, 4, 5].

The nodes composing IoT are smart things, which have (1)some basic computing capabilities; (2) means to sense physicalphenomena (e.g., temperature, light, electromagnetic radiationlevel) or to trigger actions having an effect on the physicalreality; (3) a minimal set of communication functionalities; (4)at least one name and one address; (5) a unique identifier; (6)a physical embodiment and a set of associated physical feature(e.g., size, shape, etc.). In this paper, we regard the nodes ofIoT as the sensors of WSNs for facilitating the explanation.

The nodes of IoT can be deployed in a two or three-dimensional space. To simplify the explanation, we assumethat they are deployed in a two-dimensional space in the rest ofthe paper. Whether the distribution of nodes is random or not,the nodes should be able to communicate with neighbors thatare in a range of radio range 𝑅. This is because our algorithmdoes not care about the distribution of nodes. Just ensurethat node can communicate with its neighbors and the LASAalgorithm could be executed. The nodes also distinguish theirneighbors by their IDs. The distance estimates of neighborscan be obtained by technologies such as RSSI, ToA and TDoAetc.

In this paper, the localization problem is defined as follow:given a set of nodes with unknown position coordinates, afew anchors and a mechanism by which a node can estimateits distance to a few nearby (neighbor) nodes, determinethe position coordinates of every node via local node-to-node communication. A localization algorithm can be called asparse-anchored algorithm if the maximum anchors can makethe anchors’ communicational range cover the region of IoT.Fig. 1 gives three examples of sparse-anchored localizationproblem, where Fig. 1(a) has non-anchor, Fig. 1(b) has 3anchors and Fig. 1(c) has 13 anchors in the square area. Itcan be seen that the minimum number of anchors is zero. Thenumber of anchors can be accepted if it is between zero andthe maximum of anchors. We will show that our localizationalgorithm could solve the sparse-anchored problem in IoT.

III. LOCALIZATION ALGORITHM USING SPARSE ANCHORS

In this section, we introduce the idea of the sparse-anchored localization algorithm and then theoretically analyzethe LASA algorithm.

A. Preliminary

To explain the mass-spring model in IoT environment, weimagine each edge between two IoT nodes as a spring betweentwo masses, with a rest length equal to the measured distance.Then, IoT is modeled to a mass-spring system with the graph

𝐺 = (𝑀,𝑆) , where 𝑀 is a mass set and 𝑆 is a spring set.Each mass 𝑚𝑖 ∈𝑀 is corresponding to a node 𝑖 in IoT. Eachspring 𝑠𝑖𝑗 ∈ 𝑆 is associated with mass pair (𝑚𝑖,𝑚𝑗), wherethe distance 𝑟𝑖𝑗 between them can be obtained.

According to mass-spring model, each mass will receivethe forces which come from all the springs connected with it.Therefore, the state function for the velocity and accelerationon mass 𝑚𝑖 is:

𝑑�⃗�𝑖

𝑑𝑡= �⃗�𝑖 (1)

𝑑�⃗�𝑖𝑑𝑡

= �⃗�𝑖 (2)

where �⃗�𝑖 denotes the deformation of node 𝑖, �⃗�𝑖 denotes thevelocity of node 𝑖 and �⃗�𝑖 denotes the acceleration of node 𝑖.

B. LASA Algorithm

The LASA algorithm is a distributed algorithm. Each n-ode calculates its position through communicating with itsneighbors. Each node participating in LASA simulates itsown movement in the spring system. Each node maintainsits own current coordinate. Whenever a node communicateswith another node, it obtains the distance between them andalso learns that node’s current coordinate.

The main idea of the LASA algorithm is that node 𝑖 isrepresented as a unitary mass connected to each neighbor 𝑗by a spring with the rest length set to be the measured 𝑟𝑖𝑗 .The actual length of the spring is the distance 𝑑𝑖𝑗 calculated inthe coordinate space. A spring always tries to have an actuallength equals to its rest length. Thus, if 𝑑𝑖𝑗 is smaller than themeasured 𝑟𝑖𝑗 , the spring pushes the two masses attached to it.On the contrary, if the spring is too long, it pulls the massesand reduces its actual length.

At any time, each node 𝑖 has a current estimate 𝑝𝑖 of itsposition. Each node 𝑖 also periodically sends this positionestimate to all its neighbors, so that each node knows itsown estimated position and the estimated position of allits neighbors. Using these position estimates, each node 𝑖calculates the estimates distance 𝑑𝑖𝑗 to each neighbor 𝑗. Italso knows the measured distance 𝑟𝑖𝑗 to each neighbor 𝑗.

Let 𝑢𝑖𝑗 represent the unit vector in the direction from 𝑝𝑖 to𝑝𝑗 . The resultant force on the node 𝑖 is given by

𝐹𝑖 =∑𝑗

𝐹𝑖𝑗 =∑𝑗

(𝑢𝑖𝑗 ⋅ ∣𝑟𝑖𝑗 − 𝑑𝑖𝑗 ∣) (3)

The total energy of node 𝑖 is equal to

𝐸𝑖 =∑𝑗

𝐸𝑖𝑗 =∑𝑗

(𝑟𝑖𝑗 − 𝑑𝑖𝑗)2 (4)

When node 𝑖 with coordinate 𝑝𝑖 learns about node 𝑗 withcoordinate 𝑝𝑗 and the measured 𝑟𝑖𝑗 , it updates its coordinateusing the following rule:

𝑝𝑛𝑒𝑤𝑖 = 𝑝𝑖 + 𝛿 × ∣𝑟𝑖𝑗 − 𝑑𝑖𝑗 ∣ × 𝑢𝑖 (5)

where the unit vector 𝑢𝑖 gives the direction of the resultantforce on node 𝑖 and also the direction that node 𝑖 moves. Theparameter 𝛿 controls the amount by which node 𝑖 moves. Let

372

Page 3: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

0 20 40 60 80 1000

20

40

60

80

100

(a)0 20 40 60 80 100

0

20

40

60

80

100

(b)* anchor . node

0 20 40 60 80 1000

20

40

60

80

100

(c)

Fig. 1. Sparse anchor localization. (a) 100 random nodes without anchor. (b) 100 random nodes with 3 anchors. (c) 100 random nodes with 13 anchors.

1

2

3

4

5 6 Ni

i

(i)

1

2

3

4

5 6Ni

i

(ii)

1

2

3

4

5 6 Ni

i

(iii)

Fig. 2. Example of the LASA algorithm.

𝑁𝑖 denote the number of neighbors of node 𝑖. We empiricallyselected this parameter as 1/(2𝑁𝑖).

Before describing the details of our LASA algorithm, wefurther discuss the localization process using an example. Fig.2 shows the main localization process of the LASA algorithm,where filled nodes are anchors and cirecles are non-anchornodes. In part (i), a set of IoT nodes has been represented bythe virtual spring system. Here we just consider node 𝑖. Whennode 𝑖 gets coordinates and measured information from itsneighbors, it calculates its new coordinate using equation (5).When node 𝑖 finds that its energy reduces after the updating,it will replace its current coordinate by the new calculatingone. In part (ii), node 𝑖 updates its coordinate. If it receivesnew information from its neighbors again, it will repeat part(i). A specific number of the iteration is set. If the iterationhas reached the specific number, the LASA algorithm stops.In part (iii), the algorithm stops and node 𝑖 is localized.

If node 𝑖 gets information from its neighbors, the LASAalgorithm will be executed. The distributed algorithm for eachnode 𝑖 is described in Algorithm 1.

For the whole nodes of IoT, the good performance of the

Algorithm 1: LASA

Input: current coordinate 𝑝𝑖, measured distance 𝑟𝑖𝑗 ,neighbor 𝑗’s coordinate 𝑝𝑗

Output: new coordinates 𝑝𝑖 after updating1: For each neighbor node 𝑗, calculate the Eu-

clidean distance 𝑑𝑖𝑗2: Calculate the resultant force 𝐹𝑖 on node 𝑖 using

equation (3)3: Calculate the energy 𝐸𝑖 of node 𝑖 using equa-

tion (4) according to current coordinate 𝑝𝑖4: Update the current coordinate using equation

(5) and let 𝑝𝑡𝑒𝑚𝑝 = 𝑝𝑛𝑒𝑤𝑖

5: Calculate the new energy 𝐸′𝑖 of node 𝑖 using

equation (4) according to the new coordinate𝑝𝑡𝑒𝑚𝑝

6: If 𝐸′𝑖 < 𝐸𝑖, then 𝑝𝑖 = 𝑝𝑡𝑒𝑚𝑝

7: Return 𝑝𝑖

373

Page 4: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

LASA algorithm is related with two factors: the nodes’ currentcoordinates and connectivity. When the current coordinates ofthe nodes are close to the actual coordinates, the result of theLASA algorithm will get better. The performance will becomewell if the nodes’ connectivity enlarges and connectivity canbe controlled by the communicational range.

C. Complexity and Convergence Analysis

In the distributed algorithm of LASA, each node justcommunicates with its neighbors and updates its positionby equation (5). Therefore, the computational complexity foreach node is O(N), where N is the maximum number ofnodes’ neighbors in IoT. Each node executes the localizationalgorithm in parallel mode and has a computational complexityof O(N), therefore the time complexity is O(N).

The LASA algorithm is convergent and below is conver-gence analysis. It can be got the equation of mass from themass-spring model:

𝑑2�⃗�𝑖

𝑑𝑡2+ �⃗�𝑖 = 0 (6)

The Lyapunov stability of the mass-spring model is ana-lyzed. A Lyapunov type function 𝑉 is defined as:

𝑉 =1

2�⃗�2𝑖 +

1

2�⃗�2𝑖 (7)

It can be found that 𝑉 ⩾ 0. 𝑉 = 0 if and only if bothdeformation and velocity of node 𝑖 are equal to 0. Fromequation (1), (2), (6), it can be got:

�⃗�𝑖 + �⃗�𝑖 = 0 (8)

Therefore, 𝑑𝑉/𝑑𝑡 is calculated as follows:

𝑑𝑉

𝑑𝑡= �⃗�𝑖 ⋅ 𝑑�⃗�𝑖

𝑑𝑡+ �⃗�𝑖 ⋅ 𝑑�⃗�𝑖

𝑑𝑡= �⃗�𝑖 ⋅ �⃗�𝑖 + �⃗�𝑖 ⋅ �⃗�𝑖= �⃗�𝑖 ⋅ �⃗�𝑖 − �⃗�𝑖 ⋅ �⃗�𝑖

= 0

(9)

It can be found that 𝑑𝑉/𝑑𝑡 ≡ 0. Therefore, the modelis stable at the point where both deformation and velocityof node 𝑖 are equal to zero. And for the whole system, thesystem is stable at the points where both deformation andvelocity of each node are equal to zero. Because the LASAalgorithm simulates the physical process of the spring system,it is convergent.

IV. PERFORMANCE EVALUATION

In this section, we evaluate the performance of LASA bysome simulations.

A. Experiment Setup

Nodes of IoT are generated randomly and uniformly de-ployed in a 100𝑟 × 100𝑟 square area where 𝑟 = 1 is the unitlength. The simulation software is Matlab. The communica-tional range is 𝑅. Anchors can be deployed in the square areauniformly and randomly. We point out that the random and

uniform distribution of nodes or anchors has no influence onour LASA algorithm (see Section II).

In order to reflect the accuracy, the average position erroris defined as follow:

𝑒𝑟𝑟 =

∑𝑛𝑖=1 ∥𝑝𝑖 − 𝑝𝑖∥𝑛(𝑛− 1)/2

(10)

where 𝑛 is the number of the nodes in the IoT area, 𝑝𝑖 is theestimated position of node 𝑖 and 𝑝𝑖 is the actual position ofnode 𝑖.

To capture the global structure property, the global energyratio (GER) [16] is defined as follow:

𝐺𝐸𝑅 =

√∑𝑖,𝑗:𝑖<𝑗 𝑒

2𝑖𝑗

𝑛(𝑛− 1)/2(11)

where 𝑒𝑖𝑗 is the normalized error, equal to (𝑑𝑖𝑗 − 𝑟𝑖𝑗)/𝑟𝑖𝑗 .

B. Performance of LASA

This part examines (1) the effectiveness of the anchors’number; (2) the influence of the anchors’ distribution; (3) theimpact of the nodes’ number and distribution; (4) how iterationaffects the algorithm; (5) the accuracy and GER of the LASAalgorithm.

1) Adapting to Sparse AnchorsLASA adapts to the situation of sparse anchors. The number

of the nodes is 100 and the communicational range is 20𝑟. Thecurrent coordinates of the nodes are set as about 20𝑟 awayfrom the actual positions. Here we conduct three experiments:there is no anchor in the first experiment, second test selects3 anchors and 13 anchors are deployed in the third test. Fig.1 gives the initial distribution of the 3 experiments.

Fig. 3 shows average position error when the iterationincreases. The LASA algorithm gets the best result when thenumber of anchors is 13. The result of 3 anchors is betterthan that of anchor-free. Furthermore, the convergence rate isfast when there is anchor information putting in the area. Thereason is that the anchor provides more location informationto the system. It can be found that when the number of anchoris increasing, the LASA algorithm gets a better performance.The algorithm can obtain the best performance with maximumanchors in the area (see Fig. 5, Fig. 7 and Fig. 8).

2) Robustness against Anchors’ PositionsIn order to explain the influence of anchors’ positions, we

set anchors to deploy randomly in the area. There are fourscenes. Fig. 1(b) gives the first scene in which 3 anchors areuniformly distributed. Fig. 1(c) gives the second scene that 13anchors are uniformly deployed. Fig. 4(a) gives the third scenethat 3 anchors are randomly deployed. Fig. 4(b) gives the lastscene that 13 anchors are randomly distributed.

Fig. 5 plots the result of the experiment. It can be seenthat whatever the anchors’ distribution is, the LASA algo-rithm of 13 anchors has better result than that of 3 anchors.When considering 13 anchors, the LASA algorithm of randomanchors has almost the same result with that of uniformanchors. It can be concluded that (1) more anchors will providebetter performance; (2) the distribution of the anchors has

374

Page 5: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

0 100 200 300 400 500 600 700 800 900 100014.8

15

15.2

15.4

15.6

15.8

16

iterations

ave

rage

pos

ition

err

or

anchor�free 3 anchors 13 anchors

Fig. 3. Proportion of average position error against iterations. Results of thethree scenes, anchor-free, 3 anchors and 13 anchors, are showed. It gets thebest result when 13 anchor nodes are deployed.

0 20 40 60 80 1000

10

20

30

40

50

60

70

80

90

100

(a)0 20 40 60 80 100

0

10

20

30

40

50

60

70

80

90

100

(b)* anchor . node

Fig. 4. Initial distribution. (a) 3 random anchors. (b) 13 random anchors.

little influence on the performance of the LASA algorithm.Therefore, the LASA algorithm is robust to the distribution ofanchors’ positions.

3) Number and Position Distribution of the NodesThe effect of the nodes’ placement and number on the

LASA algorithm is tested in this part. Fig. 6 shows the initialdistribution of 100 grid nodes and 200 random nodes. Threeexperiments were conducted: in the first experiment no anchoris deployed; 3 anchors are placed uniformly in the secondexperiment; in the third experiment there are 13 anchorsdeployed uniformly in the square area. In each experiment,the localization results of 100 random nodes, 100 grid nodesand 200 random nodes are compared.

Fig. 7 plots the results of the experiments. It can be seenthat the result of 100 grid nodes is best in all experiments.Yet 100 random nodes get the worst result among the threeexperiments. The reasons are that LASA gets the structureinformation in the grid case and there is higher connectivity inthe case of 200 nodes than that of 100 nodes. From the resultsof Fig. 7(a) (b) (c), it can be also found that when the numberof anchors increases, the performance of the LASA algorithm

0 100 200 300 400 500 600 700 800 900 100014.9

15

15.1

15.2

15.3

15.4

15.5

15.6

15.7

15.8

15.9

iterations

ave

rage

pos

ition

erro

r

3 anchors with uniform positions 13 anchors with uniform positions 3 anchors with random positions 13 anchors with random positions

Fig. 5. Proportion of average position error against iterations. Results ofthe four scenes, 3 anchor nodes uniformly and randomly, 13 anchor nodesuniformly and randomly, are showed.

0 20 40 60 80 1000

10

20

30

40

50

60

70

80

90

100

(a)0 20 40 60 80 100

0

10

20

30

40

50

60

70

80

90

100

(b)

Fig. 6. Initial distribution. (a) 100 grid nodes. (b) 200 random nodes.

gets better because more anchors provide more position in-formation. Hence, the number and position distribution of thenodes play an important influence on the performance of theLASA algorithm. Both regular distribution and increasing thenumber of nodes will enhance the performance because theyprovide more connectivity information to the LASA algorithm.Besides, structure information provided by grid distributionalso improves the performance of the LASA algorithm.

4) ConvergenceThe convergence of the LASA algorithm has been analyzed

in Section III by the theoretical standard. It can also beobtained by experiments. Fig. 3, Fig. 5 and Fig. 7 all plotthe result of the LASA algorithm. It can be found that thealgorithm gets convergent in all experiments before number ofthe iteration comes to 200. Most experiments are conductedwith the random distributed nodes. When the nodes are notrandomly distributed, the conclusion of convergence is stillavailable. This is because that the LASA algorithm has norelationship with the nodes’ distribution. Just ensure that nodecan communicate with its neighbors and the LASA algorithmcan be used. According to the Lyapunov stability of the mass-

375

Page 6: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

200 400 600 800 100010

11

12

13

14

15

16

iterations(a) anchor�free

aver

age

posi

tion

erro

r

100 nodes 100 grid nodes 200 nodes

200 400 600 800 100010

11

12

13

14

15

16

iterations(b) 3 anchors

ave

rage

pos

ition

erro

r

100 nodes 100 grid nodes 200 nodes

200 400 600 800 100010

11

12

13

14

15

16

iterations(c) 13 anchors

ave

rage

pos

ition

erro

r

100 nodes 100 grid nodes 200 nodes

Fig. 7. Proportion of average position error against iterations when considering the situation of 100 grid nodes and 200 nodes.

0.040.06

0.080.1

10

20

30

10

15

20

25

CR

aver

age

posi

tion

erro

r

0.040.06

0.080.1

10

20

30

10

15

20

25

CR

aver

age

posi

tion

erro

r

0.040.06

0.080.1

10

20

30

10

15

20

25

CR

aver

age

posi

tion

erro

r

(a) anchor�free (b) 3 anchors (c) 13 anchors

Fig. 8. Average position error of the LASA algorithm.

0.040.06

0.080.1

10

20

30

2

3

4

5

6

x 10�3

CR

GE

R

0.040.06

0.080.1

10

20

30

2

3

4

5

6

x 10�3

CR

GE

R

0.040.06

0.080.1

10

20

30

2

3

4

5

6

x 10�3

CR

GE

R

(a) anchor�free (b) 3 anchors (c) 13 anchors

Fig. 9. GER of the LASA algorithm.

376

Page 7: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

spring model, we can conclude the convergence.5) Accuracy and GERThe initial positions and connectivity have a significant

effect on the accuracy and GER of the LASA algorithm.In this part, 100 nodes are distributed in the square region.Let 𝐶, 𝑅 control the initial positions and the connectivityrespectively. When 𝐶 increases, the initial coordinates areclose to the actual coordinates. The relationship between 𝐶and the coordinates is set as 𝑝𝑖𝑛𝑖𝑡𝑖𝑎𝑙 = 𝑝𝑎𝑐𝑡𝑢𝑎𝑙 + 𝑟𝑎𝑛𝑑/𝐶,where 𝐶 ∈ [1/30, 1/10], 𝑝𝑖𝑛𝑖𝑡𝑖𝑎𝑙, 𝑝𝑎𝑐𝑡𝑢𝑎𝑙 denote the initial andactual positions respectively, and 𝑟𝑎𝑛𝑑 is a random numberbetween 0 and 1 which guarantees the randomness of the initialcoordinates.

Fig. 8 plots the average position error of the LASA algorith-m in this experiment. The error becomes small sharply whenparameter 𝐶 increases. This can be explained that when initialcoordinates come to actual coordinates, the performance of thealgorithm grows. When communicational range is increasing,the connectivity of the network improves and so the perfor-mance enhances. Thus, initial coordinates and connectivity areconsiderable for the LASA algorithm. Good initial coordinatesand connectivity can benefit the localization result.

Fig. 9 plots the GER of LASA in the experiment. When theinitial coordinates come near to the actual coordinates, GERdecreases and LASA better captures the structure property.From the figure we discover no directly relation betweenGER and 𝑅. This may because that the GER of LASA doesnot rely on the connectivity. When the number of anchorsincreases and LASA gets more information, the GER becomesstable. Therefore, initial position is a major factor for GERand good initial coordinate can let LASA gain more structureinformation of IoT.

C. Comparison

A comparison with the state-of-the-art algorithms CALL [4]and Sweeps [5] is presented to reveal the advantages of theLASA algorithm. CALL and Sweeps are widely accepted astwo best localization algorithms in sparse networks.

Table I shows the comparisons of CALL, Sweeps andLASA. CALL and Sweeps are complicated algorithms thathave exponential computational complexity. However, in ourLASA algorithm, all nodes can be localized in parallel, sothe localization procedure can terminate in polynomial timeO(N), where N is the maximum number of nodes’ neighborsin IoT. Both CALL and Sweeps are centralized algorithmswhile LASA is a distributed algorithm. The LASA algorithmcan handle anchor-free localization problem and localize allnodes of IoT, yet neither CALL nor Sweeps could do this.

The advantage of low computational complexity by LASAinevitably comes at the cost of some loss of accuracy. Existingsparse anchor localization algorithms such as CALL andSweeps, all assume that compute positions without potentialsystematic errors. The criterion to evaluate the solution isnumber of the localizable nodes. The more the localizablenodes are, the better the solution will be. We do not considerthis assumption on our LASA algorithm. The distributed

LASA reduces the computational complexity and can localizeall nodes of IoT. However, accuracy of the LASA algorithm isessential in practical scenario. The accuracy of LASA dependson both the initial positions and connectivity of the network.We are still investigating for a more accuracy solution to thesparse-anchored localization problem.

V. DISCUSSION

In this paper, we proposed an efficient localization algo-rithm using mass-spring model to reduce the computationalcomplexity of the localization procedure and evaluated itsperformance through large-scale simulations. The results showthat our algorithm provides a low computational complexityand better convergence in various simulation based scenarios.However, there are still several challenging technical issuesthat need to be addressed in order to deploy our algorithm ina real environment. We briefly describe two of these issuesthat we are currently working on.

The localization accuracy is essential in the LASA algorith-m. If the algorithm has very low computational complexitywithout accuracy, it cannot be accepted by the IoT applica-tions. Therefore, it is necessary to improve the localizationaccuracy for our LASA. Both the connectivity and the initialpositions have effects on the localization accuracy. However,according to the result in Fig. 8 from Section IV-B-5, it can beseen that the accuracy depends more on nodes’ initial positionsthan connectivity. When the initial positions are close to theactual positions, the accuracy grows high quickly. In order toenhance the accuracy, we plan to spend more effort to findhow nodes’ initial positions impact the accuracy and reduceor eliminate the influence.

Another issue is how our LASA algorithm could obtainbetter initial positions. The initial positions may significantlydegrade the localization accuracy. Since there have been manylocalization algorithms, if we can select one efficient methodto provide initial positions, our LASA must get better results.In the future work, we will explore whether there are othermethods to provide initial positions and we may be able toobtain better initial positions.

VI. RELATED WORK

Many studies have focused on localization in the wirelessnetworks [6, 7], mainly falling into two categories: range-based [8, 9, 10, 11] and range-free [12, 13]. Range-freealgorithms usually use minimum hop count between nodes asa distance metric and estimate the distance based on anchor’sknowledge [14] or a predefined probability [15]. This paperfocuses more on range-based algorithm for sparse networks,so we discuss the classical range-based algorithms that addressthe sparse-anchored problem.

AFL [16] utilizes mass-spring model optimization to lo-calize the non-anchor nodes. The key idea of the algorithmis fold-freedom, where nodes first configure into a topologythat resembles a scaled and unfolded version of the trueconfiguration, and then run a force-based relaxation procedure.Our LASA shares similar mass-spring model. Nevertheless,

377

Page 8: [IEEE 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC) - Beijing, China (2013.10.10-2013.10.12)] 2013 International Conference

TABLE I. COMPARISON OF CALL, SWEEPS AND LASA.

CALL Sweeps LASA

Computational complexity Exponential Exponential O(N)Centralized/distributed Centralized Centralized DistributedHandle anchor-free No No YesLocalize all nodes No No Yes

our algorithm is different with them. AFL researches onanchor-free localization problem while LASA is designed tosolve the sparse anchor localization problem and reduces thecomputational complexity of localization process. The mass-spring model in LASA is also extended to be suitable for theIoT applications.

Xiaoping Wang et al. [4] propose a component-based al-gorithm CALL to address the sparse anchor problem. CALLgroups nodes into small components and then merges thecomponents iteratively into a bigger one until it is realizablein a plane. By offering many advantages over node-basedapproaches, such as favoring the large-scale localization in-formation aggregation, exploiting the anchor proximity andunderlying network model, CALL achieves pretty good resultsin sparse networks. As a pioneer work, Sweeps [5] introducesthe concept of finite localization, which holds all candidatepositions of each node and prunes incompatible ones whenother nodes join the procedure. Sweeps can also solve thelocalization problem in sparse networks. Both CALL andSweeps make an assumption that compute location withoutconsidering the systematic error. They take the number of thelocalizable nodes as metric to evaluate the solution. The morethe localizable nodes are, the better the algorithm will be.LASA does not depend on this assumption. LASA is able toefficiently localize all nodes in IoT with lower computationalcomplexity. The algorithm also is a distributed localizationscheme and can deal with the anchor-free localization problem.

VII. CONCLUSION

We propose the localization algorithm using sparse anchors,LASA, to address the localization issue in IoT. By simulatingthe physical process of the spring system, LASA can localizethe IoT nodes. Theoretical analysis and large-scale simulationresults show the better performance of the algorithm. Com-parison with the other localization algorithms shows that thisalgorithm significantly outperforms previous algorithms. Forfuture work, we plan to develop algorithms covering the issuesdiscussed in this paper. We will then expand our simulationsto cover the factors in practical environment and perform morereal experiments.

ACKNOWLEDGMENT

The authors would like to thank the editor and reviewersfor their helpful comments and suggestions. This researchwas supported by the National Basic Research Programof China (973 Program) under Grant No. 2011CB302903;Jiangsu Science and Technology Pillar Program under Grant

No. BE2009157; and the College Graduate Research andInnovation Projects of Jiangsu Province under Grant No.CXLX12 0487.

REFERENCES

[1] D. Miorandi, S. Sicari, F. De Pellegrini, and I. Chlamtac,“Internet of things: Vision, applications and research challenges,”Ad Hoc Networks, vol.10, no.7, pp. 1497-1516, 2012.

[2] X. Zhu, Q. Li, and G. Chen, “APT: Accurate Outdoor PedestrianTracking with Smartphones,” in Proc. of IEEE INFOCOM, Turin,Italy, 2013.

[3] L. Atzori, A. Iera, and G. Morabito, “The internet of things:A survey,” Computer Networks, vol.54, no.15, pp. 2787-2805,2010.

[4] X. Wang, J. Luo, Y. Liu, S. Li and D. Dong, “Component-basedlocalization in sparse wireless networks,” IEEE/ACM Transac-tions on Networking, vol.19, no.2, pp.540-548, 2011.

[5] D. K. Goldenberg, P. Bihler, M. Cao, J. Fang, B. D. O. Anderson,A. S. Morse, and Y. R. Yang, “Localization in sparse networksusing sweeps,” in Proc. of ACM MobiCom, Los Angeles, CA,USA, 2006, pp. 110-121.

[6] Y. Liu, Z. Yang, X. Wang, and L. Jian, “Location, localization,and localizability,” Journal of Computer Science and Technology,vol.25, no.2, pp. 274-297, 2010.

[7] G. Mao, B. Fidan, and B. D. O. Anderson, “Wireless sensornetwork localization techniques,” Computer Networks, vol.51,no.10, pp. 2529-2553, 2007.

[8] K. Wu, J. Xiao, Y. Yi, M. Gao, and L. M. Ni, “FILA: Finegrainedindoor localization,” in Proc. of IEEE INFOCOM, Orlando, FL,USA, 2012, pp. 2210-2218.

[9] S. Yang, P. Dessai, M. Verma, and M. Gerla, “FreeLoc:Calibration-Free Crowdsourced Indoor Localization,” in Proc. ofIEEE INFOCOM, Turin, Italy, 2013.

[10] R. Nandakumar, K. K. Chintalapudi, and V. N. Padmanabhan,“Centaur: locating devices in an office environment,” in Proc. ofACM MobiCom, Istanbul, Turkey, 2012, pp. 281-292.

[11] H. Liu, Y. Gan, J. Yang, S. Sidhom, Y. Wang, Y. Chen, et al.,“Push the limit of WiFi based localization for smartphones,” inProc. of ACM MobiCom, Istanbul, Turkey, 2012, pp. 305-316.

[12] S. Lederer, Y. Wang, and J. Gao, “Connectivity-based localiza-tion of large scale sensor networks with complex shape,” in Proc.of IEEE INFOCOM, Phoenix, AZ, USA, 2008, pp. 789-797.

[13] M. Li and Y. Liu, “Rendered Path: Range-Free Localization inAnisotropic Sensor Networks With Holes,” IEEE/ACM Transac-tions on Networking, vol.18, no.1, pp. 320-332 2010.

[14] Y. Wang, X. Wang, D. Wang, and D. P. Agrawal, “Range-freelocalization using expected hop progress in wireless sensor net-works,” IEEE Transactions on Parallel and Distributed Systems,vol.20, no.10, pp. 1540-1552, 2009.

[15] Y. Shang and W. Ruml, “Improved MDS-based localization,” inProc. of IEEE INFOCOM, Hong Kong, China, 2004, pp. 2640-2651.

[16] N. B. Priyantha, H. Balakrishnan, E. Demaine, and S. Teller,“Anchor-free distributed localization in sensor networks,” TechReport #892, MIT Laboratory for Computer Science, 2003(http://nms.lcs.mit.edu/cricket/papers/TechReport892.pdf).

378