mand process is modeled as a semi-Markov process over a finite set of acceleration ... hidden semi-Markov model (HSMM) estimation algorithm to estimate the ...
Robust Mobility Tracking for Cellular Networks Brian L. Mark and Zainab R. Zaidi Dept. of Electrical and Computer Eng. George Mason University Fairfax, Virginia 22030 Abstract— We propose a robust estimation algorithm for tracking the location and dynamic motion of a mobile unit in a cellular network. The underlying mobility model is a dynamic linear system driven by a discrete command process that determines the mobile unit’s acceleration. The command process is modeled as a semi-Markov process over a finite set of acceleration levels. Previous approaches to mobility estimation based on this model have used a modified Kalman filter with a Bayesian estimator for the command process. However, the Bayesian estimator can lead to inaccuracies in estimating the command process from pilot signal strengths, which can result in significant errors in tracking the mobile trajectory. Our proposed tracking algorithm combines the modified Kalman filter with an efficient hidden semi-Markov model (HSMM) estimation algorithm to estimate the parameters of the command process. Numerical results show that the proposed tracking algorithm performs accurately over a wide range of mobility parameter values.
I. Introduction As wireless services become more pervasive and locationaware, the need to locate and track mobile units accurately and efficiently becomes increasingly important. A key technical challenge for modern wireless networks is to provide seamless access and quality-of-service (QoS) guarantees for mobile users. QoS provisioning can only be achieved by means of efficient mobility management to handle the frequent handoffs and rerouting of traffic that is experienced by a typical mobile user. Global Positioning System (GPS) is a technique for obtaining the coordinates of a user, within a radius of 10 meters or better, by means of a system of twenty-four satellites, spaced equally in six orbital planes [1]. To operate properly, however, GPS receivers require a clear view of the sky, in the line-of-sight of at least four satellites, which precludes their use in indoor or RF-shadowed environments. Further, GPS cannot track mobile trajectories that undergo sudden changes in acceleration. Moreover, incorporating GPS receivers in mobile devices significantly increases their cost, size, and power consumption. Liu et. al [2] propose an algorithm for tracking the mobility of a mobile unit in wireless ATM network using the forward link RSSI (received signal strength indication) or pilot signal strengths received from neighboring base stations. The motion of the mobile is modeled as a dynamic linear system driven by a discrete command process. Estimation of the model parameters is performed by means of a modified Kalman filter. This approach to mobility tracking is based on earlier work on tracking maneuvering targets in tactical weapons systems [3], [4]. Our numerical results, however, show that the mobility tracking algorithm in [2] can perform poorly, particularly when the mobile trajec-
tory includes rapid or sudden changes in acceleration. In this paper, we propose a robust mobility tracking algorithm based on the dynamic linear system model discussed in [3], [4] and RSSI measurements as in [2]. Our mobility tracking algorithm differs from that of Liu et. al [2] in that we replace the Bayesian estimator for the command process by a more accurate and robust estimator based on the estimation of a hidden semi-Markov model (HSMM). Our numerical results show that the new tracking algorithm is able to track random mobile trajectories far more accurately than the algorithm of Liu et al. In the remainder of the paper, we present the mobility state model and the associated modified Kalman filter. We correct several errors in the model description that appeared in the original paper by Liu et. al [2]. We then explain why the Bayesian estimator in [2] performs poorly and justify the use of an alternative estimator based on the HSMM estimator developed recently by Yu and Kobayashi [5]. We present numerical results demonstrating the accuracy and robustness of our proposed mobility tracking algorithm. Finally, we conclude the paper with a discussion of ongoing and future work. II. Mobility State Model The mobile unit’s state at time t is a defined by a (column) vector1 s(t) = [x(t), x(t), ˙ x ¨(t), y(t), y(t), ˙ y¨(t)]0 ,
(1)
where x(t) and y(t) specify the position, x(t) ˙ and y(t) ˙ specify the velocity, and x ¨(t) and y¨(t) specify the acceleration in the x and y directions in a two-dimensional grid. The state vector can be written more compactly as · ¸ x(t) s(t) = (2) y(t) where x(t) = [x(t), x(t), ˙ x ¨(t)]0 and y(t) = [y(t), y(t), ˙ y¨(t)]0 . The acceleration, a(t) = [¨ x(t), y¨(t)] is modelled as follows: a(t) = u(t) + r(t),
(3)
where u(t) = [ux (t), uy (t)]0 is a discrete command process and r(t) = [rx (t), ry (t)]0 is a zero-mean Gaussian process chosen to cover the gaps between adjacent levels of the process u(t). The command processes ux (t) and uy (t) are modelled as semi-Markov processes that take values from a set of acceleration levels L = {l1 , · · · , lm }. Thus, the process u(t) takes values in the set M = L×L. This approach 1 The
notation
0
indicates the matrix transpose operator.
to modelling acceleration has been applied to tracking maneuvering targets in tactical weapons systems [3], [4]. The autocorrelation function of r(t) is given by Rr (τ ) = E[r(t)r 0 (t + τ )] = σ12 e−α|τ | I2 ,
(4)
where σ12 is the common variance of rx (t) and ry (t), α is the reciprocal of the acceleration time constant, and Ik denotes the k × k identity matrix for any positive integer k. The process r(t) can be generated by passing a zero-mean, white Gaussian random process, w(t) = [wx (t), wy (t)]0 , through a single pole filter as follows: r¨ (t) = −αr(t) + w(t).
(5)
The autocorrelation function of w(t) is given by Rw (τ ) = 2ασ12 δ(τ )I2 ,
(6)
where δ(τ ) is the Dirac delta function. Using (5), the linear system describing the state evolution in the x-direction can be written as: ˜1 ux (t) + C˜1 wx (t), ˙ x(t) = A˜1 x(t) + B
(7)
where
0 1 A˜1 = 0 0 0 0
0 0 0 ˜1 = 0 , C˜1 = 0 . 1 ,B −α α 1
(8)
Similarly, the state equation for the y-direction is given by: ˜1 uy (t) + C˜1 wy (t), ˙ y(t) = A˜1 y(t) + B
(9)
Combining (7) and (9) yields the overall state equation: ˜ ˜ ˜ ˙ s(t) = As(t) + Bu(t) + Cw(t),
(10)
˜ = I2 ⊗ B ˜1 , C˜ = I2 ⊗ C˜1 , A˜ = I2 ⊗ A˜1 , B
(11)
where2
and ⊗ denotes the Kronecker matrix product (cf. [6]). By sampling the state once every T time units, the system can be characterized in terms of the discrete-time state vector sn = s(nT ). The corresponding discrete-time state equation is given by sn+1 = Asn + Bun + wn ,
(12)
where Z
˜
A = eAT , B =
t+T
˜
˜ eA(t+T −τ ) Bdτ,
(13)
t
The vector wn is a 6×1 matrix3 . The matrices A and B are given in the Appendix. The process wn is a discrete-time zero mean, stationary Gaussian process with autocorrelation function Rw (k) = δk Q, where δ0 = 1 and δk = 0 when k 6= 0. The matrix Q, the covariance matrix of wn , is given in the Appendix. In a cellular network, the distance between the mobile unit and a reachable base station can be inferred from the Received Signal Strength Indication (RSSI) or pilot signal of the base station. The RSSI, measured in dB, received at the mobile unit from the base station in cell i with coordinates (ai , bi ) at time n is given by pn,i = κi − 10γ log(dn,i ) + ψn,i ,
(15)
where κi is a constant determined by the transmitted power, wavelength, and gain of cell i, γ is a slope index (typically γ = 2 for highways and γ = 4 for microcells in a city), ψn,i is a zero mean, stationary Gaussian process with standard deviation σψ typically from 4 − 8 dB, and dn,i is the distance between the mobile unit and the base station: p dn,i = (xn − ai )2 + (yn − bi )2 . (16) To locate the mobile unit in the two-dimensional plane, three distance measurements to neighboring base stations are sufficient. Thus, the observation vector consists of the three largest RSSIs denoted pn,1 , pn,2 , pn,3 , given as follows: on = (pn,1 , pn,2 , pn,3 )0 = h(sn ) + ψ n ,
(17)
where ψ n = (ψn,1 , ψn,2 , ψn,3 )0 and h(sn ) = κ − 10γ log(dn ),
(18)
where κ = (κ1 , κ2 , κ3 )0 and dn = (dn,1 , dn,2 , dn,3 )0 . The covariance matrix of ψ n is given by R = σψ2 I3 . III. Mobility State Estimation To estimate the mobility state vector sn , the observation equation (17) is linearized as follows4 : on = h(s∗n ) + Hn ∆sn + ψ n ,
(19)
where s∗n is the nominal or reference vector and ∆sn = sn −s∗n is the difference between the true and nominal state vectors. In the extended Kalman filter (cf. [7]), the nominal vector is obtained from the estimated state trajectory sˆn , i.e., s∗n = sˆn . The matrix Hn is given by Hn =
∂h |s=ˆsn ∂s
(20)
(14)
An explicit expression for Hn is given in the Appendix. The conventional Kalman filter is modified to take into account the discrete command process un , which is modelled as a semi-Markov process. For the moment, we shall
˜ on p. 934 of [2] expression for the matrix corresponding to B is incorrect.
3 The corresponding vector W in equation (4) of [2] is incorrectly n indicated as a 2 × 1 matrix. 4 The corresponding equation (8) in [2] is incorrect (cf. [7]).
and Z
(n+1)T
wn =
˜ Cw(τ )dτ.
nT 2 The
assume that an estimate, u ˆn , is available. Estimation of un is discussed in section IV. The extended Kalman filter estimator for the mobility state vector sn is given as follows (cf. [7]):
l∈M
Initialization: 1. sˆ0|−1 = E(s0 ) 2. M0|−1 = Cov(s0 )
where the approximation Pˆ {un = l|O n } is given by
Recursive estimation (time n): 1. Hn = ∂h sn ∂s |s=ˆ 2. Kn = Mn|n−1 Hn0 (Hn Mn|n−1 Hn0 + R)−1 3. sˆn|n = sˆn|n−1 + Kn (on − h(ˆ sn|n−1 )) [Correction step] 4. sˆn+1|n = Aˆ sn|n + B u ˆn [Prediction step] 5. Mn|n = (I − Kn Hn )Mn|n−1 (I − Kn Hn )0 − Kn RKn0 6. Mn+1|n = AMn|n A0 + Q IV. Robust Estimation of the Command Process The discrete command process un captures rapid changes in the acceleration of the mobile unit. Therefore, accurate estimation of un is critical to robust mobility tracking. To estimate un accurately, we apply an algorithm for estimating the parameters of a hidden semi-Markov model (HSMM), recently developed by Yu and Kobayashi [5]. We find that this approach is superior to the Bayesian estimator proposed by Liu et. al [2]. A. Bayesian estimator The Bayesian estimator is based on the conditional mean of un given the sequence, O n = (o1 , · · · , on ), of all observations up to time n: X u ˆn = E{un |O n } = lP {un = l|O n }, (21) l∈M
The conditional probability P {un = l|O n } can be expressed as f (on |un = l, O n−1 )P {un = l|O n−1 } . f (on |O n−1 )
(22)
To evaluate the conditional probability in (22), Liu et. al proceed as follows. First, it is noted that the denominator, f (on |O n−1 ), is a constant for all u ∈ M. Then the density f (on |un = l, O n−1 ) can be approximated by a Gaussian density5 : N (Hn (Aˆ sn + Bl), Hn Mn|n−1 Hn0 + R).
(23)
The conditional probability P {un = l|O n−1 } can be expressed as X P {un = l|un = j, O n−1 }P {un−1 = j|O n−1 } j∈M
The probability P {un = l|un−1 = j, O n−1 } can be approximated by the transition probability, al,j , of the semiMarkov process un . Thus, we have the approximation: X al,j P {un−1 = j|O n−1 }. (24) Pˆ {un = l|O n−1 } = j∈M 5 In
Combining (21), (22), and (24), yields the Bayesian estimator proposed in [2]: X u ˆn = lPˆ {un = l|O n } (25)
[2], it is incorrectly stated that this density is Gaussian.
cf (on |un = l, O n−1 )}Pˆ {un = l|O n−1 },
(26)
with the constant c chosen such that X Pˆ {un = j|O n } = 1. j∈M
In our numerical results (see Section V), we have found that the Bayesian estimator can give inaccurate estimates of un , primarily due to the approximation of the density f (on |un , O n−1 ) by a Gaussian density. In fact, this density is the convolution of a Gaussian density and that of h(ˆ sn ), and cannot be evaluated in closed form6 . The inaccuracy in the estimates u ˆn leads to divergence of the modified Kalman filter discussed in Section III. B. HSMM-based estimator A key observation is that the process un is a semiMarkov process. Therefore, accurate estimation of un should exploit its semi-Markov characterization. Yu and Kobayashi [5] have developed an efficient algorithm for estimating the parameters of a hidden semi-Markov model (HSMM), which generalizes similar algorithms for the hidden Markov model (HMM) [8]. We apply their HSMM estimation algorithm to estimate un accurately and efficiently. The HSMM for un is characterized by the four-tuple (Ah , π, P, Bh ) with the underlying state-space M. For convenience, the states in M shall be labelled 1, · · · , M = m2 . The matrix Ah = [aij : i, j ∈ M] is the M × M transition probability matrix. The (column) vector π = [πi : i ∈ M]0 is the initial state probability distribution vector. It is assumed that the duration in a given state is a discrete random variable, taking values in {1, · · · , D}. The probability distribution vector in state i is denoted pi (d), where d = 1, · · · , D. The M × D matrix P is then defined as P = [pi (d) : i ∈ M, d = 1, · · · , D]. The three-tuple (Ah , π, P ) defines the semi-Markov model. The observations on are continuous random variables in the mobility model described above. The observations can easily be quantized to a finite set of levels, which induces error into the estimation process. However, this error can be controlled by increasing the number of quantization levels. To describe the application of the HSMM estimation algorithm, we shall assume that the on are discrete random variables over a set of K distinct values, labelled 1, · · · , K. The probability that the observed value is k given that the system is in state i is denoted bi (k), i.e., bi (k) = P {on = k|un = i}. The M × K matrix 6 Contrary
to equation (43) of [2].
Fig. 1. Robust mobility tracking algorithm.
Bh = [bi (k) : i ∈ M, k = 1, · · · , K] characterizes the probabilistic relationship between the values of the state and observation. The main steps of the HSMM estimation algorithm are as follows: 1. Apply the HSMM re-estimation algorithm to obtain iniˆh ) of the HSMM parameters by ˆ Pˆ , B tial estimates (Aˆh , π, using training data. 2. Apply the HSMM forward-backward estimation algorithm to find the maximum a posteriori (MAP) sequence for the given observation sequence. ˆh ) by applying the ˆ Pˆ , B 3. Obtain a refined estimate (Aˆh , π, HSMM re-estimation algorithm for the given observation sequence. For details of the HSMM re-estimation and forwardbackward algorithms, we refer to the original work of Yu and Kobayashi [5]. C. Robust mobility tracking algorithm Figure 1 illustrates our proposed mobility tracking algorithm, which integrates the HSMM-based estimator for the command process un with the modified Kalman filter for estimating the state process sn . The HSMM block produces the sequence of estimates {ˆ un } based on the observation sequence {O n }. The HSMM algorithm requires that the space of observations be quantized to a finite set of levels or bins. The Kalman filter block takes {O n } and {ˆ un } as inputs and produces the estimate, {ˆ sn }, of the mobility state sequence. The operation of the system can be parallelized by having the Kalman filter block lag behind the HSMM block by one observation period. The accuracy of the estimates {ˆ un } can be improved by increasing the number of observation bins, thereby reducing the quantization error, at the expense of increased computational load. V. Numerical Results Random mobile trajectories were generated in Matlab using the dynamic state equation (12). The parameters determining the autocorrelation function of the random acceleration process r(t) are set as follows (cf. (4)): α = 10 s−1 and σ1 = 1 dB. The covariance matrix of ψ n (cf. (17)) is determined by setting the parameter σψ = 6 dB. The state vector s(t) is initialized to the zero vector. The discrete command processes ux (t) and uy (t) are independent semi-Markov processes, each taking on five possible levels of acceleration comprising the set L =
{−7.5, −2.5, 0, 2.5, 7.5} in units of m/s2 . This set of acceleration levels is capable of generating a wide range of dynamic motion. The sampling interval is T is 0.2 s. The initial probability vector π for the HSMM is initialized to a uniform distribution. The observation period for the HSMM estimation is set to 10 sample points. The total duration of each sample trajectory is N = 600 sample points, which corresponds to 2 minutes. The transition probability matrix Ah for is initialized as follows. The diagonal elements of Ah are set to zero and the off-diagonal elements in each row are initialized to a common value of 1/24. We assume that the dwell times in each state are uniformly distributed with a common mean value of 2 s. The parameter κi was assumed to be zero for all cells i. In our numerical experiments, we compared the tracking algorithm of Liu et al. [2] and our proposed algorithm applied with different numbers of observation bins. Fig. 2 shows a typical sample mobile trajectory7 , generated by the dynamic state model with the given parameter values. The figure also shows three estimated trajectories obtained from Liu’s estimator and the proposed tracking algorithm applied with 30 and 50 observation bins (for each of the three pilot signal strengths), respectively. Fig. 2 shows that Liu’s estimator fails to track the actual trajectory, particularly when their are sharp or sudden changes in direction. We remark that standard GPS techniques would also fail to track the sudden accelerations produced by the dynamic state model with the given parameter settings. Our proposed algorithm is able to follow the curves of the actual trajectory even when the number of observation bins is relatively small. As the number of bins increases, the accuracy of the tracking algorithm improves. We root mean squared error (RMSE) as the figure of merit to compare a given trajectory {xn , yn } and its estimated trajectory {ˆ xn , yˆn }: v u N u1 X [(ˆ xn − xn )2 + (ˆ yn − yn )2 ] (27) RMSE = t N n=1 Table I shows the sample mean and variance of the RMSE statistic computed using 110 independently generated sample trajectories. The table provides a quantitative comparison of the relative merits of the three estimators, which confirms the qualitative implications of Fig. 2. We remark that the sample trajectories corresponding to the specified parameter values are considerably more dynamic than those of an actual mobile unit in a live network environment. Nevertheless, they provide a good benchmark to evaluate the robustness and accuracy of the tracking algorithms. VI. Conclusion We have proposed a new algorithm for robust mobility tracking in cellular networks using RSSI measurements. The mobility tracking algorithm combines a modified Kalman filter for state estimation with an algorithm for 7 Note
that the starting point is at (0, 0).
where
Trajectory Estimation 200 Actual w/ 30 bins w/ 50 bins Liu
100
0 T A1 = 0 1 0 0
0
a c , B1 = αa , b αb e−αT
(29)
−100
and
y coordinate
−200
a = (−1 + αT + e−αT )/α2 , b = (1 − e−αT )/α, α2 2 c = (1 − αT + T − e−αT )/α2 . 2
−300
−400
−500
−600
The matrix Q is given by9
−700
−800 −100
0
100
200
300 400 x coordinate
500
600
700
µRMSE 543 m 182 m 71.0 m
q11
σRMSE 726 m 190 m 60.7 m
q12
TABLE I RMSE of estimation algorithms.
estimating the parameters of a hidden semi-Markov model that characterizes the acceleration behavior of the mobile. The HSMM estimator is more accurate than the Bayesian estimator that was proposed in [2]. It was observed that the ability of the modified Kalman filter to track a mobile trajectory was very sensitive to the accuracy of the estimate for the acceleration command process. Consequently, our mobility tracking algorithm is able to follow mobile trajectories far more accurately then the algorithm proposed by Liu et. al [2]. The proposed mobility tracking algorithm can be applied in a variety of scenarios. As in Liu et. al [2], our algorithm could be used to predict cell crossings in the cellular network. Such a capability could be used to enable seamless handoffs. Other applications include the provisioning of location-aware services. Our tracking algorithm should be validated against actual traces of mobile user trajectories in live cellular networks. We expect that the algorithm should be capable of tracking mobile units accurately with proper tuning of the model parameters. We are currently investigating extensions of our algorithm to ad hoc networks and mobile environments with different propagation models. Appendix The matrices A and B are given by8 : A = I2 ⊗ A1 , B = I2 ⊗ B1 ,
(30)
where Q1 = [qij ] is a symmetric 3 × 3 matrix with upper triangular entries given as follows:
Fig. 2. Sample and estimated trajectories.
Estimation Method Liu et al. 30 bins 50 bins
Q = 2ασ12 I2 ⊗ Q1 ,
800
(28)
8 The expression for the matrix B given in equation (36) of [2] is incorrect
q13 q22 q23 q33
= (1 − e−2αT + 2αT + 2α3 T 3 /3 − 2α2 T 2 −4αT e−αT )/(2α5 ) = (e−2αT + 1 − 2e−αT + 2αT e−αT − 2αT +α2 T 2 )/(2α4 ) = (1 − e−2αT − 2αT e−αT )/(2α3 ) = (4e−αT − 3 − e−2αT + 2αT )/(2α3 ) = (e−2αT + 1 − 2e−αT )/(2α2 ) = (1 − e−2αT )/(2α).
The matrix Hn in the linearized observation equation (19) is given by Hn = −5γ(h0n,1 , h0n,2 , h0n,3 )0 ,
(31)
where hn,i is the ith row of Hn with hn,i =
2 (dn,i )2
(xn − ai , 0, 0, yn − bi , 0, 0),
(32)
for i = 1, 2, 3. References [1] J. B. Tsui, Fundamentals of Global Positioning System Receivers: A Software Approach, John Wiley & Sons, New York, 2000. [2] T. Liu, P. Bahl, and I. Chlamtac, “Mobility modeling, location tracking, and trajectory prediction in wireless ATM networks,” IEEE J. Selected Areas in Comm., vol. 16, no. 6, pp. 922–936, August 1998. [3] R. A. Singer, “Estimating optimal tracking filter performance for manned maneuvering targets,” IEEE Trans. Aerosp. Elect. Syst., vol. 6, no. 4, pp. 473–483, July 1970. [4] R. L. Moose, H. F. Vanlandingham, and D. H. McCabe, “Modeling and estimation for tracking maneuvering targets,” IEEE Trans. Aerosp. Elect. Syst., vol. 15, no. 3, pp. 448–456, May 1979. [5] S-Z. Yu and H. Kobayashi, “A forward-backward algorithm for hidden semi-Markov model and its implementation,” preprint, June 2000. [6] R. E. Bellman, Introduction to Matrix Analysis, McGraw-Hill, New York, 2 edition, 1970. [7] R. G. Brown and P. Y. Hwang, Introduction to Random Signals and Applied Kalman Filtering, John Wiley & Sons, New York, 3 edition, 1997. [8] L. R. Rabiner, “A tutorial on hidden Markov models and selected applications in speech recognition,” Proc. of IEEE, vol. 77, no. 2, pp. 257–286, February 1989. 9 This
expression is equivalent to (37) in [2].