A Dynamic Self-Tuning Maximum Correntropy Kalman Filter for Wireless Sensors Networks Positioning Systems

To improve the accuracy of the maximum correntropy Kalman filter (MCKF) in wireless sensors networks (WSNs) positioning, a dynamic self-tuning maximum correntropy Kalman filter (DSTMCKF) is proposed, where innovation and the sensors information of the WSNs are used to adjust the noise covariance matrices, and the maximum correntropy criterion is the criterion for the filter’s optimality. By dynamically adjusting the noise covariance matrices, the DSTMCKF ensures that the correntropy distribution is accurate in the presence of non-Gaussian noise (NGN), thus improving its ability to handle the NGN. In simulation and real environment positioning experiments, the DSTMCKF is used to compare with the MCKF, variable kernel width–maximum correntropy Kalman filter (VKW-MCKF) and robust minimum error entropy Kalman filter (R-MEEKF). Among the four filters, the DSTMCKF has the highest accuracy, and the error of the DSTMCKF is reduced by 34.5, 42.9 and 40.0%, respectively, compared with the MCKF, VKW-MCKF and R-MEEKF in the realworld environment positioning experiment. The application of the DSTMCKF in WSNs positioning systems improves the stability of the control systems because of the rising positioning accuracy, which makes WSNs positioning systems more widely used in scenarios requiring high stability, such as automatic parking.


Introduction
With the development of sensors technology, wireless sensors networks (WSNs) positioning systems are widely used in factories, docks, warehouses and other places and have broad development prospects [1][2][3]. In recent years, Gulo et al. [4] and Duan et al. [5] have applied WSNs positioning technology to occasions other than industrial applications, such as mobile phone positioning and vehicle positioning, further improving the practicability of WSNs positioning technology. Because of a low cost and high positioning accuracy, the range-based positioning method has become the most shared WSNs positioning method. Authors such as Xiong et al. [6], Na et al. [7] and Nguyen et al. [8] have all adopted range-based positioning methods to effectively improve the positioning accuracy.
However, the range-based positioning algorithm is seriously affected by non-Gaussian noise (NGN) [9,10], which results in its inaccuracy in practical application. Huang et al. [11], Fang et al. [12] and Navon et al. [13] all pointed out that WSNs positioning systems are affected by various NGNs, which seriously reduce the positioning accuracy.
To suppress the influence of NGN, various robust Kalman filter methods are applied to WSNs positioning systems [5,14]. The classical robust Kalman filter includes the H∞ filter [15,16] and the strong tracking Kalman filter [17,18]. However, these filters are not effective in dealing with the noise in WSNs positioning problems, and the positioning accuracy decreases seriously.
In recent years, the maximum correntropy Kalman filter (MCKF) was proposed by Chen et al. [19], according to the information theoretic learning criterion. Compared with the traditional robust Kalman filter, the MCKF has a higher accuracy and has the ability to deal with various NGNs [20]. Owing to its excellent performance, the MCKF is rapidly applied to various systems [21,22]. However, in WSNs positioning systems, most of the NGN comes from the electromagnetic radiation of electronic equipment and non-line-ofsight signals due to occlusion and refraction. These noises are usually much larger than the Gaussian white noise in the channel, and the size and duration are difficult to predict. With the MCKF, it is hard to deal with these noises, so the filtering accuracy of the MCKF will be reduced in the WSNs positioning systems [23,24].
To improve the performance of the MCKF in WSNs positioning systems, a dynamic self-tuning maximum correntropy Kalman filter (DSTMCKF) is proposed. In order to deal with the non-Gaussian noise, a dynamic self-tuning (DST) algorithm is proposed to combine with the MCKF. The DST algorithm uses innovation and the information from sensors to modify the noise covariance matrices, and the MCKF uses a maximum correntropy criterion (MCC) for the filter's optimality.
By using the DST algorithm to adjust the noise covariance matrices in real time, the response speed and accuracy of the filter when encountering non-Gaussian noise are improved. Compared with the minimum mean squared error (MMSE) criterion, the maximum correntropy criterion has stronger robustness to ensure the convergence of the filter when encountering non-Gaussian noise. By combining the DST algorithm and the MCC, the DSTMCKF ensures that the correntropy distribution is accurate in the presence of NGN, thus improving its ability to handle NGN.
To verify the performance of the DSTMCKF, three filters, including the MCKF, variable kernel width-maximum correntropy Kalman filter (VKW-MCKF) and robust minimum error entropy Kalman filter (R-MEEKF), are used to compare with the DSTMCKF in the simulation experiments and real-world dynamic positioning experiments. The simulation experiments consider the different non-Gaussian noise in the motion state and observation, and the real-world dynamic positioning experiment is selected in the real office scene.
The rest of the paper is organized as follows: In Section 1, the principle of the MCKF is presented in detail, along with the limitations of the MCKF. In Section 2, a DSTMCKF is proposed, and the principle of the DSTMCKF is described. In Section 3, the simulation and real-world dynamic experiments results are presented, both comparing the DSTMCKF to other filters and exploring some of its qualities.

Principle of MCKF
To suppress the influence of NGN on positioning accuracy, the MCKF is used to deal with NGN and has achieved promising results. Compared with the MMSE, the MCC has a stronger robustness and lower risk when facing NGN [25]. Therefore, compared with the classical Kalman filter, the MCKF is more suitable for dealing with NGN [19].
The MCC is an optimal estimation criterion, also known as the maximum information criterion. For two variables X and Y whose joint distribution function is F XY (x, y), the definition of correntropy V(X, Y) is where E is the expectation operator and κ(X, Y) represents the kernel function of correntropy.
where G σ is the Gaussian function, e is equal to X − Y and σ is the bandwidth of the Gaussian kernel function.
When applying MCC to KF, a linear system is considered first. The state equation and observation equation of linear system are where x k ∈ m is the system state at the k-th sampling, w k is the process noise, y k ∈ n is the observation at the k-th sampling and v k is the observation noise. State transition matrix and observation matrix are F k ∈ m×m and H k ∈ m×n respectively. Then, the process noise covariance matrix and observation noise covariance matrices Q k and R k are In order to apply the MCC to Kalman filter, it is necessary to establish the correntropy model. The a priori estimate D k and a posteriori estimate W kxk|k in the Kalman filter are used as correlation variables in the correntropy model. Then, construct matrices D k and W k are where P k|k−1 is the a priori estimate of process noise covariance matrix. The prior estimation of the process noise covariance matrix P k|k−1 in this iteration can be calculated by using the state transition matrix F k and the posterior estimation of the process noise covariance matrix P k−1 obtained in the previous iteration. In addition, chol(x) is a Cholesky decomposition operator, which means Cholesky decomposition of x . In order to calculate the correntropy of D k and W kxk|k , E k needs to be calculated as wherex k|k is the a priori estimate of the k-th sampling. Then, the correntropy V(D k , W kxk|k ) of D k and W kxk|k is where e k (i) is the i-th element of vector E k . According to MCC, when V(D k , W kxk|k ) is the maximum,x k|k is the optimal value. To calculate the optimal value ofx k|k , fixed-point iteration method is used to calculatex k|k . The steps of MCKF are summarized as follows: (a) Prediction: where x k|k−1 is the prior estimate of the current iteration obtained by the state transition matrix F k and the state posterior estimation x k−1|k−1 of the previous iteration.
(d) The judgement criterion for iteration stop is where ε is the error threshold. It can be seen from document [19], to ensure the accuracy and numerical stability of the algorithm, the value of ε is 10 −4 in this paper. When Equation (16) holds, the fixed-point iteration is stopped; otherwise, continue with step (c).
(e) Update the filtering results and prepare for the next iteration: Through the above steps, the state with maximum correntropy is estimated. MCKF replaces MMSE criteria with MCC, which has higher robustness when the noise size cannot be determined. However, MCKF has limitations in practical application, which result in underdeveloped filtering effect and even divergence of filtering results.

Limitations of MCKF
In practical application, when the noise type or target motion state is multiple, the filtering accuracy of the MCKF will decrease to a certain extent. In order to explain this phenomenon, a situation is considered when the MCKF is working properly [26].
Considering that the a priori estimate and observation measurement are only one dimension. Supposing the state prior estimate x k|k−1 is 40, the state observation value y k is 60, process noise covariance matrix P k|k−1 is 6, observation noise covariance matrix R k is 1 and the value of Gaussian kernel σ is 5. Where P k|k−1 and x k|k−1 are the prior estimators of the current iteration obtained by the state transition matrix F k and the posterior estimators of the previous iteration, and the values are not affected by the observation noise of the current iteration.
If the values of the estimated noise covariance matrices P k|k−1 and R k are not much different from the values of the noise covariance in reality, the distribution of correntropy is shown in Figure 1a. The correntropy has only one maximum value; hence, the fixed-point iteration ensures convergence to the point with maximum correntropy. In this case, MCKF has strong robustness and has a better ability to deal with NGN.
On the contrary, when the MCKF is interfered by noise of an unpredictable size, the actual observed noise covariance is inconsistent with R k . At this time, the observation y k will also change due to the influence of observation noise. If the noise further increases, the difference between state a priori estimation and state observation will further increase.
Assuming that the state view measurement is 80 and other variables remain unchanged, the distribution of correntropy is shown in Figure 1b There are three extreme points in the solution space of the fixed-point iteration algorithm under these conditions, which do not satisfy the iteration convergence condition and provoke a large error in the calculation results. Thus, when the observation noise or the system motion state is multiple, the performance of the MCKF is underdeveloped.
One reason behind this phenomenon is that the MCKF is sensitive to the values of P k|k−1 and R k , but the values cannot be dynamically corrected. When the values of P k|k−1 and R k are inconsistent with the reality, there will be errors in the distribution of correntropy, resulting in the degradation of the MCKF performance.
Another reason is that the fixed-point iteration is difficult to converge to the maximum correntropy point when the observation noise or the system motion state is multiple. Under these conditions, there are multiple extreme points in the solution space, which do not meet the convergence condition of the fixed-point iteration. The fixed-point iteration method may converge to the extreme point far away from the maximum correntropy point, resulting in a large error.
To solve this problem, it is necessary to modify P k|k−1 and R k in each iteration [11,27]. The adaptive algorithms realize the dynamic correction of parameters to a certain extent, and yet when dealing with NGN in WSNs positioning systems, the adaptive algorithm has a slow response speed and insufficient robustness. Therefore, several algorithms have been proposed to improve the filtering accuracy of the MCKF in recent years.

Improved Algorithm of MCKF
With the aim of improving the performance of the MCKF, several algorithms have been proposed in recent years. There are two common ways to improve the accuracy: one is to adjust the Gaussian kernel bandwidth and the other is to optimize the maximum correntropy criterion.
Much of the research has examined how to improve the filtering precision of the MCKF by using a modified Gaussian kernel bandwidth, and the variable kernel width-maximum correntropy Kalman filter (VKW-MCKF) proposed by Huang et al. [24] has achieved positive results. The adaptive algorithm is used to adjust the Gaussian kernel bandwidth in the VKW-MCKF, so that the Gaussian kernel bandwidth can be adjusted adaptively with the size of the noise, which effectively improves the accuracy and robustness of the MCKF. However, the VKW-MCKF does not have the ability to adjust the noise covariance matrix, so there is still an inaccurate distribution of the correntropy when the noise does not match the estimation.
In recent years, a series of studies have expected to improve the filtering accuracy of the MCKF by optimizing the maximum correntropy criterion, which the robust minimum error entropy Kalman filter (R-MEEKF) proposed by Chen et al. [23] performed favorably. The R-MEEKF optimizes the maximum correntropy principle to the minimum entropy principle, which further improves the ability of the filter to process non-Gaussian noise. Nonetheless, the R-MEEKF algorithm requires a trade-off between the convergence speed and steady-state error, and it is often difficult to guarantee that both performances meet the requirements.
In summary, although several algorithms have improved the filtering accuracy of the MCKF in recent years, none of the above improved algorithms can solve the problem that the MCKF is difficult to handle the variable process and observation noise. The above improved algorithms are difficult to apply in positioning systems with complex and variable noise; hence, a dynamic self-tuning algorithm is proposed to adjust the values of the noise covariance matrix P k|k−1 and R k .

Determination of Noise Type for WSNs Positioning
In order to dynamically adjust P k|k−1 or R k , it is necessary to judge whether NGN appears in the observation. A WSNs positioning quality index is proposed, which is calculated according to the distance information between the tag and anchors.
The quality index is obtained by trilateral positioning method, and the principle is shown in Figure 2. In Figure 2a, (X 1 , Y 1 ), (X 2 , Y 2 ) and (X 3 , Y 3 ) are the coordinates of the three anchors. d 1 , d 2 and d 3 are the distances to tag measured by the three anchors [28,29].
As shown in Figure 2b, when there is an error in the measured distance, the three circles in the triangulation positioning method cannot intersect at the same point. At this time, the distanced i from the positioning result (X T , Y T ) to the Anchor i is not equal to the measured distance d i . Utilizing the difference betweend i and d i , a WSNs positioning quality evaluation index is proposed. The positioning quality index L is where N is the number of anchor used for positioning. The L obtained by the k-th sampling is denoted as L k . When the L k is large, it indicates that the difference betweend i and d i is large in this sampling. In addition, the greater the difference betweend i and d i , the less reliable the positioning result. At this time, NGN appears in the observation, and R k needs to be adjusted.
From another perspective, if (X T , Y T ) is taken as the unbiased estimation of the positioning result, L k is the mean ranging error of each positioning result. To test whether the ranging error satisfies the hypothesis, the hypothesis testing method is used to determine whether L k is within the rejection domain. When L k is not in the rejection domain, it means that the ranging error conforms to the hypothesis; otherwise, it means that the ranging error does not conform to the hypothesis. The critical point of the rejection domain is the threshold L thr , so when L k is greater than L thr , it is considered that the ranging error does not conform to the hypothesis, and there is NGN in the observation.

Dynamic Self-Tuning Algorithm
After determining whether the NGN exists in the observation, the next step is to correct the noise covariance matrices. A dynamic self-tuning (DST) algorithm is presented, which uses innovation to adjust the value of P k|k−1 or R k . Record innovation z k as: When the estimation of the model is accurate and the noise meets the Gaussian distribution, the expectation C k of innovation covariance is shown in Equation (22): In the actual filtering process, the covarianceC k is calculated in Equation (23). In addition, according to [30], after weighing the robustness of the algorithm and the response speed to NGN, the forgetting factor λ is taken as 0.95.
When the estimation of the model is accurate and the noise meets the Gaussian distribution, the value ofC k is similar to C k . On the contrary, when the motion state changes or there is NGN in the observation, the difference betweenC k and C k will increase significantly. At this time, P k|k−1 or R k needs to be tuned to forceC k equal to C k .
If the L k or L k−1 in Section 3.1 has an increased value than that of the threshold L thr , there is NGN in the observation, so it is necessary to adjust R k toR k , forcing Equation (24) to hold.C Note that the intermediate variable N k is: Equation (24) holds whenR k is equal to N k . In order to ensure thatR k is positive definite, the diagonal element of R k is set by the expansion coefficient β i|k , and then the value of non-diagonal element is corrected by using the correlation coefficient, as shown below: where n ij and r ij are the elements of row i and column j of matrices N k and R k , respectively. When the L k or L k−1 in Section 3.1 is smaller than the threshold L thr , the possibility of NGN appearing in the observation is little or nothing. If the difference between x k|k−1 and y k is still large under these condition, the motion state has changed, and P k|k−1 needs to be corrected toP k|k−1 .
Theoretically,P k|k−1 needs to make Equation (28) valid. However, because H k is not necessarily reversible, the value ofP k|k−1 cannot be directly calculated by Equation (28). Therefore, the expansion coefficient α k is introduced to adjustP k|k−1 , as shown in Equations (29) and (30): Based on the above steps, a DST algorithm is proposed, as shown in Figure 3. Because there is a possibility of misjudgment when only L k is used, both L k and L k−1 are required to be smaller than L thr to ensure the robustness of the algorithm.
The DST algorithm uses sensors information as a priori information to effectively adjust the noise covariance matrices. When the noise is non-stationary, the DST algorithm can correct the noise covariance matrix to be closer to the current noise in real time. This means that the DST algorithm can still ensure the accurate estimation of the noise covariance matrix in the presence of NGN. Combined with the DST algorithm, the robustness and accuracy of the MCKF will be improved significantly.

Dynamic Self-Tuning Maximum Correntropy Kalman Filter
The DST algorithm is combined with the MCKF, and then the dynamic self-tuning maximum correntropy Kalman filter (DSTMCKF) is proposed. The DST algorithm is used for correcting the values of P k|k−1 or R k firstly. Then, the modified noise covariance matrices are used for the Kalman filter, and the filter resultx k|k (0) is used as the starting point of the fixed-point iteration.
When the estimates of P k|k−1 and R k are close to the true value, the value ofx k|k (0) is very close to the maximum correntropy point. Takingx k|k (0) as the starting point of the fixed-point iteration ensures that there is only one maximum value in the solution space of the fixed-point iteration. Finally, the state quantity with the maximum correntropy is calculated by using the fixed-point iterative algorithm, which is the filtering result of DSTMCKF. The above process is expressed as Equations (31) to (48): (a) Prediction: (b) Adjust noise covariance matrix by DST algorithm: IF L k ≥ L thr |L k−1 ≥ L thr : If L k < L thr & L k−1 < L thr : (c) Calculation of fixed-point iteration starting point by KF: (d) Parameters required to calculate MCKF: (e) Fixed-point iteration: (f) When Equation (53) holds, the fixed-point iteration is stopped; otherwise, continue with step (e): According to the above steps, the filtering result of DSTMCKF is obtained. The process of DSTMCKF is also summarized as shown in Figure 4, and DST algorithm is in Figure 3. When combined with the DST algorithm, the ability of the MCKF to process NGN is theoretically improved. The noise covariance matrices, which can be dynamically corrected with the noise size, enable the DSTMCKF to have higher accuracy and robustness than the MCKF. Compared with the VKW-MCKF, the DSTMCKF still works well when the noise covariance matrices estimation is inaccurate. The VKW-MCKF, which can only adjust the size of the Gaussian kernel bandwidth, is theoretically less efficient than the DSTMCKF when estimating the noise covariance matrices inaccurately. In addition, compared with the R-MEEKF, the DSTMCKF does not need to balance accuracy with the response speed and has stronger robustness in theory.

Simulation of Indoor Positioning Scene and Analysis of Filtering Results
In order to verify the performance of the DSTMCKF in WSNs positioning systems, the shared situations in the WSNs positioning systems are considered for simulation firstly. Two motion states and three kinds of noise between the anchors and tag are considered.
The simulation sampling frequency is set to 100 Hz. The two motion states are the uniform linear motion process and the acceleration-deceleration process. During the uniform linear motion process, the speed of the tag in the x-direction is 1 m/s, the speed in the y-direction is 0 m/s and the process noise on the speed in each sampling is ω k ∼ N(0, 0.01). During the acceleration-deceleration process, the acceleration of the tag in the x-direction is zero, the acceleration in the y-direction is −5 m/s 2 in the first 0.5 s and 5 m/s 2 in the last 0.5 s. The process noise on the speed in each sampling is ω k ∼ N(0, 0.025).
The simulation environment is shown in Figure 5. The simulation uses three anchors with coordinates of (0,0), (20,0) and (10,17.32) to form an equilateral triangle with a side length of 20 m. There are three kinds of shared noises between the anchors and tag. Note that the three kinds of noise are S 1 , S 2 and S 3 , and the distribution of the noise is shown in Table 1, where A i represents the channel between the i-th anchor and the tag.  Table 1. Three kinds of noise between the tag and the anchors.

Noise Distribution (m) Channel with Noise
Under the above simulation conditions, the MCKF, VKW-MCKF, R-MEEKF and DSTM-CKF are used for the comparative experiments. Assuming that there is only noise S 1 , the significance level of the hypothesis testing is taken as 0.05, and then the threshold value L thr is calculated as 0.13 . The state transition matrix F k is obtained according to the kinematic characteristics of the simulation object, as shown in Equation (54). Because the WSNs can only measure the position of the simulation object, the observation matrix H k is shown in Equation (55).
Four cases are discussed in the simulation experiment, as shown below: Case (1): In Case (1), there is an acceleration-deceleration phase and noise S 1 in Table 1. The Gaussian kernel σ of the MCKF, R-MEEKF and DSTMCKF is 1.2, and because the VKW-MCKF will diverge when the Gaussian kernel σ is 1.2, the Gaussian kernel σ of the VKW-MCKF in the figure is 5.0. The simulation sampling results and experimental results are shown in Figure 6, where Figure 6e is the cumulative distribution function (CDF) of each filter. The experimental results indicate that when the motion states are multiple, the DSTM-CKF has the highest accuracy, while the filtering accuracy of the MCKF has decreased to a certain extent. In order to discuss the influence of bandwidth σ on the filtering results, the value of σ is modified, and the results are shown in Table 2.
When the value of σ is small, the dynamic tracking ability of the MCKF is underdeveloped. In addition, the error is large or even divergent when the motion state is multiple. With the increase of σ, the MCKF gradually converges to KF, and the dynamic performance is improved.
The response speed of the VKW-MCKF and R-MEEKF is improved to some extent compared with the MCKF, so the positioning accuracy is higher in the presence of multiple motion states. However, because neither of the two algorithms have the ability to adjust the noise covariance values adaptively, the accuracy decreases when the observed noise does not match the estimation.
For the DSTMCKF, a small σ also leads to a decrease in the dynamic performance, and an increase of σ will invalidate the MCC. Thus, the DSTMCKF will perform best only when σ is moderate. Nonetheless, the dynamic tuning of parameters reduces the sensitivity of the DSTMCKF to σ, and the RMSE of the DSTMCKF changes little when σ changes.  (2), the noise S 1 in Table 1 occurs in the whole process and the noise S 2 in Table 1 occurs during iterations 500 to 600 s. The Gaussian kernel σ of the MCKF, R-MEEKF and DSTMCKF is 1.2. In addition, because the VKW-MCKF will diverge when the Gaussian kernel σ is 1.2, the Gaussian kernel σ of the VKW-MCKF in the figure is 5.0. The simulation sampling results and experimental results are shown in Figure 7.
The DSTMCKF performs better than the MCKF when σ is 1.2. However, because the motion state is single at this time, σ takes a smaller value to improve the performance of the MCKF. The experimental results are shown in Table 3. When σ is small enough, the accuracy of the MCKF is improved to a certain extent. Nonetheless, to ensure the dynamic performance of the filter, it is difficult for σ to obtain such a small value. Due to the variable bandwidth of the Gaussian kernel, the VKW-MCKF has a better ability to deal with NGN in observation, and the positioning accuracy is almost the same as that of the DST-MCKF. The steady-state error of the R-MEEKF is lower than that of the MCKF, but the corresponding convergence speed is slower, and the anti-jamming ability is underdeveloped; therefore, the positioning accuracy of the R-MEEKF is not better than the MCKF. The DSTMCKF has the ability to adjust the noise covariance matrices during operation; hence, it has a better ability to handle the NGN in the observations and has the highest accuracy.  Table 1 occurs in the whole process and the noise S 3 in Table 1 occurs during iterations 700 to 800. The Gaussian kernel σ of the MCKF, R-MEEKF and DSTMCKF is 1.2. However, because the VKW-MCKF will diverge when the Gaussian kernel σ is 1.2, the Gaussian kernel σ of the VKW-MCKF in the figure is 5.0. The simulation sampling results and experimental results are shown in Figure 8. It can be seen from the figure that in case (3), the accuracy of the MCKF is also lower than that of the DSTMCKF. And not similar to case (2), the performance of the MCKF is not improved by reducing the value of σ, as shown in Table 4. In Table 4, even if σ is small enough, the MCKF will be severely affected by the noise. Conversely, the DSTMCKF still ensures a high accuracy no matter how the value of σ changes. This means that the DSTMCKF will still converge when the motion state changes and has higher robustness and numerical stability than the MCKF. This means that the DSTMCKF has a stronger performance in processing NGN with offset.
The VKW-MCKF has a high accuracy when the Gauss kernel bandwidth σ is small, yet the numerical stability of the VKW-MCKF is underdeveloped. In practice, the Gauss kernel bandwidth σ is usually larger. The R-MEEKF is relatively insensitive to the change of the Gaussian kernel σ and has strong numerical stability, but the accuracy of the R-MEEKF is the lowest.
Case (4): In Case (4), there is an acceleration-deceleration phase in the motion state. The noise S 1 in Table 1 occurs in the whole process, the noise S 2 in Table 1 occurs during iterations 500 to 600 and the noise S 3 in Table 1 occurs during iterations 700 to 800. The Gaussian kernel σ of the MCKF, R-MEEKF and DSTMCKF is 1.2. In addition, because the VKW-MCKF will diverge when the Gaussian kernel σ is 1.2, the Gaussian kernel σ of the VKW-MCKF in the figure is 5.0. The simulation sampling results and experimental results are shown in Figure 9.
When the motion state and noise type are multiple, it is difficult for σ to obtain an appropriate value to make the MCKF have better accuracy. In order to discuss the influence of bandwidth σ on the filtering results, the value of σ is modified, and the results are shown in Table 5. When the value of σ is small, the dynamic tracking ability of the MCKF is underdeveloped. On the contrary, when the value of σ increases, the ability of the MCKF to deal with NGN decreases. Therefore, when σ is equal to 2.0, the MCKF has the best accuracy. Nevertheless, the DSTMCKF has the ability to self-tune parameters, and it has the highest accuracy no matter how σ changes. The DSTMCKF also performs better in a simulation than the VKW-MCKF and R-MEEKF.
In addition, in each iteration, the averaged simulation time for the DSTMCK, MCKF and Kalman filter is 0.144, 0.096 and 0.025 ms, respectively. For the control systems, in order to meet the control requirements, it is required that the frequency of the uploading positioning results can reach more than 100 Hz [31]. Although the DSTMCKF is more computationally burdensome, it is still within the acceptable range. In summary, the DSTMCKF outperforms the MCKF and its improvement method in all four cases and effectively handles situations where there is no single motion state or noise type. Meanwhile, the influence of σ on the DSTMCKF is limited, which indicates that the DSTMCKF has better numerical stability and robustness than the MCKF. The simulation results show that the DSTMCKF is more suitable for WSNs positioning systems than the MCKF and its improvement method.

Application in Office Indoor Environment
In order to prove that the DSTMCKF is applied to the actual WSNs positioning systems, experiments are carried out with an ultra-wideband (UWB) positioning network in the real environment, and the experimental environment in the real world is shown in Figure 10. The indoor positioning environment selected in this experiment is a common office environment, with an area of about 10 × 7.5 m 2 . In the experiment, three UWB anchors and one UWB tag are selected to form a UWB positioning network. The positions of the three anchors are shown in Figure 11a, respectively, (0, 0), (8.9, 0) and (4.45, 7.4). The tag is placed on the robot and travels around the indoor aisle. There are several mark points in the room, and the robot counts the time when passing through the mark points.  The positioning result of the UWB is affected by various NGNs. Most of these NGNs come from the electromagnetic radiation of electronic equipment and non-line-of-sight signals due to occlusion and refraction. To deal with these NGNs, the VKW-MCKF, R-MEEKF, MCKF and DSTMCKF are used in the experiment, and the results are shown in Figure 11b-d.
It is seen from the figure that when NGN does not exist, the performance of the three filters is almost the same. When NGN exists, the accuracy and robustness of the DSTMCKF are better than the MCKF, VKW-MCKF and R-MEEKF. The RMSE and maximum error (ME) of the three filtering results are shown in the Table 6. The experiment results indicate that the DSTMCKF also has better performance than the MCKF and its improvement method, and the error is reduced by 34.5% compared to the MCKF. To sum up, the DSTMCKF solves the problem of the underdeveloped performance of the MCKF in the noise type or motion state to a certain extent. It has a higher accuracy and robustness and significantly improves the positioning accuracy of the systems in the actual WSNs positioning systems.

Discussion
The range-based positioning method is the most shared positioning method in WSNs positioning systems, and the positioning results are affected by NGN [32][33][34][35][36]. To improve the accuracy of WSNs positioning systems, a DSTMCKF is proposed. Four simulation scenarios are considered to test the performance of the DSTMCKF, and the DSTMCKF has a significantly improved performance in various scenarios compared to other common filtering algorithms. To further prove the reliability of the DSTMCKF, the algorithm is used in real-world indoor scenes. The results show that the DSTMCKF has a higher accuracy than other filtering algorithms, can adapt to a complex noise environment in real scenes and effectively improves the accuracy of a WSNs positioning system.
The main idea of this paper is to improve the accuracy of a WSNs positioning system with a DSTMCKF. We mainly discuss the effects of the non-Gaussian process and observation noise on the positioning results and use the DSTMCKF to mitigate these effects. Because the NGN in the real-world scene is not as extreme as the NGN in the simulation scene, the advantages of the DSTMCKF are not as obvious as those in the simulation experiments. If the positioning experiments can be conducted in more complex indoor scenes, the advantages of the DSTMCKF will be further highlighted. In future work, we plan to investigate the improvements and extensions of the method for determining the type of noise. This helps reduce the risk of filter divergence due to misidentified noise types, improves filter accuracy in complex environments and enhances the robustness of the filter.

Conclusions
A dynamic self-tuning maximum correntropy Kalman filter is proposed to improve the performance of an MCKF. The DSTMCKF realizes the dynamic self-tuning of noise covariance matrices on the basis of innovation and a priori information from sensors. Applying the adjusted noise covariance matrices to the MCC effectively improves the performance of the MCKF when there is NGN or a motion state that does not conform to the estimate. In this way, the DSTMCKF solves the problem that the MCKF performs underdeveloped when there is NGN or a motion state that does not conform to the estimate. The simulation and experiments in the real-world environment indicate that the DSTMCKF also has a better performance than the MCKF, and the error of the DSTMCKF is reduced by 34.5, 42.9 and 40.0%, respectively, compared with the MCKF, VKW-MCKF and R-MEEKF in the real-world environment.
The experimental results prove that the DSTMCKF improved the response speed to NGN and the accuracy by using the DST algorithm to adjust the noise covariance matrices in real time. It also proves that the DSTMCKF improved the ability to process non-Gaussian noise by combining the DST algorithm with the MCKF.
The proposed DSTMCKF improves the filter precision in a WSNs positioning system, which improves the positioning accuracy of the WSNs positioning system. A higher positioning accuracy brings more scenarios for WSNs positioning systems. This means that WSNs positioning systems using a DSTMCKF are qualified for use in scenarios with higher accuracy requirements, such as automatic parking.