Professional Documents
Culture Documents
Notes:
(1) The computer assignments can be solved using Scilab, GNU Octave, SciPy or any other
free/open source software kit. Solutions that work only on Matlab will not be accepted.
(2) Copying will be dealt with strictly. Institute disciplinary procedures will be invoked if any
form of cheating is detected.
Problem 1
(10 points) This is an example similar to the noise cancellation example we looked at in class. Let
x[n] = d[n] + g[n]
where d[n] = sin(n0 +), 0 = /20 and is a random variable that is distributed uniformly
between and . Assume that g[n] is unit variance white noise. Suppose that a noise process
v2 [n] that is correclated with g[n] is measured by a secondary sensor. The noise v2 [n] is related
to g[n] by a ltering operation:
v2 [n] = 0.8v2 [n 1] + g[n]
(a) Generate N = 500 samples of the processes x[n] and v2 [n].
(b) Derive the Wiener-Hopf equations that dene the optimum p-th order FIR lter for estimating
g[n] from v2 [n].
(c) Using lters of order p = 2, 4 and 6, design and implement the Wiener noise cancellation
[n] and compare the average squared errors for each lter.
lters. Plot the estimated process g
You can use the sample averaged autocorrelation and cross-correlations from the samples
generated in (a), i.e. use
1 N1
rv2 = v2 [n]v2 [n k]
N n=0
rxv2
1 N1
= x[n]v2 [n k]
N n=0
(a) Assume that the lter (not necessarily the optimal lter) used to lter x[n] to obtain d[n]
is
T
T
= [w[0] w[1]] = [x y] . Plot the error surface (x, y) as a 3D plot.
(b) Implement gradient descent to nd the optimal for various step sizes. That is, implement
the following iteration:
n+1 = n [n]
where [n] is the gradient of evaluated at the current n . Set your initial guess 0 to
[0 0]T , and run the iterations for = 0.001, = 0.01 and = 0.1. For each value, plot
n [0] versus the iteration counter n, and the error [n] versus n. What do you observe for
various values, and what is your conclusion?