Your behavior appears to be a little unusual. Please verify that you are not a bot.

Innovation: Low-cost single-frequency positioning in urban environments

May 9, 2018  - By and

Making It Better

INNOVATION INSIGHTS with Richard Langley

SINGLE-FREQUENCY GPS POSITIONING. Can it get any better? In the March 2018 edition of this column, we looked at the development of precise point positioning or PPP — the (mostly) carrier-phase-based positioning technique using satellite orbit and clock data significantly more precise than that available in the broadcast navigation messages. We noted that dual-frequency PPP can achieve horizontal positioning accuracies better than 10 centimeters. On the other hand, single-frequency pseudorange-based GPS positioning using broadcast data (by far, the most common use of GPS) provides meter-level accuracy at best. And “at best” means under ideal conditions with no sky obstructions, negligible multipath, a benign ionosphere and healthy signals.

But what about the more typical conditions experienced while navigating in urban environments such as blocked signals and reception of reflected or non-line-of-sight signals and multipath-contaminated signals? And what if the ionosphere is disturbed to boot? A standard unaugmented single-frequency GPS receiver will be lucky to get consistent accuracies much below 10 meters. In some cases, positioning accuracy is compromised by the relatively inexpensive antenna and receiver hardware used in devices for the mass consumer market. That includes the positioning units in smartphones and vehicle satnav units. True, 10-meter accuracy positioning might be quite acceptable for certain applications including basic navigation to get from point A to point B. But there are many situations that we encounter in our daily lives where a predictable accuracy of 1 meter or better could be hugely useful such as identifying the correct lane in which a vehicle is traveling or identifying a particular parking space — not to mention various vehicle-to-vehicle positioning and situational awareness needs.

Sure, we can augment a GPS receiver with other devices such as inertial sensors, barometers, wheel-speed sensors and the like. And they can, indeed, be a big help. But can we improve the capability of the standalone GPS receiver?

For a long time, the use of multiple-constellation receivers has been touted as a panacea for blocked signals in cities. Since the 1990s, we have had two working satellite constellations: GPS and GLONASS. Yes, GLONASS has had its up and downs, but it has provided a more or less full constellation for a number of years now, and many consumer-level devices include a GLONASS capability nowadays. Some of the latest devices also sport the ability to use signals from the European Galileo and Chinese BeiDou systems now nearing completion.

While one might still have large dilutions of precision using a multi-constellation GNSS receiver, in general, even one additional satellite signal can be beneficial in improving accuracy or navigation continuity. Receiver chips with the ability to provide useful carrier-phase measurements will also be hugely beneficial, and we are already seeing developments in this regard in the smartphone market.

We should also mention that there can be significant differences in the performance of different kinds of antennas and their effect on positioning capabilities in the same environment. And, of course, how the measurements from different satellites are combined in a receiver’s processor can have an effect on the resulting position accuracy.

In this month’s column, I am joined by one of my graduate students, Ivan Smolyakov, who has carried out some real-world tests with the aim of improving single-frequency GNSS positioning in urban environments. The initial tests (using a survey-grade receiver to be replaced with more modest equipment in subsequent testing) concentrated on the benefit of using GLONASS alongside GPS, the effect of different antennas, and adaptive weighting of observations. Single-frequency accuracies below one meter? You bet.

A new generation of mobile platforms equipped with chips allows continuous carrier-phase tracking, lifting applications based on localization to the next level. Whether in transportation, pedestrian navigation or safety-of-life services, a robust position determination is required in various environments including cities.

Navigation in urban environments is significantly challenged by signal degradation. Typical urban scenarios result in blocked signals, reception of non-line-of-sight (NLOS) signals and multipath-contaminated signals. Low-cost single-frequency equipment suffers the most from such effects as a consequence of hardware limitations, while also being affected by potentially poor satellite geometry.

This article addresses the challenge for mobile platforms equipped with low-cost single-frequency receivers and patch antennas to efficiently utilize all GNSS signals available.

Various techniques attempt to minimize the impact of NLOS and multipath on a final solution: weighting based on the elevation angle of a satellite and signal-to-noise ratio of its signal, as well as exclusion of certain satellites from processing, selecting the most consistent set of satellites. In our work, we explored this approach, combining the aforementioned methods with automatic stochastic model adjustment. Signal degradation demonstration and algorithm testing was performed on 1-Hz combined GPS and GLONASS static and kinematic datasets collected in an urban environment. Our proposed algorithm yielded sub-meter-level positioning accuracy and showed a 10 percent accuracy improvement compared to regular weighting and satellite-exclusion-based algorithms.

In the past several years, the number of applications that at least to some extent depend on GNSS has increased dramatically. Precise point positioning (PPP) solutions propagated to common everyday uses and started to lead the way as a key method for coordinate determination in the low-cost regime of navigation. This area could be characterized by the necessity of real-time coordinate determination with a sub-meter/decimeter accuracy requirement and often with the expectation of reaching that level of accuracy in the most challenging environment for satellite navigation: the urban setting.

Tall buildings, tree foliage and the presence of reflective surfaces decrease the number of available satellites and result in reception of NLOS signals, as well as in reception of signals contaminated by multipath. The field of aided navigation addresses the problem by using additional devices and external information along with GNSS, such as tightly coupled inertial sensors or 3D mapping of the surrounding environment. Another way to deal with these degrading effects is to address their existence directly by means of consistency checking and outlier mitigation. However, while being effective, these types of algorithms can often create an excessive computational load, which limits their use for low-cost applications.

On the GNSS side, the problem also could be addressed by detecting faulty signals and adapting filtering parameters accordingly, making sure that incorrect a priori statistical information is not used as it can lead to solution degradation. Many adaptive techniques were developed, reducing the need to accurately know a priori filtering parameters.

Our research attempts to maximize the use of pure GNSS in the context of standalone low-cost single-frequency positioning, adjusting filter parameters in a way consistent with the surrounding environment. First, the vulnerability of low-cost patch antennas towards NLOS and multipath-contaminated signals has been investigated through a comparison to higher quality antennas in an observation campaign carried out in an urban environment. Second, based on preliminary analysis of findings and inspired by past work, we developed an adaptive weight adjustment algorithm with minimal computational load, aiming to address a rapidly changing surrounding multipath environment. The proposed algorithm was tested in GPS-only and combined GPS + GLONASS static and kinematic scenarios.


The idea behind the observation campaign was to highlight unwanted low-cost patch antenna vulnerability to multipath and NLOS signals. Three antennas were mounted on the roof of a car (see FIGURE 1): a high-grade antenna (Leica AX1203+ GNSS with 29 dB low-noise-amplifier (LNA) gain), a consumer-level patch antenna priced around $150 (Tallysman TW3470 with 40 dB LNA gain) and a truly low-cost patch antenna (Chang Hong Information Co., GPS Active 28 dB Magnetic Antenna) priced around $10.

FIGURE 1. Experimental setup. Tested antennas from left to right: Tallysman TW3470, Leica AX1203+ GNSS, low-cost patch antenna (Chang Hong Information Co.).

Paired with each antenna, we used geodetic quality receivers of the same model (Javad Triumph-LS) with identical configurations, which yielded the best possible performance on the receiver side, meaning that differences in analyzed behavior are mostly dependent on the antenna type. After the start of observations, the experimental setup remained stationary for 30 minutes in a parking lot environment, followed by an approximately 30-minute drive through downtown Fredericton, New Brunswick.

Road situations encountered included passing under a bridge and a traffic jam caused by road construction. These circumstances introduced complete signal blockage, as well as multipath-contaminated and NLOS signal reception. The Javad receivers recorded observables at a 5-Hz rate. We subsequently decimated the data to 1 Hz for post-processing. The GPS and GLONASS L1 pseudorange and carrier-phase observations (C1C and L1C in RINEX terminology) were used for the single-frequency positioning solutions.


The results shown in this article were obtained using post-processing. However, the described technique is ready for implementation in real time. The undifferenced measurements model was selected as an approach commonly adopted for truly low-cost positioning platforms. Multipath is notoriously difficult to reliably estimate in a filter. Instead, our proposed technique takes advantage of the pseudo-multipath (also referred to as “code-minus-phase”) observable and a statistical analysis applied to its time series.

Observation Model. Given that the target equipment is low cost, the complexity of the observation model should be taken into account. The observables were modeled as follows:

Pj = ρj + c(dT − dtj) + Tj + Ij + Mj + ϵjP   (1)

Φj = ρj + c(dT − dtj ) + Tj − Ij + λNj + mj + ϵjΦ   (2)


P is the pseudorange measurement (m),

Φ is the carrier-phase measurement (m),

ρ is the geometric range between antenna phase centers of receiver and satellite (m),

c is the speed of light in vacuum (m/s),

dT is the receiver clock offset (s),

dt is the satellite clock offset (s),

T is the tropospheric delay (m),

I is the ionospheric delay (m),

λ is the wavelength of the carrier (m),

N is the carrier-phase ambiguity

M, m is the multipath effect on pseudorange and carrier-phase measurements, respectively (m),

ϵP, ϵΦ is the measurement noise and any residual bias for pseudorange and carrier-phase measurements, respectively, including the effect of any dynamics-induced tracking loop errors (m), and

j represents a particular satellite.

The majority of modern mobile platforms have Internet access, and in this research it was assumed that information on satellite orbits, clock offsets and ionospheric delays could be acquired through real-time precise correction streams. For our computations, we used orbits and clocks from the Centre National d’Etudes Spatiales as well as ionospheric delays derived from European Space Agency global ionospheric maps (GIMs). The range term was corrected for Earth tides, ocean loading and relativistic effects.

In our study, coordinate determination is handled with a standard implementation of Kalman filtering. The Kalman filter state vector contains receiver coordinates, receiver clock, carrier-phase ambiguities and tropospheric delay.

Automatic Weight Adjustment. Our study revisited the technique developed by Bisnath and Langley (see Further Reading). First, the pseudo-multipath observable is calculated:

PMPj = Pj − Φj = 2Ij − λNj + Mj − mj + ϵjP − ϵjΦ   (3)

The term 2Ij in Equation (3) can be partially eliminated by applying a GIM correction. The pseudo-multipath observable gives a good representation of code multipath, as the magnitude of the carrier-phase terms in Equation (3) is much smaller than the corresponding pseudorange terms.

Pseudo-multipath observables are stored in a buffer of a size B1 and are used to calculate sample variances for each satellite (see FIGURE 2). When B2 variances are stored in a second buffer, the algorithm has enough data to make a decision as to whether the weights of the observables should be adjusted. The challenging part of the algorithm is the threshold determination, which will be discussed in subsequent sections.

FIGURE 2. Block diagram of the environment detection and weight adjustment algorithm.


We collected an urban dataset consisting of two segments: one stationary and one kinematic. The stationary segment was inspected since in this case the multipath patterns are not randomized by the moving surroundings as in the kinematic segment. When the weighting scheme was developed, we proceeded with its tuning and analyzed its performance in the more challenging, kinematic environment and also added GLONASS observations to the processing.

Preliminary Analysis. First, the behavior of the pseudo-multipath observable during the observation session was analyzed. The initial processing was carried out in GPS-only mode, applying an elevation-angle weighting scheme and 10-degree elevation mask angle. The reference coordinates were obtained with the PPP software developed at UNB using Leica AX1203+ GNSS dual-frequency observations. Thirty-minute static datasets showed that the horizontal error of the coordinates determined with patch antenna observations is just below the 2-meter mark, while the 3D-error is above 5 meters with height error being the biggest contributor (see FIGURE 3).

FIGURE 3. Absolute errors for GPS-only processing, 30-minute static session. Comparison among antennas.

The errors of higher grade antenna datasets proved to be significantly smaller with all error components being below the 0.5-meter mark. The comparison presented in FIGURES 4 and 5 shows a more perturbed behavior of the pseudo-multipath observable in the case of the low-cost patch antenna compared to the Tallysman (static and kinematic parts of the session are presented in the same plot). Interestingly, this behavior is not common for all the satellites tracked; only two of them (G12 and G09) show a high variation in the pseudo-multipath observable and only for periods of time with stable periods in between.

FIGURE 4. Pseudo-multipath observables, low-cost patch antenna.

FIGURE 5. Pseudo-multipath observables, Tallysman TW3470.

FIGURE 6 illustrates the pseudo-multipath observable compared among three antennas for satellite G12. It shows that, as might be expected, higher grade antennas perform better in terms of multipath rejection. Both G12 and G09 were more than 30 degrees above the horizon and normally would not be excluded from processing. The attempt of applying a weighting scheme based on the carrier-to-noise-density ratio C/N0 did not introduce any accuracy improvement. Indeed, C/N0 values did not show any visible correlation with the illustrated multipath contamination.

FIGURE 6. Pseudo-multipath observables comparison for GPS satellite G12.

We empirically determined that the optimal size of buffer B1 for the 1-Hz low-cost patch antenna data is close to 20 epochs. This value allows the algorithm to trigger adequate increases of variances when the pseudo-multipath observable is perturbed and keep all “good” signals below the calculated threshold. The threshold is determined by statistical analysis of buffer B2 of a reference satellite (see Figure 2).

FIGURE 2. Block diagram of the environment detection and weight adjustment algorithm.

We found it to be a good practice to select the reference satellite as one above 70 degrees elevation angle and with minimal sample variance for low-cost antenna data processing. FIGURE 7 shows the variance behavior for three GPS satellites: calculated statistics allow the algorithm to trigger the adaptive weighting algorithm for multipath-contaminated signals of satellite G12, while G02 and G03 follow the normal elevation-angle-dependent weighting scheme.

FIGURE 7. Pseudo-multipath sample variance comparison among three satellites for the static part of the campaign. Low-cost patch antenna observations.

Static Session. In GPS-only mode, applying the proposed algorithm allowed for a decrease in positioning absolute error for the low-cost patch antenna of more than 50 percent. Horizontal error was brought down to the sub-meter level, while vertical error remained the biggest error contributor being just above 2 meters (see FIGURE 8).

FIGURE 8. Absolute errors for positioning with low-cost patch antenna, 30-minute static session; processing methods comparison.

A comparison of convergence behaviors among the tested antennas and methods for the stationary setup in GPS-only mode indicated the convergence behavior dependency on the applied multipath-rejection efforts. Higher grade antennas capable of reducing multipath to some degree demonstrate much more stable convergence to reference coordinates, while the adaptive weighting algorithm partially eliminates the residual multipath effect at the software level.

As was shown by Lou et al., for example (see Further Reading), single-frequency positioning solutions can benefit from the integration of additional satellite constellations. Here, we report on testing a combined GPS+GLONASS model. For the static case, combined processing outperformed the GPS-only model with adaptive weighting by almost 1 meter in 3D error and improved height estimation by more than 50 percent. The weight adaptation algorithm introduced only a slight improvement in combined processing (see Figure 8).

Kinematic Session. Kinematic standalone positioning is especially challenging in the case of low-cost equipment utilization. The surrounding environment is constantly changing, which is illustrated by a shift in the behavior of the pseudo-multipath observables (see Figures 5 and 6), the C/N0, and the satellite availability.

The reference trajectory for kinematic testing was computed with the Leica AX1203+ GNSS antenna and receiver combination using dual-frequency data with the PPP software developed at UNB. When compared with the reference trajectory, the standard GPS-only solution experiences jumps as large as 9 meters in the horizontal plane and 15 meters in height. Application of the adaptive weighting technique to the same dataset noticeably improves the solution, decreasing the size of jumps in all coordinates (see FIGURE 9).

FIGURE 9. Low-cost patch antenna GPS-only solution superimposed on a georeferenced Google Map: no adaptation (red) and with adaptive weighting (green).

Understandably, the most efficient approach is the additional constellation integration. We estimate that 70 percent of the trajectory was determined with sub-meter horizontal accuracy when the GPS+GLONASS model was used. The adaptive weighting technique showed only minor improvements when applied to the combined model, which brings us to the conclusion that the stochastic model in the proposed algorithm needs to be investigated further.


Our research experiment allowed us to monitor the performance of low-cost versus high-grade GNSS antennas. The pseudo-multipath observable was shown to be an effective measure to trace the impact of multipath on a navigation signal. Analysis of subsequently calculated variances allowed our algorithm to automatically assess multipath environments and implement an adaptive weighting technique.

The technique proved to be especially effective for use with low-cost patch antenna observations in a GPS-only mode, providing a more than 50 percent increase in accuracy in a static case and noticeable compensations in coordinate jumps in kinematic mode. We intend to further improve the algorithm to potentially make a bigger impact on the combined GPS+GLONASS solution. The automatic adjustment of filtering parameters such as process noise in the Kalman filter can be considered for future research.


Our research is supported by the Natural Sciences and Engineering Research Council of Canada. The authors thank Ryan White at the University of New Brunswick (UNB) for assistance with the observation campaign and Marco Mendonça, also at UNB, for helpful feedback on our work along the way. This article is based on the paper “Adaptive Algorithm for Low-cost Single-frequency Positioning in Urban Environments: Design and Performance Analysis” presented at ION ITM 2018, the 2018 International Technical Meeting of The Institute of Navigation, Reston, Virginia, Jan. 29–Feb. 1, 2018.

Ivan Smolyakov is a Ph.D. student in the Department of Geodesy and Geomatics Engineering at the University of New Brunswick (UNB) under the supervision of Richard B. Langley. His research efforts are concentrated on single-frequency precise point positioning challenges.

Richard B. Langley is a professor in the Department of Geodesy and Geomatics Engineering at UNB, where he has been teaching and conducting research since 1981. He has a B.Sc. in applied physics from the University of Waterloo and a Ph.D. in experimental space science from York University, Toronto. Langley has been active in the development of GNSS error models since the early 1980s and has been a contributing editor and columnist for GPS World magazine since its inception in 1990. He is a fellow of The Institute of Navigation (ION), the Royal Institute of Navigation and the International Association of Geodesy. He was a co-recipient of the ION Burka Award for 2003 and received the ION Johannes Kepler Award in 2007.



• GPS and Multi-GNSS Single Receiver Positioning

“Multi-GNSS Precise Point Positioning with Raw Single-frequency and Dual-frequency Measurement Models” by Y. Lou, F. Zheng, S. Gu, C. Wang, H. Guo and Y. Feng in GPS Solutions, Vol. 20, No. 4, October 2016, pp. 849–862, doi: 10.1007/s10291-015-0495-8.

Quo Vademus: Future Automotive GNSS Positioning in Urban Scenarios” by M. Escher, M. Stanisak and U. Bestmann in GPS World, Vol. 27, No. 5, May 2016, pp. 46–52.

Guidance for Road and Track: Real-time Single-frequency Precise Point Positioning for Cars and Trains” by P. de Bakker and C. Tiberius in GPS World, Vol. 27, No. 1, January 2016, pp.66–72.

“Intelligent Urban Positioning using Multi-Constellation GNSS with 3D Mapping and NLOS Signal Detection” by P.D. Groves, Z. Jiang, L. Wang and M.K. Ziebart in Proceedings of ION GNSS 2012, the 25th International Technical Meeting of the Satellite Division of The Institute of Navigation, Nashville, Tennessee, Sept. 17–21, 2012, pp. 458–472.

Single- versus Dual-Frequency Precise Point Positioning” by H. van der Marel and P.F. de Bakker in Inside GNSS, Vol. 7, No. 4, July/August 2012, pp.

Standard Positioning Service: Handheld GPS Receiver Accuracy” by C. Tiberius in GPS World, Vol. 14, No. 2, February 2003, pp. 30–35.

• Multipath Mitigation and Observation Weighting

“Multiple Faulty GNSS Measurement Exclusion Based on Consistency Check in Urban Canyons” by L.-T. Hsu, H. Tokura, N. Kubo, Y. Gu and S. Kamijo in IEEE Sensors Journal, Vol. 17, No. 6, March 15, 2017, pp. 1909–1917, doi: 10.1109/JSEN.2017.2654359.

“Robust Outlier Mitigation in Multi-Constellation GNSS Positioning for Waterborne Applications” by J.A. Pozo-Pérez, D. Medina, I. Herrera-Pinzón, A. Heßelbarth and R. Ziebold in Proceedings of ION ITM 2017, the 2017 International Technical Meeting of The Institute of Navigation, Monterey, California, Jan. 30 – Feb. 2, 2017, pp. 1330–1343.

Pseudorange Multipath Mitigation By Means of Multipath Monitoring and De-Weighting” by S.B. Bisnath and R.B. Langley in Proceedings of KIS 2001, the 2001 International Symposium on Kinematic Systems in Geodesy, Geomatics and Navigation, Banff, Alberta, June 5–8, 2001.

• Kalman Filtering

“Least-Squares Estimation and Kalman Filtering” by S. Verhagen and P.J.G. Teunissen, Chapter 22 in Springer Handbook of Global Navigation Satellite Systems, edited by P.J.G. Teunissen and O. Montenbruck, published by Springer International Publishing AG, Cham, Switzerland, 2017.

Adaptive Kalman Filtering Methods for Low-Cost GPS/INS Localization for Autonomous Vehicles by A. Werries and J.M. Dolan, Technical Report CMU-RI-TR-16-18, Carnegie Mellon University, Pittsburgh, Pennsylvania, 2016.

An Introduction to the Kalman Filter by G. Welch and G. Bishop, Technical Report, Department of Computer Science, University of North Carolina at Chapel Hill, Chapel Hill, North Carolina, 2006. See also:

Adaptive Kalman Filtering for Vehicle Navigation” by C. Hu, W. Chen, Y. Chen and D. Liu in Journal of Global Positioning Systems, Vol. 2, No. 1, June 2003, pp. 42–47.

The Kalman Filter: Navigation’s Integration Workhorse” by L.J. Levy in GPS World, Vol. 8, No. 9, September 1997, pp. 65–71.

About the Author: Ivan Smolyakov

Ivan Smolyakov is a Ph.D. student in the Department of Geodesy and Geomatics Engineering at the University of New Brunswick (UNB) under the supervision of Richard B. Langley. His research efforts are concentrated on single-frequency precise point positioning challenges.

About the Author: Richard B. Langley

Richard B. Langley is a professor in the Department of Geodesy and Geomatics Engineering at the University of New Brunswick (UNB) in Fredericton, Canada, where he has been teaching and conducting research since 1981. He has a B.Sc. in applied physics from the University of Waterloo and a Ph.D. in experimental space science from York University, Toronto. He spent two years at MIT as a postdoctoral fellow, researching geodetic applications of lunar laser ranging and VLBI. For work in VLBI, he shared two NASA Group Achievement Awards. Professor Langley has worked extensively with the Global Positioning System. He has been active in the development of GPS error models since the early 1980s and is a co-author of the venerable “Guide to GPS Positioning” and a columnist and contributing editor of GPS World magazine. His research team is currently working on a number of GPS-related projects, including the study of atmospheric effects on wide-area augmentation systems, the adaptation of techniques for spaceborne GPS, and the development of GPS-based systems for machine control and deformation monitoring. Professor Langley is a collaborator in UNB’s Canadian High Arctic Ionospheric Network project and is the principal investigator for the GPS instrument on the Canadian CASSIOPE research satellite now in orbit. Professor Langley is a fellow of The Institute of Navigation (ION), the Royal Institute of Navigation, and the International Association of Geodesy. He shared the ION 2003 Burka Award with Don Kim and received the ION’s Johannes Kepler Award in 2007.