RAIM Algorithm Based on Fuzzy Clustering Analysis

: With the development of various navigation systems (such as GLONASS, Galileo, BDS), there is a sharp increase in the number of visible satellites. Accordingly, the probability of multiply gross measurements will increase. However, the conventional RAIM methods are difficult to meet the demands of the navigation system. In order to solve the problem of checking and identify multiple gross errors of receiver autonomous integrity monitoring (RAIM), this paper designed full matrix of single point positioning by QR decomposition, and proposed a new RAIM algorithm based on fuzzy clustering analysis with fuzzy c-means (FCM). And on the condition of single or two gross errors, the performance of hard or fuzzy clustering analysis were compared. As the results of the experiments, the fuzzy clustering method based on FCM principle could detect multiple gross error effectively, also achieved the quality control of single point positioning and ensured better reliability results.


Introduction
Surveying and navigation industries have been revolutionized over the past three decades by the global navigation satellite system (GNSS).The integrity of GNSS is a major limitation for many existing and potential applications.GNSS integrity refers to the ability of the system to alert users when the navigation system fails or the positioning cannot be used for navigation and positioning [Bei (2010)].As a measure of the user's availability of information provided by the system and an important parameter, receiver autonomous integrity monitoring (RAIM) refers to monitoring the completeness of user positioning results based on redundant observations from the user receiver.RAIM is a key part in the integrity monitoring system and the last link to ensure the security of user positioning [Parkinson, Spilker, Axelrad et al. (1996)].The RAIM algorithms have always become research focuses in the GNSS field.RAIM is the ability to detect and identify the failures in GNSS by using measurements from receiver which needs more than 4 visible satellites to detect failures and more than 5 to identify.The current RAIM algorithms, mainly including the parity vector method [Wang, Zhang, Xu et al. (2016); Li and Li (2012)], the least squares residual method [Li, Zhu, Yang et al. (2016)], and the approximate radial error protection method [Hunzinger, Morgren, Studenny et al. (1997)], use the residual comparison to perform fault detection, which has a better recognition effect for a single gross error, but has a poor effect under multiple gross errors.The overall least squares method [Juang (2000); Jeon and Lachapelle (2005); Yang, Liu and Zhang (2009)] can perform fault detection and fault identification, but because it takes into account the correspondence between the smallest singular value mutation and the satellite fault, the algorithm is complex, the calculation load is heavy, and the timeliness is not satisfied; In addition, the maximum de-separation method [Nowak (2015); Joerger, Chan and Pervan (2014)], the weighted RAIM method [Yu (2008)], the Bayesian method [Zhang and Gui (2015)] and the Kalman filter algorithm [Song, Hou and Xue (2017)] have not solved the fault identification problem well.With the development of various navigation systems (such as GLONASS, Galileo, BDS), there is a sharp increase in the number of visible satellites.Accordingly, the probability of multiply gross measurements will increase.However, the conventional RAIM methods are difficult to meet the demands of the navigation system.In order to solve this problem, this paper proposes a new RAIM algorithm based on fuzzy clustering analysis, which can effectively solve the problem of detection and recognition of multiple gross errors.

Principle of fuzzy clustering analysis
Fuzzy clustering analysis is a mathematical method that uses fuzzy mathematics to describe and classify things according to certain requirements.Fuzzy clustering analysis generally refers to constructing a fuzzy matrix according to the attributes of the concerned object itself.The clustering relationship is determined according to a certain degree of membership, that is, fuzzy mathematics is used to quantitatively determine the fuzzy relationship between samples to objectively and accurately cluster.There are many clustering methods, such as based on similarity relations and fuzzy relations, transitive closures based on fuzzy equivalence relations, maximum support trees based on fuzzy graph theory, and methods based on convex decomposition, dynamic programming and difficult identification of data.But the most widely used in practice is the fuzzy clustering method based on objective function.This paper selects the most complete and widely used fuzzy c-means (FCM) based on the objective function-based clustering algorithm.A given data set  = {  ,   , ⋯ ,   } is a set of finite set of observation samples for n modes in the pattern space,   = { 1 ,  2 , ⋯ ,   } is the eigenvector of the observed sample   , corresponding to a point of the feature space.  is the assignment on the j-th dimension of the feature vector   .For a given sample , if it is divided into class c, then corresponding to  class centers.Each sample belongs to a class  with a membership degree of   .Then define an FCM objective function and its constraints are as follows: {} (1) where ( 2) where, m is called a weighted exponent or smoothing parameter and is a membership factor;   represents the degree of distortion between the sample   in the i-th class and the i-th cluster center   , measured by the distance between the two vectors.As shown in Eq. (4).
The criterion for clustering is to take the minimum value of the objective function, that is: We can obtain Furthermore, we have It can be known from the constraint condition 2 expressed in Eq. ( 3) that As can be seen from the above, if the data set X, the clustering class number c, and the weight m are known, the best fuzzy classification matrix and cluster center can be determined from the above equation.

Definition of full design matrix
In the single-point positioning based on the least squares, the observational equation reads, where " " represents the pseudo-range residuals,  =  −  −  0 is the coefficient matrix,   = (  ,   ,   ) represents the position of satellite , X = (, , ) represents the position of user,  = (, , , ) is the user's position and time bias,  is the pseudo-range,  0 is the sum of various error including troposphere and ionosphere error, which is calculated by model, Dis  is the distance of user and the satellite ,  is the number of satellite.
Then the user location can be given by the LS estimation  = (  ) −1    (16) At the same time, we can obtain the reliability matrix R, it is expressed an equation ( 17). × =  × − (  ) −1    (17) Where  is the n-dimensional unit matrix The properties of the reliability matrix R include (1) The reliability matrix R is an idempotent matrix, it means  2 = .
(2) The reliability matrix R is not full rank matrix, its rank is  − ,  is the number of satellite and  is necessary observation number, in here  = 4. Suppose there is a linear transformation, it is expressed as equation ( 18) Then, we can obtain the definition of QR parity check vector ,  =  (19) The properties of the QR parity check vector  are as follows (21) QR parity check vector conversion matrix  is a special transformation that transforms ndimensional observation space into  − 4 dimensional parity space. has the following special properties: (1) Each row of  is orthogonal to the columns of ; (2) The rows of  are orthogonal to each other; (3) The rows of  are normalized, and the size of each row is unity; In the QR parity method, it is proved that:   =   (22) Eq. ( 19) is defined by the QR parity check vector, and  is replaced by its equivalent  − .Since the orthogonal property = 0, and we have: (23) Where:  is the QR parity detection vector;  is the QR parity detection generation matrix;  is the negative residual.
The matrix expansion can be obtained from Eq. ( 23): where:  =  − 4 ；  is the number of satellites;   ( = 1,2, ⋯ , ) is the negative residual of observation , which is a numerical variable.
Let   = [ 1  2 ⋯   ]  , ( = 1,2, ⋯ , ),Then there are: Where   is the columns  of T determined by the geometric matrix of the satellite position,   is determined by the functional characteristics of the observation, so     is determined by the observation error and the satellite geometry matrix.When there is a gross error in a certain measurement, it will be expressed that the ‖     ‖ value of the observation is larger, that is, the modulus of the vector     is larger; and it has an advantage in the left half of the formula (25) medium, that is, the share is relatively large.Therefore, the formula (25) the right part of the middle part is mainly affected by the gross error   , so the QR parity check vector  has a relatively strong correlation with the influence vector     of the error observation.By converting the formula (25) into a matrix form, you can get: That is, the left part and the right part in the formula (26) are combined, and this formula is called a full design matrix.

Calculation of full design matrix
The full design matrix is calculated by coefficient matrix  ×4 .Firstly, we take QR decomposition for matrix  ×4 .
The QR decomposition (also called the QR factorization) of a matrix is a decomposition of the matrix into an orthogonal matrix and a triangular matrix.A QR decomposition of a real square matrix B is a decomposition of B as B = QS, where Q is an orthogonal matrix and S is an upper triangular matrix.If A is nonsingular, then this factorization is unique.It means that  T  = ,  T =  −1 (28) The upper triangular matrix can be express as  = (     ) ,   is 4×4 an upper triangular matrix,   is a ( − 4) × 4 zero matrix.
Similarly, we can take the transpose of orthogonal matrix Q as Then, for the observational equation  =  − , we can know  =  −  (29) Eq. ( 29) are multiplied by the transpose of orthogonal matrix Q on both sides.

Single-point positioning RAIM algorithm based on FCM
The full design matrix in Section 3 of this paper is a sample of fuzzy clustering.Each column of the full design matrix represents a satellite.The specific clustering process is as follows: (1) Calculate the relative distance matrix D of the full design matrix.
(2) The number of clustering categories is determined.This paper determines three categories, which are health observations, suspected outliers and outliers.The maximum, minimum and intermediate values are selected as cluster centers.
(3) Calculating the membership function

Data and experimental scheme
Method availability analysis uses two options: (1) Introducing a single gross error (introducing a 4 m magnitude gross error on a single value of negative residual ), performing gross error detection and identification, and comparing it with hard cluster analysis.
(2) Introducing two gross errors (introducing the 4 m magnitude gross error on the two values of the negative residual ), performing gross error detection and identification, and comparing with the hard cluster analysis.The data is based on the data in [Bei (2010)].C001 station in the continuous operating reference stations (CORS) network in Hebei Province.The data time is UTC 0:00:00-24:00:00 on August 1, 2017.The data sampling rate is 30 s.

Introducing a single gross error
This study selects an observation epoch of the C001 station.According to the single-point positioning model, there are 4 unknowns, including the coordinates XYZ of the position to be fixed and the receiver clock error .The basic observation equation is  × 4, then QR parity check method produces matrix  is ( − 4) × 4. In this example, the number of satellites is  = 9.This example starts with the matrix  and matrix  obtained after QR decomposition.

Using fuzzy class analysis
According to the full design matrix, the Mahala nobis distance calculation method is used to calculate the correlation distance matrix, and three initial cluster centers are set.
According to the distance as the initial membership coefficient, and then iterative operation, and finally all the data into three categories, the clustering results shown in Fig. 2. It can be seen from Fig. 1 and Fig. 2 that the hard cluster analysis method and the fuzzy clustering analysis method can better realize the gross error recognition under the condition of single gross error.

Introducing two gross errors
This study selects the same observation epoch from the introduction of a single gross error.
According to the single-point positioning model, there are 4 unknowns, including the coordinates XYZ of the position to be fixed and the receiver clock error .The basic observation equation is  × 4, then QR parity check method produces matrix is ( − 4) × 4. In this example, the number of satellites is ( = 9.As can be seen from Fig. 3, class 10 and class 7 are finally synthesized into one class, which is classified as a gross error class; Other classes fall into one category, which is a random error class.Obviously, the largest gross error that existed was first separated, but the gross error class 4 was not identified.

Using fuzzy class analysis
According to the full design matrix, the Mahala nobis distance calculation method is used to calculate the correlation distance matrix, and three initial cluster centers are set.
According to the distance as the initial membership coefficient, and then iterative operation, and finally all the data into three categories, the clustering results shown in Fig. 4.Where class 10 is a known gross error class, so the second class is a gross error class.As can be seen from Fig. 4, the first class has only one single sample, which is the isolated data, which can be judged as gross error data, which is classified as gross error class; the remaining the third class is classified as health class.It can be seen from Fig. 3 and Fig. 4 that the fuzzy clustering analysis method effectively realizes the gross error recognition under the condition of two gross errors, but the hard cluster analysis method recognizes at one time.

Citations
With the development of various navigation systems (such as GLONASS, Galileo, BDS), there is a sharp increase in the number of visible satellites.Accordingly, the probability of multiply gross measurements will increase.However, the conventional RAIM methods are difficult to meet the demands of the navigation system.Aiming at the identification problem of multiple gross errors in GNSS RAIM, this paper introduces the fuzzy clustering analysis method of FCM, and then the full design matrix of single point positioning constructed by QR parity check method is taken as the initial sample.and studies the RAIM method based on fuzzy clustering analysis method.Combined with the actual observation data, it is compared with the traditional cluster analysis method.It can be seen from the results that the method can effectively realize the identification of multiple gross errors, and has certain application value for gross error recognition in practical engineering.
If ∆ is less than the threshold, stop the calculation, otherwise repeat Step 3 to Step 5.

Figure 1 :
Figure 1: Cluster graph of one single gross error with hard cluster analysis methods As can be seen from Fig. 1, the class 10 and class 4 are finally synthesized into one class, because class 10 is a gross error class, it is classified as a gross error class; Other classes fall into one category, which is a random error class.Obviously, the gross error is separated.

Figure 2 :
Figure 2: Membership map of one single gross error with fuzzy cluster As can be seen from Fig. 2, all classes are finally divided into three categories: the first class contains class 1, class 2, and class 9; the second class contains class 10 and class 4; and the third class contains class 3, class 5, class 6 and class 7.Where class 10 is a known gross error class, so the second class is a gross error class; There are large correlations between multiple subclasses (class 5, class 6, class 7, class 9) in the first class and the third class, so they are grouped into one class called health class.It can be seen from Fig.1and Fig.2that the hard cluster analysis method and the fuzzy clustering analysis method can better realize the gross error recognition under the condition of single gross error.

Figure 4 :
Figure 4: Membership Map of Two Gross Errors with Fuzzy Cluster As can be seen from Fig. 4, all classes are finally divided into three categories: the first class contains class 4; the second class contains class 10 and class 7; and the third class contains class 1, class 2, class 3, class 5, class 6, class 7 and class 9.Where class 10 is a known gross error class, so the second class is a gross error class.As can be seen from Fig.4, the first class has only one single sample, which is the isolated data, which can be judged as gross error data, which is classified as gross error class; the remaining the third class is classified as health class.It can be seen from Fig.3and Fig.4that the fuzzy clustering analysis method effectively realizes the gross error recognition under the condition of two gross errors, but the hard cluster analysis method recognizes at one time.