Comparison of Angle-only Filtering Algorithms in 3D using Cartesian ...
Comparison of Angle-only Filtering Algorithms in 3D using Cartesian ...
Comparison of Angle-only Filtering Algorithms in 3D using Cartesian ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Comparison</strong> <strong>of</strong> <strong>Angle</strong>-<strong>only</strong> <strong>Filter<strong>in</strong>g</strong> <strong>Algorithms</strong> <strong>in</strong> <strong>3D</strong><br />
us<strong>in</strong>g <strong>Cartesian</strong> and Modified Spherical Coord<strong>in</strong>ates<br />
Mahendra Mallick 1 , Mark Morelande 2 , Lyudmila Mihaylova 3 , Sanjeev Arulampalam 4 , and Yanjun Yan 5<br />
1 Propagation Research Associates, Inc., Marietta, GA 30066, USA, mahendra.mallick@gmail.com<br />
2 The University <strong>of</strong> Melbourne, Parkville VIC 3010, Australia, m.morelande@gmail.com<br />
3 School <strong>of</strong> Comput<strong>in</strong>g and Communications, Lancaster University, United K<strong>in</strong>gdom, mila.mihaylova@lancaster.ac.uk<br />
4 Maritime Operations Division, DSTO, Ed<strong>in</strong>burgh SA 5111, Australia,<br />
sanjeev.arulampalam@dsto.defence.gov.au<br />
5 ARCON Corporation, Waltham, MA, 02452, USA, yanjun@arcon.com<br />
Abstract— We compare the performance <strong>of</strong> the extended<br />
Kalman filter (EKF), unscented Kalman filter (UKF), and particle<br />
filter (PF) for the angle-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong> <strong>3D</strong> us<strong>in</strong>g<br />
bear<strong>in</strong>g and elevation measurements from a s<strong>in</strong>gle maneuver<strong>in</strong>g<br />
sensor. These nonl<strong>in</strong>ear filter<strong>in</strong>g algorithms use discrete-time<br />
dynamic and measurement models. Two types <strong>of</strong> coord<strong>in</strong>ate<br />
systems are considered, <strong>Cartesian</strong> coord<strong>in</strong>ates and modified<br />
spherical coord<strong>in</strong>ates (MSC) for the relative state vector. The<br />
paper presents new algorithms us<strong>in</strong>g the UKF and PF with<br />
the MSC. We also present an improved filter <strong>in</strong>itialization<br />
algorithm. Numerical results from Monte Carlo simulations<br />
show that the EKF-MSC and UKF-MSC have the best state<br />
estimation accuracy among all nonl<strong>in</strong>ear filters considered and<br />
have comparable accuracy with modest computational cost.<br />
Keywords: <strong>Angle</strong>-<strong>only</strong> filter<strong>in</strong>g <strong>in</strong> <strong>3D</strong>, Modified spherical coord<strong>in</strong>ates<br />
(MSC), Nonl<strong>in</strong>ear filter<strong>in</strong>g (NLF), Extended Kalman filter<br />
(EKF), Unscented Kalman filter (UKF), Particle filter (PF).<br />
I. INTRODUCTION<br />
The angle-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong> <strong>3D</strong> us<strong>in</strong>g bear<strong>in</strong>g and<br />
elevation angles from a s<strong>in</strong>gle maneuver<strong>in</strong>g sensor is the<br />
counterpart <strong>of</strong> the bear<strong>in</strong>g-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong> 2D [2],<br />
[10], [32]. This problem arises <strong>in</strong> passive rang<strong>in</strong>g us<strong>in</strong>g an<br />
<strong>in</strong>frared search and track (IRST) sensor [9], [11], passive<br />
sonar, passive radar <strong>in</strong> the presence <strong>of</strong> jamm<strong>in</strong>g [10], and<br />
satellite-to-satellite passive track<strong>in</strong>g [26], [27]. A great deal<br />
<strong>of</strong> research has been carried out for the bear<strong>in</strong>gs-<strong>only</strong> filter<strong>in</strong>g<br />
problem <strong>in</strong> 2D—see for e.g. [2], [5], [7], [10], [32] and the<br />
references there<strong>in</strong>. However, the number <strong>of</strong> publications for<br />
the angle-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong> <strong>3D</strong> is relatively small [3],<br />
[4], [16], [25]– [29], [33], [36], [37].<br />
Early research on the bear<strong>in</strong>g-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong> 2D<br />
used the easy-to-implement discrete-time EKF with relative<br />
<strong>Cartesian</strong> coord<strong>in</strong>ates [1]. The filter used the nearly constant<br />
velocity model (NCVM) [8] and nonl<strong>in</strong>ear measurement<br />
model for bear<strong>in</strong>g. However, this filter showed poor performance<br />
due to premature collapse <strong>of</strong> the covariance matrix.<br />
This led to the formulation <strong>of</strong> the modified polar coord<strong>in</strong>ates<br />
(MPC) [18], [22] <strong>in</strong> which improved performance <strong>of</strong> the EKF<br />
was demonstrated.<br />
The state vector <strong>in</strong> MPC consists <strong>of</strong> bear<strong>in</strong>g, bear<strong>in</strong>g-rate,<br />
range-rate divided by range, and the <strong>in</strong>verse <strong>of</strong> range [18],<br />
[2], [32]. The important difference between the MPC and the<br />
<strong>Cartesian</strong> coord<strong>in</strong>ates is that <strong>in</strong> MPC, the first three elements<br />
<strong>of</strong> the state are observable even before an ownship maneuver.<br />
Decoupl<strong>in</strong>g the observable and unobservable components <strong>of</strong><br />
the state vector prevented ill-condition<strong>in</strong>g <strong>of</strong> the covariance<br />
matrix and produced better filter performance [18], [22].<br />
The key difficulty <strong>of</strong> us<strong>in</strong>g MPC is that the dynamic model<br />
is highly nonl<strong>in</strong>ear. Aidala and Hammel [2] derived exact,<br />
closed-form discrete-time stochastic difference equations <strong>in</strong><br />
MPC us<strong>in</strong>g the nonl<strong>in</strong>ear transformations between MPC and<br />
relative <strong>Cartesian</strong> coord<strong>in</strong>ates. They proposed a discrete-time<br />
EKF <strong>in</strong> MPC [2] and showed superior performance relative to<br />
the <strong>Cartesian</strong> EKF [1].<br />
<strong>Angle</strong>-<strong>only</strong> filter<strong>in</strong>g <strong>in</strong> <strong>3D</strong> faces the same observability<br />
problem [17] that arises <strong>in</strong> the 2D case [21]. Due to the<br />
success <strong>of</strong> the MPC <strong>in</strong> the 2D case, Stallard [36] first proposed<br />
the modified spherical coord<strong>in</strong>ates (MSC) for the angle-<strong>only</strong><br />
filter<strong>in</strong>g problem <strong>in</strong> <strong>3D</strong>. Analogous to the log polar coord<strong>in</strong>ates<br />
(LPC) [12] <strong>in</strong> 2D, the log spherical coord<strong>in</strong>ates (LSC) <strong>in</strong> <strong>3D</strong><br />
were proposed <strong>in</strong> [28]. Numerical results <strong>in</strong> [28] show that the<br />
EKF-MSC and EKF-LSC perform similarly so it is sufficient<br />
to consider MSC <strong>only</strong> <strong>in</strong> this paper. The components <strong>of</strong> MSC<br />
are elevation, elevation-rate, bear<strong>in</strong>g, bear<strong>in</strong>g-rate times cos<strong>in</strong>e<br />
<strong>of</strong> elevation, range-rate divided by range, and the <strong>in</strong>verse <strong>of</strong><br />
range. As with MPC <strong>in</strong> 2D, the ma<strong>in</strong> problem with MSC is<br />
the complex nonl<strong>in</strong>ear dynamic model. Thus, calculation <strong>of</strong> the<br />
predicted state estimate and covariance <strong>in</strong> MSC is challeng<strong>in</strong>g.<br />
S<strong>in</strong>ce the bear<strong>in</strong>g and elevation are components <strong>of</strong> the MSC,<br />
the update step <strong>in</strong> MSC is straightforward [8].<br />
The discrete-time dynamic model <strong>in</strong> MSC can be derived<br />
<strong>in</strong> two different ways. Li et al [26] derived closed form<br />
analytic expressions for the discrete-time nonl<strong>in</strong>ear dynamic<br />
model <strong>in</strong> MSC us<strong>in</strong>g an approach similar to that <strong>in</strong> [2] for<br />
MPC. This model can be used to calculate the predicted state<br />
estimate <strong>in</strong> MSC. However, they do not present an algorithm<br />
for calculat<strong>in</strong>g the predicted covariance <strong>in</strong> MSC.<br />
In the second approach, the discrete-time dynamic model<br />
<strong>in</strong> MSC can be derived by a sequence <strong>of</strong> transformations.<br />
Suppose we have the MSC at time t k−1 . First, the MSC are
transformed to relative <strong>Cartesian</strong> coord<strong>in</strong>ates at time t k−1 .<br />
Then the relative <strong>Cartesian</strong> coord<strong>in</strong>ates at time t k are obta<strong>in</strong>ed<br />
by us<strong>in</strong>g the NCVM for relative <strong>Cartesian</strong> coord<strong>in</strong>ates dur<strong>in</strong>g<br />
the time <strong>in</strong>terval [t k−1 , t k ]. F<strong>in</strong>ally, the relative <strong>Cartesian</strong> coord<strong>in</strong>ates<br />
are transformed to MSC at time t k . Stallard [36] used<br />
the second approach to compute the predicted state estimate.<br />
However, calculation <strong>of</strong> the predicted covariance <strong>in</strong> [36] was<br />
based on a l<strong>in</strong>earization <strong>of</strong> the dynamic equation which operated<br />
under the assumption that the relative geometry between<br />
the target and ownship does not change significantly dur<strong>in</strong>g the<br />
<strong>in</strong>terval [t k−1 , t k ]. The underly<strong>in</strong>g <strong>Cartesian</strong> dynamic model<br />
is the S<strong>in</strong>ger model [35]. A similar method is adopted <strong>in</strong><br />
[3], [4]. In [25], the EKF is implemented us<strong>in</strong>g a discretized<br />
l<strong>in</strong>ear approximation for both the predicted state estimate and<br />
covariance. Karlsson and Gustafsson [25] implemented a PF<br />
[6], [15], [32] for MSC us<strong>in</strong>g a multistep Euler approximation.<br />
In [28], exact SDEs for MSC and LSC were derived<br />
first from the NCVM <strong>in</strong> <strong>3D</strong> for the relative <strong>Cartesian</strong> state<br />
vector. Then EKFs were implemented for MSC and LSC by<br />
numerically <strong>in</strong>tegrat<strong>in</strong>g nonl<strong>in</strong>ear differential equations for the<br />
predicted state estimate and covariance matrix jo<strong>in</strong>tly. This<br />
approach represents the cont<strong>in</strong>uous-discrete filter<strong>in</strong>g (CDF).<br />
In this paper, we calculate the predicted state estimate and<br />
covariance us<strong>in</strong>g the second approach for the exact discretetime<br />
dynamic model <strong>in</strong> MSC. Although the same dynamic<br />
model is used <strong>in</strong> [3], [4], [36], its usage <strong>in</strong> their EKF<br />
implementations does not properly account for the process<br />
noise. In particular, the approximate method used <strong>in</strong> [3], [4],<br />
[36] to calculate the predicted covariance is <strong>only</strong> valid over<br />
time <strong>in</strong>tervals for which the relative geometry between the<br />
target and ownship does not change significantly.<br />
We consider two classes <strong>of</strong> filter<strong>in</strong>g algorithms. Each class<br />
considers the relative state vector and uses a discrete-time<br />
measurement model for bear<strong>in</strong>g and elevation. The first class<br />
<strong>of</strong> algorithms uses the relative <strong>Cartesian</strong> state vector with<br />
the discrete-time NCVM <strong>in</strong> <strong>3D</strong>, and hence the measurement<br />
model is nonl<strong>in</strong>ear. The second class uses the exact discretetime<br />
dynamic model <strong>in</strong> MSC. Thus, the measurement model<br />
is l<strong>in</strong>ear. An EKF [8], [14], an UKF [23], [24], [32] and a<br />
bootstrap filter (BF) [6], [15], [32] are developed for each<br />
class. The UKF and PF algorithms us<strong>in</strong>g MSC represent new<br />
algorithms. We don’t use the assumption that the relative<br />
geometry between the target and ownship is slowly vary<strong>in</strong>g.<br />
We perform Monte Carlo simulations to compare the accuracy<br />
and computational complexity <strong>of</strong> various algorithms.<br />
The paper is organized as follows. Section II def<strong>in</strong>es the<br />
tracker and sensor coord<strong>in</strong>ate frames and describes different<br />
coord<strong>in</strong>ate systems for the target and ownship. Section III<br />
presents the dynamic models <strong>of</strong> the target and ownship,<br />
whereas the measurement models for the <strong>Cartesian</strong> relative<br />
state and MSC are presented <strong>in</strong> Section IV. An improved filter<br />
<strong>in</strong>itialization algorithm is described <strong>in</strong> Section V.<br />
Nonl<strong>in</strong>ear filter<strong>in</strong>g us<strong>in</strong>g relative <strong>Cartesian</strong> coord<strong>in</strong>ates is<br />
presented <strong>in</strong> Section VI, which describes <strong>Cartesian</strong> EKF<br />
(CEKF), <strong>Cartesian</strong> UKF (CUKF), and <strong>Cartesian</strong> BF (CBF),<br />
Section VII describes NLF us<strong>in</strong>g MSC which <strong>in</strong>cludes EKF-<br />
MSC, UKF-MSC, and BF-MSC. Numerical simulations and<br />
results are described <strong>in</strong> Section VIII and conclusions are<br />
summarized <strong>in</strong> Section IX.<br />
II. COORDINATE SYSTEMS FOR TARGET AND OWNSHIP<br />
The orig<strong>in</strong> <strong>of</strong> the tracker coord<strong>in</strong>ate frame (T frame) is<br />
specified by the geodetic longitude λ 0 , geodetic latitude φ 0 ,<br />
and geodetic height h 0 . The X, Y , and Z axes <strong>of</strong> the T<br />
frame are along the local east, north, and upward directions,<br />
respectively, as shown <strong>in</strong> Figure 1. The state <strong>of</strong> the target<br />
is def<strong>in</strong>ed <strong>in</strong> the T frame. The motion <strong>of</strong> the ownship is<br />
assumed to be determ<strong>in</strong>istic and the state <strong>of</strong> the ownship<br />
is assumed to be known precisely. The ownship performs<br />
maneuvers so that the target state becomes observable. S<strong>in</strong>ce<br />
we use standard conventions for coord<strong>in</strong>ate frames and angle<br />
variables, the rotational transformation T S T from the T frame<br />
to the sensor frame (S frame) is def<strong>in</strong>ed differently <strong>in</strong> our<br />
approach compared with that <strong>in</strong> [36].<br />
Local<br />
East<br />
X T<br />
Z T<br />
Ownship<br />
x<br />
Local<br />
Up<br />
ε<br />
β<br />
Target<br />
z<br />
y<br />
Y T<br />
Local<br />
North<br />
Fig. 1. Def<strong>in</strong>ition <strong>of</strong> tracker coord<strong>in</strong>ate frame (T frame), bear<strong>in</strong>g β ∈ [0, 2π]<br />
and elevation angle ɛ ∈ [−π/2, π/2].<br />
A. <strong>Cartesian</strong> Coord<strong>in</strong>ates for State Vector and Relative State<br />
Vector<br />
The <strong>Cartesian</strong> states <strong>of</strong> the target and ownship are def<strong>in</strong>ed<br />
<strong>in</strong> the T frame, respectively, by<br />
and<br />
x t := [ x t y t z t ẋ t ẏ t ż t ] ′<br />
, (1)<br />
x o := [ x o y o z o ẋ o ẏ o ż o ] ′<br />
. (2)<br />
The relative state vector <strong>in</strong> the T frame is def<strong>in</strong>ed by<br />
x := x t − x o . (3)<br />
Let x = [x y z ẋ ẏ ż] ′ denote the relative state vector<br />
<strong>in</strong> the T frame. Then x = x t − x o , ẋ = ẋ t − ẋ o , etc. Let r T<br />
denote the range vector <strong>of</strong> the target from the ownship (or<br />
sensor) <strong>in</strong> the T frame. Then r T is def<strong>in</strong>ed by<br />
r T := [ x y z ] ′<br />
=<br />
[ x t − x o y t − y o z t − z o ] ′<br />
.<br />
(4)
The range is def<strong>in</strong>ed by<br />
r := ‖r T ‖ = √ x 2 + y 2 + z 2 , r > 0. (5)<br />
The range vector can be expressed <strong>in</strong> terms <strong>of</strong> range, bear<strong>in</strong>g<br />
(β) and elevation (ɛ), as def<strong>in</strong>ed <strong>in</strong> Figure 1, by<br />
⎡<br />
cos ɛ s<strong>in</strong> β<br />
⎤<br />
r T = r ⎣ cos ɛ cos β<br />
s<strong>in</strong> ɛ<br />
⎦ , β ∈ [0, 2π], ɛ ∈ [−π/2, π/2].<br />
(6)<br />
The ground range is def<strong>in</strong>ed by<br />
ρ := √ x 2 + y 2 = r cos ɛ, ρ > 0. (7)<br />
B. Modified Spherical Coord<strong>in</strong>ates for Relative State Vector<br />
Follow<strong>in</strong>g Stallard’s convention [36], we use ω as a component<br />
<strong>of</strong> the MSC, where<br />
ω(t) := ˙β(t) cos ɛ(t). (8)<br />
Let ζ(t) denote the logarithm <strong>of</strong> range r(t)<br />
Then<br />
ζ(t) := ln r(t). (9)<br />
r(t) = exp[ζ(t)]. (10)<br />
Differentiat<strong>in</strong>g (9) with respect to time, we get<br />
˙ζ(t) = ṙ(t)/r(t). (11)<br />
The relative state vector <strong>of</strong> the target <strong>in</strong> MSC is def<strong>in</strong>ed by<br />
[28], [36]<br />
ξ(t) := [ ξ 1 (t) ξ 2 (t) ξ 3 (t) ξ 4 (t) ξ 5 (t) ξ 6 (t) ] ′<br />
= [ ω(t) ˙ɛ(t) ˙ζ(t) β(t) ɛ(t) 1/r(t)<br />
] ′<br />
. (12)<br />
The components <strong>of</strong> the MSC def<strong>in</strong>ed <strong>in</strong> [36] and [28] are<br />
the same; however, the order<strong>in</strong>g is different.<br />
III. DYNAMIC MODELS<br />
We present discrete-time dynamic models <strong>of</strong> the target and<br />
ownship <strong>in</strong> the T frame first. Next, we present the dynamic<br />
model <strong>of</strong> the target relative to the ownship <strong>in</strong> the T frame.<br />
The target follows the NCVM <strong>in</strong> <strong>3D</strong>. The ownship follows a<br />
sequence <strong>of</strong> constant velocity (CV) and coord<strong>in</strong>ated turn (CT)<br />
models <strong>in</strong> a plane parallel to the XY plane <strong>of</strong> the T frame.<br />
A. Dynamic Model for State Vector and Relative State Vector<br />
<strong>in</strong> <strong>Cartesian</strong> Coord<strong>in</strong>ates<br />
Let x t k<br />
denote the <strong>Cartesian</strong> state <strong>of</strong> the target at time<br />
t k . Then the discrete-time dynamic model <strong>of</strong> the target is<br />
described by [8], [14]<br />
x t k = F k−1 x t k−1 + w t k−1, (13)<br />
where F k−1 and wk−1 t are the state transition matrix [8], [14]<br />
and <strong>in</strong>tegrated process noise [14], respectively, for the time<br />
<strong>in</strong>terval [t k−1 , t k ],<br />
[ ] 1 ∆k<br />
F k−1 = F(t k , t k−1 ) :=<br />
⊗ I<br />
0 1 3 , (14)<br />
w t k−1 :=<br />
∫ tk<br />
t k−1<br />
F(t k − t)w t (t) dt, (15)<br />
where ∆ k := t k − t k−1 . In (14), ⊗ refers to the Kronecker<br />
product [19]. Us<strong>in</strong>g the properties <strong>of</strong> the cont<strong>in</strong>uous-time<br />
process noise w t (t), state transition matrix F k−1 def<strong>in</strong>ed <strong>in</strong><br />
(14), and the def<strong>in</strong>ition <strong>of</strong> wk−1 t <strong>in</strong> (15), we can show that<br />
wk−1 t is a zero-mean Gaussian white <strong>in</strong>tegrated process noise<br />
with covariance Q k−1<br />
wk−1 t ∼ N(wk−1; t 0, Q k−1 ), (16)<br />
[ ∆<br />
3<br />
Q k−1 = k<br />
/3 ∆ 2 k /2 ]<br />
∆ 2 k /2 ⊗ diag(q x , q y , q z ), (17)<br />
∆ k<br />
where q x , q y , q z are the power spectral densities <strong>of</strong> the process<br />
noise [14] along the X, Y , and Z axes <strong>of</strong> the T frame,<br />
respectively.<br />
S<strong>in</strong>ce the motion <strong>of</strong> the ownship is assumed to be determ<strong>in</strong>istic,<br />
the process noise is not used for the dynamic model<br />
<strong>of</strong> the ownship. The dynamic models <strong>of</strong> the ownship for the<br />
CV and CT are described, respectively, by<br />
where<br />
x o k = F k−1 x o k−1, (18)<br />
x o k = F CT (∆ k , ω)x o k−1, (19)<br />
F CT (∆, ω) =<br />
⎡<br />
⎤<br />
1 0 0 s<strong>in</strong>(ω∆)/ω −[1 − cos(ω∆)]/ω 0<br />
0 1 0 [1 − cos(ω∆)]/ω s<strong>in</strong>(ω∆)/ω 0<br />
0 0 1 0 0 ∆<br />
⎢ 0 0 0 cos(ω∆) − s<strong>in</strong>(ω∆) 0<br />
.<br />
⎥<br />
⎣ 0 0 0 s<strong>in</strong>(ω∆) cos(ω∆) 0 ⎦<br />
0 0 0 0 0 1<br />
(20)<br />
Us<strong>in</strong>g (13) <strong>in</strong> the def<strong>in</strong>ition (3) <strong>of</strong> the relative state vector<br />
and then add<strong>in</strong>g and subtract<strong>in</strong>g F k−1 x o k−1<br />
, we get<br />
where<br />
x k = F k−1 x k−1 + w t k−1 − u k−1 , (21)<br />
u k−1 := x o k − F k−1 x o k−1. (22)<br />
We note that when ω o k approaches zero, FCT (∆ k , ω o k ) reduces<br />
to F k−1 and u k−1 becomes zero.<br />
B. Dynamic Model for Relative State Vector <strong>in</strong> Modified<br />
Spherical Coord<strong>in</strong>ates<br />
Let f MSC<br />
C : R 6 → R 6 denote the transformation from<br />
relative <strong>Cartesian</strong> coord<strong>in</strong>ates to MSC. Similarly, let f C MSC :<br />
R 6 → R 6 denote the <strong>in</strong>verse transformation from MSC to<br />
relative <strong>Cartesian</strong> coord<strong>in</strong>ates. Then,<br />
ξ k = f MSC<br />
C (x k ), (23)<br />
x k = f C MSC(ξ k ). (24)<br />
Functional forms <strong>of</strong> fC<br />
MSC (x k ) and fMSC C (ξ k) are presented <strong>in</strong><br />
[29]. Then, us<strong>in</strong>g (21) <strong>in</strong> (23), we get<br />
ξ k = f MSC<br />
C (F k−1 x k−1 + w t k−1 − u k−1 ). (25)
We have<br />
Substitution <strong>of</strong> (26) <strong>in</strong> (25) gives<br />
x k−1 = f C MSC(ξ k−1 ). (26)<br />
ξ k = f MSC<br />
C (F k−1 f C MSC(ξ k−1 ) + w t k−1 − u k−1 ). (27)<br />
Formally, we can write (27) as<br />
ξ k = b(ξ k−1 , u k−1 , w t k−1), (28)<br />
where b is a nonl<strong>in</strong>ear function <strong>of</strong> ξ k−1 , u k−1 , and wk−1 t . We<br />
note that a closed form analytic expression for the nonl<strong>in</strong>ear<br />
function b is difficult to obta<strong>in</strong>. However, it is straightforward<br />
to calculate the predicted state estimate ˆξ k|k−1 approximately<br />
given ˆξ k−1|k−1 , us<strong>in</strong>g nested functions <strong>in</strong> (27). It can be<br />
seen from (28) that the process noise wk−1<br />
t is nonl<strong>in</strong>early<br />
transformed <strong>in</strong> the MSC dynamic model. As will be seen<br />
<strong>in</strong> Section VII, this makes the EKF and UKF slightly more<br />
complicated compared to the usual dynamic models <strong>in</strong> which<br />
the process noise is additive.<br />
IV. MEASUREMENT MODELS<br />
The passive sensor collects bear<strong>in</strong>g and elevation measurements<br />
{z k } at discrete times {t k }. The measurement model for<br />
the bear<strong>in</strong>g and elevation angles us<strong>in</strong>g the relative <strong>Cartesian</strong><br />
state vector x k is<br />
where<br />
h(x k ) :=<br />
z k = h(x k ) + n k , (29)<br />
[<br />
βk<br />
]<br />
=<br />
ɛ k<br />
[ tan −1 (x k , y k )<br />
tan −1 (z k , ρ k )<br />
]<br />
, (30)<br />
where the ground range ρ k is def<strong>in</strong>ed <strong>in</strong> (7) and n k is a zeromean<br />
white Gaussian measurement noise with covariance R<br />
n k ∼ N (n k ; 0, R), R := diag(σ 2 β, σ 2 ɛ ). (31)<br />
The measurement model for the bear<strong>in</strong>g and elevation<br />
angles β k , ɛ k us<strong>in</strong>g MSC is<br />
H :=<br />
z k = Hξ k + n k , (32)<br />
[ ]<br />
0 0 0 1 0 0<br />
.<br />
0 0 0 0 1 0<br />
(33)<br />
V. FILTER INITIALIZATION<br />
We <strong>in</strong>itialize the filter us<strong>in</strong>g the first measurement z 1 at<br />
t 1 and prior <strong>in</strong>formation on range and velocity <strong>of</strong> the target.<br />
The target state at any time can be completely def<strong>in</strong>ed by<br />
the vector φ := [β, ɛ, r, s, α, γ] ′ where s is speed, α, and<br />
γ are the bear<strong>in</strong>g and elevation <strong>of</strong> target velocity. Let φ 1<br />
denote the vector φ at time t 1 . Let ¯r, ¯s, ᾱ, and ¯γ denote the<br />
prior mean for range, speed, α and γ, respectively. Similarly,<br />
let σr, 2 σs, 2 σα, 2 and σγ<br />
2 denote the prior variances for range,<br />
speed, α and γ, respectively. Then the distribution <strong>of</strong> φ 1 given<br />
the measurement z 1 and prior <strong>in</strong>formation on the range and<br />
velocity <strong>of</strong> the target is<br />
φ 1 |z 1 ∼ N(· ; ˆφ 1 , Σ 1 ), (34)<br />
where<br />
ˆφ 1 = [ z ′ 1 ¯r ¯s ᾱ ¯γ ] ′<br />
, (35)<br />
Σ 1 = diag(σ 2 β, σ 2 ɛ , σ 2 r, σ 2 s, σ 2 α, σ 2 γ). (36)<br />
The distribution (34) forms the basis for filter <strong>in</strong>itialization<br />
<strong>of</strong> the angle-<strong>only</strong> filter<strong>in</strong>g algorithms <strong>in</strong> <strong>Cartesian</strong> coord<strong>in</strong>ates<br />
and MSC.<br />
A. Initialization <strong>of</strong> Relative <strong>Cartesian</strong> Coord<strong>in</strong>ates<br />
Initialization <strong>of</strong> the EKF and UKF requires a mean and<br />
covariance matrix. Given a vector φ 1 distributed accord<strong>in</strong>g<br />
to (34) the mean and covariance matrix <strong>of</strong> the target state <strong>in</strong><br />
relative <strong>Cartesian</strong> coord<strong>in</strong>ates are<br />
∫<br />
ˆx 1 = u(φ)N(φ; ˆφ 1 , Σ 1 ) dφ, (37)<br />
∫<br />
P 1 = [u(φ) − ˆx 1 ][u(φ) − ˆx 1 ] ′ N(φ; ˆφ 1 , Σ 1 ) dφ, (38)<br />
where<br />
⎡<br />
u(φ) =<br />
⎢<br />
⎣<br />
r cos ɛ s<strong>in</strong> β<br />
r cos ɛ cos β<br />
r s<strong>in</strong> ɛ<br />
s cos γ s<strong>in</strong> α − ẋ o 1<br />
s cos γ cos α − ẏ o 1<br />
s s<strong>in</strong> γ − ż o 1<br />
⎤<br />
. (39)<br />
⎥<br />
⎦<br />
Note that most approaches to angle <strong>only</strong> filter<strong>in</strong>g, <strong>in</strong> both 2D<br />
and <strong>3D</strong>, use l<strong>in</strong>earized approximations to the <strong>in</strong>tegrals (37) and<br />
(38). Exact evaluation <strong>of</strong> the <strong>in</strong>tegrals is presented <strong>in</strong> [29].<br />
The PF is <strong>in</strong>itiated with a collection <strong>of</strong> samples which can<br />
be found as x i 1 = u(φ i ) where φ i ∼ N(· ; ˆφ 1 , Σ 1 ) for i =<br />
1, . . . , n. The sample weights are w i 1 = 1/n, i = 1, . . . , n.<br />
B. Initialization <strong>of</strong> Modified Spherical Coord<strong>in</strong>ates<br />
The first three components <strong>of</strong> the MSC are given by<br />
ξ 1 = ω = (yẋ − xẏ)/ρr, (40)<br />
ξ 2 = ˙ɛ = (żρ 2 − z(xẋ + yẏ)/ρr 2 , (41)<br />
ξ 3 = ˙ζ = (xẋ + yẏ + zż)/r 2 . (42)<br />
Us<strong>in</strong>g (4)-(7) <strong>in</strong> (40)-(42), we get<br />
⎡ ⎤<br />
⎡<br />
ξ 1<br />
⎣ ξ 2<br />
⎦ = 1 r A(β, ɛ) ⎣ ẋ<br />
ẏ<br />
ξ 3<br />
ż<br />
where<br />
⎡<br />
A(β, ɛ) := ⎣<br />
cos β − s<strong>in</strong> β 0<br />
− s<strong>in</strong> β s<strong>in</strong> ɛ − cos β s<strong>in</strong> ɛ cos ɛ<br />
s<strong>in</strong> β cos ɛ cos β cos ɛ s<strong>in</strong> ɛ<br />
⎤<br />
⎦ , (43)<br />
⎤<br />
⎦ . (44)<br />
The mean and covariance matrix <strong>of</strong> the relative target state <strong>in</strong><br />
MSC given a vector φ distributed accord<strong>in</strong>g to (34) are<br />
∫<br />
ˆξ 1 = v(φ)N(φ; ˆφ 1 , Σ 1 ) dφ, (45)<br />
∫<br />
P 1 = [v(φ) − ˆξ 1 ][v(φ) − ˆξ 1 ] ′ N(φ; ˆφ 1 , Σ 1 ) dφ, (46)
where<br />
⎡<br />
v(φ) =<br />
⎢<br />
⎣<br />
0<br />
0<br />
0<br />
β<br />
ɛ<br />
1/r<br />
⎤<br />
+ 1<br />
⎥ r<br />
⎦<br />
[ A(β, ɛ)<br />
0 3<br />
] ⎡ ⎣<br />
s cos γ s<strong>in</strong> α − ẋ o 1<br />
s cos γ cos α − ẏ o 1<br />
s s<strong>in</strong> γ − ż o 1<br />
(47)<br />
The <strong>in</strong>tegrals (45) and (46) can be evaluated over all variables<br />
except for the range r. Integration over r can be done<br />
numerically us<strong>in</strong>g, for example, Monte Carlo approximation.<br />
Due to lack <strong>of</strong> space, the expressions the components <strong>of</strong> ˆξ 1<br />
and P 1 are not presented <strong>in</strong> the paper but can be found <strong>in</strong><br />
[29].<br />
VI. NONLINEAR FILTERING USING RELATIVE CARTESIAN<br />
COORDINATES<br />
The dynamic model (NCVM <strong>in</strong> <strong>3D</strong>) is l<strong>in</strong>ear and the<br />
measurement model for bear<strong>in</strong>g and elevation is nonl<strong>in</strong>ear for<br />
this case.<br />
The widely used EKF is based on l<strong>in</strong>earized approximations<br />
to nonl<strong>in</strong>ear dynamic and/or measurement models [8], [14].<br />
For this case, the l<strong>in</strong>earized approximation is performed <strong>in</strong><br />
the measurement update step. The details <strong>of</strong> the algorithm are<br />
described <strong>in</strong> [8], [14].<br />
The UKF, like the EKF, is also an approximate filter<strong>in</strong>g<br />
algorithm. However, <strong>in</strong>stead <strong>of</strong> us<strong>in</strong>g the l<strong>in</strong>earized approximation,<br />
the UKF uses the unscented transformation (UT) to<br />
approximate the moments [23], [24]. This approach has two<br />
advantages over l<strong>in</strong>earization: it avoids the need to calculate<br />
the Jacobian and it provides a more accurate approximation.<br />
The details <strong>of</strong> the UKF algorithm are described <strong>in</strong> [23], [24]<br />
and [32].<br />
Particle filters are a class <strong>of</strong> sequential Monte Carlo methods<br />
for approximat<strong>in</strong>g the posterior density <strong>of</strong> the target state.<br />
The most common form <strong>of</strong> PF adopts a sequential importance<br />
sampl<strong>in</strong>g (SIS) [15], [6], [32] approach <strong>in</strong> which samples <strong>of</strong><br />
the target state are drawn from an importance density and<br />
weighted appropriately each time a measurement is acquired.<br />
We use a regularised bootstrap filter (BF). This <strong>in</strong>volves first<br />
draw<strong>in</strong>g samples from the prior and weight<strong>in</strong>g the samples<br />
by their likelihood [6], [15], [32]. Regularization is then<br />
performed, as suggested <strong>in</strong> [20], [30], by draw<strong>in</strong>g from a<br />
kernel density approximation us<strong>in</strong>g a Gaussian kernel with<br />
covariance matrix<br />
⎤<br />
⎦ .<br />
VII. NONLINEAR FILTERING USING MSC<br />
The dynamic model us<strong>in</strong>g MSC is nonl<strong>in</strong>ear as <strong>in</strong> (27) or<br />
(28). In addition, the process noise is not additive. S<strong>in</strong>ce,<br />
the bear<strong>in</strong>g and elevation are elements <strong>of</strong> the MSC, the<br />
measurement model (32) is l<strong>in</strong>ear.<br />
The EKF us<strong>in</strong>g MSC is described by Algorithm 1. We note<br />
that l<strong>in</strong>earization <strong>of</strong> the dynamic model is performed over<br />
both the previous state ξ k−1 and the process noise w t k−1 .<br />
As a result, the Jacobian B is a 6 × 12 matrix rather than<br />
the 6 × 6 matrix which would result if the dynamic model<br />
were nonl<strong>in</strong>ear <strong>in</strong> the previous state and l<strong>in</strong>ear <strong>in</strong> the additive<br />
process noise.<br />
A recursion <strong>of</strong> the UKF us<strong>in</strong>g MSC is given by Algorithm<br />
2. In Algorithm 2, the nonl<strong>in</strong>ear transformation is applied to a<br />
12-dimensional random variable. Therefore, 2 × 12 + 1 = 25<br />
sigma po<strong>in</strong>ts are required. The weights are selected as w 0 =<br />
κ/(12 + κ) and w i = 1/[2(12 + κ)], i = 1, . . . , 24 with κ =<br />
−3.<br />
Algorithm 3 presents a recursions <strong>of</strong> the PF us<strong>in</strong>g MSC.<br />
This PF provides state estimates <strong>in</strong> relative <strong>Cartesian</strong> coord<strong>in</strong>ates<br />
by transform<strong>in</strong>g each sample from MSC to relative<br />
<strong>Cartesian</strong> coord<strong>in</strong>ates and comput<strong>in</strong>g the weighted mean.<br />
Algorithm 1: A recursion <strong>of</strong> the EKF us<strong>in</strong>g MSC.<br />
Input: posterior mean ˆξ k−1|k−1 and covariance matrix<br />
P k−1|k−1 at time t k−1 and the measurement z k .<br />
Output: posterior mean ˆξ k|k and covariance matrix P k|k<br />
at time t k .<br />
set ˆξ 0 k|k−1 = ˆξ k−1|k−1 and P 0 k|k−1 = P k−1|k−1.<br />
compute the Jacobian B =<br />
[<br />
Dξ ′b(ξ, u k−1 , w) D w ′b(ξ, u k−1 , w) ]∣ ∣<br />
ξ=ˆξk−1|k−1 ,w=0 .<br />
compute the predicted statistics<br />
ˆξ k|k−1 = b(ˆξ 0 k|k−1, u k−1 , 0),<br />
P k|k−1 = B diag(P 0 k|k−1 , Q(∆ k))B ′ .<br />
compute the <strong>in</strong>novation covariance<br />
S k = HP k|k−1 H ′ + R.<br />
compute the ga<strong>in</strong> matrix K k = P k|k−1 H ′ S −1<br />
k .<br />
compute the posterior statistics<br />
ˆξ k|k = ˆξ k|k−1 + K k (z k − Hˆξ k|k−1 ),<br />
P k|k = P k|k−1 − K k S k K ′ k.<br />
Ω k = b(n) ˆP k−1 , (48)<br />
where b(n) is a scal<strong>in</strong>g factor and ˆP k−1 is the weighted sample<br />
covariance matrix. For samples drawn from a Gaussian distribution,<br />
the mean <strong>in</strong>tegrated squared error <strong>of</strong> the kernel density<br />
estimator is m<strong>in</strong>imized by select<strong>in</strong>g b(n) = (2n) −1/5 [34].<br />
We have found that better results are obta<strong>in</strong>ed us<strong>in</strong>g a smaller<br />
scal<strong>in</strong>g factor. In particular, we use b(n) = (2n) −1/5 /16. Such<br />
a reduction is suggested <strong>in</strong> [34] for samples from a multimodal<br />
distribution.<br />
VIII. NUMERICAL SIMULATIONS AND RESULTS<br />
The scenario used <strong>in</strong> our simulation is similar to that used<br />
<strong>in</strong> [11]. We have made some changes to make the scenario<br />
three dimensional <strong>in</strong> nature. Initial height z o 1 <strong>of</strong> the ownship<br />
is 10.0 km. Target’s <strong>in</strong>itial ground range ρ 1 , bear<strong>in</strong>g β 1 , and<br />
height z t 1 are shown <strong>in</strong> Table I. Then the <strong>in</strong>itial elevation ɛ 1<br />
can be calculated. Table I also shows target’s <strong>in</strong>itial speed s 1 ,<br />
course c 1 <strong>in</strong> the XY -plane and the Z component <strong>of</strong> velocity
Algorithm 2: A recursion <strong>of</strong> the UKF us<strong>in</strong>g MSC.<br />
Input: posterior mean ˆξ k−1|k−1 and covariance matrix<br />
P k−1|k−1 at time k − 1 and the measurement z k<br />
Output: posterior mean ˆξ k|k and covariance matrix P k|k<br />
at time k<br />
construct the matrices<br />
Σ = [ 0 6,1<br />
√<br />
(12 + κ)Pk−1|k−1 0 6,6<br />
− √ (12 + κ)P k−1|k−1 0 6,6<br />
]<br />
Ω = [ 0 6,1 0 6,6<br />
√<br />
(12 + κ)Q(∆k )<br />
0 6,6 − √ (12 + κ)Q(∆ k ) ]<br />
for b = 0, . . . , 24 do<br />
compute the sigma po<strong>in</strong>ts Ξ k,b = ˆξ k−1|k−1 + σ b ,<br />
W k,b = ω b where σ b and ω b are the (b + 1)th<br />
columns <strong>of</strong> Σ i and Ω, respectively.<br />
compute the transformed sigma po<strong>in</strong>t and covariance<br />
matrix:<br />
E k,b = b(Ξ k,b , u k−1 , W k,b )<br />
end<br />
compute the predicted statistics<br />
∑24<br />
ˆξ k|k−1 = w b E k,b<br />
b=0<br />
24<br />
∑<br />
P k|k−1 = w b (E k,b − ˆξ k|k−1 )(E k,b − ˆξ k|k−1 ) ′<br />
b=0<br />
compute the <strong>in</strong>novation covariance<br />
S k = HP k|k−1 H ′ + R.<br />
compute the ga<strong>in</strong> matrix K k = P k|k−1 H ′ S −1<br />
k .<br />
compute the corrected statistics<br />
ˆξ k|k = ˆξ k|k−1 + K k (z k − Hˆξ k|k−1 )<br />
P k|k = P k|k−1 − K k S k K ′ k.<br />
ż t 1. Target’s <strong>in</strong>itial position and velocity <strong>in</strong> <strong>Cartesian</strong> coord<strong>in</strong>ates<br />
can be found from Table I as (138/ √ 2, 138/ √ 2, 9)<br />
km and 297/ √ 2(−1, −1, 0) m/s, respectively. The motion <strong>of</strong><br />
the target is governed by the NCVM. The power spectral<br />
densities (q x , q y , q z ) <strong>of</strong> the zero-mean white acceleration process<br />
noise along the X, Y , and Z axes <strong>of</strong> the T frame are<br />
(0.01, 0.01, 0.0001) m 2 s −3 , respectively.<br />
The ownship moves <strong>in</strong> a plane parallel to the XY -plane at a<br />
fixed height <strong>of</strong> 10 km with segments <strong>of</strong> CV and CT. The pr<strong>of</strong>ile<br />
<strong>of</strong> the ownship motion is presented <strong>in</strong> Table II. In Table II, ∆t<br />
represents the duration <strong>of</strong> the segment, ∆φ is the total angular<br />
change dur<strong>in</strong>g the segment, and ω o is the angular velocity <strong>of</strong><br />
the ownship dur<strong>in</strong>g the segment. The ownship trajectory and<br />
the true target trajectory from the first Monte Carlo run are<br />
shown <strong>in</strong> Figure 2.<br />
The measurement sampl<strong>in</strong>g time <strong>in</strong>terval is 1.0 s. The<br />
Algorithm 3: A recursion <strong>of</strong> the BF us<strong>in</strong>g MSC.<br />
Input: a weighted sample {wk−1 i , ξi k−1} from the<br />
posterior at time t k−1 and the measurement z k .<br />
Output: a weighted sample {wk i , ξi k} from the posterior<br />
at time t k .<br />
select <strong>in</strong>dices c(1), . . . , c(n) accord<strong>in</strong>g to the weights<br />
wk−1 1 , . . . , wn k−1 .<br />
for i = 1, . . . , n do<br />
draw wk i ∼ N(0, Q(∆ k))<br />
set ξ i k = b(ξ c(i)<br />
k−1 , u k, wk i )<br />
compute the un-normalized weight<br />
˜w<br />
k i = N(z k; Hξ i k, R)<br />
end<br />
compute the normalized weights<br />
/<br />
∑ n<br />
wk i = ˜w k<br />
i ˜w j k .<br />
j=1<br />
compute the state estimate<br />
n∑<br />
ˆx k = wkf i MSC(ξ C i k).<br />
i=1<br />
TABLE I<br />
INITIAL PARAMETERS OF TARGET.<br />
Variable Value<br />
ρ 1 (km) 138.0<br />
β 1 (deg) 45.0<br />
ɛ 1 (deg) -0.415<br />
z1 t (km) 9.0<br />
s 1 (m/s) 297.0<br />
c 1 (deg) -135.0<br />
ż1 t (m/s) 0.0<br />
bear<strong>in</strong>g and elevation measurement error standard deviations<br />
used <strong>in</strong> our simulation were 1, 15 and 35 mrad (0.057,<br />
0.857 and 2 degrees), represent<strong>in</strong>g high, medium, and low<br />
measurement accuracy, respectively. We used 1000 Monte<br />
Carlo simulations to calculate various statistics such as the<br />
root mean square (RMS) position and velocity errors.<br />
The filters are <strong>in</strong>itialized as described <strong>in</strong> Section V with the<br />
parameters shown <strong>in</strong> Table I. All PFs are implemented with a<br />
sample size <strong>of</strong> 10,000.<br />
Two measures <strong>of</strong> performance are used to compare the<br />
algorithms described <strong>in</strong> Sections VI-VII. The first is the RMS<br />
position error averaged from the end <strong>of</strong> the last observer<br />
maneuver to the end <strong>of</strong> the surveillance period. The second<br />
performance measure is the RMS position error at the end <strong>of</strong><br />
the surveillance period. The results are shown <strong>in</strong> Tables III<br />
and IV. The execution times <strong>of</strong> the algorithms are given <strong>in</strong><br />
Table V.<br />
There are several po<strong>in</strong>ts <strong>of</strong> <strong>in</strong>terest to discuss. The best<br />
performance is achieved by the EKF-MSC and UKF-MSC.<br />
The degree <strong>of</strong> their superiority over the other algorithms
TABLE II<br />
MOTION PROFILE OF OWNSHIP FOR VARIOUS SEGMENTS.<br />
Time Interval ∆t ∆φ Motion Type ω o<br />
(s) (s) (rad) (rad/s)<br />
[[0, 15] 15 0 CV 0<br />
[15, 31] 16 −π/4 CT −π/64<br />
[31, 43] 12 0 CV 0<br />
[43, 75] 32 π/2 CT π/64<br />
[75, 86] 11 0 CV 0<br />
[86, 102] 16 −π/4 CT −π/64<br />
[102, 210] 108 0 CV 0<br />
TABLE IV<br />
FINAL RMS POSITION ERROR IN METERS.<br />
Algorithm sdv (mrad) sdv (mrad) sdv (mrad)<br />
1.0 15.0 35.0<br />
CEKF 0.472 3.363 4.780<br />
CUKF 0.468 3.308 4.658<br />
CBF 0.527 4.173 5.384<br />
EKF-MSC 0.462 2.413 3.333<br />
UKF-MSC 0.462 2.533 3.499<br />
BF-MSC 1.355 3.575 5.286<br />
Y (m)<br />
10 x 104 Target and Ownship Trajectories<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
Target<br />
Ownship<br />
0 2 4 6 8 10<br />
Fig. 2.<br />
X (m)<br />
Target and ownship trajectories.<br />
x 10 4<br />
depends on the the measurement accuracy. For high measurement<br />
accuracy, the EKF-MSC and UKF-MSC are <strong>only</strong><br />
marg<strong>in</strong>ally better than the EKF and UKF us<strong>in</strong>g relative<br />
<strong>Cartesian</strong> coord<strong>in</strong>ates. For low measurement accuracy, the<br />
performance improvements <strong>of</strong> the EKF-MSC and UKF-MSC<br />
are more pronounced. These performance improvements are<br />
<strong>of</strong>fset somewhat by the larger computational cost <strong>of</strong> us<strong>in</strong>g<br />
MSC compared to relative <strong>Cartesian</strong> coord<strong>in</strong>ates, as seen <strong>in</strong><br />
Table V.<br />
Although more expensive than their <strong>Cartesian</strong> counterparts,<br />
the EKF-MSC and UKF-MSC do not pose a severe computational<br />
burden. This is certa<strong>in</strong>ly true when compared to two PF<br />
algorithms. In addition to hav<strong>in</strong>g a much greater computational<br />
cost, the PFs also perform worse than the EKF-MSC and<br />
UKF-MSC, much worse <strong>in</strong> some cases. The poor performance<br />
TABLE III<br />
TIME-AVERAGED RMS POSITION ERROR IN METERS.<br />
Algorithm sdv (mrad) sdv (mrad) sdv (mrad)<br />
1.0 15.0 35.0<br />
CEKF 0.650 5.786 12.00<br />
CUKF 0.644 5.743 12.02<br />
CBF 0.694 6.183 12.09<br />
EKF-MSC 0.629 4.773 10.65<br />
UKF-MSC 0.629 4.827 10.48<br />
BF-MSC 1.310 5.689 11.71<br />
<strong>of</strong> the PFs could be improved by us<strong>in</strong>g a higher number <strong>of</strong><br />
particles, but this would obviously <strong>in</strong>crease their already large<br />
computational cost. An <strong>in</strong>terest<strong>in</strong>g aspect <strong>of</strong> the results is that<br />
the BF does not benefit from the use <strong>of</strong> MSC to the same<br />
extent as the EKF and UKF. When the measurement accuracy<br />
is high (e.g. a standard deviation <strong>of</strong> 1 mrad), the RMS position<br />
error for the CBF is about half <strong>of</strong> that for the BF-MSC. For<br />
higher measurement standard deviations (e.g. 15, 35 mrad), the<br />
BF-MSC performs slightly better than the CBF with nearly the<br />
same computational cost.<br />
TABLE V<br />
CPU TIMES OF FILTERING ALGORITHMS FOR THE MEASUREMENT<br />
STANDARD DEVIATION OF 15 MRAD.<br />
Algorithm CPU (s) Relative CPU<br />
CEKF 0.036 1.00<br />
CUKF 0.110 2.97<br />
CBF 6.280 175.22<br />
EKF-MSC 0.980 27.39<br />
UKF-MSC 0.820 22.86<br />
BF-MSC 15.600 434.90<br />
IX. CONCLUSIONS<br />
We have considered the angle-<strong>only</strong> filter<strong>in</strong>g problem <strong>in</strong><br />
<strong>3D</strong> <strong>of</strong> a non-maneuver<strong>in</strong>g target us<strong>in</strong>g bear<strong>in</strong>g and elevation<br />
measurements. The paper presents two classes <strong>of</strong> algorithms<br />
based on relative <strong>Cartesian</strong> coord<strong>in</strong>ates and modified spherical<br />
coord<strong>in</strong>ates (MSC). MSC are the <strong>3D</strong> analogue <strong>of</strong> the wellknown<br />
modified polar coord<strong>in</strong>ates (MPC) <strong>in</strong> 2D. These coord<strong>in</strong>ate<br />
systems have the important property <strong>of</strong> decoupl<strong>in</strong>g the<br />
potentially unobservable range from other observable elements<br />
<strong>of</strong> the state vector.<br />
As <strong>in</strong> the case <strong>of</strong> 2D angle-<strong>only</strong> filter<strong>in</strong>g, our results for the<br />
<strong>3D</strong> case show that us<strong>in</strong>g a coord<strong>in</strong>ate system which decouples<br />
observable and non-observable components is desirable, although<br />
the benefits <strong>of</strong> do<strong>in</strong>g this were modest <strong>in</strong> our scenario.<br />
Of the algorithms considered here, computationally efficient<br />
Gaussian approximations, such as the EKF and UKF, were<br />
the most effective. They provided accurate state estimates at a<br />
fraction <strong>of</strong> the expense <strong>of</strong> the various PF implementations.<br />
The EKF-MSC and UKF-MSC provide the best filter<strong>in</strong>g<br />
performance for the scenario considered.<br />
Our future work will consider the realistic scenario <strong>of</strong><br />
a maneuver<strong>in</strong>g target. We shall also calculate the posterior<br />
Cramér Rao lower bound (PCRLB) for the filter<strong>in</strong>g problem<br />
which represents the best achievable accuracy [13]. Then the
accuracy <strong>of</strong> various filter<strong>in</strong>g algorithms can be compared with<br />
the PCRLB.<br />
ACKNOWLEDGMENT<br />
The authors thank Sam Blackman for provid<strong>in</strong>g the details<br />
<strong>of</strong> the track<strong>in</strong>g scenario and useful discussions and advice. The<br />
authors also thank Anand Mallick for verify<strong>in</strong>g the derivations<br />
us<strong>in</strong>g Mathematica, develop<strong>in</strong>g Matlab code, and generat<strong>in</strong>g<br />
numerical results.<br />
REFERENCES<br />
[1] V. J. Aidala, Kalman filter behavior <strong>in</strong> bear<strong>in</strong>g-<strong>only</strong> track<strong>in</strong>g applications,<br />
IEEE Trans. on Aerospace and Electronic Systems, Vol. AES-15, No. 1,<br />
pp:29–39, January 1979.<br />
[2] V. J. Aidala and S. E. Hammel, Utilization <strong>of</strong> modified polar coord<strong>in</strong>ates<br />
for bear<strong>in</strong>gs-<strong>only</strong> track<strong>in</strong>g, IEEE Transactions on Automatic Control,<br />
28(3):283–294, 1983.<br />
[3] R. R. Allen and S. S. Blackman, Implementation <strong>of</strong> an angle-<strong>only</strong> track<strong>in</strong>g<br />
filter, Proc. <strong>of</strong> SPIE, Signal and Data Process<strong>in</strong>g <strong>of</strong> Small Targets, Vol.<br />
1481, Orlando, FL, USA, April 1991.<br />
[4] R. R. Allen and S. S. Blackman, <strong>Angle</strong>-<strong>only</strong> track<strong>in</strong>g with a MSC filter,<br />
Proc. <strong>of</strong> Digital Avionics Systems Conference, pp. 561 – 566, 1991.<br />
[5] S. Arulampalam and B. Ristic, <strong>Comparison</strong> <strong>of</strong> the Particle Filter with<br />
Range-Parameterised and Modified Polar EKFs for <strong>Angle</strong>-Only Track<strong>in</strong>g,<br />
Proc. <strong>of</strong> SPIE, Vol. 4048, 2000.<br />
[6] M. Arulampalam, S. Maskell, N. Gordon and T. Clapp, A Tutorial on<br />
Particle Filters for Onl<strong>in</strong>e Nonl<strong>in</strong>ear/Non-Gaussian Bayesian Track<strong>in</strong>g,<br />
IEEE Trans. on Signal Process<strong>in</strong>g, Vol. SP-50, No. 2, pp. 174–188,<br />
February 2002<br />
[7] S. Arulampalam, M. Clark, and R. V<strong>in</strong>ter, Performance <strong>of</strong> the Shifted<br />
Rayleigh Filter <strong>in</strong> S<strong>in</strong>gle-sensor Bear<strong>in</strong>gs-<strong>only</strong> Track<strong>in</strong>g, Proc. <strong>of</strong> the<br />
Tenth International Conf. on Information Fusion, Québec, Canada, July<br />
2007.<br />
[8] Y. Bar-Shalom, X. R. Li, and T. Kirubarajan, Estimation with Applications<br />
to Track<strong>in</strong>g and Navigation, John Wiley & Sons, 2001.<br />
[9] S. S. Blackman and S. H. Roszkowski, Application <strong>of</strong> IMM <strong>Filter<strong>in</strong>g</strong> to<br />
Passive Rang<strong>in</strong>g, In Proc. <strong>of</strong> SPIE, 3809:270–281, 1999.<br />
[10] S. Blackman and R. Popoli, Design and Analysis <strong>of</strong> Modern Track<strong>in</strong>g<br />
Systems, Artech House, 1999.<br />
[11] S. S. Blackman, T. White, B. Blyth, and C. Durand, Integration <strong>of</strong> Passive<br />
Rang<strong>in</strong>g with Multiple Hypothesis Track<strong>in</strong>g (MHT) for Application<br />
with <strong>Angle</strong>-Only Measurements, Proc. <strong>of</strong> SPIE, Vol. 7698, pp. 769815-1<br />
– 769815-11, 2010.<br />
[12] T. Bréhard and J-P. Le Cadre, Closed-form Posterior Cramér-Rao Bound<br />
for a Manoeuvr<strong>in</strong>g Target <strong>in</strong> the Bear<strong>in</strong>gs Only Track<strong>in</strong>g Context Us<strong>in</strong>g<br />
Best-Fitt<strong>in</strong>g Gaussian Distribution, Proc. <strong>of</strong> the N<strong>in</strong>th International Conf.<br />
on Information Fusion, Florence, Italy, July 2006.<br />
[13] T. Bréhard and J-P. Le Cadre, Closed-form posterior Cramér-Rao bounds<br />
for bear<strong>in</strong>gs <strong>only</strong> track<strong>in</strong>g, IEEE Trans. on Aerospace and Electronic<br />
Systems, Vol. AES-42, No. 4, pp. 1198–1223, October 2006.<br />
[14] A. Gelb, editor, Applied Optimal Estimation, MIT Press, 1974.<br />
[15] N. J. Gordon, D. J. Salmond, and A. F. M. Smith, Novel approach<br />
to nonl<strong>in</strong>ear/non-Gaussian Bayesian state estimation, IEE Proceed<strong>in</strong>gs-F,<br />
Vol. 140, No. 2, pp. 107–113, April 1993.<br />
[16] P. Gurfil and N. J. Kasd<strong>in</strong>, Two-step optimal estimator for three<br />
dimensional target track<strong>in</strong>g, IEEE Trans. on Aerospace and Electronic<br />
Systems, Vol. AES-40, No. 3, pp. 780 –793, July 2005.<br />
[17] S. E. Hammel and V. J. Aidala, Observability Requirements for<br />
Three-Dimensional Track<strong>in</strong>g via <strong>Angle</strong> Measurements, IEEE Trans. on<br />
Aerospace and Electronic Systems, Vol. AES-24, No. 2, pp. 200 –207,<br />
March 1985.<br />
[18] H. D. Hoelzer, G. W.Johnson, and A. O.Cohen, Modified Polar<br />
Coord<strong>in</strong>ates - The Key to Well Behaved Bear<strong>in</strong>gs Only Rang<strong>in</strong>g, In IR<br />
& D Report 78-M19-OOOlA, IBM Federal Systems Division, Shipboard<br />
and Defense Systems, Manassas, VA 22110, August 31, 1978.<br />
[19] R. A. Horn and C. R.Johnson, Topics <strong>in</strong> Matrix Analysis, Cambridge<br />
University Press, 1991.<br />
[20] M. Hürzeler and H. R. Künsch, Monte carlo approximations for general<br />
state-space models, Journal <strong>of</strong> Computational and Graphical Statistics,<br />
Vol. 7, No. 2, pp. 175–193, 1998.<br />
[21] C. Jauffret and D. Pillon Observability <strong>in</strong> passive target motion analysis,<br />
IEEE Trans. on Aerospace and Electronic Systems, Vol. AES-32, No. 4,<br />
pp. 1290–1300, October 1996.<br />
[22] G. W. Johnson, H. D. Hoelzer, A. O. Cohen, and E. F. Harrold, Improved<br />
coord<strong>in</strong>ates for target track<strong>in</strong>g from time delay <strong>in</strong>formation, Proc. <strong>of</strong> the<br />
Time Delay Estimation and Applications Conference, Naval Postgraduate<br />
School, Monterey, CA, May 1979. vol. 2. pp. M1–M32.<br />
[23] S. Julier, J. Uhlmann and H.F. Durrant-Whyte, A new method for<br />
the nonl<strong>in</strong>ear transformation <strong>of</strong> means and covariances <strong>in</strong> filters and<br />
estimators, IEEE Trans. on Automatic Control, Vol. AC-45, No. 3, pp.<br />
477–482, March 2000.<br />
[24] S. J. Julier and J. K. Uhlmann, Unscented filter<strong>in</strong>g and nonl<strong>in</strong>ear<br />
estimation, Proc. <strong>of</strong> the IEEE, Vol. 92, No. 3, pp. 401–422, March 2004.<br />
[25] R. Karlsson and F. Gustafsson, Range estimation us<strong>in</strong>g angle-<strong>only</strong> target<br />
track<strong>in</strong>g with particle filters, Proc. American Control Conference, pp.<br />
3743 – 3748, 2001.<br />
[26] Q. Li, F. Guo, Y. Zhou, and W. Jiang, Observability <strong>of</strong> Satellite<br />
to Satellite Passive Track<strong>in</strong>g from <strong>Angle</strong>s Measurements, Proc. IEEE<br />
International Conference on Control and Automation, pp. 1926 – 1931,<br />
2007.<br />
[27] Q. Li, L. Shi, H. Wang, and F. Guo, Utilization <strong>of</strong> Modified Spherical<br />
Coord<strong>in</strong>ates for Satellite to Satellite Bear<strong>in</strong>gs-Only Track<strong>in</strong>g, Ch<strong>in</strong>. J.<br />
Space Sci., Vol. 29, No. 6, pp. 627–634, 2009.<br />
[28] M. Mallick, L. Mihaylova, S. Arulampalam, and Y. Yan, <strong>Angle</strong>-<strong>only</strong><br />
<strong>Filter<strong>in</strong>g</strong> <strong>in</strong> <strong>3D</strong> Us<strong>in</strong>g Modified Spherical and Log Spherical Coord<strong>in</strong>ates,<br />
In 2011 International Conference on Information Fusion, Chicago, USA,<br />
July 5-8, 2011.<br />
[29] M. Mallick, M. Morelande, L. Mihaylova, S. Arulampalam, and Y.<br />
Yan, <strong>Angle</strong>-<strong>only</strong> <strong>Filter<strong>in</strong>g</strong> <strong>in</strong> <strong>3D</strong>, Chapter 1, In Integrated Track<strong>in</strong>g,<br />
Classification, and Sensor Management: Theory and Applications, M.<br />
Mallick, V. Krishnamurthy, and B-N Vo, Ed., Wiley-IEEE, 2012 (to be<br />
published).<br />
[30] C. Musso, N. Ouddjane, and F. Le Gland, Improv<strong>in</strong>g Regularised<br />
Particle Filters, Chapter 12, <strong>in</strong> Sequential Monte Carlo Methods <strong>in</strong><br />
Practice, (Ed.) A. Doucet, N. De Freitas, N. Gordon, Spr<strong>in</strong>ger, pp. 247-<br />
271, 2001.<br />
[31] M. K. Pitt and N. Shephard, <strong>Filter<strong>in</strong>g</strong> via Simulation:Auxiliary particle<br />
filters, Journal <strong>of</strong> the American Statistical Association, Vol. 94, No. 446,<br />
pp. 590–599, 1999.<br />
[32] B. Ristic, S. Arulampalam, and N. Gordon, Beyond the Kalman Filter,<br />
Artech House, 2004.<br />
[33] P. N. Rob<strong>in</strong>son, Modified spherical coord<strong>in</strong>ates for radar, Proc. <strong>of</strong> the<br />
AIAA Guidance, Navigation and Control Conference, Scottsdale, AZ, pp.<br />
55–64, Aug. 1-3, 1994.<br />
[34] B. W. Silverman, Density Estimation for Statistics and Data Analysis,<br />
Chapman and Hall, 1986.<br />
[35] R. A. S<strong>in</strong>ger, Estimat<strong>in</strong>g Optimal Track<strong>in</strong>g Filter Performance for<br />
Manned Maneuver<strong>in</strong>g Targets, IEEE Trans. on Aerospace and Electronic<br />
Systems, Vol. AES-6, pp: 473–483, July 1970.<br />
[36] D. V. Stallard, An angle-<strong>only</strong> track<strong>in</strong>g filter <strong>in</strong> modified spherical<br />
coord<strong>in</strong>ates, Proc. <strong>of</strong> the AIAA Guidance, Navigation and Control<br />
Conference, Monterey, CA, pp. 542–550, Aug. 17-19, 1987.<br />
[37] D. V. Stallard, <strong>Angle</strong>-<strong>only</strong> track<strong>in</strong>g filter <strong>in</strong> modified spherical coord<strong>in</strong>ates,<br />
Journal <strong>of</strong> Guidance, Control, and Dynamics, Vol. 14, No. 3, pp.<br />
694–696, 1991.