Kalman Filters Process Noise, v1(n) Observation y(n) x(n) z-1I C(n) s(n) Measurement noise v2(n) F(n+1,n) Process Equation Measurement Equation •Models the state x(n) as the output of •Relates the observable output of the a linear system excited by white noise system y(n) to the state x(n) v1(n) x (n 1) F (n 1, n) x (n) v1(n) Signal Model: x (n 1) F (n 1, n) x(n) v1(n) s(n) Hx (n / yn ) y ( n ) H ( n ) x ( n ) v 2 ( n) Observation Model: y(n) s(n) v 2(n) The filtering problem is posed as follows – Using the set of observed data y n , to find for each n 1the MMSE of the state vector x̂ , and then to estimate the clean signal ŝ from the signal model. Kalman filters, the unscented transform and particle filters Unscented Kalman Filters (motivation… where Extended Kalman filters fail) •Nonlinear State Estimation xk 1 F ( xk ,vk ) yk H ( xk ,nk ) a Posteriori estimate F, H are (nonlinear) vector functions xˆ k xˆ k K k ( yk yˆ k )] Prediction of xˆ k Innovation •Predicting state vector, xˆ k E[ F ( xˆ k 1 ,vk 1 )] 1 •Kalman gain, K k Pxk y k P y k y k •Predicting observation yˆ k E[ H ( xˆ k - ,nk )] •When propagating a GRV through a linear model (Kalman filtering), it is easy to compute the expectation E[ ] •However, if the same GRV passes through a nonlinear model, the resultant estimate may no longer be Gaussian – calculation of E[ ] is no longer easy! •It is in the calculation of E[ ] in the recursive filtering process that we now need to estimate the pdf of the propagating random vector Kalman filters, the unscented transform and particle filters Unscented Kalman Filters (motivation… where Extended Kalman filters fail) •Extended Kalman Filters (EKF) avoid this by linearizing the state-space equations and reducing the estimate equations to point estimates instead of expectations xˆ k F ( xˆ k 1 ,v ) 1 ˆ ˆ K k Pxk yk P y k y k yˆ k H ( xˆ k - ,nk ) •The covariance matrices (P) are computed by linearizing the dynamic equations xk 1 Axk Bvk , yk Cxk Dnk •In EKF, the state distributions are approximated by a GRV and propagated analytically through a ‘first-order linearization’ of the nonlinear system - If the assumption of local linearity is violated, the resulting filter will be unstable - The linearization process itself involves computations of Jacobians and Hessians (which is nontrivial for most systems) Kalman filters, the unscented transform and particle filters The Unscented Transform •Problem statement: developing a method for calculating the statistics of a random variable which has undergone a nonlinear transformation •The intuition: It is easier to approximate a distribution than it is to approximate an arbitrary nonlinear transformation •Consider a nonlinearity y g ( x) •The Unscented transform chooses (deterministically) a set of ‘sigma’ points in the original (x) space which when mapped to the transformed (y) space will be capable of generating accurate sample means and covariance matrices in the transformed space •An accurate estimation of these allows us to use the Kalman filter in the usual setup, with the expectation values being replaced by sample means and covariance matrices as appropriate Kalman filters, the unscented transform and particle filters The Unscented Transform (illustration) Px Py 0.2812 0.0046 0.0046 0.2014 1.2692 0.0060 0.0060 0.8818 Kalman filters, the unscented transform and particle filters Py_ut 0.2709 0.0510 0.0510 0.1607 Unscented Kalman Filters (UKFs) •Instead of propagating a GRV through the “linearized” system, the UKF technique focuses on an efficient estimation of the statistics of the random vector being propagated through a nonlinear function •To compute the statistics of y g ( x) , we ‘cleverly’ sample this function using ‘deterministically’ chosen 2L+1 points about the mean of x 0 x Sigma Points i x ( ( L ) Px )i , i 1, 2,....L i x ( ( L ) Px )i L , i L, L 1,....2 L •It can be proved that with these as sample points, the following ‘weighted’ sample means and covariance matrices will be equal to the true values 2L y Wi m yi i 0 2L Wo ( m ) L Py Wi c { yi y}{ yi y}T Wo ( c ) where, yi g ( i ), i 0,1, 2....2 L Wi ( c ) Wi ( m ) i 0 L 1 2 1 , i 1, 2,...., 2 L 2( L ) •We use this set of equations to predict the states and observations in the nonlinear state-estimation model. The expected values E[ ] and the covariance matrices are replaced with these sample ‘weighted’ versions. Kalman filters, the unscented transform and particle filters Unscented Kalman Filters (UKFs)… Algorithm development Augment the state vector to include the process and measurement noise and initialize the mean and covariance matrix of the augmented vector. Compute the sigma points about the previously estimated mean vector Compute the predicted value of the state vector and cov. matrix at time k Predict the current observation given previous observed samples (mapped from the sigma points) Compute the innovations covariance matrix, cross correlation matrix and hence the Kalman gain and update the current estimate of the state at time k Eric A. Wan and Rudolph van der Merwe, “The Unscented Kalman Filter for Nonlinear Estimation” Kalman filters, the unscented transform and particle filters Unscented Kalman Filters (UKFs) vs. Particle Filters (PFs) •The unscented transformation in UKFs allows the calculation of accurate sample means and covariance matrices using a few ‘cleverly’ chosen samples •Particle filtering employs Monte-Carlo techniques to obtain an estimate of the statistics of the propagated random vector •The two techniques are very close conceptually •There is a subtle difference : in UKF based implementations, the sigma points for sampling are deterministically chosen whereas in PF based techniques, the sampling itself is done randomly •Particle Filtering is more accurate but this comes at the cost of complexity (introduced due to the need for Monte-Carlo simulations) •The complexity of UKF based implementations is about the same as that of regular Kalman filters Kalman filters, the unscented transform and particle filters