Research Article  Open Access
Jing Zhao, Chengdong Xu, Yimei Jian, Pengfei Zhang, "A Modified Range Consensus Algorithm Based on GA for Receiver Autonomous Integrity Monitoring", Mathematical Problems in Engineering, vol. 2020, Article ID 8969032, 13 pages, 2020. https://doi.org/10.1155/2020/8969032
A Modified Range Consensus Algorithm Based on GA for Receiver Autonomous Integrity Monitoring
Abstract
With the considerable increase of visible satellites for positioning, the fault detection and identification performance of Range Consensus (RANCO) algorithm for Receiver Autonomous Integrity Monitoring (RAIM) will significantly be improved. However, the calculation amount of RANCO algorithm will exponentially increase for the sharp addition of visible satellite subsets. This paper proposes a modified RANCO algorithm based on genetic algorithm (GARANCO) for RAIM to inhibit the exponentially expanded calculation amount. To reduce the calculation amount in searching the optimal minimal necessary subset (MNS), the preselection step is developed to speed up the convergence process of GARANCO. It is executed to exclude the chromosomerepresented MNS for which the count of faulty satellites will exceed the upper limit of independent simultaneous satellite faults to be monitored. Mathematical simulations are introduced to determine the GA parameters, and simulation experiments under different schemes are designed to evaluate the performance of GARANCO algorithm. Results illustrate that the time consumption under a large number of visible satellites of GARANCO is much lower than that of RANCO and the faulty detection and identification performance of GARANCO is the same as that of RANCO.
1. Introduction
The integrity of GNSS is an important factor to ensure the safety of civil aviation, which can be assured at system or user level [1–3]. The former is provided through an independent network of monitoring stations and a dedicated integrity channel, such as satellitebased augmentation system (SBAS) and groundbased augmentation system (GBAS), and the latter is provided by Receiver Autonomous Integrity Monitoring (RAIM) [4, 5]. With more and more visible satellites from multiconstellations being possible to be received at the same time, the multiple hypothesis solution separation (MHSS) algorithm and the range consensus (RANCO) algorithm were representatively proposed to deal with the multiple satellites fault for RAIM [6–14].
The MHSS algorithm is recommended in advanced RAIM (ARAIM), which is developed to meet the integrity requirement of LPV200 using GPS and Galileo [15]. MHSS is implemented in the position domain and its principle is to minimize the protection level (PL) [16, 17]. However, a faulty satellite with a large pseudorange bias which does not translate in a large position domain error may not be excluded because it reduces the PL just to a small extent [17]. With enough visible satellites being possible to be received, this kind of faulty satellite needs to be excluded even if its pseudorange bias affects the position error slightly, whereas it cannot be achieved using MHSS algorithm [18, 19].
The RANCO algorithm is implemented in the measurement domain and it can meet the above requirement [20, 21]. According to the simulation result from Schroth and Song [10, 22], the RANCO algorithm performs higher fault detection probability than the MHSS algorithm and snapshot RAIM algorithm. RANCO is developed based on the elementary idea of the random sample consensus (RANSAC) algorithm, which is well known in the field of graphics and image processing [23], and identifies multiple faulty satellites by searching the outliers for the minimal necessary subset (MNS), containing the least visible satellites able to estimate the user position. All MNSs should be traversed to find the optimal MNS, which presents the optimal consistency with other visible satellites. Then, its inliers will be identified to be the nominal satellite and its outliers will eventually be identified as the faulty satellites. Since all MNSs need to be traversed, the calculation amount of RANCO will exponentially increase with visible satellite addition [10, 21].
With regard to reducing the huge calculation amount of RANCO, two preexclusion approaches were proposed via excluding the poor geometry MNS before outlier searching. The first was via calculating the GDOP value of MNS. The MNS with GDOP exceeding a setting threshold will be excluded [24]. The second was via analyzing the correlation of every two lineofsight (LOS) vectors [11, 25]. The MNS with the correlation coefficient of any two LOS vectors exceeding a setting threshold will be excluded [21]. Test results show that the calculation amount of GDOP approach is much larger than that of LOS approach because of the matrix inversion calculation [22]. However, even if the preexclusion approach is applied, the calculation amount of RANCO algorithm is still huge for multiple GNSS constellations, exponentially increasing with visible satellites addition.
In this paper, considering that the essence of RANCO algorithm is to search the optimal MNS, we propose a modified RANCO algorithm based on genetic algorithm (GA) for RAIM, which is a bionic optimization algorithm achieved by simulating the biological evolution process, including inheritance, preselection, selection, crossover, and mutation [26–29]. This modified algorithm, abbreviated as GARANCO, can inhibit the exponentially increasing calculation amount of RANCO.
The remainder of this paper is organized as follows. Section 2 reviews RANCO algorithm with MNS preexclusion using LOS approach, abbreviated as LOSRANCO. In Section 3, the GARANCO algorithm is developed. The convergence process of GARANCO is accelerated by the chromosome conditional selection for the initial generation and the chromosome preselection for each generation. Section 4 introduces the determination of GA parameters based on mathematical simulations. Section 5 designs simulation experiments to evaluate the performance of GARANCO compared with LOSRANCO. Section 6 concludes the work with a brief summary.
2. Fault Detection and Identification Using LOSRANCO Algorithm
Assuming that the pseudorange noise of each visible satellite obeys zero mean normal distribution in nominal mode and the pseudorange observations are independent of each other, the RANCO algorithm is designed to identify multiple faulty satellites by searching outliers for the MNS, which contains the least visible satellites being able to estimate the user position.
Here, we assume there are N constellations and m visible satellites; then the number of visible satellites for each MNS will be 3 + N and the number of MNSs will be . For the jth MNS, denoted as , the user position estimate can be expressed as follows:where is the geometry matrix, is the pseudorange vector, and is the weight matrix, with representing the standard deviation of pseudorange noise for satellite in .
The number of satellites under test (SUT) for , i.e., the visible satellites not belonging to , will be . For the ith visible satellite under test of , denoted as , its pseudorange residual can be expressed as follows:where is the pseudorange of and is the corresponding line of in the geometry matrix.
Setting the pseudorange error of to be and the pseudorange error vector of to be , equation (2) can be expressed as
When each visible satellite in and is in the nominal mode, would obey normal distribution with the following statistical characteristics:where and , respectively, represent the expectation and the variance of a random variable.
Substituting , , , and into (4),
When each visible satellite in is in the nominal mode while in is a faulty satellite, would obey the following distribution:where represents the pseudorange bias caused by satellite fault.
According to equations (5) and (6), the consistency between and , i.e., is an inlier or an outlier of , can be checked using the test threshold . When , will be considered as an inlier for , i.e., has good consistency with . Otherwise, will be considered as an outlier for , i.e. has poor consistency with . A low outlier count indicates that the estimate of can fit the user real position well and has a high consensus with the other visible satellites.
After testing of all , an augmented subset consisting of all inliers for and satellites belonging to can be established. The number of satellites in will be , where represents the number of inliers and represents the number of satellites belonging to . The overall consistency of can be checked using the pseudorange residual sum of squares for , denoted as . A low indicates a good consistency with .
belonging to can be calculated as follows:where , with representing the standard deviation of pseudorange noise for satellite of and is the pseudorange residual vector for :where is the pseudorange vector for , is the geometry matrix for , and is the user position estimate calculated by weighted least squares algorithm according to :
Utilizing the property of , an indicator can be constructed to evaluate the performance for every as follows:
with the minimum value will be considered as the optimal one, denoted as . It has three characteristics: no faulty satellite, minimum value, and maximum value. The outliers for will be identified to be the faulty satellites.
The LOSRANCO approach to preexclude the poor geometry MNS before outlier identifying is implemented by calculating the correlation coefficient (CCF) of the LOS vectors for each two visible satellites. Assuming that the LOS vectors of and are, respectively, and , the CCF between the two satellites will be
As seen in equation (11), is the cosine of the angle between two LOS vectors. The value range of is . Large value indicates strong correlation. represents the LOS vectors of and are the same, represents the LOS vectors of and are orthogonal, and represents the LOS vectors of and are in the opposite direction. Given a threshold for , the should be excluded when the value of any two satellites in it exceeds that threshold. The threshold for is set as [11].
3. A Modified RANCO Algorithm Based on GA
With the rapid development of GNSS, the visible satellites under multiconstellations will increase more and more. The abundantly redundant pseudorange measurements can significantly improve the performance of RANCO algorithm [30, 31]. However, the calculation amount will exponentially increase with visible satellite addition. In this section, a modified RANCO algorithm based on GA is proposed to inhibit the exponentially expanded calculation amount.
The flowchart of GARANCO algorithm is shown in Figure 1, roughly divided into 5 steps: Step 1. Code each visible satellite as a gene. Step 2. Generate the initial population . Step 3. Prevent the bad chromosome from getting into the regular operation of GA via preselection. Step 4. Iteratively genetically operate for each generation of population until the genetic generation count reaches T, including selection, crossover, mutation, fitness calculation, and preselection. The population of the generation is signed as . after selection, crossover and mutation are respectively recorded as , , and . Step 5. Exclude the faulty satellites according to the optimal , i.e., the MNS represented by the chromosome which owning the maximum fitness among the population of the generation.
The details of GARANCO algorithm is introduced as follows:(1)Gene coding: Each visible satellite is edited as a gene code, an integer between 1 and m. m represents the total number of visible satellites. A gene code has onetoone correspondence with a visible satellite, but unrelated to its constellation and its specific satellite number. All of gene codes constitute a gene pool.(2)Initial population generation: M (an even) chromosomes should be generated for the initial population. Each chromosome consists of 3 + N gene codes, which are arbitrarily selected from the gene pool. Because each chromosome represents a , the gene cannot be repeated and the order of gene codes is arbitrary. To ensure the genetic diversity, each chromosome in the initial population should be different. In order to speed up the convergence process, the outlier number of the chromosomerepresented should not exceed the maximum number of independent simultaneous satellite faults to be monitored in the initial population generation. The outlier identification is completed during the fitness calculation for each newly generated chromosome. The specific calculation can be seen in the preselection step and the specific fitness calculation process can be seen in fitness calculation step.(3)Preselection: The preselection step is specially designed for GARANCO and is not a general procedure in GA. It is executed before the regular selection operation of GA. Preselection is used to exclude the chromosome which represents a MNS having more than outliers. is the maximum number of independent simultaneous satellite faults to be monitored. If the chromosomerepresented owns outliers more than , it might contain a gene code representing a faulty satellite. Therefore, this chromosomerepresented MNS cannot be the optimal one. is the minimum value satisfying the following equation [15, 32]: where is the prior probability of j satellites independent simultaneous fault, is the total number of the visible satellites, and is the threshold for the integrity risk coming from unmonitored satellite faults, much smaller than the total integrity budget. With the assumption that the prior probability for each satellite fault is the same, where is the prior fault probability of satellite. For example, assume there are 16 visible satellites , all with , and , Thus, , which means more than 2 independent simultaneous satellites fault can be neglected for its integrity risk being much less than the total integrity budget. Then, the can be considered to contain faulty satellite when it has more than 2 outliers in this example. The preselection can prevent the chromosome which may contain the gene code of a faulty satellite getting into the regular operation of GA [31, 33] and speed up the convergence process of GARANCO. To ensure a constant chromosome number of the population, the first few largefitness chromosomes should be repeated to replace the excluded ones after preselection.(4)Roulette selection: Roulette is used for chromosome selection. Assuming the fitness of the ith chromosome is , the cumulative fitness from to is calculated as follows: Simulating a roulette, a random variable satisfying the uniform distribution of [0, 1] is generated for each selection time. If the value of the random variable fell between and , would be selected. The largefitness chromosome has high probability of being selected. To ensure a constant number of chromosomes in the population, M times of roulette selection are executed.(5)Singlepoint crossover: As seen in Figure 2, the cross point is randomly selected. When a chromosome after crossover shows repeated gene codes, the crossover operation would be revoked.(6)Singlepoint mutation: As seen in Figure 3, the mutation point is randomly selected as well. To avoid gene repetition in the mutated chromosome, the mutant gene should be different from any one in the original chromosome.(7)Fitness calculation:
The performance evaluation indicator for a chromosome is the fitness. The fitness for is as follows:where is the of the augmented subset consisting of the satellites corresponding to all gene codes in and the inliers of represented , where is the inlier count for represented , and N is the constellation count.
As seen in equation (16), the fitness for in GARANCO is the reciprocal of the performance evaluation indicator for represented in LOSRANCO. Because a small value and a large inlier count represent good performance of a chromosome, to maintain good performance chromosome in selection, the fitness should be designed to take a large value. During fitness calculation, the outliers for a chromosomerepresented can be obtained simultaneously. The specific outlier identification process for can be seen in LOSRANCO review section.
4. GA Parameters Determination
In this section, mathematical simulations are designed to determine the GA parameters, including genetic generation T, population chromosome number M, cross probability , and mutation probability .The work is completed using Microsoft Visual Studio 2010 on a personal computer, which has 3.40 GHz CPU and 8.00 GB RAM.
Figure 4 shows the simulation architecture. The input of the simulation is ephemeris, simulation epoch, user real position, pseudorange bias, and PRN of faulty satellite. The simulation process can be divided into two parts: the observation data simulation and the fault detection/identification.
In observation data simulation, satellite position is calculated according to the ephemeris downloaded from IGS website and the specific simulation epoch. Then the visibility of satellite is judged according to elevation angle. If the elevation angle is larger than the masking angle, the satellite is judged to be visible. For a visible satellite, the range between it and the user real position is calculated. If the visible satellite is assumed to be fault, the pseudorange bias would be added on its real range. The pseudorange bias is a constant for the step fault mode, while it is a value linearly increased with time for the ramp step fault mode.
The dualfrequency ionospherefree combination is assumed to be used for the pseudorange observation. The pseudorange observation is generated according to the ephemeris downloaded from IGS website. The satellite clock error, the ephemeris error, and the tropospheric delay are not considered in the simulation. Assuming simulation experiments are conducted in an open area near the ground, only the receiver noise is simulated as the pseudorange noise, using Gaussian models with zero mean. The standard deviations of the receiver noise for the ith visible satellite are as follows, coming from the ARAIM interim report [15]:where represents the elevation angle in degrees. Actually, (17) is set for GPS. However, it is used for both GPS and BDS pseudorange noise simulating in this simulation because there is no widely used pseudorange noise distribution model used for RAIM of BDS now [34].
Using dualfrequency ionospherefree combination, the pseudorange noise for the ith visible satellite is generated as Gaussian noise with the standard deviation as follows:where for GPS L1 and BDS B1C and for GPS L5 and BDS B2a.
These simulations are implemented in the AsiaPacific Area (55°S∼55°N, 70°E∼150°E), which is divided into girds. At each gird point, both LOSRANCO and GARANCO are implemented to detect/identify the satellite fault. BDS is simulated as a 14satellite constellation (5GEO + 5IGSO + 4MEO) and C02 is set as the faulty satellite with the pseudorange bias of 8σ, where σ represents the standard deviation of pseudorange noise for its corresponding satellite.
4.1. T and M Determination
To ensure the same fault identification for GARANCO and LOSRANCO, the executed termination condition of GARANCO in M and T determining simulation is as follows:where is the maximum fitness in the tth generation of GARANCO and is the performance evaluation indicator for the final optimal of LOSRANCO. The parameter t satisfying the termination condition is recorded as .
Both the fault identification probability and the calculation amount should be considered. The GARANCO fault identification probability can be measured by the probability of , which means the probability of that the faulty satellites identified by GARANCO at genetic generation T are different from those identified by LOSRANCO. To guarantee that GARANCO has equivalent fault detection and identification performance of LOSRANCO, this probability should be as small as possible. The GARANCO calculation amount can be measured by the product of T and M, which presents the times of fitness calculation. This product should be as small as possible.
Setting and , two simulation experiments are designed to determine T and M.
The first simulation is used to preliminary screen the suitable M. It is set at a given time epoch (2019313 00:40:00 of UTC time). The AsiaPacific area is divided into grids with a resolution of 1°. There are in total grid points. M is set from 6 to 26. For each M value, the values of 8991 grid points are recorded in Figure 5.
As seen in Figure 5, the times of value larger than 10 decrease with the increase of M, even being less than 6 for M being larger than 14, which is less than 0.1% of the total grid points. When M takes a value smaller than 14, T should be assigned a large value to guarantee the fault detection/identification probability, which will bring a large calculation amount. For example, T should be 60 for to ensure the probability of being less than 0.1%. Moreover, with M being larger than 20, the times of that taking a large value (larger than 10) basically keep constant, which means the probability of keeps almost constant with and . Considering both fault detection/identification probability and calculation amount, M should be assigned a value between 14 and 20.
The second simulation is to determine the optimal value of T and M. It is set in a whole day (2019313 00:00:00 to 2019314 00:00:00 of UTC time) with the time step of 600 s. The AsiaPacific area is divided into grids with a resolution of 2°. There are in total grid points. Both GARANCO and LOSRANCO are implemented at each gird point and simulation epoch with M from 14 to 20. For each M value, there are values. The probability of , denoted as , is calculated, where :
In equation (20), presents the times of for each M value and N presents the total simulation times, . Actually, .
As seen in Figure 6, the curves for are roughly arranged from high to low, which means decreases with M addition at a given value. The value of sharply decreases at the beginning, and its decrease speed slows down gradually to about 0 with addition. The curves for are very close, clearly separated from curve for . Therefore, to obtain the same value, the T value for is much larger than that for , which means the calculation amount of will be significantly larger than that of . For example, to guarantee , T should take 30 for and less than 10 for . The total calculation amount for will be more than 2 times that for . Therefore, should be excluded. Moreover, comparing with and , the calculation amount increases are 11.1% and 25.0%, respectively, at a given T value, while the decreases are 30%∼60% and 30%∼80%, respectively. The decrease is larger than the calculation amount increase. Then, is set as 20.
Figure 7 presents for two adjacent T values. It can be seen that obviously decreases with T addition when because every additional generation significantly increases calculation amount and the value slightly decreases with . Then, T is set as 8.
4.2. and Determination
The simulation conditions for searching the optimal and are the same as those of the second simulation experiment in 4.1. and are searched in the interval from 0.1 to 0.9 with the step of 0.1. In searching simulation, we set , , and . For each value, times of GARANCO and LOSRANCO are implemented. The difference between GARANCO and LOSRANCO () for each value is recorded in Figure 8:where is the times of algorithm executions when there exists faulty satellite, and is the times of a faulty satellite being identified when it is really fault.
As seen in Figure 8, reaches maximum at . Then, is set as 0.5.
In searching simulation, we set , , and . for each value is recorded in Figure 9. As seen in Figure 9, the value of is positive during searching simulations and reaches maximum value at , illustrating that the fault identification performance of GARANCO is better than that of LOSRANCO. The reason is the MNS which has obvious inconsistency with a faulty satellite might be preexcluded for its poor geometry in LOSRANCO. In other words, the LOS preexclusion decreases the fault identification performance of RANCO. It is observed that the faulty satellite may be successfully identified using GARANCO but misidentified using LOSRANCO. Then, is set as 0.3.
Finally, GA parameters are determined to be , , , and . Because these parameters are determined under single constellation and specific pseudorange bias value, whether they are available for double constellations and all pseudorange bias values should be further verified.
5. Simulation Experiments and Analysis
In this section, simulation experiments are designed to verify the superior performance of GARANCO. The simulation experiments are conducted under the simulation architecture in Figure 4. The performance indicators are the probability of fault detection , the probability of fault identification (), and the time consumption of algorithm execution. The specific calculation method can be seen in equation (21):where represents the times of algorithm executions when there exists faulty satellite; represents the times of fault being detected when there exists faulty satellite. represents the entire navigation system and represents the specific faulty satellite.
These simulations are implemented in the AsiaPacific area (55°S∼55°N, 70°E∼150°E). GPS and BDS are chosen to be the simulation constellations. The former is simulated as a 32satellite constellation and the latter is simulated as a 14satellite constellation (5GEO + 5IGSO + 4MEO). The prior probability of fault for each satellite is set as [15]. In simulations, the cause of satellite fault is not considered, and the fault satellite is presented by the pseudorange bias, which is directly added to pseudorange of the faulty satellite.
5.1. Simulation at a Given Location
This simulation is set at a given location (north latitude 39°, east longitude 116°, and height 0 m) and a given time epoch (2019313 00:40:00 of UTC time) to verify the performance of GARANCO algorithm under different constellation numbers and with different pseudorange bias values.
Table 1 records 4 different kinds of scenarios in this simulation: single faulty satellite under single constellation, double faulty satellite under single constellation, single faulty satellite under double constellations, and double faulty satellites under double constellations. The visible satellite numbers of GPS and BDS are, respectively, 9 and 11. In each simulation scenario, the satellite fault is set as the step fault, bringing pseudorange bias from 1σ to 15σ. For each pseudorange bias, 10^{5} times of simulation are executed. In each time of simulation, the pseudorange noise is randomly generated as shown in (18) and the pseudorange bias is directly added to the pseudorange of the assumed faulty satellite with a constant.

Figures 10–13, respectively, show and and the time consumption for GARANCO and LOSRANCO under different scenarios. As shown in Figures 10–13, both and for GARANCO are almost the same as those for LOSRANCO at each pseudorange bias value.
(a)
(b)
(c)
(a)
(b)
(c)
(d)
(a)
(b)
(c)
(a)
(b)
(c)
(d)
As shown in Figures 10(c) and 11(b), the time consumption of GARANCO and LOSRANCO are almost the same under single faulty satellite fault and double faulty satellites; that is, the number of faulty satellites does not affect the RANCO calculation amount. Moreover, the time consumption of GARANCO is about 150 ms, much higher than that of LOSRANCO about 35 ms. It indicates that the calculation amount of GARANCO is much higher than that of LOSRANCO under one constellation with about 11 visible satellites in this specific simulation experiment. The reason is that at least times of fitness calculation is implemented in GARANCO, while only 39 times of performance evaluation indicator calculation for MNS is implemented in LOSRANCO for only 39 MNSs remained after poor geometry MNS preexclusion.
As shown in Figures 12(c) and 13(b), time consumption for GARANCO and LOSRANCO is, respectively, about 750 ms and 1200–1450 ms. The time consumption for GARANCO is only about 50%–60% of that for LOSRANCO under two constellations of about 20 visible satellites in this specific simulation experiment. The reason is that at least times of fitness calculation is implemented in GARANCO, while 349 times of performance evaluation indicator calculation for MNS is implemented in LOSRANCO for 349 MNSs remained after poor geometry MNS preexclusion.
Comparing Figure 12(c) with Figure 13(b), time consumption of GARANCO for double faulty satellites is the same as that for single faulty satellite under double constellations. However, the time consumption of LOSRANCO for double faulty satellites is obviously less than that for single faulty satellite with pseudorange bias larger than 5σ. The reason is that the calculation amount for SSE with double outliers excluded is obviously less than that with single outlier excluded.
As shown in Figures 12(c), 13(b), 10(c), and 11(b), time consumption of GARANCO for double constellations is much larger than that for single constellation with the same genetic generation and population chromosome number. The time consumption increases from single to double constellation are caused by the gene code addition from 4 to 5 of GARANCO, which significantly increases the amount of matrix operations during fitness calculation.
This simulation experiment illustrates that both and of GARANCO are the same as those of the LOSRANCO for different pseudorange bias values under single or double constellations. The parameters of GARANCO, , , , and , are available for double constellations and all pseudorange bias values. The calculation amount of GARANCO is much larger than that of LOSRANCO for single constellation with 11 visible satellites while it is much smaller than that of LOSRANCO for double constellations with 20 visible satellites.
5.2. Simulation in AsiaPacific Area
Another simulation is designed to further verify the performance of GARANCO. This simulation is set in AsiaPacific area (55°S∼55°N, 70°E∼150°E), divided into grids with a resolution of 2°. The simulation starts at 2019313 00:00:00 of UTC time and lasts 4 hours with the step of 300 s. At each grid point and simulation epoch, both GARANCO and LOSRANCO are implemented. During simulation, the number of visible satellites is 7∼15 for single constellation while being 16∼28 for double constellations with the masking angle of 5°. According to (12) and (13), is set to be 2 for the number of visible satellites from 7 to 28.
Table 2 records two different kinds of simulation scenarios. The bias added to pseudorange for each faulty satellite is 8σ, where σ represents the standard deviation of pseudorange noise for its corresponding satellite. At each gird point, the pseudorange noise is randomly generated for each visible satellite. And the pseudorange bias is directly added to the pseudorange of the assumed faulty satellite with a constant (8σ).

Figures 14 and 15, respectively, present and under two scenarios. As shown in Figures 14 and 15, both and of GARANCO are similar to those of LOSRANCO.
(a)
(b)
(a)
(b)
(c)
Figures 16(a) and 16(b), respectively, present the average time consumptions of GARANCO and LOSRANCO for different visible satellite numbers under single constellation and double constellations. With the visible satellite number addition, the GARANCO time consumption is linearly increased while the LOSRANCO time consumption is exponentially increased.
(a)
(b)
As shown in Figure 16(a), the time consumption of GARANCO is much larger than that of LOSRANCO at the beginning. Then, the time consumption difference between GARANCO and LOSRANCO gradually shrinks with visible satellite number addition. The time consumption of LOSRANCO exceeds that of GARANCO when the visible satellite number arrives 12. And then the time consumption difference between LOSRANCO and GARANCO gradually expanded with visible satellite number addition. Particularly, when the visible satellite number increases to 15, the time consumption of LOSRANCO is expanded more than 3 times that of GARANCO. Figure 16(a) illustrates that the computation efficiency of GARANCO would perform more excellent than that of LOSRANCO when more than 11 visible satellites exist under single constellations.
As seen in Figure 16(b), the time consumption of GARANCO is larger than that of LOSRANCO with no more than 16 visible satellites under two constellations. And the time consumption difference between GARANCO and LOSRANCO increases with visible satellite addition. Figure 16(b) illustrates that the computation efficiency of GARANCO would far exceed that of LOSRANCO when more than 16 visible satellites exist under double constellations.
Comparing Figure 16(a) with Figure 16(b), the time consumption of GARANCO is less than that of LOSRANCO in single constellation with 13–15 visible satellites while being more than that of LOSRANCO in double constellations with 16 visible satellites. There are two reasons. The first is the sudden increase of GARANCO calculation amount caused by the gene code addition from single constellation to double constellations. The second is the decrease of LOSRANCO calculation amount caused by the MNS preexclusion because the LOS vectors of two satellites from two different constellations are more likely to be highly correlated compared with those from the same constellation.
This simulation experiment confirms that with large number of visible satellites, more than 11 for single constellation and more than 16 for double constellations, GARANCO will be more suitable than LOSRANCO for RAIM for its quite lower calculation amount and similar fault detection/identification probability with LOSRANCO. Analyzing the simulation result, it can be deduced that the fault detection/identification probability of GARANCO will be equivalent to that of LOSRANCO and the time consumption difference between GARANCO and LOSRANCO will expand further for 3 or 4 GNSS constellations. However, because the calculated amount of GARANCO is linearly increased, its time consumption will also be very large. Therefore, both LOSRANCO and GARANCO are not suitable for RAIM of 3 or 4 GNSS constellations. Further modification is needed for GARANCO to improve its computational efficiency again, making it available for 3 or 4 GNSS constellations.
6. Conclusions
In this paper, a modified RANCO algorithm based on GA (GARANCO) for RAIM was proposed to inhibit the exponential increasing calculation amount of RANCO algorithm under multiple GNSS constellations. The preselection step was developed to speed up the convergence process in GARANCO. The chromosome containing the gene code of a faulty satellite was excluded via preselection before the regular operation of GA in each generation. Simulation experiments illustrated that with considerable number of visible satellites, more than 11 for single constellation or more than 16 for double constellations, the GARANCO algorithm will be more suitable than LOSRANCO RAIM algorithm for its lower calculation amount and similar faulty detection/identification probability.
Data Availability
The data used to support the findings of this study are available from the corresponding author upon request.
Conflicts of Interest
The authors declare that there are no conflicts of interest regarding the publication of this paper.
Acknowledgments
This work was supported by the Natural Science Foundation of Shanxi Province, China (Grant no. 201801D221210).
References
 W. Y. Ochieng, K. Sauer, D. Walsh, G. Brodin, S. Griffin, and M. Denney, “GPS integrity and potential impact on aviation safety,” Journal of Navigation, vol. 56, no. 1, pp. 51–65, 2003. View at: Publisher Site  Google Scholar
 J. Blanch, T. Walter, and P. Enge, “Satellite navigation for aviation in 2025,” Proceedings of the IEEE, vol. 100, pp. 1821–1830, 2012. View at: Publisher Site  Google Scholar
 X. Xu and Y. Chuansen, “Review and prospect of GNSS receiver autonomous integrity monitoring,” Acta Aeronautica et Astronautica Sinica, vol. 34, no. 3, pp. 451–463, 2013. View at: Google Scholar
 S. Feng, W. Y. Ochieng, D. Walsh, and R. Ioannides, “A measurement domain receiver autonomous integrity monitoring algorithm,” GPS Solutions, vol. 10, no. 2, pp. 85–96, 2006. View at: Publisher Site  Google Scholar
 J. Blanch, Y. H. Chen, R. E. Phelts, T. Walter, and P. Enge, “Mitigation of short duration satellite outages for advanced RAIM and other integrity systems based on GNSS,” in Proceedings of the 29th International Technical Meeting of the Satellite Division of the Institute of Navigation (IONGNSS2016), pp. 1688–1695, Nashville, OR, USA, November 2016. View at: Publisher Site  Google Scholar
 B. S. Pervan, S. P. Pullen, and J. R. Christie, “A multiple hypothesis approach to satellite navigation integrity,” Navigation, vol. 45, no. 1, pp. 61–71, 1998. View at: Publisher Site  Google Scholar
 L. Li, H. Wang, C. Jia, L. Zhao, and Y. Zhao, “Integrity and continuity allocation for the RAIM with multiple constellations,” GPS Solutions, vol. 21, no. 4, pp. 1503–1513, 2017. View at: Publisher Site  Google Scholar
 M. Joerger and B. Pervan, “Fault detection and exclusion using solution separation and chisquared ARAIM,” IEEE Transactions on Aerospace and Electronic Systems, vol. 52, no. 2, pp. 726–742, 2016. View at: Publisher Site  Google Scholar
 L. Yang, Y. X. Zhang, and Y. Gao, “Enhanced RAIM based on weighted and subset schemes for GNSS receiver,” in Proceedings of the ION 2013 Pacific PNT Meeting, pp. 661–666, Honolulu, HI, USA, April 2013. View at: Google Scholar
 G. Schroth, A. Ene, J. Blanch, T. Walter, and P. Enge, “Failure detection and exclusion via range consensus,” in Proceedings of the European Navigation Conference, Toulouse, France, April 2008. View at: Google Scholar
 G. Schroth, M. Rippl, A. Ene et al., “Enhancements of the range consensus algorithm (RANCO),” in Proceedings of the 21st ITM of ION GNSS Conference, pp. 93–103, Savannah, GA, USA, September 2008. View at: Google Scholar
 J.H. Song and G.I. Jee, “Performance enhancement of land vehicle positioning using multiple GPS receivers in an urban area,” Sensors, vol. 16, no. 10, p. 1688, 2016. View at: Publisher Site  Google Scholar
 Q. Meng, J. Liu, Q. Zeng, S. Feng, and R. Xu, “Improved ARAIM fault modes determination scheme based on feedback structure with probability accumulation,” GPS Solutions, vol. 23, no. 1, pp. 16–27, 2019. View at: Publisher Site  Google Scholar
 Q. Meng, J. Liu, Q. Zeng, S. Feng, and R. Xu, “Impact of one satellite outage on ARAIM depleted constellation configurations,” Chinese Journal of Aeronautics, vol. 32, no. 4, pp. 967–977, 2019. View at: Publisher Site  Google Scholar
 EUU.S., Cooperation on Satellite Navigation, Working Group C, ARAIM Technical Subgroup, Interim Report, 2012, https://www.GPS.gov/policy/cooperation/Europe/2013/workinggroupc/ARAIMreport1.0.pdf.
 J. Blanch, T. Walter, and P. Enge, “Protection levels after fault exclusion for advanced RAIM,” Navigation, vol. 64, no. 4, pp. 505–513, 2017. View at: Publisher Site  Google Scholar
 J. Blanch, T. Walter, and P. Enge, “Optimal positioning for advanced RAIM,” Navigation, vol. 60, no. 4, pp. 279–289, 2013. View at: Publisher Site  Google Scholar
 J. Blanch, A. Ene, T. Walter, and P. Enge, “An optimized multiple hypothesis RAIM algorithm for vertical guidance,” in Proceedings of the ION GNSS 20th International Technical Meeting of the Satellite Division, pp. 2924–2933, Fort Worth, TX, USA, 2007. View at: Google Scholar
 Y. Zhai, M. Joerger, and B. Pervan, “Fault exclusion in multiconstellation global navigation satellite systems,” Journal of Navigation, vol. 71, no. 6, pp. 1281–1298, 2018. View at: Publisher Site  Google Scholar
 Q. Zhang and Q. Gui, “A new bayesian RAIM for multiple faults detection and exclusion in GNSS,” Journal of Navigation, vol. 68, no. 3, pp. 465–479, 2015. View at: Publisher Site  Google Scholar
 M. Rippl, G. Schroth, B. Belabbas, and M. Meurer, “A probabilistic assessment on the range consensus (RANCO) RAIM algorithm,” in Proceedings of the ION International Technical Meeting (ITM), Anaheim, CA, USA, January 2009. View at: Google Scholar
 D. Song, Algorithm Study and Mathematical Simulation for SINS/GNSS Integrated Navigation System, Beijing Institute of Technology, Beijing, China, 2017.
 M. A. Fischler and R. C. Bolles, “Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography,” Communications of the ACM, vol. 24, no. 6, pp. 381–395, 1981. View at: Publisher Site  Google Scholar
 J. Blanch, T. Walker, P. Enge et al., “Baseline advanced RAIM user algorithm and possible improvements,” IEEE Transactions on Aerospace and Electronic Systems, vol. 51, no. 1, pp. 713–732, 2015. View at: Publisher Site  Google Scholar
 J. Z. Bei, S. Z. Gu, and S. S. Fang, “A new RAIM method based on vector correlation distance,” Scientia Sinica (Physica, Mechanica & Astronomica), vol. 40, pp. 638–643, 2010. View at: Google Scholar
 S. Jiancai, X. Guixiang, and K. Yanan, “A novel method for optimum global positioning system satellite selection based on a modified genetic algorithm,” PLoS One, vol. 11, no. 3, Article ID e0150005, 2016. View at: Publisher Site  Google Scholar
 Q. Q. Zhang, Q. M. Gui, Y. S. Gong, and “, “Multiple satellite faults detection and identification based on the independent component analysis,” Acta Geodaetica et Cartographica Sinica, vol. 46, no. 6, pp. 698–705, 2017. View at: Google Scholar
 S. Rani, B. Suri, and R. Goyal, “On the effectiveness of using elitist genetic algorithm in mutation testing,” SymmetryBasel, vol. 11, no. 9, p. 1145, 2019. View at: Publisher Site  Google Scholar
 L. Bottaci, “A genetic algorithm fitness function for mutation testing,” in Proceedings of the International Workshop Software Engineering Metaheuristic Innovation Algorithms, Workshop 23rd International Conference on Software Engineering, pp. 3–7, Toronto, CA, USA, 2001. View at: Google Scholar
 Q. Zhang, L. Zhao, and J. Zhou, “Improved method for single and multiple GNSS faults exclusion based on consensus voting,” Journal of Navigation, vol. 72, no. 4, pp. 987–1006, 2019. View at: Publisher Site  Google Scholar
 F. Meng, S. Wang, and B. Zhu, “Research of fast satellite selection algorithm for multiconstellation,” Chinese Journal of Electronics, vol. 25, no. 6, pp. 1172–1178, 2016. View at: Publisher Site  Google Scholar
 S. D. Zhang, Z. P. Wang, and Z. Gao, “Research on exact thresholds for ARAIM MHSS fault monitoring,” Mathematical Problems in Engineering, vol. 2019, Article ID 6471790, 17 pages, 2019. View at: Publisher Site  Google Scholar
 Y. Tang, Y. Wang, J. Chen, and H. Chen, “Uplink scheduling of navigation constellation based on genetic algorithm,” in Proceedings of the 13th International Conference on Signal Processing (ICSP), IEEE, Chengdu, China, November 2017. View at: Publisher Site  Google Scholar
 P. F. Zhang, P. Y. Chen, D. Song, and G. Fan, “Research on GNSS receiver autonomous integrity monitoring method based on Mestimation,” Mathematical Problems in Engineering, vol. 2018, Article ID 2563202, 6 pages, 2018. View at: Publisher Site  Google Scholar
Copyright
Copyright © 2020 Jing Zhao et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.