# A Method for Detecting Incipient Faults in Satellites Based on Dynamic Linear Discriminant Analysis

Authors: Ge Zhang; Qiong Yang; Guotong Li; Jiaxing Leng
Journal: Computational Intelligence and Neuroscience
 (2021)

---

## Abstract

Timely detection and treatment of possible incipient faults in satellites will effectively reduce the damage and harm they could cause. Although much work has been done concerning fault detection problems, the related questions about satellite incipient faults are little addressed. In this paper, a new satellite incipient fault detection method was proposed by combining the ideas of deviation in unsupervised fault detection methods and classification in supervised fault detection methods. First, the proposed method uses dynamic linear discriminant analysis (LDA) to find an optimal projection vector that separates the in-orbit data from the normal historical data as much as possible. Second, under the assumption that the parameters obey a multidimensional Gaussian distribution, it applies the normal historical data and the optimal projection vector to build a normal model. Finally, it employs the noncentralF-distribution to test whether a fault has occurred. The proposed method was validated using a numerical simulation case and a real satellite fault case. The results show that the method proposed in this paper is more effective at detecting incipient faults than traditional methods.


---

## Body

## 1. Introduction

With the reduction in the costs of launching rockets and manufacturing satellites, the number of satellites operating in orbit increases annually, bringing large economic benefits to society [1–3]. However, due to the harsh operating environment of satellites and human error, key modules or components of satellites in orbit may have abnormalities or experience failures [4]. If incipient faults can be detected and dealt with promptly in their early stages, the damage and harm they cause will be effectively reduced [5]. Therefore, the detection of incipient faults in satellites is receiving an increasing amount of attention because it is one of the key technologies that ensures the normal operation of satellites [6, 7].The current common method used to detect faults in satellites is to compare telemetry parameters with preset thresholds directly [8, 9]. This fault detection method is suitable for detecting abrupt and large faults. However, it may be less effective at detecting incipient faults because the telemetry parameters with an incipient fault may not change significantly from their normal condition [10]. If the fault detection threshold was set too low, the fault detection method would be sensitive to noise and cause frequent false alarms; whereas if the threshold was set too high, some early symptoms of the fault might be missed. In addition, as the production batches, processes, and operating environments of different satellites are not identical, different fault detection thresholds may need to be determined for different satellites, and it is inefficient to manually set the appropriate threshold for each telemetry parameter.Model-based satellite fault detection methods are more intelligent than threshold comparison methods and often combine fault detection, isolation, and recovery functions [11–13]. However, with the rapid development of science and technology, a variety of new technologies, materials, and highly integrated devices are being used in satellites. The complex coupling relationships between the various components of a satellite and the lack of familiarity of various faults can make it difficult to build accurate and comprehensive fault detection models, thus limiting the application of model-based satellite fault detection methods.In recent years, data-driven fault detection methods have become a popular research topic due to the advantages of low expert involvement, high modeling efficiency, and high scalability [14–16]. At present, data-driven fault detection methods are mainly divided into two categories: unsupervised fault detection methods and supervised fault detection methods. The core idea of unsupervised fault detection methods is deviation. These methods use the normal historical data to automatically build a model that characterizes the normal condition of the satellite. It assumes that a fault has occurred when the actual in-orbit data deviates significantly from the model characterizing the normal data. Since the ground test data and the in-orbit data of satellites contain mostly fault-free data, fault detection methods based on unsupervised learning have been widely researched and applied. Representative unsupervised fault detection methods are one-class support vector machine (OCSVM) [17], inductive monitoring system (IMS) [18], principal component analysis (PCA) [19], Gaussian process regression (GPR) [20], long short-term memory (LSTM) [21], and so on. Although these methods use different principles to build normal models, they all have one thing in common—all normal models used to detect faults are obtained by learning from the normal historical data. Once the learning process is complete, each method will use a fixed and invariable model to detect faults, regardless of the variation of the actual in-orbit data, with no optimization or adjustment for the actual faults that may occur.The core idea of supervised fault detection methods is classification. These methods learn and build a classifier from the normal historical data and various real or simulated fault data. If the in-orbit data were classified as a normal class by the classifier, the in-orbit data would be free of faults. Conversely, if the in-orbit data were classified as a fault class by the classifier, the in-orbit data would be deemed to be faulty in some way. Representative supervised fault detection methods are linear discriminant analysis (LDA) [22], support vector machine (SVM) [23], neural networks [24], random forest [25], and so on. However, due to the high reliability of satellites, most of the samples collected by satellite operation and maintenance systems are normal, and fault samples are exceedingly rare. In addition, the classification models built using the fault samples from different satellites may not be generalized, thus hindering the application of supervised fault detection methods in the satellite domain.Based on the existing research, this paper proposes a new satellite incipient fault detection method that combines the ideas of deviation in unsupervised fault detection methods and classification in supervised fault detection methods. The main contributions of our work are summarized as follows:(1)
This paper first uses the idea of classification to find an optimal projection vector separating the in-orbit data from the normal historical data. Specifically, this paper considers the fault detection problem as a binary classification problem and uses LDA to find the optimal projection vector where the in-orbit telemetry data can be distinguished from the normal historical data to the greatest extent.(2)
This paper then uses the idea of deviation to test whether a fault has occurred in the in-orbit data. Specifically, a normal model is built using the normal historical data and the optimal projection vector, and the fault is determined by testing whether the deviation of the in-orbit data from the normal model exceeds the threshold.This paper is organized as follows: A brief introduction about LDA is given in Section2. The fault detection method based on dynamic LDA is presented in detail in Section 3. Then, the proposed method is illustrated and analysed using a numerical simulation case and a real satellite fault case in Section 4. Finally, conclusions are given in Section 5.


## 2. Linear Discriminant Analysis

Linear discriminant analysis, also known as Fisher discriminant analysis [26], is a supervised dimensionality reduction and classification method which is widely used in the field of pattern recognition and machine learning [27–29]. Taking the binary classification as an example, given a data set D=xi,zii=1n, where xi∈Rm is a column vector of multidimensional telemetry parameters, zi∈R is the corresponding class label, m is the number of variables need be monitored, and n is the is the number of samples. There are only two values of zi, zi∈0,1. Let nj∈R, Xj∈Rnj×m, μj∈Rm, and Σj∈Rm×m, respectively, represent the number of samples, the set of samples, the mean vector, and the covariance matrix of the class j, j∈0,1.We assume that the projection vector isw∈Rm. For each sample xi, the projection of xi onto the vector w is wTxi. Moreover, the projections of μ0 and μ1 onto the vector w are wTμ0 and wTμ1, respectively. The scatter of each class after projection onto the vector w is Sj2, as shown in(1)Sj2=∑x∈XjwTx−wTμj2,j∈0,1.We expect that the samples of the same class are clustered together as much as possible after projection onto the vectorw, while the samples of different classes to be more dispersed [30]. Thus, we can construct the objective function of LDA Jw, as shown in(2)Jw=wTμ0−wTμ122S12+S22=wTSbwwTSww.In equation (2), Sb=μ0−μ1μ0−μ1T and Sw=Σ0+Σ1. The objective of LDA is to find an optimal projection vector w that maximizes Jw. Let wTSbw=1, the problem of finding the optimal projection vector w can be transformed into an optimization problem, as shown in(3)maxwTSbw,s.t.wTSww=1.The optimization problem in equation (3) can be solved by Lagrange multiplier method and then we obtain(4)Sw−1Sbw=λw.From equation (4) and the relationship between eigenvalues and eigenvectors [30], we can know that the projection vector w is an eigenvector of the matrix Sw−1Sb. Furthermore, the optimal projection vector w is the eigenvector corresponding to the largest eigenvalue of the matrix Sw−1Sb.


## 3. Incipient Fault Detection Method Based on Dynamic LDA

### 3.1. Dynamic LDA

The training data of traditional LDA contain both normal (class 0) and fault (class 1) samples. However, in the field of satellite fault detection, majority of samples available for training are normal samples. Therefore, this paper proposes a new method that treats the normal historical samples as normal (class 0) samples and treats the in-orbit samples which need to be tested as fault (class 1) samples. The traditional use of LDA and the new use of LDA in this paper are shown in Figures1(a) and 1(b), respectively.Figure 1
Comparison of the uses of LDA: (a) traditional use of LDA and (b) the use of proposed LDA in this paper.
(a)(b)This article intends to use sliding windows and hypothesis testing methods to test whether a fault has occurred in the in-orbit data. The general idea of fault detection is as follows:(1)
Sliding windows with the length ofn1 are used to extract the in-orbit data in real time. Let the in-orbit data in the kth sliding window be Xk∈Rn1×m. We assume that a fault has occurred in Xk, and Xk belongs to a different class from the normal historical data X0∈Rn0×m.(2)
LDA is used to find an optimal projection vectorwk∈R that separates the normal historical data X0 from the in-orbit fault data Xk as much as possible.(3)
A normal model is built using the normal historical dataX0 and the optimal projection vector wk.(4)
Whether the in-orbit dataXk deviates significantly from the normal model is tested. If there was a significant deviation, then the original hypothesis that Xk and X0 belong to different classes is valid, and a fault has occurred in Xk. If there was no significant deviation, then the original hypothesis is not valid, and there is no fault in Xk.As can be seen earlier, the traditional use of LDA is static. The optimal projection vector will be fixed once the training data are determined. The new use of LDA in this paper is dynamic. For each sliding window of the in-orbit dataXk, an optimal projection vector wk is obtained using dynamic LDA. As the in-orbit data Xk may vary from different windows, the optimal projection vector wk may not be the same for each LDA process. Due to the use of dynamic LDA, the optimal projection vectors can adjust the in-orbit data in real time, making the proposed method more adaptable to potential faults.


### 3.2. Construction of the Normal Model

After the optimal projection vectorwk is obtained, we need to verify whether there is a significant deviation between Xk and X0. However, how large of the deviation is the significant deviation? Therefore, we need to determine the normal fluctuation range of deviation between Xk and X0 when the in-orbit data Xk is normal, and then use the normal fluctuation range to build a normal model. A fault is considered to have occurred when the deviation is outside the acceptable range.In this paper, the objective function of LDAJw is used as the measure of deviation. We assume that the normal historical data X0∈Rn0×m and the in-orbit data Xk∈Rn1×m obey two m-dimensional joint Gaussian distributions X0∼ℕμ0,Σ0 and Xk∼ℕμk,Σk, respectively. The projections of X0 and Xk onto the vector wk are f∈Rn0 and g∈Rn1, respectively. Based on the property of the m-dimensional joint Gaussian distribution [31], it is clear that f and g obey one-dimensional Gaussian distributions f∼ℕwkTμ0,wkTΣ0wk and g∼ℕwkTμk,wkTΣkwk, respectively. The relationship of Jwk, f, and g is shown in(5)Jwk=wkTμ0−wkTμk22wkTΣ0+Σkwk.SinceX0 and wk have been obtained after using LDA, it can be considered that the mean vector μ0, the covariance matrix Σ0, and the optimal projection vector wk in equation (5) are known and fixed, while the mean vector μk and covariance matrix Σk associated with Xk are unknown and variable. As μ0, Σ0, and wk are all known, we can assume that wkTμ0=c1 and wkTΣ0wk=c2, where c1 and c2 are two constants. Then, equation (5) can be reduced to(6)Jwk=G1wkG2wk=wkTμk−c122c2+wkTΣkwk.For the purpose of obtaining the normal fluctuation range ofJwk, we assume that Xk and X0 belong to the same class and Xk is obtained by sampling the joint Gaussian distribution which X0 obeys. Since f and g obey one-dimensional Gaussian distributions and are the projections of Xk and X0 onto the vector wk, respectively, we can consider that g is obtained by sampling the one-dimensional Gaussian distribution which f obeys. Based on the property of the one-dimensional Gaussian distribution [32, 33], the sample mean value wkTμk of g obeys a one-dimensional Gaussian distribution, as shown in equation (7). n1−1wkTΣkwk/wkTΣ0wk obeys the chi-square distribution with degrees of freedom of n1−1 [32, 33], as shown in the following equations:(7)wkTμk∼ℕwkTμ0,wkTΣ0wkn1,(8)n1−1wkTΣkwkwkTΣ0wk∼χ2n1−1.SincewkTμk obeys a one-dimensional Gaussian distribution and c1 is a constant, wkTμk−c1 also obeys a one-dimensional normal distribution, as shown in(9)wkTμk−c1∼ℕwkTμ0−c1,wkTΣ0wkn1.AswkTμ0=c1 and wkTΣ0wk=c2, we can obtain(10)wkTμk−c1∼ℕ0,c2n1.After normalizingwkTμk−c1, we can obtain(11)n1c2wkTμk−c1∼ℕ0,1.Furthermore, we can get equation (12) from the relationship between the standard normal distribution and the chi-square distribution:(12)n1c2wkTμk−c122∼χ21.Thus, the numerator ofJwk satisfies(13)n1c2G1wk∼χ21.UsingwkTΣ0wk=c2 to simplify equation (8), we can get(14)n1−1wkTΣkwkc2∼χ2n1−1.Therefore, the denominator ofJwk satisfies(15)n1−1c2G2wk−c2∼χ2n1−1.In summary, the numerator ofJwk multiplied by a constant n1/c2 obeys a chi-square distribution with a 1 degree of freedom. The denominator of Jwk minus a constant c2 and then multiplied by a constant n1−1/c2 obeys a chi-square distribution with n1−1 degrees of freedom. Therefore, the denominator of Jwk obeys a noncentral chi-square distribution. In addition, G1wk and G2wk are independent of each other. The relationship between the chi-square distribution and the F-distribution and equations (13), (15) show that 1/n1Jwk obeys a noncentral F-distribution with degrees of freedom of n1−1 and 1 and a noncentral parameter c2, as shown in(16)1n1Jwk=G2wkn1G1wk=n1−1/c2∗G2wk/n1−1n1/c2∗G1wk/1∼Fn1−1,1,c2.Therefore, we can use the noncentralF-distribution to test whether there is a fault in Xk [33]. Given a significance level α, the detection threshold εk∈R of 1/n1Jwk can be obtained from the noncentral F-distribution test. If the value of 1/n1Jwk was greater than or equal to εk, we consider that Xk and X0 belong to the same class, and there is no fault in Xk. If the value of 1/n1Jwk was less than εk, we consider that Xk and X0 belong to different classes and a fault has occurred in Xk. Taking the reciprocal of 1/n1Jwk, we can obtain(17)H0:Jwk≤1n1εk,fault−free,H1:Jwk>1n1εk,faulty.


### 3.3. Overall Fault Detection Process

The pseudocode for the overall fault detection method based on dynamic LDA is as follows:(1)
Each parameter of the normal historical samplesX0 is normalized by Z-score to obtain X¯0(2)
A sliding window with the length ofn1 is used to extract the in-orbit data and Xk is obtained(3)
The in-orbit dataXk is normalized by Z-score to obtain X¯k(4)
LDA is used to find the optimal projection vectorwk between X¯0 and X¯k(5)
A normal model is built usingX¯0 and the optimal projection vector wk, and the detection threshold εk is obtained with the significance level α(6)
The value of LDA objective functionJwk is calculated according to equation (5)(7)
Determine whetherJwk is greater than 1/n1εk ?. If Jwk>1/n1εk was, the in-orbit data Xk is faulty; otherwise, Xk is normal. Let k=k+1, the in-orbit data Xk+1 of next sliding window will be tested from Steps 3 to 7.The computation cost of finding the optimum projection vector for each window mainly consists of matrix inversion, matrix multiplication, and solving eigenvalue problem. The time complexities of these three parts areOn3, where n is the number of monitored variables. Considering all the aforementioned computation cost parts, the computation cost of finding the optimum projection vector for each window is On3.


## 3.1. Dynamic LDA

The training data of traditional LDA contain both normal (class 0) and fault (class 1) samples. However, in the field of satellite fault detection, majority of samples available for training are normal samples. Therefore, this paper proposes a new method that treats the normal historical samples as normal (class 0) samples and treats the in-orbit samples which need to be tested as fault (class 1) samples. The traditional use of LDA and the new use of LDA in this paper are shown in Figures1(a) and 1(b), respectively.Figure 1
Comparison of the uses of LDA: (a) traditional use of LDA and (b) the use of proposed LDA in this paper.
(a)(b)This article intends to use sliding windows and hypothesis testing methods to test whether a fault has occurred in the in-orbit data. The general idea of fault detection is as follows:(1)
Sliding windows with the length ofn1 are used to extract the in-orbit data in real time. Let the in-orbit data in the kth sliding window be Xk∈Rn1×m. We assume that a fault has occurred in Xk, and Xk belongs to a different class from the normal historical data X0∈Rn0×m.(2)
LDA is used to find an optimal projection vectorwk∈R that separates the normal historical data X0 from the in-orbit fault data Xk as much as possible.(3)
A normal model is built using the normal historical dataX0 and the optimal projection vector wk.(4)
Whether the in-orbit dataXk deviates significantly from the normal model is tested. If there was a significant deviation, then the original hypothesis that Xk and X0 belong to different classes is valid, and a fault has occurred in Xk. If there was no significant deviation, then the original hypothesis is not valid, and there is no fault in Xk.As can be seen earlier, the traditional use of LDA is static. The optimal projection vector will be fixed once the training data are determined. The new use of LDA in this paper is dynamic. For each sliding window of the in-orbit dataXk, an optimal projection vector wk is obtained using dynamic LDA. As the in-orbit data Xk may vary from different windows, the optimal projection vector wk may not be the same for each LDA process. Due to the use of dynamic LDA, the optimal projection vectors can adjust the in-orbit data in real time, making the proposed method more adaptable to potential faults.


## 3.2. Construction of the Normal Model

After the optimal projection vectorwk is obtained, we need to verify whether there is a significant deviation between Xk and X0. However, how large of the deviation is the significant deviation? Therefore, we need to determine the normal fluctuation range of deviation between Xk and X0 when the in-orbit data Xk is normal, and then use the normal fluctuation range to build a normal model. A fault is considered to have occurred when the deviation is outside the acceptable range.In this paper, the objective function of LDAJw is used as the measure of deviation. We assume that the normal historical data X0∈Rn0×m and the in-orbit data Xk∈Rn1×m obey two m-dimensional joint Gaussian distributions X0∼ℕμ0,Σ0 and Xk∼ℕμk,Σk, respectively. The projections of X0 and Xk onto the vector wk are f∈Rn0 and g∈Rn1, respectively. Based on the property of the m-dimensional joint Gaussian distribution [31], it is clear that f and g obey one-dimensional Gaussian distributions f∼ℕwkTμ0,wkTΣ0wk and g∼ℕwkTμk,wkTΣkwk, respectively. The relationship of Jwk, f, and g is shown in(5)Jwk=wkTμ0−wkTμk22wkTΣ0+Σkwk.SinceX0 and wk have been obtained after using LDA, it can be considered that the mean vector μ0, the covariance matrix Σ0, and the optimal projection vector wk in equation (5) are known and fixed, while the mean vector μk and covariance matrix Σk associated with Xk are unknown and variable. As μ0, Σ0, and wk are all known, we can assume that wkTμ0=c1 and wkTΣ0wk=c2, where c1 and c2 are two constants. Then, equation (5) can be reduced to(6)Jwk=G1wkG2wk=wkTμk−c122c2+wkTΣkwk.For the purpose of obtaining the normal fluctuation range ofJwk, we assume that Xk and X0 belong to the same class and Xk is obtained by sampling the joint Gaussian distribution which X0 obeys. Since f and g obey one-dimensional Gaussian distributions and are the projections of Xk and X0 onto the vector wk, respectively, we can consider that g is obtained by sampling the one-dimensional Gaussian distribution which f obeys. Based on the property of the one-dimensional Gaussian distribution [32, 33], the sample mean value wkTμk of g obeys a one-dimensional Gaussian distribution, as shown in equation (7). n1−1wkTΣkwk/wkTΣ0wk obeys the chi-square distribution with degrees of freedom of n1−1 [32, 33], as shown in the following equations:(7)wkTμk∼ℕwkTμ0,wkTΣ0wkn1,(8)n1−1wkTΣkwkwkTΣ0wk∼χ2n1−1.SincewkTμk obeys a one-dimensional Gaussian distribution and c1 is a constant, wkTμk−c1 also obeys a one-dimensional normal distribution, as shown in(9)wkTμk−c1∼ℕwkTμ0−c1,wkTΣ0wkn1.AswkTμ0=c1 and wkTΣ0wk=c2, we can obtain(10)wkTμk−c1∼ℕ0,c2n1.After normalizingwkTμk−c1, we can obtain(11)n1c2wkTμk−c1∼ℕ0,1.Furthermore, we can get equation (12) from the relationship between the standard normal distribution and the chi-square distribution:(12)n1c2wkTμk−c122∼χ21.Thus, the numerator ofJwk satisfies(13)n1c2G1wk∼χ21.UsingwkTΣ0wk=c2 to simplify equation (8), we can get(14)n1−1wkTΣkwkc2∼χ2n1−1.Therefore, the denominator ofJwk satisfies(15)n1−1c2G2wk−c2∼χ2n1−1.In summary, the numerator ofJwk multiplied by a constant n1/c2 obeys a chi-square distribution with a 1 degree of freedom. The denominator of Jwk minus a constant c2 and then multiplied by a constant n1−1/c2 obeys a chi-square distribution with n1−1 degrees of freedom. Therefore, the denominator of Jwk obeys a noncentral chi-square distribution. In addition, G1wk and G2wk are independent of each other. The relationship between the chi-square distribution and the F-distribution and equations (13), (15) show that 1/n1Jwk obeys a noncentral F-distribution with degrees of freedom of n1−1 and 1 and a noncentral parameter c2, as shown in(16)1n1Jwk=G2wkn1G1wk=n1−1/c2∗G2wk/n1−1n1/c2∗G1wk/1∼Fn1−1,1,c2.Therefore, we can use the noncentralF-distribution to test whether there is a fault in Xk [33]. Given a significance level α, the detection threshold εk∈R of 1/n1Jwk can be obtained from the noncentral F-distribution test. If the value of 1/n1Jwk was greater than or equal to εk, we consider that Xk and X0 belong to the same class, and there is no fault in Xk. If the value of 1/n1Jwk was less than εk, we consider that Xk and X0 belong to different classes and a fault has occurred in Xk. Taking the reciprocal of 1/n1Jwk, we can obtain(17)H0:Jwk≤1n1εk,fault−free,H1:Jwk>1n1εk,faulty.


## 3.3. Overall Fault Detection Process

The pseudocode for the overall fault detection method based on dynamic LDA is as follows:(1)
Each parameter of the normal historical samplesX0 is normalized by Z-score to obtain X¯0(2)
A sliding window with the length ofn1 is used to extract the in-orbit data and Xk is obtained(3)
The in-orbit dataXk is normalized by Z-score to obtain X¯k(4)
LDA is used to find the optimal projection vectorwk between X¯0 and X¯k(5)
A normal model is built usingX¯0 and the optimal projection vector wk, and the detection threshold εk is obtained with the significance level α(6)
The value of LDA objective functionJwk is calculated according to equation (5)(7)
Determine whetherJwk is greater than 1/n1εk ?. If Jwk>1/n1εk was, the in-orbit data Xk is faulty; otherwise, Xk is normal. Let k=k+1, the in-orbit data Xk+1 of next sliding window will be tested from Steps 3 to 7.The computation cost of finding the optimum projection vector for each window mainly consists of matrix inversion, matrix multiplication, and solving eigenvalue problem. The time complexities of these three parts areOn3, where n is the number of monitored variables. Considering all the aforementioned computation cost parts, the computation cost of finding the optimum projection vector for each window is On3.


## 4. Case Studies and Analysis

### 4.1. Numerical Case

#### 4.1.1. Experiment with the Fixed Fault Magnitude

A numerical simulation experiment which includes three faults was conducted to verify the effectiveness of the method proposed in this paper. The system was modeled as shown in(18)x1=s1+s2+f1+e1,x2=s1−s3+f1+e2,x3=s1−s4+f1+e3,x4=s2+s3+e4,x5=s2−s4+e5,x6=s2+s4+s5+f2+e6,x7=s3−s4+f3+e7,x8=s3−s5+e8.In equation (18), s1,s2,s3,s4,s5T and e1,e2,e3,e4,e5,e6,e7,e8T are independent Gaussian-distributed source signals and noises, respectively. All the source signals obey the standard normal distribution ℕ0,1. f1, f2, and f3 are three incipient faults and do not occur simultaneously. X=x1,x2,x3,x4,x5,x6,x7,x8T are the eight telemetry parameters that need to be monitored. All the fault types of f1, f2, and f3 are offset faults, as these faults occur more frequently in satellites. The three faults were inserted as shown in(19)f1=01st–30,100th,0.2530,101st–60,200th,f2=01st–30,100th,0.0330,101st–60,200th,f3=01st–30,100th,0.0330,101st–60,200th.In this paper, four evaluation indexes: fault detection rate (FDR), false alarm rate (FAR), F1 value, and AUC value were chosen as the indexes for evaluating the fault detection results:(20)FDR=probJwk>1n1εk|H1,(21)FAR=probJwk>1n1εk|H0,(22)FPR=probH1|Jwk>1n1εk,(23)F1=2∗FPR∗FDRFPR+FDR.The other parameters of the numerical case were set as follows. The total number of samples was 120,400 of which 60,200 were normal historical samples and 60,200 were in-orbit samples for testing. The sliding window length was 300, and the sliding window interval was 100 for both the normal historical data and the in-orbit data in the experiment. After using sliding windows, both 600 windows were obtained from the normal historical data and the in-orbit data. The first 300 windows of the 600 windows of the in-orbit data were normal windows, while the last 300 windows were fault windows. The signal-to-noise ratio (SNR) was set to 30 dB [34].In this paper, eight common fault detection methods were chosen as comparison methods, namely isolation forest (IForest) [35], OCSVM [36], kth nearest neighbor (KNN) [37], local outlier factor (LOF) [38], histogram-based outlier score (HBOS) [39], PCA with T2 statistic (PCA+T2) [19], PCA with squared prediction error statistic (PCA + SPE) [19], and PCA with combined index (PCA + CI) [40]. For comparison purposes, the parameters monitored by these eight methods were the mean values of each sliding window samples instead of the original values. IForest, OCSVM, KNN, LOF, and HBOS were implemented using the open-source program PyOD [41]. The parameters of PyOD are shown in Table 1. The significance of the parameters were detailed in Appendix (if there were no special explanations, other parameters were default values). For the three PCA-based fault detection methods, the cumulative variance contribution rate was 90%, and the confidence level of the statistic was set to 95%. The significance level of the proposed method was set to 0.005.Table 1
Parameter settings of PyOD.
MethodParameter settingsIForestn_estimators = 100, contamination = 0.05OCSVMKernel = ‘linear’, nu = 0.6, contamination = 0.05KNNn_neighbors = 5, contamination = 0.05LOFn_neighbors = 20, contamination = 0.05HBOSn_bins = 10, alpha = 0.1, tol = 0.1, contamination = 0.05The detection results of nine fault detection methods for the faultf1 are shown in Figure 2. As can be seen from Figure 2, seven methods such as IForest, KNN, LOF, HBOS, PCA+T2, PCA + CI and the proposed method have satisfactory detection results for the fault f1, while the other two methods (OCSVM and PCA + SPE) have slightly poor detection results for the fault f1.Figure 2
The detection results of five fault detection methods for the faultf1: (a) IForest result for f1, (b) OCSVM result for f1, (c) KNN result for f1, (d) LOF result for f1, (e) HBOS result for f1, (f)PCA+T2 result for f1, (g) PCA + SPE result for f1, (h) PCA + CI result for f1, and (i) the proposed method result for f1.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The detection results of nine fault detection methods for the faultf2 are shown in Figure 3. As is shown in Figure 3, the results of the first seven fault detection methods are not satisfactory for the fault f2. The fault or anomaly scores of these methods except OCSVM did not change significantly before and after insertion of the fault f2. Although the detection result of OCSVM is better, there are still a large number of fault windows below the threshold. It can be seen from Figure 3(i) that the proposed method has a good detection result for the fault f2.Figure 3
The detection results of five fault detection methods for the faultf2: (a) IForest result for f2, (b) OCSVM result for f2, (c) KNN result for f2, (d) LOF result for f2, (e) HBOS result for f2, (f)PCA+T2 result for f2, (g) PCA + SPE result for f2, (h) PCA + CI result for f2, and (i) the proposed method result for f2.
(a)(b)(c)(d)(e)(f)(g)(h)(i)As can be seen from Figure4, except OCSVM and the proposed method, the other seven fault detection methods have poor performance in the detection of the fault f3. However, the detection result of OCSVM is not stable. In other words, due to randomly generated signal sources and noise sources, OCSVM may obtain good or poor results.Figure 4
The detection results of five fault detection methods for the faultf3: (a) IForest result for f3, (b) OCSVM result for f3, (c) KNN result for f3, (d) LOF result for f3, (e) HBOS result for f3, (f)PCA+T2 result for f3, (g) PCA + SPE result for f3, (h) PCA + CI result for f3, and (i) the proposed method result for f3.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The three faults were simulated randomly 100 times in this paper [42], and then the average values of the fault detection results were calculated and are shown in Table 2.Table 2
Comparison of fault detection performance for three faults.
Evaluation indexIForestOCSVMKNNLOFHBOSPCA+T2PCA + SPEPCA + CIProposed methodFDR forf1 (%)85.7541.6191.5791.883.6390.2745.3990.0088.66FAR forf1 (%)5.375.316.076.495.965.685.615.644.95F1 forf10.8960.5170.9260.9260.8810.9210.5890.9200.916AUC forf10.9640.7910.9770.9760.9570.9780.8040.9780.976FDR forf2 (%)5.8045.076.496.766.195.656.115.9499.47FAR forf2 (%)5.375.135.856.345.715.105.875.754.86F1 forf20.1030.5330.1150.1180.1100.1010.1080.1060.973AUC forf20.5110.7940.5220.5160.5090.5070.5370.5170.998FDR forf3 (%)5.4259.446.406.745.815.536.906.8499.96FAR forf3 (%)5.485.375.926.145.795.405.705.545.07F1 forf30.0970.6590.1130.1180.1030.0990.1210.1210.975AUC forf30.5060.8560.5220.5140.5030.5000.5600.5231.000As can be seen from Table2, all the false alarm rate of the nine fault detection methods were concentrated in the vicinity of 5%∼7%. Consequently, it could be considered that the results in Table 2 are comparative results under similar false alarm rate condition. In terms of fault detection rate, the fault detection rate of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. As for the fault f1, the proposed method ranked 5th but only 3.19% lower than the 1st method. In terms of F1 value, the F1 values of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. In terms of AUC value, the AUC values of the proposed method for the faults f1, f2, and f3 ranked 3rd, 1st, and 1st, respectively.Figure5 shows the AUC value of 100 simulation results using OCSVM and proposed method to detect the fault f3. As can be seen from Figure 5, the detection results of OCSVM are unstable. Therefore, the evaluation index of OCSVM is not very high after averaging. On the contrary, the detection results of the proposed method are stable and satisfactory.Figure 5
Detection results of two fault detection methods for the faultf3.


#### 4.1.2. Experiment with Different Fault Magnitudes

It is evident from Figure4(i) that the proposed method has large allowances for the faults f2 and f3. In other words, it seems that the proposed method can also detect the smaller magnitude of the faults f3. To test the ability of detecting smaller faults of the proposed method, another experiment was conducted and the fault f3 was taken as an example. All the simulation environment and experimental parameters were retained, but the fault magnitude of f3 in equation (19) was varied. The fault magnitude of f3 was increased from 0.001 to 0.08, and the increase interval was 0.001. Each fault magnitude was simulated 30 times and the average value was used as the result. The F1 and AUC values of the detection results of nine methods with different fault magnitudes are shown in Figure 6.Figure 6
Comparison of fault detection results with different fault magnitudes: (a) F1 value for different fault magnitudes and (b) AUC value for different fault magnitudes.
(a)(b)As shown in Figures6(a) and 6(b), the F1 and AUC values of the aforementioned nine methods show an increasing trend as the fault magnitude of f3 increases gradually, but the rate of increase varies among the nine methods. The F1 and AUC values of the proposed method increased rapidly with the increase of the fault magnitude and remained finally near the highest value. The optimal fault detection method of the other eight methods for the fault f3 was the OCSVM method, but it was slower than the method proposed in this paper. Due to the influence of noise, the detection result of OCSVM fluctuated greatly. As can be seen from Figure 6, the detection result of the proposed method may not be advantageous for large magnitude faults. However, in the case of incipient faults, the proposed method has an obvious advantage over the other eight fault detection methods. Therefore, the method proposed in this paper is more comprehensive in its ability to detect the different magnitudes of the fault f3.


#### 4.1.3. Analysis and Discussion

Why does the proposed method differ significantly in the detection of the faultsf1, f2, and f3?. Why is the proposed method more sensitive to small-magnitude faults than other methods? This paper attempted to explain the reasons from the perspective of the optimal projection vector. For presentation purposes, the optimal projection vectors for each sliding window were normalized (the moduli of vector were set to 1) and taken the absolute value. The optimal projection vectors obtained by using dynamic LDA before and after the faults f1, f2, and f3 are shown in Figures 7(a)–7(c), respectively. In Figure 7, the first 300 windows were the normal windows, while the last 300 windows were the faulty windows.Figure 7
Variation of optimal projection vectors for the different faults: (a) optimal projection vectors off1, (b) optimal projection vectors of f2, and (c) optimal projection vectors of f3. From the perspective of projection, the projection process can be considered as a weighted sum process.
(a)(b)(c)As can be seen from Figure7, due to the influence of noise, the optimal projection vectors obtained by the proposed method were chaotic and had no fixed pattern in the absence of faults. However, in Figures 7(b) and 7(c), the optimal projection vectors obtained using dynamic LDA showed regular patterns after faults f2 and f3 occurred. In comparison with Figure 7(a), the optimal projection vectors obtained using dynamic LDA were still chaotic after the occurrence of the fault f1, and there is no significant advantage between the proposed method and traditional methods:(24)wTX=w1x1+w2x2+⋯+w8x8.The size of each component of the optimal projection vector determines the degree of scaling of different parameters inX. Taking Figure 7(b) as an example, the weight of the parameter x6 was up to about 0.6 after the fault f2 occurred, while the weights of the parameters x4 and x8 were about 0.45, and the weights of the remaining parameters were below 0.3. It can be seen from equation (20) that the fault f2 was added to the parameter x6. It can be concluded that the optimal projection vector enlarged the weights of fault parameters and suppressed the weights of the other parameters. The enlargement of the fault parameters improves the ability of the proposed method to detect small-magnitude faults, while the suppression of the other parameters reduces the effect of noise from the other parameters.As can be seen from Figure7(c), the weights of x3 and x7 were significantly higher than the weights of the other parameters after the fault f3 occurred. It can be seen from equation (20) that the fault f3 was added to the parameter x7. It can be concluded that the optimal projection vectors also enlarged the weights of fault parameters and suppressed the weights of other parameters after the fault f3 occurred.The traditional fault detection methods, such as OCSVM, IForest, and PCA, are static methods. Once the learning process is complete, they will use a fixed and invariable model to detect faults. Although the KNN method is dynamic, it treats each parameter equally. They did not have the aforementioned dynamic process of enlarging the weights of fault parameters and suppressing the weights of irrelevant parameters. Consequently, the other eight methods were not effective for the faultsf2 and f3. Although OCSVM can obtain significant results sometimes, the detection results are not stable. After analysis, we consider that the instability of OCSVM may be caused by the selection of noise as the support vectors. In addition, comparing Figures 7(b) and 7(c), the optimal projection vectors were not the same for different faults. The optimal projection vectors obtained using the method proposed in this paper can be automatically adjusted according to the actual fault, and there is no need to manually set the parameter weights in advance.


### 4.2. Real Satellite Fault Case

On 28 June 2020, a fault occurred in a key component of a satellite payload. The postfailure analysis showed that the fault had been generated and developed over a long period of time. However, due to the first occurrence of the fault and the small magnitude of the initial failure, the fault was not detected and dealt with promptly. Finally, the status of the key component became unavailable. In this paper, a total of 1,315,515 samples of five telemetry parameters related to the faulty component were collected from satellite measurements and control systems from 12:15:04 on 10 November 2018 to 19:59:39 on 2 December 2019, as shown in Figure8. For reasons of confidentiality, the true telemetry parameter names were hidden.Figure 8
Raw telemetry data for fault-related parameters.The first 266,540 samples of the total samples were selected as normal historical data, while the next 197,000 samples were selected as test data. The sliding window length was still set to 300 for both the test data and the normal historical data, but the sliding window interval was set to 100. After the sliding window extraction, a total of 2663 windows were obtained from the normal historical data, and a total of 1968 windows were obtained from the test data. The first 324 windows of the 1968 test windows were normal windows, while the subsequent windows were fault windows. The significance level of the proposed method was set to 0.0001, while the rest of the experimental parameters were the same as those presented in Section4.1.1. The evaluation indexes and detection results of the nine fault detection methods for the real satellite fault are shown in Table 3 and Figure 9, respectively.Table 3
Comparison of fault detection performance for the real satellite fault.
Evaluation indexIForestOCSVMKNNLOFHBOSPCA+T2PCA + SPEPCA + CIProposed methodFDR (%)22.5788.1995.8297.5429.4681.8059.7885.7999.94FAR (%)2.057.609.6512.282.633.222.341.751.17F10.3670.9290.9690.9750.4530.8970.7460.9220.999AUC0.8990.9600.9900.9920.8880.9710.9340.9881Figure 9
The detection results of five fault detection methods for the real satellite fault: (a) IForest method, (b) OCSVM method, (c) KNN method, (d) LOF method, (e) HBOS method, (f)PCA+T2 method, (g) PCA + SPE method, (h) PCA + CI method, and (i) the proposed method.
(a)(b)(c)(d)(e)(f)(g)(h)(i)It can be summarized from Figure9 that the four methods, which including OCSVM, KNN, LOF, and the proposed method, have better detection results for the real satellite fault. In terms of four evaluation indexes, the proposed method all obtained satisfactory results. Although the proposed method has little advantage over the other fault detection methods, it still ranked as the best that can be seen from Table 3. The effectiveness of the proposed method is further verified by the real satellite case.


## 4.1. Numerical Case

### 4.1.1. Experiment with the Fixed Fault Magnitude

A numerical simulation experiment which includes three faults was conducted to verify the effectiveness of the method proposed in this paper. The system was modeled as shown in(18)x1=s1+s2+f1+e1,x2=s1−s3+f1+e2,x3=s1−s4+f1+e3,x4=s2+s3+e4,x5=s2−s4+e5,x6=s2+s4+s5+f2+e6,x7=s3−s4+f3+e7,x8=s3−s5+e8.In equation (18), s1,s2,s3,s4,s5T and e1,e2,e3,e4,e5,e6,e7,e8T are independent Gaussian-distributed source signals and noises, respectively. All the source signals obey the standard normal distribution ℕ0,1. f1, f2, and f3 are three incipient faults and do not occur simultaneously. X=x1,x2,x3,x4,x5,x6,x7,x8T are the eight telemetry parameters that need to be monitored. All the fault types of f1, f2, and f3 are offset faults, as these faults occur more frequently in satellites. The three faults were inserted as shown in(19)f1=01st–30,100th,0.2530,101st–60,200th,f2=01st–30,100th,0.0330,101st–60,200th,f3=01st–30,100th,0.0330,101st–60,200th.In this paper, four evaluation indexes: fault detection rate (FDR), false alarm rate (FAR), F1 value, and AUC value were chosen as the indexes for evaluating the fault detection results:(20)FDR=probJwk>1n1εk|H1,(21)FAR=probJwk>1n1εk|H0,(22)FPR=probH1|Jwk>1n1εk,(23)F1=2∗FPR∗FDRFPR+FDR.The other parameters of the numerical case were set as follows. The total number of samples was 120,400 of which 60,200 were normal historical samples and 60,200 were in-orbit samples for testing. The sliding window length was 300, and the sliding window interval was 100 for both the normal historical data and the in-orbit data in the experiment. After using sliding windows, both 600 windows were obtained from the normal historical data and the in-orbit data. The first 300 windows of the 600 windows of the in-orbit data were normal windows, while the last 300 windows were fault windows. The signal-to-noise ratio (SNR) was set to 30 dB [34].In this paper, eight common fault detection methods were chosen as comparison methods, namely isolation forest (IForest) [35], OCSVM [36], kth nearest neighbor (KNN) [37], local outlier factor (LOF) [38], histogram-based outlier score (HBOS) [39], PCA with T2 statistic (PCA+T2) [19], PCA with squared prediction error statistic (PCA + SPE) [19], and PCA with combined index (PCA + CI) [40]. For comparison purposes, the parameters monitored by these eight methods were the mean values of each sliding window samples instead of the original values. IForest, OCSVM, KNN, LOF, and HBOS were implemented using the open-source program PyOD [41]. The parameters of PyOD are shown in Table 1. The significance of the parameters were detailed in Appendix (if there were no special explanations, other parameters were default values). For the three PCA-based fault detection methods, the cumulative variance contribution rate was 90%, and the confidence level of the statistic was set to 95%. The significance level of the proposed method was set to 0.005.Table 1
Parameter settings of PyOD.
MethodParameter settingsIForestn_estimators = 100, contamination = 0.05OCSVMKernel = ‘linear’, nu = 0.6, contamination = 0.05KNNn_neighbors = 5, contamination = 0.05LOFn_neighbors = 20, contamination = 0.05HBOSn_bins = 10, alpha = 0.1, tol = 0.1, contamination = 0.05The detection results of nine fault detection methods for the faultf1 are shown in Figure 2. As can be seen from Figure 2, seven methods such as IForest, KNN, LOF, HBOS, PCA+T2, PCA + CI and the proposed method have satisfactory detection results for the fault f1, while the other two methods (OCSVM and PCA + SPE) have slightly poor detection results for the fault f1.Figure 2
The detection results of five fault detection methods for the faultf1: (a) IForest result for f1, (b) OCSVM result for f1, (c) KNN result for f1, (d) LOF result for f1, (e) HBOS result for f1, (f)PCA+T2 result for f1, (g) PCA + SPE result for f1, (h) PCA + CI result for f1, and (i) the proposed method result for f1.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The detection results of nine fault detection methods for the faultf2 are shown in Figure 3. As is shown in Figure 3, the results of the first seven fault detection methods are not satisfactory for the fault f2. The fault or anomaly scores of these methods except OCSVM did not change significantly before and after insertion of the fault f2. Although the detection result of OCSVM is better, there are still a large number of fault windows below the threshold. It can be seen from Figure 3(i) that the proposed method has a good detection result for the fault f2.Figure 3
The detection results of five fault detection methods for the faultf2: (a) IForest result for f2, (b) OCSVM result for f2, (c) KNN result for f2, (d) LOF result for f2, (e) HBOS result for f2, (f)PCA+T2 result for f2, (g) PCA + SPE result for f2, (h) PCA + CI result for f2, and (i) the proposed method result for f2.
(a)(b)(c)(d)(e)(f)(g)(h)(i)As can be seen from Figure4, except OCSVM and the proposed method, the other seven fault detection methods have poor performance in the detection of the fault f3. However, the detection result of OCSVM is not stable. In other words, due to randomly generated signal sources and noise sources, OCSVM may obtain good or poor results.Figure 4
The detection results of five fault detection methods for the faultf3: (a) IForest result for f3, (b) OCSVM result for f3, (c) KNN result for f3, (d) LOF result for f3, (e) HBOS result for f3, (f)PCA+T2 result for f3, (g) PCA + SPE result for f3, (h) PCA + CI result for f3, and (i) the proposed method result for f3.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The three faults were simulated randomly 100 times in this paper [42], and then the average values of the fault detection results were calculated and are shown in Table 2.Table 2
Comparison of fault detection performance for three faults.
Evaluation indexIForestOCSVMKNNLOFHBOSPCA+T2PCA + SPEPCA + CIProposed methodFDR forf1 (%)85.7541.6191.5791.883.6390.2745.3990.0088.66FAR forf1 (%)5.375.316.076.495.965.685.615.644.95F1 forf10.8960.5170.9260.9260.8810.9210.5890.9200.916AUC forf10.9640.7910.9770.9760.9570.9780.8040.9780.976FDR forf2 (%)5.8045.076.496.766.195.656.115.9499.47FAR forf2 (%)5.375.135.856.345.715.105.875.754.86F1 forf20.1030.5330.1150.1180.1100.1010.1080.1060.973AUC forf20.5110.7940.5220.5160.5090.5070.5370.5170.998FDR forf3 (%)5.4259.446.406.745.815.536.906.8499.96FAR forf3 (%)5.485.375.926.145.795.405.705.545.07F1 forf30.0970.6590.1130.1180.1030.0990.1210.1210.975AUC forf30.5060.8560.5220.5140.5030.5000.5600.5231.000As can be seen from Table2, all the false alarm rate of the nine fault detection methods were concentrated in the vicinity of 5%∼7%. Consequently, it could be considered that the results in Table 2 are comparative results under similar false alarm rate condition. In terms of fault detection rate, the fault detection rate of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. As for the fault f1, the proposed method ranked 5th but only 3.19% lower than the 1st method. In terms of F1 value, the F1 values of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. In terms of AUC value, the AUC values of the proposed method for the faults f1, f2, and f3 ranked 3rd, 1st, and 1st, respectively.Figure5 shows the AUC value of 100 simulation results using OCSVM and proposed method to detect the fault f3. As can be seen from Figure 5, the detection results of OCSVM are unstable. Therefore, the evaluation index of OCSVM is not very high after averaging. On the contrary, the detection results of the proposed method are stable and satisfactory.Figure 5
Detection results of two fault detection methods for the faultf3.


### 4.1.2. Experiment with Different Fault Magnitudes

It is evident from Figure4(i) that the proposed method has large allowances for the faults f2 and f3. In other words, it seems that the proposed method can also detect the smaller magnitude of the faults f3. To test the ability of detecting smaller faults of the proposed method, another experiment was conducted and the fault f3 was taken as an example. All the simulation environment and experimental parameters were retained, but the fault magnitude of f3 in equation (19) was varied. The fault magnitude of f3 was increased from 0.001 to 0.08, and the increase interval was 0.001. Each fault magnitude was simulated 30 times and the average value was used as the result. The F1 and AUC values of the detection results of nine methods with different fault magnitudes are shown in Figure 6.Figure 6
Comparison of fault detection results with different fault magnitudes: (a) F1 value for different fault magnitudes and (b) AUC value for different fault magnitudes.
(a)(b)As shown in Figures6(a) and 6(b), the F1 and AUC values of the aforementioned nine methods show an increasing trend as the fault magnitude of f3 increases gradually, but the rate of increase varies among the nine methods. The F1 and AUC values of the proposed method increased rapidly with the increase of the fault magnitude and remained finally near the highest value. The optimal fault detection method of the other eight methods for the fault f3 was the OCSVM method, but it was slower than the method proposed in this paper. Due to the influence of noise, the detection result of OCSVM fluctuated greatly. As can be seen from Figure 6, the detection result of the proposed method may not be advantageous for large magnitude faults. However, in the case of incipient faults, the proposed method has an obvious advantage over the other eight fault detection methods. Therefore, the method proposed in this paper is more comprehensive in its ability to detect the different magnitudes of the fault f3.


### 4.1.3. Analysis and Discussion

Why does the proposed method differ significantly in the detection of the faultsf1, f2, and f3?. Why is the proposed method more sensitive to small-magnitude faults than other methods? This paper attempted to explain the reasons from the perspective of the optimal projection vector. For presentation purposes, the optimal projection vectors for each sliding window were normalized (the moduli of vector were set to 1) and taken the absolute value. The optimal projection vectors obtained by using dynamic LDA before and after the faults f1, f2, and f3 are shown in Figures 7(a)–7(c), respectively. In Figure 7, the first 300 windows were the normal windows, while the last 300 windows were the faulty windows.Figure 7
Variation of optimal projection vectors for the different faults: (a) optimal projection vectors off1, (b) optimal projection vectors of f2, and (c) optimal projection vectors of f3. From the perspective of projection, the projection process can be considered as a weighted sum process.
(a)(b)(c)As can be seen from Figure7, due to the influence of noise, the optimal projection vectors obtained by the proposed method were chaotic and had no fixed pattern in the absence of faults. However, in Figures 7(b) and 7(c), the optimal projection vectors obtained using dynamic LDA showed regular patterns after faults f2 and f3 occurred. In comparison with Figure 7(a), the optimal projection vectors obtained using dynamic LDA were still chaotic after the occurrence of the fault f1, and there is no significant advantage between the proposed method and traditional methods:(24)wTX=w1x1+w2x2+⋯+w8x8.The size of each component of the optimal projection vector determines the degree of scaling of different parameters inX. Taking Figure 7(b) as an example, the weight of the parameter x6 was up to about 0.6 after the fault f2 occurred, while the weights of the parameters x4 and x8 were about 0.45, and the weights of the remaining parameters were below 0.3. It can be seen from equation (20) that the fault f2 was added to the parameter x6. It can be concluded that the optimal projection vector enlarged the weights of fault parameters and suppressed the weights of the other parameters. The enlargement of the fault parameters improves the ability of the proposed method to detect small-magnitude faults, while the suppression of the other parameters reduces the effect of noise from the other parameters.As can be seen from Figure7(c), the weights of x3 and x7 were significantly higher than the weights of the other parameters after the fault f3 occurred. It can be seen from equation (20) that the fault f3 was added to the parameter x7. It can be concluded that the optimal projection vectors also enlarged the weights of fault parameters and suppressed the weights of other parameters after the fault f3 occurred.The traditional fault detection methods, such as OCSVM, IForest, and PCA, are static methods. Once the learning process is complete, they will use a fixed and invariable model to detect faults. Although the KNN method is dynamic, it treats each parameter equally. They did not have the aforementioned dynamic process of enlarging the weights of fault parameters and suppressing the weights of irrelevant parameters. Consequently, the other eight methods were not effective for the faultsf2 and f3. Although OCSVM can obtain significant results sometimes, the detection results are not stable. After analysis, we consider that the instability of OCSVM may be caused by the selection of noise as the support vectors. In addition, comparing Figures 7(b) and 7(c), the optimal projection vectors were not the same for different faults. The optimal projection vectors obtained using the method proposed in this paper can be automatically adjusted according to the actual fault, and there is no need to manually set the parameter weights in advance.


## 4.1.1. Experiment with the Fixed Fault Magnitude

A numerical simulation experiment which includes three faults was conducted to verify the effectiveness of the method proposed in this paper. The system was modeled as shown in(18)x1=s1+s2+f1+e1,x2=s1−s3+f1+e2,x3=s1−s4+f1+e3,x4=s2+s3+e4,x5=s2−s4+e5,x6=s2+s4+s5+f2+e6,x7=s3−s4+f3+e7,x8=s3−s5+e8.In equation (18), s1,s2,s3,s4,s5T and e1,e2,e3,e4,e5,e6,e7,e8T are independent Gaussian-distributed source signals and noises, respectively. All the source signals obey the standard normal distribution ℕ0,1. f1, f2, and f3 are three incipient faults and do not occur simultaneously. X=x1,x2,x3,x4,x5,x6,x7,x8T are the eight telemetry parameters that need to be monitored. All the fault types of f1, f2, and f3 are offset faults, as these faults occur more frequently in satellites. The three faults were inserted as shown in(19)f1=01st–30,100th,0.2530,101st–60,200th,f2=01st–30,100th,0.0330,101st–60,200th,f3=01st–30,100th,0.0330,101st–60,200th.In this paper, four evaluation indexes: fault detection rate (FDR), false alarm rate (FAR), F1 value, and AUC value were chosen as the indexes for evaluating the fault detection results:(20)FDR=probJwk>1n1εk|H1,(21)FAR=probJwk>1n1εk|H0,(22)FPR=probH1|Jwk>1n1εk,(23)F1=2∗FPR∗FDRFPR+FDR.The other parameters of the numerical case were set as follows. The total number of samples was 120,400 of which 60,200 were normal historical samples and 60,200 were in-orbit samples for testing. The sliding window length was 300, and the sliding window interval was 100 for both the normal historical data and the in-orbit data in the experiment. After using sliding windows, both 600 windows were obtained from the normal historical data and the in-orbit data. The first 300 windows of the 600 windows of the in-orbit data were normal windows, while the last 300 windows were fault windows. The signal-to-noise ratio (SNR) was set to 30 dB [34].In this paper, eight common fault detection methods were chosen as comparison methods, namely isolation forest (IForest) [35], OCSVM [36], kth nearest neighbor (KNN) [37], local outlier factor (LOF) [38], histogram-based outlier score (HBOS) [39], PCA with T2 statistic (PCA+T2) [19], PCA with squared prediction error statistic (PCA + SPE) [19], and PCA with combined index (PCA + CI) [40]. For comparison purposes, the parameters monitored by these eight methods were the mean values of each sliding window samples instead of the original values. IForest, OCSVM, KNN, LOF, and HBOS were implemented using the open-source program PyOD [41]. The parameters of PyOD are shown in Table 1. The significance of the parameters were detailed in Appendix (if there were no special explanations, other parameters were default values). For the three PCA-based fault detection methods, the cumulative variance contribution rate was 90%, and the confidence level of the statistic was set to 95%. The significance level of the proposed method was set to 0.005.Table 1
Parameter settings of PyOD.
MethodParameter settingsIForestn_estimators = 100, contamination = 0.05OCSVMKernel = ‘linear’, nu = 0.6, contamination = 0.05KNNn_neighbors = 5, contamination = 0.05LOFn_neighbors = 20, contamination = 0.05HBOSn_bins = 10, alpha = 0.1, tol = 0.1, contamination = 0.05The detection results of nine fault detection methods for the faultf1 are shown in Figure 2. As can be seen from Figure 2, seven methods such as IForest, KNN, LOF, HBOS, PCA+T2, PCA + CI and the proposed method have satisfactory detection results for the fault f1, while the other two methods (OCSVM and PCA + SPE) have slightly poor detection results for the fault f1.Figure 2
The detection results of five fault detection methods for the faultf1: (a) IForest result for f1, (b) OCSVM result for f1, (c) KNN result for f1, (d) LOF result for f1, (e) HBOS result for f1, (f)PCA+T2 result for f1, (g) PCA + SPE result for f1, (h) PCA + CI result for f1, and (i) the proposed method result for f1.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The detection results of nine fault detection methods for the faultf2 are shown in Figure 3. As is shown in Figure 3, the results of the first seven fault detection methods are not satisfactory for the fault f2. The fault or anomaly scores of these methods except OCSVM did not change significantly before and after insertion of the fault f2. Although the detection result of OCSVM is better, there are still a large number of fault windows below the threshold. It can be seen from Figure 3(i) that the proposed method has a good detection result for the fault f2.Figure 3
The detection results of five fault detection methods for the faultf2: (a) IForest result for f2, (b) OCSVM result for f2, (c) KNN result for f2, (d) LOF result for f2, (e) HBOS result for f2, (f)PCA+T2 result for f2, (g) PCA + SPE result for f2, (h) PCA + CI result for f2, and (i) the proposed method result for f2.
(a)(b)(c)(d)(e)(f)(g)(h)(i)As can be seen from Figure4, except OCSVM and the proposed method, the other seven fault detection methods have poor performance in the detection of the fault f3. However, the detection result of OCSVM is not stable. In other words, due to randomly generated signal sources and noise sources, OCSVM may obtain good or poor results.Figure 4
The detection results of five fault detection methods for the faultf3: (a) IForest result for f3, (b) OCSVM result for f3, (c) KNN result for f3, (d) LOF result for f3, (e) HBOS result for f3, (f)PCA+T2 result for f3, (g) PCA + SPE result for f3, (h) PCA + CI result for f3, and (i) the proposed method result for f3.
(a)(b)(c)(d)(e)(f)(g)(h)(i)The three faults were simulated randomly 100 times in this paper [42], and then the average values of the fault detection results were calculated and are shown in Table 2.Table 2
Comparison of fault detection performance for three faults.
Evaluation indexIForestOCSVMKNNLOFHBOSPCA+T2PCA + SPEPCA + CIProposed methodFDR forf1 (%)85.7541.6191.5791.883.6390.2745.3990.0088.66FAR forf1 (%)5.375.316.076.495.965.685.615.644.95F1 forf10.8960.5170.9260.9260.8810.9210.5890.9200.916AUC forf10.9640.7910.9770.9760.9570.9780.8040.9780.976FDR forf2 (%)5.8045.076.496.766.195.656.115.9499.47FAR forf2 (%)5.375.135.856.345.715.105.875.754.86F1 forf20.1030.5330.1150.1180.1100.1010.1080.1060.973AUC forf20.5110.7940.5220.5160.5090.5070.5370.5170.998FDR forf3 (%)5.4259.446.406.745.815.536.906.8499.96FAR forf3 (%)5.485.375.926.145.795.405.705.545.07F1 forf30.0970.6590.1130.1180.1030.0990.1210.1210.975AUC forf30.5060.8560.5220.5140.5030.5000.5600.5231.000As can be seen from Table2, all the false alarm rate of the nine fault detection methods were concentrated in the vicinity of 5%∼7%. Consequently, it could be considered that the results in Table 2 are comparative results under similar false alarm rate condition. In terms of fault detection rate, the fault detection rate of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. As for the fault f1, the proposed method ranked 5th but only 3.19% lower than the 1st method. In terms of F1 value, the F1 values of the proposed method for the faults f1, f2, and f3 ranked 5th, 1st, and 1st, respectively. In terms of AUC value, the AUC values of the proposed method for the faults f1, f2, and f3 ranked 3rd, 1st, and 1st, respectively.Figure5 shows the AUC value of 100 simulation results using OCSVM and proposed method to detect the fault f3. As can be seen from Figure 5, the detection results of OCSVM are unstable. Therefore, the evaluation index of OCSVM is not very high after averaging. On the contrary, the detection results of the proposed method are stable and satisfactory.Figure 5
Detection results of two fault detection methods for the faultf3.


## 4.1.2. Experiment with Different Fault Magnitudes

It is evident from Figure4(i) that the proposed method has large allowances for the faults f2 and f3. In other words, it seems that the proposed method can also detect the smaller magnitude of the faults f3. To test the ability of detecting smaller faults of the proposed method, another experiment was conducted and the fault f3 was taken as an example. All the simulation environment and experimental parameters were retained, but the fault magnitude of f3 in equation (19) was varied. The fault magnitude of f3 was increased from 0.001 to 0.08, and the increase interval was 0.001. Each fault magnitude was simulated 30 times and the average value was used as the result. The F1 and AUC values of the detection results of nine methods with different fault magnitudes are shown in Figure 6.Figure 6
Comparison of fault detection results with different fault magnitudes: (a) F1 value for different fault magnitudes and (b) AUC value for different fault magnitudes.
(a)(b)As shown in Figures6(a) and 6(b), the F1 and AUC values of the aforementioned nine methods show an increasing trend as the fault magnitude of f3 increases gradually, but the rate of increase varies among the nine methods. The F1 and AUC values of the proposed method increased rapidly with the increase of the fault magnitude and remained finally near the highest value. The optimal fault detection method of the other eight methods for the fault f3 was the OCSVM method, but it was slower than the method proposed in this paper. Due to the influence of noise, the detection result of OCSVM fluctuated greatly. As can be seen from Figure 6, the detection result of the proposed method may not be advantageous for large magnitude faults. However, in the case of incipient faults, the proposed method has an obvious advantage over the other eight fault detection methods. Therefore, the method proposed in this paper is more comprehensive in its ability to detect the different magnitudes of the fault f3.


## 4.1.3. Analysis and Discussion

Why does the proposed method differ significantly in the detection of the faultsf1, f2, and f3?. Why is the proposed method more sensitive to small-magnitude faults than other methods? This paper attempted to explain the reasons from the perspective of the optimal projection vector. For presentation purposes, the optimal projection vectors for each sliding window were normalized (the moduli of vector were set to 1) and taken the absolute value. The optimal projection vectors obtained by using dynamic LDA before and after the faults f1, f2, and f3 are shown in Figures 7(a)–7(c), respectively. In Figure 7, the first 300 windows were the normal windows, while the last 300 windows were the faulty windows.Figure 7
Variation of optimal projection vectors for the different faults: (a) optimal projection vectors off1, (b) optimal projection vectors of f2, and (c) optimal projection vectors of f3. From the perspective of projection, the projection process can be considered as a weighted sum process.
(a)(b)(c)As can be seen from Figure7, due to the influence of noise, the optimal projection vectors obtained by the proposed method were chaotic and had no fixed pattern in the absence of faults. However, in Figures 7(b) and 7(c), the optimal projection vectors obtained using dynamic LDA showed regular patterns after faults f2 and f3 occurred. In comparison with Figure 7(a), the optimal projection vectors obtained using dynamic LDA were still chaotic after the occurrence of the fault f1, and there is no significant advantage between the proposed method and traditional methods:(24)wTX=w1x1+w2x2+⋯+w8x8.The size of each component of the optimal projection vector determines the degree of scaling of different parameters inX. Taking Figure 7(b) as an example, the weight of the parameter x6 was up to about 0.6 after the fault f2 occurred, while the weights of the parameters x4 and x8 were about 0.45, and the weights of the remaining parameters were below 0.3. It can be seen from equation (20) that the fault f2 was added to the parameter x6. It can be concluded that the optimal projection vector enlarged the weights of fault parameters and suppressed the weights of the other parameters. The enlargement of the fault parameters improves the ability of the proposed method to detect small-magnitude faults, while the suppression of the other parameters reduces the effect of noise from the other parameters.As can be seen from Figure7(c), the weights of x3 and x7 were significantly higher than the weights of the other parameters after the fault f3 occurred. It can be seen from equation (20) that the fault f3 was added to the parameter x7. It can be concluded that the optimal projection vectors also enlarged the weights of fault parameters and suppressed the weights of other parameters after the fault f3 occurred.The traditional fault detection methods, such as OCSVM, IForest, and PCA, are static methods. Once the learning process is complete, they will use a fixed and invariable model to detect faults. Although the KNN method is dynamic, it treats each parameter equally. They did not have the aforementioned dynamic process of enlarging the weights of fault parameters and suppressing the weights of irrelevant parameters. Consequently, the other eight methods were not effective for the faultsf2 and f3. Although OCSVM can obtain significant results sometimes, the detection results are not stable. After analysis, we consider that the instability of OCSVM may be caused by the selection of noise as the support vectors. In addition, comparing Figures 7(b) and 7(c), the optimal projection vectors were not the same for different faults. The optimal projection vectors obtained using the method proposed in this paper can be automatically adjusted according to the actual fault, and there is no need to manually set the parameter weights in advance.


## 4.2. Real Satellite Fault Case

On 28 June 2020, a fault occurred in a key component of a satellite payload. The postfailure analysis showed that the fault had been generated and developed over a long period of time. However, due to the first occurrence of the fault and the small magnitude of the initial failure, the fault was not detected and dealt with promptly. Finally, the status of the key component became unavailable. In this paper, a total of 1,315,515 samples of five telemetry parameters related to the faulty component were collected from satellite measurements and control systems from 12:15:04 on 10 November 2018 to 19:59:39 on 2 December 2019, as shown in Figure8. For reasons of confidentiality, the true telemetry parameter names were hidden.Figure 8
Raw telemetry data for fault-related parameters.The first 266,540 samples of the total samples were selected as normal historical data, while the next 197,000 samples were selected as test data. The sliding window length was still set to 300 for both the test data and the normal historical data, but the sliding window interval was set to 100. After the sliding window extraction, a total of 2663 windows were obtained from the normal historical data, and a total of 1968 windows were obtained from the test data. The first 324 windows of the 1968 test windows were normal windows, while the subsequent windows were fault windows. The significance level of the proposed method was set to 0.0001, while the rest of the experimental parameters were the same as those presented in Section4.1.1. The evaluation indexes and detection results of the nine fault detection methods for the real satellite fault are shown in Table 3 and Figure 9, respectively.Table 3
Comparison of fault detection performance for the real satellite fault.
Evaluation indexIForestOCSVMKNNLOFHBOSPCA+T2PCA + SPEPCA + CIProposed methodFDR (%)22.5788.1995.8297.5429.4681.8059.7885.7999.94FAR (%)2.057.609.6512.282.633.222.341.751.17F10.3670.9290.9690.9750.4530.8970.7460.9220.999AUC0.8990.9600.9900.9920.8880.9710.9340.9881Figure 9
The detection results of five fault detection methods for the real satellite fault: (a) IForest method, (b) OCSVM method, (c) KNN method, (d) LOF method, (e) HBOS method, (f)PCA+T2 method, (g) PCA + SPE method, (h) PCA + CI method, and (i) the proposed method.
(a)(b)(c)(d)(e)(f)(g)(h)(i)It can be summarized from Figure9 that the four methods, which including OCSVM, KNN, LOF, and the proposed method, have better detection results for the real satellite fault. In terms of four evaluation indexes, the proposed method all obtained satisfactory results. Although the proposed method has little advantage over the other fault detection methods, it still ranked as the best that can be seen from Table 3. The effectiveness of the proposed method is further verified by the real satellite case.


## 5. Conclusions

Based on the analysis and comparison of existing satellite fault detection methods, this paper proposes a new incipient fault detection method that combines the core ideas of unsupervised learning and supervised learning. Then, the effectiveness and superiority of the proposed method were verified through a numerical simulation case and a real fault case. This paper only studies linear Gaussian system. If the system did not meet the assumptions of joint Gaussian distribution and linearity, the detection effect of the proposed method might decrease. Due to the insensitivity of LDA to variance, the proposed method is suitable for detecting the slight abnormal change of mean instead of the slight abnormal change of variance.



---

*Source: 1303936-2021-10-14.xml*