1. Introduction
With the increasing need for indoor navigation and positioning services, wireless radio frequency positioning technologies are developing quickly [
1], such as ultra-wideband (UWB) [
2], Bluetooth [
3], Wi-Fi [
4], etc., which have a broader application prospect in society. Among them, UWB technology has received increasing attention for its low power consumption, high transmission rate, and strong penetration [
5]. Currently, the ranging accuracy of UWB can reach the decimeter level under Line-of-Sight (LOS) conditions [
6]. The filtering algorithm can improve the positioning accuracy of the tag in the case of movement. The Kalman filter (KF), particle filter (PF), extended Kalman filter (EKF), cubature Kalman filter (CKF), and unscented Kalman filter (UKF) have been applied to localization techniques [
7,
8,
9,
10]. Particularly, CKF has been shown to outperform EKF, UKF, and PF [
11].
When localization is performed in a real indoor environment, obstacles such as the human body, concrete walls, glass windows, metal plates, and wooden doors in the transmission path may block and reflect UWB wireless signals, which introduces Non-Line-of-Sight (NLOS) errors [
12]. Moreover, in practical applications, the measurement noise may change dynamically at different times, causing the performance of these filters to degrade and become non-convergent [
13]. NLOS identification and mitigation has been a research hotspot in the field of UWB localization, and many methods have been proposed to improve localization accuracy [
14]. Yang identified NLOS conditions by using the variance feature of the range information [
15], but this method requires multiple measurements for a location. In practice, tags are in constant motion, which cannot satisfy the usage condition of this algorithm. In [
16,
17], channel features are used to identify NLOS signals. Yang proposed an NLOS identification method based on a feature selection strategy by using an input vector machine (IVM) [
16]. Wei proposed a multi-input learning (MIL) neural network model based on the channel impulse response (CIR) and time-frequency diagram of CIR (TFDOCIR) to identify NLOS signals in UWB positioning systems [
17]. However, channel characteristics are affected by channel conditions and factors, such as the transmission distance and transmission power. Meanwhile, these methods require a large amount of training data and a high commutating power to analyze the signal channel statistics. Therefore, for real-time online applications in unknown environments, these methods suffer from poor real-time performance.
In most situations, NLOS measurements are assumed to be outliers in the locus filter, so they are directly excluded after identification [
18]. However, this approach limits the effectiveness of UWB measurements in dense and complex environments: If too many NLOS measurements are excluded, the geometry of the UWB system localization will be severely damaged, and the localization accuracy will be reduced or even unlocalizable. Meanwhile, in the process of target tracking, the randomness of the target movement results in the imprecision of the constructed model and the unknown statistical properties of the system noise [
19]. In this case, the filter may suffer from large state estimation errors and even cause divergence of the filter. Robust filtering and adaptive filtering are often introduced into filtering algorithms to improve the positioning accuracy of navigation [
20]. For example, Xu proposed an M-estimation-based robust adaptive multi-model combination navigation algorithm to quickly estimate the statistical properties of the measurement noise. In this algorithm, a model set adaptive adjustment strategy is adopted to make real-time corrections to the model transfer probability matrix, and an M-estimation-based robust Kalman filter is introduced to improve the robustness of filtering [
21]. Gao adaptively adjusted and updated the prior information through the equivalent weighting matrix and adaptive factors to resist the interference of system model errors on system state estimation, thus improving the accuracy of state parameter estimation [
22]. Zhao proposed a robust adaptive CKF (RACKF) to deal with the problem of an inaccurately known system model and noise statistics by introducing the adaptive factor and robust estimation theory [
23]. However, robust filtering and adaptive filtering are two opposite strategies, where the former suppresses the observed information error by the predicted value of the motion model, while the latter suppresses the kinematic projection error by the observed information. Besides, robust filtering and adaptive filtering cannot distinguish the sources of errors. If there are errors in the observed information when adaptive filtering is used or in the predicted information when robust filtering is used, the impact of errors on the positioning accuracy cannot be avoided. Therefore, it is necessary to establish a judgment criterion to evaluate the sources of errors and select an appropriate correction method for different sources of errors.
To identify the error sources and select a suitable strategy to alleviate the impact of errors on positioning accuracy, this paper proposes an improved robust adaptive cubature Kalman filter (IRACKF). The contribution of the paper can be summarized as follows:
The algorithm solves the problem of lack of real-time and applicability of traditional recognition schemes in practical applications. Compared with the traditional recognition scheme, the proposed algorithm processes the observation information sample by sample in real-time, so as to update the state of the propagation path simultaneously. At the same time, in practical application, the sliding window recognition scheme does not need to set the algorithm parameters with the change of the actual application scenario.
The algorithm solves the observation information variance problem by the polynomial fitting strategy, which overcomes the problem that the NLOS signal cannot be identified by the difference in the statistical characteristics of the receiver’s observation information in the dynamic environment.
In the application of the algorithm, we designed a stable and reliable selection mechanism based on a sliding window recognition scheme. The effectiveness of the proposed method and the designed structure is verified by high dynamic scene experiments.
The rest of the paper is organized as follows.
Section 2 explains the time difference of arrival (TDOA) observation model,
Section 3 describes the CKF model,
Section 4 introduces the IRACKF model in detail,
Section 5 presents the scenarios and observations of the simulation and real experiments, and finally,
Section 6 and
Section 7 describe the discussion and conclusions of the paper.
2. UWB Distance Difference Model
In the TDOA localization system, line-of-sight propagation refers to a propagation method in which radio waves propagate directly from the tag to the receiver within the distance between the tag antenna and the receiver antenna that can be “seen” by each other. In the case that three receivers have been used for tag positioning, the three hyperbolas will intersect at a point, which is the tag position. NLOS errors will produce a time delay phenomenon, so the TDOA hyperbolas will be shifted at this moment, as shown by the dashed line in
Figure 1. Meanwhile, the tag will be located in the area surrounded by dashed and solid lines, which will increase the tag positioning error.
Suppose there are
receivers distributed on a two-dimensional plane. The coordinates of the receivers are
. The coordinate of the tag is
. The true distance between the tag and the
i-th receiver is:
In the LOS condition, due to the random error, the observation distance from the
i-th receiver to the tag is:
where
is additional independent noise that obeys a zero-mean smooth Gaussian random process with a variance of
.
In the NLOS condition, there are obstacles between the direct distance from the receiver to the tag. Therefore, the signal cannot reach the tag through straight-line transmission but can only propagate through reflection or diffusion effects. The NLOS observation distance from the
i-th receiver to the tag is:
where
is the NLOS error that follows the normal distribution with a mean of
and a variance of
, and
> 0,
.
In this paper, the TDOA between the two receivers to the tag is multiplied by the speed of light to obtain the distance difference as the observed value:
3. Cubature Kalman Filter
Since Kalman introduced the “state space method” into the Gaussian filter and proposed the KF, the filtering methods in the Gaussian framework in a recursive form have emerged successively. For applications in nonlinear systems, the EKF is proposed to transform the conditions of linear systems in the KF into more general nonlinear systems, but the EKF is only applicable to weakly nonlinear systems [
24]. For strongly nonlinear systems, the Sigma point KF series of methods approximating the Gaussian probability density through deterministic sampling is often used, and one representative method UKF. The CKF proposed by Arasaratmam, a Canadian scholar in 2009, is based on the Sigma point filter and uses the spherical-radial integration criterion to numerically approximate the Gaussian integral and perform recursive state estimation. Compared with UKF, CKF has a stricter mathematical derivation and higher filtering precision.
Considering nonlinear discrete additive noise in the conventional case, the modeling of the positioning system is:
where
and
h are the nonlinear state transfer function and the measurement function, respectively.
and
are the system state vector and the measurement vector, respectively.
and
are the system process noise and the measurement noise, respectively, and they are independent of each other. The corresponding covariance matrices are
and
, respectively. The initial state of the system is
, which is uncorrelated with
and
.
is the initial covariance matrix.
3.1. Prediction Update
For the prediction update, the posterior density function of the system at moment is . The algorithm flow is as follows.
- (1)
Decompose the prediction error covariance array as:
where
is the square root coefficient of the covariance matrix.
- (2)
Calculate the cubature points as:
- (3)
Calculate the cubature points propagated through the nonlinear state transfer function as:
where
is the nonlinear state transition function.
and
are cubature points.
is the number of cubature points, which is twice the dimension of the state vector
according to the third-order cubature principle, i.e.,
.
is the basic cubature point set, and
is the
i-th column of
. The point set
can be expressed as:
- (4)
Calculate the state prediction values and the prediction covariance matrix as:
3.2. Measurements Update
- (1)
Decompose the prediction error covariance matrix as:
- (2)
Calculate the cubature points as:
- (3)
Calculate the cubature points propagated through the nonlinear measurement function as:
where
is the observation function.
- (4)
Calculate the predicted value of the measurement as:
- (5)
Calculate the innovation and innovation covariance matrix, respectively, as:
where
is the measured value of the system at the time of
.
- (6)
Calculate the mutual covariance matrix as:
- (7)
Calculate the filter gain , the state estimate , and the estimation error covariance matrix at the time of , respectively, as:
3.3. Error Analysis
It can be seen from Equation (20) that the state estimate consists of the priori state prediction and the posteriori measurement of the innovation feedback and . When the target motion model at moment does not match the established model or the target state changes abruptly, and when the sensor observation fails or is disturbed by uncontrollable factors, there is a large deviation between the observed value and the measured predicted value , which can be obtained by calculating the state predictions at moment through the nonlinear measurement function. Then, this deviation is reflected in the larger innovation at moment .
4. Improved Robust Adaptive Cubature Kalman Filter
When the NLOS signal is identified, the sensor observation data has low reliability, and the prediction information can be used to correct the observation data through the robust filter. However, when the NLOS propagation of the signal does not occur, the observation data has high reliability, so it can be used to improve the prediction information through the adaptive filter. To identify the error sources and select a suitable strategy to alleviate the impact of errors on positioning accuracy, this paper proposes the IRACKF algorithm, and the first step of the algorithm is to identify the presence of NLOS signals.
4.1. The Sliding Window Recognition Scheme Based on Polynomial Fitting
In practical applications, the time and frequency of NLOS signal appearance and disappearance are unknown. Thus, it is necessary to check the LOS/NLOS state of the propagation path at this moment for each observation. In this paper, the sliding window method is used to record
observations before each observation and calculate the variance of these
observations. Based on the difference in the variance characteristics of UWB signals in LOS and NLOS conditions, the LOS/NLOS state of the propagation path of the observed data at this moment can be determined. However, because the tags are in momentary motion and the true distance from each receiver to the tag is not constant, the variance of the observations could not be derived through direct calculation. Therefore, considering that the tag is in the state of momentary motion, this paper proposes a sliding window scheme based on polynomial fitting to identify NLOS signals, and the flow chart of this scheme is shown in
Figure 2.
The traditional identification scheme records
pieces of observation data first and then determines whether the propagation path is in the LOS or NLOS state at the next time by solving the variance of these data, as shown in
Figure 3. In this figure, the slash-filled part of
indicates that the recorded data are used for state checking. After the LOS/NLOS state is determined at moment
, the state will not change until the next state update at
. However,
and
in this method are only applicable to specific scenarios, and different values of
and
need to be selected as the scenario changes. Moreover, if the LOS/NLOS state of the propagation path changes while waiting for the state update, it is impossible to replace the appropriate filter, which results in a large error in the estimate.
In this paper, a sliding window identification scheme with real-time sample-by-sample processing and corresponding identification is designed, as shown in
Figure 4. The variance of the
pieces of data before each observation is solved to determine the LOS/NLOS state of the propagation path at this moment. The sliding window recognition scheme can respond quickly to changes in the scene, thus achieving real-time recognition when the LOS/NLOS state changes and overcoming the drawbacks caused by the periodic interval checking of the traditional recognition scheme.
However, the true distance from the receiver to the tag changes from time to time as the tag moves. To solve the variance of the observed data in this case, a polynomial fitting scheme is proposed in this paper. This scheme is first performed on the m pieces of data before each observation to find the motion law of the observation, after which the fitted value, i.e., the pseudo-true value of the observation, is calculated, and the variance of the observation is solved finally. The steps of the polynomial fitting scheme are as follows.
- Step 1:
The pieces of historical observations up to moment k are fitted to the h-order. The curve function can be denoted as , where is the coefficient vector of the polynomial fitting function.
- Step 2:
Substitute the abscissas of the pieces of data into the fitting function to obtain the fitted values corresponding to the data.
- Step 3:
The pseudo-error of the observed value is obtained by subtracting the fitted value obtained from the fitting function and the observed value. Then, the variance of the pseudo-error is calculated and compared with the threshold value to determine the LOS/NLOS state of the propagation path at moment . The threshold value is the average of the variance calculated from multiple observations of UWB receivers and the tag under LOS conditions.
4.2. Robust Cubature Kalman Filter
In the localization process of the UWB system, the propagation path in the NLOS state will bring large errors to the observation data. If the data are substituted into the filtering algorithm, which will seriously reduce the accuracy and reliability of the estimated value. In the CKF, the error of the observations only affects the measurement process of this update. Thus, as for the effect of NLOS errors on the positioning accuracy, only the measurement update part is adjusted by the robust filter, that is, only the autocorrelation covariance matrix of the observations in Equation (17) is adjusted.
where,
, and
is the robust factor.
The commonly used methods for calculating the resistance factor include the Huber method, Andrew method, IGGIII method, and Tukey method [
25]. For the case that the number of state parameters is larger than the number of observations in the UWB localization model of this paper, the statistics are obtained by using a single prediction residual value. Meanwhile, the expression of the equivalent weight matrix is established using the Huber method to ensure that the diagonal of the equivalence power array is not zero. The statistics obtained based on the prediction residuals are as follows:
where,
is the component corresponding to the predicted residual vector.
is the diagonal element of the autocorrelation covariance matrix of the observations before correction. The mean
of
is calculated by conducting several experiments in the LOS environment. Then, the robust factor is obtained as:
Let , where is the number of measured values.
4.3. Adaptive Cubature Kalman Filter
The robust cubature Kalman filter (RCKF) is developed based on the CKF by adding the robust factor to adjust the autocorrelation covariance matrix of the observations. When the NLOS state is not detected in the observations, the RCKF automatically degrades to the CKF. However, events occur when the target motion model does not match the established model or when the target state changes abruptly, leading to an inaccurate covariance matrix of the system noise. To improve the stability and accuracy of the filtering in such cases, an adaptive cubature Kalman filter (ACKF) is proposed by combining the Sage–Husa adaptive filter with CKF.
When the receiver in the tag propagation path is in the LOS state, the reliability of the observations is high. To suppress the kinematic projection error by using the observation information, this paper estimates the system noise covariance matrix in ACKF in real time.
where
.
is the forgetting factor with a value of 0.99.
4.4. Improved Robust Adaptive Cubature Kalman Filter
The pseudocode of the proposed IRACKF is shown in Algorithm 1.
Algorithm 1: IRACKF. |
Input: Initial state , sampling number T observation dimension n prediction noise covariance matrix Q, observation noise covariance matrix R, error covariance matrix of the priori state P, variance threshold Var_LOS, the average value of
in LOS environment D. |
Output: Estimate position and velocity
- 1:
- 2:
for t ← 2 to T do - 3:
← Read UWB observations
- 4:
// Calculate the variance of errors in UWB observations
- 5:
Var ← get_var
- 6:
// Prediction update
- 7:
// Calculate the state prediction values and the prediction covariance matrix - 8:
← get_pre()
- 9:
// Calculate the robust factor
- 10:
// Calculate the innovation and innovation covariance matrix
- 11:
)
- 12:
← identity matrixfor
- 13:
for j ← 1 to n do - 14:
if Var > Var_LOS - 15:
- 16:
- 17:
end if - 18:
j ← j + 1
- 19:
end for - 20:
// Measurements update
- 21:
if det<>1
- 22:
- 23:
←Mu_RCKF - 24:
else - 25:
←Mu_ACKF - 26:
end if - 27:
t ← t + 1
- 28:
end for
|
The flow chart of the IRACKF is shown in
Figure 5.
6. Discussion
In the process of target tracking and localization, the filtering algorithm is often susceptible to NLOS errors and inaccurate system noise covariance matrices. To identify the error sources and select a suitable filter for error handling, this paper proposes the IRACKF. In simulations and field experiments, the proposed algorithm can identify the LOS/NLOS states of the propagation path and select different methods to process NLOS errors and inaccurate covariance matrices, which improves the positioning accuracy of UWB systems in complex situations.
In a comparative test between the CKF and PF and UPF, the CKF can achieve better estimation accuracy regardless of position and velocity. Compared with PF and UPF, the CKF reduces the position error by 49.6% and 21.5% and the velocity error by 65.0% and 54.6%. In this paper, a sliding window scheme based on polynomial fitting, robust filtering, and adaptive filtering is added to the CKF. When both NLOS error and inaccurate system noise covariance matrices are present, compared with CKF, RCKF, ACKF, and RACKF, the proposed algorithm improves the localization accuracy by 52.6%, 38.0%, 45.1%, and 25.3%, respectively. Therefore, IRACKF can improve the localization accuracy of UWB systems. The results of field experiments indicate that the target trajectory solved by IRACKF is closer to the real trajectory than that of CKF, and the position error is reduced by 69.4%. Thus, the effectiveness of the IRACKF is further verified.
For NLOS errors and inaccurate system noise covariance matrices, robust filtering and adaptive filtering have been proposed. However, due to the indoor complex environment when the UWB system is actually used, the appearance of NLOS signals and the trajectory of tag movement are random and contingent, while different error types need to be processed by different schemes to reduce the impact of errors on positioning accuracy. The current filtering algorithms fail to analyze error sources when processing errors. Therefore, before error processing, this paper first analyzes the measured values of the receiver through a sliding window scheme based on polynomial fitting to identify the LOS/NLOS state of the signal propagation path. In this way, the error source is determined, and this scheme also overcomes the deficiency that the variance characteristics of the UWB signal cannot be applied in dynamic environments. Afterward, by using robust filtering and adaptive filtering to reduce the effect of NLOS error and inaccurate system noise covariance matrices on positioning accuracy, this paper establishes a selection mechanism to weaken the error effect for different error sources and improves the positioning accuracy of the UWB system.
However, there are still defects in the study. For example, in the simulation of NLOS signals, the probability density of NLOS error is set to Gaussian distribution with a mean value greater than 0. However, in practical applications, the NLOS error may obey exponential, uniform, Gaussian, or -distribution under different channel environments. Even if the NLOS error obeys Gaussian distribution, different application scenarios may result in different mean and variance values of the NLOS error. However, the variances are all significantly different from the measured values in the LOS state. Therefore, this paper conducts experiments on the DWM1000 UWB receiver to derive the probability density of its measured values in the NLOS state and use it to represent the distribution characteristics of the NLOS error.
The localization accuracy of UWB systems can meet the accuracy requirements in most situations. However, the combination of IMU, vision, or other sensors for navigation can significantly improve localization accuracy and stability. Therefore, to achieve better positioning performance, further research needs to be conducted to combine UWB with other sensors through filtering algorithms.