Skip to main content

A multipath mitigation algorithm for GNSS signals based on the steepest descent approach

Abstract

Multipath interference seriously degrades the performance of Global Navigation Satellite System (GNSS) positioning in an urban canyon. Most current multipath mitigation algorithms suffer from heavy computational load or need external assistance. We propose a multipath mitigation algorithm based on the steepest descent approach, which has the merits of less computational load and no need for external aid. A new ranging code tracking loop is designed based on the steepest descent method, which can save an early branch or a late branch compared with the narrow-spacing correlation method. The power of the Non-Line-of-Sight (NLOS) signal is weaker than that of the Line-of-Sight (LOS) signal when the LOS signal is not obstructed and with a relatively high Carrier Noise Ratio (CNR). The peak position in the X-axis of the ranging code autocorrelation function does not move with the NLOS interference. Meanwhile, the cost function is designed according to this phenomenon. The results demonstrate that the proposed algorithm outperforms the narrow-spacing correlation and the Multipath Estimated Delay Locked Loop (MEDLL) in terms of the code multipath mitigation and computation time. The Standard Deviation (STD) of the tracking error with the proposed algorithm is less than 0.016 chips. Moreover, the computation time of the proposed algorithm in a software defined receiver is shortened by 24.21% compared with the narrow-spacing correlation.

Introduction

Multipath error is related to an observation environment (Sun et al., 2019; Xu et al., 2020) and difficult to predict. It is the primary error source in Global Navigation Satellite System (GNSS) positioning in an urban canyon. Unlike the errors in satellite clock, receiver clock, ionospheric propagation, tropospheric propagation, and satellite orbits, the differential approach cannot eliminate the multipath error (Jia et al., 2017).

Three ways to mitigate the multipath interference are antenna-based technology, measurement domain processing technology, and baseband signal processing technology. The antenna-based technology makes the antenna receive the indirect signals as little as possible. Although the placement of a GNSS antenna in a well-designed place (McGraw et al., 2004) is the most effective multipath mitigation way, it is impossible to always have such ideal environments in urban canyons. Another effective method to mitigate multipath interference is using well-designed antennas, including single antenna and antenna array. The multipath mitigation performance with the above antennas was compared in Maqsood (2013). A single antenna, such as a dual-polarization antenna (Egea-Roca et al., 2018; Jiang et al., 2012) and a choke ring antenna (Philippov et al., 1999), can suppress the short-delay multipath. The antenna array (Wu et al., 2019; Zhang et al., 2020) requires prior knowledge of the direct signal direction and the assistance of inertial navigation. Although these well-designed antennas mitigate multipath interference effectively, they are expensive and bulky (Wang, Jong, et al., 2015).

Measurement domain processing technologies are mainly based on a physical or empirical model to mitigate multipath interference, such as terrain assistance (Kbayer et al., 2018; Kumar et al., 2015; Ng et al., 2021; Zhang et al., 2021), vector tracking (Hsu et al., 2015), Bayesian receiver autonomous integrity monitoring (Pesonen et al., 2011), satellite selection (Blanco-Delgado et al., 2010), wavelet transform (Su et al., 2018), carrier phase multipath mitigation (Moradi et al., 2015), consistency checking (Jiang et al., 2011), Wireless Fidelity (WiFi) aided multipath mitigation (Nur et al., 2013), network-based multipath mitigation (Klimenko et al., 2021), Vondrak filtering (Zheng et al., 2005), empirical mode decomposition (Dai et al., 2014), stochastic state estimation (Zhang et al., 2018), Sparsity-Promoting Regularization (Chen et al., 2019), and Signal to Noise Ratio (SNR) based multipath error correction (Axelrad et al., 1996). However, these methods require external assistance or static long-term observation (Wen et al., 2019, 2020).

The multipath mitigation algorithm based on baseband signal processing technology can be divided into the nonparametric estimation and the parametric estimation (Qin et al., 2019). The methods based on the nonparametric estimation mainly include the narrow-spacing correlation (Van Dierendonck et al., 1992), the High Resolution Correlator (HRC) (So et al., 2009), and the strobe correlator (Liu et al., 2016). The narrow-spacing correlation algorithm mitigates multipath interference by narrowing the correlation spacing. However, the infinite bandwidth assumption is invalid in practice. The multipath error cannot be further reduced by this method when it is less than the reciprocal of the channel bandwidth. The HRC and the strobe correlator are the variants of the double delta correlator. The HRC and the strobe correlator are inefficient in mitigating short-delay multipath interference. The nonparametric estimation method has a simple structure, but its mitigation capability is not as good as the parametric estimation method.

The parametric estimation method mainly adopts a Maximum Likelihood (ML) algorithm, and the correlator array structure is the hardware and software developed with this method (Blanco-Delgado et al., 2012). Multipath Estimated Delay Locked Loop (MEDLL) (Van Nee et al., 1994; Yan et al., 2017), Multipath Mitigation Technology (MMT) (Weill, 2002), vision correlator (Fenton et al., 2005), Coupled Amplitude Delay Lock Loop (CADLL), and Enhanced CADLL (ECADLL) (Chen et al., 2010, 2013) are commonly leveraged in multipath estimation. MMT and vision correlator are the improved methods of the MEDLL. Sokhandan (2013) pointed out that the main idea of the MEDLL and its improved methods is to estimate the multipath components by a recursive process and then eliminate the influence of each element on the positioning result before the following estimation. Since the principle of the MEDLL is to use multiple correlators to determine the shape of the distorted correlation function accurately, Wang (2020) pointed out that although the MEDLL can reduce the multipath error significantly, the upper bound of estimation accuracy is determined by the correlator spacing. The computational load is directly proportional to the number of correlators. The CADLL adds two Amplitude Locked Loops (ALL) to track the Q and I signal amplitude branches and needs a batch of units to track the code phase. Jia (2017) pointed out that the CADLL is an algorithm with a heavy computational load. Parametric estimation methods require special digital signal processing, namely Application Specific Integrated Circuit (ASIC) hardware or enormous computational complexity, making them almost impossible to implement in real-time receivers.

A code multipath mitigation tracking loop based on the steepest descent is designed to reduce the computational load and dependence on external aids. The rest of this paper is organized as follows. The steepest descent method is first introduced, followed by the principle of the proposed multipath mitigation algorithm. Then a ranging code tracking loop based on the proposed algorithm is constructed. Finally, the performance of multipath mitigation is analyzed, and the feasibility of the tracking loop is verified by tracking the real-world signals.

Principle of code multipath mitigation based on the steepest descent

Non-Line-of-Sight (NLOS) is the phenomenon in which a signal arrives at a receiver through multiple reflection paths. Due to the reflection, the NLOS signal has two properties. One is that the NLOS signal always arrives at the antenna later than the Line-of-Sight (LOS) signal because it has a longer propagation path. The other is that the power of the NLOS signal is weaker than that of the LOS signal when the LOS signal is not obstructed and with a relatively high CNR (Tamazin et al., 2016; Ziedan, 2022). For coherent tracking, the distorted autocorrelation function of ranging code is shown as

$$R_{M} (\tau ) = R(\tau ) + \alpha_{s} R(\tau - \tau_{s} ){\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt}$$
(1)

where \(\alpha_{s}\) is the amplitude of the NLOS signal relative to the LOS signal and within the range of (−1, 1). When the NLOS signal is in-phase with the LOS signal, \(\alpha_{s}\) is a positive number. While \(\alpha_{s}\) is a negative number if the NLOS signal is out-of-phase with the LOS signal. \(\tau_{s}\) is the code delay of the NLOS signal relative to the LOS signal and within the range of (0, 1) chips for two reasons. The first one is the NLOS signal always arrives at the antenna later than the LOS signal. The second one is the peak value and position in the X-axis of the autocorrelation function are not affected by the NLOS signal when the \(\tau_{s}\) exceeds one chip. \(R_{M} ( \cdot )\) is the distorted autocorrelation function. Supposing the signal bandwidth is infinite and the correlation function has no sidelobe, the autocorrelation function \(R( \cdot )\) of the ranging code can be expressed as

$$R( \cdot ) = \left( {\begin{array}{*{20}l} {1 - \left| \tau \right|,} \hfill & {\tau \in \left( { - 1,\;1} \right)} \hfill \\ {0,} \hfill & {\tau \in \left( { - \infty ,\; - 1} \right]} \hfill \\ \end{array} } \right.$$
(2)

The autocorrelation function \(R( \cdot )\) within the domain of (− 1, 1) chips is considered in the tracking process. The phase difference between the ranging code and its duplicated code is compressed into one chip by the signal acquisition module before the raw signal enters the tracking module. Substituting (2) into (1) yields

$$R_{{\text{M}}} (\tau ) = \left\{ {\begin{array}{*{20}l} {1 + \tau ,} \hfill & {\tau \in ( - 1, - 1 + \tau_{s} ]} \hfill \\ {1 + \tau + \alpha_{s} + \alpha_{s} (\tau - \tau_{s} ),{\kern 1pt} } \hfill & {\tau \in ( - 1 + \tau_{s} ,0]} \hfill \\ {1 - \tau + \alpha_{s} + \alpha_{s} (\tau - \tau_{s} ),} \hfill & {\tau \in (0,\tau_{s} ]{\kern 1pt} } \hfill \\ {1 - \tau + \alpha_{s} - \alpha_{s} (\tau - \tau_{s} ),} \hfill & {\tau \in (\tau_{s} ,1)} \hfill \\ {\alpha_{s} - \alpha_{s} (\tau - \tau_{s} ),} \hfill & {\tau \in (1,1 + \tau_{s} )} \hfill \\ \end{array} } \right.$$
(3)

The shape of the distorted autocorrelation function shown in Fig. 1 can be obtained from (3).

Fig. 1
figure 1

Autocorrelation function curve under different interference forms. The red curve shows the autocorrelation function without interference. The green curve demonstrates the autocorrelation function distorted by an in-phase NLOS signal. The blue curve exhibits the autocorrelation function distorted by an out-of-phase NLOS signal

As seen from Fig. 1, the monotonicity of function \(R( \cdot )\) and its maximum position in the X-axis are not affected by the NLOS signal when the power of the NLOS signal is weaker than that of the LOS signal, which is the fundamental of the proposed code multipath mitigation algorithm. Although the position of its maximum in the X-axis is not shifted in the presence of NLOS interferences, there is significant rounding/smoothing/filtering with finite bandwidth. Thus the peak is not sharp and well-defined. This is the reason why we employ the steepest descent algorithm. To make the function \(R_{{\text{M}}} ( \cdot )\) and the function \(R( \cdot )\) have the same value range, the function \(R_{{\text{M}}} ( \cdot )\) needs to be normalized. The normalization process is to divide \(R_{{\text{M}}} ( \cdot )\) by its maximum, and the normalized function is shown as

$$\overline{R}_{{\text{M}}} (\tau ) = \left\{ {\begin{array}{*{20}l} {1 + \frac{{\tau - \alpha_{s} + \alpha_{s} \tau_{s} }}{{1{ + }\alpha_{{\text{s}}} - \alpha_{{\text{s}}} \tau_{{\text{s}}} }},{\kern 1pt} } \hfill & {{\kern 1pt} \tau \in ( - 1, - 1 + \tau_{s} ]} \hfill \\ {1 + \frac{{(1{ + }\alpha_{s} )\tau }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }},} \hfill & {\tau \in ( - 1 + \tau_{s} ,0]{\kern 1pt} } \hfill \\ {1 - \frac{{(1 - \alpha_{s} )\tau }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }},{\kern 1pt} } \hfill & {\tau \in (0,\tau_{s} ]} \hfill \\ {1 - \frac{{(1 + \alpha_{s} )\tau - 2\alpha_{s} \tau_{s} }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }},} \hfill & {\tau \in (0,\tau_{s} ]} \hfill \\ {1 + \frac{{2\alpha_{s} \tau_{s} - \alpha_{s} \tau - 1}}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }},{\kern 1pt} } \hfill & {\tau \in (1,1 + \tau_{s} ){\kern 1pt} } \hfill \\ \end{array} } \right.$$
(4)

The autocorrelation function \(R( \cdot )\) is not suitable for the cost function of the steepest descent because it is non-differentiable at its maximum point. Therefore, defining a new cost function in the whole region of interest is necessary, which is differentiable and has only one extreme point. The quadratic function meets these requirements and is simple in control stability analysis, so the new cost function is defined as

$$P_{F} (R) = (1 - R)^{2}$$
(5)

where \(P_{F} ( \cdot )\) is the new cost function. Substituting the distorted autocorrelation function \(\overline{R}_{M} ( \cdot )\) into (5) yields

$$\overline{P}_{F} (\tau ) = \left\{ {\begin{array}{*{20}l} {\left( {\frac{{\tau - \alpha_{s} + \alpha_{s} \tau_{s} }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }}} \right)^{{2}} } \hfill & {\tau \in ( - 1, - 1 + \tau_{s} ]} \hfill \\ {\left( {\frac{{(1{ + }\alpha_{s} )\tau }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }}} \right)^{{2}} } \hfill & {\tau \in ( - 1 + \tau_{s} ,0]} \hfill \\ {\left( {\frac{{(1 - \alpha_{s} )\tau }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }}} \right)^{{2}} } \hfill & {\tau \in (0,\tau_{s} ]{\kern 1pt} } \hfill \\ {\left( {\frac{{(1 + \alpha_{s} )\tau - 2\alpha_{s} \tau_{s} }}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }}} \right)^{{2}} } \hfill & {{\kern 1pt} \tau \in (\tau_{s} ,1)} \hfill \\ {\left( {\frac{{2\alpha_{s} \tau_{s} - \alpha_{s} \tau - 1}}{{1{ + }\alpha_{s} - \alpha_{s} \tau_{s} }}} \right)^{{2}} } \hfill & {\tau \in (1,1 + \tau_{s} )} \hfill \\ \end{array} } \right.$$
(6)

The shape of the distorted cost function shown in Fig. 2 can be obtained from (6).

Fig. 2
figure 2

Cost function curve under different interference forms. The red curve shows the cost function without interference. The green curve demonstrates the cost function distorted by an in-phase NLOS signal. The blue curve exhibits the cost function distorted by an out-of-phase NLOS signal

As seen in Fig. 2, the minimum point of the cost function \(P_{F} ( \cdot )\) is also the stable point of the steepest descent method, and the location of the minimum does not move with the NLOS interference. Although the distorted cost function is non-differentiable at points \(\tau = - 1 + \tau_{s}\), \(\tau = \tau_{s}\) and \(\tau = 1\), it has both left and right partial derivatives at these points. Whether in-phase or out-of-phase NLOS signals distort the cost function, they can meet the requirements of the steepest descent method.

The principle of the steepest descent (Zeng et al., 2021) is to minimize cost function \(P_{F} ( \cdot )\) by adjusting \(\tau\). According to the state update process of the steepest descent, the iteration process of \(\tau\) can be expressed as

$$\tau_{k + 1} = \tau_{k} - \mu \frac{{\partial P_{F} }}{\partial \tau }\left| {_{k} } \right.$$
(7)

where \(\frac{{\partial P_{F} }}{\partial \tau }\left| {_{k} } \right.\) is the derivation of \(P_{F} ( \cdot )\) with respect to \(\tau\) at the moment. \(\mu\) is the control step, which is a dimensionless positive scalar. To analyze the stability of the iterative process \(\tau\) in the absence of NLOS interferences, substituting (5) into (7), the iteration process of \(\tau\) can be expressed as

$$\tau_{k + 1} = (1 - 2\mu )\tau_{k}$$
(8)

\(\tau_{k}\) can converge to 0 if and only if \(\left| {1 - 2\mu } \right| < 1\). The iteration process of \(\tau\) is in an over-damped state when \(\mu \in (0,0.5)\), in an under-damped state when \(\mu \in (0.5,1)\), and in a critical-damped state when \(\mu = 0.5\).

Ranging code tracking process based on the proposed algorithm

The principle of code multipath mitigation and the steepest descent method have been introduced previously. In this section, a new ranging code tracking loop is designed according to (7) and shown in Fig. 3.

Fig. 3
figure 3

Proposed ranging code tracking loop. If the iteration process of \(\tau\) adopts the left partial derivative of the cost function, this method needs the late branch \(L\) and the punctual branch \(P\). If the iteration process of \(\tau\) employs the right partial derivative of the cost function, this method utilizes the early branch \(E\) and the punctual branch \(P\). IF is the abbreviation of intermediate frequency. NCO is the abbreviation of numerical controlled oscillator

As seen in Fig. 3, the proposed ranging code tracking loop is divided into four steps. The first step is to mix the received IF signal with two orthogonal local signals. The second step is to multiply the early code and the punctual code, or the late code and the punctual code generated locally with the signal entering the second step. The third step is an integral process, and the fourth step is to control the ranging code NCO based on the steepest descent. These four steps are described in detail below.

  • Step 1: Carrier mixing

    It is assumed that the structure of discrete IF signal input to the tracking loop is shown as

    $$x(n) = AC(n)D(n)\cos (w_{I} n + \theta_{0} )$$
    (9)

    where \(A\) is the amplitude of the signal \(x(n)\), \(C(n)\) is the ranging code sequence, \(D(n)\) is the message code sequence, \(w_{I}\) is the angular rate, and \(\theta_{0}\) is the initial phase. The carrier mixing process is to mix the IF signal with two orthogonal local signals and shown as

    $$\begin{aligned} i(n) = & \left( {x(n)} \right)\left( {\cos (w_{I} n + \theta_{1} )} \right) \\ = & AC(n)D(n)\cos (\theta_{0} - \theta_{1} ) + AC(n)D(n)\cos (2w_{I} n + \theta_{0} + \theta_{1} ) \\ q(n) = & \left( {x(n)} \right)\left( {\sin (w_{I} n + \theta_{1} )} \right) \\ = & - AC(n)D(n)\sin (\theta_{0} - \theta_{1} ) + AC(n)D(n)\sin (2w_{I} n + \theta_{0} + \theta_{1} ) \\ \end{aligned}$$
    (10)

    where \(\theta_{1}\) is the initial phase of the local carrier signal.

  • Step 2: Strip the ranging code away

    If the left partial derivative of the cost function is applied in the iteration process of \(\tau\), the local late code and the local punctual code are utilized in this step. Similarly, if the right partial derivative of the cost function is adopted in the iteration process of \(\tau\), the local early code and the local punctual code are employed. Taking the iteration process based on the left partial derivative as an example, the stripping process of ranging code is shown as

    $$\begin{aligned} i_{L} (n) = & i(n)C(n - d) \\ {\kern 1pt} = & AR(\hat{\tau } - d)D(n)\cos (\theta_{0} - \theta_{1} ) + AR(\hat{\tau } - d)D(n)\cos (2w_{I} n + \theta_{0} + \theta_{1} ) \\ i_{P} (n) = & i(n)C(n) \\ = & AR(\hat{\tau })D(n)\cos (\theta_{0} - \theta_{1} ) + AR(\hat{\tau })D(n)\cos (2w_{I} n + \theta_{0} + \theta_{1} ) \\ q_{L} (n) = & q(n)C(n - d) \\ = & - AR(\hat{\tau } - d)D(n)\sin (\theta_{0} - \theta_{1} ) + AR(\hat{\tau } - d)D(n)\sin (2w_{I} n + \theta_{0} + \theta_{1} ) \\ q_{P} (n) = & q(n)C(n) \\ = & - AR(\hat{\tau })D(n)\sin (\theta_{0} - \theta_{1} ) + AR(\hat{\tau })D(n)\sin (2w_{I} n + \theta_{0} + \theta_{1} ) \\ \end{aligned}$$
    (11)

    where \(R( \cdot )\) is the autocorrelation function of the ranging code, \(\hat{\tau }\) is the phase difference between the local ranging code and the modulation code in the received signal, and \(d\) is the punctual-late spacing.

  • Step 3: Integral process

    An integrator has the function of low-pass filtering, and the process is independent of navigation data since the integration time is set as 1 ms. So the integrated signal is shown as

    $$\begin{aligned} I_{L} = & \frac{1}{{Tf_{s} }}\sum\limits_{n = 1}^{{Tf_{s} }} {i_{L} (n)} \approx AR(\hat{\tau } - d)\cos (\theta_{0} - \theta_{1} ) \\ I_{P} = & \frac{1}{{Tf_{s} }}\sum\limits_{n = 1}^{{Tf_{s} }} {i_{P} (n)} {\kern 1pt} \approx AR(\hat{\tau })\cos (\theta_{0} - \theta_{1} ) \\ Q_{L} = & \frac{1}{{Tf_{s} }}\sum\limits_{n = 1}^{{Tf_{s} }} {q_{E} (n)} \approx - AR(\hat{\tau } - d)\sin (\theta_{0} - \theta_{1} ) \\ Q_{p} = & \frac{1}{{Tf_{s} }}\sum\limits_{n = 1}^{{Tf_{s} }} {q_{p} (n)} \approx - AR(\hat{\tau })\sin (\theta_{0} - \theta_{1} ) \\ \end{aligned}$$
    (12)

    where \(T\) is the integration time, which is usually set as an integral multiple of the ranging code period, and \(f_{s}\) is the sampling rate.

  • Step 4: The iteration process of \(\tau\).

    To reduce the influence of the carrier on the ranging code tracking loop, the I / Q branch signal should be processed as follows

    $$\begin{aligned} S_{L} = & \sqrt {I_{L}^{2} + Q_{L}^{2} } \;\, = \;AR(\hat{\tau } - d) \\ S_{P} = & \sqrt {I_{P}^{2} + Q_{P}^{2} } = AR(\hat{\tau }) \\ \end{aligned}$$
    (13)

    The amplitude \(A\) of signal \(x(n)\) can be regarded as a constant in a short time, and the peak value of the autocorrelation function \(R( \cdot )\) is 1. Therefore, the maximum value of \(S_{L}\) or \(S_{P}\) in a short time can be applied to normalize (13), and the normalization process is shown as

    $$\begin{aligned} \overline{S}_{L} = & S_{L} /S_{\max } \approx R(\hat{\tau } - d) \\ \overline{S}_{P} = & S_{P} /S_{\max } \approx R(\hat{\tau }) \\ \end{aligned}$$
    (14)

    where \(S_{\max }\) is the maximum value of \(S_{L}\) or \(S_{P}\) in a short time. According to the definition of the cost function \(P_{F} ( \cdot )\) in (5), the new cost function \(P_{F} ( \cdot )\) can be described as

    $$\begin{aligned} P_{F} (\overline{S}_{L} ) = & (1 - \overline{S}_{L} )^{2} \\ P_{F} (\overline{S}_{P} ) = & (1 - \overline{S}_{P} )^{2} \\ \end{aligned}$$
    (15)

    The iteration process of \(\tau\) can be obtained by taking (15) into (7), which can be described as

    $$\begin{aligned} \tau_{k + 1} = & \tau_{k} - \mu \frac{{\partial P_{F} }}{\partial \tau }\left| {_{{k^{ - } }} } \right. \\ = & \tau_{k} - \mu \frac{{P_{F} (\overline{S}_{P} )\left| {_{k} } \right. - P_{F} (\overline{S}_{L} )\left| {_{k} } \right.}}{d} \\ \end{aligned}$$
    (16)

    where \(P_{F} (\overline{S}_{P} )\left| {_{k} } \right.\) is the cost value of the punctual correlator at the moment. \(P_{F} (\overline{S}_{L} )\left| {_{k} } \right.\) is the cost value of the late correlator at the moment. \(\frac{{\partial P_{F} }}{\partial \tau }\left| {_{{k^{ - } }} } \right.\) is the left derivation of \(P_{F} ( \cdot )\) with respect to \(\tau\) at the moment. Similarly, if the right partial derivative of the cost function is employed, the iteration process of \(\tau\) can be expressed as

    $$\begin{aligned} \tau_{k + 1} = & \tau_{k} - \mu \frac{{\partial P_{F} }}{\partial \tau }\left| {_{{k^{ + } }} } \right. \\ = & \tau_{k} - \mu \frac{{P_{F} (\overline{S}_{E} )\left| {_{k} } \right. - P_{F} (\overline{S}_{P} )\left| {_{k} } \right.}}{d} \\ \end{aligned}$$
    (17)

    where \(P_{F} (\overline{S}_{E} )\left| {_{k} } \right.\) is the cost value of the early correlator at the moment. \(\frac{{\partial P_{F} }}{\partial \tau }\left| {_{{k^{ + } }} } \right.\) is the right derivation of \(P_{F} ( \cdot )\) with respect to \(\tau\) at the moment.

Experiments

To verify the effectiveness of the proposed algorithm, a set of tests was conducted with the BeiDou Navigation Satellite System (BDS) B1I signal (Li et al., 2020; Zhao et al., 2022) and Global Positioning System (GPS) (Wang, Ji, et al., 2015) L1 signals. The simulation test verifies the code multipath mitigation performance of the proposed algorithm. The real-world short-term test and long-term test confirm the practicability of code multipath mitigation. Considering the simple structure of the narrow-spacing correlation and the high tracking accuracy of the MEDLL, the narrow-spacing correlation and the MEDLL algorithm were adopted to evaluate the multipath mitigation performance. The punctual-late spacing employed for the narrow-spacing correlation is set to 0.05 chips, and the correlator numbers leveraged for the MEDLL algorithm are set to 65.

Simulation test

We designed a series of IF satellite signals interfered by NLOS signal or noise based on (1) to verify the performances in the following three situations.

  • If no NLOS signal is combined with the LOS signal, the influence of the control step \(\mu\) on the tracking performance under different CNRs is discussed.

  • If only one NLOS signal is added to the LOS signal, and the CNR of the LOS signal is set as 43 dB·Hz, the impact of the amplitude of the NLOS signal on the tracking error is analyzed.

  • If only one NLOS signal is combined with the LOS signal, and the noise and bandwidth are not considered, the code multipath mitigation performance is studied with the multipath error envelope.

The simulation parameters are given in Table 1, and the influence of the control step on tracking error under different CNRs is illustrated in Fig. 4.

Table 1 Simulation parameters
Fig. 4
figure 4

Influence of control step on tracking error under different CNRs

Figure 4 demonstrates the influence of the control step on tracking error under different CNRs. The curvature of the cost function changes gently when the tracking error approaches zero. The tracking error is difficult to converge to zero if a small control step is adopted. The influence of noise on tracking error is the smallest when the control step is within the range of \([0.6,0.8]\). When the control step is within the range of \([0.2,0.9]\) and the CNR is 43 dB·Hz or 53 dB·Hz, the tracking error of less than the set punctual-late spacing 0.1 chips has a probability of over 95%. The impact of the amplitude of the NLOS signal on the tracking error is analyzed. Based on Table 1, the NLOS signal delay is set as 0.2 chips, and the CNR is set as 43 dB·Hz. The results are shown in Fig. 5.

Fig. 5
figure 5

Influence of the amplitude of the NLOS signal on the tracking error

Figure 5 shows the effect of the amplitude of the NLOS signal on the tracking error. The tracking error increases with an increase in the amplitude of the NLOS signal. When the system is in the under-damped state, the tracking error is less than that for the over-damped state and within 0.1 chips with a probability over 95%.

Since the multipath error envelope (Townsend et al., 1995) is always utilized to evaluate the code multipath mitigation performance, we adopt this curve to verify the advantages of the proposed algorithm. If only one NLOS signal is combined with the LOS signal and the noise and bandwidth are not considered, the multipath signal delay varies from 0 to 1.5 chips with an increment of 0.062 5 chips. The multipath error envelope is shown in Fig. 6.

Fig. 6
figure 6

Comparison of the error envelopes with \(\sigma_{s} = 0.5\), in the condition of only one NLOS signal combined with the LOS signal and no consideration of the noise and bandwidth

Figure 6 reveals the proposed algorithm outperforms other methods in code multipath mitigation. It is also remarkable that the MEDLL is better than the narrow-spacing correlation. The proposed algorithm is based on the phenomenon that the peak position in the X-axis of the ranging code autocorrelation function does not move with the NLOS interference. In theory, ignoring the noise and bandwidth, the tracking accuracy of the proposed algorithm is not affected by NLOS signals. The multipath error envelope of the proposed algorithm in Fig. 6 verifies this conclusion.

Real-world short-term test

A multipath test system was designed to receive and confirm the real-world NLOS interfering signals, as shown in Figs. 7 and 8. Antennas A and B were used to verify that the satellite signals received by antenna C were interfered by NLOS signals. We placed antennas A and B in plastic buckets with holes to obtain the LOS signals arriving from different orientations. The upper of the bucket utilized to place antenna A was covered with a tin foil, while the periphery and bottom of the bucket leveraged to put antenna B were wrapped with a tin foil. The tin foil was adopted to separate satellite signals. The LOS signals for antenna C came from areas A and B. If the satellite signals received by antenna A are not from area A, the satellite signal is considered as an NLOS signal. Similarly, if the satellite signal received by antenna B is not from area B, the satellite signal is also considered an NLOS signal.

Fig. 7
figure 7

Experimental setup. The top panel demonstrates the panoramic view of antenna placement environment. The middle panel exhibits the close shot of antenna placement environment. The bottom panel illustrates the three antennas and three receivers

Fig. 8
figure 8

Receiving areas where the LOS signals come from for the three antennas

The three antennas receive the signals at the same time. The CNRs of the satellites obtained by antenna A and antenna B are shown in Fig. 9. The information on the satellites observed by antenna A and B is shown in Table 2.

Fig. 9
figure 9

CNR of the satellite from antenna A and antenna B

Table 2 Information on the satellites observed by antenna A and B

According to the information in Table 2, satellites Pseudo Random Noise (PRN) number 3 and 17 can be detected only by antenna A, but in reality both antenna A and B simultaneously got the signals from satellites PRN3 and PRN5. This indicates that the signals of these satellites received by antenna C are interfered by NLOS signals. The four satellite signals collected by an IP-solutions sampler connected to antenna C were processed, and the results are shown in Fig. 10.

Fig. 10
figure 10

Tracking results. The first to fourth columns show the tracking results of PRN 3, 17, 19 and 22

From Fig. 10, the MEDLL needs a longer convergence time than the narrow-spacing correlation and the proposed algorithm. The maximum tracking error of the three algorithms is less than 0.2 chips in the stable tracking state. The tracking accuracy of the proposed algorithm is better than that of the MEDLL, and that of the narrow-spacing correlation is the worst. To analyze the performance of the three algorithms, we listed their tracking errors, including Standard Deviation (STD) and mean error (Mean), in the stable tracking state in Table 3.

Table 3 Tracking error

Table 3 tells that the mean error of the three multipath mitigation algorithms is negligible, and the tracking accuracy of the proposed algorithm is better than those of the MEDLL and the narrow-spacing correlation. The tracking accuracy of the proposed algorithm is improved by at least 27.78% over the MEDLL.

Real-world long-term test

Cannon (2001) mentioned the oscillation of the long-term measurement data existed in multipath environments. If similar oscillations can be observed in two sets of satellite observation data with an interval of integer orbital periods, the data is likely to be interfered by NLOS signals. Therefore, two long-term measurements were carried out at antenna C in the real-world short-term test. The first measurement was conducted from 03:40 to 06:10 Coordinated Universal Time (UTC) on July 14, 2021. The second measurement was carried out from 03:36 to 06:06 UTC, on July 15, 2021. Two measurements were separated by an interval of two orbital periods of 23 h and 56 min. The measurement CNR of PRN 6 is shown in Fig. 11.

Fig. 11
figure 11

CNR of PRN 6 in the first and second long-term measurements. The IF data collected between the start and second 1 200 highlighted by a red dot rectangle were solved with the narrow-spacing correlation, the MEDLL, and the proposed algorithm

Figure 10 demonstrates the repeatability of the first and second measurement data and the oscillation from the start to the second 9 000, which indicates that the received signal of PRN 6 is interfered by NLOS signals. The IF signals of PRN 6 collected by the IP-solutions sampler connected to antenna C in the second long-term measurement were processed. The results are shown in Fig. 12.

Fig. 12
figure 12

Long-term tracking results of PRN 6. The top to bottom panels show the tracking results with the narrow-spacing correlation, the MEDLL, and the proposed algorithm, respectively

Figure 12 exhibits two basic phenomena. The first one is that the amplitude of the tracking error with the proposed algorithm is stable during the whole tracking stage, which is consistent with the fact that the proposed algorithm is not affected by NLOS signals in theoretical analysis. The second one is that the STDs of the tracking error with the narrow-spacing correlation, the MEDLL, and the proposed algorithm are 0.088 chips, 0.031 chips, and 0.016 chips, respectively. The proposed algorithm has a smaller tracking error than the other two methods.

Computation time

Figure 3 indicates that the proposed algorithm needs the late branch and the punctual branch, or the early branch and the punctual branch. The punctual branch needs to be adopted for carrier tracking. The punctual branch adopted in the proposed ranging code tracking loop is also employed for carrier tracking. Compared to the narrow-spacing correlation that early branch and late branch are not adopted by carrier tracking, our algorithm saves the late branch or the early branch for GNSS receivers. To verify the improvement in computation efficiency due to saving one branch, we recorded the time taken with the three multipath mitigation algorithms in offline processing the collected 12 s data in the short-term test. The three multipath suppression algorithms run on the Intel (R) Core (TM) i5-9400F CPU@2.9 GHz processor. The computation time is shown in Table 4.

Table 4 Time spent processing 12 s satellite data

Compared with the narrow-spacing correlation and the MEDLL, the proposed algorithm takes the least time. The narrow-spacing correlation method takes 13.708 s to offline process the 12 s data, while only 10.390 s to process the same data with the proposed algorithm. The proposed algorithm reduces 24.21% of the computation time compared with the narrow-spacing correlation.

Conclusions

A new code multipath mitigation algorithm is proposed based on the steepest descent method for GNSS signals without any external assistance. The proposed algorithm has a shorter computation time than the narrow-spacing correlation method and better multipath mitigation performance than the MEDLL. The experiments demonstrate that the proposed algorithm shortens the computation time by 24.21% compared with the narrow-spacing correlation and improves the tracking accuracy by 27.78% compared with the MEDLL. However, the proposed algorithm has poor anti-interference ability because it is based on the assumption that the LOS signal power is greater than the NLOS signal power.

Availability of data and materials

Data sharing is not applicable to this article as no datasets were generated or analyzed during the current study.

References

  • Axelrad, P., Comp, C., & Macdoran, P. (1996). SNR-based multipath error correction for GPS differential phase. IEEE Transactions on Aerospace and Electronic System, 32(2), 650–660.

    Article  Google Scholar 

  • Blanco-Delgado, N., & Nunes, F. (2010). Satellite selection method for multi-constellation GNSS using convex geometry. IEEE Transactions on Vehicular Technology, 59(9), 4289–4297.

    Article  Google Scholar 

  • Blanco-Delgado, N., & Nunes, F. (2012). Multipath estimation in multicorrelator GNSS receivers using the maximum likelihood principle. IEEE Transactions on Aerospace and Electronic Systems, 48(4), 3222–3233.

    Article  Google Scholar 

  • Chen, X., Dovis, F., Peng, S., & Morton, Y. (2013). Comparative studies of GPS multipath mitigation methods performance. IEEE Transactions on Aerospace and Electronic Systems, 49(3), 1555–1568.

    Article  Google Scholar 

  • Chen, C., Chang, G., Zheng, N., & Xu, T. (2019). GNSS multipath error modeling and mitigation by using sparsity-promoting regularization. IEEE Access, 7(1), 24096–24108.

    Article  Google Scholar 

  • Dai, W., Huang, D., & Cai, C. (2014). Multipath mitigation via component analysis methods for GPS dynamic deformation monitoring. GPS Solutions, 18(3), 417–428.

    Article  Google Scholar 

  • Hsu, L., Jan, S., Groves, P., & Kubo, N. (2015). Multipath mitigation and NLOS detection using vector tracking in urban environments. GPS Solutions, 19(2), 249–262.

    Article  Google Scholar 

  • Jia, Q., Wu, R., Wang, W., Lu, D., Wang, L., & Li, J. (2017). Multipath interference mitigation in GNSS via WRELAX. GPS Solutions, 21(2), 487–498.

    Article  Google Scholar 

  • Jiang, Z., & Groves, P. (2012). NLOS GPS signal detection using a dual-polarisation antenna. GPS Solutions, 18(1), 15–26.

    Article  Google Scholar 

  • Kbayer, N., & Sahmoudi, M. (2018). Performances analysis of GNSS NLOS bias correction in urban environment using a three-dimensional city model and gnss simulator. IEEE Transactions on Aerospace and Electronic Systems, 54(4), 1799–1814.

    Article  Google Scholar 

  • Li, R., Zheng, S., Wang, E., Chen, J., Feng, S., Wang, D., & Dai, L. (2020). Correction to: Advances in BeiDou navigation satellite system (BDS) and satellite navigation augmentation technologies. Satellite Navigation, 1(12), 1–12.

    Google Scholar 

  • Liu, Z., Huang, L., Tang, X., & Wang, F. (2016). Multipath mitigation strobe for global navigation satellite system receivers. Electronics Letters, 52(11), 962–963.

    Article  Google Scholar 

  • Maqsood, M., Gao, S., Brown, T., Unwin, M., Van Steenwijk, R., & Xu, J. (2013). A compact multipath mitigating ground plane for multiband GNSS antennas. IEEE Transactions on Antennas Propagation Magazine, 61(5), 2775–2782.

    Article  Google Scholar 

  • Moradi, R., Schuster, W., Feng, S., Jokinen, A., & Ochieng, W. (2015). The carrier-multipath observable: A new carrier-phase multipath mitigation technique. GPS Solutions, 19(1), 73–82.

    Article  Google Scholar 

  • Ng, H., & Hsu, L. (2021). 3D mapping database-aided GNSS RTK and its assessments in urban canyons. IEEE Transactions on Aerospace and Electronic Systems, 57(5), 3150–3166.

    Article  Google Scholar 

  • Nur, K., Feng, S., Ling, C., & Ochieng, W. (2013). Integration of GPS with a WiFi high accuracy ranging functionality. GEO-Spatial Information Science, 16(3), 155–168.

    Article  Google Scholar 

  • Pesonen, H. (2011). A framework for bayesian receiver autonomous integrity monitoring in urban navigation. Navigation, 58(3), 229–240.

    Article  Google Scholar 

  • Qin, H., Xue, X., & Yang, Q. (2019). GNSS multipath estimation and mitigation based on particle filter. IET Radar, Sonar & Navigation, 13(9), 1588–1596.

    Article  Google Scholar 

  • Ray, J., Cannon, M., & Fenton, P. (2001). GPS code and carrier multipath mitigation using a multiantenna system. IEEE Transactions on Aerospace and Electronic Systems, 37(1), 183–195.

    Article  Google Scholar 

  • So, H., Kim, G., Lee, T., Jeon, S., & Kee, C. (2009). Modified high-resolution correlator technique for short-delayed multipath mitigation. The Journal of Navigation, 62(3), 523–542.

    Article  Google Scholar 

  • Su, M., Zheng, J., Yang, Y., & Wu, Q. (2018). A new multipath mitigation method based on adaptive thresholding wavelet denoising and double reference shift strategy. GPS Solutions, 22(1), 1–12.

    Article  Google Scholar 

  • Sun, R., Hsu, L., Xue, D., Zhang, G., & Ochieng, W. (2019). GPS signal reception classification using adaptive neuro-fuzzy inference system. Journal of Navigation, 72(1), 685–701.

    Article  Google Scholar 

  • Tamazin, M., Noureldin, A., Korenberg, M., et al. (2016). A new high-resolution GPS multipath mitigation technique using fast orthogonal search. The Journal of Navigation, 69(04), 794–814.

    Article  Google Scholar 

  • Van Dierendonck, A., Fenton, P., & Ford, T. (1992). Theory and performance of narrow correlator spacing in a GPS receiver. Navigation, 39(3), 265–283.

    Article  Google Scholar 

  • Wang, Y., & Huang, Z. (2020). MEDLL on-strobe correlator: A combined anti-multipath technique for GNSS signal tracking. The Journal of Navigation, 73(3), 658–677.

    Article  Google Scholar 

  • Wang, G., Jong, K., Zhao, Q., Hu, Z., & Guo, J. (2015). Mutipath analysis of code measurements for BeiDou geostationary satellites. GPS Solutions, 19(1), 129–139.

    Article  Google Scholar 

  • Wang, X., Ji, X., Feng, S., & Calmettes, V. (2015). A high-sensitivity GPS receiver carrier-tracking loop design for high-dynamic applications. GPS Solutions, 19(2), 225–236.

    Article  Google Scholar 

  • Wen, W., Bai, X., Kan, Y., & Hsu, L. (2019). Tightly coupled GNSS/INS integration via factor graph and aided by fish-eye camera. IEEE Transactions on Vehicular Technology, 68(11), 10651–10662.

    Article  Google Scholar 

  • Wen, W., Zhang, G., & Hsu, L. (2020). Object detection aided GNSS and Its integration with LiDAR in highly urbanized areas. IEEE Intelligent Transportation Systems Magazine, 12(3), 53–69.

    Article  Google Scholar 

  • Wu, J., Tang, X., Li, Z., Li, C., & Wang, F. (2019). Cascaded interference and multipath suppression method using array antenna for GNSS receiver. IEEE Access, 7(1), 69274–69282.

    Article  Google Scholar 

  • Xu, H., Angrisano, A., Gaglione, S., & Hsu, L. (2020). Machine learning based LOS/NLOS classifier and robust estimator for GNSS shadow matching. Satellite Navigation, 1(15), 1–12.

    Google Scholar 

  • Zeng, Q., Qiu, W., Liu, J., Xu, R., Shi, J., & Sun, Y. (2021). A high dynamics algorithm based on steepest ascent method for GNSS receiver. Chinese Journal of Aeronautics, 34(12), 177–186.

    Article  Google Scholar 

  • Zhang, Q., Yang, W., Zhang, S., & Liu, X. (2018). Characteristics of BeiDou navigation satellite system multipath and its mitigation method based on Kalman filter and rauch-tung-striebel smoother. Sensors, 18(1), 1–20.

    Article  Google Scholar 

  • Zhang, G., Ng, H., Wen, W., & Hsu, L. (2021). 3D mapping database aided GNSS based collaborative positioning using factor graph optimization. IEEE Transactions on Intelligent Transportation Systems, 22(10), 6175–6187.

    Article  Google Scholar 

  • Zhao, Q., Guo, J., Wang, C., Lyu, Y., Xu, X., Yang, C., & Li, J. (2022). Precise orbit determination for BDS satellites. Satellite Navigation, 3(2), 1–24.

    Google Scholar 

  • Zheng, D., Zhong, P., Ding, X., & Chen, W. (2005). Filtering GPS timeseries using a Vondraklter and cross-validation. Journal of Geodesy, 79(6), 363–369.

    Article  Google Scholar 

  • Ziedan, N. (2022). MAI modeling and mitigation for GNSS acquisition in urban environments. IEEE Transactions on Aerospace and Electronic Systems, 58(1), 541–551.

    Article  Google Scholar 

  • Chen X., Dovis F., Pini M. (2010). An innovative multipath mitigation method using coupled amplitude delay lock loops in GNSS receivers. In Proc. IEEE/ION PLANS 2010, Institute of electrical and electronic engineers, Indian Wells, CA, USA, May 4–6, (pp. 1118–1126).

  • Egea-Roca D., Tripiana-Caballero A., López-Salcedo J., Seco-Granados G., Wilde W., Bougard B., Sleewaegen J., Popugaev A. (2018). GNSS measurement exclusion and weighting with a dual polarized antenna: the FANTASTIC project. In Proc. ICL-GNSS, Institute of electrical and electronic engineers, Guimaraes, Portugal, June 26–28, (pp. 2325–0771).

  • Fenton P., Jones J. (2005). The theory and performance of NovAtel Inc.’s vision correlator. In Proc. ION GNSS 2005, Institute of Navigation, Long Beach, CA, September 13–16, (pp. 2178–2186).

  • Jiang Z., Groves P., Ochieng W., Feng S., Milner C., Mattos P. (2011). Multi-constellation GNSS multipath mitigation using consistency checking. In Proc. ION GNSS 2011, Institute of navigation, Portland, USA. September 20–23, (pp. 3889–3902).

  • Klimenko M., Veitsel A. (2021). Evaluation of neural network-based multipath mitigation approach for the GNSS receivers. In Proc. SYNCHROINFO, Institute of electrical and electronic engineers, Kaliningrad, Russia, June 30, (pp. 1–5).

  • Kumar R., Petovello M. (2015). 3D building model-assisted multipath signal parameter estimation. In Proc. IEEE IPIN 2015, Banff, AB, Canada, October 13–16, (pp. 1–9).

  • McGraw G., Young R., Reichenauer K., Stevens J., Ventrone A. (2004). GPS multipath mitigation assessment of digital beam forming antenna technology in a JPALS dual frequency smoothing architecture. In Proc. ION 2004, Institute of navigation, San Diego, CA, January 26–28, (pp. 561–572).

  • Van Nee D., Siereveld J., Fenton P., Townsend B. (1994). The multipath estimating delay lock loop: approaching theoretical accuracy limits. In Proc. IEEE PLANS 1994, Institute of electrical and electronic engineers, Las Vegas, NV, USA, April 11–15, (pp. 246–251).

  • Philippov V., Sutiagin I., Ashjaee J. (1999). Measured characteristics of dual depth dual frequency choke ring for multipath rejection in GPS receivers. In Proc. ION GPS 1999, Institute of navigation, Nashville, TN, USA. September 14–17, (pp. 793–796).

  • Sokhandan N. (2013). A novel multipath estimation and tracking algorithm for urban GNSS navigation applications. In Proc. ION GNSS 2013, Institute of navigation, Nashville, TN, USA. September 16–20, (pp. 2723–2738).

  • Townsend B., Van Nee D., Fenton P., Van Dierendonck K. (1995). Performance evaluation of the multipath estimating delay lock loop. In Proc. ION 2013, Institute of navigation, Anaheim, California, USA. January 18–20, (pp. 1–7).

  • Weill L. (2002). Multipath mitigation using modernized GPS signals How good can it get. In Proc. ION GPS 2002, Institute of navigation, Portland, OR, September 24–27, (pp. 493–505).

  • Yan S., Yan Z. (2017). The research on multipath mitigation of GNSS in intelligent crane. Proc. ICMA, Institute of Electrical and Electronic Engineers, Takamatsu, Japan, August 6–9, (pp. 869–874).

  • Zhang, R., Qin, H., Zhou, Z., & Li, B. (2020). GNSS multipath mitigation algorithm with antenna arrays based on matrix reconstruction. In Proc.ICCT, Institute of electrical and electronic engineers, Nanning, China, Oct. 28–31, (pp. 881–887).

Download references

Acknowledgements

The authors appreciate the valuable suggestions and discussions with Prof. Andrew H. Kemp of Leeds University.

Funding

This work is funded by the National Natural Science Foundation of China (NO. 61533008, 61603181,61673208,61873125).

Author information

Authors and Affiliations

Authors

Contributions

Wenqi Qiu and Qinghua Zeng proposed the idea and wrote the original draft; Rui Xu and Jianye Liu assisted in carrying out the real-world test and significantly revised the manuscript; Jinheng Shi and Qian Meng assisted in carrying out the simulation test. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Qinghua Zeng.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Qiu, W., Zeng, Q., Xu, R. et al. A multipath mitigation algorithm for GNSS signals based on the steepest descent approach. Satell Navig 3, 14 (2022). https://doi.org/10.1186/s43020-022-00077-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/s43020-022-00077-z

Keywords