Homework Assignments

ECEN/MAE 6423 System Identification

(Homeworks may be collected, or a quiz may be given.)


 Homework #1 (Due August 25)

2E.1, 2E.2, 2E.4, 2E.6, 2E.7



Homework #2 (Due September 8)

1) 3E.1, 3E.2, 3E.3, 4E.1

2) Plot the Bode plots for the following transfer functions manually, and check your answer with the MATLAB "bode" command:

G1(s) = 5(s^2+5s+100)/[s(s+0.5)(s+100)]

G2(s) = 25s/[(s+0.1)(s+1)(s^2+5s+25)]


Homework #3 (Due Sep. 27)

1) 4E.4, 4E.5, 4E.10, 4E.12, 4T.1

2) Write a MATLAB function to simulate the BJ model of Equ. (4.31).  The function should have the format:

    y = boxsim(u,e,th)

    where th contains the model parameters.

3) Write a MATLAB function to compute the residuals (prediction errors) for the BJ model.  The function should have the format:

    e = boxres(y,u,th).


Homework #4 (Due Oct. 6)

Select three spectral windows from the following paper: Harris, "On the use of windows for harmonic analysis with the discrete Fourier transform," Proceedings of the IEEE, vol. 66, no. 1, pp. 51-83.

Write a MATLAB program to estimate the power spectrum with the FFT, using the three windows and the rectangular window.

Generate data from the following process to test your program:

    y(t) -1.27y(t-1) + 0.81y(t-2) = e(t)

where e(t) is white noise, with mean of 0 and variance of 1.

Find and plot the theoretical power spectrum of y, and compare with each of the four estimated power spectra.  Describe the performance of the various windows that you tested.  Which window produced the best performance?


Homework #5 (Due Oct. 20)

Consider the Box-Jenkins model y(t) = G(q)u(t) + H(q)e(t).  Write MATLAB programs to implement the following:

1. Estimate the impulse response g(k) from u(t) and y(t) sequences.

2. Compute the G-GPAC from the impulse response g(k).

3. Compute v(t) = H(q)e(t) from y(t), u(t) and the impulse response g(k).

4. Estimate the autocorrelation function of v(t).

5. Compute the H-GPAC from the autocorrelation function of v(t).

Using your program from homework number 3, generate data from the following process to test your programs:

    B(q) = 1+0.5q^-1; F(q) = 1-0.7q^-1+0.25q^-2; C(q) = 1+0.8q^-1; D(q) = 1-0.5q^-1

Find the theoretical impulse responses, autocorrelation functions, G-GPAC and H-GPAC, and compare with the results from your programs. Vary the variances of u(t) and e(t), and the number of data points, and discuss their effect on the results.  Turn in all of your program listings, along with printouts of GPAC arrays, theoretical calculations, plots of autocorrelation functions and impulse responses (theoretical and estimated).  Be sure to include a detailed discussion of your results. 


Homework #6 (Due Nov. 17)

Consider the Box-Jenkins model y(t) = G(q)u(t) + H(q)e(t).  Write a MATLAB program to implement the following:

Estimate the parameters of the the Box-Jenkins model using the Levenberg-Marquardt algorithm.

Compute the covariance matrix of the parameter estimates. Find confidence intervals for each parameter.

Compute the Q and S chi-square statistics.

Using your program from homework number 3, generate data from the following process to test your program:

    B(q) = 2q^-1+0.5q^-2; F(q) = 1-0.7q^-1+0.25q^-2; C(q) = 1+0.8q^-1; D(q) = 1-0.5q^-1

Vary the variances of u(t) and e(t), and the number of data points, and discuss their effect on the results. Also, use incorrect model orders that are too low to test whether the Q and S statistics can diagnose the problem. (For example, use nf=1 instead of 2.) Also, try model orders that are too high, and verify that either you have pole/zero cancellations, or confidence intervals that include zero.  Discuss all of your results.  Verify that the true parameters fall within your confidence intervals.  Show that the confidence intervals become more narrow as the number of data points increases.


Syllabus