INTRODUCTION TO KALMAN FILTER Rudolf Emil Kalman - Born 1930 in Hungary - BS and MS from MIT - PhD 1957 from Columbia - Filter developed in 1960-61 - Now retired Why not the deterministic system and control theories do not provide a totally sufficient means of performing the analysis and design? - No mathematic model is perfect, only a limited number of parameters are used in modeling. - Deterministic systems are driven not only by our own signals, but also by disturbances/noises. These factors are beyond our control and capability of analysis (Example: measure the temperature, pilot control the fly angle, etc.). - Sensors themselves do not provide perfect and complete date about a system. Sensors may behave according to their own dynamic characteristics, and may be corrupted by noises. What is a Kalman Filter?? •- Just some applied math. •- A linear system:: ff((a+b)) = ff((aa)) + ff((b)).. •- Noisy data in hopefully less noisy out. •- But delay is the price for filtering...... •- Pure KF does not even adapt to the data. What is it used for?? ••- Tracking missiles ••- Tracking heads/hands/drumsticks ••- Extracting lip motion from video ••- Lots of computer vision applications • - Economics • - Navigation A really simple example Review: conditional probability density. It indicates that for the given values of all measurement taken up through time instant i, what probability would be of x(i) assuming a certain particular value or range of values. What will happen if we suppose the probability distributes in Gaussian pattern (normal distribution and white)? Description: Suppose you are lost at sea at night and want to obtain your location x by star sighting. At time instant t1, your measurement is z1. Due to some device inaccuracies and other uncertainties, you decide the precision is such that its variance is This way, you can set up your conditional probability of your position x(t1) at time instant t1, conditioned on the measurement (observation) of z1 . 2 z1 . Based on this CPD, your best (optimal) estimation of your position is x(t1 ) z1 (t1 ) 2 x 2 z1 Now suppose an more experienced navigator takes another measurement right after you do at time t2= t1 (so the ship potion is not changed), similarly, obtained z2 2 and z 2 . Note 2 z2 < 2 z1 . Likewise, the CPD is as follows: At this point, you have two data points for estimating your position. Question: How to combine these data? Based on the assumptions made, the conditional density of your position x(t2) at time t2= t1 , given z1 and z2, is a Gaussian density below. and variance 2 , as indicated in the figure [ /( )]* z1 [ /( )]* z2 2 z2 2 z1 2 z2 2 z1 2 z1 2 z2 1/ (1/ ) (1/ ) 2 2 z1 2 z2 Note that, is less either or which is to say that the uncertainty in your estimate of position has been decreased by combining the two pieces of information. 2 2 z1 2 z2 , Given this density, the best estimate of your position is x(t2 ) with associated variance 2 . ^ x(t2 ) The equation of estimate can be rewritten as x(t2 ) [ /( )]* z1 [ /( )]* z2 2 z2 2 z1 2 z2 2 z1 2 z1 2 z2 z1 [ z21 /( z21 z22 )]*[ z2 z1 ] In final form that is used in Kalman filter implementation, it is expressed as x(t2 ) x(t1 ) K (t2 ) *[ z2 x(t1 )] ^ Note that x(t1 ) z1 , and K (t2 ) /( ) 2 z1 2 z1 2 z2 The above equations say that the best estimate at time t2, ^ x(t2 ) , is equal to the best prediction of its value before z2 is ^ taken, x(t1 ) , plus a correction term of an optimal weighting value times the difference between z2 and its best prediction ^ x(t1 ) . So the filter takes the structure of “prediction correction”. From the equation of the variance expressed afore, let us rewrite it as (t2 ) (t1 ) K (t2 ) * (t1 ) 2 x 2 x 2 x ^ This indicates that the value of x(t2 ) and f x (t2 )|z (t1 ), z (t2 ) x2 (t 2 ) embody ( x| z1 , z2 ) all the information in . State differently, by propagating these two values, the conditional density of your position at time t2, given z1 and z2, is completely specified. Thus far, we have solved the static estimation problem, next time let us incorporate the dynamics in the system. (To be described).