P-RANSAC : An Integrity Monitoring Approach for GNSS Signal Degraded Scenario

Satellite navigation is critical in signal-degraded environments where signals are corrupted and GNSS systems do not guarantee an accurate and continuous positioning. In particular measurements in urban scenario are strongly affected by gross errors, degrading navigation solution; hence a quality check on the measurements, defined as RAIM, is important. Classical RAIM techniques work properly in case of single outlier but have to be modified to take into account the simultaneous presence of multiple outliers. This work is focused on the implementation of random sample consensus (RANSAC) algorithm, developed for computer vision tasks, in the GNSS context. This method is capable of detecting multiple satellite failures; it calculates position solutions based on subsets of four satellites and compares them with the pseudoranges of all the satellites not contributing to the solution. In this work, a modification to the original RANSACmethod is proposed and an analysis of its performance is conducted, processing data collected in a static test.


Introduction
GNSS (global navigation satellite systems) are worldwide and all weather navigation systems are able to provide threedimensional position, velocity, and time synchronization to UTC (coordinated universal time) scale.The multiconstellation based on GPS-GLONASS is the standard for most receivers, from survey ones to smartphones, and it is able to ensure the estimation of the user location by using the pseudorange observable in single point, with an accuracy of about 10 meters in good visibility conditions [1].The main disadvantage of GNSS is the need of having a good satellites visibility; for this reason, the environments characterized by strong signal degradation, such as urban areas, are particularly critical for satellite navigation [2].In fact, buildings can mask some signals, thereby reducing the satellites availability and causing geometric configuration worsening, up to cases in which it is not possible to calculate the position because of the lack of measurements.Buildings can also reflect signals from in-view satellites, producing the multipath effects, or from non-line-of-sight (NLOS) ones.These two effects are not the same, although they sometimes occur together, but cause gross errors in measurements even though different [3].
With the rise of enhanced GNSS systems over the next decade the number of satellites and therefore of ranging sources available for positioning will significantly increase to more than double the current value.Hence it is no longer possible to assume that the probability of failure for more than one satellite within a certain timeframe is negligible.In this context the ability to detect multiple satellite failures at the receiver level, where local errors sources as multipath, NLOS reception, receiver failures, unusual atmospheric conditions, or interference degrade the navigation solution, becomes of high importance for the integrity of the navigation system [4].
The system reliability is related to the ability to identify and exclude measures affected by large errors which, if not rejected, could corrupt the final output of the system.The reliability testing in GNSS context is performed by RAIM (receiver autonomous integrity monitoring) techniques, which are based on consistency check of redundant measurements [5,6].The classical RAIM algorithms need to be modified in urban canyons because of multiple outlier presence [7,8], but such environments are currently a challenge for standard RAIM methods.
In this work RANSAC (random sample consensus) algorithm, early used for graphics and image processing [9] and capable of interpreting/smoothing data containing a significant percentage of outlier, is applied to GNSS case.RANSAC application in GNSS context was firstly studied in [10,11], using simulated data and showing promising results; in [3,12] this algorithm has been applied for GNSS outlier detection using real data.
The present work shows an augmented version of RANSAC algorithm, called P-RANSAC, whose results are particularly suitable for GNSS application and whose benefits are investigated.
The tests to demonstrate the efficiency of P-RANSAC method in GNSS context are performed using real data obtained from a GPS station located in an urban scenario.The results obtained from P-RANSAC algorithm are compared with original RANSAC method and the ones obtained with a classical RAIM technique, that is, the "observation subset testing" [13,14].

GPS Positioning and RAIM Technique
2.1.Single Point Positioning.GPS positioning is based on the one-way ranging technique: the time of travel of a signal, transmitted by a satellite, is measured and scaled by the speed of light to obtain the satellite-user distance, called pseudorange (), whose equation is where  is the geometric receiver-satellite distance,   is the receiver clock offset scaled by the speed of light, and  contains the remaining errors after atmospheric and satelliterelated corrections [15].A set of equations like (1), after linearization around a nominal state, forms the measurement model where  is the difference between actual and predicted measurements,  is the design matrix,  is the remaining error vector after atmospheric and satellite-related corrections, and Δ is the state vector containing receiver coordinates corrections and clock offset errors.The state vector for the single point-single epoch algorithm is estimated using least squares method (LS), whose optimization criterion consists in minimizing the sum of the squared residuals defined as where Δ is the state vector, estimated with LS.
In this work the adopted estimation technique is the weighted least squares (WLS), with weights related to satellite elevation [16].RAIM.In reliability testing, it is assumed that the measures follow a predefined statistical distribution and an outlier causes that the measure no longer follows this distribution [17].Actually it is not possible to know certainly if a measure belongs or not to a predefined distribution [18].In order to get that information with a good chance, a statistical approach is adopted, defining a decisional variable and a threshold wherewith performing a comparison.The situation where outliers are not encountered is called null hypothesis ( 0 ) and the situation where outliers are present is called alternative hypothesis (  ); if the decisional variable  is lower than the threshold , the  0 event is assumed, while if  is higher than the threshold , the   event is considered and the presence of outliers is assumed.In reliability testing, there are two types of errors: false alarm and missed alarm.If the decisional variable is higher than threshold and there are no outliers, there is a false alarm and the probability of making this error is called significance level (), while the probability of not committing this error is called confidence level.If  is lower than threshold and there are outliers, there is a missed alarm; the probability of making this type of error is indicated by  and the probability of not committing this type of error is defined as the power of the test [16].An example with Gaussian distribution is shown in Figure 1.

Global Test and Observation Subset
with  weighting matrix,  number of measurements, and  number of states.
It is assumed that the decision variable  follows a central chi-square distribution with ( − ) degrees of freedom [13,16]; this is based on the assumption that the observation errors follow a standard normal distribution and on the relationship between the normal and chi-square distributions [5,18].The threshold is defined by where  is the false alarm probability and X 2 1−,(−) is the axis value corresponding to a false alarm probability (1 − ) of a chi-square distribution with ( − ) degrees of freedom.
The hypothesis testing in the global test is In case of event  0 the measurements are considered consistent; in case of   an inconsistency is indicated by the test and a outlier among the measurements is assumed.Subset testing is a RAIM technique for the detection and the exclusion of fault measurements and is based uniquely on global test [13,14].If a measurement set is declared inconsistent by GT, all the possible combinations of measurements are checked (up to ( + 1) measures), to find a subset from which the supposed outliers are excluded.Only the subset that passes the GT and is declared consistent is used to compute the navigation solution; if more subsets pass the GT, the set with the minimum statistic variable and the largest number of measurements is chosen.A complete scheme of the algorithm implemented is shown in Figure 2.

RANSAC
The algorithm developed and investigated in this work is based on the basic idea of the RANSAC algorithm, early used for graphics and image processing.It is an iterative method for the estimation of mathematical model parameters starting from a set of input data that contains a large percentage of outliers.It is a nondeterministic algorithm; it produces an accurate result only with a given probability that increases with the increase of the iterations [9].RANSAC generates candidate solutions using a minimum number of observations (input data) needed to estimate the model parameters.In fact, while traditional methods use as much data as possible in order to obtain a solution and only later proceed to remove outliers that would significantly affect the solution, RANSAC uses the smallest possible set of data to determine the model and proceeds to enlarge this set with data points that are consistent with the estimated model.In a two-dimensional example of the problem, two distinct points are enough to draw a line passing through them.
The algorithm computes the solution by considering all possible subsets formed by two sample points, and it measures the consistence of the remaining sample points, classifying as outliers those that are located at a distance higher than a preselected threshold and inlier those that fall in the above threshold; the number of inlier defines the consensus number of the considered subset; in Figure 3 a generic iteration of the algorithm is displayed.
The subset with the highest consensus is considered the best and the samples that do not fall within the threshold are classified as outliers (Figure 4) and are excluded from the calculation of the final solution [10,19].3.1.RANSAC Application to GNSS.RANSAC approach can be adopted in satellite navigation and a minimum of four satellites is necessary to estimate the receiver position and clock offset, so subsets with four pseudoranges (defined quartets) should be used.
The RANSAC algorithm can be considered a RAIM-FDE (fault detection and exclusion) method, so a redundancy of at least two observations is necessary to identify a single outlier.For an overall FDE procedure, after estimating the residuals, the global test can be performed to find out the solution consistency.If some inconsistency is detected, an additional test can be performed to exclude erroneous observations.For detecting a failure, there must be at least one redundant measurement [7,20].
The algorithm input data are the design matrix , the measurements , and their uncertainties, which are used to form the weighting matrix .

H z W
Subset creation H sub (j) z sub (j) W sub (j) Cond(H sub (j))

Subset selection
Sorting subset for conditioning H out (q), z out (q), W out (q) H sub (q), z sub (q), W sub (q) The first step of the algorithm is the "subset selection and sorting" (detailed in Figure 5), which selects of the useful subsets; that is, only subsets having excellent satellite geometry are kept, because they would provide accurate solutions in case of no outliers.
The number of possible subsets is given by the number of simple combinations of  elements in  places, where  is the number of satellites in view and  is the number of satellites in a subset, which is set to 4: In order to evaluate the subsets, the algorithm uses the singular value decomposition on the geometry matrix of each subset  sub () to compute the conditioning number.The conditioning number is a measure of stability or sensitivity of a matrix to numerical operations, given by the ratio between the first ( 1 ) and the last (  ) singular value [21]: In the subset selection and sorting block all subsets are sorted in increasing order of conditioning number, and only the ones with a conditioning number smaller than a certain threshold are considered.The outputs of the block are the selected satellite quartets, which define the subset measurements, design and weight matrix ( sub ,  sub ,  sub ), and consequently the satellites outside the subsets, indicated with the subscript "out" in Figure 5.
An alternative method for subset selection is to use the GDOP parameter.In [22] the relationship between GDOP and the conditioning number of the matrix (  ) is demonstrated; starting from that and considering the four measurements case it can be demonstrated that Cond(  sub  sub ) = [Cond( sub )] 2 and so the following relationship is valid: From ( 9) the close link between GDOP and Cond( sub ) is clear, whose behaviour for all the quartets at a specific epoch is shown in Figure 6.A similar trend of them confirms that the two selection methods are equivalent (the thresholds must be suitably proportionated) and this is corroborated by empirical tests described in [23].
After subset selection and sorting, the position estimates ( xsub ), for all selected subsets, are computed with a weighted least squares (WLS) solution: where Starting from the subset with the best conditioning number, the algorithm performs the "range comparison, " which compares pseudorange measurements out of the subset with pseudoranges calculated using the state estimated with the measures of the subset.
In this way it is possible to calculate the residuals of pseudorange outside the subset and the relative variance.Residuals are now defined as with  out measured pseudoranges outside the subset and  sub predicted pseudoranges calculated using the state xsub ; that is, Expanding  sub around the a priori state, where  0 is the pseudorange calculated with the a priori state and ℎ is the row vector of the geometry matrix corresponding to the concerned satellite. out and  sub errors are uncorrelated, so the standard deviation of the residual is given by the square root of the sum of their variances: where since  0 is deterministic.The variance of the term ℎ Δ sub is where  Δ = (  sub  sub  sub ) −1 is the covariance matrix of Δ sub .Substituting ( 16) into ( 14) the expression of the residual standard deviation becomes where  2  out = 1/sin 2 (el) with el is satellite elevation.RANSAC compares residuals with a threshold chosen as a multiple of the standard deviation   , but it has been shown that, by using a threshold related to false alarm probability, the results are more accurate [23].
Residuals (11) are compared with the threshold equal to an abscissa value corresponding to a (1 − ) probability of the standard normal distribution, where  is the false alarm probability.Using this comparison, the count of inlier (consensus number) can be determined for each subset: if the residuals are higher than the threshold, the corresponding measurements are called outliers; otherwise they are inliers.The algorithm can be stopped if a subset indicating all measurements as inliers is found.
The RANSAC algorithm applied to GNSS (detailed in Figure 7) iterates through all acceptable subsets, according to the geometric selection, identifying those with the highest consensus, which are used to detect outliers.If subsets provide inconsistent satellite outlier information, the algorithm classifies the solution as unreliable because it is not possible to identify uniquely the outliers; otherwise the state is estimated excluding the outliers.
In addition an updated version of the RANSAC algorithm, called P-RANSAC (PANG-RANSAC), is proposed;

Subset selection
and sorting P-RANSAC performs a final range comparison using the estimate obtained by considering all the satellites in view except the outliers ( XRANSAC ) and assuming that such estimate is more accurate than the one from subsets with the highest consensus.The outliers that will be identified from this last comparison will be excluded from the final solution (Figure 8).This approach allows identification of as many outliers as the number of satellites in view minus four for the estimation.

Test and Results
The abilities of RANSAC in GNSS context are tested adopting it for the analysis of a static data set.Measurements are collected by the Novatel single frequency receiver FlexPak-G2 connected to a GPS Trimble Microcentered L1/L2 antenna located on the roof of University of Naples "Parthenope, " an urban canyon scenario (Figure 9).
The data are processed using the two versions of the algorithm (RANSAC and P-RANSAC) and the classical RAIM technique observation subset testing algorithm as a comparison.
The measurement session has been collected in December 2013 for 4 hours with a one second data rate (the mission planning has been performed with the software developed by Parthenope Navigation Group [24]).Figure 10 shows the number of available satellites during the whole observation period that varies from 4 to 10 with an average of about 7 satellites for epoch.
Figure 11 shows the comparison, in terms of horizontal and vertical errors, between GPS positioning performed with (i) no RAIM technique (red dots), (ii) observation subset testing (green dots), (iii) RANSAC method (black dots), (iv) P-RANSAC algorithm (blue dots).
For all the considered RAIM techniques, the error decreases with respect to "no RAIM" case, characterized by mean horizontal and vertical absolute errors amounting, respectively, to 28.35 m and 53.36 m and by horizontal and vertical RMS errors, respectively, of 38.93 m and 74.11 m.
The mean horizontal and vertical absolute errors obtained with the observation subset testing are, respectively, 18.27 m     The errors of the considered configurations are summarized in Table 1, as figures of merit RMS and mean absolute errors are used.The solution availability, defined as the time percentage with at least 4 visible satellites, is 100% and indeed the minimum number of visible satellites is 4 (Figure 10).

GNSS station
The results listed above are for all available epochs.Hence considering all the epochs when it is possible to obtain a GPS solution, the RANSAC techniques do not show improvements with respect to the classical RAIM technique of observation subset testing, while a large error decreasing is evident with respect to no RAIM case.
The reliable availability, defined as the percentage of epochs marked as reliable by the RAIM technique, is about 88% for the observation subset testing, about 75% for RANSAC, and about 70% for P-RANSAC.An efficient way to highlight the performance of a RAIM technique is to compare its errors with the no RAIM case only for reliable epochs.
Considering only the epochs when observation subset testing is reliable, no RAIM positioning has mean horizontal and vertical absolute errors (Figure 12), respectively, equal to 28.32 m and 52.44 m, with horizontal RMS of 38.37 m and vertical RMS of 71.93 m.After the application of the algorithm the mean horizontal absolute error is 17.94 m and the mean vertical absolute error is 41.85 m, with an improvement of 36.67% and 20.20%, respectively; the horizontal RMS is 34.54 m and the vertical RMS is 64.67 m, with an improvement of 9.97% and 10.08%.The results obtained using observation subset testing at reliable epochs are summarized in Table 2.
Figure 13 shows the errors in 74.83% of the epochs when RANSAC testing is deemed reliable.In this case no RAIM horizontal and vertical mean absolute errors are 26.85 m and 44.73 m, with horizontal RMS of 37.55 m and vertical RMS of 65.50 m.After the application of the algorithm the mean horizontal absolute error is 16.59 m and the mean vertical absolute error is 31.84m, with an improvement of 38.22% and 28.82%, respectively; the horizontal RMS is 27.53 m and the vertical RMS is 55.08 m, with improvements of 26.70% and 15.91%.
The results obtained using RANSAC are summarized in Table 3.
Considering only the epochs when P-RANSAC is reliable, no RAIM positioning has mean horizontal and vertical absolute errors (Figure 14), respectively, equal to 26.01 m and 52.44 m with horizontal RMS equal to 37.09 m and vertical RMS equal to 61.76 m.
The P-RANSAC is characterized by a mean horizontal absolute error of 15.26 m, with an improvement of 41.32%; while the mean vertical absolute error is 28.57m, with an improvement of 30.38%.The horizontal RMS is 25.86 m and the vertical RMS is 51.61 m, with improvement of 30.28% for the horizontal and 16.43% for the vertical one.
The results obtained using P-RANSAC are summarized in Table 4.
A final comparison was made considering only the epochs reliable for P-RANSAC and RANSAC (Table 5); it could be noted that the P-RANSAC produces a slight improvement compared with RANSAC on the vertical mean absolute error and the vertical RMS error.
Test results show that the observation subset testing algorithm has a higher percentage of reliable availability, while RANSAC and P-RANSAC provide larger improvements in RMS and mean errors at reliable epochs.

Figure 3 :
Figure 3: Generic iteration of the RANSAC algorithm.

Figure 7 :
Figure 7: Data flow diagram for the RANSAC algorithm applied to GNSS.

Figure 8 :
Figure 8: Data flow diagram for the P-RANSAC algorithm.

Figure 10 :
Figure 10: Number of available satellites.

Figure 14 :
Figure 14: Horizontal and vertical errors in P-RANSAC at reliable epochs.
Test.In GNSS context, reliability testing using overdetermined set of GNSS measurements is known as

Table 1 :
Positioning errors: comparison of positioning without RAIM and with RANSAC, P-RANSAC, and observation subset testing.

Table 2 :
Positioning errors in observation subset testing at reliable epochs: comparison of positioning without RAIM and with observation subset testing.

Table 3 :
Positioning errors in RANSAC at reliable epochs: comparison of positioning without RAIM and with RANSAC.
Classical RAIM algorithms do not work properly in case of simultaneous multiple outliers; RANSAC technique, mainly Figure 12: Horizontal and vertical errors in observation subset testing at reliable epochs.Figure 13: Horizontal and vertical errors in RANSAC at reliable epochs.