eece 522 notes_29 ch_13a

Upload: karim2005

Post on 04-Apr-2018

232 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    1/14

    1

    Ch. 13Kalman Filters

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    2/14

    2

    IntroductionIn 1960, Rudolf Kalman developed a way to solve some of the

    practical difficulties that arise when trying to apply Weiner filters.

    There are D-T and C-T versions of the Kalman Filter we will

    only consider the D-T version.

    The Kalman filter is widely used in:

    Control Systems

    Navigation Systems Tracking Systems

    It is less widely used in signal processing applications

    KF initially arose in thefield of control systems

    in order to make a

    system do what you

    want, you must know

    what it is doing now

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    3/14

    3

    The Three Keys to Leading to the Kalman Filter

    Wiener Filter: LMMSE of a Signal (i.e., a Varying Parameter)

    Sequential LMMSE: Sequentially Estimate a FixedParameter

    State-Space Models: Dynamical Models for Varying Parameters

    Kalman Filt er : Sequent ial LMMSE Est imat ion f or a t ime-var ying par amet er vect or but t he t ime var iat ion is

    const r ained t o f ollow a st at e- space dynamical model.

    Aside: There are many ways to mathematically model dynamical systems

    Differential/Difference Equations

    Convolution Integral/Summation

    Transfer Function via Laplace/Z transforms

    State-Space Model

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    4/14

    4

    13.3 State-Variable Dynamical ModelsSystem State: the collection of variables needed to know how to determine how

    the system will exist at some future time (in the absence of an input)

    For an RLC circuit you need to know all of its current capacitor voltages and all

    of its current inductor currents

    Motivational Example: ConstantVelocity Aircraft in 2-D

    =

    )(

    )(

    )(

    )(

    )(

    tv

    tv

    tr

    tr

    t

    y

    x

    y

    x

    s

    A/C positions (m)For t he const ant velocit y model we

    would const r ain vx(t) & vy(t) t o beconst ant s Vx & Vy.A/C velocities (m/s)

    If we know s(to) and there is no input we know how the A/Cbehaves for all future times: rx(to + ) = Vx + rx(to)

    rx(to + ) = rx(to) + Vxry(to + ) = ry(to) + Vy

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    5/14

    5

    D-T State Model for Constant Velocity A/CBecause measurements are often taken at discrete times we often

    need D-T models for what are otherwise C-T systems(This is the same as using a difference equation to approximate a differential equation)

    If every increment ofn corresponds to a duration of sec and

    there is no driving force then we can write a D-T State Model as:

    =

    1000

    0100

    010

    001

    A

    ]1[][ = nn Ass

    State Transition Matrix

    rx[n] = rx[n-1] + vx[n-1]

    ry [n] = ry[n-1] + vy[n-1]

    vx[n] = vx[n-1]

    vy[n] = vy[n-1]

    We can include the effect of a vector input:

    ][]1[][ nnn BuAss +=

    Input could be deterministic and/or random.

    Matrix B combines inputs & distributes them to states.

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    6/14

    6

    Thm 13.1 Vector Gauss-Markov Model Dont confusewith the G-M

    Thm. of Ch. 6This theorem characterizes the probability model for a

    specific state-space model with Gaussian Inputs

    ][]1[][ nnn BuAss +=Linear St at e Model: n 0

    p1 ppknown

    prknown

    r1

    s[n]: state vector is a vector Gauss-Markov processA: state transition matrix; assumed |i| < 1 for stability

    B: input matrix

    u[n]: driving noise is vector WGN w/ zero means[-1]: initial state ~N( s,Cs) and independent ofu[n]

    eigenvalues

    u[n] ~N(0,Q)E{u[n] uT[m]} = 0, n m

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    7/14

    7

    Theorem:

    s[n] for n 0 is Gaussian with the following characteristics

    Mean of state vector is { } sAs 1][ += nnE diverges if e-valueshave |i| 1

    Covariance between state vectors at m and n is

    { }( )

    =

    +++ +=

    =m

    nmk

    Tkn-mTkTnm

    TnEnmEmEnmnm

    )(

    ]}][{][]}][[{][[],[:for

    11 ABQBAACA

    ssssC

    s

    s

    ],[],[:for mnnmnm Tss CC =< State Process is Not WSS!

    Covariance Matrix: C[n] = Cs[n,n] (this is just notation)

    Propagation of Mean & Covariance:

    { } { }TT

    nn

    nEnE

    BQBAACC

    sAs

    +=

    =

    ]1[][

    ]1[][

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    8/14

    8

    Pr oof : (only for the scalar case:p = 1)

    For the scalar case the model is: s[n] = a s[n-1] + b u[n] n 0

    differs a bit from (13.1) etc.

    Now we can just iterate this model and surmise its general form:

    ]0[]1[]0[ buass +=

    ]1[]0[]1[

    ]1[]0[]1[

    2buabusa

    buass

    ++=

    +=

    ]2[]1[]0[]1[

    ]2[]1[]2[

    23 buabubuasa

    buass

    +++=

    +=

    =

    + +=n

    k

    kn knbuasans

    0

    1 ][]1[][

    !Now easy to find the mean:

    { } { } { }

    sn

    n

    k

    kn

    a

    knuEbasEansE

    s

    1

    0 0

    1][]1[][

    +

    = ==

    +

    =

    += "#"$%"#"$%

    as claimed!

    z.i. response

    exponential

    z.s. response

    convolution

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    9/14

    9

    Covariance between s[m] and s[n] is:

    { }

    = = +=

    ++

    =

    +

    =

    +

    ++

    +=

    +

    +=

    =

    m

    k

    m

    l

    l

    kmnl

    ks

    nm

    n

    l

    ls

    n

    m

    k

    ks

    m

    Ts

    ns

    ms

    balnukmuEbaaa

    lnbuansa

    kmbuamsaE

    ansamsEnmC

    u0 0

    )]([

    211

    0

    1

    0

    1

    11

    2

    ]}[][{

    ][]][[

    ][]][[

    ]][][][[],[

    }

    {

    )(

    )(

    """ #""" $%

    Must use different

    dummy variables!!

    Cross-terms will

    be zero why?

    =

    +++ +=m

    nmk

    kmnu

    ks

    nms babaaanmC

    2211],[ For m n:

    For m < n: ],[],[ mnCnmC ss =

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    10/14

    10

    For mean & cov. propagation: from s[n] = a s[n 1] + b u[n]

    "#"$%"""" #"""" $% 0theoreminaspropagates

    ]}[{]}1[{]}[{

    =

    += nuEbnsaEnsE

    { }

    { }

    { } { }bnuEbansEnsEa

    nsaEnbunasE

    nsEnsEns

    uns

    "#"$%""""" #""""" $%2

    ][]})1[{]1[(

    ]})1[{][]1[(

    ]})[{][(]}[var{

    2

    ]}1[var{

    2

    2

    2

    ==+=

    +=

    =

    which propagates as in theorem< End of Proof >

    So we now have:

    Random Dynamical Model (A St at e Model) St at ist ical Char act er izat ion of it

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    11/14

    11

    Random Model for Constant Velocity A/C

    +

    =

    =

    ][

    ][

    0

    0

    ]1[

    ]1[

    ]1[

    ]1[

    1000

    0100

    010

    001

    ][

    ][

    ][

    ][

    ][

    nu

    nu

    nv

    nv

    nr

    nr

    nv

    nv

    nr

    nr

    n

    y

    x

    y

    x

    y

    x

    y

    x

    y

    x

    s

    Deterministic Propagationof Constant-Velocity

    Random Perturbation

    of Constant Velocities

    =

    2

    2

    000

    000

    0000

    0000

    ]}[cov{

    u

    u

    n

    u

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    12/14

    12

    0 2000 4000 6000 8000 10000 12000 14000 16000 180000

    2000

    4000

    6000

    8000

    10000

    12000

    14000

    X position (m)

    Ypos

    ition(m)

    m/s100]1[]1[

    m0]1[]1[

    m/s5

    sec1

    ==

    ==

    =

    =

    yx

    yx

    u

    vv

    rr

    Ex. Set of Constant-Velocity A/C TrajectoriesRed Line is Non-Random

    Constant Velocity Trajectory

    Acceleration of

    (5 m/s)/1s = 5m/s2

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    13/14

    13

    Observation ModelSo we have a random state-variable model for the dynamics of

    the signal ( the signal is often some true A/C trajectory)

    We need to have some observations (i.e., measurements) of the

    signal

    In Navigation Systems inertial sensors make noisy measurements

    at intervals of time

    In Tracking Systems sensing systems make noisy measurements(e.g., range and angles) at intervals of time

    ][][][][ nnnn wsHx +=Linear Observat ion Model:

    Measured observation

    vector at each time

    allows multiple

    measurements at each time

    Observation Matrix

    can change w/ time

    State Vector Process

    being observed

    Vector Noise

    Process

  • 7/30/2019 Eece 522 Notes_29 Ch_13a

    14/14

    14

    The Estimation ProblemObserve a Sequence of Observation Vectors {x[0], x[1], x[n]}

    Compute an Estimate of the State Vector s[n]

    ]|[ nns

    estimate state at nusing observation up to n

    Notation: ]|[ mns = Estimate ofs[n] using {x[0], x[1], x[m]}

    Want Recur sive Solut ion:

    Given: ]|[ nns and a new observation vector x[n + 1]

    Find: ]1|1[ ++ nns

    Thr ee Cases of I nt er est : Scalar St at e Scalar Obser vat ion Vect or St at e Scalar Obser vat ion Vect or St at e Vect or Obser vat ion