Nonlinear state estimation using neural-cubature Kalman filter

ABSTRACT The cubature Kalman filter (CKF) has been widely used in solving nonlinear state estimation problems because of many advantages such as satisfactory filtering accuracy and easy implementation compared to extended Kalman filter and unscented Kalman filter. However, the performance of CKF may degrade due to the uncertainty of the nonlinear dynamic system model. To solve this problem, a neural-cubature Kalman filter (NCKF) algorithm containing a multilayer feed-forward neural network (MFNN) in CKF is proposed to further improve the estimation accuracy and enhance the robustness of CKF. In the proposed NCKF algorithm, the MFNN was used to modify the nonlinear state estimation of CKF as the measurements were processed, and the CKF was used as both a state estimator and an online training paradigm simultaneously. The experimental results show that the estimation accuracy and robustness of the proposed method are better than those of the CKF, square-root CKF and particle filter.


Introduction
Over the past several decades, extended Kalman filter (EKF) has been used as the core of nonlinear state estimation problems [1][2][3][4]. However, the use of EKF results in a poor performance if the process or measurement model is highly nonlinear [5]. In addition, the computation of Jacobian matrices is also a heavy computational burden in practical situations [6]. As a better alternative to EKF, unscented Kalman filter (UKF) has been proposed to solve highly nonlinear state estimation problems [7]. UKF avoids the computation of Jacobian matrices and uses a deterministic sampling approach to determine the mean and covariances with sigma points [8][9][10]. In general, UKF performs better than EKF in nonlinear state estimation problems. However, the unscented transformation of UKF is potentially unstable due to the possible negative weight on the centre point in practical applications [11]. Although some other nonlinear filters such as particle filter (PF) [12] and Gaussian PF [13] are more accurate and stable than UKF, they suffer from the "curse of dimensionality" when applied to high-dimensional systems [14].
Recently, owing to satisfactory filtering accuracy, cubature Kalman filter (CKF) based on the sphericalradial cubature rule has received much attention in solving nonlinear state estimation problems [6,11,14,15]. However, for nonlinear dynamic systems with large uncertainties such as target tracking and long-term orbit uncertainty propagation [16,17], the performance of CKF may degrade due to the uncertainty of system mode. To make the CKF robust, a neural-CKF (NCKF) algorithm is proposed in this study. In the proposed NCKF, a multilayer feed-forward neural network (MFNN) was used as a regulator to approximate the difference between the prior model used in the prediction steps of the CKF and the actual model dynamics, and the CKF was used to train the neural network (NN) as well as to estimate the states and weights of NN. The simulation results show that the proposed method has a higher estimation accuracy and robustness than the CKF.
The rest of this manuscript is organized as follows. The NN points are described in Section 2. The proposed NCKF algorithm is described in Section 3. The performances of NCKF, CKF SCKF and PF are compared in Section 4. The conclusions and future work are provided in Section 5.

NN points
Although both radial basis function NN (RBFNN) and MFNN can approximate any continuous functional relationship to any degree of accuracy, given enough neurons, RBFNN requires more neurons/basis functions than MFNN if trained in a sequential mode. This may severely limit its application in solving a complex estimation problem. In contrast, MFNN can avoid the change in the architecture of the overall network when the NNs are trained, because its architecture can be fixed before through empirical experiments [18][19][20][21][22][23]. Therefore, MFNN is more suitable for sequential online applications.
In general, weight links, adders and activation functions are the three major components in a basic model CONTACT Zhiyong Miao mzy407@126.com, miaozhiyong@hrbeu.edu.cn of neurons. The weight links are used to link the input layer, hidden layer and output layer. The adders are used to add the input signals that are weighted by the respective synapses of the neuron, and the activation functions are used to limit the amplitude of neuron output and the final output [20,21]. Then, the outputs of hidden and output layers of a neuron can be expressed as follows: where ' i is the input signal; w i;j and W j;m are the input and output weights, respectively; b 1 and b 2 are the biases of the hidden layer and output layer, respectively; af ð Þ and AF ð Þ are the activation functions for hidden neurons and output neurons, respectively.
A simple MFNN is shown in Figure 1. If the biases b 1 ; b 2 ð Þ are interpreted as the weights acting on the inputs clamped to 1, the weights and biases can be represented as joint description "weights." Then, the mathematical formula of MFNN can be expressed as follows: where n ' is the number of input signals, n h is the number of hidden neurons, w j;0 is the bias of input weights and W m;0 is the bias of output weights. Note that two or three hidden layers are enough, and the nonlinear hyperbolic tangent sigmoid function is used as the activation function. This enhances the approximation capabilities of NN and reduces the impact of noise [20][21][22][23].

Proposed NCKF algorithm
In this study, the filtering problem of nonlinear dynamic systems was considered; its state-space model can be expressed by a pair of difference equations in discrete time [15]: where x k and z k are the states and measurements at time k; f ð Þ and h ð Þ are the nonlinear functions for the dynamic and measurement models, respectively;n k is the processed Gaussian noise with zero mean and covariance q k ; similarly, ' k is the measured Gaussian noise with zero mean and covariance r k .
Then, the error between the true model and priori model can be expressed as follows: Equation (5) shows that the true model can be obtained from an accurate e k . However, the e k cannot be measured directly. As stated in Section 2, the MFNN can approximate the functional relationship; therefore, the e k can be well approximated using the MFNN as follows: where h k is the joint description "weights" of the input weight w i;j and bias w j;0 , and λ k is the joint description "weights" of the output weight W j;m and bias W m;0 . According to Equation (6), a new error e k can be expressed as follows: where ke k k ( ke k k. From the above analysis, a more accurate dynamic system model can be expressed as follows: whereñ k is the process Gaussian noise with zero mean and covarianceQ k . Then, the generic NCKF algorithm can be summarized in the following steps: Step 1: State augment Suppose that the number of x k is u 0 . Therefore, the dimension of h k is n ' Â u 0 À Á Â 1, and the dimension of λ k is n ' Â n h À Á Â 1. Note that, the augmented state vector of NCKF contains both the state estimates and weights (input and output) of the NN. The states x k are considered as the input to the NN; the weights of NN are the "parameters" of function approximator that can be used to model something in the noise [21][22][23].
Step 2: Step 2: Time updatẽ Step 3: Measurement updatẽ Equations (9) and (18) show that the weights of the MFNN are updated by the CKF. Furthermore, Equation (11) shows that the MFNN can adaptively approximate the errors between the true model and priori model in the prediction steps of the CKF.

Simulations
In this section, three numerical examples were used to evaluate the estimation accuracy and robustness of the proposed NCKF.

Bearings-only tracking
In this subsection, the NCKF was compared with the CKF, square-root CKF (SCKF) and PF in bearings-only tracking example; this has been widely analysed owing to its practical application potential [24,25]. The nonlinear system model of bearings-only tracking can be expressed as follows: where x k ¼ x 1;k ; x 2;k À Á T ¼ s; t ð Þ T is the position in the s-t plane. Note that the function tan À1 ð Þ can be implemented using the command atan2ð Þ in MATLAB 2012a.
Although the actual output and estimated output along with estimated states can be used to show the estimation accuracy of the proposed method, the results of single simulation cannot fully reflect the trends. To quantitatively evaluate the filtering performance, the simulation results are based on 200 Monte Carlo runs. The process noise To implement the NCKF algorithm, the state x k , the associated covarianceP k and process noise varianceQ k should be augmented as follows: where the values of h k and λ k are initialized between 0 and 1, respectively. Data analysis criterion: the root-mean-square error (RMSE) was used as the benchmark to compare the performances of NCKF, CKF, SCKF and PF. The RMSEs at time k for x 1 and x 2 are defined as follows: where x m 1;k ;x 1;k m are the true and estimated x 1;k at the mth Monte Carlo run, respectively; x m 2;k ;x 2;k m are the true and estimated x 2;k at the mthMonte Carlo run, respectively The simulation results of the RMSEs for x 1 and x 2 are shown in Figures 2 and 3, respectively. Further-more, the corresponding statistics of RMSEs for the four filters are shown in Table 1. Figures 2 and 3 show that the NCKF performs better than the CKF, SCKF and PF. This is because the CKF was used as an estimator and a training paradigm in the NCKF. As an estimator, the CKF estimates the states and the input and output weights of NN. As a training paradigm, it is driven by the same residuals as the state estimator and ensures that the residuals are as small as possible; it approximates the difference between the prior model used in the prediction steps of the estimator and the actual model dynamics. Therefore, NCKF can improve the performance by estimating the weights of NN, which in turn is used to modify the state estimate predictions of the filter as the measurements are processed. In addition, although the sequential importance sample PF uses 500 particles, its performance is not as good as the CKF. Although the PF can be improved by increasing the number of particles or using some advanced techniques [26,27], the computational complexity will significantly increase. The PF was not studied further, because it is out of the scope of this study. A comparison of standard deviation (Std) and mean value shown in Table 1 provides the same conclusion: the NCKF is superior to the other three filters in this test.
The tracking algorithms were coded with MATLAB, and the simulations were run on an Intel Core Duo CPU processor at 2.00 GHz. Table 1 shows that the NCKF needs more time than the CKF and NCK, because its state vector contains both the state estimates and the weights (input and output) of the NN. Table 1 shows that the PF has a large computational burden because it needs particle resampling in each step.

Manoeuvring target tracking
In this section, the NCKF was compared with the CKF, SCKF and PF in a manoeuvring target tracking application; this has been used as a benchmark problem to evaluate the performance of CKF algorithm [11,15]. The dynamic equation of the target tracking can be modelled as follows: þ n kÀ1 (27) where ξ k and _ ξ k are the position and velocity in Xdirection, respectively; & k and _ & k are the position and velocity in Ydirection, respectively; Dtrepresents the sampling interval; c k represents the unknown turn rate; v kÀ1 is the white Gaussian noise with zero mean and covariance Q kÀ1: where a 1 ¼ 0:1; Dt ¼ 1s; and a 2 ¼ 1:75 Â 10 À4 . The measurement equation with two sensors can be expressed as follows: where d is the sensor index; ' k;1 and ' k;2 are the white Gaussian measurement noise with zero mean and covariance For a fair comparison, the simulation results are based on 200 Monte Carlo runs. In each Monte Carlo run, the initial estimate value was generated randomly from Nx 0 j x 0 ; P 0 ð Þ . The initial state x 0 and the associated covariance P 0 were assumed as follows: x 0 ¼ 1000 m 300m=s 1000 m 0m=s À3 B =s ½ T (32) P 0 ¼ diagð½ 100 m 2 10m 2 =s 2 100 m 2 10m 2 =s 2 100mrad 2 =s 2 Þ To implement the NCKF algorithm, the state x 0 , the associated covarianceP 0 and process noise varianceQ 0 should be augmented as Equations (22)- (24). The RMSE at time k for position was defined as follows: are the true and estimated positions at the gth Monte Carlo run, respectively. Then, the RMSE in velocity and turn rate can be formulated using Equation (34).
The simulation results of the RMSEs in position, velocity and turn rate are shown in Figures 4-6, respectively. Furthermore, the corresponding statistics of RMSEs for CKF, SCKF, NCKF and PF are shown in Table 2. Figures 4-6 show that the CKF, SCKF and NCKF can track the position, velocity and turn rate. However, the accuracy of NCKF outperforms that of the CKF and SCKF, especially in the position tracking and velocity tracking. This is because the NCKF can improve the performance by estimating the weights of NN, which in turn is used to modify the state estimate as the measurements are processed. Furthermore, a comparison of the Std and mean value shown in Table 2 provides the same conclusion: the NCKF is better than the CKF and SCKF under the Gaussian conditions. Figures 4-6 also show that the PF with 500 particles does not perform a good estimation for this application. Note that NaN represents Not-a-Number in MATLAB.
To test the robustness of NCKF algorithm, the measurement noise ' k;d was deliberately converted to a    Figure 6. RMSEs of the turn rate for CKF, SCKF, NCKF and PF. Previous literature [28,29] shows the PF diverges in non-Gaussian measurement noise assumption. Therefore, the proposed NCKF was only compared to CKF and SCKF in this robustness test. The RMSEs of the positions, velocity and turn rate are shown in Figures 7-9, respectively.
Equation (35) shows that the equivalent measurement noise variance R k of the above Gaussian mixture model was used in filters. Therefore, a mismatching exists between the true measurement variance and the assumed variance. Figures 7-9 show that the performances of CKF, SCKF and NCKF degrade in this situation. Moreover, the CKF diverges in position, velocity and turn rate estimation due to a mismatch between the true measurement noise and the non-Gaussian assumption. However, the NCKF can maintain a satisfactory performance in this scenario; it uses the MFNN to approximate the error caused by the mismatch mentioned above and modify the state estimation accordingly. Thus, the robustness of NCKF is better than those of the CKF and SCKF.

Conclusions
In this study, a NCKF algorithm was proposed to enhance the accuracy and robustness of CKF. In the proposed method, a MFNN was used to modify the state estimates and approximate the uncertainty of the system model; and the CKF was used to estimate the states and the weights of MFNN. The performance of the proposed method was compared with CKF, SCKF and PF via three numerical examples. The simulation results show that the accuracy and robustness of the NCKF is better than those of the CKF, SCKF and PF.
The success of the proposed method shows an encouraging direction for online estimation with NCKF algorithm. Although, the proposed method performs well in this study, the computational burden of NCKF is larger than CKF and SCKF. Therefore, the low computational burden of NCKF, and the performance between the NCKF and the robust filters will be studied in the future.    Figure 9. RMSEs of the turn rate for CKF, SCKF and NCKF (robustness test).