Testing of a new single-frequency GNSS carrier phase attitude determination method: land, ship and aircraft experiments
- First Online:
- Received:
- Accepted:
DOI: 10.1007/s10291-010-0164-x
- Cite this article as:
- Teunissen, P.J.G., Giorgi, G. & Buist, P.J. GPS Solut (2011) 15: 15. doi:10.1007/s10291-010-0164-x
Abstract
Global navigation satellite system (GNSS) ambiguity resolution is the process of resolving the unknown cycle ambiguities of the carrier phase data as integers. The sole purpose of ambiguity resolution is to use the integer ambiguity constraints as a means of improving significantly on the precision of the remaining GNSS model parameters. In this contribution, we consider the problem of ambiguity resolution for GNSS attitude determination. We analyse the performance of a new ambiguity resolution method for GNSS attitude determination. As it will be shown, this method provides a numerically efficient, highly reliable and robust solution of the nonlinearly constrained integer least-squares GNSS compass estimators. The analyses have been done by means of a unique set of extensive experimental tests, using simulated as well as actual GNSS data and using receivers of different manufacturers and type as well as different platforms. The executed field tests cover two static land experiments, one in the Netherlands and one in Australia, and two dynamic experiments, a low-dynamics vessel experiment and high-dynamics aircraft experiment. In our analyses, we focus on stand-alone, unaided, single-frequency, single-epoch attitude determination, as this is the most challenging case of GNSS compass processing.
Keywords
GNSS Attitude determination Integer ambiguity resolutionIntroduction
Carrier phase integer ambiguity resolution is the key to fast and high-precision GNSS positioning and navigation. It is the process of resolving the unknown cycle ambiguities of the double-differenced carrier phase data as integers. Once this has been done successfully, the carrier phase data will act as very precise pseudorange data, thus making very precise positioning and navigation possible.
In this contribution, we consider the GNSS model for attitude determination. GNSS attitude ambiguity resolution is a rich field of current studies, with a wide variety of challenging (terrestrial, sea, air and space) applications, see e.g. Lu (1995), Tu et al. (1996), Montgomery et al. (1999), Peng et al. (1999), Hodgart and Purivigraipong (2000), Caporali (2001), Lopes (2002), Yoon and Lundberg (2002), Ziebart and Cross (2003), Park and Teunissen (2003), Dai et al. (2004), Lin et al. (2004), Simsky et al. (2005), Kuylen et al. (2005), Buist (2007), Hide and Pinchin (2007), Pinchin et al. (2008).
The earliest methods of attitude ambiguity resolution are the so-called motion-based methods, see e.g. Cohen and Parkinson (1992), Cohen (1996), Crassidis et al. (1999), Chun and Park (1995). These methods take advantage of the change in receiver-satellite geometry that is induced by the platform’s motion. They are not applicable, however, on an epoch-by-epoch basis, as the presence of motion is needed per se. Another class of methods is the class of search-based methods, see e.g. Brown (1992), Knight (1994), Park et al. (1996). These methods are not necessarily dependent on motion and can therefore be used instantaneously in principle. They differ in the search domain used and in the objective function to be optimized. The Knight method (Knight 1994), for instance, searches for the optimal relative antenna positions. It requires some initial knowledge of the platform’s attitude, in the absence of which the method is reported to become problematic (Gomez and Lammers 2004). Also in the ARCE method (Park et al. 1996), relative antenna positions are searched for. These methods divide, as e.g. Jang and Kee (2009) and as some of the older baseline ambiguity resolution methods, e.g. Hatch (1990), the n-dimensional integer ambiguity vector into a 3-dimensional so-called independent part and an (n − 3)-dimensional dependent part. The independent part is then used in the baseline search.
More recent attitude determination methods search in the ambiguity domain. Several of them make use of the popular LAMBDA method, see e.g. Peng et al. (1999), Furuno (2003), Lin et al. (2004), Monikes et al. (2005), Kuylen et al. (2006), Hauschild and Montenbruck (2007), Hauschild et al. (2008),Wang et al. (2009a, b), as this method is known to be efficient and known to maximize the ambiguity success rate (Teunissen 1995, 1999; Verhagen and Teunissen 2006). However, the standard LAMBDA method has been developed for unconstrained and/or linearly constrained GNSS models. The method is therefore not necessarily optimal for the GNSS attitude determination problem, for which often the baseline length is provided as well. Many of the existing methods make use of this additional information, by checking whether or not the candidate baselines satisfy the given baseline length, see e.g. Park et al. (1996), Monikes et al. (2005), Kuylen et al. (2006), Wang et al. (2009a, b). Although this usage of the baseline length indeed improves ambiguity resolution, methods that use such an approach are still ad hoc as this validity check does not do full justice to the given information.
In order to do proper justice to the a priori information, the nonlinear baseline constraint should be fully integrated into the ambiguity objective function, thereby receiving a proper weighting in its minimization and providing guidance for the integer search. The first method for which this has been achieved is the constrained LAMBDA method (Teunissen 2007). This method, which is a nontrivial modification of the LAMBDA method, is applicable to any GNSS compass model. The method’s constrained integer least-squares theory has been described in detail in Teunissen (2009).
In this contribution, we analyse the practical performance of the constrained (C-) LAMBDA method. This is done by means of extensive tests, using simulated as well as actual GNSS data. We focus on stand-alone, unaided, single-frequency, single-epoch attitude determination, as this is the most challenging case of GNSS compass processing. Our field tests, with receivers of different make and type, cover two static land experiments, one in the Netherlands and one in Australia, and two dynamic experiments, a low-dynamics vessel experiment and a high-dynamics aircraft experiment.
This contribution is organized as follows. In "The GNSS compass model", we introduce the GNSS compass model. It is a nonlinear constrained version of the short-baseline GNSS model. In "The least-squares solution", we apply the least-squares principle to the GNSS compass model, and we show how to simultaneously incorporate the integer ambiguity constraints and the baseline length constraint. The ambiguity objective function so obtained is shown to be quite different from that of the standard LAMBDA method, as well as from all the existing methods that make use of a baseline length constraint.
In "The C-LAMBDA method", we briefly describe the steps of the C-LAMBDA method. Due to the complexity involved, particular attention is given to the size setting of the non-ellipsoidal search space and to the search and shrink strategy employed. "Simulation experiment", "Static experiment", "Ship experiment" and "Aircraft experiment" are devoted to the experiments. The results of our extensive simulations are reported in "Simulation experiment". Both the success rate and the computational speed are analysed for different measurement scenarios. Comparisons with the standard LAMBDA method are also included. In "Static experiment", the results of our two static experiments are reported. The empirical success rates of this and the following sections have been obtained from using post-processing results as ‘ground truth’. The high success rates of the simulations are confirmed, and also the method’s robustness is illustrated. In the last two sections, we report the results of our dynamic experiments. The vessel and aircraft experiments both confirm the method’s excellent single-frequency, single-epoch performance.
The GNSS compass model
In the single-frequency, single-epoch case, we have, when tracking n + 1 satellites, m = 2n DD carrier phase and pseudorange observables, n single-frequency integer ambiguities and three baseline components.
Although our constrained ambiguity resolution method for solving model Eq. (2) will be tested with single-frequency GPS data, we emphasize that the method is generally applicable and thus also applicable to next generation, multi-frequency GNSSs (e.g., modernized GPS, Galileo, Beidou/Compass), whether they are used as standalone systems or in combination. We focus, however, on the single-frequency, single-epoch performance, as it is the most challenging case for ambiguity resolution. We also note that the requirements for a “single-epoch” performance are more stringent than those for a “real-time” performance. A “real-time” performance can still rely on past information, and it does therefore not necessarily permit a “cold start” as the “single-epoch” performance does. Since our single-epoch processing does not rely on past data, it also does not rely on the assumed time-invariance of the carrier phase ambiguities. Hence, when successful, the epoch-by-epoch ambiguity resolution has the additional advantage of being insensitive to cycle slips.
The least-squares solution
These are the integer ambiguities that we would like to compute in case of the GNSS compass model. It will be clear that the computation of \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{a} \) is much more complicated than in case of the unconstrained GNSS model Eq. (1). The ambiguity objective function F(a) is not a quadratic function anymore, and the ambiguity search space has become a nonellipsoidal search space. The constrained (C-) LAMBDA method has been developed to compute the baseline constrained integer ambiguity solution \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{a} \) of Eq. (7) in a rigorous and efficient way. Its relation to the standard LAMBDA method can be understood as follows. Note that in the absence of the constraint \( ||b|| = l \) in Eq. (6), \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{b} (a) \) would be identical to \( \hat{b}(a), \) and Eq. (5) would reduce to \( F(a) = ||\hat{a} - a||_{{Q_{{\hat{a}\hat{a}}} }}^{2} , \) which is the objective function that is integer minimized with the standard LAMBDA method.
The C-LAMBDA method
We now briefly describe the options and steps of the C-LAMBDA method. First, we describe a rather naive approach, which is based on a straightforward exhaustive search. The advantage of this approach is that the search routines of the standard LAMBDA method can be used. Its disadvantage is that it will be inefficient for most single-frequency models. However, for a GNSS model of enough strength, like a multi-frequency model, this approach can still have its merits.
Following the naive approach, we describe the more subtle search and shrink approach of C-LAMBDA. This approach tries to do more justice to the nonellipsoidal shape of the search space. A large part of its efficiency stems from the fact that the search space is shrunk before the search is executed. For more details on the C-LAMBDA method, we refer to Teunissen (2007, 2009).
An exhaustive search
- 1.
Set the size of the search space by taking \( \tilde{\chi }^{2} = F(\tilde{a}) \) for some \( \tilde{a} \in {\mathbb{Z}}^{n} . \) For a discussion on the choice of \( \tilde{a}, \) see "Computational timing".
- 2.Enumerate all the integer vectors contained in the larger (ellipsoidal) search spaceThis can be efficiently performed with the standard LAMBDA method.$$ \Upomega_{0} (\tilde{\chi }^{2} ) = \left\{ {a \in {\mathbb{Z}}^{n} ||\hat{a} - a||_{{Q_{{\hat{a}}} }}^{2} \le \tilde{\chi }^{2} } \right\} \supset \Upomega (\tilde{\chi }^{2} ) . $$
- 3.
Compute F(a) for each collected integer vector, and select the one which returns the smallest value for this objective function.
Clearly, this exhaustive search is simple and rather straightforward to apply. However, it also has the tendency of being rather inefficient, in particular if the underlying GNSS model lacks sufficient strength. Since F(a) needs to be computed for all integer candidates, this also holds true for the rather time-consuming computation of \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{b} (a), \) cf. Eq. (6). Hence, the whole search becomes very inefficient if the search space contains too many integer vectors. This can be avoided if one is in the position of computing a small enough value for \( \tilde{\chi }^{2} , \) which is possible if the underlying GNSS model has sufficient strength. This is the case for example with short-baseline, multi-frequency models, where the bootstrapped solution (or even the rounded one) based on the unconstrained float solution is already close to the final fixed solution. This is generally not the case, however, for the single-frequency, single-epoch GNSS models that we are considering in the present contribution. For such models, we need an alternative, much more efficient approach.
Search and shrink
To make the search much more efficient, a search and shrink strategy was introduced in Teunissen (2007). It aims at iteratively reducing the size of the search space without the necessity of computing \( \overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\smile}$}}{b} (a) \) at each step. An important element of this approach lies in its capacity of bounding the function F(a) by functions that are easier to evaluate.
The search algorithm is thus divided in three consecutive steps: shrinking (working with the set Ω_{2}), enumerating (working with the set Ω_{1}) and minimizing (computing F(a) for the remaining candidates). For a detailed description of the search and shrink strategy, we refer to Teunissen (2009). In addition to the search and shrink strategy, the C-LAMBDA method also has the option of the search and expansion strategy as introduced in Park and Teunissen (2003), see also Teunissen (2007) and Buist (2007). This strategy is not part of the present tests, since it has been shown to generally have comparable numerical performance as the search and shrink strategy.
In the next four sections, we report on our testing of the C-LAMBDA method. Four different types of experiments have been conducted. The first one is an extensive and controlled simulation experiment. This is followed by three different types of field experiments, namely static experiments, a low-dynamics vessel experiment and a high-dynamics aircraft experiment.
Simulation experiment
In this section, we present our simulation results. For different measurement scenarios, the success rate and computational speed of C-LAMBDA are analysed and compared with the standard LAMBDA method.
Simulation set-up
The GNSS design matrices (cf. compass model in Eq. 2) needed for the simulations were constructed by means of the VISUAL software (Verhagen 2006) using the assumed receiver locations and the actual GPS constellation as input (date and time: 22 Jan 2008 00:00; GPS week 1463; location: latitude 50°, longitude 3°). For the stochastic model, we assumed different noise levels, ranging from 1 to 30 mm for the undifferenced phase data and from 5 to 30 cm for the undifferenced code data. For each simulation scenario, a set of 10^{5} Gaussian distributed data vectors was generated. Then, each simulation was repeated for the different geometries (number of satellites with varying PDOPs) and for the different combinations of measurement precision.
Two different aspects of the methods were investigated: the success rate, which depends on the strength of the underlying GNSS model, and the speediness of the method, which is mainly related to the search strategy adopted.
Single-frequency, single-epoch success rates
Simulation-based SF/SE success rates for LAMBDA and C-LAMBDA, as function of the number of satellites and code/phase noise levels
σ_{ϕ} [mm] | 30 | 3 | 1 | ||||||
---|---|---|---|---|---|---|---|---|---|
σ_{p} [cm] | 30 | 15 | 5 | 30 | 15 | 5 | 30 | 15 | 5 |
# Sat | LAMBDA [%] C-LAMBDA [%] | ||||||||
5 | 0.41 | 2.84 | 29.59 | 3.30 | 19.50 | 86.67 | 5.99 | 26.89 | 95.37 |
3.47 | 9.57 | 41.64 | 72.43 | 88.86 | 99.63 | 96.54 | 99.94 | 100 | |
6 | 0.64 | 3.54 | 30.95 | 24.83 | 66.71 | 96.89 | 49.13 | 86.67 | 99.99 |
4.31 | 12.17 | 43.51 | 95.75 | 99.18 | 99.90 | 99.99 | 100 | 100 | |
7 | 0.83 | 4.40 | 34.08 | 50.24 | 76.69 | 99.53 | 74.17 | 93.27 | 100 |
5.80 | 14.41 | 46.34 | 99.34 | 99.97 | 100 | 100 | 100 | 100 | |
8 | 1.09 | 5.68 | 36.10 | 86.17 | 94.48 | 99.99 | 99.97 | 99.99 | 100 |
6.78 | 17.13 | 47.75 | 99.80 | 99.99 | 100 | 100 | 100 | 100 |
The C-LAMBDA method clearly provides much better results than its unconstrained version. The differences in success rate are particularly pronounced when the strength of the underlying GNSS model becomes weaker (fewer satellites and/or higher measurement noise).
Making use of the baseline constraint in these cases improves the success rate considerably. According to Table 1, already five satellites, with a code standard deviation of 30 cm and a phase standard deviation of 3 mm, give a higher than 70% success rate for C-LAMBDA. Understandably, the differences in success rate become less pronounced when the strength of the underlying GNSS model increases. For instance, with eight satellites and a phase and code precision of 3 mm and 5 cm, respectively, a close to 100% success rate is already achieved with the standard LAMBDA method.
Computational timing
An important aspect of GNSS ambiguity resolution is the speed with which the various computations can be performed. This is particularly relevant for applications that require (near) real-time results.
First, we consider the overall timing of our search and shrink procedure. It will be clear that for the efficiency of this procedure, it is important that one is able to set the size of the search space at an appropriate level, i.e. not too small and not too large. To guarantee that the search space is nonempty and that it thus includes the sought for integer minimizer, the size of the search space is set by taking \( \tilde{\chi }^{2} = F_{2} (\tilde{a} ) \) for some \( \tilde{a} \in {\mathbb{Z}}^{n} . \) We studied four different ways of choosing such \( \tilde{a} \): rounding the unconstrained float solution \( \hat{a} \) (R1) and rounding the constrained float solution \( \bar{a} \) (R2); bootstrapping the constrained float solution \( \bar{a} \) (B1) and bootstrapping the constrained float solution \( \bar{a}, \) using the Hessian matrix of F(a) as weight matrix, (B2). In all these four cases, we first applied a decorrelating Z-transformation before rounding or bootstrapping was done, see Teunissen (1995).
The timing results show that the speed of C-LAMBDA is close to that of standard LAMBDA, although a bit slower, as can be expected because of its increased complexity. The best timing performance was achieved with the R2 and the B2 method of setting the size of the search space. It followed that the enumeration and minimization step take the shortest time, while the shrinking process generally accounts for at least 60% of the total computational time, which on average was about 5–6 ms (MATLAB Windows environment on a 2.13 GHz Intel core 2 CPU) for all scenarios that achieved a larger than 99% C-LAMBDA success rate.
That the enumeration and minimization can be done so quickly is due to the successful performance of the shrinking process. It is the shrinking that allows one to finally work with so small search spaces. The mean number of enumerated integer vectors was very small (1.77 or less) for all the cases of five or more satellites and \( \varvec{\sigma}_{\phi } \le 3\,{\text{mm}},\varvec{\sigma}_{p} \le 15\,{\text{cm,}} \) while the maximum number of enumerated integer vectors was only 21. Thus, the number of integer vectors inside the shrunken search space is indeed very small in general, and it gets smaller as the strength of the underlying GNSS model gets larger (more satellites and/or lower noise).
Static experiment
Two independent static experiments were carried out to test the performance of the C-LAMBDA method with real-world data. In the first experiment, conducted in the Netherlands, the antennae of three Trimble receivers were placed in known formation above a known reference point in an obstacle-free environment. In the second experiment, conducted in Perth, Australia, six Sokkia antenna/receivers were placed along a straight line at known distances from one another. The multipath-sensitive environment of the second experiment also allowed us to test the robustness of the ambiguity resolution methods.
The Dutch experiment
SF/SE success rates and B2-based computational times for the ground station
Baseline | l [m] | Success rate [%] | Mean computational time [ms] |
---|---|---|---|
LAMBDA | |||
A-B | 2.20 | 99.99 | 3.9 |
A-R7 | 2.21 | 99.80 | 4.0 |
B-R7 | 1.74 | 99.67 | 4.1 |
C-LAMBDA | |||
A-B | 2.20 | 100 | 7.4 |
A-R7 | 2.21 | 100 | 6.9 |
B-R7 | 1.74 | 100 | 7.2 |
As pointed out already, both LAMBDA methods show very high SF/SE success rates in Table 2. This is perhaps somewhat surprising for the unconstrained case. However, in the present case, this is due to the geometry and good data quality.
SF/SE success rates for the three baselines as function of the number of used satellites
Baseline | # Sat | LAMBDA [%] | C-LAMBDA [%] |
---|---|---|---|
A-B | 5 | 21.74 | 96.05 |
6 | 75.60 | 99.86 | |
7 | 97.65 | 100 | |
8 | 99.92 | 100 | |
9 | 99.99 | 100 | |
A-R7 | 5 | 8.93 | 79.26 |
6 | 42.01 | 98.22 | |
7 | 75.50 | 99.65 | |
8 | 97.41 | 99.99 | |
9 | 99.83 | 100 | |
B-R7 | 5 | 8.92 | 74.60 |
6 | 40.12 | 97.06 | |
7 | 76.03 | 99.82 | |
8 | 96.85 | 100 | |
9 | 99.67 | 100 |
Mean values and standard deviations of the GPS SF/SE derived, ambiguity resolved, (constant) attitude angles (heading ψ and elevation θ)
Baseline | l [m] | \( \bar{\psi }\;[^\circ ] \) | \( \sigma_{\psi }\; [^\circ ] \) | \( \bar{\theta }\;[^\circ ] \) | \( \sigma_{\theta } \;[^\circ ] \) |
---|---|---|---|---|---|
A-B | 2.20 | 19.94 | 0.04 | 0.05 | 0.10 |
A-R7 | 2.21 | 66.45 | 0.09 | 0.21 | 0.12 |
B-R7 | 1.74 | 132.74 | 0.10 | 0.23 | 0.19 |
The Australian experiment
SF/SE success rates for the five baselines of the 2nd static experiment
l [m] | LAMBDA [%] | C-LAMBDA [%] |
---|---|---|
0.598 | 76.48 | 98.56 |
1.000 | 76.82 | 99.66 |
1.999 | 74.17 | 97.74 |
4.999 | 75.52 | 99.09 |
10.001 | 77.83 | 99.04 |
SF/SE success rates for the five baselines of the 2nd static experiment as function of the number of used satellites
# Sat | l [m] | LAMBDA [%] | C-LAMBDA [%] |
---|---|---|---|
6 | 0.598 | 78.25 | 99.87 |
1.000 | 81.94 | 100.00 | |
1.999 | 75.36 | 99.74 | |
4.999 | 78.95 | 99.08 | |
10.001 | 83.55 | 99.52 | |
7 | 0.598 | 54.85 | 95.39 |
1.000 | 64.88 | 99.08 | |
1.999 | 57.14 | 92.69 | |
4.999 | 59.87 | 98.07 | |
10.001 | 65.27 | 97.77 | |
8 | 0.598 | 94.11 | 100.00 |
1.000 | 85.34 | 100.00 | |
1.999 | 87.93 | 100.00 | |
4.999 | 85.78 | 100.00 | |
10.001 | 86.49 | 100.00 |
Ship experiment
Vessel SF/SE success rates: overall and per constant number of locked satellites
LAMBDA [%] | C-LAMBDA [%] | |
---|---|---|
Overall | 82.01 | 99.50 |
6 Sats | 28.33 | 96.51 |
7 Sats | 81.15 | 99.77 |
8 Sats | 96.67 | 99.97 |
Aircraft experiment
In addition to the low-dynamics platform tests of the previous section, we also tested the single-frequency, single-epoch performance of C-LAMBDA on flights of a jet aircraft (Cessna Citation II).
The aircraft and flight
Success rate and timing
First, we consider the computational speed of the algorithms. The computational times are still fast, although a bit longer than for the static ground station data of "Static experiment". The mean computational times (MATLAB Windows environment on 2.13 GHz Intel core 2 CPU) for baselines b_{1} and b_{2} were 7.7 and 7.5 ms for LAMBDA, and 31.9 and 19.4 ms for (B2) C-LAMBDA. The somewhat slower performance compared to the ground station data is due to the higher noise of the aircraft data. Also, the presence of multipath, particularly in baseline b_{1}, slows the algorithms somewhat. The results are, however, still very fast, and we emphasize here that they are truly single-epoch processed, i.e. no external information nor information from past epochs has been used. Also, the time division between shrinking, enumeration and minimization was consistent with the previous experiments. Again, the minimization step was very fast due to the low number of integer vectors that remained in the shrunken search space, and in most cases, only one single integer vector remained.
Aircraft SF/SE empirical success rates for the two baselines b_{1} and b_{2}
l [m] | LAMBDA | C-LAMBDA | |
---|---|---|---|
b_{1} | 4.90 | 38.07 | 90.89 |
b_{2} | 7.61 | 60.54 | 94.00 |
Attitude comparison
We used two different and independent methods to compare the GPS-derived aircraft attitudes. With the first method, we made use of the precise relative positioning of the three aircraft antennas with respect to the ground station (see Fig. 8). The three (long) baselines from the aircraft antennae to the ground station can namely also be used to calculate the orientation of the aircraft. We used the unconstrained LAMBDA method to obtain the precise fixed solutions for these three baselines. In order to minimize the atmospheric influences, the baselines were only processed for relative distances up to 10 km. The aircraft attitudes obtained from this relative navigation approach compared very well with the direct GPS attitude determination results, and the differences mostly contained within 0.2 degree.
GPS SF/SE–INS attitude accuracy
\( \sigma_{{\psi - \psi_{INS} }} \) | \( \sigma_{{\theta - \theta_{INS} }} \) | \( \sigma_{{\phi - \phi_{INS} }} \) |
---|---|---|
0.10° | 0.18° | 0.18° |
Summary and conclusions
In this contribution, the performance of a new GNSS attitude determination method was analysed by means of extensive experimental testing. The method is a nontrivial modification of the standard LAMBDA method. In contrast to existing methods that make use of the known baseline length, our method does full justice to the given information by fully integrating the nonlinear baseline constraint into the ambiguity objective function. As a result, the a priori information receives a proper weighting in the ambiguity objective function, thus leading to higher success rates. Due to the non-ellipsoidal shape of the ambiguity search space, the method’s integer search is more complex than when using unconstrained ambiguity resolution methods. We have shown, however, that this increased complexity is not a hindrance for its numerical efficiency. Despite the fact that our code was not time-optimized, the search and shrink procedure, with the sharp bounding functions, was already capable of a very fast numerical performance.
Our method is generally applicable, i.e. to the current dual-frequency GPS as well as to the next generation, multi-frequency GNSSs (e.g., modernized GPS, Galileo, Beidou/Compass), whether they are used as stand-alone systems or in combination. We, however, focused our tests on its stand-alone, unaided, single-frequency, single-epoch performance, as this is the most challenging case for ambiguity resolution.
The method was tested, using simulated as well as actual GPS data. The simulations cover a large number of different measurement scenarios, where the impact of measurement precision and receiver-satellite geometry was analysed. Our field tests, with receivers of different manufacturers and type, cover two static land experiments, one in the Netherlands and one in Australia, and two dynamic experiments, a low-dynamics vessel experiment and a high-dynamics aircraft experiment.
All these tests show consistent results. They all show the method’s excellent single-frequency, single-epoch performance. The rigorous inclusion of the baseline length constraint into the ambiguity objective function shows dramatic improvements in the success rates. Additionally, it was demonstrated that this also resulted in quite an increase in robustness against multipath and receiver-satellite geometry changes. We believe, in analogy with the standard LAMBDA method, that it will be difficult to devise a method that, with the same information, is capable of achieving higher success rates than C-LAMBDA. Further improvements on the speediness of the method are, however, possible. In addition, further research is needed so as to be able to describe the probabilistic properties of the ambiguity-resolved parameters of the GNSS compass model, this in analogy with the existing theory of the unconstrained GNSS model (Teunissen 1997b, 2000, 2002).
Acknowledgments
The first author is the recipient of an Australian Research Council Federation Fellowship (project number FF0883188): this support is gratefully acknowledged. The GAIN team, a cooperation between the chairs of Control and Simulation, Physical and Space Geodesy and Mathematical Geodesy and Positioning at the Delft University of Technology is acknowledged for the cooperation during the flight experiment described in this paper. Christian Tiberius and Anh Quan Le (Delft University of Technology) are thanked for providing the vessel experiment data. Christian Tiberius is also thanked for providing the Dutch static experiment data. Lennard Huisman (Curtin University of Technology) is thanked for the pleasant collaboration during the static experiment conducted in Australia.
Open Access
This article is distributed under the terms of the Creative Commons Attribution Noncommercial License which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.