Skip to main content
Log in

An advanced GNSS code multipath detection and estimation algorithm

  • Original Article
  • Published:
GPS Solutions Aims and scope Submit manuscript

Abstract

A novel maximum likelihood-based range estimation algorithm is designed to provide robustness to multipath, which is recognized as a dominant error source in DS-CDMA-based navigation systems. The detection–estimation problem is jointly solved to sequentially estimate the parameters of each individual multipath component and predict the existence of a next possible component. A comparison between contemporary maximum likelihood-based multipath estimation techniques and this new technique is provided. A selection of realistic channel simulation models is used to assess relative performance under different operating situations. A set of real GPS L1/CA data processing results are also presented to further assess the applicability of the proposed algorithm for urban navigation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

References

  • Fontan FP, Vaquez-Castro M, Cabado CE, Garcia JP, Kubista E (2001) Statistical modeling of the LMS channel. IEEE Trans Veh Technol 50(6):1549–1567

    Article  Google Scholar 

  • Garin L, Rousseau JM (1997) Enhanced strobe correlator multipath rejection for code & carrier. Proceedings of the ION-GPS 1997 Institute of Navigation, 16–19 September, Kansas City MO, USA, pp 559–568

  • Jahn A, Bischl H, Heis G (1996) Channel characterization for spread spectrum satellite communications. Proceedings of the IEEE 4th international symposium on spread spectrum techniques and applications (ISSSTA’96), Mainz, Germany, September, pp 1221–1226

  • Jardak N, Vervisch-Picois A, Samama N (2011) Multipath insensitive delay lock loop in GNSS receivers. IEEE Trans Aerosp Electron Syst 47(4):2590–2609

    Article  Google Scholar 

  • Kay SM (1993) Fundamentals of statistical signal processing: estimation theory, vol 1. Prentice Hall, New Jersey

    Google Scholar 

  • Kay SM (1998) Fundamentals of statistical signal processing: detection theory, vol 2. Prentice Hall, New Jersey

    Google Scholar 

  • Li X, Pahlavan K (2004) Super-resolution TOA estimation with diversity for indoor geolocation. IEEE Trans Wirel Commun 3(1):224–234

    Article  Google Scholar 

  • Lohan ES, Hamila R, Lakhzouri A, Renfors M (2005) Highly efficient techniques for mitigating the effects of multipath propagation in DS-CDMA delay estimation. IEEE Trans Wirel Commun 4(1):149–162

    Article  Google Scholar 

  • Lu TZ, Shiou SH (2002) Inverses of two block matrices. Comput Math Appl 43:119–129

    Article  Google Scholar 

  • McGraw GA, Braasch MS (1999) GNSS multipath mitigation using gated and high resolution correlator concepts. Proceedings of the ION-ITM 1999 Institute of Navigation, 25–27 January, San Diego CA, USA, pp 333–342

  • Noble B, Danie JW (1977) Applied linear algebra. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  • Puntanen S, Styan GPH (2005) Schur complements in statistics and probability. Chapter 6 In: Zhang F (ed) The Schur complement and its applications, Springer, pp 163–226, ISBN: 978-0-387-24271-1

  • Ray JK, Cannon ME, Fenton P (2001) GPS code and carrier multipath mitigation using a multi-antenna system. IEEE Trans Aerosp Electron Syst 37(1):183–195

    Article  Google Scholar 

  • Sahmoudi M, Amin MG (2009) Robust tracking of weak GPS signals in multipath and jamming environments. Signal Process 89(7):1320–1333

    Article  Google Scholar 

  • Satyanarayana S, Borio D, Lachapelle G (2009) GPS L1 indoor fading characterization using block processing techniques. Proceedings of the ION-GNSS 2009 Institute of Navigation, 22–25 September, Savannah, GA

  • Sokhandan N (2013a) A novel multipath estimation and tracking algorithm for Urban GNSS applications. Proceedings of the ION-GNSS+ 2013 Institute of Navigation, 17–21 September, Nashville, Tennessee

  • Sokhandan N (2013b) GNSS multipath mitigation using channel parameter estimation techniques. Ph.D. Thesis, Report No. 20392, Department of Geomatics Engineering, University of Calgary

  • Townsend BR, Fenton P (1994) A practical approach to the reduction of pseudorange multipath errors in a L1 GPS receiver. Proceedings of the ION-GPS 1994 Institute of Navigation, 20–23 September, Salt Lake City Utah, USA, pp 143–148

  • Townsend B, Van Nee DJR, Fenton P, Van Dierendonck K (1995) Performance evaluation of the multipath estimating delay lock loop. Navig J Inst Navig 42(3):503–514

    Google Scholar 

  • Van Nee RDJ (1992) The multipath estimating delay lock loop. Proceedings of the IEEE 2nd international symposium on spread spectrum techniques and applications, November 29–December 2, Yokohama, Japan, pp 39–42

  • Van Nee RDJ (1997) Method of estimating a line of sight signal propagation time using a reduced multipath correlation function. US Patent no. 5 615 232, March 25

  • Van Nee RDJ (2001) Spread-spectrum code and carrier synchronization errors caused by multipath and interference. IEEE Trans Aerosp Electron Syst 29(4):1359–1365

    Google Scholar 

  • Van Nee RDJ, Siereveld C, Fenton P, Townsend B (1994) Multipath estimating delay lock loop: approaching theoretical accuracy limits. Proceedings of the IEEE PLANS, position location and navigation symposium, 11–15 April, Las Vegas NV, USA, pp 246–251

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Negin Sokhandan.

Appendices

Appendix 1

It is shown here that when the number of parameters to be estimated increases and therefore the Fisher information matrix (FIM) is expanded, the estimation variance of the original parameters decreases (related to “Maximum likelihood channel estimation” section).

Assume that \({\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{1} } \right)\) is the FIM of the original parameters. Then \({\bar{\mathbf{a}}}_{1}\) is extended to \({\bar{\mathbf{a}}}_{2}\) by adding more parameters to be estimated. For simplicity and without loss of generality, it is assumed that these new parameters have been inserted to end of \({\bar{\mathbf{a}}}_{1}\). Considering the fact that the FIM is a symmetric matrix, \({\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{2} } \right)\) can be represented in the following block matrix form:

$${\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{2} } \right) = \left[ {\begin{array}{*{20}c} {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{1} } \right)} & {\mathbf{B}} \\ {{\mathbf{B}}^{T} } & {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)} \\ \end{array} } \right],$$
(36)

where \({\bar{\mathbf{a}}}_{3}\) is the vector including only the newly added parameters. Therefore, the estimation covariance matrix for \({\bar{\mathbf{a}}}_{2}\), shown by \({\mathbf{C}}_{{{\bar{\mathbf{a}}}_{2} }}\), can be represented as (Lu and Shiou 2002; Puntanen and Styan 2005)

$${\mathbf{C}}_{{{\mathbf{a}}_{2} }} = \left[ {\begin{array}{*{20}c} {{\mathbf{I}}\left( {\bar{\mathbf{a}}_{1} } \right)} & {\mathbf{B}} \\ {{\mathbf{B}}^{\rm H} } & {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)} \\ \end{array} } \right]^{ - 1} = \left[ {\begin{array}{*{20}c} {\left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{1} } \right) - {\mathbf{BI}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{3} } \right){\mathbf{B}}^{\rm H} } \right)^{ - 1} } & { - {\mathbf{I}}^{ - 1} \left( {\bar{\mathbf{a}}_{1} } \right){\mathbf{B}}\left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right) - {\mathbf{B}}^{\rm H} {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{1} } \right){\mathbf{B}}} \right)^{ - 1} } \\ { - {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{3} } \right){\mathbf{B}}^{\rm H} \left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{1} } \right) - {\mathbf{BI}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{3} } \right){\mathbf{B}}^{\rm H} } \right)^{ - 1} } & {\left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right) - {\mathbf{B}}^{\rm H} {\mathbf{I}}^{ - 1} \left( {\bar{\mathbf{a}}_{1} } \right){\mathbf{B}}} \right)^{ - 1} } \\ \end{array} } \right].$$
(37)

Thus, the part of the covariance matrix that is related to the primary set of the parameters is \(\left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{{\mathbf{1}}} } \right) - {\mathbf{BA}}^{ - 1} {\mathbf{B}}^{\rm H} } \right)^{ - 1}\). We refer to this matrix as \({\mathbf{C^{\prime}}}_{{{\bar{\mathbf{a}}}_{1} }}\). Furthermore, this matrix can be rewritten as

$$\begin{aligned} {\mathbf{C^{\prime}}}_{{{\mathbf{a}}_{1} }} &= \left( {{\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{1} } \right) - {\mathbf{BI}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{3} } \right){\mathbf{B}}^{\rm H} } \right)^{ - 1} \hfill \\ &= {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{1} } \right) + {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{1} } \right){\mathbf{B}}\left( {{\mathbf{B}}^{\rm H} {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{1} } \right){\mathbf{B}} + {\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)} \right)^{ - 1} {\mathbf{B}}^{\rm H} {\mathbf{I}}^{ - 1} \left( {{\bar{\mathbf{a}}}_{1} } \right) \hfill \\ &= {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} + {\mathbf{C}}_{{\bar{\mathbf{a}}_{1} }} {\mathbf{B}}\left( {{\mathbf{B}}^{\rm H} {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} {\mathbf{B}} + {\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)} \right)^{ - 1} {\mathbf{B}}^{\rm H} {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} \hfill \\ \end{aligned}$$
(38)

In the second term of (38), \({\mathbf{B}}^{\text{H}} {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} {\mathbf{B}} + {\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)\) is a positive definite matrix (because both of the FIM matrix and the covariance matrix are positive definite) and so is its inverse. Therefore, the quadratic form term \({\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} {\mathbf{B}}\left( {{\mathbf{B}}^{\rm H} {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }} {\mathbf{B}} + {\mathbf{I}}\left( {{\bar{\mathbf{a}}}_{3} } \right)} \right)^{ - 1} {\mathbf{B}}^{\rm H} {\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }}\) has real positive elements on its main diagonal. Hence, the diagonal elements of \({\mathbf{C^{\prime}}}_{{{\mathbf{a}}_{1} }}\) which are the variances of estimation of the original set of the parameters are greater than corresponding diagonal elements of \({\mathbf{C}}_{{{\bar{\mathbf{a}}}_{1} }}\), and therefore, the variance of estimation of the primary parameters has been increased after inserting the new set of the parameters to be estimated.

Appendix 2

The asymptotic performance of the GLRT in (28) can be represented as (Kay 1998)

$$2\ln L\left(z \right) {\mathop{\sim}^{a}}\left\{\begin{array}{cc} \chi_{2}^{2} & {\text{under}}\quad{\rm H}_{0}\\ \chi^{\prime 2}_{2} \left(\lambda \right) & {\text{under}}\quad{\rm H}_{1}\\ \end{array}\right.$$
(39)

in which

$$\lambda = \left( {\theta_{{r_{1} }} - \theta_{{r_{0} }} } \right)^{\rm H} \left[ {{\mathbf{I}}_{{\theta_{r} \theta_{r} }} \left( {\theta_{{r_{0} }} ,\theta_{s} } \right) - {\mathbf{I}}_{{\theta_{r} \theta_{s} }} \left( {\theta_{{r_{0} }} ,\theta_{s} } \right){\mathbf{I}}_{{\theta_{s} \theta_{s} }}^{ - 1} \left( {\theta_{{r_{0} }} ,\theta_{s} } \right){\mathbf{I}}_{{\theta_{s} \theta_{r} }} \left( {\theta_{{r_{0} }} ,\theta_{s} } \right)} \right]\,\left( {\theta_{{r_{1} }} - \theta_{{r_{0} }} } \right),$$
(40)

where \(\theta_{{r_{0} }}\) and \(\theta_{{r_{1} }}\) are the true values of the parameter to be detected under the H0 and H1 hypotheses, respectively, and θ s is a vector that includes the true values of nuisance parameters. I is the Fisher information matrix that can be represented as

$${\mathbf{I}}\left( \theta \right) = {\mathbf{I}}\left( {\theta_{r} ,\theta_{s} } \right) = \left[ {\begin{array}{*{20}c} {{\mathbf{I}}_{{\theta_{r} \theta_{r} }} \left( {\theta_{r} ,\theta_{s} } \right)} & {{\mathbf{I}}_{{\theta_{r} \theta_{s} }} \left( {\theta_{r} ,\theta_{s} } \right)} \\ {{\mathbf{I}}_{{\theta_{s} \theta_{r} }} \left( {\theta_{r} ,\theta_{s} } \right)} & {{\mathbf{I}}_{{\theta_{s} \theta_{s} }} \left( {\theta_{r} ,\theta_{s} } \right)} \\ \end{array} } \right].$$
(41)

Herein, \(\theta_{{r_{0} }} = 0\), \(\theta_{{r_{1} }} = a_{m + 1}\) and \({\mathbf{I}}\left( \theta \right)\) is computed from (12). In Fig. 15, the asymptotic performance of detection for some different values of SNR is plotted for different values of m.

Fig. 15
figure 15

Asymptotic performance of detector for different values of m

It can be noticed from the plots in Fig. 15 that the adverse effect of increasing the number of signal components to be detected is insignificant when m is larger than 2 (which is the normal case for an urban channel). Therefore, this nonlinear effect can be ignored in setting PFA for detecting new multipath components.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Sokhandan, N., Curran, J.T., Broumandan, A. et al. An advanced GNSS code multipath detection and estimation algorithm. GPS Solut 20, 627–640 (2016). https://doi.org/10.1007/s10291-015-0475-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10291-015-0475-z

Keywords

Navigation