Evaluation of Kinematic Precise Point Positioning Convergence with an Incremental Graph Optimizer

by   Ryan M. Watson, et al.

Estimation techniques to precisely localize a kinematic platform with GNSS observables can be broadly partitioned into two categories: differential, or undifferenced. The differential techniques (e.g., real-time kinematic (RTK)) have several attractive properties, such as correlated error mitigation and fast convergence; however, to support a differential processing scheme, an infrastructure of reference stations within a proximity of the platform must be in place to construct observation corrections. This infrastructure requirement makes differential processing techniques infeasible in many locations. To mitigate the need for additional receivers within proximity of the platform, the precise point positioning (PPP) method utilizes accurate orbit and clock models to localize the platform. The autonomy of PPP from local reference stations make it an attractive processing scheme for several applications; however, a current disadvantage of PPP is the slow positioning convergence when compared to differential techniques. In this paper, we evaluate the convergence properties of PPP with an incremental graph optimization scheme (Incremental Smoothing and Mapping (iSAM2)), which allows for real-time filtering and smoothing. The characterization is first conducted through a Monte Carlo analysis within a simulation environment, which allows for the variations of parameters, such as atmospheric conditions, satellite geometry, and intensity of multipath. Then, an example collected data set is utilized to validate the trends presented in the simulation study.



page 6


Using PPP Information to Implement a Global Real-Time Virtual Network DGNSS Approach

Global Navigation Satellite Systems (GNSS) provide positioning services ...

Towards Robust GNSS Positioning and Real-time Kinematic Using Factor Graph Optimization

Global navigation satellite systems (GNSS) are one of the utterly popula...

Deep urban unaided precise GNSS vehicle positioning

This paper presents the most thorough study to date of vehicular carrier...

Accurate outdoor ground truth based on total stations

In robotics, accurate ground-truth position fostered the development of ...

Clock Error Analysis of Common Time of Flight based Positioning Methods

Today, many applications such as production or rescue settings rely on h...

Triple Scissor Extender: A 6-DOF Lifting and Positioning Robot

We present a novel 6 DOF robotic mechanism for reaching high ceilings an...

A Robotic Antenna Alignment and Tracking System for Millimeter Wave Propagation Modeling

In this paper, we discuss the design of a sliding-correlator channel sou...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

The ability to precisely localize a platform is of paramount importance to a myriad of fields (e.g., augmented reality [augmentedReality], autonomous navigation [autonomousCar], and natural hazard monitoring [rosen2006uavsar]). To facilitate the precise localization of the platform, several navigation aids can be utilized (e.g., vision [visionSLAM], lidar [lidarNav], inertial [jekeli2001inertial]). One navigation aid that is commonly utilized for terrestrial applications is a global navigation satellite system (GNSS) receiver. The signals propagated by a GNSS satellite provides the algorithm with information that allows for accurate, global localization of the platform.

One commonly used methodology for processing GNSS signals is the Precise Point Positioning (PPP) approach [zumberge1997precise]. The PPP algorithm utilizes the dual-frequency undifferenced GNSS observables, which allows the technique to operate without the need of external reference stations. The undifferenced observations are use along with precise GNSS orbit and clock bias products to mitigate the errors removed through observation differencing [misra2006global]. The orbit and clock products that enable the PPP method to achieve decimeter level positioning can be broadcast to an end-user in real-time (e.g., L-band [dixon2006starfire] and Iridium modem link [muellerschoen2003aviation]).

Real-time kinematic-PPP (kPPP) provides similar positioning performance when compared to traditional differential GPS (DGPS) (i.e., Real Time Kinematic) for dynamic platforms [grossUAV]. The comparable positioning accuracy without the need for a nearby static GPS reference station makes it an attractive processing formulation. However, it has been noted in several studies that the PPP formulation has a longer convergence period than comparable differential techniques [pppConverge1, pppConverge2].

In an attempt to decrease the initial convergence period, there has been a plethora of research into augmenting the PPP approach with additional information sources. One of the most commonly utilized augmentation sources for traditional single constellation PPP is additional GNSS observables. One example of this type of augmentation is the incorporation of multiple constellation observations [cai2015precise, multiPPP]. Another example of this type of augmentation is the PPP-RTK formulation [pppRTK] which provides faster convergence by enabling integer ambiguity resolution [bertigerAmb]. Another well studied form of PPP augmentation is the tightly coupled PPP inertial navigation (INS) formulation [groves2013gpsins], which has also been shown to decrease the initial convergence period of PPP [watson2017Flight]. However, all PPP augmented methods require additional infrastructure (e.g., a network of reference stations, or additional sensors on-board), which can be prohibitive for many applications.

Another method to decrease the convergence period of PPP is to utilize a novel optimization framework. This has the potential to provide a benefit over the previously discussed PPP methods because all the previously provided methods utilizing the same underlying optimization framework (i.e., a variant of the Kalman filter

[kalman, julier1997new, bierman2006factorization]

). Where this framework estimates the desired states by marginalizing all prior information and propagating with dynamic models to the next time step. For PPP, where a subset of the desired states are not observable over a single epoch (i.e., the carrier-phase ambiguity states), this may not be the best framework.

In this paper we evaluate the convergence properties of PPP utilizing an incremental graph optimization framework that allows for real-time smoothing. This work relies upon advances made within the robotics community on efficient, real-time smoothing. Where research into smoothing, within the robotics community, has been dominated by graph based methodologies since the seminal paper on the subject was published in 1997 [graphSmooth]. When [graphSmooth] was published, graph-based smoothing was not widely utilized due to computation complexity of solving the initial formulation. However, quickly thereafter, methods were proposed to greatly reduce complexity through the utilization of factor graphs [factorGraphOG]. The formulation as presented in [sam] was particularly influential as it provided connections between the factor graph formulation and sparse linear algebra. The idea of batch factor graph optimization was later extended to an incremental inference framework in [isam, isam2]. The work presented in [isam2] provides a frame-work to conduct real-time [realTime], non-linear graph based filter and smoothing.

The rest of this paper is organized in the following manner. First, the technical approach will be discussed. The technical discussion will provide an overview of factor graph optimization for GNSS optimization, and the ability to incrementally updating using the Bayes tree data structure. Next the discussion will shift to the evaluation of the algorithm with both simulated and collected datasets. Finally, some concluding remarks and future work will be discussed.

Ii Technical Approach

Ii-a Factor Graphs

The ability to conduct accurate and efficient inference is at the center of all navigation algorithms. One way to represent the inference problem is with a probabilistic graphical model  [pearl], which can take several forms. One convenient graphical model for conducting state estimation is the factor graph  [factorGraphOG]

. At a fundamental level, the factor graph provides a convenient framework for factorizing a function of several variables into smaller subsets. More explicitly, this model provides a useful framework for factorizing the posterior distribution, which allows for efficient calculation of the state vector that maximizes the

distribution. The factorization is represents as a bipartite graph, , where there are two types of vertices: the states to be estimated, , and the probabilistic constraints applied to those states, . An edge only exists between a state vertex and a factor vertex if that factor is a constraint applied on that time-step. An example factor graph is depicted in Fig.1, where represents the states to be estimate at time-step , represents prior information about the estimated states at time-step , represents the motion model of the platform from time-step to , and represents the constraint applied to the state by a measurement (e.g., a GNSS pseudorange observable).


Fig. 1: Example factor graph

As previously mentioned, the factor graph provides a factorization over the posterior distribution, . Thus, we can easily calculate the state vector that maximizes the posterior (MAP) by finding the state vector that maximizes the product of factors, as depicted in Eq. 1.


For a through discussion on factor graph based state estimation the reader is refered to [dellaert2017factor].

The optimization problem presented in Eq. 1 can be reduced to non-linear least-squares formulation if Gaussian noise is assumed, as provided in Eq. 2.


Now that a general discussion of the factor graph framework has been provided, we can proceed by constructing GNSS specific factors. For this work, we will detail the construction of two factors: the GNSS observation factor, and the carrier-phase bias factor.

Ii-B Constructing the GNSS Observation Factor

To allow autonomy of the PPP approach from local reference stations, the undifferenced dual-frequency GNSS observables are utilized. Due to the undifferenced nature of the observations, the PPP processing technique must incorporate GNSS error mitigation models — these models provide corrects for the corrupting sources that would be mitigated through observation differencing — to provide an accurate positioning solution. The sources that corrupt a GNSS observation can be segregated into three partitions: the error contributed by the propagation medium, the error contributed by the control segment, and the error contributed by the user.

To begin constructing our measurement model, the method implemented to mitigate the propagation medium errors are discussed. The error attributed to the propagation medium is composed of delay due to the ionosphere and the delay due to the troposphere. To mitigate the ionospheric delay, we leverage the dispersive nature of the medium, and a linear combination of the GPS and frequencies (1575.42 MHz and 1227.60 MHz, respectively) is formed to produce ionospheric-free (IF) pseudorange and carrier phase measurements  [misra2006global]. The IF combination of an observable, , can be seen in Eq. 3.


To mitigate the error attributed to the troposphere, both the wet and the dry component of the troposphere must be modeled, as shown in Eq. 4. For this study, the Hopfield model  [kaplan2005understanding]

is used to model the dry component of the troposphere. To compensate for the wet delay — the wet component only accounts for approximately 10% of the total troposphere error — and the residual error of the dry delay model, a stochastic random variable is added to the state vector.


To mitigate the error attributed to the control segment, the PPP approach utilizes orbit and clock corrections. These global corrections are generated through a network of reference stations.

Finally, a discussion on the user error segment is provided. The user error segment is composed of two sources: multipath error, and receiver thermal noise error. For this study, no methods were implemented to explicitly model the user segment error; however, as noted in  [userError], the magnitude or the user error is proportional to the elevation angle between the platform and the satellite so, within this evaluation, the uncertainty in the observation is scaled by the elevation angle. It should be noted that PPP observational models for moving platforms typically include corrections for relativistic effects (i.e. from the GPS broadcast correction), receiver and satellite antenna phase center variation, and carrier-phase wind-up; however, these effects were neglected within this simulation study. Additionally, dynamic platform generally couple inertial information with the GNSS observables to mitigate uncertainty in the platforms dynamic model  [watson2017Flight].

Utilizing the provided error mitigation techniques, the PPP observation model can be constructed. The pseudorange and carrier-phase measurements are modeled as shown in Eq. 5 and Eq. 6, respectively: where, is the geometric range between the platform and the satellite, is the receiver’s clock bias, is the satellite’s clock bias, is the tropospheric delay in the zenith direction, is a user to satellite elevation angle dependent mapping function, is the correction attributed to relativistic effect [pascual2007introducing], is the correction attributed to the offset between the satellite’s center of mass and the phase center of the antenna [heroux2001gps], is the differential code bias correction [kaplan2005understanding], is the correction attributed to the windup effect on the phase observables [wu1992effects], is the wavelength corresponding to the IF combination, and is phase ambiguity. In Eqs. 5 and 6 the remaining unmodelled error sources are indicated with . To implement the provided observation model in software, the open-source library GPSTk [harris2007gpstk] is utilized.


Using the PPP observation model, we can construct a GNSS constraint for the factor graph [sunderhauf2012multipath]. To begin, we note that the GNSS observations are providing a set of likelihood constraint, , on the optimization process. If the assumption is made that the state and measurement noise models are Gaussian, then this constraint can be incorporated into factor graph through the mahalanobis distance, as provided in Eq. 7, where is the observed measurement, is the estimated measurement — calculated using Eq’s 5 and 6 — and is the uncertainty in the observation.


Ii-C Incorporating the Carrier-Phase Ambiguity States

There are several way in which the carrier-phase ambiguity states can be incorporated into the factor graph. One such way is to incorporate a new carrier-phase ambiguity state for each epoch. Consecutive carrier-phase ambiguity states can be constrained by a process noise update. The measurement Jacobian associated with this graph construction is represented in Fig. 2.A. From Fig 2.A, we can see a measurement Jacobian that is more densely populated than desired.

To construct less densly populated measurement Jacobian (i.e., a more efficient optimization scheme), we can leverage the knowledge that the true carrier-phase ambiguity value for a given satellite within a continually tracked phase-arc is a constant value. Due to this property of the true ambiguity value, the carrier-phase ambiguity factor can be represented as a random constant variable. Where, initially, a single factor is added for each satellite, and a new factor is added only if the there is a cycle-slip or if a new satellite is tracked. By treating the carrier-phase bias factor in this manner (i.e., like a “landmark” variable in traditional pose-graph SLAM [grisetti2010tutorial]), and utilizing the Bayes tree based optimizer, an efficient real-time smoothing formulation for GNSS signal processing is presented. The measurement Jacobian associated with this graph construction is represented in Fig. 2.B. From Fig. 2.B, we see a less densely populated measurement Jacobian, as desired.

Fig. 2: Sparse measurement Jacobian for the PPP processing strategy. Figure (A) shows the measurement Jacobian when a new carrier-phase ambiguity state is added for each epoch. Figure (B) shows the measurement Jacobian when a new carrier-phase ambiguity is added only when a new satellite is tracked or if a carrier-phase cycle-slip occurs.

Ii-D Incremental Factor Graph Inference

The formulation presented in the previous sections provides an efficient estimation of when all of the information is provided . However, it is generally the case that information is arriving sequentially, and it is desired to incrementally provide state estimates. The ability to provide an incremental estimator lies in the capability of the optimizer to reuse prior computations. A well studied technique of computation reuse, for state estimation, is to employ QR-factorization to update the previous matrix factorization [bierman2006factorization, isam]; however, this technique only works for linearized systems.

To overcome this limitation, the Incremental Smoothing and Mapping (iSAM2) formulation was developed  [isam2]. The iSAM2 formulation allows for incremental inference over linear or non-linear objective functions through the utilization of a novel graphical model, the Bayes tree  [bayesTree]. To provide insight into this formulation, specifically for GNSS applications, a simple GNSS example will be presented. Where it will be shown how to convert the GNSS factor graph into a Bayes tree. Additionally, a discussion will be provided on how the Bayes tree graphical models allows for efficient inference.

To begin our discussion, a factor graph that represents the GNSS inference problem is presented in Fig. LABEL:fig:gnssGraph. With this factor graph, it is desired to estimate the states . In this formulation, X represents the position, troposphere, and receiver clock bias states, as provided in Eq. 8. Additionally, the vertices B represents the carrier-phase bias states.