4.1. 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 . During the acceleration–deceleration process, the acceleration of the tag in the x-direction is zero, the acceleration in the y-direction is in the first 0.5 s and in the last 0.5 s. The process noise on the speed in each sampling is .
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
,
and
, and the distribution of the noise is shown in
Table 1, where
represents the channel between the
i-th anchor and the tag.
Under the above simulation conditions, the MCKF, VKW-MCKF, R-MEEKF and DSTMCKF are used for the comparative experiments. Assuming that there is only noise
, the significance level of the hypothesis testing is taken as 0.05, and then the threshold value
is calculated as 0.13. The state transition matrix
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
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
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 DSTMCKF 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.
Case (2): In Case (2), the noise
in
Table 1 occurs in the whole process and the noise
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.
Case (3): In Case (3), the noise
in
Table 1 occurs in the whole process and the noise
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
in
Table 1 occurs in the whole process, the noise
in
Table 1 occurs during iterations 500 to 600 and the noise
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.