Open Access

Performance analysis of GNSS multipath mitigation using antenna arrays

The Journal of Global Positioning Systems201614:4

DOI: 10.1186/s41445-016-0004-6

Received: 28 May 2016

Accepted: 7 September 2016

Published: 4 November 2016


Multipath affects the shape of the correlation function and results in biased pseudorange measurements and erroneous navigation solutions. Antenna array processing, which uses signal spatial characteristics, is an effective method to mitigate various types of interference signals. However, the performance of most of the distortionless beamforming techniques degrades in multipath conditions due to the correlation between the desired Line of Sight (LOS) signal and multipath signals. This paper characterizes the performance of different beamforming techniques to mitigate multipath signals through the processing and analysis of simulated and actual data. The main novelty is the investigation of multipath mitigation performance of practically realizable antenna array-based GNSS receivers when the beamforming process is completely integrated into the tracking module after de-spreading. Beamforming techniques such as Delay And Sum (DAS) beamforming, Minimum Power Distortionless Response (MPDR) with and without spatial smoothing are considered. A novel multi-antenna simulator test-bed is developed to generate multipath signals for a multi-antenna platform. A software multi-antenna GPS receiver incorporating different beamforming techniques is then developed to generate pseudorange measurements and position solutions. Carrier-to-Noise ratio (C/N0), pseudorange errors and position solutions before and after beamforming are compared to show the effectiveness of different beamforming techniques to mitigate multipath. Results with simulated and actual GPS signals show improved performance using the MPDR beamformer with spatial smoothing. The utilization of spatial processing results in a pseudorange error reduction of up to 60 % and a position error reduction of up to 30 %.


GPS Multipath Beamforming MPDR Software simulator


Although modern GNSS receivers provide high accuracy positioning and navigation solutions in open sky conditions, multipath remains a major error source in many environments. Multipath results in a distorted correlation function that is used to estimate delays and pseudoranges. This results in erroneous navigation solutions. Multipath also leads to incorrect ambiguity resolution affecting carrier phase positioning. If the multipath pseudorange error becomes large, the initial position solution is biased and the carrier phase ambiguity search space can be enlarged, resulting in longer ambiguity resolution time (Joosten et al. 2002). Long-delay code multipath caused by distant reflectors can be mitigated using currently available advanced correlator techniques such as Narrow Correlator™ (Dierendonck et al. 1992), Multipath Estimating Delay Locked Loop (MEDLL) (Van Nee et al. 1994) and Edge Correlator (Garlin et al. 1996) to name a few. However, multipath due to nearby reflectors is still a major problem for correlator-based techniques.

Antenna array processing, a signal processing scheme that exploits the signal spatial features, is proven to be effective in mitigating different types of interference. Even though antenna array processing is well studied for wireless communication systems, the application of these techniques to GNSS differ from those systems. For instance, in most wireless communication systems, increasing the signal to noise ratio to reduce bit error rate is the main focus; for GNSS the focus is to improve time-delay estimation to improve estimated position accuracy. The effectiveness of different beamforming techniques for GNSS applications was studied in (Fern’andez-Prades et al. 2016; Gupta et al. 2016; Broumandan et al. 2016; Cuntz et al. 2016; Amin et al. 2016; Daneshmand et al. 2014; Arribas et al. 2014; Egea et al. 2014; Kalyanaraman and Braasch 2007; Kalyanaraman and Braasch 2010). Most of the distortionless beamforming techniques are developed with the assumption that there is no correlation between desired and interference signals. However, performance of these beamforming techniques degrades in multipath interference because there is a high degree of correlation between desired and multipath signals (Van Trees 2002). The effectiveness of antenna arrays to mitigate multipath interference has been studied through different robust beamforming techniques in GNSS applications (Brown 2000; Fu et al. 2003; Seco-Granados et al. 2005; Sahmoudi and Amin 2007; Konovaltsev et al. 2007; Vicario et al. 2010; Fern’andez-Prades et al. 2011; Daneshmand et al. 2013a; Manosas-Caballu et al. 2013; Rougerie et al. 2011; Rougerie et al. 2012; Lee and Hsiao 2008). Sahmoudi and Amin (2007) used adaptive beamforming and high resolution direction finding methods to improve robustness against multipath and electronic interference. Vicario et al. (2010) analyzed robust beamforming techniques for Galileo ground stations and shown a reduction of tracking errors by 47 %. Fernández-Prades et al. (2011) studied the inherent capability of different eigen beamforming techniques to mitigate multipath through simulations. Some of these techniques assume either a linear array or a large planar array which is not however feasible for practical applications. Efficient maximum likelihood techniques to mitigate multipath are not practical for many applications due to their high computational burden. Even though the results from the previous research have shown that effective multipath mitigation is possible, the performance of antenna array based GNSS receivers in terms of time-delay estimation and position accuracy has not been analyzed extensively. Such performance is therefore assessed herein in terms of measurement and position accuracy through different beamforming techniques.

The focus is on short-range multipath signals with specular reflections. As GNSS signals are below the noise level before the correlation process, spatial processing to mitigate multipath signals is mostly performed after the de-spreading process (i.e., correlation and Doppler removal) (Arribas et al. 2012; Chen et al. 2012). The inherent capability of DAS and MPDR beamformers to mitigate multipath are studied first without any preprocessing to decorrelate the LOS and multipath signals. A preprocessing technique called spatial smoothing is used to decorrelate the signals. This process consists of two stages. In the first stage, spatial smoothing is used later to decorrelate LOS and multipath signals while in the second stage, spatially smoothed signals are combined using the MPDR beamformer. Measurement and position results from simulated and actual GPS signals are provided.

The system model and the main assumptions are outlined in Section II. Effects of multipath on antenna array processing techniques and the decorrelation effect due to spatial smoothing are discussed in Section III. In Section IV, GPS multi-antenna signal simulation methodology using a ray tracing method and beamforming implementation is discussed. The results of multipath mitigation using simulated signals are presented in Section V and actual GPS signal processing results are provided in Section VI. Finally, Section VII summarizes the findings.


Throughout this paper, the following notations are adopted: small bold letters represent vectors and capital bold letters represent matrices. Superscripts H and T represent complex conjugate transpose and transpose, respectively. A particular element in a rectangular array is represented within parentheses as in (a, b), the subarray is represented within square brackets as in [a, b] and the subarray size is represented within braces as in {a, b}. The symbol a represents a quantity in the x-direction and b a quantity in the y-direction. The direction of the signal is represented as (Elevation, Azimuth).

Signal and system model

Consider the case of a GNSS receiver equipped with an M × N element uniform rectangular array. The elements are lying in the x-y plane and are spaced by d m in the x-direction and d n in the y-direction as shown in Fig. 1.
Fig. 1

Uniform rectangular array configuration

The signals impinging on the antenna array are the desired signals, multipath and noise. For simplicity, signals from only one satellite are considered below. After down-conversion and sampling, the digitized signal received at the (m, n) th antenna element can be expressed as (Van Trees 2002)
$$ {\mathit{\mathsf{x}}}_{\mathit{\mathsf{m}},\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}}\right)={\displaystyle \sum_{\mathit{\mathsf{k}}=\mathsf{1}}^{\mathit{\mathsf{K}}}{\mathit{\mathsf{s}}}_{\mathit{\mathsf{k}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}}\right)}{\operatorname{e}}^{\mathit{\mathsf{j}}\frac{\mathsf{2}\pi }{\lambda}\left[\left(\mathit{\mathsf{m}}-\mathsf{1}\right){\mathit{\mathsf{d}}}_{\mathit{\mathsf{m}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right) \sin \left({\phi}_{\mathit{\mathsf{k}}}\right)+\left(\mathit{\mathsf{n}}-\mathsf{1}\right){\mathit{\mathsf{d}}}_{\mathit{\mathsf{n}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right) \cos \left({\phi}_{\mathit{\mathsf{k}}}\right)\right]}+{\mathit{\mathsf{v}}}_{\mathit{\mathsf{m}}\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}}\right) $$
where \( {\mathit{\mathsf{s}}}_{\mathit{\mathsf{k}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}}\right) \) is the k th signal component observed at the antenna element, k = 1 refers to the desired signal and k = 2:K refers to multipath signals, λ is the signal wavelength, \( \left({\theta}_{\mathit{\mathsf{k}}},{\phi}_{\mathit{\mathsf{k}}}\right) \) are the elevation and azimuth angles of the k th component, \( {\mathit{\mathsf{v}}}_{\mathit{\mathsf{m}},\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}}\right) \) is the additive spatially white noise of the (m, n)th antenna element, and \( {\mathit{\mathsf{n}}}_{\mathit{\mathsf{t}}} \) represents the discrete time index.
In this research, multipath mitigation is performed after the de-spreading process. Hence, the signal model after the correlation process is considered here. Let the correlator output signal for the (m, n)th antenna element be expressed by
$$ {\mathit{\mathsf{y}}}_{\mathit{\mathsf{m}},\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right)={\displaystyle \sum_{\mathit{\mathsf{k}}=\mathsf{1}}^{\mathit{\mathsf{K}}}{\mathit{\mathsf{r}}}_{\mathit{\mathsf{k}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right){\operatorname{e}}^{\mathit{\mathsf{j}}\frac{\mathsf{2}\pi }{\lambda}\left[\left(\mathit{\mathsf{m}}-\mathsf{1}\right){\mathit{\mathsf{d}}}_{\mathit{\mathsf{m}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right) \sin \left({\phi}_{\mathit{\mathsf{k}}}\right)+\left(\mathit{\mathsf{n}}-\mathsf{1}\right){\mathit{\mathsf{d}}}_{\mathit{\mathsf{n}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right) \cos \left({\phi}_{\mathit{\mathsf{k}}}\right)\right]}}+{\eta}_{\mathit{\mathsf{m}},\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right) $$
where \( {\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}} \) represents the time index after correlation, \( {\eta}_{\mathit{\mathsf{m}},\mathit{\mathsf{n}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right) \) is the white noise component and \( {\mathit{\mathsf{r}}}_{\mathit{\mathsf{k}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right) \) shows the correlator output of the k th signal component observed at the (1, 1) antenna element and is given by
$$ {\mathit{\mathsf{r}}}_{\mathit{\mathsf{k}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right)={\alpha}_{\mathit{\mathsf{k}}}{\operatorname{e}}^{\mathit{\mathsf{j}}\mathit{\mathsf{2}}\pi \varDelta {\mathit{\mathsf{f}}}_{\mathit{\mathsf{k}}}{\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}{\mathit{\mathsf{T}}}_{\mathit{\mathsf{c}}}+\mathit{\mathsf{j}}\varDelta {\varphi}_k} $$
where \( {\alpha}_{\mathit{\mathsf{k}}} \) is the attenuation factor, \( \varDelta {\mathit{\mathsf{f}}}_{\mathit{\mathsf{k}}} \) represents the frequency offset and \( \varDelta {\varphi}_{\mathit{\mathsf{k}}} \) is the phase shift; \( {\mathit{\mathsf{T}}}_{\mathit{\mathsf{c}}} \) is the coherent integration time.
The correlator output from all the antenna elements can be represented in matrix form as
$$ \text{\textbf{\textsf{y}}}=\text{\textbf{\textsf{A}}}\text{\textbf{\textsf{r}}}+\upeta $$
where \( \text{\textbf{\textsf{y}}} \) is the MN × 1 correlator output vector, A is the steering matrix, \( \mathbf{\mathsf{\boldsymbol{\upeta}}} \) is MN × 1 noise vector, \( \text{\textbf{\textsf{r}}} \) is K × 1 correlator output vector; these vectors can be written as
$$ \text{\textbf{\textsf{y}}}={\left[{\mathit{\mathsf{y}}}_{\mathsf{1},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\;{\mathit{\mathsf{y}}}_{\mathsf{2},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right), \dots {\mathit{\mathsf{y}}}_{\mathit{\mathsf{M}},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\kern0.24em {\mathit{\mathsf{y}}}_{\mathsf{1},\mathsf{2}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\kern0.24em \dots {\mathit{\mathsf{y}}}_{\mathit{\mathsf{M}},\mathit{\mathsf{N}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right)\right]}^{\mathit{\mathsf{T}}} $$
$$ \upeta ={\left[{\eta}_{\mathsf{1},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\kern0.24em {\eta}_{\mathsf{2},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right), \dots {\eta}_{\mathit{\mathsf{M}},\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\kern0.24em {\eta}_{\mathsf{1},\mathsf{2}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\kern0.24em \dots {\eta}_{\mathit{\mathsf{M}},\mathit{\mathsf{N}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right)\right]}^{\mathit{\mathsf{T}}} $$
$$ \text{\textbf{\textsf{r}}}={\left[{\mathit{\mathsf{r}}}_{\mathsf{1}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right),\;{\mathit{\mathsf{r}}}_{\mathsf{2}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right), \dots {\mathit{\mathsf{r}}}_{\mathit{\mathsf{K}}}\left({\mathit{\mathsf{n}}}_{\mathit{\mathsf{c}}}\right)\right]}^{\mathit{\mathsf{T}}} $$
The steering matrix A is of dimension MN × K is and given by
$$ \text{\textbf{\textsf{A}}}=\left[{\text{\textbf{\textsf{a}}}}_{\mathsf{1}}, {\text{\textbf{\textsf{a}}}}_{\mathsf{2}}, ......{\text{\textbf{\textsf{a}}}}_{\mathsf{K}}\right] $$
where \( {\textbf{\textsf{a}}}_{\mathit{\mathsf{k}}} \) is the MN × 1 steering vector of the k th signal component coming from direction \( \left({\theta}_{\mathit{\mathsf{k}}},{\phi}_{\mathit{\mathsf{k}}}\right) \) and is given by
$$ \begin{array}{l}{\text{\textbf{\textsf{a}}}}_{\mathit{\mathsf{k}}}={\left[{\text{\textbf{\textsf{b}}}}_{\mathit{\mathsf{k}}}^{\mathit{\mathsf{T}}},{\gamma}_{\mathit{\mathsf{k}}}{\text{\textbf{\textsf{b}}}}_{\mathit{\mathsf{k}}}^{\mathit{\mathsf{T}}},......,{\gamma}_{\mathit{\mathsf{k}}}^{\left(\mathit{\mathsf{N}}-\mathsf{1}\right)}{\textbf{\textsf{b}}}_{\mathit{\mathsf{k}}}^{\mathit{\mathsf{T}}}\right]}^{\mathit{\mathsf{T}}}\\ {}{\text{\textbf{\textsf{b}}}}_{\mathit{\mathsf{k}}}={\left[\mathsf{1},{\beta}_{\mathit{\mathsf{k}}},......{\beta}_{\mathit{\mathsf{k}}}^{\left(\mathit{\mathsf{M}}-\mathsf{1}\right)}\right]}^{\mathit{\mathsf{T}}}\\ {}{\gamma}_{\mathit{\mathsf{k}}}={\operatorname{e}}^{\mathit{\mathsf{j}}\frac{\mathsf{2}\pi }{\lambda }{\mathit{\mathsf{d}}}_{\mathit{\mathsf{n}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right) \cos \left({\phi}_{\mathit{\mathsf{k}}}\right)}\\ {}{\beta}_{\mathit{\mathsf{k}}}={\operatorname{e}}^{\mathit{\mathsf{j}}\frac{\mathsf{2}\pi }{\lambda }{\mathit{\mathsf{d}}}_{\mathit{\mathsf{m}}} \sin \left({\theta}_{\mathit{\mathsf{k}}}\right)\mathit{\mathsf{sin}}\left({\phi}_{\mathit{\mathsf{k}}}\right)}\end{array} $$

Digital beamforming solutions

This section describes the two different beamforming solutions considered in this research, namely DAS and MPDR with and without spatial smoothing. The effect of correlation between LOS and multipath signals on beamformers is discussed and different numerical simulations are performed to evaluate the performance of these beamforming techniques to mitigate multipath signals for GNSS applications. The main difference between GNSS and other systems is that the measurement quality is of utmost importance beside signal strength improvement. Any type of filtering that distorts measurement quality affects GNSS receiver performance. Hence, special care is required for beamforming design and implementation.

DAS beamformer

The DAS beamformer relies only on the spatial information of the LOS signal (Van Trees 2002). This beamformer does not guarantee a distortionless response as it just points the main beam in the direction of the LOS signal and does not consider any other constraints to preserve the desired correlation peak shape. From Eqs. (8) and (9), the steering vector of the LOS signal is given by \( {\text{\textbf{\textsf{a}}}}_{\mathsf{1}} \). The optimum weights for the DAS beamformer can be obtained as
$$ {\text{\textbf{\textsf{w}}}}_{\mathit{\mathsf{CONV}}}=\frac{\mathsf{1}}{\mathit{\mathsf{M}}\mathit{\mathsf{N}}}{\text{\textbf{\textsf{a}}}}_{\mathsf{1}} $$
where \( \mathit{\mathsf{M}}\mathit{\mathsf{N}} \) is the total number of antenna elements in the array.

MPDR beamformer

The MPDR beamformer is a distortionless beamformer that minimizes total output power by constraining unity gain in the direction of the desired signal (Van Trees 2002). This beamformer relies on the covariance matrix of the received signal, which is normally computed by temporal averaging of the spatial samples. The covariance matrix of the received signal can be obtained as
$$ {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{y}}\mathit{\mathsf{y}}}=\frac{\mathsf{1}}{{\mathit{\mathsf{K}}}_{\mathit{\mathsf{T}}}}{\displaystyle \sum_{\mathit{\mathsf{k}}=\mathsf{1}}^{{\mathit{\mathsf{K}}}_{\mathit{\mathsf{T}}}}\text{\textbf{\textsf{y}}}{\text{\textbf{\textsf{y}}}}^{\mathit{\mathsf{H}}}} $$
where \( {\mathit{\mathsf{K}}}_{\mathit{\mathsf{T}}} \) is the number of temporal snapshots.
The optimum weight vector for the MPDR beamformer is (Van Trees 2002)
$$ {\text{\textbf{\textsf{w}}}}_{\mathit{\mathsf{MPDR}}}=\frac{{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{y}}\mathit{\mathsf{y}}}^{-\mathsf{1}}{\text{\textbf{\textsf{a}}}}_{\mathsf{1}}}{{\text{\textbf{\textsf{a}}}}_{\mathsf{1}}^{\mathit{\mathsf{H}}}{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{y}}\mathit{\mathsf{y}}}^{-\mathsf{1}}{\text{\textbf{\textsf{a}}}}_{\mathsf{1}}} $$

Effect of multipath signals on beamforming

The correlation between LOS and multipath signals has an adverse effect on the beamformer’s performance (Widrow et al. 1982; Reddy et al. 1987; Daneshmand et al. 2013b). As the covariance matrix is obtained by temporal averaging, the temporal cross correlation between the desired and the multipath signals is very high since their phase relation stays fairly constant during the averaging time. Therefore, the system regards the sum of the desired and multipath signals as one wave and computes weights to minimize the total output power. However, as desired and multipath signals are treated as one wave, the weights will have a destructive effect on the desired signal and in the process of mitigating multipath, the desired signal will also be cancelled (Widrow et al. 1982). In addition, the beamformer fails to form deep nulls in the direction of multipath (Chen et al. 2012). If the phase relation between the desired signal and multipath can be randomized, then the coherence between the signals will be reduced. This can be achieved by receiving the signals from different spatial locations by the antenna array; this can be performed either via moving the array (Daneshmand et al. 2013b) or through spatial smoothing techniques (Reddy et al. 1987). In the case of a static GNSS receiver, spatial smoothing can be applied to decorrelate the signals. In this method, antenna elements are grouped into a smaller number of overlapping subarrays (Van Trees 2002; Reddy et al. 1987). The basic requirement for spatial smoothing is that the steering vector should have a Vandermonde structure as in the case of linear and rectangular arrays (Van Trees 2002). The Vandermonde structure refers to the progressive linear phase shift of the signals across the array elements. The covariance matrices from all the subarrays are then averaged to form the spatially smoothed covariance matrix. The subarray concept emulates antenna array motion where signals received by different subarrays correspond to different spatial points. In this case, the phase relation between LOS and multipath is different for different subarrays and averaging the spatial covariance matrix over several subarrays reduces the correlation between the LOS and multipath signals. Along with forward smoothing, complex conjugated backward smoothing can be performed to improve the decorrelation as well as increase the antenna aperture (Reddy et al. 1987).

MPDR beamformer with spatial smoothing (MPDRSS)

Consider an M × N array divided into overlapping subarrays of size {J,L}. Assume P subarrays in the x-direction and Q in the y-direction. Let \( {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}\mathit{\mathsf{p}}\mathit{\mathsf{q}}} \) be the covariance matrix of the [p, q]th forward subarray. The forward spatially smoothed covariance matrix is the sample means of all the forward subarray covariance matrices and can be computed as
$$ {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}}=\frac{\mathsf{1}}{\mathit{\mathsf{P}}\mathit{\mathsf{Q}}}{\displaystyle \sum_{\mathit{\mathsf{p}}=\mathsf{1}}^{\mathit{\mathsf{P}}}{\displaystyle \sum_{\mathit{\mathsf{q}}=\mathsf{1}}^{\mathit{\mathsf{Q}}}{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}\mathit{\mathsf{p}}\mathit{\mathsf{q}}}}} $$
Similarly, if \( {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{b}}} \) is the backward spatially smoothed covariance matrix, then the forward-backward spatially averaged covariance matrix is given by
$$ {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}\mathit{\mathsf{b}}}=\frac{{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}}+{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{b}}}}{\mathsf{2}} $$
The optimum weight vector for the MPDR beamformer with spatial smoothing is (Van Trees 2002)
$$ {\text{\textbf{\textsf{w}}}}_{\mathit{\mathsf{MPDRSS}}}=\frac{{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}\mathit{\mathsf{b}}}^{-\mathsf{1}}{\text{\textbf{\textsf{a}}}}_{\mathsf{11}}}{{\text{\textbf{\textsf{a}}}}_{\mathsf{11}}^{\mathit{\mathsf{H}}}{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{f}}\mathit{\mathsf{b}}}^{-\mathsf{1}}{\text{\textbf{\textsf{a}}}}_{\mathsf{11}}} $$
where \( {\text{\textbf{\textsf{a}}}}_{\mathsf{11}} \) is the steering vector of the LOS signal for the first subarray.
Beamformer’s performance depends on a number of factors such as the number of antenna elements, array configuration and incoming signal directions of arrival to name a few. The size and number of antenna elements are some of the limitations for practical applications in terms of cost and system complexity. Hence investigation of the performance of an antenna array based GNSS receiver with a limited number of antenna elements while still being able to perform spatial smoothing is important. In this research a Uniform Rectangular Array (URA) with six antenna elements is considered (M = 3, N = 2). The subarray formation for the spatial smoothing is shown in Fig. 2. Due to the limited number of elements in the array, only two subarrays (P = 2, Q = 1) are constructed with size {J = 2, L = 2}. The decorrelation obtained by spatial smoothing and in turn, the performance of the beamformer, is analyzed in the following sections.
Fig. 2

Subarray architecture for a 3 × 2 URA

Numerical simulations

This section presents numerical simulation results for the array structure shown in Fig. 2 with inter-element spacing of 9.5 cm. The performance of the beamforming techniques in the presence of multipath signals is evaluated using the Signal-to-Multipath Ratio (SMR) (Egea et al. 2014) metric. SMR refers to the ratio between the LOS power and multipath power at the output of the beamformer and is expressed in dB. The pre-beamformer SMR is assumed to be 0 dB. Here, it is assumed that multipath is coming from (15°, 175°) and the LOS signal azimuth is (50°). Beamformer performance for different correlation coefficients of the LOS and multipath signals for different LOS signal elevations is assessed. For the two signals case, r1 (LOS) and r2 (multipath) the covariance matrix can be represented as
$$ {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{y}}\mathit{\mathsf{y}}}=\text{\textbf{\textsf{A}}}{\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{s}}}{\text{\textbf{\textsf{A}}}}^{\mathit{\mathsf{H}}}+{\sigma}_{\eta}^{\mathsf{2}}\text{\textbf{\textsf{I}}} $$
where \( {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{s}}} \) is the source covariance matrix and \( {\sigma}_{\eta}^{\mathsf{2}} \) is the noise variance. The source covariance can be defined as
$$ {\text{\textbf{\textsf{R}}}}_{\mathit{\mathsf{s}}}=\left[\begin{array}{l}{\sigma}_{\mathit{\mathsf{r}}\mathsf{1}}^{\mathsf{2}}\\ {}{\sigma}_{\mathit{\mathsf{r}}\mathsf{1}}{\sigma}_{\mathit{\mathsf{r}}\mathsf{2}}\rho \end{array}\right.\kern0.6em \left.\begin{array}{l}{\sigma}_{\mathit{\mathsf{r}}\mathsf{1}}{\sigma}_{\mathit{\mathsf{r}}\mathsf{2}}\rho \\ {}{\sigma}_{\mathit{\mathsf{r}}\mathsf{2}}^{\mathsf{2}}\end{array}\right] $$
where \( {\sigma}_{\mathit{\mathsf{r}}\mathsf{1}}^{\mathsf{2}} \) is the variance of the source signal, \( {\sigma}_{\mathit{\mathsf{r}}\mathsf{2}}^{\mathsf{2}} \) is the variance of the multipath signal and ρ is the correlation coefficient between the LOS and multipath, defined as
$$ \rho =\frac{E\left[{\mathit{\mathsf{r}}}_{\mathit{\mathsf{1}}}{\mathit{\mathsf{r}}}_{\mathsf{2}}^{\mathit{\mathsf{H}}}\right]}{\sqrt{E\left[{\mathit{\mathsf{r}}}_{\mathit{\mathsf{1}}}{\mathit{\mathsf{r}}}_{\mathsf{1}}^{\mathit{\mathsf{H}}}\right]\sqrt{E\left[{\mathit{\mathsf{r}}}_{\mathsf{2}}{\mathit{\mathsf{r}}}_{\mathsf{2}}^{\mathit{\mathsf{H}}}\right]}}} $$
The power of both LOS and multipath is set to 10 (\( {\sigma}_{\mathit{\mathsf{r}}\mathsf{1}}^{\mathsf{2}}={\sigma}_{\mathit{\mathsf{r}}\mathsf{2}}^{\mathsf{2}}=\mathsf{10} \)) and the noise variance is assumed to be 1. The elevation of the LOS signal varies from 0° to 90° for different magnitudes of the correlation coefficient between the signals and the SMR performance of both MPDR and MPDRSS is shown in Fig. 3. The MPDR performance is the same for different LOS signal elevations for a given correlation coefficient. For very low correlation coefficients, which is the case when LOS and multipath signals are uncorrelated to each other, the MPDR beamformer yields a SMR up to 40 dB. However, as correlation increases, beamformer performance decreases and results in low SMR. As seen in Fig. 3, when the correlation coefficient magnitude is above 0.6, the SMR is nearly 0 dB. The performance of MPDRSS is better for higher elevation satellites when signals are correlated to each other, as compared to MPDR. This is due to the fact that the angular separation of the LOS from multipath signals is higher and spatial smoothing is able to provide better decorrelation. As can be seen in Fig. 3, SMR up to 10 dB can be achieved using MPDRSS for higher elevation satellites even when signals are highly correlated. Since the decorrelation achieved by the spatial smoothing process is a function of the DOA of the incoming signals and the number of antenna elements, the MPDRSS beamformer performance will be different for different signals impinging on the array from different directions. However, it was observed that for the rectangular array considered, MPDRSS beamformer performance improves with an increase in the elevation angle of the LOS signal, considering the multipath signal is coming from a low elevation.
Fig. 3

Output SMR performance with MPDR and MPDRSS with multipath coming from (15°, 175°) and LOS azimuth (50°) for different magnitudes of correlation coefficient. [Indicates improvement in SMR for higher elevation satellites using MPDRSS as compared to MPDR as correlation between signal increases]

The beampatterns for the DAS, MPDR and MPDRSS beamformers for different correlation coefficients for a higher elevation satellite with multipath from low elevation are shown in Fig. 4. Here it is assumed that LOS is coming from (75°, 50°) and multipath from (15°, 175°). As the DAS beamformer does not rely on the statistics of the received signal, the performance will be same for any correlation between LOS and multipath signals. However, MPDR performance is improved only when the correlation between LOS and multipath is very low. However, MPDRSS provides better attenuation of the multipath signals. Even when signals are highly correlated, MPDRSS can attenuate multipath by up to 10 dB. Based on the LOS signal directions and correlation between LOS and multipath signals, the DAS beamformer performance could be similar to that of MPDR and MPDRSS. In some cases, it could be better than MPDR as correlation can degrade the performance of the latter.
Fig. 4

Beampatterns with LOS (70°, 50°) and multipath (15°, 175°) a DAS beamformer b MPDR beamformer c MPDR beamformer with spatial smoothing. [Better multipath attenuation occurs with the MPDRSS beamformer]


This section describes the multi-antenna GPS signal simulator and receiver architecture used for the analysis in multipath environments.

Multi-antenna GPS signal simulator

The multi-antenna GPS signal simulator can simulate GPS signals for a given user scenario and antenna array configuration. It has the option to simulate different multipath signals utilizing a ray-tracing approach. The main advantage of a software simulator as compared to the use of actual data is the ability to control error sources such as antenna calibration uncertainties, atmosphere, multipath and clock errors. Therefore, the performance of a beamformer can be analyzed for different multipath signals parameters. The basic blocks of the simulator are shown in Fig. 5. The input is the digitized IF samples collected using a data acquisition system either from a hardware similator or actual signals. These digitized samples are free of multipath. The software simulator is configured through two option files. The main option file defines the parameters such as sampling frequency, channel numbers and satellite list. The second option file is related to multipath signal parameters and defines the number of reflectors, reflector coordinates, user motion scenario and the antenna array configuration.
Fig. 5

Multi-antenna GPS software simulator

Using the digital samples, visible satellites are acquired and tracked. During the initial state of tracking, satellites are tracked in Phase Locked Loop (PLL) with higher bandwidth and loop order without assisting Delay Locked Loop (DLL). Later, based on the Phase Lock Indicator (PLI), the tracking state is switched to the PLL-assisted DLL mode. The replica signals from this stage are used to generate multi-antenna signals. The replica signal consists of code replica, carrier replica and the navigation data bits. Using ephemeris information, satellite positions are computed. The satellite DOA is then computed using these satellite positions and the known user position with accuracy of a few decimetres or better. Based on the antenna array configuration defined in the option file and satellite signal DOAs, LOS steering vectors are computed for all satellites. The replica LOS signal is then multiplied by the LOS array steering vector to generate multi-antenna signals.

Based on the reflector and the satellite positions, the point of reflection for the multipath signals is computed. Once the reflection point is found, the extra distance travelled by multipath signals is converted to the number of chips, which is then added to the LOS prompt code to generate multipath signals. Due to the additional path travelled by these signals and the reflection location, the Doppler observed by a multipath signal will be different from that of the LOS signal. The multipath signal SMR for different satellites is defined in the multipath option file. Using multipath Doppler information, replica code and the attenuation factor, multipath signals are generated for each visible satellite. Using the point of reflection and known user position, The DOAs of multipath signals are computed and the corresponding steering vectors are generated using Equation (9) The multi-antenna multipath signals thus generated for a particular satellite are then added to the corresponding LOS multi-antenna replica signals. The combined LOS and multipath signals from all visible satellites are added to generate the composite GPS baseband signal. Later, independent noise is added to each antenna signal to have the desired C/N0 values for the simulated signals.

In order to evaluate the performance of the proposed multi-antenna software simulator, the IF sample files generated from the software simulator (reference antenna IF file) and the Spirent hardware simulator were processed with the GSNRx software receiver (Petovello et al. 2008). The carrier Doppler values from the software receiver were inter-compared and similar performance was observed in terms of C/N0, signal tracking and navigation solution. The validation process showed that the performance of the multi-antenna GPS software simulator is comparable with that of a hardware simulator.

Multi-antenna GPS receiver

An open source single antenna MATLAB™ based GPS software receiver (Borre et al. 2007) was modified for multi-antenna receiver functionalities. The acquisition, tracking and navigation strategies of the original software receiver were modified. The basic blocks of the multi-antenna receiver are shown in Fig. 6. One of the antenna elements in the array acts as the reference antenna. Satellite signals are acquired and tracked using the digital samples of the reference antenna. The Doppler and code delays thus obtained are used to despread the signals from other antennas so that relative phase values between the antenna elements are maintained. After Doppler and code removal from the digital samples corresponding to each antenna, the prompt correlator values are used to compute the optimum weights using the MPDR beamformer. In order to capture the statistics of the incoming signals, prompt correlation values collected over one second are used to compute the covariance matrix of the MPDR beamformer. Thus its weights are updated every second. The DAS beamformer does not use the statistics of the prompt correlation values as it relies only on the satellite DOA. Weights for the DAS beamformer are also updated every second to capture the LOS signal DOA variations. The weights computed are used to combine 1 ms, early, prompt and late correlator values of the six antennas. The combined correlator arms, namely early-prompt-late, are used by the tracking loops to generate the code and carrier replica signals.
Fig. 6

Multi-antenna GPS receiver implementation

A narrow correlator approach with 0.1 chip spacing between early and late arms and a normalized non-coherent early minus late envelope code discriminator are used. A first order DLL with bandwidth of 0.1 Hz is used in the PLL-assisted DLL mode. The C/N0 is computed using narrowband power and wideband power as described in (Dierendonck 1996). The least squares method is used to compute the position solution with pseudorange measurements.

Results and discussions

Simulated data

This section describes the multi-antenna GPS signal simulation scenarios and the corresponding results for different beamforming techniques. A GPS receiver equipped with a rectangular array as shown in Fig. 2 is considered for the simulations. A static user scenario was generated using a Spirent hardware simulator; atmospheric, satellite clock and multipath errors were disabled. The GPS signal from the hardware simulator was sampled at 20 MHz using a National Instruments (NI) data acquisition system, which is input to the multi-antenna GPS signal simulator. Four rectangular shaped reflectors with dimensions of 30 m × 50 m were considered. The reflectors were placed at a 30 m distance from the user in all the four directions. The reason for selecting reflectors in all the four directions is to simulate multipath for most of the low elevation satellites. Only specular multipath is considered with single reflection. A multipath attenuation factor of 0.75 was considered for each of the multipath signal. The DOAs of different satellites used in the simulation are tabulated in Table 1. Based on the ray tracing method, PRN 16 and PRN 21 do not observe any multipath.
Table 1

Satellite DOAs used in simulations











Azimuth (degrees)










Elevation (degrees)










The performance of the beamformer was evaluated by analyzing the improvement in C/N0 and multipath error reduction before and after beamforming. “Before beamforming” refers to the tracking results obtained using baseband samples from the reference antenna. The multi-antenna software receiver is executed in five different configurations to generate C/N0 and pseudorange observations as described in Table 2.
Table 2

Receiver software execution configurations



Mode 1

LOS scenario is assumed. Reference antenna tracks all of the observable signals.

Mode 2

LOS and multipath scenario is assumed. Reference antenna tracks all of the observable signals.

Mode 3

LOS and multipath scenario is assumed. Multi-antenna receiver tracks all the observable satellites utilizing DAS beamformer.

Mode 4

LOS and multipath scenario is assumed. Multi-antenna receiver tracks all the observable satellites utilizing MPDR beamformer.

Mode 5

LOS and multipath scenario is assumed. Multi-antenna receiver tracks all the observable satellites utilizing MPDR beamformer with spatial smoothing process.

The received signal in Mode 1 is not affected by multipath and hence can be considered as a reference clean data for pseudorange error analysis. The pseudorange errors are computed by taking the differences between the pseudoranges obtained in Mode 1, which is the reference scenario, with those of Mode 2 to 5. The C/N0 values and pseudorange errors for various mitigation scenarios (Mode 2–5) in the case of PRN 6 are shown in Fig. 7. In this scenario the reflector-receiver distance was 30 m. Periodic variations can be observed in the C/N0 values of Mode 2 due to the presence of multipath signals. Similar C/N0 fluctuations were also observed in other similar measurements (Ray et al. 1999). After beamforming with the six antennas (Mode 2 to 5), the C/N0 variations are reduced and improvements occur. The C/N0 values improve by 8 dB in Mode 3 and 4 and 6.5 dB in Mode 5 as compared to Mode 1. The reason that C/N0 values in Mode 5 are less than those of Mode 3 and 4 is because a lower number of antennas is used during beamforming due to spatial smoothing process. Similarly, pseudorange errors after beamforming, which are correlated to C/N0 variations, are significantly reduced, indicating mitigation of the multipath signal using all three beamforming techniques.
Fig. 7

C/N0 values and pseudorange errors for PRN 6

Comparisons of C/N0 and pseudorange RMS errors for all PRNs before and after beamforming are shown in Fig. 8. It is observed that the average C/N0 gain for all the satellites is the same for each beamformer. The gain obtained using the MPDR beamformer with spatial smoothing is lower than that of the other two due to the lower number of elements used in the beamforming process. The pseudorange error reduction is different for different PRNs. The MPDR beamformer with spatial smoothing provides better attenuation of multipath signals than the other two. For all the three beamformers, it can be observed that, for very low elevation satellites (<15°) such as PRN 10, 25 and 31, the pseudorange error reduction is minimal as compared to that for satellites located at a higher elevation. This can be justified as the signal decorrelation depends on the angle of arrival of the LOS and multipath signals. Since decorrelation has a direct impact on the performance of beamformer, the attenuation of the multipath signals by the beamformer also depends on the direction of arrival of the signals. Considering Fig. 8b, DAS and MPDR beamformers can reduce multipath errors by 2 to 8 m, whereas the MPDRSS beamformer can reduce the errors up to 13 m. The MPDRSS multipath reduction performance is much better than other techniques for all PRNs.
Fig. 8

C/N0 and pseudorange error performance comparison before and after beamforming

Field-test results

GPS data was collected in moderate specular multipath conditions. The location was chosen such that both LOS and multipath signals were observable with LOS being stronger than multipath signals. The setup, shown in Fig. 9a, consists of six NovAtel 501 antennas (Novatel 2016) arranged in a rectangular fashion with 11 cm spacing between them. The array was mounted on a wooden platform on one end and a Novatel SPAN™ LCI inertial system was mounted on the other end to provide platform attitude. Signals from the antenna array were collected using a Fraunhofer multiple RF front-end, which can collect digital samples from all the antennas simultaneously. The location of the data collection and the corresponding sky plot are shown in Fig. 9. The glass building on the east side of the location acts as a specular reflector to generate multipath signals for the low elevation satellites visible in the west direction. Most satellite signals on the east side of the data collection location were blocked by the building.
Fig. 9

Live data collection a Setup showing antenna array and data collection system b Location of data collection and sky plot

In order to perform array calibration, another data set was collected in open sky conditions with minimal multipath effect. The tracking architecture described in Fig. 6 excluding the beamforming process was used to obtain the prompt correlation values to perform calibration. Carrier and code were tracked by the reference antenna and passed to the carrier and code tracking loops of the other antennas. The Doppler and code replica signals obtained after tracking the reference antenna signals are used to track other antenna signals to obtain relative signal amplitude and phase values between different antennas. The prompt correlator values of all the antennas were used to construct the steering vector, which is referred to as the measured steering vector. Based on the attitude of the array and DOA of the satellite, the true steering vector was computed. A least squares based calibration method (Backén et al. 2008) was used to compute the calibration matrix. As the number of visible satellites was larger than the number of antenna elements, very low elevation satellites were excluded from the calibration process to avoid calibration errors due to multipath.

The initial analysis shows that some of the satellites are disturbed by multipath signals. An independent variation of C/N0 values from different antenna elements confirms the existence of multipath (Brown 2000). The C/N0 values obtained using GSNRx™ for PRN 28 and 17 for different antenna elements are shown in Fig. 10; PRN 28 is at high elevation and PRN 17 at a low elevation. The rapid C/N0 variations of PRN 28 at all the antennas are comparable to each other. PRN 17, which is affected by multipath, shows different C/N0 periodic variations, indicating reception of different multipath signal phase values at different antenna elements. For PRN28, the mean C/N0 value is different for different antennas. These differences are due to the gain patterns of different antenna elements and will be corrected in the calibration process.
Fig. 10

C/N0 variations of PRN 17 and PRN 28 for different antenna array elements

The second analysis performed shows the improvement in C/N0 values and pseudorange error reduction after the beamforming process. A modified multi-antenna software receiver was used for this analysis. The C/N0 values before and after beamforming were computed for different PRNs and the results are shown in Fig. 11a. “C/N0 before beamforming” refers to the C/N0 computed from the reference antenna signal. Considering PRN 17, which is affected by multipath, the variations are reduced after combining signals from all antenna elements through beamforming and a 4 to 8 dB improvement is obtained. All three beamformers are able to reduce C/N0 variations.
Fig. 11

a C/N0 and b pseudorange errors before and after beamforming

To evaluate the pseudorange multipath error reduction, a closely spaced base station with known position was used. A Novatel Propak receiver was used to collect data at the base station. By using the ephemeris information and the user position, the true range could be computed for each PRN. The pseudorange is the sum of true range and other errors such as ionospheric, tropospheric and satellite clock errors, and multipath and measurement noise. Assuming no significant multipath errors were affecting that base station, differences between pseudoranges and true ranges provide combined measurement errors as seen by the base station antenna. Similarly, the approximate remote receiver position can be obtained using the SPAN™ LCI unit with an accuracy of few centimentres. Here, “remote receiver” refers to the referece antenna of the antenna array. Using the approximate antenna position and ephemeris information, the true range can be obtained. By taking the difference between pseudoranges and true ranges, combined measurement errors as seen by the remote station can also be obtained. As the base station and remote receiver are nearby, the differences between the pseudorange measurements cancel out all the errors except multipath, user clock bias and measurement noise. Pseudorange measurement noise was separately computed using a zero-baseline and the standard deviation of the measurement noise was measured as 8 cm for both GSNRx and Novatel receivers. Therefore, by taking the differences between base and remote receiver, the measurement noise of pseudorange increases by 1.42 to 11 cm (Misra et al. 1996). However, compared to the magnitude of multipath errors at the metre level, it can be neglected for this evaluation. As the user clock bias is common for all the PRNs, performing double differencing between PRNs removes it, finally yielding multipath errors. To perform double differencing, PRN 28, which is not affected significantly by multipath, was used as the reference satellite. The multipath errors for PRN 13,15 and 17 before and after beamforming are shown in Fig. 11b. Consider data between 80 and 100 seconds for analysis; the C/N0 degradation for antenna 1 (reference antenna) is significant during this time interval and a similar degradation can be observed with pseudorange errors. The beamformer is able to mitigate multipath and the RMS pseudorange error reduces from 20 m to 0.8 m after beamforming using either of the three beamformers. The RMS pseudorange errors for PRN 17 considering the entire data set reduces from 8.96 m to 0.92 m after beamforming. The RMS pseudornage errors for different PRNs for different beamforming techniques are shown in Table 3. It can be observed that beamformer performance is different for different PRNs. This is due to different satellite DOAs and multipath signals as mentioned in the numerical simulation section.
Table 3

RMS pseudorange errors before and after beamforming


RMS pseudorange errors (m)

Before beamforming




PRN 13





PRN 15





PRN 17





Performance of field test results are comparable with that of simulations. Considering PRN17 which is affected by multipath, the performance of DAS beamformer depends only on the LOS signal DOA. If the multipath signal directions coincide with the beampattern nulls obtained from the DAS beamformer, it can provide comparable results to those of the MPDR beamformer, which is the case with PRN 17. Similar performance of MPDR and MPDRSS are likely due to the sufficient decorrelation between the LOS and multipath signals over the 1 s integration considered to compute the covariance matrix. Also, as shown in Fig. 3, for lower elevation satellites with sufficient decorrelation between LOS and multipath signals, the performance of MPDR and MPDRSS beamformer are similar.

The third analysis is performed to show the improvement in position before and after beamforming. The least squares method was used to compute the position from pseudorange measurements. Four observable satellites, shown in green circles in Fig. 9b, were used. Position solutions computed using pseudorange measurements generated from the reference antenna are referred to as the position solutions before beamforming. Similarly, position solutions computed using the pseudorange measurements after beamforming are referred to as the position solutions after beamforming. The reference position of the antenna array was computed using the outputs of SPAN™ LCI unit, which provides ultra-tight GNSS-INS solution with accuracy of the order of at least a few decimetres. Using the reference antenna array position, position errors before and after beamforming were computed and are shown in Fig. 12. As only four satellites were visible, Position Dilution of Precision (PDOP) is of the order of 10. As shown after beamforming, the position errors are significantly reduced. The RMS position errors before and after beamforming are provided in Table 4.
Fig. 12

Position errors before and after beamforming

Table 4

RMS position errors before and after beamforming

RMS Position Errors

East (m)

North (m)

Up (m)

Before beamforming

















The numerical simulation results described in the paper indicate that performance of MPDR and MPDRSS beamformers improves as the correlation between LOS and multipath signals decreases. It was observed that, for a rectangular array with six antenna elements, the MPDRSS beamformer provides better multipath mitigation for higher elevation satellites. The proposed multi-antenna signal simulator was used to generate multipath affected multi-antenna signals for different user environments and the results were compared with realistic multipath scenarios. Using the simulated GPS signals, it was observed that pseudorange errors can be reduced by tens of metres in high multipath environments, thereby improving position accuracy. It was observed that the MPDRSS beamformer performs better than the MPDR and DAS beamformer. With actual GPS L1 signals collected in a moderate specular multipath scenario, a reduction of 10 m in RMS pseudorange error was observed for satellites affected by multipath signals. Pseudorange error reduction was reflected in the position solutions. Finally, it was shown that a six-antenna rectangular array is effective to mitigate short-range multipath signals and provide an improved navigation solution, based on the data used in the analysis. Extensive testing would be required to confirm these enhancements in different environments.


Authors’ contributions

NV involved in the major contributions such as literature review, software simulator and receiver development, data collection and processing the data and preparing the manuscript. AB helped in developing software simulator and data collection. AJ participated in technical discussions regarding numerical simulations and software simulator development. GL participated in discussing the methodology and the live data results. All authors read and approved the final manuscript.

Authors’ information

Niranjana Vagle is a Ph.D. candidate in the PLAN Group of the University of Calgary. He has 5 years of industry experience in GPS-GLONASS receiver hardware design, baseband signal processing, and environment acceptance tests. He has received his B.E. in Electronics and Communications Engineering in 2005 from Visvesvaraya Technological University (VTU), India. His main research interest is antenna array signal processing for GNSS applications.

Dr. Ali Broumandan received his Ph.D. degree in the Geomatics Engineering from the University of Calgary. He is working in the PLAN Group as Senior Research Associate since November 2013 where his research focuses on GNSS interference mitigation utilizing single and multiple antenna processing. He has been involved in several industrial research projects focusing on spatial/temporal GNSS signal processing.

Dr. Ali Jafarnia Jahromi received his Ph.D. in Geomatics Engineering from the University of Calgary. He holds B.Sc. and M.Sc. degrees in Telecommunications Engineering. He was working as Post-Doctoral Fellow in the PLAN Group from 2013 to 2016. His research interests include signal processing in GNSS applications and receiver design.

Gérard Lachapelle, Professor Emeritus, has been involved in a multitude of GNSS R&D projects since 1980, ranging from RTK positioning to indoor location and signal processing enhancements, first in industry and since 1988, at the University of Calgary.

Competing interests

The authors declare that they have no competing interests.

Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Authors’ Affiliations

Plan Group, Department of Geomatics Engineering, Schulich School of Engineering, University of Calgary


  1. Amin MG, Wang X, Zhang YD, Ahmad F, Aboutanios E (2016) “Sparse arrays and sampling for interference mitigation and DOA estimation in GNSS,” in Proceedings of the IEEE, vol 99. p 1–16Google Scholar
  2. Arribas J, Closas P, Fern’andez-Prades C, Cuntz M, Konovaltsev A, Meurer M (2012) “Advances in the theory and implementation of GNSS antenna array receivers. In: Georgiadis A, Rogier H, Roselli L, Arcioni P (eds) Microwave and millimeter wave circuits and systems: emerging design, technologies and applications. Wiley, Chichester, pp 227–273Google Scholar
  3. Arribas J, Closas P, Fernández-Prades C (2014) “Interference mitigation in GNSS receivers by array signal processing: a software radio approach”, 2014 IEEE 8th Sensor Array and Multichannel Signal Processing Workshop (SAM), IEEE, A Coruna, p 121–124. doi:10.1109/SAM.2014.6882355
  4. Backén S, Akos DM, Nordenvaad ML (2008) “Post-processing dynamic GNSS antenna array calibration and deterministic beamforming”. In Proceedings of the 21st international technical meeting of the satellite division of the institute of navigation (ION GNSS 2008), vol 1619. Savannah, p 2806–2814Google Scholar
  5. Borre K, Akos DM, Bertelsen N, Rinder P, Jensen SH (2007) A software-defined GPS and galileo receiver: single-rrequency approach. Birkhäuser, BostonGoogle Scholar
  6. Broumandan A, Jafarnia-Jahromi A, Daneshmand S, Lachapelle G (2016) “Overview of spatial processing approaches for GNSS structural interference detection and mitigation”. In Proceedings of the IEEE, vol 99. p 1–12Google Scholar
  7. Brown A (2000) “Multipath rejection through spatial processing”. In Proceedings of the proceedings of the 13th international technical meeting of the satellite division of the institute of navigation (ION GPS 2000), Salt Lake City, p 2330–2337Google Scholar
  8. Chen YH, Juang JC, Seo J, Lo S, Akos DM, De Lorenzo DS, Enge P (2012) “Design and implementation of real-time software radio for anti-interference GPS/WAAS sensors”. Sensors 12(10):13 417–13 440. doi:10.3390/s121013417
  9. Cuntz M, Konovaltsev A, Meurer M (2016) “Concepts, development, and validation of multiantenna GNSS receivers for resilient navigation”. In Proceedings of the IEEE, vol 99. p 1–14Google Scholar
  10. Daneshmand S, Broumandan A, Nielsen J, Lachapelle G (2013a) “Interference and multipath mitigation utilizing a two-stage beamformer for global navigation satellite systems”. In IET, Radar, Sonar and Navigation 7(1):55–66Google Scholar
  11. Daneshmand S, Broumandan A, Sokhandan N, Lachapelle G (2013b) “GNSS multipath mitigation with a moving antenna array”. IEEE Trans Aerospace Electro Syst, 49(1):693–698Google Scholar
  12. Daneshmand S, Jafarnia-Jahromi A, Broumandan A, Lachapelle G (2014) “A GNSS structural interference mitigation technique using antenna array processing”. In 2014 IEEE 8th Sensor Array and Multichannel Signal Processing Workshop (SAM), A Coruna, p 109–112Google Scholar
  13. Dierendonck AJV (1996) “GPS Receivers”. In: Parkinson B and Spilker JJ Jr. (eds) [Chapter 8] in global positioning system: theory and applications, vol 1. American Institute of Aeronautics and Astronautics, Inc., Washington D.C., p 329-408Google Scholar
  14. Dierendonck AJV, Fenton P, Ford T (1992) “Theory and performance of narrow correlator spacing in a GPS receiver”. J Inst Navigation 39(3):265–283View ArticleGoogle Scholar
  15. Egea D, López-Salcedo JA, Seco-Granados G (2014) “Interference and multipath sequential tests for signal integrity in multi-antenna GNSS receivers”. In 2014 IEEE 8th Sensor Array and Multichannel Signal Processing Workshop (SAM), A Coruna, p 117–120Google Scholar
  16. Fern’andez-Prades C, Closas P, Arribas J (2011) “Eigenbeamforming for interference mitigation in GNSS receivers”. In Proceedings of the 1st International Conference on Localization and GNSS (ICLGNSS’11), p 93–97Google Scholar
  17. Fern’andez-Prades C, Arribas J, Closas P (2016) “Robust GNSS receivers by array signal processing: theory and implementation”, In Proceedings of the IEEE, vol 99. p 1-14Google Scholar
  18. Fu Z, Hornbostel A, Hammesfahr J, Konovaltsev A (2003) Suppression of multipath and jamming signals by digital beamforming for GPS/Galileo applications. GPS Solutions 6(4):257–264View ArticleGoogle Scholar
  19. Garlin L, VanDigelen F, Rousseau JM (1996) “Strobe and edge correlaor multipath mitigation for code”. In Proceedings of the proceedings of the 9th international technical meeting of the satellite dicision of the institute of navigation, Kansas City, p 657–664Google Scholar
  20. Gupta IJ, Weiss IM, Morrison AW (2016) “Desired features of adaptive antenna arrays for GNSS receivers”. In Proceedings of the IEEE, vol 99. p 1-12Google Scholar
  21. Joosten P, Pany T, Winkel J (2002) The impact of unmodelled multipath on ambiguity resolution. In: Proceedings of the proceedings of the 15th international technical meeting of the satellite division of the institute of navigation (ION GPS 2002). Oregon Convention Center, Portland, pp 953–961Google Scholar
  22. Kalyanaraman SK, Braasch MS (2007) “Tight Integration of a GPS adaptive array with a software-defined receiver”. In Proceedings of the 2007 national technical meeting of the institute of navigation, San Diego, p 657–668Google Scholar
  23. Kalyanaraman SK, Braasch MS (2010) “GPS adaptive array phase compensation using a software radio architecture”, Navigation, J Inst Navigation 57(1):53-68Google Scholar
  24. Konovaltsev A, Antreich F, Hornbostel A (2007) “Performance assessment of antenna array algorithms for multipath and interference mitigation” in Proc. 2nd Workshop GNSS Signals & Signal Process, ESTEC, NoordwijkGoogle Scholar
  25. Lee J-H, Hsiao S-W (2008) “adaptive processing for beamforming with coherent interference using circular arrays”. Digital Signal Process 18(5):813–834Google Scholar
  26. Manosas-Caballu M, Seco-Granados G, Swindlehurst AL (2013) “robust beamforming via FIR filtering for GNSS multipath mitigation” in Proceedings of the 2013 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Vancouver, p 4173–4177Google Scholar
  27. Misra P and Enge P (1996) Global Positioning System, Signals, Measurements and Performance, vol. 2. Ganga-Jamuna Press, ISBN 0-9709544-1-7Google Scholar
  28. Novatel GPSAntennaTM model 501 ( Accessed 10 Apr 2016
  29. Petovello MG, O’Driscoll C, Lachapelle G, Borio D, Murtaza H (2008) architecture and benefits of an advanced GNSS software receiver. J Global Positioning Sys 7(2):156–168Google Scholar
  30. Ray JK, Cannon ME, Fenton P (1999) “Code Range and Carrier Phase Multipath Mitigation Using SNR, Range and Phase Measurements in a Multi-Antenna System”, Proceedings of ION GPS-99 (Nashville, September 14–17)Google Scholar
  31. Reddy V, Paulraj A, Kailath T (1987) “analysis of the optimum beamformer in the presence of correlated sources and its behavior under spatial smoothing”. IEEE Trans Acc Signal Process 35(7):927–936Google Scholar
  32. Rougerie S, Carrie G, Ries L (2011) “Multipath mitigation methods based on antenna array,” in Proceedings of the International Technical Meeting of Institute of Navigation (ITM’11), San Diego, p 596–605Google Scholar
  33. Rougerie S, Vincent CGF, Ries L, Monnerat M (2012) “A new multipath mitigation method for GNSS receivers based on antenna array,” Intl J Navigation Observation 2012:804732. doi:10.1155/2012/804732
  34. Sahmoudi M, Amin M (2007), “Optimal robust beamforming for interference and multipath mitigation in GNSS arrays,” in Proc. IEEE int. conf. acoust. speech signal process, vol. 3. Honolulu, p 693–696Google Scholar
  35. Seco-Granados G, Fernandez-Rubio JA, Fernandez-Prades C (2005) “ML estimator and hybrid beamformer for multipath and interference mitigation in GNSS receivers”. IEEE Trans Signal Process 53(3):1194–1208Google Scholar
  36. Van Nee R, Siereceld J, Fenton PC, Townsend BR (1994) “Multipath estimating delay lock loop: approaching theoretical accuracy limits”, in Proceedings of the position location and navigation synopsium, IEEE Las Vegas, Nevada, p 246–251Google Scholar
  37. Van Trees HL (2002) Optimum array processing, detection, estimation, and modulation theory part IV. Wiley, New York, pp 600–699Google Scholar
  38. Vicario JL, Barcelo M, Mañosas M, Seco-Granados G, Antreich F, Cebrian JM, Picanyol J, Amarillo F (2010) “A novel look into digital beamforming techniques for multipath and interference mitigation in Galileo ground stations”, In: 2010 5th advanced satellite multimedia systems conference and the 11th signal processing for space communications workshop, p 240–247Google Scholar
  39. Widrow B, Duvall K, Gooch RP, Newman W (1982) “Signal cacellation phenomena in adaptive antennas: causes and cures”. IEEE Trans Antennas Propag 30(3):469–478Google Scholar


© The Author(s) 2016