Next Article in Journal
Data-Driven Estimation of a Driving Safety Tolerance Zone Using Imbalanced Machine Learning
Next Article in Special Issue
Optimal Tasking of Ground-Based Sensors for Space Situational Awareness Using Deep Reinforcement Learning
Previous Article in Journal
Improved LDTW Algorithm Based on the Alternating Matrix and the Evolutionary Chain Tree
Previous Article in Special Issue
Attitude Uncertainty Analysis of a Three-Vehicle Constrained Formation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Technical Note

Adaptive Lag Smoother for State Estimation

1
Department of Intelligent Machines & Communication Systems, CSIR—Central Scientific Instruments Organisation, Chandigarh 160030, India
2
Department of Aerospace and Mechanical Engineering, University at Buffalo, The State University of New York, Buffalo, NY 14260-4400, USA
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(14), 5310; https://doi.org/10.3390/s22145310
Submission received: 3 June 2022 / Revised: 11 July 2022 / Accepted: 13 July 2022 / Published: 15 July 2022
(This article belongs to the Special Issue Attitude Estimation Based on Data Processing of Sensors)

Abstract

:
Fixed-lag smoothing has been used across different disciplines for offline analysis in many applications. With rising computational power and parallel processing architectures, fixed-lag smoothers are increasingly integrated into online processing system with small delays. This delay is directly related to the lag-length used in system design, which needs to be chosen appropriately. In this work, an adaptive approach is devised to choose an appropriate lag-length that provides a good trade-off between accuracy and computational requirements. The analysis shown in this paper for the error dynamics of the fixed-lag smoother over the lags helps in understanding its saturation over increasing lags. In order to provide the empirical results, simulations are carried out over a second-order Newtonian system, single-axis attitude estimation, Van der Pol’s oscillator, and three-axis attitude estimation. The simulation results demonstrate the performance achieved with an adaptive-lag smoother as compared to a fixed-lag smoother with very high lag-length.

1. Introduction

State estimation approaches for obtaining estimates from their noisy measurements have been an active research area for decades in applications ranging across control, guidance and communication. Kalman filters have been very popularly used for estimating the state of the multi-dimensional process with an underlying assumption of Gaussian noise. Several filtering approaches have been discussed in the literature towards estimating the true state of a system that is non-linear and added with non-Gaussian distribution of noise as well [1,2,3]. Along with this, some of the research articles have aimed at improved estimation with uncertain system models and noise interference, such as interactive multi-model methods [4] and smooth variable structure filter [5]. However, the ability of these filters cannot substitute for applications that require post-processing of past information to improve accuracy and can only be done by smoothers. Smoothing approaches have been formulated as a specific solution to the Gaussian process and can be divided into essentially three types: fixed-point, fixed-interval or fixed-lag smoothing [6]. Of these three smoothers, fixed-lag smoothing is often preferred over the other two because it can process the incoming data in an online fashion [7]. Fixed-lag smoothing leads to improved accuracy at the cost of a fixed delay between measurements associated with a signal and its estimate [8]. Although early realizations of fixed-lag smoothers were unstable, this issue was later resolved by designing them as a finite-dimensional linear system [9]. Kim proposed finite memory-based fixed-lag smoothers that use only the most recent finite measurements in the window, which is less complex than the traditional fixed-lag smoother [10]. Chen et al. proposed a smooth variable structure smoother that is based on a smooth variable structure filter and aims at overcoming the uncertainties in the system model [11]. Recently, Alenlov and Olsson proposed a design framework by which the particle filter’s lineage degeneracy problem can be solved using a fixed-lag smoother [12]. In a particle filter-based smoother, if the lag-length is small, the forgetting tendency of the model does not kick in, whereas if the lag-length is large, the estimate will lead to high variance. However, they cannot be translated for the case of a simple Kalman filter-based fixed-lag smoother as the one proposed here.
Fixed-lag smoothers have been used for identifying time-varying process models based on input–output observations [13], vehicle side slip angle estimation [14], gravity anomaly estimation [15,16] and pre-processing of geophysical data [17]. The fixed lag smoothers marginalize the old data in the localization pipeline for fusing information from different sensors such as inertial sensors, visual camera [18], ultra-wide band location systems [19], indoor localization using multiple sensors [20], visible light positioning using a photodiode and camera [21] and target tracking in a wireless network environment [22]. The fixed-lag smoothers have also been applied in the case of out of sequence measurements to improve tracking accuracy of incoming targets and increasing the probability of engaging targets [23]. Fixed-lag smoothing has also been popular in the field of tracking a maneuvering target with different motion models such as constant velocity and constant acceleration, and accordingly devise different lag-lengths based on their complexity [24]. Duong et al. applied the smoothing operation for reducing the error built up during the integration of GNSS and camera for motion estimation [25]. The regression problem can also be reformulated as a state estimation problem and solved using smoothers for a specific family of covariance function wherein the computational complexity grows only by O ( n ) [26,27].
Although several research works have been carried in the area of fixed-lag smoothers, as per the authors’ knowledge, none of them are aimed at finding a suitable lag-length for a given system model. It is hypothesized here to determine a suitable lag-length, beyond which a marginal improvement occurs in the estimation accuracy and is therefore not worth the computational complexity involved in going beyond this specific lag-length. To the best of our knowledge, we provide the first mechanism of adaptively selecting a lag-length for Kalman filter-based smoothers that varies with the system model and noise parameter. It is a simple, yet powerful, fixed-lag smoother modification that helps in achieving confidence in the estimated output. Similar to the filters, smoothers also have initial errors and stochastic errors. Once the transient errors are handled with the initial few lags, only errors due to the noise term remain, resulting in persistent errors. The dynamics of the fixed-lag smoother error is therefore analyzed here to provide a foundation for selecting an appropriate lag value. The task of determining suitable lag-length after which there is only a minimal change in the trace of error covariance is the main novelty of this work. With the help of Monte-Carlo simulation on different system models, the estimation accuracy achieved for a smoother with adaptive lag length is found to work similar to that of smoothers with very high lag length. The remainder of this paper is organized as follows. In Section 2, the fixed-lag smoother equations are defined. Section 3 presents the convergence analysis of several examples, as well as the selection of an appropriate lag value. Finally, Section 5 concludes the paper.

2. Fixed-Lag Smoother and Its Dynamic Error

Consider a linear discrete time system given by the following equations:
x k = F k 1 x k 1 + w k
z k = H k x k + v k
Here, x k is the system state at the k th time instant, F k and H k are the state transition matrix and measurement output matrix, respectively, z k is the measurement at the k th time instant, and w k and v k are the process and measurement noise terms, respectively, which are assumed to be zero-mean Gaussian white-noise uncorrelated processes. Here, Q k = E ( w k w k T ) is the process noise covariance matrix and R k = E ( v k v k T ) is the measurement noise covariance matrix.
The fixed-lag smoother is an optimal smoother that estimates the system state at the ( k N ) th time instant given measurements until time k, and a fixed lag of N. It is therefore desired to obtain the state estimate denoted by x ^ k N , k at each time instant, given the measurements, i.e.,  z 1 , z 2 , , z k . This is represented mathematically as x ^ k N , k = E ( x k N | z 1 , z 2 , , z k ) . The augmented state vector at the k th time instant with a window size N includes N-lagged states represented as: X k = [ x k T , x k , 1 T , , x k , N + 1 T ] T . Here, x k , m is defined as the state x k m propagated with the identity transition matrix to time k. With this definition, the augmented system X k + 1 = [ x k + 1 , 0 T , x k + 1 , 1 T , , x k + 1 , N + 1 T ] T is defined as
X k + 1 = F k 0 0 I 0 0 0 I 0 ϕ k X k + I 0 0 w k
z k = H k 0 0 H k X k + v k
The state transition matrix and the sensitivity matrix for the augmented system are represented by Φ k , and H k , respectively. These individual states in X k are defined through X k = [ x k , 0 T , x k , 1 T , , x k , N 1 T ] T such that the second subscript represents the lag-length.
The Kalman filter estimate for the system is given as
X ^ k + 1 = Φ k X ^ k + L k ( z k H k X ^ k )
Here, X ^ k + 1 = [ x ^ k + 1 T , x ^ k , k T , , x ^ k N , k T ] T and X ^ k = [ x ^ k T , x ^ k 1 , k 1 T , , x ^ k N 1 , k 1 T ] T are the system states at the k + 1 th and k th time instants, respectively. The individual elements of the augmented system state can therefore be represented in a filtering framework for the j th lag as
x ^ k j , k = x ^ k j 1 , k 1 + L k , j + 1 ( z k H k x ^ k )
The matrix L k in Equation (3) is the smoother gain matrix with each of its components, i.e.,  L k , j , corresponding to the gain matrix of the individual system states of X ^ k defined as
L k = L k , 0 L k , 1 L k , N + 1 = F k P k 0 , 0 H k T P k 0 , 0 H k T P k 0 , N H k T ( H k P k 0 , 0 H k T + R k ) 1 .
Here, R k = E ( v k v k T ) is the measurement noise covariance matrix. It is seen that the estimate of x k + 1 , N + 1 is equal to the estimate of x k N given the measurement up to time k. The term P k is the smoother error-covariance matrix which is represented by
P k = P k 0 , 0 P k 0 , N + 1 T P k 0 , N + 1 P k N + 1 , N + 1
with each of its elements computed as
P k i , j = E [ ( x k i x ^ k i , k 1 ) ( x k j x ^ k j , k 1 ) T ]
The error-covariance matrix propagation equation for the augmented system can be written as [28]
P k + 1 = Φ k P k ( Φ k H k T L k T ) + Q k
Substituting the Kalman gain parameters, the diagonal and off-diagonal elements of P k + 1 for i = 1 , 2 , , N + 1 are given by
P k + 1 i , i = P k i 1 , i 1 P k 0 , i 1 H k T L k , i T F k T
P k + 1 0 , i = P k 0 , i 1 ( F k L k , 0 H k ) T
Equations (2a)–(9b) describe the fixed-lag smoother for a given system, which provides the estimate x ^ k , N , i.e., the estimate of x k N given measurements until the k th time instant. For more details on the derivation of the fixed-lag smoother, one can refer to [28].

3. Adaptive Lag Selection Mechanism

In Ref. [7], it is stated that a lag-length should be chosen such that it achieves more than 95% performance improvement possible with smoothing. In [29], a theoretical proof is presented for the convergence of a linear Kalman filter in which the filter error dynamics have a fundamental role. The  a posteriori error for a Kalman filter is defined as
x ˜ k x k x ^ k = x k [ F k 1 x ^ k 1 + K k ( z k H k F k 1 x ^ k 1 ) ]
where K k is the Kalman gain matrix. Equation (10) can be rearranged as
x ˜ k = ( I K k H k ) ( x k F k 1 x ^ k 1 ) K k v k
The dynamic error of the Kalman filter is shown to remain bounded if the initial estimation error, as well as the error due to noise terms, are small [30]. The error for the estimated state at the N th lag can be represented as
x ˜ k N , k x k N x ^ k N , k
Substituting Equation (4) in Equation (12), the error can be rewritten as
x ˜ k N , k = x k N [ x ^ k N 1 , k 1 + L k , N + 1 ( z k H k x ^ k ) ]
This is one of the possible representations of the smoother error dynamics. On rearranging, this does not yield a form similar to Equation (11), and hence the dynamics of the smoother error over increasing lags are analyzed using the trace of error-covariance of the smoother directly. Simulations carried out over different problems indicate that during the initial few lags, the smoother attempts to capture information from previous lagged estimates, and once this estimate converges, higher-lag estimates are not very helpful. It is therefore proposed here to adapt the lag-length of the system on the basis of the trace of error-covariance.
The lag-length of fixed-lag smoothers is generally chosen based on available system hardware resources, but not much has been studied towards detection of a reliable lag-length. It is well-known that the trace of the error-covariance matrix is an important parameter to determine a scalar measure of the estimation accuracy. It is also used to indicate the performance of a fixed-lag smoother with a direct relation between the increasing lag and the decreasing trace of the error-covariance matrix. In [7], it is mentioned that a lag-length need not be chosen that achieves more than 95% performance improvement possible with smoothing. It is also suggested to have a lag-length that is 2 to 3 times the time constant of a filter. However, determining the time constant of a dynamic and real-time system is not always plausible. In this work, it is therefore proposed to use the trace of the fixed-lag smoother error-covariance matrix, tr ( P j , k ) , to select an adaptive lag-length value in a heuristic manner. Here, P j , k = P k j , j is the error-covariance of the j th lag at the k th time instant.
The adaptive lag selection approach aims at finding the lag-length at which the tr ( P j , k ) value saturates and has insignificant changes after a specific lag-length. In order to arrive at a suitable lag-length, the error-covariance ( P j , k ) value at each lag-point is monitored for saturation. The mechanism to detect saturation at any time instant k is defined as
| tr ( P j , k ) tr ( P j + α , k ) | p tr ( P j , k )
Here, P j , k is a performance index of smoother with j lags at the k th time instant, α a user defined lag constant, and p is a scalar parameter that defines the level at which the algorithm should trigger saturation, indicating the percent change occurring with increasing lag. This equation indicates a logical True when P j , k saturates and there is not a p % change from the j th to ( j + α ) th lag. The value of p needs to be chosen empirically, as per the variation in P j , k for the specific problem at hand, and largely depends on the noise parameters. For the simulations carried out in this paper, values of α = 10 and p = 0.005 are selected. The saturation of the error-covariance over lags is monitored only once in a while and repeated after a few instants for dynamic systems. The adaptive lag-length value, denoted A L , determined through this process remains fixed for a system with constant process and measurement noise covariance values, and can be used to determine a suitable lag value as described in Algorithm 1. Sensors 22 05310 i001

4. Simulation Results

The proposed adaptive lag smoother (ALS) scheme of arriving at a suitable lag-length automatically is applied to the problem of: (a) a second-order Newtonian System, (b) single-axis attitude estimation, (c), Van der Pol’s oscillator, and (d) three-axis attitude estimation.

4.1. Second-Order Newtonian System

A simple second-order Newtonian system is represented as
x k + 1 = 1 Δ t 0 1 x k + Δ t 2 2 Δ t ( u k + w k )
y k = 1 0 x k + v k
where Δ t is the sampling interval. The system states x ( 1 ) , position, and x ( 2 ) , velocity, are commanded by an external acceleration input u k with an acceleration noise w k , which is a zero-mean Gaussian white-noise process with standard deviation σ w . The process-noise, w k , is defined as w k = [ Δ t 2 2 Δ t ] T u ˜ k .
w k = δ t 2 2 δ t u ˜ k
The process-noise covariance, Q k , is given by
Q k = Δ t 4 4 Δ t 3 2 Δ t 3 2 Δ t 2 σ w 2
The fixed-lag smoother is applied on this system with Δ t = 0.1 , σ w = 2 , measurement noise variance of 4, initial state vector x 1 = [ 0 0 ] T and initial error-covariance of I 2 × 2 . A total lag-length of N = 200 is used to compare the ALS to the fixed-lag smoother with lag = 200 . The simulation values are adapted from the fixed-lag smoothing problem described in the example 9.1 from [28].
The trace of the error-covariance matrix, tr ( P ) for the fixed-lag-smoother at k = 300 , is plotted in Figure 1a. It can be seen that the trace of error covariance decreases exponentially for the initial few lags, after which it remains nearly constant. The tr ( P ) is a performance indicator for the smoother that helps in understanding that the lag-length beyond a specific point will not lead to any significant improvement in the estimation accuracy. In order to arrive at this specific lag point, a saturation detection mechanism as described in Equation (14) is used.
During the initial lags, the A L value varies and then saturates to a value that remains nearly constant, as seen in Figure 1b. Figure 1b plots A L for the case of process noise equal to 2 and measurement noise equal to 4 at different time instants. The performance indicator of the ALS is quantitatively measured by taking the ratio of tr ( P ) with the highest lag in the simulation, N, to that of the tr ( P ) with the adaptive length parameter, A L , represented as
% improvement = tr ( P N , k ) tr ( P A L , k )
The performance level achieved through the ALS as compared to a smoother with lag-length equal to 200 for different combinations of acceleration and measurement noise is tabulated in Table 1. The percent improvement metric is the mean of the percent improvement computed at all time instants for a smoother with A L as compared to a smoother with 200 lags. In order to verify the efficacy of the ALS approach, the sum of absolute error between the truth and adaptive lag smoother estimate is compared with the error between the truth and highest lag smoother estimate obtained in the simulation. The error value averaged over the total time is plotted for different instants using a 100 Monte-Carlo run simulation, with results shown in Figure 2. The average absolute error between the highest lag smoother and ALS is nearly the same at different instances, and is a strong indicator of the performance achieved through an ALS as compared to a very high lag smoother.

4.2. Single-Axis Attitude Estimation

The single-axis attitude estimation problem involves using attitude angle measurements and gyro rate information, which is simulated to test the validity of the ALS approach. The attitude angle and gyro observations are corrupted with noise and error sources that are compensated using a Kalman filtering approach. The attitude rate, θ ˙ , is related to the gyro measurement, ω ˜ , by
θ ˙ = ω ˜ b η v
where b is the random drift rate and η v is a zero-mean Gaussian white-noise process with spectral density given by σ v 2 . The random drift rate is modeled as b ˙ = η u ; where η u is a zero-mean Gaussian white-noise process with spectral density σ u 2 . Synthetic measurements are created by using a constant angle rate of 0.0011 rad/sec and a sampling interval of 1 s. The noise parameters used in the simulation are σ n = 30 × 10 5 rad, σ u = 10 × 10 7 rad/s 3 / 2 , σ v = 10 × 10 4 rad/s 1 / 2 , and the initial error-covariance matrix is set to P 0 = diag ( 1 × 10 4 1 × 10 12 ) . The simulation set-up is adapted from example 3.3 of [6].
Figure 3a plots the variation for the trace of the error-covariance, tr ( P ) , with increasing lags at the k = 300 time instant. The tr ( P ) parameter saturates after a few lags, thereby indicating that very high lags are not required, and only adds to the computational complexity. Figure 3b plots the value of A L obtained through the adaptive lag selection approach. It is interesting to note here that the ALS settles down with a lag value and remains the same for rest of the simulation period. The performance level achieved for a fixed-lag smoother with lag equal to 200 is compared to that of the ALS by taking the ratio of the tr ( P ) at specific lag levels for a particular time instant, k = 300 , and is depicted in Table 2. These simulations indicate that it is worthwhile to stop the smoother at a specific lag point rather than extending it to large lag-lengths and increasing the computational complexity.

4.3. Van der Pol Oscillator

Van der Pol’s oscillator equation is a nonlinear differential equation proposed by Van der Pol while experimenting with the oscillations in a vacuum tube. This problem has special characteristics of an oscillating error-covariance over time, unlike other problems that have a monotonically decreasing error-covariance. A generic representation of this nonlinear equation is given as
m x ¨ + 2 c ( x 2 1 ) x ˙ + k x = 0
where m is the mass, c is the damping parameter and k is the spring parameter. Converting this to a state-space formulation with x = [ x x ˙ ] T gives
x 1 ˙ = x 2
x 2 ˙ = 2 ( c / m ) ( x 1 2 1 ) x 2 ( k / m ) x 1
The linearized model matrix, F and G are given by
F = 0 1 4 ( c / m ) x ^ 1 x ^ 2 ( k / m ) 2 ( c / m ) ( x ^ 1 2 1 ) , G = 0 1
The measurement output is position only, so H = [ 1 0 ] . Parameters m = c = k = 1 are assumed here with an initial condition of x 0 = [ 1 , 0 ] T . A sampling interval of 0.01 s and measurement noise standard deviation of 0.01 are used, The synthetic states are generated for 30 s. The model parameters for the extended Kalman filter are assumed to be m = 1 , c = 1.5 , and k = 1.2 , introducing an error in the system model, which is overcome by tuning the process-noise covariance matrix. This process-noise covariance matrix is set to be Q = diag ( [ 0 0.2 ] ) , and the initial error-covariance is set to P 0 = 100 I 2 × 2 .
A plot of the varying trace of the error-covariance value over increasing lags at k = 300 is shown in Figure 4a. The trace of error-covariance value saturates after a few lags and remains constant thereafter, indicating no major change once a specific lag has reached. However, the A L value keeps changing with time in a cyclic fashion and does not remain constant unlike other cases. This is due to the time-varying error-covariance of the nonlinear Van der Pol system over time, and is most likely due to the observability of the associated nonlinear nature of this problem. Table 3 compares the performance of the ALS approach with that of the highest lag smoother N = 200 for different combination of process and measurement noise. In this case, the A L value keeps varying between minimum and maximum lag-lengths, and it is recommended here to choose the maximum lag-length for the complete duration for better performance.
The experimentation carried out here proves the efficacy of ALS as compared to very high lag-length fixed lag smoothers.

4.4. Three-Axis Attitude Estimation

The ALS approach is now tested on the three-axis attitude estimation problem. This problem is nonlinear in nature, which provides a realistic example. The attitude matrix, A, maps from the reference frame to the vehicle body frame according to A r , where r is a component vector given with respect to the reference frame. The attitude is subsequently parameterized by the quaternion q . The quaternion is a four-dimensional vector defined as q = [ ϱ T q 4 ] T , defined as
q ϱ q 4
with ϱ [ q 1 q 2 q 3 ] T = e sin ( ϑ / 2 ) and q 4 = cos ( ϑ / 2 ) ,
ϱ [ q 1 q 2 q 3 ] T = e sin ( ϑ / 2 )
q 4 = cos ( ϑ / 2 )
where e is the unit Euler axis and ϑ is the rotation angle [31]. A quaternion parameterizing an attitude satisfies a single constraint given by q = 1 . In terms of the quaternion, its associated attitude matrix is given by
A ( q ) = q 4 2 | | ϱ | | 2 I 3 × 3 + 2 ϱ ϱ T 2 q 4 [ ϱ × ]
where I 3 × 3 is a 3 × 3 identity matrix. The matrix [ ϱ × ] is the standard cross-product matrix with
[ ϱ × ] 0 q 3 q 2 q 3 0 q 1 q 2 q 1 0
With the attitude parameterized by the quaternion q, the physical model is then the quaternion kinematics, given by
q ˙ = 1 2 Ξ ( q ) ω = 1 2 Ω ( ω ) q
where ω is the angular rate vector and
Ξ ( q ) q 4 I 3 × 3 + [ ϱ × ] ϱ T
Ω ( ω ) [ ω × ] ω ω T 0
Ξ ( q ) q 4 I 3 × 3 + [ ϱ × ] ϱ T
Attitude estimation typically consists of combining the physical model with sensor measurements in order to calculate an attitude trajectory that is, in some sense, stochastically optimal. In addition to attitude sensing hardware, a three-axis gyro is employed to obtain angular rate information. The gyro output ω ˜ is governed by
ω ˜ = ω + b + η v
b ˙ = η u
where the vector b is the gyro drift, and the vectors η v and η u are assumed to be zero-mean, Gaussian white-noise processes with spectral densities given by σ v 2 I 3 × 3 and σ u 2 I 3 × 3 , respectively. The covariance of w [ η v T η u T ] T
w η v η u
is given by
E { w ( t ) w T ( τ ) } = Q ( t ) δ ( t τ ) ,
where the spectral density Q ( t ) is then given by
Q ( t ) = σ v 2 I 3 × 3 0 3 × 3 0 3 × 3 σ u 2 I 3 × 3
where 0 3 × 3 denotes a 3 × 3 matrix of zeros. The three-axial attitude estimation problem is based on using the quaternion kinematics model, which is represented as:
q ˙ = 1 2 Ω ( ω ) q
A multiplicative quaternion approach is used to preform the quaternion linearization. The error-quaternion, denoted by δ q = [ δ ρ T δ q 4 ] , is obtain using δ q = q q ^ , where q ^ is the estimated quaternion, and ⊗ denotes quaternion multiplication. Considering the multiplication quaternion correction, the linearized form of the derivative of error-quaternion is given by
δ ρ ˙ = [ ω ^ × ] δ ρ + 1 2 Δ ω
δ q ˙ 4 = 0
Here, δ ρ ˙ and δ q ˙ 4 are the derivative of the vector and scalar component of the quaternion, respectively. Since the derivative of the scalar error-portion is zero, then only the vector needs to be considered to develop the EKF, which leads to the multiplicative EKF (MEKF) [32,33]. Substituting Δ ω = ω ω ^ = ( Δ b + η v ) , where Δ b = b b ^ , into Equation (35a) yields a simplified form of linear equations that can be used in EKF:
δ α ˙ = [ ω ^ × ] δ α ( Δ b + η v )
where δ α = 2 δ ρ is the vector of the first-order roll, pitch and yaw angle errors. This is equivalent to the EKF error model Δ x ˙ k = F k Δ x k + w k where Δ x k = [ δ α k Δ b k ] T and
Q k = σ v 2 Δ t + 1 3 σ u 2 Δ t 3 I 3 × 3 1 2 σ u 2 Δ t 2 I 3 × 3 1 2 σ u 2 Δ t 2 I 3 × 3 σ u 2 Δ t I 3 × 3
Measurements are assumed to be the quaternion with noise. More details of the MEKF can be found in [34].
In order to generate the true attitude, an object is considered to be rotating about its y-axis, and the attitude angles are corrupted by the measurement noise, each with a variance of σ n 2 = 8.7266 × 10 7 rad 2 . The noise parameters used for the gyro measurements are σ u = 10 × 10 10 rad/s 3 / 2 and σ v = 10 × 10 7 rad/s 1 / 2 . The initial covariance for the attitude error is set to P 0 a = 0 . 1 2 I 3 × 3 deg 2 = 3.0462 × 10 6 I 3 × 3 rad 2 , and the initial covariance for the drift is set to P 0 b = 0 . 2 2 I 3 × 3 (deg/h) 2 = 9.4018 × 10 13 I 3 × 3 (rad/h) 2 . These values are taken from example 7.1 in [6]. The output of the adaptive lag smoother is compared with that of the output of the smoother with the highest lag considered in this simulation, which is 100. As seen in Table 4, the output of the adaptive lag smoother is very similar to that of the highest lag smoother, and achieves a performance greater than 99% in most of the cases. The smoother saturates at a specific lag-length, after which not much change occurs in the error-covariance. A plot of varying adaptive lag-length, A L , over time is shown in Figure 5b. The adaptive lag-length varies during the initial time instant, after which it is generally found to settle down to a specific lag-length.
It is also important here to mention that a plot of E c o v over the lag is essential to judge the lag-length and tune the value of p accordingly. This p parameter is an indicator of percent change that has occurred in the parameter as the lag progresses further. It has also been found that there are cases when the error-covariance changes very gradually with increasing lag-length. Therefore, a priori simulations are required for adapting the p value accordingly. The simulation shown here shows the efficacy of the ALS as compared to the fixed-lag smoothers with large lags.

5. Conclusions

In this work, an adaptive lag smoother approach is proposed that aims at achieving accuracy similar to that of the highest lag smoother with the rationale of small yet appropriate selection of lag-length. It is hypothesized here that once the suitable lag-length is obtained, any further increase of smoothing lag will not lead to any significant improvement in estimator accuracy. The adaptive lag smoother scheme has been tested on position estimation, Van der Pol’s oscillator, and the attitude estimation problem in detail. A convincing performance is achieved with this adaptive scheme, thereby providing a viable solution for determining the appropriate lag-length in practice. The approach also gives a very powerful tool to help design fixed-lag smoothers in which the system model can vary over time. The adaptive lag-length can be determined by running a separate subroutine and provides the maximum number of lags required to achieve convincing performance characteristics.

Funding

This research was funded by United States India Educational Foundation, grant number 2482/fnpdr/2019.

Institutional Review Board Statement

Not Applicable.

Informed Consent Statement

Not Applicable.

Data Availability Statement

Not Applicable.

Acknowledgments

Thanks are due to Fulbright Nehru Postdoctoral Fellowship.

Conflicts of Interest

The authors declare no conflict of interest.

Nomenclature

x k System state at k th time instant
F k State transition matrix at k th time instant
z k Measurement at k th time instant
H k Measurement output matrix at k th time instant
w k Process noise at k th time instant
v k Measurement noise at k th time instant
L k Smoother gain matrix at k th time instant
P k Error covariance matrix for smoother at k th
Q k Process noise covariance matrix at k th time instant
R k Measurement noise covariance matrix at k th time instant
K k Kalman gain matrix at k th time instant
P k j Error covariance of j th lag at t th time instant
A L Adaptive lag
qAttitude parameterized by quaternion
ω ˜ Gyroscope measurement corrupted by bias, b and noise

References

  1. Munguía, R.; Urzua, S.; Grau, A. EKF-based parameter identification of multi-rotor unmanned aerial vehiclesmodels. Sensors 2019, 19, 4174. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  2. Zhang, K.W.; Hao, G.; Sun, S.L. Weighted Measurement Fusion Particle Filter for Nonlinear Systems with Correlated Noises. Sensors 2018, 18, 3242. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  3. Huang, Y.; Zhang, Y.; Shi, P.; Wu, Z.; Qian, J.; Chambers, J.A. Robust Kalman filters based on Gaussian scale mixture distributions with application to target tracking. IEEE Trans. Syst. Man Cybern. Syst. 2017, 49, 2082–2096. [Google Scholar] [CrossRef]
  4. Goodman, J.M.; Wilkerson, S.A.; Eggleton, C.; Gadsden, S.A. A multiple model adaptive SVSF-KF estimation strategy. In Proceedings of the Signal Processing, Sensor/Information Fusion, and Target Recognition XXVII, Orlando, FL, USA, 16–19 April 2018; Volume 11018, pp. 462–473. [Google Scholar]
  5. Habibi, S. The smooth variable structure filter. Proc. IEEE 2007, 95, 1026–1059. [Google Scholar] [CrossRef]
  6. Crassidis, J.L.; Junkins, J.L. Optimal Estimation of Dynamic Systems; CRC Press: Boca Raton, FL, USA, 2012. [Google Scholar]
  7. Moore, J. Fixed-lag smoothing results for linear dynamical systems. Aust. Telecommun. Res. 1973, 7, 16–21. [Google Scholar]
  8. Meditch, J.S. Stochastic Optimal Linear Estimation and Control; McGraw-Hill: New York, NY, USA, 1969. [Google Scholar]
  9. Chirarattananon, S.; Anderson, B. Stable fixed-lag smoothing of continuous time processes. IEEE Trans. Inf. Theory 1974, 20, 25–36. [Google Scholar] [CrossRef]
  10. Kim, P.S. A computationally efficient fixed-lag smoother using recent finite measurements. Measurement 2013, 46, 846–850. [Google Scholar] [CrossRef]
  11. Chen, Y.; Xu, L.; Yan, B.; Li, C. A novel smooth variable structure smoother for robust estimation. Sensors 2020, 20, 1781. [Google Scholar] [CrossRef] [Green Version]
  12. Alenlöv, J.; Olsson, J. Particle-Based Adaptive-Lag Online Marginal Smoothing in General State-Space Models. IEEE Trans. Signal Process. 2019, 67, 5571–5582. [Google Scholar] [CrossRef] [Green Version]
  13. Fkirin, M.A. Fixed-lag smoothing in the identification of time-varying systems with unknown dead time. Int. J. Syst. Sci. 1985, 16, 1313–1334. [Google Scholar] [CrossRef]
  14. Leanza, A.; Reina, G.; Blanco-Claraco, J.L. A Factor-Graph-Based Approach to Vehicle Sideslip Angle Estimation. Sensors 2021, 21, 5409. [Google Scholar] [CrossRef]
  15. Bolotin, Y.V.; Yurist, S.S. Suboptimal smoothing filter for the marine gravimeter GT-2M. Gyroscopy Navig. 2011, 2, 152–155. [Google Scholar] [CrossRef]
  16. Stepanov, O.; Koshaev, D. Analysis of filtering and smoothing techniques as applied to aerogravimetry. Gyroscopy Navig. 2010, 1, 19–25. [Google Scholar] [CrossRef]
  17. Noriega, G.; Pasupathy, S. Application of Kalman filtering to real-time preprocessing of geophysical data. IEEE Trans. Geosci. Remote Sens. 1992, 30, 897–910. [Google Scholar] [CrossRef]
  18. Xu, Y.; Shmaliy, Y.S.; Ahn, C.K.; Shen, T.; Zhuang, Y. Tightly Coupled Integration of INS and UWB Using Fixed-Lag Extended UFIR Smoothing for Quadrotor Localization. IEEE Internet Things J. 2021, 8, 1716–1727. [Google Scholar] [CrossRef]
  19. Hsiung, J.; Hsiao, M.; Westman, E.; Valencia, R.; Kaess, M. Information Sparsification in Visual-Inertial Odometry. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 1146–1153. [Google Scholar] [CrossRef]
  20. Fetzer, T.; Ebner, F.; Deinzer, F.; Köping, L.; Grzegorzek, M. On Monte Carlo smoothing in multi sensor indoor localisation. In Proceedings of the 2016 International Conference on Indoor Positioning and Indoor Navigation (IPIN), Madrid, Spain, 4–7 October 2016; pp. 1–8. [Google Scholar] [CrossRef]
  21. Zhuang, Y.; Wang, Q.; Li, Y.; Gao, Z.; Zhou, B.; Qi, L.; Yang, J.; Chen, R.; El-Sheimy, N. The Integration of Photodiode and Camera for Visible Light Positioning by Using Fixed-Lag Ensemble Kalman Smoother. Remote Sens. 2019, 11, 1387. [Google Scholar] [CrossRef] [Green Version]
  22. Kim, P.S. Finite Memory Structure Filtering and Smoothing for Target Tracking in Wireless Network Environments. Appl. Sci. 2019, 9, 2872. [Google Scholar] [CrossRef] [Green Version]
  23. Ullah, I.; Qureshi, M.B.; Khan, U.; Memon, S.A.; Shi, Y.; Peng, D. Multisensor-based target-tracking algorithm with out-of-sequence-measurements in cluttered environments. Sensors 2018, 18, 4043. [Google Scholar] [CrossRef] [Green Version]
  24. Li, C.; Han, C.Z.; Zhu, H.Y. A new smoothing approach with diverse fixed-lags based on target motion model. Int. J. Autom. Comput. 2006, 3, 425–430. [Google Scholar] [CrossRef]
  25. Duong, T.T.; Chiang, K.W.; Le, D.T. On-line smoothing and error modelling for integration of GNSS and visual odometry. Sensors 2019, 19, 5259. [Google Scholar] [CrossRef] [Green Version]
  26. Hartikainen, J.; Särkkä, S. Kalman filtering and smoothing solutions to temporal Gaussian process regression models. In Proceedings of the 2010 IEEE International Workshop on Machine Learning for Signal Processing, Kittila, Finland, 29 August–1 September 2010; pp. 379–384. [Google Scholar] [CrossRef]
  27. Martino, L.; Read, J. A joint introduction to Gaussian Processes and Relevance Vector Machines with connections to Kalman filtering and other kernel smoothers. Inf. Fusion 2021, 74, 17–38. [Google Scholar] [CrossRef]
  28. Simon, D. Optimal State Estimation: Kalman, H-Infinity, and Nonlinear Approaches; John Wiley & Sons: Hoboken, NJ, USA, 2006. [Google Scholar]
  29. Rhudy, M.B.; Gu, Y. Online Stochastic Convergence Analysis of the Kalman Filter. Int. J. Stoch. Anal. 2013, 2013, 240295. [Google Scholar] [CrossRef] [Green Version]
  30. Reif, K.; Gunther, S.; Yaz, E.; Unbehauen, R. Stochastic stability of the discrete-time extended Kalman filter. IEEE Trans. Autom. Control 1999, 44, 714–728. [Google Scholar] [CrossRef]
  31. Shuster, M.D. A Survey of Attitude Representations. J. Astronaut. Sci. 1993, 41, 439–517. [Google Scholar]
  32. Lefferts, E.J.; Markley, F.L.; Shuster, M.D. Kalman Filtering for Spacecraft Attitude Estimation. J. Guid. Control. Dyn. 1982, 5, 417–429. [Google Scholar] [CrossRef]
  33. Andrle, M.S.; Crassidis, J.L. Attitude estimation employing common frame error representations. J. Guid. Control. Dyn. 2015, 38, 1614–1624. [Google Scholar] [CrossRef]
  34. Markley, F.L.; Crassidis, J.L. Fundamentals of Spacecraft Attitude Dynamics and Control; Springer: New York, NY, USA, 2014. [Google Scholar]
Figure 1. (a) Saturation of the error-covariance over increasing lag at k = 300 , (b) Varying adaptive lag-length over time.
Figure 1. (a) Saturation of the error-covariance over increasing lag at k = 300 , (b) Varying adaptive lag-length over time.
Sensors 22 05310 g001
Figure 2. Error comparison between highest lag smoother and adaptive lag smoother.
Figure 2. Error comparison between highest lag smoother and adaptive lag smoother.
Sensors 22 05310 g002
Figure 3. (a) Saturation of the error-covariance over increasing lag at k = 300 , (b) varying adaptive lag-length over time for single-axis attitude estimation.
Figure 3. (a) Saturation of the error-covariance over increasing lag at k = 300 , (b) varying adaptive lag-length over time for single-axis attitude estimation.
Sensors 22 05310 g003
Figure 4. Adaptive lag smoother analysis for Van der Pol Oscillator. (a) Varying trace of the error-covariance with increasing lag at k = 300 . (b) Varying adaptive lag-length over time.
Figure 4. Adaptive lag smoother analysis for Van der Pol Oscillator. (a) Varying trace of the error-covariance with increasing lag at k = 300 . (b) Varying adaptive lag-length over time.
Sensors 22 05310 g004
Figure 5. Parameter saturation and varying adaptive lag-length. (a) Saturation of parameter value over increasing lag at k = 300 . (b) Varying adaptive lag-length over time.
Figure 5. Parameter saturation and varying adaptive lag-length. (a) Saturation of parameter value over increasing lag at k = 300 . (b) Varying adaptive lag-length over time.
Sensors 22 05310 g005
Table 1. Performance comparison of ALS with different noise levels for position estimation system.
Table 1. Performance comparison of ALS with different noise levels for position estimation system.
Acc. NoiseMeas. Noise% Improvement AL
2490.3267
10499.0634
21092.0399
101099.3750
Table 2. Performance comparison of ALS for single-axis attitude estimation with different noise levels.
Table 2. Performance comparison of ALS for single-axis attitude estimation with different noise levels.
σ n (rad) σ u (rad/s 3 / 2 ) σ v (rad/s 1 / 2 )% Improvement AL
3 × 10 5 10 × 10 8 10 × 10 5 99.873
3 × 10 5 10 × 10 9 10 × 10 6 99.3925
30 × 10 5 10 × 10 8 10 × 10 5 99.5125
30 × 10 5 10 × 10 7 10 × 10 4 99.913
Table 3. Performance comparison of ALS for Van der Pol simulation.
Table 3. Performance comparison of ALS for Van der Pol simulation.
Proc. NoiseMeas. Noise% Improvement AL
0.20.0199.52[15–24]
0.050.0199.41[20–34]
0.20.0598.33[29–35]
0.050.0598.78[38–53]
Table 4. Performance comparison of ALS with different noise levels for three-axis attitude estimation system.
Table 4. Performance comparison of ALS with different noise levels for three-axis attitude estimation system.
σ n (rad) σ u (rad/s 3 / 2 ) σ v (rad/s 1 / 2 )% Improvement AL
8.73 × 10 7 10 × 10 10 10 × 10 7 99.336
8.73 × 10 7 10 × 10 9 10 × 10 6 99.127
8.73 × 10 6 10 × 10 10 10 × 10 7 99.3325
8.73 × 10 6 10 × 10 9 10 × 10 6 99.127
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Poddar, S.; Crassidis, J.L. Adaptive Lag Smoother for State Estimation. Sensors 2022, 22, 5310. https://doi.org/10.3390/s22145310

AMA Style

Poddar S, Crassidis JL. Adaptive Lag Smoother for State Estimation. Sensors. 2022; 22(14):5310. https://doi.org/10.3390/s22145310

Chicago/Turabian Style

Poddar, Shashi, and John L. Crassidis. 2022. "Adaptive Lag Smoother for State Estimation" Sensors 22, no. 14: 5310. https://doi.org/10.3390/s22145310

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop