Skip to content Skip to navigation

Connexions

You are here: Home » Content » Kalman Filtering Application

Navigation

Content Actions

  • Download module PDF
  • Add to ...
    Add the module to:
    • My Favorites
    • A lens
    • An external social bookmarking service
    • My Favorites (What is 'My Favorites'?)
      'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.
    • A lens (What is a lens?)

      Definition of a lens

      Lenses

      A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

      What is in a lens?

      Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

      Who can create a lens?

      Any individual Connexions member, a community, or a respected organization.

    • External bookmarks
  • E-mail the authors

Recently Viewed

Kalman Filtering Application

Module by: Clayton Scott, Robert Nowak

Time Varying Channel Estimation

Figure 1
Multipath Communications Channel
Multipath Communications Channel (mcc.png)
This effect is the result of many propagation paths, each of which delays and attenuates the input signal.

Additionally, the channel is time-varying due to movement of the source, receiver, and/or scattors. Therefore, the channel is acting like a linear time varying filter. Due to the time-varying nature of the channel, a sinusoidal input does not produce a pure sinusoid at the output Figure 2.

Figure 2
Figure 2 (timeVary.png)
Instead, the output is a narrowband process. Assuming the channel is relatively slowly varying (compared to the frequency of the input) we can view the input sinusoids as being amplitdue modulated by the time-varying channel. This effect is referred to as fading and such channels are called fading multipath channels. If we sample the output of the channel, then a very good model is the low-pass tapped delay line model:
yn=k=0p-1 h n kvn-k y n k 0 p 1 h n k v n k (1)
Where yn y n is the output, h n k h n k is the impulse response depending on time nn, and vn-k v n k is the input. This is simply an FIR filter with time-varying coefficients. In practice we wouldn't observe this perfect output, but rather a noise-corrupted version of it:
xn=k=0p-1 h n kvn-k+wn x n k 0 p 1 h n k v n k w n (2)
Where wn w n is observation noise. The goal of channel estimation is to determine the linear time-varying filter h n k h n k based on the input vn v n and measured output xn x n . Is this possible?

Assume vn=0 v n 0 for n<0 n 0 . Then x0= h 0 0v0+ h 0 1v-1+w0= h 0 0v0+w0 x 0 h 0 0 v 0 h 0 1 v -1 w 0 h 0 0 v 0 w 0

x1= h 1 0v1+ h 1 1v0+w1 x 1 h 1 0 v 1 h 1 1 v 0 w 1 (3)
x2= h 2 0v2+ h 2 1v1+w2 x 2 h 2 0 v 2 h 2 1 v 1 w 2 For each n1 n 1 we have two new parameters we must estimate!

Even in the absence of measurement noise we have more unknowns than equations and we can't determine the filter. What can we do?

Well, suppose that the filter weights are not changing too rapidly from sample to sample. This is known as a slow-fading channel model. Probabilistically, we can view the slowly varying channel as a vector-valued Gauss-Markov process:

hn+1=Ahn+un h n 1 A h n u n (4)
Where hn= h n 0 h n p-1T h n h n 0 h n p 1 , A A is a ppxpp matrix designed to reflect the correlation expected between filter weights at different time samples, and un u n is a white Gaussian noise vector process with covariance Q Q. That is, un-1unun+1 u n 1 u n u n 1 are iid vectors and un0Q u n 0 Q . A standard simplifying assumption is to assume that A A and Q Q are diagonal which implies that the filter weights are uncorrelated with each other. This is called an uncorrelated scattering model.

The measurement/observation model in vector form is

x n =vnThn+ w n x n v n h n w n (5)
Where vn=vnvn-1vn-p+1T v n v n v n 1 v n p 1 . With this notation and our Gauss-Markov model for the time-varying filter, we can now devise a Kalman filter to estimate and track the channel.

In the case we have the state equation:

n,n0:hn+1=Ahn+un n n 0 h n 1 A h n u n (6)
(with hn h n in place of yn y n now). Furthermore, assume that h00R0 h 0 0 R 0 with R0 R 0 also diagonal. The measurement equation:
x n =vnThn+ w n x n v n h n w n (7)
Note that vn v n is known, but time-varying. In our earlier discussion the C C vector of the observation model was constant. The Kalman filter still is applicable here, we just replace C C with vn v n .

Kalman Filter

h ̂ n | n = h ̂ n | n - 1 +Kn x n -vnT h ̂ n | n - 1 h ̂ n | n h ̂ n | n - 1 K n x n v n h ̂ n | n - 1 (8)
Where h ̂ n | n h ̂ n | n is the best estimate of channel given measurements up to time nn.
h ̂ n | n - 1 =A h ̂ n - 1 | n - 1 h ̂ n | n - 1 A h ̂ n - 1 | n - 1 (9)
Kn=P n | n - 1 vn γ n -1 K n P n | n - 1 v n γ n (10)
γ n -1=vnTP n | n - 1 vn+ σ w 2 γ n v n P n | n - 1 v n σ w 2 (11)
P n | n =P n | n - 1 - γ n KnKnT P n | n P n | n - 1 γ n K n K n (12)
P n | n - 1 =AP n - 1 | n - 1 AT+Q P n | n - 1 A P n - 1 | n - 1 A Q (13)

Notice:

Q Q is the covariance of vector un u n process instead of σ u 2bbT σ u 2 b b (which is a special case with un=b u n u n b u n , where u n u n is a scalar).

Slow-Fading Model Parameters

Example 1

p=2 p 2 A=0.999000.999 A 0.999 0 0 0.999 which is the state transition matrix. Q=0.0001000.0001 Q 0.0001 0 0 0.0001 which is the driving noise covariance. To reflect little or no knowledge about the initial state of the channel h0010000100 h 0 0 100 0 0 100 Channel model:

xn= h n 0vn+ h n 1vn-1+wn x n h n 0 v n h n 1 v n 1 w n (14)
Where vn v n is the input to the channel, a known square wave, h n k h n k is the time-varying channel model (linear time-varying FIR filter), and wn w n is white Gaussian observation noise.
Figure 3
Noise-Free Channel Output y
Noise-Free Channel Output y (.png)
Figure 4
Observation Channel Output x
Observation Channel Output x (.png)
Figure 5
Channel h
Channel h (.png)
Figure 6
Channel Filter Weight h(1)
Channel Filter Weight h(1) (.png)
Figure 7
Channel Filter Weight h(2)
Channel Filter Weight h(2) (.png)

Comments, questions, feedback, criticisms?

Send feedback