A probabilistic framework for entire WSN localization using a mobilerobot

9
Robotics and Autonomous Systems 56 (2008) 798–806 Contents lists available at ScienceDirect Robotics and Autonomous Systems journal homepage: www.elsevier.com/locate/robot A probabilistic framework for entire WSN localization using a mobile robot F. Caballero a,* , L. Merino b , P. Gil a , I. Maza a , A. Ollero a a University of Seville, Camino de los Descubrimientos s/n, 41092, Seville, Spain b Pablo de Olavide University, Crta. de Utrera, km. 1, 41013, Seville, Spain article info Article history: Available online 26 June 2008 Keywords: Wireless sensor network Localization Mobile robots Particle filter Information filter abstract This paper presents a new method for the localization of a Wireless Sensor Network (WSN) by means of collaboration with a robot within a Network Robot System (NRS). The method employs the signal strength as input, and has two steps: an initial estimation of the position of the nodes is obtained centrally by one robot and is based on particle filtering. It does not require any prior information about the position of the nodes. In the second stage, the nodes refine their position estimates employing a decentralized information filter. The paper shows how the method is able to recover the 3D position of the nodes, and is very suitable for WSN outdoor applications. The paper includes several implementation aspects and experimental results. © 2008 Elsevier B.V. All rights reserved. 1. Introduction In Network Robot Systems (NRS), a team of robots is expected to cooperate with sensors embedded in the environment for tasks like information gathering, tracking, surveillance, etc. Several different kinds of sensor networks can be expected, like surveillance cameras, RFID readers, etc. Latest advances in low- power electronics and wireless communication systems have made possible a new generation of devices able to communicate, sense environmental variables and even process this information, the Wireless Sensor Networks (WSNs). In WSNs, the sensors are cheap and the whole network can consist of hundreds of sensors. In addition, the recent commercialization of some of these devices has increased the applicability and research efforts in this area. Collaborative perception between robots and the sensor networks require anchoring of all the data gathered to the same reference frame. Therefore, the localization of sensor nodes for sensor network deployment is an essential problem for NRS. It can also be important for the network performance when geographic- based routing methods are used. While most of the WSNs installed indoors are manually localized, localization of all the nodes in outdoor applications is still an open problem because GPS-based solutions are usually not viable due to the cost, the energy consumption and the satellite visibility from each node. This work is partially supported by the URUS project (IST-2006-045062) funded by the European Commission, and the AEROSENS project (DPI-2005-02293) funded by the Spanish Government. * Corresponding author. E-mail address: [email protected] (F. Caballero). This paper addresses the WSN localization problem in outdoor environments by using a mobile robot equipped with a DGPS device. The paper describes a probabilistic framework where the localization of an entire WSN can be estimated by analyzing the interactions of a robot with the network. The approach takes advantage of the good localization capabilities of the robot and its mobility to compute an initial estimation of the node positions. The estimated position of the nodes could be used by the robot to better plan actions for recovery of data. Moreover, once an initial estimation is obtained, a second localization stage is launched to refine the position of the nodes in a distributed manner. The received signal strength from neighbor nodes is used to improve their position employing a decentralized scheme based on Information Filtering. The paper is structured as follows. Firstly, the full approach is outlined in Section 2. Section 3 details the proposed method to compute an initial estimation of the position of the nodes. Then, a distributed technique for localization refinement is described in Section 4. Finally, some experimental results with a real network are shown. 1.1. Related work Localization of WSNs is an active field of research and several methods have been proposed. Most of them [2,11,15] are based on a small and well distributed set of nodes with known positions, called beacon-nodes. The position of these nodes is computed by means of a positioning sensor such as GPS or active/passive positioning devices. Sometimes this position is simply pre- computed and stored in the node. This information is propagated to the entire network and, finally, the radio interface of the wireless nodes is used to estimate the distance to the beacon-nodes which 0921-8890/$ – see front matter © 2008 Elsevier B.V. All rights reserved. doi:10.1016/j.robot.2008.06.003

Transcript of A probabilistic framework for entire WSN localization using a mobilerobot

Robotics and Autonomous Systems 56 (2008) 798–806

Contents lists available at ScienceDirect

Robotics and Autonomous Systems

journal homepage: www.elsevier.com/locate/robot

A probabilistic framework for entire WSN localization using a mobile robotI

F. Caballero a,∗, L. Merino b, P. Gil a, I. Maza a, A. Ollero a

a University of Seville, Camino de los Descubrimientos s/n, 41092, Seville, Spainb Pablo de Olavide University, Crta. de Utrera, km. 1, 41013, Seville, Spain

a r t i c l e i n f o

Article history:Available online 26 June 2008

Keywords:Wireless sensor networkLocalizationMobile robotsParticle filterInformation filter

a b s t r a c t

This paper presents a new method for the localization of a Wireless Sensor Network (WSN) by means ofcollaborationwith a robotwithin aNetwork Robot System (NRS). Themethod employs the signal strengthas input, and has two steps: an initial estimation of the position of the nodes is obtained centrally byone robot and is based on particle filtering. It does not require any prior information about the positionof the nodes. In the second stage, the nodes refine their position estimates employing a decentralizedinformation filter. The paper shows how the method is able to recover the 3D position of the nodes, andis very suitable for WSN outdoor applications. The paper includes several implementation aspects andexperimental results.

© 2008 Elsevier B.V. All rights reserved.

1. Introduction

In Network Robot Systems (NRS), a team of robots is expectedto cooperate with sensors embedded in the environment fortasks like information gathering, tracking, surveillance, etc.Several different kinds of sensor networks can be expected, likesurveillance cameras, RFID readers, etc. Latest advances in low-power electronics and wireless communication systems havemade possible a new generation of devices able to communicate,sense environmental variables and even process this information,the Wireless Sensor Networks (WSNs). In WSNs, the sensors arecheap and the whole network can consist of hundreds of sensors.In addition, the recent commercialization of some of these deviceshas increased the applicability and research efforts in this area.

Collaborative perception between robots and the sensornetworks require anchoring of all the data gathered to the samereference frame. Therefore, the localization of sensor nodes forsensor network deployment is an essential problem for NRS. It canalso be important for the network performance when geographic-based routingmethods are used.While most of theWSNs installedindoors are manually localized, localization of all the nodes inoutdoor applications is still an open problem because GPS-basedsolutions are usually not viable due to the cost, the energyconsumption and the satellite visibility from each node.

I Thiswork is partially supported by the URUS project (IST-2006-045062) fundedby the European Commission, and the AEROSENS project (DPI-2005-02293) fundedby the Spanish Government.∗ Corresponding author.

E-mail address: [email protected] (F. Caballero).

0921-8890/$ – see front matter© 2008 Elsevier B.V. All rights reserved.doi:10.1016/j.robot.2008.06.003

This paper addresses the WSN localization problem in outdoorenvironments by using a mobile robot equipped with a DGPSdevice. The paper describes a probabilistic framework where thelocalization of an entire WSN can be estimated by analyzing theinteractions of a robot with the network. The approach takesadvantage of the good localization capabilities of the robot and itsmobility to compute an initial estimation of the node positions.The estimated position of the nodes could be used by the robot tobetter plan actions for recovery of data. Moreover, once an initialestimation is obtained, a second localization stage is launchedto refine the position of the nodes in a distributed manner.The received signal strength from neighbor nodes is used toimprove their position employing a decentralized scheme basedon Information Filtering.

The paper is structured as follows. Firstly, the full approach isoutlined in Section 2. Section 3 details the proposed method tocompute an initial estimation of the position of the nodes. Then,a distributed technique for localization refinement is described inSection 4. Finally, some experimental results with a real networkare shown.

1.1. Related work

Localization of WSNs is an active field of research and severalmethods have been proposed. Most of them [2,11,15] are based ona small and well distributed set of nodes with known positions,called beacon-nodes. The position of these nodes is computedby means of a positioning sensor such as GPS or active/passivepositioning devices. Sometimes this position is simply pre-computed and stored in the node. This information is propagatedto the entire network and, finally, the radio interface of thewirelessnodes is used to estimate the distance to the beacon-nodes which

F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806 799

Fig. 1. (a): Scheme of the approach. The signal strength is used to estimate the position of the nodes of the network. Themobile robot computes centrally an initial estimationemploying a separate Particle Filter for each node. In the second step, a decentralized Information Filter integrates information received from neighbor nodes and the robot,at each node. (b): An example, a ground robot (Romeo) driving through the network.

is used to estimate the localization of the nodes using triangulation,maximum bounding or other techniques.

A pre-calibrated relation between the Received Signal StrengthIndication (RSSI) provided by the communication circuitry andthe distance is used to obtain a low-accuracy estimation whichworsens with the distance from the node to the beacon-nodes,see [12]. Improvements in the radio interface to increase thedirectivity, as in [19], or the inclusion of new features like time-of-flight have been proposed [18] but, in general, they lead to apower consumption growth and to a radio coverage reduction. In[9] time of arrival and direction of arrival are used to successfullylocalize a wireless sensor network but a number of requirementssuch as sensor node processor clock synchronization, special signalsource devices and direction of arrival are needed. Unfortunately,even having well localized beacon-nodes and a reliable system topropagate this information, the results will be poor if the beacon-nodes are not appropriately distributed in the network.

This paper proposes to use a mobile robot equipped with aDGPS device for WSN calibration. A well-localized mobile nodecan substitute a set of fixed beacon-nodes. Some authors haveproposed the use of mobile robots for calibration of sensornetworks. For instance, in [1] the authors present a similarapproach based on particle filters for the calibration of a networkof cameras. A particle filter is used to estimate the pose of thecameras, and it employs as data the position on the image planeof a localized robot. It also combines this with a Kalman Filter forposition refinement. However, results with only one camera arepresented, and no distributed approach is proposed. In [13], theauthors consider the use of a mobile robot carrying a calibrationpattern for the simultaneous localization, mapping and calibrationof a indoors network of cameras. There, a centralized ExtendedKalman Filter is employed to fuse all the information and the useof the artificial pattern allows one to fully observe the position ofthe robot relative to the camera.

A technique for WSN localization using mobile robots has beenalso presented recently in [3]. The authors detail a technique basedon potential fields that exploits the position information of a teamof Unmanned Aerial Vehicles (UAVs) to localize the nodes. Theconcept underlying the approach is similar to ours, although thesolution adopted is different; moreover, an accurate range sensoris required for computing the distance from the UAVs to the nodes.Here no special device for distance computation is used.

2. Technique overview

The purpose of the presented technique is to localize all thenodes of the network by using the information gathered by a

mobile robot. The robot is able to communicate with the WSN inorder to obtain environmental information. These data are sent tothe robot by using a radio frequency stage that informs it about thesignal strength on reception (the RSSI value).

The approach, outlined in Fig. 1, uses the received signalstrength to estimate the position of the emitter. The technique canbe divided into two basic steps. Firstly, a Particle Filter is used toprocess the RSSI value received from each node to compute aninitial estimation of node locations in a staticwireless network. Thefilter takes into account the uncertainty associated with the RSSIvalue and with the robot position (provided by a DGPS device) inorder to optimally compute the position of the node. In the secondstep, the initial estimation of the position of the nodes (representedby mean and standard deviation) is sent to them. A distributedInformation Filter is implemented in each node in order to easilyimprove the localization using the signal strength received fromother nodes of the network, including the mobile robot.

The following characteristics differentiate this technique fromother approaches:

• A Bayes filter is employed for the estimation of the localizationof the nodes. The estimated position of the nodes will berepresented by a probability distribution. This allows us totake into account the uncertainty of measures involved in theprocess, mainly the relationship between RSSI and distance.• The mobile robot position is included in the localization

process and integrated along time. It allows us to reduceone of the endemic problems of the RSSI-based localizationalgorithms: the distortion induced by radio-frequency effects.The chance of measuring the RSSI at different robot positionsand orientations permits automatic detection of outliers and,hence, an improvement in the distance computation.• Once an initial solution is computed, the network is able to

use the localization information of all the nodes, including theposition of the robot, to improve the estimation. This increasesthe flexibility of the technique.• There is no triangulation but an estimation process so that

the algorithm can consider hypotheses in which the estimatedposition is spread over a certain area.

3. Particle filter based nodes localization

3.1. Filter overview

The objective of the localization algorithm is to estimate theposition of the nodes of the network from the data provided bythe node onboard the robot equipped with DGPS. A separate filteris implemented for each node. Then, the state to be estimated

800 F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806

Algorithm 1 {x(i)k , ω

(i)k ; i = 1, . . . , L} ← Particle_filter ({x(i)

k−1ω(i)k−1;

i = 1, . . . , L}, zk = {xrk, RSSIk})1: for i = 1 to L do2: sample x(i)

k ∼ p(xk|x(i)k−1)

3: Compute d(i)k = ‖x

(i)k − xrk‖

4: Determine µ(d(i)k ) and σ(d(i)

k )

5: Update weight of particle i ω(i)k = p(RSSIk|x

(i)k )ω

(i)k−1 with

p(RSSI|x(i)k ) = N (µ(d(i)

k ), σ (d(i)k ))

6: end for7: Normalize weights {ω(i)

t }, i = 1, . . . , L8: Compute Neff9: if Neff < Nth then

10: Resample with replacement L particles from {x(i)k , ω

(i)k ; i =

1, . . . , L}, according to the weights ω(i)k

11: end if

consists of the position of each node x =(X Y Z

)T . Theinformation about the state will be obtained from the set ofmeasurements z1:k received up to time k. This set ofmeasurementsconsists of pairs of RSSI and robot position values {xrk, RSSIk} (thealgorithm considers a moving robot, and thus the time subscriptfor the robot position).

The method is based on Particle Filtering. This techniqueallows implementing recursive Bayesian filtering by Monte Carlosampling. The key idea is to represent the posterior density attime k p(xk|z1:k) by a set of independent and identically distributed(i.i.d.) random particles {x(i)

k } according to the distribution. Eachparticle is accompanied by a weight ω

(i)k . Sequential observations

andmodel-based predictionswill be used to update theweight andparticles, respectively. See [4] for more details.

Particle Filters allow Bayesian estimation to be carried outapproximately but in a structured and iterative manner, thatsimplifies the implementation. In general, it is very suitable fornon-gaussian stochastic processes with non-linear dynamics andvery useful when the posterior p(xk|z1:k) has no parametric formor this form is unknown. 3D localization of nodes with non priorinformation implies a completely unknown posterior, so thatParticle Filter seems to be a good solution to address the nodelocalization problem.

Although there are many possible implementations, in theproposed algorithm the prior probability distribution p(x0) is usedas the importance (or proposal) distribution to draw the initialset of particles at time 0, i.e. x(i)

0 ∼ p(x0). Then, these particlesare recursively re-estimated following the algorithm shown inAlgorithm 1.

The next subsections describe the main issues in the actualimplementation of the algorithm. As the likelihood function isthe core of the algorithm, it is described first. Then the updatingstep, the prior distribution, the prediction step and the resamplingprocedure are detailed. Finally, some guidelines for computing themean and standard deviation in the filter are mentioned.

3.2. The likelihood function

The likelihood function p(zk|xk) plays a very important role inthe estimation process. In this case, this function expresses theprobability of obtaining a given RSSI value on the node onboardthe robot (at position xrk) given the position of the emitter node xk.

Experimental results (Fig. 2) show that there exists a correlationbetween the distance that separates both nodes and the RSSI value,although this correlation decreases with the distance betweenthe two nodes, transmitter and receiver. This is mainly caused

Fig. 2. RSSI-distance functions,µ(dk) andσ(dk). These functions relate the distancebetween two nodes and the RSSI received in mean and std. deviation. It has beenexperimentally computed using a large set of RSSI/distance couples. The RSSIrepresentation is the one used in theMica2 nodes, 0 is themaximumsignal strengthand 375 the minimum. Dots: A sub-set of the experimental set of data. Solid line:Estimated mean µ(dk). Dashed lines: standard deviation confidence interval basedon σ(dk).

by radio-frequency effects such as radio reflection, multi-path orantenna polarization.

The model used here considers that the conditional densityp(zk|xk) can be approximated as a Gaussian distribution for a givendistance dk = ‖xk − xrk‖ as follows:

RSSIk = µ(dk)+N (0, σ (dk)) (1)

where the functions µ(dk) and σ(dk) are non-linear functions ofthe distance (which itself is a non-linear function of the state).

These functions are estimated offline from a training data set.A couple of nodes have been distanced from 0 to 30 m and theRSSI has been recorded for each distance. This experiment hasbeen repeated with several antenna polarizations. A least squaresprocess was used to compute the µ(dk) and σ(dk) functions thatbest fit the set of data. The computed equations are the following:

µ(dk) = 360 · (1− e−0.2·dk), σ (dk) = 2.11 · dk + 25.36. (2)

These equations are also shown in Fig. 2. As expected, it can be seenthat the standard deviation increases with the distance dk.

Note that the empirical model defined by (1) and (2) considersnot only the antenna properties, but also the filtering and dataconversions carried out by the communications circuitry. For thatreason, the model does not match with the classic logarithmic freespace propagation equations. Nevertheless, the experimental dataagree with those obtained in [14], where the authors also identifyquasi-Gaussian distributions in the relations RSSI/distance for afixed distance.

This experiment is only carried out for a couple of nodesof the network. Unfortunately, the nodes on a WSN are similarbut not exactly the same, and therefore the previous relationsshould be computed for all the nodes of the network. Toavoid this problem, the computed standard deviation has beenintentionally overestimated in order to include as many nodesas possible. As a result, this overestimation increases the timeneeded to converge to a correct solution in the Particle Filter.Moreover, this overestimation does not solve the problem ofbiased measurements that could produce nodes at which theRSSI/Distance relation differs significantly from the one of thenodes used for the calibration. However, in the experimentalresults, with 25 nodes, no divergence was observed in theestimation due to biased measurements.

F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806 801

Fig. 3. Prior distribution. The initial samples are drawn from an uniformdistribution over a spherical annulus. The inner (r1) and outer (r2) radius are afunction of the estimated distance from the RSSI and its variance.

3.3. Updating

Once obtained, the functionsµ(dk) and σ(dk) are used online inthe estimation process. Each time a new measure is received, theweights of the particles are updated considering the likelihood ofthe received data (lines 3, 4 and 5 of Algorithm 1).

The procedure is as follows. For each particle, the distanced(i)k = ‖x

(i)k − xrk‖ is obtained. From this distance, the mean and

variance of the conditional distribution p(zk|x(i)k ) are obtained, so

that p(zk|x(i)k ) = N (µ(d(i)

k ), σ (d(i)k )).

The probability of the actual RSSI value under this distributionis finally employed to update the weight of the particle ω

(i)k .

ω(i)k =

1

σ(d(i)k )√2π

exp

(−

(RSSIk − µ(d(i)k ))2

2σ(d(i)k )2

(i)k−1. (3)

After each update stage, the weights are normalized to have asum equal to one (line 7 of Algorithm 1).

3.4. Initializing the filter. The prior model

The filter associated with a specific node is initiated when thefirst message is received in the mobile robot (it should be recalledthat each node has a separate filter). In this case, the RSSI distancefunctions of (2) are used inversely as in the estimation process.From the RSSI values, an initial distance is estimated, and also acorresponding variance on the distance.

The prior consideration is then a uniform distribution on aspherical annulus, in which the inner and outer radius dependon the estimated mean and variance (see Fig. 3). As the numberof particles is limited, not all the messages received initiate thefilter. Only when a RSSI value corresponding to a variance belowa threshold is received, the filter is initiated, in order to have agood resolution (particles per volume unit) with a limited numberof particles. In the experiments shown in this paper, this thresholdhas been set to RSSI = 300, which (according to Fig. 2) correspondsto distances shorter than 8m approximately. If the PF is consideredwith 4000 particles, as in the experiments, this RSSI value ensuresamaximum X, Y and Z quantization factor of approximately 1.3m.

3.5. Prediction

The nodes of the WSN are static, so the prediction step mightbe omitted (that is, with probability 1 each node is in the sameposition at time k and k − 1). However, as the resolution ofparticles over the state space is limited, a random move is addedto the particles, in order to search locally over the area around the

position of the previous time step. Therefore, the predictionmodelis:

p(xk|xk−1) = N (xk−1, 6k−1). (4)

The value of 6 depends on the spatial distribution of particles,mainly the density of particles per volume unit. The idea behindthis is to make the particles move around their position in order toapproximately cover half of the distance to the neighbor particles.This way, the particle will integrate the mean value of the weightassociated to its area, not only the given position.

3.6. Resampling

In general, the mission of the resampling step is to spatiallydistribute the particles in order to increase the sampling of theposterior in the areas where the likelihood is high. Thus, theresampling stepwill duplicate particles with highweights andwilleliminate those with very low weights.

If no resampling is carried out in the Particle Filter, it will slowlyconverge to only one particle with a weight close to 1, while therest of particles will be weighted by 0. There are two problemsrelated to this behavior: first, the estimated std. dev. becomesclearly sub-estimated, leading to the filter divergence, and, second,the spatial resolution of the filter is strongly limited by the numberof particles, it leads to poor estimations. However, resamplingreduces the diversity of the particle set [16].

Therefore, a resampling step (line 10 of Algorithm 1) is includedin the filter to increase the accuracy of the estimated position andto reduce the number of required particles. Two considerations aretaken into account in this resampling step: first, resampling onlytakes place when the effective number of particles Neff is below athreshold. The effective number is computed as follows:

Neff =

[L∑

i=1

(ω(i)k )2

]−1. (5)

The threshold is set to the 10% of the number of particles, so Nth =

0.1L.Second, the algorithm employed for sampling the particles

space is a low variance sampler, particularly the algorithmdescribed in [16] (p. 110). Thismethod reduces the loss of diversityin the particle set in the resampling step.

3.7. Estimation of mean and standard deviation

The filter mean and standard deviation at time k can becomputed as follows:

µk =

L∑i=1

[x(i)k ω

(i)k ], σ2

k =

L∑i=1

[(x(i)k − µk)

2ω(i)k ]. (6)

One of the benefits of the Particle Filter is that it allows us to facea multi-modal or non-parametric hypothesis. While the posteriordistribution will depend on the measures during the transientstate, the filter approximately converges to a Normal distributionin the position of the node. It has been considered that the filterconverges when σk is below a certain threshold during a period oftime. In the implementation the threshold was set to 3m during atleast 20 messages.

If the filter converges at time k0, the belief is that theposition of the node can be modeled as a Normal distributionsuch as N (µk0 , σk0). This allows switching to another filterimplementation like Extended Kalman Filter (EKF) or ExtendedInformation Filter (EIF) which will efficiently take into accountthe gaussian nature of the posterior distribution. The next Sectionfocuses on the use of Information Filtering for refining the initialestimation given by the Particle Filter approach.

802 F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806

Fig. 4. The RSSI values received from neighbor nodes can be used as constraintsover the positions of the different nodes of the network. These constrains areintegrated by the nodes by using a decentralized Information Filter.

4. Decentralized nodes position refinement employing infor-mation filters

4.1. Description

Once the particle filter on the mobile robot has obtained aunimodal distribution for the position of one node, the mean µand covariance matrix 6 are transmitted to it. Then, the node canlocally refine its own position by using the information receivedfrom the mobile robot and also from its neighbor nodes (whichalso have an initial estimation of their positions). The messagesexchanged among the nodes will be always accompanied by theestimated position of the emitter. This information, joined tothe RSSI at the receiver, introduces a constraint on the possiblepositions of emitter and receiver. By using measures from severalneighbors or the mobile robot, the position of the node can befurther refined (see Fig. 4). Moreover, if a node also maintainsan estimation of the position of the neighbor nodes in itscommunication range, this can be used for geographic routing ofdata.

The main issues for a decentralized estimation that runs on thenodes are the memory restrictions that these nodes have, with astorage space of a few kilobytes.

4.2. Local filters

The information from neighbor nodes is integrated employingan Information Filter (IF) [16]. The IF is a Gaussian Filter thatemploys the so-called canonical representation for the Gaussiandistribution. The fundamental elements are the information matrix� = 6−1 and the information vector ξ = 6−1µ. The propertiesof the Information Filter allow easy decentralized data fusionat low computational cost thanks to an efficient updating stageand to the naturally sparse characterization of the informationmatrix,respectively [16,5]. The sparseness of the informationmatrix has been employed, for instance, in batch algorithms for thefull SLAM problem, as in [17]. Here, it will be employed to deviseonline algorithms for decentralized estimations that are efficientin term of memory requirements.

In themost general case, each nodemaintains a local estimationof its position and the position of its surrounding nodes. The stateis maintained in information form. It is considered that nodes onlyhave information about their own position at time 0. Thus, for node1 (denoted by ξ1 and �1), the initial state is given by:

�10 =

�1

11 0 . . . 00 0 . . . 0...

.... . .

...0 0 . . . 0

ξ10 =

ξ110...0

. (7)

The state to be estimated (the node position and that of itsneighbors) is static, so no prediction step is performed. Each nodeupdates its map with the information received from its neighbors.In the general case, the received message consists of the estimatedposition of the emitter. For instance, if the sender is node i, it sendsits own position estimation as a pair ξii and �i

ii. The receiver alsocomputes the RSSI1i value of the incoming message.

As shown in Section 3.2 and illustrated in Fig. 2, themeasurement function RSSIt = h(x) is non-linear on the state, sothe Extended Information Filter (EIF) is employed. The updatingequations for the EIF are:

�1t = �1

t−1 +MTt S−1t Mt (8)

ξ1t = ξ1t−1 +MTt S−1t [zt − h(µt)+Mtµt ]. (9)

The updating equations of the EIF require an estimation ofthe variance σ 2

rssi of the received RSSI value in information formS−1t =

1σ 2rssi

. This value is estimated by using the expression (2)

evaluated at the mean distance between nodes. Also, the JacobianM of the measurement equation is required, which is obtained bylinearizing the relation (2) around the current estimated mean ofthe state x. The RSSI is a scalar value that depends on the distancebetween the two nodes d1i = ‖x1 − xi‖ =

√(x1 − xi)T (x1 − xi):

RSSI1i = h(d1i) = h(‖x1 − xi‖). (10)

Then,

M =∂RSSI1i

∂x=

∂h∂d1i

∂d1i∂x

=∂h∂d1i

22d1i︸ ︷︷ ︸

M

((x1 − xi)T 0 · · · −(x1 − xi)T · · · 0

)(11)

where M is a scalar dependant on the mean distance betweenthe nodes. It can be seen, from the form of M, that the updatingequations only affect the part of the information vector andmatrixrelated to nodes 1 and i. Removing the time indexes, the finalupdating equations, when receiving information from node i, are:

�1t =

(�1

11 �11i

�1i1 �1

ii

)+

(0 00 �i

ii

)︸ ︷︷ ︸

fusion

+M2

σ 2rssi

×

((x1 − xi)(x1 − xi)T −(x1 − xi)(x1 − xi)T

−(x1 − xi)(x1 − xi)T (x1 − xi)(x1 − xi)T

)(12)

ξt =

(ξ11ξ1i

)+

(0ξii

)︸ ︷︷ ︸

fusion

+M

σ 2rssi

(x1 − xi−(x1 − xi)

)[RSSI − h(x)+Mx] (13)

where x1 and xi are evaluated at the current means µ1 and µi. Asshown in [17], this estimation procedure is equivalent to obtainingthe optimal position of the nodes under the restrictions on theirpositions x induced by the RSSI values, which are of the form[zt − h(x)]S−1t [zt − h(x)]T (see Fig. 4).

There are several issues to be pointed out. First, the applicationof all the previous equations maintains a sparse structure for theinformation matrix about the position of all the neighbor nodesthat have communicated with node 1 (see Fig. 5). Then, it can beseen that the memory requirements are linear with the number ofneighbor nodes. This is a key issue for the implementation of thealgorithm in sensor nodes.

Also, measurements induce relative relations, and thereforethe state is not fully observable. However, the nodes arealready observed after the initial estimation by using the particlefilter. Also, the measurements from the robot, which position

F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806 803

Fig. 5. Structure of the information matrix for the case considered.

uncertainty are independent from that of the nodes, and allowanchoring of the nodes to a common reference frame. It isimportant to remark that the nodes do not maintain an estimationof the position of the node on board the mobile robot. Thus, whenreceiving information from the robot, the information about therobot position is marginalized out.

Finally, the received local estimation about node i is fused withthe current one. As shown in Eqs. (12) and (13), for a decentralizedEIF, the fusion step is a simple addition of the local information.This step can be modified to incorporate more information, asdescribed in the next section.

4.3. Decentralized estimation

The main idea is to estimate at each node the position ofother nodes of the network in a decentralized manner. Theprevious equations involve a decentralized fusion of the marginalinformation ξii and �ii about the position of the emitter. However,the emitter could include in the message its local estimationabout the position of all its surrounding nodes. This way, moreinformation could be used for position refinement in the fusionstep. Also, each node would finally have knowledge about thepositions of all the nodes of the network.

The problemderived from this scheme is that the sparsity is lost(see Fig. 6). Therefore, the storage requirements increase (which isthe main limitation for these kind of nodes), and the size of themessage needed to transmit the information as well.

Besides, the updating equations requiremaintaining an estima-tion of the mean µ of x for the computation of the updating stage(12) and (13). This would require us to solve the system ξ = �µ.If the sparsity of the system is maintained, efficient algorithms canbe used.

The option considered here is to send with each message notonly the marginal information about the emitter, but also its localestimation about the position of the receiver. This way, the fusionequations are changed by:

�1t =

(�1

11 �11i

�1i1 �1

ii

)+

(�i

11 �i1i

�ii1 �i

ii

)(14)

and:

ξ1t =

(ξ11ξ1i

)+

(ξi1ξii

)(15)

where the sums only affect the part of the state corresponding tonodes 1 and i, and thus maintain the structure of the informationmatrix. In order to do that, each time information is sent to a node,the marginal information about emitter and receiver is extracted.Themarginal of amultivariate Gaussian can be computed in closedform [16]. In the particular case of matrices with the structure ofFig. 5, the computation requirements only involve inversions of3×3matrices and local operations. For instance,marginalizing outthe information about node 4 in that example only affects node 1(see Fig. 7):

�̄11 = �11 − �14�−144 �41

ξ̄1 = ξ1 − �14�−144 ξ4.

(16)

4.3.1. Conservative fusion rulesThe above presented filter is employed locally at each node, and

thus the full computation is decentralized. In the fusion operations(14) and (15), special care should be taken to avoid considering thesame information several times. In the most general decentralizedcase, there will be unknown correlations that should be takeninto account. If they are not, the filter will diverge due to doublecounting of information [6]. This effect is commonly known asrumor propagation.

For the Information Filter, the Covariance Intersection method[7] gives consistent results even in presence of unknowncorrelations. Thus, the equations (14) and (15) are reformulated asfollows:

�1t = α�1

t−1 + (1− α)�it

ξ1t = αξ1t−1 + (1− α)ξit(17)

where α ∈ [0, 1]. α is usually selected as the one that maximizesthe determinant of the final information matrix. However, giventhe limited processing power of the nodes, a more heuristicapproach is employed, and the local information is always moreweighted than the received one by using a fixed weight α.

Although not considered in the current implementation, asimilar approach could be used to limit the effect of not accountedcross-information due to the linearization of the measurementequations [8].

Fig. 6. Left and centre: local estimations of nodes 1 and 3 for the situation of Fig. 4. Right: estimation at node 3 after fusing all information from node 1. It can be seen thatexchanging the full map leads to a higher density in the information matrix.

804 F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806

Fig. 7. Operations involved in the marginalization. Marginalization of the information about one node only requires small block operations and maintains the structure ofthe information matrix. In this example, operations involved to remove node 4 in the example shown in Fig. 5.

Fig. 8. Experiment setup. (a): 25 Mica2 nodes spread in the parking area of the University of Seville. (b): Romeo, the mobile robot used to interact with the network.(c): Node mounted on Romeo.

Fig. 9. Estimation error in metres computed as the distance between the DGPS position and the Particle Filter based estimation (red-solid). Standard deviation in metresobtained from the particles (green-dashed). The estimated distribution is consistent with the errors.

5. Experimental results

This section details the results of an experimental setupconceived to test the above algorithms. A wireless sensor networkcomposed of 25 Mica2 nodes was deployed in a parking area, seeFig. 8(a). The positions of all the nodes were computed using aDGPS device in order to validate the algorithm estimations.

A ground robot (Romeo) is used to localize the nodes, seeFig. 8(b). Romeo is equipped with DGPS, gyroscope, compass andother navigation devices. In addition, oneWSN node was mountedand connected to Romeo through a serial link cable, Fig. 8(c). Thenode runs a software that relays all received messages to Romeo.

The Particle Filter based localization has been implementedin C++ and runs onboard Romeo. The onboard software receivedall the messages from the WSN and the positioning informationfrom the DGPS device. A filter with 4000 particles and non-priorinformation was implemented at each node. The authors exploredthe implementation of this algorithm inside the nodes but the

memory requirements for the particle storage, around 4 kbytes,make it difficult given the usual memory restrictions in the nodes.

Fig. 9 shows the evolution of the error in the estimated positionfor X, Y and Z axes for one node of the network. The erroris computed as the distance between the estimation using theParticle Filter approach and the actual DGPS position of the node.The figure shows the estimated standard deviation per axis aswell. It can be seen that the std. dev. is consistent with the errorcommitted.

Fig. 10 shows the mean error committed in the estimatedposition of the 25 nodes by using the Particle Filter approach. Thefigure shows the mean error of all the network after receiving xmessages.

The Information Filter approach for position refinement is stillnot implemented inside the nodes, so that all the required data fortesting the algorithm (RSSI, emitter and receiver) were extractedfrom the network through a gateway and stored in a file. It meansthat the experiments were carried out off-line but with actual datafrom the network.

F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806 805

Fig. 10. The figures show the mean error in metres committed after receiving xmessages.

Fig. 11. Evolution of the error between the estimated position and actual positionof several nodes employing the decentralized IF scheme.

Fig. 11 shows the correction on the error of the estimatedposition for several nodes. Fig. 12 shows the estimated position forthe two nodes compared to the actual ones.

6. Conclusions and future work

The paper has shown a technique for estimating the positionof the nodes of a WSN by using the received signal strength ina mobile robot and a distributed method for position refinementusing the normal data flow of the network. Both techniques have

been tested in real conditions and the results showed their goodfeasibility.

The Particle Filter based localization has been tested online ina real robot. The needed computation to run the filters is low andthe errors committed to the estimation are reasonable.

The decentralized scheme shows that improvements in part ofthe network propagate to others. Although this decentralized po-sition refinement using the Information Filter has been tested of-fline, the results are promising. The low computation requirementsneeded to update the filter joint to a fixed state vector with threeor four neighbors makes possible the implementation inside thenodes. Our next steps will consider this issue.

Certainly, some robot motions are much more convenient forthe localization of the nodes than others. The inclusion of thenetwork localization in the NRS path planning will be researched.Eq. (12) allows us to obtain an estimation of the informationgain (for instance as the expected difference of entropy of theprobability distributions) for a given position of the robot andan expected value of the RSSI. Fig. 13 shows the estimatedinformation gain for different positions of a robot and a networkof three nodes. This information gain can be used within greedyexploration strategies to generate robot actions that will reducethe uncertainty in the estimated position of the nodes of the WSN.

Finally, in this paper the likelihood function that relatesRSSI and distance was estimated off-line and then maintainedfixed. Improvements to re-estimate online the functions by usingmethods like Expectation-Maximization [10] will be researched.

Fig. 12. Evolution of the estimated position for two different nodes by using the IF approach. Solid, estimated position. Dash-dot, position measured by DGPS. Dependingon the distribution of the neighbor nodes, some coordinates are better resolved than others.

806 F. Caballero et al. / Robotics and Autonomous Systems 56 (2008) 798–806

Fig. 13. Expected information gain for a network of three nodes at positions (0, 0),(5, 12) and (−3,−10) and a mobile robot. The information gain is computed as theexpected variation of the entropy of the distribution on the node position.

Acknowledgment

The authors thank the help of Antidio Viguria for supportingpart of the WSN experiments needed to validate the Particle Filterapproach presented in this paper.

References

[1] A. Brooks, S. Williams, A. Makarenko, Automatic online localization of nodesin an active sensor network, in: Proc. IEEE Int. Conf. Robotics and Automation,New Orleans, 2004.

[2] N. Bulusu, J. Heidemann, D. Estrin, GPS-less low-cost outdoor localization forvery small devices, IEEE Personal Communications 7 (5) (2000) 28–34.

[3] P. Dang, F.L. Lewis, D.O. Popa, Dynamic localization of air-ground wirelesssensor networks, in: Proceeding of the 14th Mediterranean Conference onControl and Automation, 2006.

[4] A. Doucet, N. de Freitas, N. Gordon (Eds.), Sequential Monte Carlo Methods inPractice, Springer-Verlag, 2001.

[5] R. Eustice, H. Singh, J. Leonard, Exactly sparse delayed-state filters for view-based SLAM, IEEE Transactions on Robotics 22 (6) (2006) 1100–1114.

[6] S. Grime, H.F. Durrant-Whyte, Data fusion in decentralized sensor networks,Control Engineering Practice 2 (5) (1994) 849–863.

[7] S. Julier, J. Uhlmann, A non-divergent estimation algorithm in the presence ofunknown correlations, in: Proceedings of the American Control Conference 4,1997.

[8] S. Julier, J. Uhlmann, Using covariance intersection for SLAM, Robotics andAutonomous Systems 55 (1) (2007) 3–20.

[9] R. Moses, D. Krishnamurthy, R. Patterson, A self-localization method forwireless sensor networks, EURASIP Journal on Applied Signal Processing 4(2003) 348–358.

[10] R. Neal, G. Hinton, A View of the EM Algorithm that Justifies Incremental,Sparse, andOther Variants,MIT Press, Cambridge,MA,USA, 1999, pp. 355–368.

[11] N. Patwari, A.O. Hero, Using proximity and quantized RSS for sensorlocalization in wireless networks, in: Proc. of the 2nd ACM internationalconference on Wireless sensor networks and applications, WSNA 2003, ACMPress, New York, NY, USA, 2003.

[12] V. Ramadurai, M.L. Sichitiu, Localization in wireless sensor networks: Aprobabilistic approach, in: Proceedings of the 2003 International Conferenceon Wireless Networks, ICWN 2003, Las Vegas, NV, 2003.

[13] I. Rekleitis, D. Meger, G. Dudek, Simultaneous planning, localization, andmapping in a camera sensor network, Robotics and Autonomous Systems 54(11) (2006) 921–932.

[14] M. Sichitiu, V. Ramadurai, Localization of wireless sensor networks with amobile beacon, in: Proc. of the IEEE International Conference on Mobile Ad-hoc and Sensor Systems, MASS, 2004.

[15] M. Terwilliger, A.G.V. Bhuse, Z.H. Kamal, M.A. Salahuddin, A localizationsystem using wireless sensor networks: A comparison of two techniques, in:Proc. of the First Workshop on Positioning, Navigation and Communication,Hannover, Germany, 2004.

[16] S. Thrun, W. Burgard, D. Fox, Probabilistic Robotics, The MIT Press, 2005.[17] S. Thrun, M. Montemerlo, The graph SLAM algorithm with applications to

large-scale mapping of urban structures, The International Journal of RoboticsResearch 25 (5–6) (2006) 403–429.

[18] K. Whitehouse, D. Culler, Macro-calibration in sensor/actuator networks,Mobile Networks and Applications 8 (4) (2003) 463–472.

[19] S. Yang, H. Cha, An empirical study of antenna characteristics toward rf-basedlocalization for IEEE 802.15.4 sensor nodes, in: 4th European conference onWireless Sensor Networks, EWSN 2007, Delf, The Netherlands, 2007.

F. Caballero received his B.S. in TelecommunicationEngineering in 2003 from the University of Seville, Spain.In 2003 he joined the Robotics, Vision and Control Group,where he has conducted researches in computer visionapplied to the localization problem, mainly in aerialrobotics. He has participated in several National andEuropean funded research projects. He obtained his Ph.D.in Robotics in 2007 from the University of Seville. He iscurrently involved in localization and tracking in wirelesssensor networks.

L. Merino received his degree in TelecommunicationEngineering in 2000 and Ph.D. in Robotics in 2007,both from the University of Seville, Spain. He joinedin 2001 the Robotics, Vision and Control Group at theUniversity of Seville, where he has been a researchassistant, participating in several Spanish and EuropeanR&D projects in the field of aerial robotics and cooperativeperception. Since 2004, he is assistant professor atPablo de Olavide University, Seville, Spain. His mainresearch interests are computer vision applications forfield robotics, vision-based navigation and cooperative

perception techniques, including multi-modal information fusion and activeperception.

P. Gil is Telecommunications Engineer and he currentlycollaborates with the Robotics, Vision and Control Re-search Group. His work is mainly focused on the integra-tion of Wireless Sensor Networks and mobile robots, aswell as localization techniques based onRF signal strength.

I. Maza is assistant professor at the University of Seville,Seville, Spain. He received his degree in Telecommunica-tion Engineering and joined the Robotics, Vision, and Con-trol Group in year 2000. He is currently Ph. D. student atthe University of Seville. His research interests focus ondistributed task allocation and decision in Network RobotSystems.

A. Ollero is Professor at the University of Seville. Hehas been professor at the Universities of Santiago andMálaga (Spain) and researcher at the Robotics Institute-CMU (Pittsburgh, USA) and LAAS-CNRS (Toulouse, France).He is author or co-author of more than 350 publicationsincluding 4 books, and leaded or participated in morethan 90 projects, including 14 projects funded by theEuropean Commission. He is the recipient of 8 nationaland international awards. He is currently the coordinatorof the European project AWARE on the integrationof unmanned aerial vehicles with wireless sensor and

actuator networks, and the coordinator of several Spanish projects on robotics,unmanned aerial vehicles and networked systems. He is ViceChair of the TechnicalBoard of the International Federation of Automatic Control.