KALMAN FILTERS IN ARTIFICIAL INTELLIGENCE

medhivyara 7 views 19 slides Aug 29, 2025
Slide 1
Slide 1 of 19
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19

About This Presentation

NICE


Slide Content

Kalman’s Beautiful Filter
(an introduction)
George Kantor
presented to
Sensor Based Planning Lab
Carnegie Mellon University
December 8, 2000

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
What does a Kalman Filter do, anyway?
xk FkxkGkukvk
ykHkxkwk
()()()()()()
()()()()
  
 
1
xk n
uk m
yk p
FkGkHk
vkwk
QkRk
()
()
()
(),(),()
(),()
(),()
is the -dimensional state vector (unknown)
is the -dimensional input vector (known)
is the -dimensional output vector (known, measured)
are appropriately dimensioned system matrices (known)
are zero-mean, white Gaussian noise with (known)
covariance matrices
Given the linear dynamical system:
the Kalman Filter is a recursion that provides the
“best” estimate of the state vector x.

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
What’s so great about that?
•noise smoothing (improve noisy measurements)
•state estimation (for state feedback)
•recursive (computes next estimate using only most
recent measurement)
xk FkxkGkukvk
ykHkxkwk
()()()()()()
()()()()
  
 
1

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
How does it work?
xk FkxkGkukvk
ykHkxkwk
()()()()()()
()()()()
  
 
1
)|1(ˆ)()(ˆ
)()()|(ˆ)()|1(ˆ
kkxkHky
kukGkkxkFkkx


1. prediction based on last estimate:
2. calculate correction based on prediction and current measurement:
 )|1(ˆ),1( kkxkyfx 
3. update prediction: xkkxkkx  )|1(ˆ)1|1(ˆ

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Finding the correction (no noise!)
. of estimate best"" theis
ˆˆ that so find ,output and ˆ predictionGiven
x
xxxxyx 

Hxy
 yHxx  |




1

TT
HHHx

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
A Geometric Interpretation
 yHxx  |



x

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
A Simple State Observer
)()(
)()()()1(
kHxky
kvkGukFxkx


)()|(ˆ)|1(ˆ kGukkxFkkx 
 )|1(ˆ)1(
1
kkxHkyHHHx
TT


xkkxkkx  )|1(ˆ)1|1(ˆ
System:
1. prediction:
2. compute correction:
3. update:
Observer:

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
where is the covariance matrix
Estimating a distribution for x
Our estimate of x is not exact!
We can do better by estimating a joint Gaussian distribution p(x).
 )ˆ()ˆ(
2
1
2/12/
1
)2(
1
)(
xxPxx
n
T
e
P
xp





 
T
xxxxEP )ˆ)(ˆ( 

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Finding the correction (geometric intuition)
. of estimate probable)most (i.e. best"" theis ˆˆ
that so find ,output and , covariance ,ˆ predictionGiven
xxxx
xyPx




 yHxx  |



x
xPx
xxx
x
T





1
minimizes 2.
ˆˆ satisfies 1.
: thatone theis probablemost The
 )ˆ()ˆ(
2
1
2/12/
1
)2(
1
)(
xxPxx
n
T
e
P
xp




Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
A new kind of distance
:be toon product inner new a define weSuppose
n
R
)product inner old thereplaces (this ,
212
1
121 xxxPxxx
TT

xPxxxx
T12
, norm new a definecan Then we


. toorthogonal is so , onto
ˆ of projection orthogonal theis minimizes that in ˆ The



x
xxx
)(Tin for 0, Hnullx  
)( iff 0,
1 TT
PHcolumnxxPx 



Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Finding the correction (for real this time!)
ˆin linear is that Assuming
 xHyx 
KPHx
T


 xHyxHxxHy ˆ ) ˆ(condition The
:yieldson Substituti
 KHPHxH
T

 
1

T
HPHK
 
1



TT
HPHPHx

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
A Better State Observer
We can create a better state observer following the same 3. steps, but now we
must also estimate the covariance matrix P.
Step 1: Prediction
We start with x(k|k) and P(k|k)
)()|(ˆ)|1(ˆ kGukkxFkkx 
What about P? From the definition:
 
T
kkxkxkkxkxEkkP ))|(ˆ)())(|(ˆ)(()|( 
and
 
T
kkxkxkkxkxEkkP ))|1(ˆ)1())(|1(ˆ)1(()|1( 

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Continuing Step 1
To make life a little easier, lets shift notation slightly:
 
T
kkkkk xxxxEP )ˆ)(ˆ(
11111





 
   
T
kkkkkkkkkk GuxFvGuFxGuxFvGuFxE )ˆ()ˆ( 
     
T
kkkkkk
vxxFvxxFE  ˆˆ
     
T
k
T
kk
TT
kkkk
kk
vvvxxFFxxxxFE  ˆ2ˆˆ
    
T
k
TT
kkkk
k
vvEFxxxxFE  ˆˆ
QFFP
T
k

QFkkFPkkP
T
 )|()|1(

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Step 2: Computing the correction
).|1( and )|1(ˆget we1 step From kkPkkx 
: compute to theseuse weNow x
   )|1(ˆ)1( )|1()|1(
1
kkxHkyHkkHPHkkPx
T


For ease of notation, define W so that
Wx

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Step 3: Update
)|1(ˆ)1|1(ˆ Wkkxkkx 
 
T
kkkkk
xxxxEP )ˆ)(ˆ(
11111 

 
T
kkkk
WxxWxxE )ˆ)(ˆ(
1111
 




(just take my word for it…)
TT
WHkkWHPkkPkkP )|1()|1()1|1( 

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Just take my word for it…
 
T
kkkkk
xxxxEP )ˆ)(ˆ(
11111 

 
T
kkkk
WxxWxxE )ˆ)(ˆ(
1111
 




  










T
kkkk
WxxWxxE  )ˆ()ˆ(
1111
 
TT
kk
T
kkkk WWxxWxxxxE  





 )ˆ(2)ˆ)(ˆ(
111111
 
TTT
kkkk
T
kkkkk
WHxxxxWHxxxxWHEP )ˆ)(ˆ()ˆ)(ˆ(2
111111111











TT
kkk
WHWHPWHPP







111
2
 
TT
kk
T
k
T
kk WHWHPHPHHPHPP










 
11
1
1112
   
TT
kk
T
k
T
k
T
k
T
kk WHWHPHPHHPHHPHHPHPP















 
11
1
11
1
1112
TT
k
TT
kk
WHWHPWHWHPP







111
2

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Better State Observer Summary
)()(
)()()()1(
kHxky
kvkGukFxkx


System:
1. Predict
2. Correction
3. Update
)()|(ˆ)|1(ˆ kGukkxFkkx 
QFkkFPkkP
T
 )|()|1(
  )|1()|1(
1

T
HkkHPHkkPW
  )|1(ˆ)1( kkxHkyWx 
)|1(ˆ)1|1(ˆ Wkkxkkx 
TT
WHkkWHPkkPkkP )|1()|1()1|1( 
O
b
s
e
r
v
e
r

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
Finding the correction (with output noise)
wHxy 
 yHxx  |



Since you don’t have a hyperplane to
aim for, you can’t solve this with algebra!
You have to solve an optimization problem.
That’s exactly what Kalman did!
Here’s his answer:
  


 xHyRHPHPHx
TT
ˆ
1

Kalman Filter Introduction Carnegie Mellon University
December 8, 2000
LTI Kalman Filter Summary
)()()(
)()()()1(
kwkHxky
kvkGukFxkx


System:
1. Predict
2. Correction
3. Update
)()|(ˆ)|1(ˆ kGukkxFkkx 
QFkkFPkkP
T
 )|()|1(
)|1(ˆ)1|1(ˆ Wkkxkkx 
T
WSWkkPkkP  )|1()1|1(
K
a
l
m
a
n

F
i
l
t
e
r
)|1(
1
 HSkkPW
  )|1(ˆ)1( kkxHkyWx 
R )|1( 
T
HkkHPS
Tags