# A Robust Method for GPS/BDS Pseudorange Differential Positioning Based on the Helmert Variance Component Estimation

Authors: Jian Deng; Xingwang Zhao; Aiguo Zhang; Fuyang Ke
Journal: Journal of Sensors
 (2017)

---

## Abstract

The use of global navigation satellite system (GNSS) is entering a new era of joint positioning based on the use of multifrequencies and multimodes. Ensuring the correct weighting of observations from each system and satellite has become a key problem during real-time positioning. This paper addresses the issue of weights of observations as well as the quality control of GPS/BDS pseudoranges in the context of real-time relative positioning. Thus, in the first place, the Helmert variance component estimation (VCE) is used to determine the relative weighting of observations from the two systems, and then, we introduce robustness estimation theory and construct a new method. The method is resistant to the influence of outliers in the observations by selecting weight iterations. To do this, we selected GPS/BDS observation data at baseline lengths of 40 km, 46 km, and 64 km for verification and analysis. Experimental results show that, in terms of the relative positioning of medium-to-long baseline based on GPS/BDS pseudorange observations, when observed values incorporate large gross errors, our method can reduce the weighting of suspicious or abnormal values and weaken their impact on positioning solutions, so that the positioning results will not appear to have large deviation.


---

## Body

## 1. Introduction

In the application of global navigation satellite system (GNSS), pseudorange differential positioning is widely used in the civilian market. The advantages of this method are that it takes less time and is more efficient and less complex than carrier differential positioning. In particular, in the case of single-frequency GNSS receivers, the use of pseudorange differential positioning means that there is no need to solve cycle slips and resolve ambiguity, as a simple difference function can be used to determine positioning. This also translates to a low cost; if it is also possible to ensure positioning accuracy and reliability in real time, such a system would have broad applications and marketable prospects. Thus, correlated with the emergence of GNSS multisystem data, numerous researchers have studied the use of GPS and BDS, either standalone or integrated, to obtain rapid positioning, even instantaneously, for short baselines [1–4].In the case of multisystem joint positioning, the issue of how to reliably determine the weight of different observations will directly affect the final positioning. Thus, methods to determine weight are divided into two categories in recent studies, the first of which is referred to as the classic prior fixed weight method. In these approaches, weights are determined according to the relationship between empirical values or real-time observations, for example, based on the angle of altitude [5, 6] or self-adaption with prior variance [7, 8] or using a stochastic model based on the signal-to-noise ratio [9, 10]. The second category of approaches includes the posterior variance-fixed weight estimation method, also named variance component estimation (VCE), which applies correction information obtained after a preadjustment to the fixed weight. Examples of these approaches include Helmert VCE, minimum norm quadratic unbiased estimation method (MINQUE), best invariant quadratic unbiased estimator (BIQUE), and least-squares variance component estimation (LC-VCE). The LC-VCE was initially proposed by Teunissen and Amiri-Simkooei, then improved and applied to GPS geometry-based observation model by Amiri-Simkooei et al. [11–14]. This method is based on the well-known principle of least squares and is flexible since it works with a user-defined weight matrix. Different weight matrix classes can be defined which all automatically lead to unbiased estimators of (co)variance components. A number of studies have applied these kinds of fixed weight methods to the combination of GPS/GLONASS positioning [15, 16], GPS/BDS positioning [17, 18], and GPS/GLONASS/BDS three-system joint positioning [19, 20]. The results of these investigations show that the second category of methods is superior to the first and that, in particular, the use of the Helmert VCE most reliably guarantees the accuracy of positioning. However, although it is clear that the Helmert VCE is the best weighting method to use in multisystem joint positioning, this approach is based on the principle of least squares, and so is more sensitive to gross errors in the observed values. This will result in random model deviations so that fixed weighting is not accurate, and positioning results are distorted.There are two commonly used methods of dealing with gross errors. The first category is outlier detection, such as data snooping, Tau, andt-tests. The outliers are detected step-by-step using statistical tests. In every step, an observation is detected as an outlier and removed from the observation set. The second category is robust estimation, such as Andrews’s M-estimation, Huber’s M-estimation, Tukey’s M-estimation, and Yang’s M-estimation. The main objective of robust estimation is to detect the normally distributed observations in the observation set and at the same time decreasing or moreover removing completely the bad effects of the outlying observations on the normal observations with respect to the degree of their discrepancy from the normal distribution. Both of these methods have been studied in depth and obtained a wide range of applications. Snow and Schaffrin [21] discussed outliers detection based on Baarda’s hypothesis-testing theory and applied the proposed approach to the three-dimensional GPS baseline vectors. Gökalp et al. [22] investigated the behavior of different outlier detection methods for GPS network. Amiri-Simkooei and Jazaeri [23] applied the data snooping procedure to the errors-in-variables (EIV) models. In the application of robust estimation, Xu [24] extended robust estimation methods to the case of correlated observations with the help of bivariate functions. Based on that, Wieser and Brunner [25] discussed the application of this method in the GPS double difference location. Yang et al. [26] proposed a robust Kalman filtering (RKF) algorithm based on innovation vectors and an equivalent weight matrix structure with outliers. After that, many scholars had conducted in-depth study and application of this method [27–29]. Guo and Zhang [27] put forward an adaptive RKF algorithm for PPP processing to overcome the difficulty of obtaining the prior information about the process noise and the updated measurement noise. Considering that the RKF is less effective in treating unequal precision observations for PPP, Yao [29] introduced residual vectors to RKF, so as to effectively reduce the effects of a single outlier.Overall, these two categories dealing with outliers have different characters. According to some researches, loose criterion for outlier detection may help little in eliminating outliers completely in real-time navigation positioning. Nevertheless, overstrict standard may result in lacking observation and less reliability of the solution [30]. And some statistical tests such as the t-test are not rigorously valid for the case of correlated observations [31]. Thus, to address this, we introduce a robust estimation method in this paper that is based on the Helmert VCE theory. Combining these two estimation theories and applying them to the relative positioning of GPS/BDS pseudoranges have enabled us to ensure both the accuracy and reliability of positioning solutions in each epoch.


## 2. A Basic Model of GPS/BDS Pseudorange Relative Positioning

In order to determine relative positioning, we chose the double difference (DD) form of observed values as our basic model, such that receiver and satellite clock errors are completely eliminated. Thus, as the result of GPS, BDS belongs in the code division multiple access (CDMA) signal system, satellite frequency is the same throughout the system, and receiver hardware delay can be considered to be the same as the receiver clock error. This latter error can therefore be completely eliminated due to the difference between satellites, and pseudorange relative positioning in the basic model can be expressed as follows:(1)∇ΔPi=∇Δρ+∇ΔKfi2+∇ΔT+∇ΔM+∇ΔO+∇Δεi,P,where ∇Δ is the DD operator, i refers to the ith frequency (e.g., GPS L1, GPS L2, BDS B1, and BDS B2), f is the frequency (Hz), P refers to pseudorange observations (m), ρ is the geometric distance from satellite to receiver (m), K is the parameter of the first-order ionospheric delay, K=40.28 TEC, TEC denotes the total electron content, T is the tropospheric delay (m), M denotes the multipath error (m), O is the satellite orbit error (m), and εi,P refers to the measurement noise of the pseudorange (m).Thus, linearizing (1) leads to an error equation, as follows:
(2)V=BX−L,where vector V is the residual of the observation, vector X is an uncertain parameter related to the correction of unfixed-point position approximations, X=δxδyδz, while B refers to the corresponding coefficient matrix, L=∇ΔPi−∇Δρ∘−∇ΔK/fi2−∇ΔT−∇ΔM−∇ΔO−∇Δεi,P, and ρ∘ is the geometric distance from the satellite to the receiver based on an approximate calculation of the point to be determined. Thus, if we select P as the weight matrix of the observations, then (3) can be derived according to the least squares principle
(3)X=BTPB−1BTPL.In this expression, the weight of the observations denotes the magnitude of the contribution of each observation to the total solution, so the appropriateness of weight determination directly affects the positioning effect. Therefore, for the same system, the scale of observation noise will vary along with the satellite elevation, propagation path, and other factors. This also means that the accuracy of each satellite pseudorange observation will be different; moreover, for different GNSS, the code rates and the accuracy of pseudorange observations will also vary. In cases where the weights are unreasonable, the accuracy of multisystem fusion positioning results may be lower than those derived from single-system positioning and will not meet the basic requirements of data fusion. In other words, irrespective of whether the single-system or multisystem joint positioning is used, the question of how to establish a random model to determine the optimal weight in positioning is critical.


## 3. A Robust Method Based on the Helmert VCE

### 3.1. The Helmert VCE

The Helmert VCE is sometimes also referred to as posterior variance stochastic model estimation. The basic idea of this approach is to set the initial weight for all kinds of observations prior to preadjustment and then based on certain principles utilize the correction information obtained from the preadjustment to estimate the pretest variance and covariance for the various kinds of observations and finally fix weight.In GPS/BDS joint positioning, error (2) contains two kinds of independent observations, L1 and L2 which are derived from GPS and BDS, respectively. Similarly, the weight matrixes are P1 and P2, respectively, such that P12 = P21 = 0. Error equations can therefore be written as follows:
(4)V1=B1X−L1,V2=B2X−L2.However, in the first adjustment, those weightsP1 and P2 of the observations are inappropriate and the corresponding unit weight variances σ012 and σ022 are also unequal. The purpose of VCE is to use the square sum, ViTPiVi, of each adjustment correction to calculate the unit weight variance estimate value, σ^0i2, given each navigation system. Specific steps for calculating σ^0i2 are presented in previous studies [18, 19]. Thus, the relationship between unit weight variance and fixed weight is as follows:
(5)P^i=cσ^0i2Pi−1,where c is constant and is usually selected from σ^0i2. With this weight matrix, the steps above are recalculated until the unit weight variance of the two systems is equal or could be shown to have a ratio approximately equal to one.


### 3.2. A Robust Method for Estimation Based on the Helmert VCE

Although the Helmert VCE described above can be used to obtain a better positioning solution, this method is not resistant to gross errors, that is to say, if observations contain gross errors and the positioning error will be large, even leading to incorrect solutions. Thus, we outline the theory of robust estimation in this paper on the basis of Helmert VCE and discuss how the influence of outliers can be mitigated by selecting appropriate weight iteration.On the basis of robust estimation theory, the least-squares estimation can be expressed as follows:(6)XkM∧=BkTP¯Bk−1BkTP¯Lk,where P¯ denotes the equal weight matrix, while Huber weight, Hampel weight, and Tukey are examples of equal weight functions. However, taking the previous experimental analyses into account, we choose to use the Institute of Geodesy and Geophysics weight function in this study [32], the function is as follows:
(7)Pi¯=Pi,Vi′<k0,Pi⋅k0Vi′k1−Vi′2k1−k02,k0≤Vi′<k1,0,k1≤Vi′,where Vi′ is the standard residual corresponding to Vi. Two key issues remain unresolved, the first of which is weight choice, Pi, itself determined by Helmert VCE, while the second is definition of k0 and k1. In general, if the values of k0 and k1 are too large, it will not be able to resist the impact of some big errors, whereas too small will be easy to weaken the effect of normal observations. In this paper, the mean value for the number of redundant observations is used to determine the values of k0 and k1. When the number of redundant observations is large, it means that more information is observed, so that we can reduce the values of k0, k1 to control the observations more strictly. On the contrary, if we have less redundant observational information, we may properly enlarge the value of k0 and k1 to avoid overcontrol of the quality of observations. As the values of k0 and k1 are too small, the weights of some observations may be reduced to zero, which lead to too little observations and ultimately affect the positioning result. Thus, if we consider the robust equation for both the parameter matrix and the observation space, the mean value for the number of redundant observations will be n−m/n, where n and m are the numbers of observations and parameters, respectively. Thus, the values of k0 and k1 should be k0=k0′⋅k and k1=k1′⋅k, respectively, where k0′∈1.0−1.5, k1′∈3.0−6.0, and k=n/n−m. These operations mean that the selection of k0 and k1 will vary with different values of n and m, increasing the flexibility of robust estimation. In general, estimation of (7) will usually involve an iterative method; such a solution of step t+1 is as follows:
(8)X∧kMt+1=AkTPt¯Ak−1AkTPt¯Lk.


## 3.1. The Helmert VCE

The Helmert VCE is sometimes also referred to as posterior variance stochastic model estimation. The basic idea of this approach is to set the initial weight for all kinds of observations prior to preadjustment and then based on certain principles utilize the correction information obtained from the preadjustment to estimate the pretest variance and covariance for the various kinds of observations and finally fix weight.In GPS/BDS joint positioning, error (2) contains two kinds of independent observations, L1 and L2 which are derived from GPS and BDS, respectively. Similarly, the weight matrixes are P1 and P2, respectively, such that P12 = P21 = 0. Error equations can therefore be written as follows:
(4)V1=B1X−L1,V2=B2X−L2.However, in the first adjustment, those weightsP1 and P2 of the observations are inappropriate and the corresponding unit weight variances σ012 and σ022 are also unequal. The purpose of VCE is to use the square sum, ViTPiVi, of each adjustment correction to calculate the unit weight variance estimate value, σ^0i2, given each navigation system. Specific steps for calculating σ^0i2 are presented in previous studies [18, 19]. Thus, the relationship between unit weight variance and fixed weight is as follows:
(5)P^i=cσ^0i2Pi−1,where c is constant and is usually selected from σ^0i2. With this weight matrix, the steps above are recalculated until the unit weight variance of the two systems is equal or could be shown to have a ratio approximately equal to one.


## 3.2. A Robust Method for Estimation Based on the Helmert VCE

Although the Helmert VCE described above can be used to obtain a better positioning solution, this method is not resistant to gross errors, that is to say, if observations contain gross errors and the positioning error will be large, even leading to incorrect solutions. Thus, we outline the theory of robust estimation in this paper on the basis of Helmert VCE and discuss how the influence of outliers can be mitigated by selecting appropriate weight iteration.On the basis of robust estimation theory, the least-squares estimation can be expressed as follows:(6)XkM∧=BkTP¯Bk−1BkTP¯Lk,where P¯ denotes the equal weight matrix, while Huber weight, Hampel weight, and Tukey are examples of equal weight functions. However, taking the previous experimental analyses into account, we choose to use the Institute of Geodesy and Geophysics weight function in this study [32], the function is as follows:
(7)Pi¯=Pi,Vi′<k0,Pi⋅k0Vi′k1−Vi′2k1−k02,k0≤Vi′<k1,0,k1≤Vi′,where Vi′ is the standard residual corresponding to Vi. Two key issues remain unresolved, the first of which is weight choice, Pi, itself determined by Helmert VCE, while the second is definition of k0 and k1. In general, if the values of k0 and k1 are too large, it will not be able to resist the impact of some big errors, whereas too small will be easy to weaken the effect of normal observations. In this paper, the mean value for the number of redundant observations is used to determine the values of k0 and k1. When the number of redundant observations is large, it means that more information is observed, so that we can reduce the values of k0, k1 to control the observations more strictly. On the contrary, if we have less redundant observational information, we may properly enlarge the value of k0 and k1 to avoid overcontrol of the quality of observations. As the values of k0 and k1 are too small, the weights of some observations may be reduced to zero, which lead to too little observations and ultimately affect the positioning result. Thus, if we consider the robust equation for both the parameter matrix and the observation space, the mean value for the number of redundant observations will be n−m/n, where n and m are the numbers of observations and parameters, respectively. Thus, the values of k0 and k1 should be k0=k0′⋅k and k1=k1′⋅k, respectively, where k0′∈1.0−1.5, k1′∈3.0−6.0, and k=n/n−m. These operations mean that the selection of k0 and k1 will vary with different values of n and m, increasing the flexibility of robust estimation. In general, estimation of (7) will usually involve an iterative method; such a solution of step t+1 is as follows:
(8)X∧kMt+1=AkTPt¯Ak−1AkTPt¯Lk.


## 4. Experiments and Discussion

In order to test the effectiveness of the method outlined above, real data were collected from two reference stations, Taoy and Jint, within the Chinese Suzhou continuously operating reference station (CORS) network, which encompass a 40 km baseline. Of these, the Taoy reference station is a known point, while Jint occupies an as yet undetermined location. Data were collected on December 18, 2014, and 20 minutes of observations at a 1 sec sampling rate were selected arbitrarily. At the same time, in order to highlight the characteristics of the robust Helmert VCE, we selected a satellite at random from GPS and BDS, respectively, at the Jint point and artificially added 5 m, 10 m, and 20 m gross errors via C1 code observations in the 200th, 400th, and 600th epochs. We then calculated relative positioning using GPS/BDS pseudoranges with the two methods applying either conventional Helmert VCE (scheme 1) or our robust Helmert VCE (scheme 2). This approach enabled us to compare and contrast the estimation results from the two different schemes.As for the method of robust Helmert VCE, we used the posterior value of unit weight mean square error (σ^) to control the number of iteration in the experiments. According to the pseudorange observation error is generally about ±0.3 m, we took the double observation error as the threshold. That is to say, the iteration will stop if σ^<0.6m. Based on that, in practical applications, we can limit the number of iterations (i.e., no more than 10) to ensure the real-time performance of the positioning. As some experiments showed that as increasing the number of iteration the value of σ^ changed too small.Figure1 shows the final number of satellites used in each of the two estimation approaches. The results show that due to there is no quality control of satellite observations in scheme 1, all the observations of 21 satellites are involved in the positioning solution. However, in scheme 2, that number of satellites varies greatly in each epoch. As our robust estimation method eliminates the effects of the outliers by selecting weight iterations. The weights of some satellites are reduced even to zero. That is to say, some satellites considered to have gross errors are removed, so as to reduce the overall impact of gross errors on positioning results.Figure 1
Number of satellites used in each scheme.Positioning results compared with exact values for each epoch are shown in Figures2–4 (data in Figures 2(a), 3(a), and 4(a) are from scheme 1 while those in Figures 2(b), 3(b), and 4(b) are from scheme 2). Data are also presented from the north, east, and upward directions, while artificial gross errors cause a variety of effects on each positioning direction, those in the north direction are largest, followed by the east and upward directions, respectively. Comparing the positioning results from the two schemes, it is clear that the conventional Helmert VCE is inevitably influenced by gross errors, especially when these are incorporated in observed values (i.e., 200th, 400th, and 600th epochs). At the same time, large deviations are also seen in positioning results, especially in the north direction, including deviations of −1.3 m, −1.8 m, and −3.2 m, respectively. However, when our robust estimation approach is employed (scheme 2), the epoch with the largest deviation (see Figures 2(a), 3(a), and 4(a)) is no longer present in the north, east, and upward directions (Figures 2(b), 3(b), and 4(b)). In other words, by selecting an appropriate weight iteration, reducing the weight of suspicious or abnormal values, and mitigating the impact of the positioning calculation have enabled us to obtain higher precision coordinate values. Combining these results with the mean square error of unit weight shown in Figure 5, the absolute value of the unit weight mean error of scheme 2 can be controlled to within 0.6 m, obviously a significant improvement on scheme 1. It is also clear that our robust Helmert VCE can not only reasonably determine the weight of GPS and BDS pseudorange observations but can also be used to effectively mitigate the influence of gross errors.Figure 2
Positioning errors (north). (a) Helmert VCE. (b) Robust Helmert VCE.
(a)
(b)Figure 3
Positioning errors (east). (a) Helmert VCE. (b) Robust Helmert VCE.
(a)
(b)Figure 4
Positioning errors (upwards). (a) Helmert VCE. (b) Robust Helmert VCE.
(a)
(b)Figure 5
Absolute values of unit weight mean error. (a) Helmert VCE. (b) Robust Helmert VCE.
(a)
(b)In order to further test the generality of our robust Helmert VCE method, we conducted a series of experiments to verify positioning solutions from different baseline lengths. In combination with the experiment described above, we selected four stations in Suzhou CORS encompassing the baseline lengths of 40 km, 46 km, and 64 km, respectively. The Taoy reference station was used as a known point, while the other three were set as fixed points. We also selected 20 minutes of observation data at a 1 sec sampling rate and artificially added gross errors of 5 m, 10 m, and 20 m to C1 code observations in the 200th, 400th, and 600th epochs.Figure6 shows the distribution of positioning errors in the horizontal direction for the two schemes (Figure 6(a) shows data for scheme 1, while Figure 6(b) shows data for scheme 2). Comparing the two schemes shows that, for the three different baseline lengths, the gross errors in scheme 1 (Figure 6(a)) translate to larger errors in individual points, a maximum deviation of more than 3 m. In contrast (Figure 6(b)), when the effect of gross errors is rejected in scheme 2, the overall distribution of points is more uniform, and more than 99% of positioning errors are concentrated within 1 m. The use of scheme 2 can therefore ensure that positioning results do not deviate too far from reality.Figure 6
Positioning errors in different baseline lengths. (a) Helmert VCE. (b) Robust Helmert VCE.
(a)
(b)To further analyze differences in overall positioning between the two schemes across all observational epochs, we incorporated root mean square (RMS) error and standard deviation (STD) to our experiments. In this case, RMS error mainly indicates the degree to which the positioning result deviates from the exact value, while STD reflects the dispersion degree of positioning results for all the epochs. The results of this aspect of the analysis are shown in Table1, which lists the overall RMS error as well as STD values for the three baselines in north, east, and upward directions as well as the final positioning (Table 1). These results show that as distance increases so does relative positioning error in both schemes. It is consistent with basic theory. Further comparison of data from all directions in the two schemes shows that both RMS and STD values of scheme 2 are higher by between 1 cm and 5 cm than those of scheme 1. In other words, when an observation incorporates no gross error, or just a few epochs include gross errors, the overall positioning accuracy recovered using scheme 2 is slightly lower than that of scheme 1. The main reason for this difference is that scheme 2 provides a robust estimate; thus, the estimated results of this scheme are not optimal in cases where there is little or no gross observational error. The main advantage of our robust method is that it incorporates the ability to resist gross errors and can guarantee the validity and availability of the solution within a certain precision range for each epoch whether, or not, observations include gross errors.Table 1
RMS and STD values for different length baselines (m).
Scheme 1
Scheme 2
N
E
U
Position
N
E
U
Position
RMS
39 km
0.29
0.25
0.63
0.74
0.27
0.27
0.68
0.78
46 km
0.28
0.23
0.69
0.78
0.26
0.24
0.72
0.80
64 km
0.35
0.21
0.69
0.80
0.35
0.23
0.74
0.85
STD
39 km
0.28
0.20
0.62
0.71
0.27
0.22
0.69
0.77
46 km
0.27
0.20
0.67
0.75
0.26
0.21
0.70
0.77
64 km
0.27
0.21
0.67
0.75
0.26
0.23
0.72
0.80


## 5. Conclusions

This paper focuses on the issue of combinatorial positioning, how to reasonably determine the weights of observations for each satellite system, and how to effectively avoid the influence of gross errors on positioning results. We applied the Helmert VCE as well as robust estimation theory to the relative positioning of GPS/BDS pseudoranges. There are two main conclusions of this study.First, given the combination relative positioning of GPS/BDS pseudorange over medium-to-long baselines, conventional Helmert VCE is well able to determine the observed weight matrix for each system. At the same time, the average plane accuracy using this approach can reach the submeter scale, while elevation accuracy within 1 m. However, when observed values incorporate gross errors, positioning results deviate by a much larger amount.Second, the results show that using our robust method based on Helmert VCE is effective when observed values do not incorporate gross errors (i.e., the model is correct), and the estimation results obtained are not optimal. However, when observed values contain a large gross error, use of our robust method can mitigate the influence of suspicious or abnormal data by choosing an appropriate weight iteration and reduces the influence on positioning solutions. In other words, our robust method can guarantee the validity and availability of the solution within a certain precision range for each epoch whether, or not, observations include gross errors.



---

*Source: 8172342-2017-12-17.xml*