The present invention relates to satellite navigation systems, and, more particularly, to determination of a subset of satellites, out of many available ones, that are to be used for accurate calculation of position.
When processing multiple navigation satellite systems, including GPS, GLONASS, Galileo, Beidou, QZSS, the overall number of the range and carrier phase signals can exceed several tens (close to 100 today, and more are expected in the future). On the other hand, a much smaller number of them is necessary for processing to meet sufficient precision of positioning. Some parts of RTK algorithms, like carrier phase ambiguity resolution, are very sensitive to the dimension of the integer search problem. If trying to process multiple satellite signals, it is very important to correctly choose the subset of carrier phase ambiguities that are fixed first, secondarily, and so on.
Assume that the receiver connected to each antenna or multi-antenna receiver connected to plurality of antennas is capable of receiving multiple GNSS signals of multiple GNSS satellites, including (but not limited by this set)
The number of signals is actually larger than the number of satellites, because multiple frequency bands can be used for each satellite. The total number of signals can exceed dozens and even reach a value of a hundred.
The following fundamental set of observables is used:
where the following notations are used (see [3, Chapter 6, 7]):
Thus, the receiver position is measured by the pseudorange and carrier phase observables for the plurality of satellites. Error components, including biases and noise, affecting the observable equations (1) and (2), prevent a direct solution for the receiver antenna position.
Carrier phase measurements are much more precise, compared to the pseudorange measurements, since the carrier phase noise has standard deviation in the centimeter or even millimeter range, while the standard deviation of the pseudorange measurements is usually of the meter or decimeter range. On the other hand, the carrier phase measurement is affected by the carrier phase ambiguity, which is an unknown integer valued quantity.
Thus, elimination of measurement errors is necessary for precise positioning. To achieve a high precision in position determination, different methods of errors mitigation are applied. For example, tropospheric errors can be precisely modeled and compensated in observables of equations (1) and (2). Ionospheric errors can be estimated along with other unknowns. Noise is easily filtered.
Errors common to two receivers, like clock and hardware biases of the satellite, can be compensated in a difference between two receivers. Usually one of receivers occupies a known position, while an antenna of another receiver is attached to the object to be located. The first receiver is called “the base” while another receiver is called “the rover”. The processing mode involving calculation of the across-receiver difference (also called the “first difference”) is referred to as differential GNSS processing or DGNSS. The DGNSS processing is performed in real time and includes not only pseudoranges but also carrier phase observables, and is referred to as real time kinematic (RTK) processing.
Another sources of errors partially eliminated by across-receiver differences are ionospheric delay and ephemerides error. The closer the rover is to the base, the better is compensation of the ionospheric and ephemerides error.
For two stations k and l the across-receiver differences of pseudorange and carrier phase measurements can be written as
Another way for error mitigation includes using a precise satellite clock and precise ephemerides. They are available through a dedicated real time service. Precise point positioning (PPP) allows to achieve the centimeter level position with only one rover receiver, provided satellite clock and precise satellite position are available. The base station is not necessary in this case.
Finally, if neither base station, nor precise clock and ephemerides are available, the quality of the standalone position can be improved if carrier phase ambiguity and ionospheric delay are estimated, along with position, using broadcast ephemerides. The corresponding processing mode is equivalent smoothing of pseudoranges using carrier phase measurements or, in short, carrier phase smoothing of code pseudoranges, see [2]. Whatever processing mode is used, the linearization and filtering algorithms are used for recursive estimation of unknown position, carrier phase ambiguity, and ionospheric delay.
The general form of the linearized navigation model has the following form (see [2, Chapt. 7])
b
P(t)=Adx(t)+eξ(t)+Γi(t)+dP (5)
b
φ(t)=Λ−1Adx(t)+Λ−1eξ(t)+n−Λ−1Γi(t)+dφ (6)
Two last quantities are undifferences for carrier phase smoothing and PPP processing modes. For DGNSS and RTK processing modes the carrier phase ambiguity and ionospheric delay are across-receiver differenced.
Let M be total number of satellite signals, including different satellite systems, different satellites, different frequency bands.
In the following description, all vectors are represented by columns, and the superscript symbol T denotes the matrix transpose. RN is the N—dimensional Euclidean space. Given a linearization point x0(t)∈R3, notations used in equations (5) and (6) are as follows:
Ionospheric delays are undifferenced for the standalone and PPP processing modes, and they are across-receiver differenced in the DGNSS and RTK processing modes;
Consideration of pseudorange hardware biases leads to a necessity to consider the plurality of signals the receiver is able to track. In the case of a multi-frequency and multi-system receiver supporting the following bands:
L1, L2 and L5 bands for GPS,
L1 and L2 GLONASS,
L1, E5a, E5b and E6 Galileo,
L1, L2, L5 and E6 QZSS,
L1 an, L5 SBAS,
B1, B2, and B3 Beidou,
the signals (L1 GPS, L1 Galileo, L1 SBAS, L1 QZSS), (L2 GPS, L2 QZSS), (L5 GPS, E5a Galileo, L5 SBAS, L5 QZSS), (E6 Galileo, E6 QZSS), respectively, can share the same hardware channel and therefore will be affected by the same hardware bias, as noted in [2, Chapter 7]. Note that the biases vector dP and the clock shift variable ξ(t) appear as a sum in equation (5). This means that one of the biases, say dL
η1=dL
η4=dL
η7=dB
This representation can be referred to as establishing a bias datum.
In one possible embodiment, the linearized equations (5) can now be expressed in the form
b
P(t)=Adx(t)+eξ(t)+Γi(t)+Wηη (8)
The bias vector η has the appropriate dimension mη. Note again that in this exemplary embodiment we follow notations introduced in [2], which is incorporated herein by reference in its entirety.
The bias vector η is three-dimensional (mη=3) for dual-band and dual-system GPS/GLONASS receivers, as only biases η1, η2, η3 are presented among all possible biases listed in (7). In the case of the multi-band, multi-system receiver, the dimension of the vector η can be large. It is one-dimensional in the case of dual-band GPS-only receivers or single band GPS/GLONASS receivers.
The Wη is referred to as bias allocation matrix and has dimensions n×mη. It allocates a single bias, or none, to a certain signal. No bias is allocated to the signal corresponding to the GPS, Galileo, SBAS, or QZSS systems and b=L1 because we combined the bias dL
Consider, for example, a dual-band GPS/GLONASS receiver. Suppose it tracks six GPS satellites and six GLONASS satellites. The total number of dual-band signals is 24. Let the signals be ordered in the following way: six GPS L1, six GPS L2, six GLONASS L1, and six GLONASS L2 signals. The biaseallocation matrix Wη presented in the linearized single difference pseudorange equation (8) takes the following form:
Further, the real-valued carrier phase ambiguities (also called float ambiguities) are combined with biases dφ, while pseudorange biases are considered as a real valued constant unknown parameter. Thus, after combination of carrier phase ambiguities with carrier phase biases, the equation (6) takes the form
b
φ=Λ−1Adx(t)+Λ−1eξ(t)+n−Λ−1Γi(t). (10)
Note that the noise component is omitted in equations (8), (10) for the sake of brevity.
The ambiguity vector n and the bias vector η are further recursively estimated based on successively processed set of data (8) and (10) for successive time epochs t. Ambiguity vector is then fixed at the integer valued-vector called fixed ambiguity n*. Both recursive estimation and especially integer search are computationally consuming. Computational cost of recursive estimation cubically depends on M. Even more computationally excessive (actually near exponential) is the integer search. On the other hand not all signals are necessary for accurate position determination.
Accordingly, there is a need in the art for a technique for selecting a set of GNSS signals for use in all modes of positioning.
Accordingly, the present invention is directed to optimal selection of satellites to be used for accurate precision of positioning in the following processing modes:
In one aspect, there is provide a method of determining coordinates, including receiving GNSS (global navigation satellite system) signals from at least five satellites, wherein at least two of the five satellites belong to one constellation (e.g., GPS), and the remaining satellites belong to at least one other constellation (e.g., to Galileo); processing the GNSS signals to measure code and phase measurements for each of the satellites and each of the GNSS signals; selecting a subset of the GNSS signals as an optimal set for coordinate calculation, where the selecting is based on Semi-Definite Programming (SDP) relaxation as applied to an optimization of a PDOP (positional dilution of precision) criterion; calculating coordinates of a receiver based on the code and phase measurements of the selected subset; and outputting the calculated coordinates. The total number of signals in the optimal set should not exceed the predefined number of m signals.
Optionally, the receiver is a standalone receiver, or operates in a smoothed standalone mode, or operates in a differential mode. Optionally, the SDP relaxation minimizes a linear criterion
is a diagonal matrix composed of xi,
Optionally, the xi are non-binary, and are rounded to 0 or 1.
Optionally, the SDP relaxation is used for computation of a lower bound by using a Branch and Bound technique.
Thus, the optimal choice problem is reduced to the convex optimization using semidefinite programming (SDP) relaxation approach. Within this approach the linear objective function is optimized over the cone of positive semidefinite matrices.
Additional features and advantages of the invention will be set forth in the description that follows, and in part will be apparent from the description, or may be learned by practice of the invention. The advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention.
In the drawings comparison of optimal and non-optimal constellation choices is illustrated:
Reference will now be made in detail to the embodiments of the present invention.
To reduce the computational cost of the positioning calculation, the optimal choice of signals should be used. Semi-definite relaxation (SDP) approach to solution of this optimization problem is proposed in this invention. Different cost functions controlling precision of positioning, for example PDOP, can be considered in the optimization problem. The constraint used in optimization includes the total number of signals. We must choose the subset whose total number does not exceed a given value (e.g., 19, or 24) in such a way that PDOP takes minimal possible value.
The optimization problem falls into class of binary optimization problems which are NP hard and therefore their precise solution assumes exponential computational complexity. To make solution more computationally tractable, the convex real valued relaxation is proposed. In the proposed approach, the problem is reduced to the convex optimization using semidefinite programming (SDP) relaxation approach. Within this approach the linear objective function is optimized over the cone of positive semidefinite matrices. This approach is attractive because of its generality, although it has never been applied to this specific application before.
Many problems of operation research, control and systems theory can be efficiently reduced to SDP. For convex optimization there are efficient fast computational algorithms with polynomial complexity which can be implemented in real time, see [1]. Most algorithms are based on interior point barrier functions method. There are robust packages, like SeDuMi, SDPT3 and SDPA, some of which are available in Linux as libraries, and which can be used in real time.
The quantity subject to optimization is known as positioning dilution of precision (PDOP) and is defined as
tr(ATA)−1 (11)
where A stands for the matrix of the linearized system, for example (10). For different problems the matrix A can be chosen different ways.
Given the matrix A of directional cosines, with M being the total number of signals (19 in the example presented in
tr(ATXA)−1→min (12)
subject to constraints
Here diag (x1, . . . , xM) means a diagonal matrix with variables xi taking values 0 or 1. The maximum number of signals allowed in the optimal set is denoted by m.
The optimization problem (12), (13) is non-convex and binary. Its precise solution assumes exhaustive search, which is computationally hard. In the present invention, convex relaxation is proposed, which solves the linear cost function under semi-definite constraints as suggested below:
subject to constraints
where p is the number of navigation parameters. In one embodiment it can be 5 (x, y, z, Δt's). The notation Ip stands for identity matrix, the symbol stands for positive semidefiniteness of matrices.
The inequality (16) is known as linear matrix inequality (LMI) and establish convex constraints on the matrix which is linearly dependent on unknowns X, S. Thus, we reduced the optimal choice problem to the convex optimization problem for which there are very efficient numerical algorithms, see [1].
Possible algorithms include:
These and others algorithms are available in the art for engineers.
After relaxed problem (14)-(17) is solved, the real valued estimates of binary variables xi* are obtained which are subject to further rounding to nearest 0 or 1.
The relaxed problem can be used for calculation of the lower estimates together with Branch and Bound algorithm [4] for precise solution. This idea was illustrated by practical computations.
The SDP relaxation algorithm can be implemented and used for both batch processing and real time for L1 only and L1/L2/L5/G1/G2/B1/B2 multi-constellation multi-band signal processing.
A structure of the navigation receiver that can be used in the invention is shown in
Having thus described the different embodiments of a system and method, it should be apparent to those skilled in the art that certain advantages of the described method and apparatus have been achieved. It should also be appreciated that various modifications, adaptations, and alternative embodiments thereof may be made within the scope and spirit of the present invention. The invention is further defined by the following claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/RU2018/000241 | 4/18/2018 | WO | 00 |