Skip to main content
Advertisement
Browse Subject Areas
?

Click through the PLOS taxonomy to find articles in your field.

For more information about PLOS Subject Areas, click here.

  • Loading metrics

A Novel Method for Optimum Global Positioning System Satellite Selection Based on a Modified Genetic Algorithm

Abstract

In this paper, a novel method for selecting a navigation satellite subset for a global positioning system (GPS) based on a genetic algorithm is presented. This approach is based on minimizing the factors in the geometric dilution of precision (GDOP) using a modified genetic algorithm (MGA) with an elite conservation strategy, adaptive selection, adaptive mutation, and a hybrid genetic algorithm that can select a subset of the satellites represented by specific numbers in the interval (4 ∼ n) while maintaining position accuracy. A comprehensive simulation demonstrates that the MGA-based satellite selection method effectively selects the correct number of optimal satellite subsets using receiver autonomous integrity monitoring (RAIM) or fault detection and exclusion (FDE). This method is more adaptable and flexible for GPS receivers, particularly for those used in handset equipment and mobile phones.

Introduction

The geometric dilution of precision (GDOP) [1, 2] describes the accuracy of positioning from the geometry of the satellites visible to the receiver [3]. Errors in a GPS receiver’s determination of its position are typically the GDOP times the measurement error; in other words, the GDOP is an error amplification factor, which means that a smaller GDOP generally results in a more accurate position. Therefore, a smaller GDOP is better. It has been shown that the number of satellites cause the GDOP to move in the opposite direction, i.e., a higher number of satellites leads to a lower GDOP value, and a lower number of satellites generally produces a bad GDOP [4] and results in a corresponding reduction in the positioning error. The simplest method is to choose a combination of all of the satellites, all of which must be in view to achieve optimal position accuracy with a minimal GDOP [5]; however, some GPS receivers can receive and parse navigation signals from only a limited number of satellites in real time because of restrictions on hardware resources. Therefore, at least four satellites should be selected for three-dimensional positioning to balance hardware resources and positioning performance, however, a minimum of 5 satellites is required to evaluate the consistency and reliability for the GPS receiver autonomous integrity monitoring(RAIM), meanwhile, more than five pseudo-ranges are need to be used to identify the contaminating measurement in the procedure of fault detection and exclusion (FDE).

Calculating the GDOP typically involves multiple mathematical matrix operations, such as inversions and transformations, particularly for the optimal satellite selection method, which involves selecting the subset with the lowest GDOP using all of the satellites. However, the approach used for GDOP calculation creates a heavy burden for the receiver because the calculation’s complexity increases exponentially with the number of visible satellites [5].

Satellite selection is a classical combinatorial optimization problem, the solution methods of which have been the subject of intense study in recent years. One solution method includes geometric methods, such as the fast satellite selection approach [68], quasi-optimal satellite selection [9], and optimal selection [10, 11]. Miaoyan Zhang [8] proposed a novel algorithm based on selecting the subset of in-view satellites that has a closer distance to optimal solution from the aspect of geometry when there are more than four satellites for multiple constellations.

The other solution methods include statistical and machine learning approaches based on neural networks [5, 1215], support vector machines [16] and fuzzy logic [17]. Simon [12] initially proposed the neural network-based approach as a way to predict the GDOP and complete the classification, and back-propagation neural networks and optimal interpolative nets have been employed to achieve the two objectives, respectively. Jwo [5] proposed several types of neural network mapping relationships for different classes of relationships between inputs and outputs and compared the performance of different network architectures. Mosavi [13, 14] studied the relationships of eigenvalues between the visibility matrix and its inverse matrix for GDOP. Azami [15] developed several improved neural network training algorithms, including the Levenberg Marquardt (LM), modified LM and resilient BP (RBP) methods. ChihHung [16] addressed the approximation of the GPS GDOP using support vector machines (SVMs).

In this paper, we develop a novel modified genetic algorithm to select the optimal subsets of satellites for GPS receivers. Because of the global optimization capability and fast convergence of the modified genetic algorithm, this approach effectively searches the entire solution spaces and determines the optimal satellite subset after evolving through a number of generations without the number limitation of required visible satellites, which improve the adaptability and flexibility of the algorithm under a unified framework.

Materials

The Geometric Dilution of Precision

The mathematical model behind GPS is based on pseudo-range measurements between the receiver and visible satellites [4]. Without loss of generality, supposing that (xu, yu, zu) represents the three-dimensional coordinates of the receiver’s position in the ECEF system, (xj, yj, zj) denotes the coordinates of the jth satellite’s position in the ECEF system, and tb indicates the equivalent distance of the time difference between the receiver arrival time and the satellite signal sent time. The receiver acquires information from n(n > 4) satellites and determines the pseudo-range value. (1)

It is shown that Eq (1) is a nonlinear function because of the square root mathematical operation. In general, this class of problem can be linearized using the mathematical principle of Taylor series and be written in a concise matrix form as (2) where the order of measurement matrix G is n × 4 (n ≥ 4), which can be represented as

To simplify this problem, we assume that the measurement error has a Gaussian distribution independently. The least squares solution for the super definite matrix is typically given by (3)

To illustrate the position accuracy, the covariance of Δx is (4)

It is reasonable to assume that all of the errors in the pseudo-range measurements are stationary random processes for short time intervals, which are independent and identically distributed with a variance of . Let (5)

The GDOP, which represents the amplification of the equivalent ranging errors in the measurement into the receiver’s position solution, is (6)

According to linear algebra and matrix theory [25], when λi are the eigenvalues of an invertible matrix A, are assumed to be the eigenvalues of the inverse of the matrix A−1. The measurement matrix is always revertible, and the eigenvalues of can be found using the eigenvalues λi of (G T G). This leads to a significant reduction in the number of calculations required to find the matrix inverse; the eigenvalues λi of (G T G) can be quickly calculated using QR decomposition. Let (7) where tr(⋅) represents the trace function of the matrix and c is the constant for the speed of light.

The satellite selection process is to select a subset of satellites visible in the current view for the purpose of the best positioning accuracy, which corresponds to selecting the rows of the visibility matrix G that produce the minimum GDOP as follows: (8) where si is the identification number of the satellite currently in view such that (9)

Genetic Algorithm Preliminaries

A genetic algorithm (GA) [1820] is a robust global optimization approach that operates according to the principles of evolution, such as inheritance, selection, crossover and mutation.

In a GA, chromosomes are used to encode a candidate solution, and the fitness function is the indication factor that represents the quality of the individuals. As the population evolves, its average fitness gradually increases based on the principle of the ‘survival of the fittest’; excellent genes that are more fit are usually selected stochastically. The selected individuals are operated through the process of the genetic operator, such as selection, crossover and mutation, until the algorithm reaches termination.

In previous studies, GA was primarily used for micro-strip antenna optimization [21, 22], resolving ambiguity [23] and multi-path mitigation [24] in satellite navigation. This paper proposes a novel modified genetic algorithm (MGA) for GPS satellite selection.

Methods

Because individuals evolve from generation to generation, the optimal solution is found in a short period of time. Several strategies were used to improve the performance of the algorithm. First, the elitist strategy reserves the most fit gene of the previous generation to improve the average fitness of the next generation. Second, adaptive mechanisms are used to adjust the mutation and crossover rates to maintain each generation’s diversity. Finally, a hybrid method accelerates the convergence. Without loss of generality, we establish the following mathematical definitions:

  1. MaxGenNumber represents the maximum number of evolution cycles.
  2. PopSize represents the size of the population.
  3. Pop represents the population.
  4. Indi represents the ith chromosome.
  5. Fitness(Indi) represents the fitness of the ith chromosome.

Representation

The integer code includes a clear description of the satellite selection problem with population diversity followed by binary formation.

It is assumed that N GPS satellites are visible in the current view, which are coded as (k1, k2, ⋯, kN). The objective is to select the four signals Indi = (ki, kj, km, kn) that provide the minimum GDOP value and that satisfy the following constraint: (10) where the size of the solution space is , Indi represents an individual, and ki is a gene on the chromosome. Without loss of generality, we assume that the list of currently visible satellites is [2, 5, 7, 14, 15, 20, 21, 25] and possible solutions are [2, 5, 7, 14] or [2, 5, 7, 15]. A total of 5 or 6 satellites must be selected when considering RAIM and fail detection and exclusion (FDE), which means that the code’s dimension must increase to, for example, [2, 5, 7, 14, 15] or [2, 5, 7, 14, 15, 20].

The Fitness Function

The fitness function is a special type of objective function that indicates the current number of individuals; a larger number is better in most cases. We minimize the GDOP as follows to obtain a more accurate position: (11) Note that according to Eq (11), the fitness function is monotonic and non-negative, and the number of calculations can be reduced by omitting the square root, which yields (12)

Selection

During each generation, individuals are selected by the Ps probability to produce the offspring, in which the individuals with higher fitness have considerably higher probabilities of being selected.

We define the fitness selection operator as Ts : SPopSizeS, where S represents the solution space and PopSize is the population size. Then, (13) where Fitness(Indi) is an individual’s fitness and the probability distribution function P{Indi} satisfies the following condition: (14)

The role of the selection operator is to select the individuals that reproduce stochastically; the roulette wheel selection method [18] based on a proportional-selection mechanism is the most widely used strategy in which a greater fitness implies a higher selection probability.

To reduce the time required to find the optimal solution, the elitist reservation strategy is used. Using a ranking based on the population’s fitness, the best chromosomes are reserved for the next generation. This process accelerates the algorithm’s convergence.

Adaptive Crossover Operators

Crossover is a critical genetic operator that is also called recombination. In this process, a couple of solutions are selected to create offspring that inherit the characteristics from the “parents”. The process continues until a new population is created.

Without loss of generality, Tc : S2S is a stochastic map with cross probability pc for the single-point crossover operator. ∀(Ind1, Ind2) ∈ S2, YS, there is (15) where Len is the length of the chromosome.

In general, the cross probability Pc strongly influences the performance of the MGA.

During the initial stage of the MGA’s evolution, if the best chromosome is considerably more fit than the other individuals, the optimum chromosome has a substantially higher probability of being selected, which causes the algorithm to converge to a local minimum. Therefore, a gene with a high fitness should be restricted from over-reproducing to maintain the gene diversity at the initial stage of population evolution. In turn, the average fitness of all individuals is approximately equal to the maximum value of the population. Consequently, the possibility of selecting an individual with an average fitness is equal to that of selecting the chromosome with the highest fitness, which eliminates competition between excellent individuals. Then, the selection operation becomes random, which results in the worst performance when searching for the best chromosome during the post-evolutionary stage. Fig 1 is a demonstration of single-point crossover operation for MGA-based satellite selection.

thumbnail
Fig 1. An example of the single-point crossover for MGA-based satellite selection.

https://doi.org/10.1371/journal.pone.0150005.g001

The following novel adaptive strategy for generating the cross probability for different evolutionary stages that controls the gene diversity to a certain, but not large, degree is proposed: (16) where

Fitnessmax and Fitnessavg denote the maximum and minimum fitness of the population, respectively. Fitness′ is the larger one between the pair of parents. pcmax denotes the maximum probability of crossover. pcmin denotes the minimum probability of crossover.

Adaptive Mutation Operators

The mutation operator brings a new gene into the population, keeping the population’s diversity from converging prematurely. Fig 2 is an example of single-point mutation operation for MGA-based satellite selection.

thumbnail
Fig 2. An example of the single-point mutation for MGA-based satellite selection.

https://doi.org/10.1371/journal.pone.0150005.g002

The mutation operator is used to alter an individual gene for the purpose of population diversity; however, the MGA degenerates into a random search when the mutation probability Pm is high. In contrast, the probability of producing certain useful genes is zero when Pm is low. To improve the algorithm’s ability to find a global optimum and to avoid converging prematurely or becoming stuck at a local minimum, the adaptive mutation is (17) where

Fitnessmax and Fitnessavg denote the maximum and minimum fitness of the population, respectively. Fitness′ is the larger one between the pair of parents. pmmax is the maximum probability mutation. pmmin is the minimum probability mutation.

The Hybrid Genetic Algorithm

To utilize the benefits of the two classes of approaches, a hybrid genetic algorithm that combines the advantages of an MGA and fast selection is proposed. To allow the algorithm to quickly find the best solution, individuals may be initially created in the areas with the higher probability for optimal solutions. It is easy to obtain an equivalent formulation of Eq (2) when the receiver position offset is described in the ECEF coordinate system. (18) where [△enuδtu]T is the state variable to be determined; then, the geometry matrix becomes (19) where α(n) and θ(n) are the elevation and azimuth angles of the nth satellite, respectively. The main idea behind this step is to randomly generate all of the chromosome subsets with geometries similar to that of the optimal subset of the population by grouping all of the satellites and randomly selecting one satellite from each group to form a chromosome subset according to their azimuths and elevations.

Termination

This evolutionary process for MGA satellite selection arrives at an endpoint when one of the following conditions has been reached:

  1. A solution is found that satisfies the minimum criterion, GDOP < 3.
  2. The number of generations reaches 20.

Results

To demonstrate the performance of the proposed MGA satellite selection algorithm, the OEMStar, which is one of NovAtel’s OEM global navigation satellite system receiver platforms, was used to collect broadcast ephemeris data and to calculate all of the satellites’ positions in the ECEF coordinate system every second for 12 hours. The OEMStar receiver was placed at the author’s institute, which has ECEF coordinates of [−2258692.95, 4405376.94, 4007987.94]. At the beginning of the evolutionary process, four different satellite signals were randomly selected to compute the GDOP from the geometry matrix G, using Eq (6). The following experiments were conducted using Matlab 2010 on a personal computer with an Intel Core(TM)2 Duo CPU and 2 GB of memory.

Simulation Parameters

The primary parameters of the proposed MGA satellite selection algorithm include the population size, the crossover probability, the mutation probability and the number of evolution iterations. These parameters influence the convergence speed and accuracy of the algorithm. A high crossover probability accelerates the creation of individuals and increases the possibility of an excellent gene being destroyed, which negatively affects the process of evolution. In contrast, when the crossover probability is low, the speed at which new individuals are created decreases, and the search process stagnates. With regard to the mutation probability, a high probability results in the MGA being closer to a random search algorithm, and a low probability reduces the likelihood of producing new individuals and of premature convergence. Table 1 lists the values of all of the parameters used in the simulations.

thumbnail
Table 1. A summary of the parameter values used in this paper.

https://doi.org/10.1371/journal.pone.0150005.t001

Discussion

GPS satellites orbit the earth once approximately every 12 hours, and as shown in Fig 3, there are approximately 7–12 satellites visible from any point on the earth at any given time. Fig 4 shows the cumulative probability distribution function for the number of visible satellites. Fig 5 shows that the GDOP calculated using the all-in-view (AIV) method is minimized, and the proposed MGA’s performance is equivalent to that of the optimal selection algorithm. The GDOP of the optimal selection algorithm is slightly better than that of the AIV method, whose performance, however, is better than that of the neural network and the fast selection algorithm, particularly in terms of accuracy and efficiency. A comparison is shown in Table 2. A comparison of the residuals of the GDOPs of the various algorithms is provided in Fig 6, where it can be observed that the proposed MGA is the most accurate and has the smallest residuals. Fig 7 shows the average fitness function and the best individual fitness versus the number of iterations. The average fitness function gradually decreases over time as the process of evolution continues, which shows that the algorithm converges and that the best chromosome is eventually obtained.

thumbnail
Fig 3. The number of GPS satellites visible from TianJin over 12 hours.

https://doi.org/10.1371/journal.pone.0150005.g003

thumbnail
Fig 5. The performance of the MGA compared with that of using the AIV-method, a neural network, optimal selection and fast selection.

https://doi.org/10.1371/journal.pone.0150005.g005

thumbnail
Fig 6. The relative error in the GDOP when the MGA is used for satellite selection.

https://doi.org/10.1371/journal.pone.0150005.g006

The proposed novel MGA satellite selection algorithm is not only suitable for the common problem of selecting 4 satellites but can also be used to select 5 or 6 satellites under RAIM or FDE conditions without modification. Fig 8 presents the GDOP performance curve computed by the MGA, which shows that the GDOP gradually decreases as the number of satellites selected, namely, 4, 5 and 6, increases.

thumbnail
Fig 8. A comparison of the GDOP calculated using different numbers of satellites selected using the MGA.

https://doi.org/10.1371/journal.pone.0150005.g008

Conclusion

A novel method for selecting satellites for GPS use was proposed and shown to provide both parallel and global convergence. The MGA can select a subset of satellites of any size that satisfies the position requirements using an elite conservation strategy, adaptive mechanism, hybrid genetic algorithm and reasonable designs of the fitness function, and the selection, crossover and mutation operators. Comprehensive simulations were conducted and demonstrated that the MGA-based satellite selection method can effectively select an optimal subset of the available satellites in both conventional and RAIM modes. The latter is more feasible and adaptable to the GPS receivers that are used in handset equipment and mobile phones. An unexpected discovery was that this method can be applied to not only single constellation systems such as GPS but also to multi-constellation systems because of its ability to select more than 4 satellites.

Supporting Information

S1 Text. This file contains the data (in the file format of matlab *.mat) collected by the authors at Tianjin, China for this study.

https://doi.org/10.1371/journal.pone.0150005.s001

(MAT)

S2 Text. This file is description of used the data set (S1 Text) for satellite selection.

https://doi.org/10.1371/journal.pone.0150005.s002

(TXT)

Acknowledgments

The authors would like to thank the Associate Editor and anonymous reviewers for their valuable comments, which improved the presentation of this paper.

Author Contributions

Conceived and designed the experiments: JS. Performed the experiments: GX YK. Analyzed the data: JS GX YK. Contributed reagents/materials/analysis tools: GX. Wrote the paper: JS. Contributed to the use of GPS receiver: GX.

References

  1. 1. Sharp I, Kegen Y, Guo YJ. GDOP analysis for positioning system design. Vehicular Technology, IEEE Transactions on. 2009;58(7):3371–82.
  2. 2. Chaffee J, Abel J. GDOP and the cramer-rao bound. Position Location and Navigation Symposium, 1994, IEEE. 1994;11–15.
  3. 3. Doong SH. A closed-form formula for GPS GDOP computation. GPS Solut. 2009;13(3):183–90. PubMed PMID: WOS:000267662000003.
  4. 4. Yarlagadda R, Ali I, Al-Dhahir N, Hershey J. GPS GDOP metric. IEE Proceedings Radar, Sonar and Navigation. 2000;147(5):259–64.
  5. 5. Jwo DJ, Lai CC. Neural network-based GPS GDOP approximation and classification. GPS Solut. 2007;11(1):51–60. PubMed PMID: WOS:000244259300006.
  6. 6. Mok E, Cross PA. A fast satellite selection algorithm for combined GPS and GLONASS receivers. The Journal of Navigation. 1994;47(03):383–9.
  7. 7. Miaoyan Zhang, Jun Zhang, Yong Qin. Satellite selection for multi-constellation. Position, Location and Navigation Symposium, 2008 IEEE/ION; 2008;s 5–8.
  8. 8. Miaoyan Zhang, Jun Zhang. A fast satellite selection algorithm: beyond four satellites. IEEE J Sel Top Signal Process. 2009;3(5):740–7. PubMed PMID: WOS:000271020000002.
  9. 9. Liu M, Fortin MA, Landry R. A recursive quasi-optimal fast satellite selection method for gnss receivers. Washington: Inst Navigation; 2009;2061–71.
  10. 10. Phatak MS. Recursive method for optimum GPS satellite selection. IEEE Trans Aerosp Electron Syst. 2001;37(2):751–4. PubMed PMID: WOS:000169955600032.
  11. 11. Zuo-ya Z, Cheng H, Chu-gang F, Fei-peng Z. Selection of GPS satellites for the optimum geometry. Chin Astron Astrophys. 2004;28(1):80–7.
  12. 12. Simon D, El-Sherief H. Navigation satellite selection using neural networks. Neurocomputing. 1995;7(3):247–58.
  13. 13. Mosavi MR, Sorkhi M, Ieee. An efficient method for optimum selection of GPS satellites set using recurrent neural network. 2009 Ieee/Asme International Conference on Advanced Intelligent Mechatronics, Vols 1–3. IEEE ASME International Conference on Advanced Intelligent Mechatronics. New York: Ieee; 2009;245–9.
  14. 14. Mosavi MR, Sorkhi M, Ieee. An efficient method for optimum selection of GPS satellites set using recurrent neural network. New York: Ieee; 2009;245–9.
  15. 15. Azami H, Sanei S. GPS GDOP classification via improved neural network trainings and principal component analysis. Int J Electron. 2014;101(9):1300–13.
  16. 16. Chih-Hung W, Wei-Han S, Ya-Wei H. A study on GPS GDOP approximation using support-vector machines. Instrumentation and Measurement, IEEE Transactions on. 2011;60(1):137–45.
  17. 17. Azarbad M, Azami H, Sanei S, Ebrahimzadeh A. New neural network-based approaches for GPS GDOP classification based on neuro-fuzzy inference system, radial basis function, and improved bee algorithm. Appl Soft Comput. 2014;25:285–92.
  18. 18. Ting-Yu L, Kai-Chiuan H, Hsin-Chun H. Applying genetic algorithms for multiradio wireless mesh network planning. Vehicular Technology, IEEE Transactions on. 2012;61(5):2256–70.
  19. 19. Xiaoming D. Allele gene based adaptive genetic algorithm to the code design. Communications, IEEE Transactions on. 2011;59(5):1253–8.
  20. 20. Min Liu, Zhi-jiang Sun, Jun-wei Yan, Jing-song Kang. An adaptive annealing genetic algorithm for the job-shop planning and scheduling problem. Expert Systems with Applications. 2011;38(8):9248–55. PubMed PMID: WOS:000290237500023.
  21. 21. Ozgun O, Mutlu S, Aksun M, Alatan L. Design of dual-frequency probe-fed microstrip antennas with genetic optimization algorithm, Antennas and Propagation, IEEE Transactions on. 2003;(53):1947–54.
  22. 22. Wu Chih-Hung, Chou Hung-Ju, Su Wei-Han. A genetic approach for coordinate transformation test of GPS positioning. Geoscience and Remote Sensing Letters, IEEE. 2007;(4):297–301.
  23. 23. Benson K. Evolving finite state machines with embedded genetic programming for automatic target detection, in evolutionary computation, Proceedings of the 2000 Congress on 2000. 2000; (2): 1543–49.
  24. 24. Otero A, Otero J, Sanchez L, Villar J. Longest path estimation from inherently fuzzy data acquired with GPS using genetic algorithms, in Evolving Fuzzy Systems, 2006 International Symposium on (2006);300–05.
  25. 25. Carl Meyer D. Matrix analysis and applied linear algebra. Society for Industrial & Applied Mathematics. 2000.