EE578/EE978 Assignment 2
Wiener-Hopf Solution and LMS Algorithm
December 30, 2020
Q1. System Identification Via Wiener-Hopf.
You are trying to identify an unknown system with impulse response c[n] ◦—• C(z) and trans-
fer function C(z) = 1− 1
2
z−1+ 1
4
z−2 using the structure in Fig. 1. For the purpose of question
Q1, the input signal x[n] ∈ N (0, 1) is uncorrelated.
(a) For an adaptive filter of length L = 3, determine (by hand, using ensemble statistics) the
covariance matrix R = E
{
xnx
H
n
}
and the cross-correlation vector P = E{xnd
∗[n]}.
(b) Determine, by hand, the Wiener-Hopf solution wopt = R
−1p, given the quantities in
Q1.(a).
(c) Determine the Wiener-Hopf solution for the case where your adaptive filter has a length
of
(i) L = 2, and
(ii) L = 4,
and briefly comment on the difference to the result in Q1.(b).
(d) In Matlab, generate 1000 samples of the signal x[n]. From this signal, estimate the
sample covariance matrix Rˆ and the sample cross-correlation vector pˆ, and determine
the Wiener-Hopf solution wopt = Rˆ
−1pˆ.
Q2. System Identification Setup with Correlated Input.
The setup is the same for for Q1 in Fig. 1, but the input is now x[n] = cos(npi).
c[n]
w[n]
+x[n] e[n]
d[n]
y[n]

Fig. 1: Setup with an adaptive filter w[n].
(a) Even though x[n] is a deterministic signal, we can state an autocorrelation function. Show
that rxx[τ ] = cos(τpi) expresses the autocorrelation of x[n].
(b) For an adaptive filter of length L = 3, what numerical values do you now obtain for the
ensemble statistics R and p?
(c) Does the Wiener-Hopf solution exist? If so, can you determine it? If not, can you find
another solution that minimises the error e[n] appropriately?
(d) Implement 1000 samples of the signal x[n] in Matlab, estimate the sample covariance
matrix Rˆ and the sample cross-correlation vector pˆ for L = 3. Can you determine the
Wiener-Hopf solution? How does this compare to Q1.(d) and Q2.(c)?
Q3. LMS Algorithm.
(a) Implement the LMS algorithm for the scenario of Fig. 1 in Matlab, and adapt the filter
for L = 3 using 1000 samples for x[n] ∈ N (0, 1). State two performance metrics that
allow to assess how well your implementation works.
(b) Using your LMS implementation, now operate with x[n] = cos(npi). Check that your
filter works, and in particular compare w[n] to c[n], or W (ejΩ) to C(ejΩ) for the adapted
filter. What do you observe? How does this compare to the experimental Wiener-Hopf
approach in Q2.(d)?
S. Weiss, December 30, 2020

Email:51zuoyejun

@gmail.com