You are on page 1of 11

Interior-Point Method for GPS Multipath Mitigation

He-Sheng Wang
Department of Communications and Guidance Engineering
National Taiwan Ocean University, Keelung 202, TAIWAN
Phone: +886-912266254, FAX: +886-2-24633492
E-mail: hswang@mail.ntou.edu.tw

Abstract
In this paper, an interior-point optimization method for GPS positioning and multipath mitigation is proposed. The present method can effectively eliminate the NLOS (non-line-of-sight) delay
errors and is also able to improve the location accuracy of a satellite navigation receiver. A constrained WLS (weighted least-squares) estimator is derived based on the proposed algorithm, which
is able to properly estimate and eliminate the multipath error contained in each satellites pseudorange. In our experimental results, it is demonstrated that the proposed estimator can compute the
coordinate of a user location in an accurate fashion after estimating and removing the measurement
biases. This is done by suitably choosing the constraints for the interior-point algorithm.
Keywords: Global Positioning System (GPS); Interior-Point Optimization; Multipath Mitigation;
Non-Line-of-Sight (NLOS); Wireless Location System
1. Introduction
PND (Personal Navigation Device) has become one of the daily consumer electronic products. With
the help of satellite navigation systems (such as GPS), an off-the-shelf PND may provide meterlevel positioning accuracy in a timely manner. As the field of applications getting broader, many
different aspects that did not consider in the original system design have now introduced extra difficulties in modern day's navigation devices. For the problems that occur in todays navigation application, we mention among others that non-line of sight (NLOS) reception of the navigation signal
may drastically degrade the quality of the positioning result. Although NLOS problem has already
addressed as an important issue when GPS product hit the market, it becomes much more critical
when using a PND in an urban canyon environment, which is an application that wasnt foreseen
when GPS was first invented. Multipath error caused by signal reflections, diffractions, and scatterings is one of the most important problems in urban navigation. For satellite navigation, it may be
seen as the major error source other than the ionosphere propagation delay. In this paper, we seek to
provide a method to efficiently estimate and eliminate the path-delay error. In the present work, a
new position-determination estimator for multi-lateration is proposed. The estimator takes into account the measurement bias resulting from NLOS transmission, and in the mean-time also improves
the location accuracy of a satellite positioning system.
2. Interior-Point Optimization Method
In this section, the method of interior-point optimization is briefly described. Consider the inequality constrained problem
minimize f ( x )
subject to Ax = b,
g( x ) 0 ,

(1)

A method that avoids the necessity to explicitly select a set of active constraints is based on the logarithmic barrier method, which solves a sequence of equality constrained minimization problems.
Specifically,
ICSSE2011

minimize f ( x ) log(gi ( x ))
i =1

(2)

subject to Ax = b,

where = k > 0, k = 1,..., k > k+1 , k 0. The ks can be pre-determined. Typically, one
may have k+1 = k for some constant 0 < < 1. Here it is assumed that the original problem has
a feasible interior-point x0; that is
Ax 0 = b and g( x 0 ) < 0 ,

and A has full row rank. For fixed , and setting Si = /gi, the optimality conditions of the barrier
problem (1) are:
Sg( x ) = 1
Ax = b
T

(3)

A y + f ( x ) + g ( x )s = 0 ,

where S = diag(s); that is, a diagonal matrix whose diagonal entries are s with s = (S1, , Si), and
is the Jacobian matrix of g(x). If f(x) and gi(x) are convex functions for all i, f(x) ilog(gi(x)) is
strictly convex in the interior of the feasible region, and the objective level set is bounded, then
there is a unique minimizer for the barrier problem. Let (x(), y(), s()) be the (unique) solution
of (3), then these values form the primal-dual central path of (2):

C = {x(), y(), s() > 0 : 0 < < } .


This can be summarized in the following theorem.

Theorem 1. Let (x(), y(), s()) be on the central path.


I.

If f(x) and gi(x) are convex functions for all i, then s() is unique.

II.

Furthermore, if f(x) ilog(gi(x)) is strictly convex, (x(), y(), s()) are unique,
and they are bounded for 0 < 0 for any given 0 > 0.

III. For 0 < <, f(x()) < f(x()) if x(') x().


IV. (x(), y(), s()) converges to a point satisfying the first-order necessary conditions for
a solution of (1) as 0.

Once we have an approximation solution point (x, y, s) = (xk, yk, sk) for (3) with = k > 0, we
again use the primal-dual methods to generate a new approximate solution to (3) for = k+1 < k.
The Newton direction (dx, dy, ds) is found from the system of linear equations:
ICSSE2011

Sg( x )d x G( x )ds = 1 + Sg( x ),

Ad x = b Ax ,

(4)

A T d y + 2 f ( x ) + si2 gi ( x ) d x + g T ( x )d s = A T y f T ( x ) g T ( x )s ,

where G(x) = diag(g(x)). Usually the functional f(x) is a quadratic function of the form f(x) =
(1/2)xTQx + cTx and gi(x) = xi for i = 1,, n; the previous problem then turns into a quadratic programming of the following form:
1 T
x Qx + cT x
2
subject to Ax = b, x 0 ,
minimize

(5)

where the given matrix Q nn is positive definite (that is, the objective is a convex function),

A nm , c n and b m . The problem reduces to finding x n , y m and s n satisfying the following optimality conditions:
Sx = 0
Ax = b
A T y + Qx s = c

(6)

( x , s ) 0.

The optimality conditions with the logarithmic barrier function as well as the parameter then become:

Sx = 1
Ax = b

(7)

A T y + Qx s = c.
Note that the inequality constraint is no longer necessary when the logarithmic barrier function is
utilized. The next step is to find an interior feasible point (x, y, s) for Equation (7). Once we have an
interior feasible point with = xTs/n, we can apply Newtons method to compute a new iterate
point (x+, y+, s+) by solving for (dx, dy, ds) from the system of liner equations:

Sd x + Xds = 1 Xs,
Ad x = 0 ,
T

A d y + Qd x ds = 0 ,

ICSSE2011

(8)

where X and S are two diagonal matrices whose diagonal entries are x > 0 and s > 0, respectively.
Here, is a fixed positive constant less than 1, which implies that our targeted is reduced by the
factor at each step.

To measure the solutions progress, a primal-dual potential function may be used. The potential
is reduced at each iteration. There is no restriction on either neighborhood or step-size during the iteration process so long as the potential is reduced. From a practical point of view, potential-reduction
algorithms may have an advantage over path-following algorithms where iterates are confined to lie
in certain neighborhood of the central path. For any interior feasible point (x, y, s) of Equation (5)
and its dual, a suitable merit function is the potential function of the following form:
n

n+p ( x , s) = ( n + )log( x T s) log( x j s j ).


j=1

where 0. From the arithmetic and geometric mean inequality, it may be derived that
n

n log( x s) log( x j s j ) n log n.


T

j =1

Then
n

n+ ( x , s) = log( xT s) + n log( x T s) log( x j s j ) log( xT s) + n log n.

(9)

j=1

Thus for > 0, n+ ( x , s) implies that xT s 0. More precisely, from Inequality (9), it
can be seen that
( x , s) n log n
.
x T s exp n+

The objective of this method is to make the potential function as negative (toward minus infinity)
as possible. For n , it can be shown that as a matter of fact the potential function is guaranteed to decrease by a fixed amount , see [1]. Specifically,

n+ ( x+ , s+ ) n+ ( x , s)

(10)

for a constant 0.2. Equation (10) provides a theoretical bound on the number of required iterations. While the bound is very competitive with other convex optimization method, however, a faster algorithm may also be achievable by conducting a line search along direction d to obtain the
greatest reduction in the primal-dual potential function at each iteration. The main result for this is
stated in the following theorem.

ICSSE2011

Theorem 2. Consider (8). Let = n/(n + ) < 1 for fixed n and let x+ = x + dx, y+ = y
+ dy, and s+ = s + ds where

min( Xs)
( Xs)1/2 ( nx+s 1 Xs)
T

: any positive constant less than 1

X and S are defined as above, and (dx, dy, dz) is the optimal direction obtained by solving (8). Then

n+ ( x+ , s+ ) n+ ( x , s) 3 / 4 +

2
.
2(1 )

(11)


Equation (11) in Theorem 2 provides a theoretical bound on the number of required iterations
and can be regarded as the best propagation step when numerically implements the primal-dual
method. Note that although in the previous theorem can be any positive number less than 1, it is
suggested that a line search method (such as Newton or cubic fit method) is incorporated to find an
appropriate value to speed up the ratio of convergence. For a proof of Theorem, please consult [1].
We shall summarize the algorithm in the following steps:
Consider (5). Let any interior feasible point (x0, y0, s0) be given along with its dual point. Set
n and k = 0.
Step 1. Set (x, s) = (xk, sk) and = n/(n + ) and compute (dx, dy, dz) by solving (8).
Step 2. Let x k+1 = x k + d x , y k+1 = y k + d y , and s k+1 = s k + d s where
= arg min n+ ( x k + d x , sk + d s ).
0

Step 3. Let k = k + 1. If sTk x k / sT0 x 0 , then (xk, yk, sk) is the answer. Otherwise, return to Step 1.
3. Least-Squares Estimation and Multipath Detection
The GPS observables may be formulated by the following nonlinear equation:
= h(x) + b + v

(12)

where x 4 is the user 3D position and receiver clock bias to be estimated; m ( m 4) is


the measured pseudorange; h(x) is a vector of true geometric ranges between the user and the satellites; b is a vector of measurement biases (in the present paper, they are referring to multipath errors); and v is a vector of measurement noises assumed to have zero means and covariance Rv. Note
that in Equation (12) we assume that the GPS observables have already been corrected for the ionospheric and tropospheric errors. Equation (12) can be solved for x by using a standard leastsquares (LS) algorithm. In order to do that, the nonlinear function h(x) is firstly linearized about a
reference point x0. Upon ignoring higher-order terms, it can be shown that

h( x ) h( x 0 ) + H0 ( x x 0 ),
ICSSE2011

where H0 is the Jacobian matrix of h(x) at x0, namely,


h1

x1

H0 =

h
m
x
1

h1
x2

h1
x 3

hm
x2

hm
x 3

h1

x 4

hm
x4 x=x
0

Then, locally around the linearization point x0, Equation (12) can be written as
y = H0 x + b + v

where y is the linearized measurement, i.e.,


y = (h(x0) H0x0).

(13)

Note that in this initial position calculation NLOS errors (i.e., b value) still include in the measurement equation. In a later step, however, the NLOS bias would be estimated to improve the positioning accuracy, which will be explained in the next section.
Define the following quadratic cost function, while assuming that the measurement bias b is
known:
min J( x ) = ( y H 0 x b)T Rv 1( y H 0 x b)

By using a standard LS algorithm, it can be shown that the optimal estimate x that minimize J(x)
is given by
x = ( HT0 Rv 1H 0 )1 HT0 Rv 1 y ( H T0 R v 1H 0 )1 HT0 R v 1b.

(14)

Suppose for now that the measurement bias b is known, then it can be eliminated from the previous
equation so that the position estimate in (14) may be written as
x = (HT0 Rv 1H0 )1 HT0 Rv 1 y.

(15)

Here
x is the multipath-free estimate. Now suppose that the bias error is presented, it can be seen
from Equation (13) that

x = x + Vb,

(16)

where V = (HT0 Rv 1H 0 )1 HT0 Rv 1 . In order to gain full advantage of the traditional LS method, the
multipath error b needs to be estimated. Define

z = y H0 x = (H0 x + b + v ) H0 ( x Vb)
= (I + H0 V)b + H0 ( x x ) + v = Sb + w ,

ICSSE2011

(17)

where S is defined as S = I + H0V. Note that in Equation (17) all the variables other than b are readily obtained: z can be computed from (13) and (15); w is a zero-mean measurement error with a
covariance that may be propagated from v and x , i.e., E[ wwT ] = H0 Px HT0 + R v , where
Px = E[( x x )( x x )T ] = (H0 Rv 1 HT0 )1 .

On a first look, it seems that Equation (17) may also be cast in a weighted LS algorithm by defining
suitable mean-squares error criterion. Before proceeding, however, lets make some observation on
(17). On the one hand, it is easy to see that S is a projection matrix which is orthogonal to a full
rank matrix H0. Therefore S cannot be an invertible matrix. In this case, it is still possible to find
LS solutions for (17), but the solutions, nevertheless, would not be unique in general. On the other
hand, since the multipath error usually ranges from (for GNSS applications) a few meters to few
hundreds of meters), it is therefore better to find a best solution falling within a specified range rather than an unconstrained optimal solution. In view of these, Equation (17) is better solved by
some suitable constrained optimization method. In this paper, because the need to deal with inequality constraints, we propose the interior-point method for estimating the multipath error. We shall
proceed as follows.
Assume that the upper and lower bounds of a multipath error for a specific satellite are known
(guessed or estimated based on empirical data); then a constrained optimization problem for estimating b may be cast as follows:
min J ( b) = ( z Sb)T Qw1 ( z Sb)

subject to g i ( bi ) i = ( ui bi )( bi li ) i = 0 , i > 0, i = 1,..., m ,

(18)

where Qw = E[wwT] is the covariance matrix of w; gi(bi) is a nonlinear barrier function; i is a


small positive number which may be chosen arbitrary (provided it is small enough); and li and ui are
lower and upper bounds, respectively, of the multipath error for ith satellite. The problem (18) can
be solved by the interior-point optimization method as described in Section 2. Practically, it is not
easy to determine the lower and upper bounds for multipath errors. Although for the TOA (time of
arrival) measurement the lower bound li ought to be larger than zero in general, the upper bounds,
however, may be as low as a few meters in a traditional open-sky navigation scenario, while in an
urban canyon environment the multipath error may be as high as few hundreds of meters. For the
simplest way, one may just set the lower bound to zero and set the upper bound in accordance with
some receivers parameters that may reflect the effect of multipath propagation. Some suitable parameters are S/N (signal-to-noise) ratios of reception signals and elevation angles of the usersatellite LOS (line-of-sight) vectors, etc. From our experimental results, it can be seen that the estimation of multipath errors usually are very poor if only upper and lower bounds are available constraint. However, luckily enough, if some geographic constraints are super-imposed, the estimation
results may improve substantially. For example, in the experimental results shown in next section,
we adopt the radius of the earth (if the location of the user is roughly known, the radius of the earth,
i.e., Euclidean norm of the user position is approximately a constant.) as a geometric constraint, and
the multipath errors can be estimated accurately. Some further constraints may also be incorporated.
For example, considering the geometry of urban environments, imaginary scatters may be applied
to add constraints to the measured pseudoranges. See [1][13] for more detail.
4. Experimental Results
To solve (18), we employ the interior-point method as described in Section 2. As mentioned in the
end of last section, one may like to apply additional constraints to improve the accuracy of the posiICSSE2011

tion estimate. To this end, we introduce one geometric constraint to (18) so that the interior-point
optimization problem can be written as follows:
min J ( x , b) = ( z Sb)T Qw1 ( z Sb)
g i ( bi ) i = ( ui bi )( bi li ) i = 0 , i > 0, i = 1,..., m ,
subject to 2
x1 + x22 + x32 r r = 0 , r > 0

(19)

where gi(bi) is a barrier function defined as before, i and r are slack variables, (x1, x2, x3) is the
users geocentric coordinate (first three components of x), and r is the (local) radius of curvature of
the earth. Note that the information about r can be obtained if the coarse position of the user is
known a priori. Problem (19) is now ready to be solved by the method introduced in Section 2.

ICSSE2011

ICSSE2011

References
[1] S. Al-Jazzar and J. Caffery, Jr., NLOS Mitigation Method for Urban Envrionments, Proc.
IEEE VTC Fall Vehicular Technology Conference, 2004, pp. 5112-5115.
[2] D. G. Luenberger and Y. Ye, Linear and Nonlinear Programming, 3rd Edition, Springer NY,
USA, 2008.
[3] T. Abatzoglou, J. Mendel, and G. Harada, The Constrained Total Least Squares Technique
and Its Application to Harmonic Superresolution, IEEE Trans. Signal Processing, Vol. 39, pp.
1070-1087, May 1991.
[4] Ronald D. DeGroat and Eric M. Dowling, "The Data Least Squares Problem and Channel
Equalization," IEEE Trans., vol. 41, pp. 407-411, January. 1993.
[5] B. De Moor, Structured Total Least Squares and L2 Approximation Problems, Linear Algebra and Its Applications, Vol. 188-189, pp. 163-207, 1993.
[6] Ivan Markovsky and Sabine Van Huffel, Software for structured total least squares problems:
User's guide, Dept. EE, K. U. Leuven, Tech. Rep.03-136, 2003.
[7] I. Markovsky, J.C. Willems, S. Van Huffel, B. De Moor and R. Pintelon, Application of
Structured Total Least Squares for System Identification and Model Reduction, IEEE Tran.
Automatic Control, Vol. 50, No. 10, pp. 1490-1500, 2005.

ICSSE2011

[8] Ivan Markovsky, Jan C. Willems, Sabine Van Huffel and Bart De Moor, Exact and Approximate Modeling of Linear Systems: A Behavioral Approach. Philadelphia: Society for Industrial and Applied Mathematics, 2006.
[9] J. Polderman and J.C. Willems, Introduction to Mathematical Systems Theory, New York:
Springer-Verlag, 1998.
[10] B. Roorda, Algorithms for Global Total Least Squares Modeling of Finite Multivariable Time
Series, Automatica, Vol. 31, No. 3, pp. 391-404, 1995.
[11] B. Roorda and C. Heij, Global Total Least Squares Modeling of Multivariate Time Series,
IEEE Trans. Automatic Control, Vol. 40, No. 1, pp. 50-63, 1995.
[12] Van Huffel and J. Vandewalle, The Total Least Squares Problem: Computational Aspects and
Analysis. Philadelphia: Society for Industrial and Applied Mathematics, 1991.
[13] S. Venkatraman, J. Caffery, Jr., and H. R. You, Location Using LOS Range Estimation in
NLOS Environments, Proc. IEEE VTC Spring Vechicular Technology Conference, 2002, pp.
856-860.
[14] J.C. Willems, From Time Series to Linear SystemPart I. Finite Dimensional Linear Time
Invariant Systems, Automatica, Vol. 22, pp. 561-580, 1986.
[15] J.C. Willems, From Time Series to Linear SystemPart II. Exact Modeling, Automatica,
Vol. 22, pp. 675-694, 1986.
[16] J.C. Willems, From Time Series to Linear SystemPart III. Approximate Modeling, Automatica, Vol. 23, pp. 87-115, 1987.

ICSSE2011

You might also like