Adaptive Source Localization by a Mobile Robot Using Signal Power Gradient in Sensor Networks Yi Sun, Jizhong Xiao, Xiaohai Li, and Flavio Cabrera-Mora Abstract – In this paper, we propose a novel approach of signal power gradient by which a robot adaptively searches a location-unknown sensor. While moving, the robot measures signal strength and estimates the direction of power gradient along which the robot moves in the next step. The correctness of estimated direction is analyzed and the probability of correct direction is obtained. Since the robot continuously measures signal strength while moving, it can effectively overcome the motion errors. Simulation results demonstrate that the robot can successfully reach the location-unknown sensor with probability close to one when the signal to noise ratio at the initial location is as low as 0 dB and the standard deviation of motion error is 10% step size. Index Terms – sensor network, robot, target tracking. I. INTRODUCTION Sensor networks have been broadly applied in various fields in industry and in the military. They have also stimulated research in information acquisition, storage, transmission, and reachback at physical communication layer as well as network organization and management at upper layers. A particular interest in current research is sensor localization appearing in three scenarios. First, sensors localize other sensors in a sensor previously deployed network [1]-[4]. Second, a number of sensors localize a mobile one [5]-[8]. In both cases, a number of location-aware sensors are usually employed to beacon signals to their neighbors for self localization. The third can be surveillance or information reachback where a mobile robot localizes a number of activated sensors in a sensor network [9]-[14]. We shall consider this scenario. To accurately obtain the geophysical location of a sensor, the method in [9] employs a GPS-equipped robot that beacons to sensors. This method has a higher cost in power consumption and is unnecessary in surveillance and information reachback where only the relative location between the robot and a sensor is needed. To adaptively localize a source sensor, the distance between the mobile agent and sensor is used in [10]. An approach utilizing a directional antenna on a robot is recently proposed in [11]. This approach adds extra physical load and size to a robot and requires more computational power, thus difficult to apply to small robots. In this paper, we propose a power gradient guide for a robot to adaptively search for a location-unaware sensor with no extra devices but basics for communication. The robot needs only to instantly measure signal strength and estimate the direction of the power gradient along which the robot shall Yi Sun, Jizhong Xiao, Xiaohai Li and Flavio Cabrera-Mora are with the Department of Electrical Engineering at the City College of City University of New York, New York, NY 10031. E-mail:
[email protected],
[email protected],
[email protected],
[email protected].
move in the next step. Simulation results show that under the power gradient guide, the robot can reach the sensor with very high probability when the signal to noise ratio of signal strength at the initial search is as low as 0 dB and the standard deviation of motion error is 10% step size. Thus, it is quite robust to noise and motion errors. The approach needs little computation and data memory and consequently is suitable for real-time operation in a small robot. II. THE PROPOSED POWER GRADIENT GUIDE A. A sensor network Consider an application scenario where a number of sensors are arbitrarily deployed to monitor a specific area. When an event of interest occurs, a number of sensors around the event source are activated and relay the alert signal to the network boundary. With the mission of investigating the event, a robot at the boundary is sent to the field to trace back the activated sensors one after another until it reaches the event source as in Fig. 1. While the physical locations are unknown a prior, the sensors know the local network topology and therefore the ID’s of their neighbors. Our approach for the robot to localize the event source is to use only the received signal strength to guide it toward the activated sensors until it reaches the final sensor node.
s8 s7
s6
s5
s4
s3 s2 s1
Fig. 1. A sensor network with a path of activated sensors (in yellow)
The time is slotted with guard time as shown in Fig. 2. The activated sensors send signal only in their own time slots periodically, which distinguishes signals of different sensors while saving stringent power. Specifically, sensor 1 sends signal in slot 1, sensor 2 sends in slot 2, etc, accordingly and cyclically. The guard time is sufficiently long so that the signals sent in adjacent slots by different sensors are clearly separated at the robot. It shall be noted that since we need only the signal strength, the time slot can be as long as a packet time and so it is easy for sensors to synchronize. The robot scans the received radio signal in time slots. Obviously, the strength of received signal decreases as the distance increases. The robot shall search the sensor of the
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
strongest signal first and then the sensor of the second strongest signal and eventually arrive at the last activated sensor. By this scheme, the source localization problem is decoupled into a sequence of searching an individual sensor, on which we shall focus in the rest of the paper.
τ s1
s2
……
sM
s1
Fig. 2. Time is slotted so that each activated sensor sends signal during its own slots periodically. τ is the guard time.
B. Received signal strength Consider that a sensor transmits and the signal power attenuates with the distance d in accordance with the power decay law [15] P(d ) =
P0 (d / d 0 ) β
(1)
where P0 and d0 are the power and distance scaling factors, respectively, and the decay exponent β ≥ 2 depends on environment. In an open space, β = 2; however, in indoor environment, the exponent can be as high as β = 6. Suppose the sensor to be searched has an unknown location x = (x, y). The robot at discrete time i is located at xi = (xi, yi), i = 1, 2, …, k. At each time step i, the robot measures the signal strength from the sensor. The measurements are not accurate due to three sources of randomness. First, thermo-noise is added to the measurements. Second, the robot has motion errors so that it cannot arrive exactly at the point where it intends to. Third, the signal propagates through a fading channel so that the received signal strength varies randomly. However, since only the signal strength shall be used, the fading effect can be reduced to the minimum if the signal strength is measured by an integrator over a time period longer than the fading coherent time. Hence, we shall focus on dealing with the first two sources of randomness. Then the signal strength measured by the robot is (2) ui = α i P (|| xi + w i − x ||) + ni , i = 1, …, k The Gaussian noise ni ~ N(0, σ2) and the robot motion errors w i ~ N (0, σ x2 I ) are i.i.d. across measurements and mutually independent. The true robot location is at xi + wi. Since the fading coefficients αi ≥ 0, though usually random, are not the main source of randomness, we consider αi = 1 for simplicity. Note that the robot needs only to know the direction to which the sensor is located. Hence, even the robot moves with error, it can eventually reach the sensor if the correct direction at each time can be obtained. We define at the location xi the signal to noise ratio (SNR) by the signal power divided by the noise power P(|| xi − x ||)
. (3) σ2 As the robot moves normally towards the sensor, the SNR increases, i.e. SNRi < SNRi+1, and then the robot is more likely to reach the sensor. Hence, the initial SNR1 is critical for the robot’s possibility to reach the sensor. Henceforth, SNR means SNR1 for notion brevity. SNR i =
C. Power gradient guide The received signal power monotonically decreases as the distance from the sensor to the robot increases. The power gradient at the robot points to the sensor. Thus, a simple method to guide the robot is to move along the direction which the power gradient points at. The power gradient cannot be determined by the signal strength at xk alone; but it can be estimated by all the previous measurements ui and xi, i = 1, 2, …, k. It shall be noted that an accurate estimate of power gradient is unnecessary and difficult. On the other hand, even when the estimated gradient is inaccurate, the robot can be closer to the sensor if moving a sufficiently small distance in a direction along which the power increases. Hence, in the worst case, the robot needs only to estimate the sign of gradient along a direction. For example, without noise and motion error, the sign of power gradient with respect to the x axis at xk is the same as the sign of (uk − ui)/(xk − xi) if the distance ||xk − xi|| is sufficiently small; the same is true accordingly for the y axis. On the basis of this, we propose a power gradient estimator at xk by gk =
k −1
∑
i =k − N
(uk − ui )
( x k − xi ) . || x k − xi ||
(4)
In accordance with the meaning of power gradient, its magnitude increases as the difference between uk and ui increases. To eliminate the effect of distance ||xk − xi|| on the estimate, the unit vector in the direction xk − xi is employed. In the gradient estimate, only the latest N measurements are used. When N is large, the estimate is more reliable by averaging out noise; however, then the direction of gradient relies more on the past measurements and thus the robot changes direction slowly. On the other hand, using small N can turn fast; but the estimate is noisier and less reliable, which may make robot arbitrarily roam around, particularly at the initial locations where SNR is low. The optimized N shall be large at the initial and gradually decrease when the robot approaches the sensor, and consequently speeds up the search. To stabilize motion, each time the robot shall move a fixed distance s > 0 in the direction of gk (5) x k +1 = xk + sg k || g k || . Due to motion errors, the true location is xk+1 + wk+1. Let us briefly address why xk+1 is very possibly closer to x than xk. First, consider to use the measurements at xi and xk to obtain a correct direction c for the robot to move from xk. c is the correct direction if (x − x k )T c > 0 . Then the robot can be closer to x if taking a step with proper size along c. In (4), we propose the direction ci = (uk − ui )( x k − x i ) || x k − x i || . For analysis simplicity, let us at this moment consider noiseless model, and without loss of generality consider uk > ui. The power difference implies that || x k − x ||2
− (uk − ui ) || x k − xi || . 2
+2(x k − xi )T (x − xk )
2
(6)
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
This inequality implies that if the sensor is located up of the shaded region in Fig. 3, the left hand side of (6) is greater than zero and ci points at a correct direction. If the sensor is located at the shaded region, the direction is wrong (note that the sensor x is impossible to locate beneath line l for uk > ui). However, the width of the shaded region is small as the step size of robot motion is small. In particular, at the initial the sensor is far away from the robot location, and so ci is surely correct. When the robot is close to the sensor, N measurements are used in the estimation of motion direction in (4). Hence, gk is very likely to indicate a correct direction. The probability of correct direction of gk shall be further analyzed in the following subsection.
x
l
xi Fig. 3. The width of the shaded region is (uk − ui)||xk − xi||/2. Line l passes through the midpoint between xi and xk and is perpendicular to xk − xi.
At the initial location, the SNR is low. It is critical to estimate the correct gradient direction via the initial motions. First, the initial motions shall include as many directions as possible. We suggest that the robot moves along a circle and take sufficiently many measurements. Second, the initial measurements must be reliable. To this end, we suggest that L > 1 measurements of signal strength at each location xi, uij, j = 1, …, L are taken and the average 1 L ∑ uij L j =1
(7)
is used in the gradient estimation. The measurements at the same location can be taken periodically in different slots when the desired sensor is sending. It is easy to see that L measures increases the SNR of ui by 10log10L dB. On the other hand, taking multiple measurements at one location increases the total search time. Hence, L shall be large at the initial locations and gradually decreases as the robot approaches the sensor. D. Maximum likelihood estimation of sensor location When there is no motion error, a likelihood function of sensor location based on the latest M measurements ui’s (2) can be written as f k ( x) = −
k
∑ (
i = k − M +1
P(|| xi − x ||) − ui
)
2
.
β
k
∑
2 i=k −M +1
(8)
The maximum likelihood estimator (MLE) of sensor location is (9) xˆ = arg max f k (x) . x∈A
Based on the M measurements, the gradient of the likelihood with respect to x is
(10)
vi (x)(x − xi )
where vi (x) = [ P(|| xi − x ||) − ui ] P(|| xi − x ||) || xi − x ||−2 . Letting the likelihood gradient be zero, we obtain a fixed point equation for the MLE
∑ ∑ k
xˆ =
i =k − M +1 k
xi vi (xˆ )
.
(11)
v (xˆ )
i =k − M +1 i
It is difficult to obtain a closed-form solution since both sides depend on xˆ . A numerical solution can be obtained by iterations. Let xˆ(n) be the estimate in the nth iteration. Then the next estimate is
∑ xˆ(n + 1) = ∑ k
i = k − M +1 k
xk
ui =
∇f k (x) =
xi vi (xˆ (n)) v (xˆ (n))
.
(12)
i = k − M +1 i
It shall be noted that in general the likelihood function (8) has many local maximum points where the likelihood gradient equals zero. The solution (11) is an average of all locations xi, i = k−M+1, …, k, and must be located inside the largest polygon whose vertices are some of xi. If the sensor is located outside this polygon, the solution (11) is invalid. Hence, (11) is useful when the robot has taken measurements around the senor. This is, though difficult at the initial motions, usually true after the robot has moved around and close to the sensor by the power gradient guide (5). The MLE can be combined with the motion equation (5) to compose a complete search algorithm. E. Probability of correct estimate of gradient direction The direction of the estimated power gradient by (4) is correct if the projection of x − xk onto the gradient is positive (x − x k )T g k > 0 . (13) In the correct direction and with proper motion step, the robot can move closer to the sensor in the next step. The higher the probability of correct direction, the more likely the robot can reach the sensor in a given time. The probability of correct gradient direction can be calculated from (4). We have
( x − x k )T g k =
k −1
∑
(uk − ui )z ik
i =k − N
=
k −1
∑ (α
k
+
)
P(|| x k − x ||) − α i P(|| xi − x ||) ( x − x k )T z ik
i=k − N
k −1
( nk − ni ) (x − xk )T z ik ∑ i =k − N
(14)
where z ik = (x k − xi ) || x k − xi || is the unit vector in the direction from xi to xk. The second term of (14) is a Gaussian random variable with mean zero and variance σ k2 = 2σ 2 N || x − x k || . Given all the parameters and measurements at xk−N, xk−N+1, …, xk−1, the probability of correct direction for the next step can be calculated by qk ≡ Pr((x − x k )T g k > 0) = Φ ( γ k σ k ) (15) where γk is the first sum term in (14). When motion errors are considered, the probability of correct direction shall be the mean of (15) with respect to wk with xk replaced by xk + wk. F. Reach probability and average search time
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
The robot motion equation (5) is a Markov chain whose state, i.e. the robot location, is defined on the 2-D space. Given xk−N, xk−N+1, …, xk, the next location (state) xk+1 is determined by (4) and (5) and the order of the Markov chain is N+1. The probability density function of the location transition p(xk+1 | xk−N, xk−N+1, …, xk) can be easily written in terms of the signal model (2) and the motion equation. Since noise and motion error are i.i.d. across measurements, the location transition density function is stationary and then the Markov chain is stationary. By the location transition density function, we can evaluate performance of the motion in terms of the initial trajectory and all parameters. One of the performance measures is the reach probability. The robot is said to have reached the sensor at time k if || x k − x ||≤ a where a > 0 is a pre-specified distance, and therefore the probability that the robot reaches the sensor at k is θ k = Pr(|| x k − x ||≤ a) . Several performance measures can be calculated from θk. One is the reach probability defined as the probability that the robot reaches the sensor no later than k k
λk = Pr(|| xi − x ||≤ a, i ≤ k ) = ∑ θi .
location to the sensor, the previous direction is no longer correct. However, the robot takes several steps to find the correct direction again since the direction estimate (4) depends on the past N steps. It is intuitive and easy to understand that as N increases, the probability of correct direction increases but the time for the robot to change direction increases. Eventually, the robot reaches the sensor. From the figure, we can see the effect of motion errors on the trajectory. 30
25
20
15
10
5
(16)
0
i =1
It is practical that once reaching the sensor at i, the robot accomplishes the mission. Hence, the second equality of (16) is due to the fact that if the robot reaches the sensor at i, then it must not ever reach the sensor at any j < i. The reach probability characterizes completely the performance for the robot to search the sensor. The other performance measures are the average search time
and
the
variance
of
search
2 k
2
for all k, then the average search time is smaller. In practice, N is large, e.g. N = 10, and so calculation of λk by the distributions of noise and motion error, though possible, is complicated. On the other hand, the signal strength model and the robot motion equation are simple and therefore it is easier to estimate λk via simulation. III. NUMERICAL EVALUATION AND SIMULATION In all numerical evaluations and simulations, we consider that P0 = 1, d0 = 1, αi = 1, L = 10, a = 2s, the robot is initially located at x1 = (2, 2), and the sensor is at x = (30, 20). The robot initially moves clockwise N+1 equal steps on the circle centered at (2+r, 2) with radius r.
A. A sample trajectory Fig. 4 shows a sample trajectory along which the robot searches the sensor with SNR = 5 dB, β = 2.5, N = 10, s = 1, σx = 0.1s, and r = 2. As we can see, after moving on the circle, the robot roams several steps around the initial location and then eventually finds the correct direction towards the sensor. As the robot moves closer to the sensor, it can estimate the correct direction reliably and keep moving in the same correct direction. However, after arriving at the location where the previous direction is orthogonal to the line connecting current
15
20
25
30
35
40
1 0.95 0.9 0.85
time
Var (k ) = ∑ k =1 kθ − E (k ) . If the reach probability is higher ∞
10
0.8 1
∞
5
Fig. 4. A sample trajectory along which the robot searches the sensor.
q
E (k ) = ∑ k =1 kθ k
Robot initial location Sensor location Robot final location
0.75 0.7 0.65 0.6
N= N= N= N=
0.55 0.5 -10
-5
0
5 SNR1 (db)
10
20, 10, 20, 10,
15
r= r= r= r=
4 4 2 2 20
Fig. 5. Probability of correct direction versus SNR, N and r at the initial step with σx = 0.
B. Probability of correct direction It is critical to estimate the correct direction at the initial step where the signal received by the robot is weak. The correct direction estimate can significantly increase the reach probability, or reduce the average search time. The probability of correct direction at the initial step can be calculated by (15). Specifically, it is calculated based on the statistics of the measurements that the robot takes on the circle. As shown in Fig. 5, the probability of correct direction increases with the initial SNR, number of measurements, and circle radius. C. Reach probability and average search time
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.
The reach probability characterizes the robot performance in searching the sensor and is most important. Estimated in a simulation with a total of 104 trials in each case, Fig. 6 shows 1 0.9 0.8 0.7
λk
0.6 0.5 0.4 0.3 SNR = SNR = SNR = SNR = SNR =
0.2 0.1 0
0
50
100
150
200 k
0 dB, 0 dB, 0 dB, 5 dB, 0 dB,
250
β = 2.5, s = 1, r = 4 β = 5.0, s = 2, r = 2 β = 2.5, s = 2, r = 2 β = 5.0, s = 1, r = 2 β = 2.5, s = 1, r = 2 300
350
400
Fig. 6. Reach probability versus step. From left to right, the average search time is 68, 83, 106, 155, 189 steps.
the reach probability and the average search time versus SNR,
β, s, and r where N = 10 and σx = 0.1s. The figure
demonstrates how each parameter affects the reach probability. First, the reach probability relies on the probability of correct direction at the initial steps. As we can see, the reach probability significantly increases and the average search time decreases as the radius of initial circle increases since the probability of correct direction increases. Second, as the power decay exponent β increases, the reach probability increases due to the power gradient increase with β. Third, as the step size s increases, the reach probability significantly increases since a properly large s increases the signal strength difference between two locations and reduces the effect of noise and motion errors. Forth, the reach probability increases with SNR. IV. CONCLUSIONS We have proposed a simple while effective signal power gradient based approach for a robot to adaptively search a location-unknown source. While moving, the robot only measures the received signal strength and adaptively decides the motion direction in each time instant. Simulation result shows that the robot can reach the sensor when the initial SNR is as low as 0 dB and the standard deviation of motion errors is 10% motion step size. Due to its adaptive nature, the approach is robust to measurement noise and motion errors. Since the robot moves along the direction of power gradient estimated at each time, the approach can be applied to an arbitrary signal strength distribution in an area. One of the scenarios can be in the environment of obstacles so that the robot at the initial location does not have a line of sight to the sensor. The other scenario can be that the source is a cluster of activated sensors that send signals at the same time. The power gradient approach can be extended from the 2-D to the 3-D space for application of a wall-climbing robot. Another future work is to implement the algorithm in a robot to take field experiments.
REFERENCES [1] N. Bulusu, J. Heidemann, and D. Estrin, “GPS-less low cost outdoor localization for very small devices,” IEEE Pers. Comm. Mag., vol. 7, no. 5, 2000, pp. 28–34. [2] N. Patwari, J. N. Ash, S. Kyperountas, A. O. Hero III, R. L. Moses, and N. S. Correal, “Locating the nodes - cooperative localization in wireless sensor networks,” IEEE Signal Processing Mag., pp. 54 - 69, JULY 2005. [3] J. Bruck, J. Gao, and A. Jiang, "Localization and routing in sensor networks by local angle information," MobiHoc 2005, UrbanaChampaign, IL, May 25-28, 2005. [4] B. Tovara, L. Munoz-Gomezb, R. Murrieta-Cid, M. AlencastreMirandab, R. Monroyb, and S. Hutchinsona, “Planning exploration strategies for simultaneous localization and mapping,” Robotics and Autonomous Systems, 54 (2006), pp. 314-331. [5] K. Langendoen and N. Reijers, “Distributed localization in wireless sensor networks: a quantitative comparison,” Computer Networks, 43(2003), pp. 499-518. [6] B. Kusy, J. Sallai, G. Balogh, A. Ledeczi, V. Protopopescu, J. Tolliver, F. DeNap, M. Parang, “Radio interferometric tracking of mobile wireless nodes,” MobiSys’07, San Juan, Puerto Rico, USA, June 11–13, 2007. [7] B. Ferris, D. Hahnel, and D. Fox, “Gaussian processes for signal strength-based location estimation,” in Proc. 2006 Robotics: Science and Systems Conf., Philadelphia, PA, Aug. 19, 2006. [8] J. Letchner, D. Fox, and A. LaMarce, “Large-scale localization from wireless signal strength,” Proc. Nat. Conf. on Artificial Intelligence, Pittsburgh, PA, 2005, pp. 15–20. [9] M. Sichitiu and V. Ramadurai, “Localization of wireless sensor networks with a mobile beacon,” Proc. 1st IEEE Int. Conf. Mobile Ad hoc Sensor Syst., Fort Lauderdale, FL, 2004, pp. 174–183. [10] S. H. Dandach, B. Fidan, S. Dasgupta and B. D. O. Anderson, “Adaptive source localization by mobile agents,” Proc. 45th IEEE Conf. Decision & Control, San Diego, CA, Dec. 13-15, 2006. [11] D. Song, J. Yi, and Z. Goodwin, “Localization of unknown networked radio sources using a mobile robot with a directional antenna,” in Proc. American Control Conf., New York City, USA, July 11-13, 2007. [12] M. W. M. G. Dissanayake, P. Newman, S. Clark, H. F. DurrantWhyte, and M. Csorba, “A solution to the simultaneous localization and map building (SLAM) problem,” IEEE Trans. Robot. Automat., vol. 17, no. 3, 2001, pp. 229–241. [13] F. Dellaert, D. Fox, W. Burgard, and S. Thrun, “Monte Carlo localization for mobile robots,” Proc. IEEE Int. Conf. Robotics and Automation, Detroit, MI, pp. 1322–1328, 1999. [14] F. Cabrera-Mora, and J. Xiao, “Preprocessing Technique to Signal Strength Data of Wireless Sensor Network for Real-Time Distance Estimation,” Proc. IEEE Int. Conf. Robotics and Automation, ICRA 2008, Pasadena, CA, May 19-23, 2008. [15] T. S. Rappaport, Wireless Communications: Principles and Practice (2nd Ed.), Prentice Hall, 2001.
978-1-4244-2324-8/08/$25.00 © 2008 IEEE. This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE "GLOBECOM" 2008 proceedings.