Fast ambiguity resolution for real time kinematic survey and navigation

Information

  • Patent Grant
  • 6753810
  • Patent Number
    6,753,810
  • Date Filed
    Tuesday, January 7, 2003
    21 years ago
  • Date Issued
    Tuesday, June 22, 2004
    20 years ago
Abstract
A method of fast GPS carrier phase integer ambiguity resolution is based on properties of a Residual Sensitivity Matrix (S matrix), which directly relates a set of integer ambiguities to carrier phase residuals. In one embodiment, the method uses the singular value decomposition of the S Matrix to split the integer ambiguity set into two integer ambiguity subsets and to derive a relationship between the two integer ambiguity subsets. Thus, searching for the integer ambiguity set is reduced to searching for one of the two integer ambiguity subsets, resulting in greatly reduced search space. In an alternative embodiment, a portion of the rows of the S matrix that are linearly independent rows are selected and the S matrix is rearranged according to the selection. The rearranged S matrix is then split into four sub-matrices, which are used to relate the two integer ambiguity subsets.
Description




FIELD OF THE INVENTION




The present invention relates generally to positioning and navigation systems that use the Global Positioning System (GPS), and particularly to carrier phase signal integer ambiguity resolution for high accuracy real-time positioning and navigation with satellite-based navigation systems.




BACKGROUND OF THE INVENTION




Currently, three types of GPS measurements corresponding to each correlator channel with a locked GPS satellite signal are available for civilian GPS receivers. The three types of GPS measurements are pseudorange, Doppler, and integrated carrier phase for two carrier frequencies, L1 and L2. See Farrell, J. A. and Barth, M.,


The Global Positioning System and Inertial Navigation


, McGraw-Hill (ISBN-0-07-022045-X), 1999, hereby incorporated by reference. GPS Integer ambiguity resolution is a key issue in high accuracy positioning and navigation using carrier phase measurements. The objective of GPS integer ambiguity resolution is to solve for the integer number of complete carrier cycles during transmission of a GPS signal from the GPS satellite to a receiver, or the difference between the integer number of complete carrier cycles from the GPS satellite to a reference receiver and that from the GPS satellite to a user receiver.




GPS applications, whether they are short range or long range, static positioning or dynamic/kinematic positioning, whether they involve real-time processing or post processing, known or unknown baseline, all require GPS integer ambiguity resolution for high accuracy performance. In practical applications, GPS carrier phase integer ambiguity resolution is usually accomplished in two steps: (1) solving for the integer ambiguity using special search and hypothesis testing techniques; and (2) verifying that the integer ambiguity solution is unique and correct.




Three categories of methods have been developed to solve and validate the integer ambiguity. The first category of methods is based on long duration static observation. These methods are typically used in static mode where the position of the GPS receiver does not change for a long duration of time, so that long time observation data can be used to reduce errors caused by multipath and GPS receiver noise, and to allow the GPS satellites to make significant changes in position during the position determining process. See Remondi, B. W., “


Kinematic and Pseudo


-


Kinematic GPS


,” Proceeding of the Satellite Division of the Institute of Navigation First International Technical Meeting, Colorado Springs, Colo., Sep. 21-23, 1988, hereby incorporated by reference.




The second category of methods requires special moving of GPS antennae, such as GPS antennae swapping as described by Remondi, B. W., “


Performing Centimeter


-


Level Surveys in Seconds with GPS Carrier Phase: Initial Results


,” Journal of The Institute of Navigation, Vol. 32, No. 4, Winter 1985-1986, hereby incorporated by reference. Swapping location of two antennae causes rapid change in the observability of the GPS receiver position, but is rarely possible in real-time kinematic applications.




The above two categories of methods are straightforward but require special assumptions and conditions that may not be practical for specific applications. The third category of methods includes searching methods that require fewer assumptions, such as:




the ambiguity function method described by Counselman, C. and Gourevitach S., “


Miniature Intergerometer Terminals for Earth Surveying: Ambiguity and Multipath with the Global Position System


,” IEEE Transactions on Geoscience and Remote Sensing, GE-19(4): 244-252, 1981;




the fast ambiguity resolution approach described by Frei, E. and G. Beutler, “


Rapid Static Positioning Based on the Fast Ambiguity Resolution Approach FARA: Theory and First Results


,” Manuscripts Geodaetia, 1990, pp.325-356;




the least squares ambiguity search technique described by Hatch, R. R., “


Instantaneous Ambiguity Resolution


,” Kinematic Systems in Geodesy, Surveying and Remote Sensing, IAG Symposia 107, Springer Verlag, N.Y., September, 1990, pp. 299-308, and by Farrell, J. A. and Barth, M, supra;




the Cholesky decomposition method in Landau, H. and Euler, H. J., “


On


-


The


-


Fly Ambiguity Resolution for Precise Differential Positioning


,” Processing of ION GPS-92, Albuquerque, N.Mex., 16-18 Sep., 1992, pp. 607-613;




the fast ambiguity search filter described by Chen, D., “


Fast Ambiguity Search Filter


(


FASF


):


A Novel Concept from GPA Ambiguity Resolution


,” Processing of the ION GPS-93, Salt Lake City, Utah, Sep. 22-24, 1993, pp. 781-787; and




the least squares ambiguity decorrelation adjustment method by Teunissen, P. J. G., “


A New Method for Fast Carrier Phase Ambiguity Estimation


,” Proceedings IEEE Position Location and Navigation Symposium PLAN94, Las Vegas, 11-15 Apr., 1994, pp. 562-573.




All of the publications cited above are hereby incorporated by reference as background information.




Searching methods for solving integer ambiguity in GPS applications face many issues, including linear stochastic model definition, ambiguity resolution initialization, search space reduction, state and standard deviation calculation in the search space, and validation and rejection criteria for the unique and correct candidate. Among these, search space reduction is critically important. The purpose of search space reduction is to reduce the number of integer candidates (or the size of a search space) for the carrier phase integers without missing the correct candidates. The size of the search space not only affects how fast an ambiguity resolution method solves for the carrier phase integers (i.e., the carrier phase integer for each GPS signal), but also determines the success rate of the ambiguity resolution method. Usually, the smaller the search space, the easier it is to find a unique and correct candidate set for the carrier phase integers.




One approach to reduce the search space is to decrease diagonal element values of a covariance matrix that determines the search space. See Teunissen, P. J. G., supra. Existing methods to decrease diagonal element values of the covariance matrix include: improving the GPS receiver measurement performance; in a dual frequency GPS receiver, combining L1 and L2 measurements to suppress pseudorange measurement noise, or using phase smoothing code (such as a Hatch filter) to reduce the measurement noise; and applying an integer inverse matrix transformation to decorrelate the double differential measurement and to reduce integer ambiguity covariance element values.




Another approach to reduce the search space is to increase the length of the search steps by using a longer wavelength (e.g., by combining the L1 and L2 phases). However, using a longer wavelength usually means increased measurement noise.




Furthermore, the search space can be greatly reduced by cutting search dimensions determined by the number of satellites used for GPS measurements. Cutting the search dimensions can greatly reduce the number of searching candidates. For example, if each search range includes 10 search cycles, to resolve the ambiguities of four carrier phase integers the total number of candidate sets for the four carrier phase integers is 10


4


, while to resolve the ambiguities of seven carrier phase integers, the total number of candidate sets is 10


7


. Therefore, in some search methods, the differential GPS measurements are partitioned into a primary measurement set and a secondary measurement set. The phase measurements of the primary set define the reduced search space, while the phase measurements of the secondary set are used to verify the correctness of the resolved candidates. See Hatch, R. R., “


Instantaneous Ambiguity Resolution


,” Supra.




SUMMARY OF THE INVENTION




The present invention includes a method of fast GPS carrier phase integer ambiguity resolution, based on properties of a Residual Sensitivity Matrix (S matrix), which directly relates a set of integer ambiguities to carrier phase residuals. In one embodiment of the present invention, the method uses the Singular Value Decomposition of the S Matrix to split the integer ambiguity set into two integer ambiguity subsets and to derive a relationship between the two integer ambiguity subsets. Thus, searching for the integer ambiguity set is reduced to searching for one of the two integer ambiguity subsets, resulting in a greatly reduced search space. In an alternative embodiment of the present invention, splitting the integer ambiguity set into two integer ambiguity subsets and deriving a relationship between the two integer ambiguity subsets are accomplished by selecting a portion of the rows of the S matrix as linearly independent rows of the S matrix and rearranging the S matrix according to the selection. The rearranged S matrix is then split into four sub-matrices, which are used to relate the two integer ambiguity subsets.




The searched integer ambiguity subset can be selected from the integer ambiguity set based on, or taking into consideration, the satellite geometry and measurement residuals. As a result, the method of the present invention not only improves the calculation efficiency and ambiguity resolution time, but also improves the reliability of the search result.











BRIEF DESCRIPTION OF THE DRAWINGS




Additional objects and features of the invention will be more readily apparent from the following detailed description and appended claims when taken in conjunction with the drawings, in which:





FIG. 1

is a block diagram of a computer system that can be used to carry out the method of the present invention according to one embodiment of the present invention;





FIG. 2

is a flow chart illustrating a method of integer ambiguity resolution according to one embodiment of the present invention; and





FIG. 3

is a flow chart illustrating a method of integer ambiguity resolution according to an alternative embodiment of the present invention.











DESCRIPTION OF THE INVENTION




Differential operations are typically used in GPS applications to cancel the noise factors in carrier phase measurements resulting from common mode errors. Differential GPS measurements typically involve a base reference GPS receiver (GPS


B


), a rover GPS receiver (GPS


R


), and a communication mechanism between the GPS


B


and the GPS


R


. The differential GPS carrier phase measurement equation can be written as:











φλ

=



[

h
-
λ

]

·

[



x




N



]


+

n
φ






(
1
)













where ∇φ is the differential carrier phase measurement between the GPS


R


and the GPS


B


, λ is the wavelength of the carrier phase, h is a user-to-satellite vector, x is a real unknown state vector (or real vector), N is the integer ambiguity, and n


φ


represents noise factors in the differential carrier phase measurement. For single-difference measurement methods, where differences in GPS measurements with respect to each satellite are taken between GPS


R


and GPS


B


,




∇φ=Δφ


BR




i


,




h=[h


i


1],




x=[x


BR


cΔt


r




BR


],




N=N


BR




i


, and




n


φ


=n


φBR




i


,




where i refers to the ith satellite, Δφ


BR




i


is a differential phase measurement with respect to an i


th


satellite, h


i


is a unit vector from the i


th


satellite to GPS


R


, x


BR


is a position vector from GPS


B


to GPS


R


, c is the speed of light, Δt


r




BR


is the difference in receiver clock bias between GPS


R


and GPS


B


, N


BR




i


is a differential integer ambiguity between GPS


B


and GPS


R


with respect to the i


th


satellite, and n


φBR




i


is called differential carrier phase noise representing the difference between the carrier phase noise at GPS


B


and that at GPS


R


with respect to the i


th


satellite. The carrier phase noise can come from many factors, including carrier phase multipath error, receiver range tracking error, receiver phase tracking error, satellite clock errors, tropospheric delay, and errors in the broadcast ephemeris data. Among these error factors, common errors experienced by both GPS


R


and GPS


B


, such as satellite clock errors, tropospheric delay, and errors in the broadcast ephemeris data, can be canceled by using differential carrier phase measurements.




Similarly, for double-difference measurement methods, where single-difference measurements with respect to a common satellite are subtracted from corresponding measurements with respect to all other satellites in order to remove receiver clock bias,




∇φ=∇Δφ


BR




ij


,




h=h


i


−h


j


,




x=x


BR


,




N=N


BR




ij


, and




n


φ


=n


φBR




ij


,




where Δφ


BR




ij


is the differential phase measurement with respect to the i


th


satellite subtracted from the differential phase measurement with respect to the j


th


satellite, N


BR




ij


is the differential integer ambiguity between GPS


B


and GPS


R


with respect to the i


th


satellite subtracted from the differential integer ambiguity between GPS


B


and GPS


R


with respect to the j


th


satellite, and n


φBR




ij


is the differential carrier phase noise with respect to the i


th


satellite subtracted from the differential carrier phase noise with respect to the j


th


satellite.




Equation (1) cannot be solved directly because there are (4+n) unknown variables for n single-difference GPS carrier phase measurements, and (3+n) unknown variables for n double-difference GPS carrier phase measurements, where n is the number of satellites with respect to which measurements are taken. In addition, Equation (1) cannot be used directly as a linear measurement model to estimate the real vector x and the integer ambiguity N by common methods, such as the conventional Least Square Method and Kalman Filter, because N is an integer. Therefore, a non-linear method would need to be used to resolve the integer ambiguity N before solving for the real vector x.




The present invention provides a novel method of resolving the integer ambiguity N by reducing the search space for the integer ambiguity using special properties of a Residual Sensitivity Matrix. For case of discussion, single-difference measurements are used below to describe an embodiment of the present invention. Those skilled in the art will recognize that similar descriptions apply to all other types of measurements. In one embodiment of the present invention, for each satellite, Equation (1) can be written as:






(∇φ+


N


)λ=


hx+n




φ


.






When measurements are taken with respect to n satellites in view of a GPS receiver, all of the measurements can be written in array format as:






(∇Φ+


N


)λ=


Hx+n




φ


  (2)






where ∇Φ=[∇φ


1


∇φ


2


. . . ∇φ


n


]


T


, with ∇φ


i


=Δφ


BR




i


, is a carrier phase vector formed by the differential carrier phase measurement with respect to each of the n satellites, N=[N


1


N


2


. . . N


n


]


T


, with N


i


=N


BR




i


, is an integer ambiguity vector formed by the differential integer ambiguity with respect to each satellite. H=[h


1


h


2


. . . h


n


]


T


, with h


i


=h


i


is a measurement vector matrix formed by the unit vector from GPS


R


to each of the n satellites, and n


φ


=[n


φ






1




n


φ






2




. . . n


φ






n




]


T


, with n


φ






i




=n


φBR




i


, is a measurement noise vector (or phase range residual vector) formed by the differential carrier phase noise with respect to each of the n satellites.




An initial integer ambiguity vector {circumflex over (N)}


0


can be estimated by rounding off the pseudorange or carrier phase smoothed pseudorange measurements made by a GPS receiver. A more accurate integer ambiguity vector N can be generated by searching around the initial integer ambiguity vector {circumflex over (N)}


0


based on a search width for each satellite for which a pseudorange integer is included in the ambiguity vector. For example, if the search width for each satellite is δN, the total number of candidate sets for the integer ambiguity vector N is (δN)


n−1


, with n being the number of satellites used. So, when δN=4 and n=7, the total number of candidate sets is 4096 (i.e., 4


7-1


). Using {circumflex over (N)}


0


, each candidate set for N can be written in vector form as








{circumflex over (N)}=[{circumflex over (N)}




1




{circumflex over (N)}




2




. . . {circumflex over (N)}




n


]


T




={circumflex over (N)}




0




+ΔN,








where ΔN=[ΔN


1


ΔN


2


. . . ΔN


n


]


T


(ΔN


i


≦δN) is a candidate offset vector representing the difference between a candidate set vector {circumflex over (N)} and the initial integer ambiguity vector {circumflex over (N)}


0


. A solution for the real vector x corresponding to the candidate set vector {circumflex over (N)} can be expressed as








{circumflex over (x)}=[H




T




RH]




−1




H




T




R




−1


(∇Φ+


{circumflex over (N)}




0




+ΔN


)λ  (3)






where









R
=

[




σ
1
2






0















0








σ
n
2




]





(
4
)













is a measurement covariance matrix formed by σ


i


, which is a standard deviation of the differential carrier phase noise n


φ






i




calculated using conventional methods. An example of the methods for calculating σ


i


can be found in “


Precision, Cross Correlation, and Time Correlation of GPS Phase and Code Observations


,” by Peter Bona, GPS Solutions, Vol. 4, No. 2, Fall 2000, p. 3-13, or in “


Tightly Integrated Attitude Determination Methods for Low


-


Cost Inertial Navigation: Two


-


Antenna GPS and GPS/Magnetometer


,” by Yang, Y., Ph.D. Dissertation, Dept. of Electrical Engineering, University of California, Riverside, Calif. June 2001, both hereby incorporated by reference.




From Equation (2), a calculated phase range residual vector Δ


Φ


corresponding to candidate set {circumflex over (N)} is:






Δ


Φ


=(∇Φ+


{circumflex over (N)}




0




+ΔN


)λ−


H{circumflex over (x)}=[I−H


(


H




T




R




−1




H


)


−1




H




T




R


](∇Φ+


{circumflex over (N)}




0




+ΔN


)λ=


S


(∇Φ+


{circumflex over (N)}




0




+ΔN


)λ  (5)








where










S=I−H[H




T




R




−1




H]




−1




H




T




R




−1


  (6)






is the residual sensitivity matrix (S matrix), as defined by Hatch, R. R. and Sharpe, T., in “A Computationally Efficient Ambiguity Resolution Technique,” Proceedings of ION GPS 2001, Salt Lake City, Utah, USA, 11-14 Sep. 2001, which is hereby incorporated by reference.




From Equations (3)-(6), an estimated phase standard deviation for the candidate set {circumflex over (N)} can be expressed as:










σ

Φ


&LeftBracketingBar;

N
.




=




Δ
Φ
T



Δ
Φ



n
-
k







(
7
)













with k being a real state number of the real vector x. Regardless of the number, n, of satellite pseudorange measurements being used, k is equal to 4 for single differential GPS measurements, and is equal to 3 for double differential GPS measurements.




Thus, the ambiguity search is to find the unique and correct candidate set with smallest σ


Φ|{circumflex over (N)}


. Since Δ


Φ


is a vector, σ


Φ|{circumflex over (N)}


can be minimized by minimizing the absolute value of each term of Δ


Φ


, or by minimizing the norm value of Δ


Φ


.




Let






Δ


Φ0




=S


(∇Φ+


{circumflex over (N)}




0









be an initial phase range residual vector corresponding to the initial integer ambiguity vector. From Equation (5), minimizing the absolute value of each term of Δ


Φ


is equivalent to finding a candidate offset vector ΔN such that






Δ


N


=round(Δ


N




f


)








and








Δ


Φ0




+SΔN




f


λ=0,  (8)






or











S





Δ






N
f


=



-

Δ
Φ0




1
λ


=

-

Q
0




,




(
9
)













where Q


0


is the initial phase range residual vector in units of carrier wave cycles.




The S matrix has many interesting properties: it is symmetric and positively semi-definite, and it has a zero sum for each row and column







(






i
=
1

n



s
ij


=
0

,





j
=
1

n



s
ij


=
0


)

.










Additionally, the S matrix is idempotent, i.e., S=SS=SSS= . . . =S


l


, with l being any positive integer, and the rank of the S matrix is equal to n−k, i.e., rank(S)=n−k, where k=4 for single differential GPS and k=3 for double differential GPS. These properties of the S matrix can be used to reduce the search space, as described below.




In one embodiment of the present invention, since the S matrix is not a full rank matrix, S can be expressed as the product of three matrices, U, X, and V, using singular value decomposition (SVD), i.e.,








S=UXV




T


,  (10)






where U and V are full rank matrices,




U=[u


1


u


2


. . . u


n


],




V=[v


1


v


2


. . . v


n


],




with u


i


=[u


i1


, u


i2


. . . u


in


]


T


and v


i


=[v


i1


v


i2


. . . v


in


]


T


(i=1, 2, . . . , n) being orthonormal vectors, i.e., u


i




T


u


i


=1, u


i




T


u


j


=0, v


l




T


v


l


=1, and v


l




T


v


j


=0 (i≠j). Also one of the solutions of V is a combination of the eigenvector of S, i.e., v


i


(i=1, 2, . . . , n) are all eigenvectors of S. Since the eigenvalues of S are either 1 or 0, its eigenvectors are all real vectors.




Furthermore, X can be expressed as






X
=

[




s
1






0



















0


(

n
-
4

)

×
4






0






s

n
-
4

















0

4
×

(

n
-
4

)











0

4
×
4





]











where s


1


= . . . =s


n−4


=1, and 0


ixj


are i by j matrices (where i,j=4 or n−4) with all zero elements.




Thus, Equation (9) becomes:








UXV




T




ΔN




f




=−Q




0


,








or,










XV




T




ΔN




f




=−U




T




Q




0




=Q




1


,  (11)








or,














[





s
1



v
1
T













s

n
-
4




v

n
-
4

T







0

4
×
n





]


Δ






N
f


=


Q
1

.





(
12
)













Equation (12) can be re-written as












[




A
1




A
2






0

4
×

(

n
-
4

)






0

4
×
4





]



[




N

1

f







N

2

f





]


=

[




Q
11






Q
12




]


,




or
,




(
13
)










A
1



N

1

f



+


A
2



N

2

f




=

Q
11


,




or
,




(
14
)








N

1

f


=


A
1

-
1




(


Q
11

-


A
2



N

2

f




)








where




(
15
)








A
1

=

[





s
1



v
11






s
1



v
12









s
1



v

1


(

n
-
4

)










s
2



v
21






s
2



v
22









s
2



v

2


(

n
-
4

)
























s

n
-
4




v


(

n
-
4

)


1







s

n
-
4




v


(

n
-
4

)


2












s

(

n
-
4

)




v


(

n
-
4

)



(

n
-
4

)







]


,




(
16
)








A
2

=

[





s
1



v

1


(

n
-
3

)








s
1



v

1


(

n
-
2

)








s
1



v

1


(

n
-
1

)








s
1



v

1

n









s
2



v

2


(

n
-
3

)








s
2



v

2


(

n
-
2

)








s
2



v

2


(

n
-
1

)








s
2



v

2

n























s

n
-
4




v

1


(

n
-
4

)



(

n
-
3

)








s

n
-
4




v


(

n
-
4

)



(

n
-
2

)








s

n
-
4




v


(

n
-
4

)



(

n
-
1

)








s

n
-
4




v


(

n
-
4

)


n






]


,




(
17
)







Q
11

=


[






u
11



Δ


Φ
0


1



+


u
12



Δ


Φ
0


2



+

+


u

1

n




Δ


Φ
0


n











u
21



Δ


Φ
0


1



+


u
22



Δ


Φ
0


2



+

+


u

2

n




Δ


Φ
0


n
















u


(

n
-
4

)


1




Δ


Φ
0


1



+


u


(

n
-
4

)


2




Δ


Φ
0


1



+

+


u


(

n
-
4

)


n




Δ


Φ
0


n







]

/
λ





(
18
)







Q
12

=


[






u


(

n
-
3

)


1




Δ


Φ
0


1



+


u


(

n
-
3

)


2




Δ


Φ
0


2



+

+


u


(

n
-
3

)


n




Δ


Φ
0


n











u


(

n
-
2

)


1




Δ


Φ
0


1



+


u


(

n
-
2

)


2




Δ


Φ
0


2



+

+


u


(

n
-
2

)


n




Δ


Φ
0


n
















u
n1



Δ


Φ
0


1



+


u
n2



Δ


Φ
0


1



+

+


u
nn



Δ


Φ
0


n







]

/
λ





(
19
)








N

1

f


=

[




Δ






N

1

f






Δ






N

2

f









Δ






N


(

n
-
4

)


f






]


,




and




(
20
)







N

2

f


=


[




Δ






N


(

n
-
3

)


f






Δ






N


(

n
-
2

)


f






Δ






N


(

n
-
1

)


f






Δ






N
nf





]

.





(
21
)













Equations 8 through 21 show that the integer ambiguity candidate offset vector ΔN=[ΔN


1


ΔN


2


. . . ΔN


n


]


T


can be separated into two related sub-vectors, ΔN


1


=round(N


1f


), and ΔN


2


=round(N


2f


), where ΔN


1


=[ΔN


1


ΔN


2


. . . ΔN


n−4


]


T


and ΔN


2


=[ΔN


n−3


ΔN


n−2


ΔN


n−1


ΔN


n


]


T


. Therefore, instead of searching for ΔN which includes integer ambiguities associated with n satellites (


150


, see FIG.


1


), using the present application a GPS application only needs to search for ΔN


2


. With each selection of ΔN


2


, the corresponding ΔN


1


can be derived using Equation 15, as shown in the following.






Δ


N




1


=round(


A




1




−1


(


Q




11




−A




2




ΔN




2


)).  (22)






Substituting ΔN


1


and ΔN


2


into Equation (14) yields








Q=Q




11


−(


A




1




ΔN




1




+A




2




ΔN




2


),  (23)






which is a residual vector corresponding to integer ambiguity offset sub-vectors ΔN


1


and ΔN


2


. Minimizing the norm value of the residual vector Q in equation 23, by selecting the candidate among the first subset of integer ambiguities (corresponding to ΔN


1


) for which the residual vector Q has the smallest norm value, is equivalent to minimizing the norm value of the calculated phase range residual vector, Δ


Φ


.




ΔN


2


includes integer ambiguities associated with k satellites, where k=4 for single differential GPS and k=3 for double differential GPS. For single differential GPS, the ambiguity value of one satellite measurement is arbitrary since it affects the clock offset only and not the position states. Therefore, for both single and double differential GPS applications, only 3 integers need to be searched. The rest of the pseudorange integers can be derived using Equation 15 as shown above. For example, for a search width δN=4, if n=7, the total number of candidate sets to be searched is 4


3


=64. Compared with the total number of candidate sets of 4


6


=4096 in prior art methods, the present invention reduces by almost two orders of magnitude the number of integer ambiguity candidate sets in the search space.





FIG. 2

is a flow chart of a method


200


of resolving a set of GPS carrier phase integer ambiguities, in accordance with one embodiment of the present invention. The method begins with calculating


205


the S matrix, performing


210


singular value decomposition of the S matrix, splitting


215


the set of integer ambiguities into two subsets, and deriving


220


a relationship between the two subsets of integer ambiguities. A first subset of the integer ambiguities is selected


225


among a plurality of candidate subsets. For each of the plurality of candidate subsets (see steps


230


through


240


), the method includes calculating


230


a second subset of integer ambiguities corresponding to the candidate subset using the derived relationship (from step


220


) between the two subsets of integer ambiguities, and calculating


235


a residual vector corresponding to candidate subset. The method then proceeds to find the candidate subset corresponding to the residual vector Q having the smallest norm value as the solution for the first subset of integer ambiguities (ΔN


2


) (step


245


). The solution for the second subset of integer ambiguities (ΔN


1


) is the calculated second subset of integer ambiguities corresponding to the solution for the first subset of integer ambiguities.




Referring to

FIG. 1

, the method of

FIG. 2

can be carried out by a microprocessor-based computer


100


coupled to a GPS receiver


120


, or by other types of computer systems.

FIG. 1

shows a block diagram of an exemplary computer system


100


for carrying out the methods of the present invention. In some embodiments, the GPS receiver


120


and the computer system


100


are integrated into a single device, within a single housing, such as a portable, handheld or even wearable position tracking device, or a vehicle-mounted or otherwise mobile positioning and/or navigation system. In other embodiments, the GPS receiver


120


and the computer system


100


are not integrated into a single device.




System


100


comprises a central processing unit (CPU)


102


, memory


110


, input


104


and output ports


104


,


106


, and (optionally) a user interface


108


, coupled to each other by one or more communication buses


109


. The memory


110


may include high-speed random access memory and may include nonvolatile mass storage, such as one or more magnetic disk storage devices. Memory


110


may include mass storage that is remotely located from the central processing unit


102


. The memory


10


preferably stores an operating system


112


, a database


114


, and GPS application procedures


116


, including an integer pseudorange ambiguity resolution procedure


118


for implementing the integer ambiguity method of the present invention. The operating system


112


and application programs and procedures


116


stored in memory


110


are for execution by the CPU


102


of the computer system


100


. The memory


110


preferably also stores data structures used during execution of the GPS application procedures


116


, including the residual sensitivity matrix S


122


and the residual vector Q


124


, as well as other data structures discussed in this document.




The input port


104


is for receiving data from a GPS receiver


120


, and output port


106


can be used for outputting calculation results. Alternately, calculation results may be shown on a display device of the user interface


108


.




The operating system


112


may be, but is not limited to, the embedded operating system, UNIX, Solaris, or Windows 95, 98, NT 4.0, 2000 or XP. More generally, operating system


112


has procedures and instructions for communicating, processing, accessing, storing arid searching data.




Method


200


of the present invention requires matrix calculation involving singular value decomposition. In an alternative embodiment of the present invention, the search space reduction method of the present invention can be carried out using less complicated matrix calculations, as described below.




Multiplying both sides of Equation 9 with the S matrix and using the equal idempotent property of the S matrix, we have








SΔN=−SQ




0


,  (24)








or,










S





N+Q




0


)=0.  (25)






Since the rank of S is (n−4), only (n−4) rows of the S matrix are linearly independent. Selecting (n−4) independent rows and rearranging the S with the selected (n−4) rows being the first (n−4) rows, Equation 23 can be rewritten as











[




S
11




S
12






S
21




S
22




]



[





Δ






N
1


+

Q
01








Δ






N
2


+

Q
02





]


=
0




(
26
)













where S


11


ε


(n−4)×(n−4)


, S


12


ε


(n−4)×4


, S


21


ε


4×(n−4)


, and S


22


ε


4×4


are sub-matrices from the S matrix, with S


11


being made of the first (n−4) columns of the selected (n−4) rows of the S matrix, S


12


being made of the last 4 columns of the selected (n−4) rows of the S matrix, S


21


being made of the first (n−4) columns of the unselected 4 rows of the S matrix, S


22


being made of the last 4 columns of the unselected 4 rows of the S matrix; ΔN


1


ε


(n−4)x


; and ΔN


2


ε


4×1


are sub-vectors of ΔN, with ΔN


1


being made of the first (n−4) rows of ΔN, and ΔN


2


being made of the last four rows of ΔN; and Q


01


ε


(n−4)×1


and Q


02


ε


4×1


are sub-vectors of Q


0


, with Q


1


being made of the first (n−4) rows of Q


0


, and Q


2


being made of the last four rows of Q


0


. In one embodiment of the present invention, the (n−4) rows of the S matrix are selected such that the value of the diagonal element in each of the selected (n−4) rows is greater than the diagonal element in any of the 4 unselected rows. From Equation (24), we have








S




11





N




1




+Q




01


)+


S




12





N




2




+Q




02


)=0






 or,






Δ


N




1f




=−T





N




2




+Q




02


)−


Q




01


,  (27)








and








Δ


N




1


=round(Δ


N




1f


),  (28)








where










T=S




11




−1




S




12


.  (29)






A phase range residual sub-vector corresponding to ΔN


1


is






Δ


Φ1




=ΔN




1




−ΔN




1f


.  (30)






Thus, the phase range residual vector corresponding to the integer ambiguity candidate set {circumflex over (N)}={circumflex over (N)}


0


+ΔN is






Δ


Φ




=S




1


Δ


Φ1


,  (31)








where,













S
1

=


[




S
11






S
21




]

.





(
32
)













So the candidate set vector {circumflex over (N)} corresponding to the phase residual vector with the smallest norm value is the solution for the integer ambiguity vector N.




Since only integer ambiguities associated with a subset of the satellites


150


(

FIG. 1

) need to be searched for, the subset of the satellites corresponding to ΔN


2


can be selected from the available satellites to minimize the measurement error (including carrier phase noise and multipath error) that affects the estimate of ΔN


1


. In one embodiment of the present invention, the subset of satellites is selected to minimize the value of each element of matrix S


11




−1


in (n−4)×(n−4) dimensions to decrease the measurement error effect for ΔN


1


estimation. This is can be easily done because, like the S matrix, S


11


is always positively definite. So minimizing the value of each element of matrix S


11




−1


can be done by selecting the (n−4) satellites corresponding to the (n−4) rows of the S matrix having diagonal elements greater than the unselected four rows of the S matrix.





FIG. 3

shows a flow chart of an alternative embodiment of the present invention. This method


300


of resolving a set of GPS carrier phase integer ambiguities includes the steps of calculating


305


the S matrix, selecting


310


a subset of satellites from available satellites, splitting


315


the set of integer ambiguities into two subsets and spitting the S matrix into four sub-matrices according to the selection of the subset of satellites. A relationship between the two subsets of integer ambiguities is then derived


320


using the sub-matrices of the S matrix. A first subset of the integer ambiguities is selected


325


among a plurality of candidate subsets. For each of the plurality of candidate subsets, method


300


further includes the steps (


330


to


340


) of calculating


330


a second subset of integer ambiguities corresponding to the candidate subset using the derived relationship between the two subsets of integer ambiguities, and calculating


335


a residual vector corresponding to candidate subset. Method


300


then proceeds to find


345


the candidate subset corresponding to the residual vector having the smallest norm value as the solution for the first subset of integer ambiguities (ΔN


2


). The solution for the second subset of integer ambiguities (ΔN


1


) is the calculated second subset of integer ambiguities corresponding to the solution for the first subset of integer ambiguities.




Method


300


, like method


200


, can be carried out by executing a corresponding computer program


118


A (FIG.


1


), or set of computer procedures, using a microprocessor-based computer system or other computer system, such as system


100


as shown in FIG.


1


. The computer program or procedures can be stored in a computer readable medium such as memory


110


in FIG.


1


.




The search space reduction method of the present invention applies to resolving integer ambiguities for carrier phase obtained using both the L


1


and L


2


wavelengths, or the combined L


1


and L


2


wavelengths.



Claims
  • 1. A method for fast resolution of a set of integer ambiguities associated with GPS carrier phase measurements with respect to a plurality of satellites, the method comprising:splitting the set of integer ambiguities into two subsets of integer ambiguities; deriving a relationship between the two subsets of integer ambiguities; and for each of a plurality of candidate sets for a first subset of the two subsets of integer ambiguities, calculating a second subset of the two subsets of integer ambiguities and a residual value.
  • 2. The method of claim 1, further comprising selecting a candidate set corresponding to a smallest residual value as a solution for the first subset of the integer ambiguities.
  • 3. The method of claim 1, further comprising selecting the calculated second subset of integer ambiguities that corresponds to a smallest residual value as a solution for the second subset of integer ambiguities.
  • 4. The method of claim 1 wherein splitting the set of integer ambiguities comprises:calculating a residual sensitivity matrix associated with the at least one GPS receiver and the plurality of satellites; selecting a number of linearly independent rows or columns of the residual sensitivity matrix; and selecting a subset of integer ambiguities corresponding to the selected number of rows or columns as the first subset of integer ambiguities.
  • 5. The method of claim 4 wherein the number of independent rows or columns of the residual sensitivity matrix are selected to minimize measurement error.
  • 6. The method of claim 5, wherein the number of linearly independent rows or column of the residual sensitivity matrix are selected such that each selected row or column has a diagonal element that is greater than the diagonal element in any of the unselected rows or columns.
  • 7. A computer readable medium storing therein computer readable program instructions that, when executed by a computer, causes the computer to perform a method for fast resolution of a set of integer ambiguities associated with GPS carrier phase measurements with respect to a plurality of satellites, the instructions comprising:instructions for splitting the set of integer ambiguities into two subsets of integer ambiguities; instructions for deriving a relationship between the two subsets of integer ambiguities; and for each of a plurality of candidate sets for a first subset of the two subsets of integer ambiguities, instructions for calculating a second subset of the two subsets of integer ambiguities and a residual value.
  • 8. The computer readable medium in claim 7, wherein the computer readable program instructions stored therein further comprise instructions for selecting a candidate set corresponding to a smallest residual value as a solution for the first subset of the integer ambiguities.
  • 9. The computer readable medium in claim 7, wherein the computer readable program instructions stored therein further comprise instructions for selecting the calculated second subset of integer ambiguities that corresponds to a smallest residual value as a solution for the second subset of integer ambiguities.
  • 10. The computer readable medium in claim 7, wherein the instructions for splitting the set of integer ambiguities comprise:instructions for calculating a residual sensitivity matrix associated with the at least one GPS receiver and the plurality of satellites; instructions for selecting a number of linearly independent rows or columns of the residual sensitivity matrix; and instructions for selecting a subset of integer ambiguities corresponding to the selected number of rows or columns as the first subset of integer ambiguities.
  • 11. A method for fast resolution of a set of integer ambiguities associated with GPS carrier phase measurements with respect to a plurality of satellites, the measurements involving at least one GPS receiver, the method comprising:calculating a residual sensitivity matrix associated with the at least one GPS receiver and the plurality of satellites; deriving a relationship between two subsets of the set of integer ambiguities according to properties of the residual sensitivity matrix; and for each of a plurality of candidate sets for a first subset of the two subsets of integer ambiguities, calculating a second subset of the two subsets of integer ambiguities and a residual vector.
  • 12. The method of claim 11, further comprising selecting a candidate set corresponding to the residual vector having a smallest norm value as a solution for the first subset of the integer ambiguities.
  • 13. The method of claim 11, further comprising selecting the calculated second subset of integer ambiguities that corresponds to the residual vector having a smallest norm value as a solution for the second subset of integer ambiguities.
  • 14. The method of claim 11 wherein deriving a relationship between two subsets of the set of integer ambiguities comprises:determining a relationship between the set of integer ambiguities and the residual sensitivity matrix; and performing singular value decomposition of the residual sensitivity matrix.
  • 15. The method of claim 14 wherein determining a relationship between the set of integer ambiguities and the residual sensitivity matrix includes minimizing a norm value of a phase range residual vector.
  • 16. The method of claim 11 wherein deriving the relationship between the two subset of integer ambiguities comprises:determining a relationship between the set of integer ambiguities and the residual sensitivity matrix; and splitting the residual sensitivity matrix into four submatrices.
  • 17. The method of claim 16 wherein determining a relationship between the set of integer ambiguities and the residual sensitivity matrix include minimizing a norm value of a phase range residual vector.
  • 18. The method of claim 16 wherein splitting the residual sensitivity matrix comprises rearranging the residual sensitivity matrix.
  • 19. The method of claim 18 wherein rearranging the residual sensitivity matrix comprises:selecting a number of linearly independent rows or columns of the residual sensitivity matrix; and rearranging the residual sensitivity matrix such that the selected number of linearly independent rows of columns are positioned in a rearranged residual sensitivity matrix as first rows or columns of the rearranged residual sensitivity matrix.
  • 20. The method of claim 19, wherein the number of linearly independent rows or column of the residual sensitivity matrix are selected such that each selected row or column has a diagonal element that is greater than the diagonal element in any of the unselected rows or columns.
CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation in part of patent application Ser. No. 10/253,976, filed Sep. 24, 2002 now abandoned.

US Referenced Citations (11)
Number Name Date Kind
4963889 Hatch Oct 1990 A
5736961 Fenton et al. Apr 1998 A
5825326 Semler et al. Oct 1998 A
5890091 Talbot et al. Mar 1999 A
5903236 Lawrence May 1999 A
5935194 Talbot et al. Aug 1999 A
6127968 Lu Oct 2000 A
6150978 McBurney Nov 2000 A
6166683 Hwang Dec 2000 A
6347113 Hatch Feb 2002 B1
6373432 Rabinowitz et al. Apr 2002 B1
Continuation in Parts (1)
Number Date Country
Parent 10/253976 Sep 2002 US
Child 10/338264 US