1 Homework 4 Fall 2015 EE 573 Due 10/23(F) Name_________________________________________ Problem 1. (25pts) Consider a measurement process, xt st nt that is the sum of a signal that is statistically independent of the noise, and where the signal and noise processes are: Signal: s t is an AR(2) process st a1st 1 a2 st 2 ut ; Noise: n t is an AR(1) process: nt b1nt 1 vt . n For an ARMA(n,m) process of the form: xt m ak xt k k 1 b w k k 0 n then X ( z) G( z)W ( z) , where G( z) B( z) / A( z) with A( z ) ; b0 1 where wt is white with power w2 , t k a z k k m & B( z ) k 0 b z k k ; a0 1 . k 0 Hence, for z e i the Wiener-Kinchine Theorem gives S x () | G(e j ) |2 w2 . (a) (3pts) Use the above to compute the theoretical closed form, real-valued expression for the psd of the noise, Sn () involving ω, b1 & v2 . Solution: (b) (5pts) Use the above to compute the theoretical closed form, real-valued expression for the psd of the signal, S s () . involving ω, a1 , a2 & u2 . Solution: (c) (3pts) Suppose that the polynomial in the denominator of the transfer function for the signal has complex conjugate roots z1,2 e j . Compute the expressions for a1 & a 2 in terms of & . Solution: (d) (5pts) Suppose you have the following numerical information: Signal: The signal, s t has power Rs (0) 1.0 , and has complex conjugate poles at 0.9 e i 2 0.2 . Noise: The noise, nt has power Rn (0) 2.0 , and has a real pole at 0.7. (i) Show that the noise driving noise has v2 1.02 Solution: (ii) Show that the signal driving noise has u2 0.31 by solving the appropriate autocorrelation equations directly for the tr unknowns u2 Rs (1) Rs (2) directly (i.e. do not integrate the psd). Solution: 2 (e)(4pts) For the numerical values in (d), overlay plots of the psd’s you computed in (a) and (b) for 1000 equally spaced frequencies over the interval [0, π). They should have units of dBs. Figure 1(e) Theoretical signal (red) and noise (blue) psd’s. (f) (5pts) Recall that the z-transform of a sequence {c k }k 0 is defined as C ( z ) c z k k . Use this and the Matlab k 0 command ‘fft’ (with zero-padding) to compute and overlay plot the signal and noise psd’s directly on the plots you obtained in (e). They should have units of dB, and S s () should have the color RED and Sn () should have the color BLUE. Both of these plots should have the form of dashed lines. If done correctly, you should find that (f) and (g) give exactly the same thing. NOTE: Your fft must include 2000 frequencies in order to have 1000 frequencies over [0, π). Solution: 3 Problem 2. (25pts) Consider again the signal-plus-noise setting where the measurement process is xt st nt , and where the signal and noise are uncorrelated with each other. The Wiener Filter estimator is that filter-data signal estimator S () H () X () that satisfies orthogonality condition: E{[ S ( ) S ( )]S ( )} 0 (C1). (a)(5pts) Use the linearity of E(*) to show that H () S s () /[S s () Sn ()] . Solution: (b) (5 pts) For the psd’s as computed in Problem 1(f), compute and plot the Wiener Filter. [Do not use dB.] Compute it over the entire frequency range {k 2 (k 1) / 2000}2000 k 1 , but only plot it up to the Nyquist frequency. Solution: (See code lines ##-##) Figure 2(b) Theoretical Wiener filter. (c) (15pts) To verify that your filter is correct, simulate a 2000-point time series for x t of Problem 1. Then use your filter in (b) to recover the signal estimate.(i) Overlay plots of s t and s t . (ii) Plot a zoomed region to better see how well the filter works. (iii) Compute the numerical value of the average squared error mse (1 / n) n (s s ) t 2 t Note 1: Generate 2500 t 1 points & discard the first 500 points associated with the start-up transient. Note 2: Do not discard this data set. You will need it in Problem 3. Solution: (See code lines ##-##) Figure 2(c) An example of the performance of the filter (right is a zoomed plot). (iii) mse 0.278 4 Problem 3 (25pts) You will now proceed to determine whether the numerical value of the average squared error you obtained in Problem 2(c) is reasonable. S ( ) S nn ( ) (a)(5pts) Show that the frequency domain theoretical mean squared error is MSE ( ) ss . S ss ( ) S nn ( ) Solution: (b)(5pts) For your psd’s computed in Problem 1(d), compute and plot MSE(ω). This plot should not be in dB. Solution: (See code lines ##-##) Figure 3(b) The MSE(f). (c)(5pts) Define the relative mean squared frequency domain prediction error: RMSE ( ) MSE ( ) / S ss ( ) . (i)Obtain the expression for RMSE() . (ii) Plot it. (iii) Explain why it offers more insight into the performance of the Wiener filter. Solution: (i) Explanation: Figure 3(c) The RMSE(f). (d)(5pts) Since all of the processes involved are wss, it should be clear that the time domain mse does not depend on time; that is mse (t ) E[e(t ) 2 ] mse . Since MSE(ω) is simply the mean squared error per unit frequency, it follows that mse is simply the integral of MSE(ω) over [0, 2π). For your 2000 discrete frequencies on this interval, (i) use a Riemann sum approximation of the integral to get a numerical value for mse. (ii) Discuss how it compares to your answer in Problem 2(c). Solution: (e)(5pts) Recall that mse is nothing more than the variance of the error at any time. Hence the root mse (denoted rmse), which is the square root of mse, is simply the standard deviation of the error, e(t) for any time t, is a random variable. Furthermore, the collection {e(t ) ; t (, )} is a wss random process. Use your partial realization of the process obtained in (c) to investigate the normality of the pdf of e(t) for any time t. Solution: The N(0,.527) model works well. Figure 1.6 Scaled histogram of e(t). 5 Problem 4. (25 pts) In Problem 2 you used the theoretical Wiener filter to obtain the signal estimate. Often, the signal, noise and/or measurement psd’s are not known, and must be estimated from data. In this problem you are to assume that you have access to noise measurements and to signalplus-noise measurements only. (a)(5pts) Simulate a 10,000 point time series of the noise process. Then estimate and plot (in dB) the noise psd via Matlab’s (or your own) psd code. Solution: (See code lines ##-##) Figure 4(a&b) Noise (black) & signal-plus-noise (blue) psd estimates. (b)(5pts) Repeat (a) for the signal-plus-noise process. Overlay this psd estimate on that obtained in (a). Solution: (See code lines ##-##) (c)(5 pts) Using your results in (a) and (b), plot the estimated Wiener filter. Note: Clearly H () 1 Sn () / Sx () . Since the ratio in this expression is a ratio of psd estimates, it is possible that it might be < 0 for some frequencies. Since, it is impossible for the true W.F. to be < 0, you should be careful to truncate any negative number to 0. Solution: (See code lines ##-##) Figure 4(c) Wiener filter estimate based on Figure 1.7. (d)(5pts) Apply your estimated Wiener filter to the data set of Problem 2(c). Then overlay plots of the true signal, the estimate obtained by the theoretical W.F. and the one obtained using your estimated W.F. Solution: (See code lines ##-##) Figure 4(d) Illustration of the performance of the Matlab psd-based estimated Wiener filter in recovering the signal. (e)(5pts) Compute the average squared error associated with your estimated W.F. and discuss how it compares to that associated with the theoretical W.F. Solution: 6 APPENDIX Matlab Code