reffec.com

Figure 15.16 Channel model for Problem 15.7. in Software Print ean13+2 in Software Figure 15.16 Channel model for Problem 15.7.

Figure 15.16 Channel model for Problem 15.7. generate, create upc-13 none with software projects Microsoft Office Word Website i i i i i TranterBook 2003/11/18 16:12 page 625 #643. Section 15.10. Problems (a) Generate a 10,00 Software EAN/UCC-13 0-bit sequence with p = 0.01 and q = 0.99.

Construct a histogram of the burst length and the inter-error gap (error-free run) distributions. (b) Discuss how p and q can be estimated emperically from a histogram of (simulated) burst length and inter-error gap distributions. Estimate p and q.

(c) Use the Baum-Welch algorithm to estimate p and q. Compare with the empirical estimates obtained from the histograms. 15.

8 Develop a gure similar to Figure 15.9 for the Fritchman model 0 a14 a15 a11 0 0 a22 0 a24 a25 0 a33 a34 a35 A= 0 a41 a42 a43 a44 0 a51 a52 a53 0 a55 15.9 Generalize c15 hmmtest.

m for a N -state model. 15.10 Rework Example 15.

4 by estimating a two-state model. Compare the estimated model with the original two-state model. Plot the estimated parameters as a function of the number of iterations up to 20 iterations.

Discuss the convergence. 15.11 Rework Example 15.

4 using, as initial conditions to the Baum-Welch algorithm, the matrices A and B that were used to generate the original error vector. Discuss the convergence. 15.

12 Rework Example 15.4 with N = 4, 3, and 2, where N is the number of states in the stimated model. Compare the likelihood metric after convergence is reached.

Use as input to the Baum-Welch algorithm the data generated by the two-state model used in Example 15.2. Work this problem several times using di erent initial conditions for the Baum-Welch algorithm and discuss the results.

15.13 Modify the Baum-Welch algorithm given in Appendix A (c15 bwa.m) so that one does not have to enter initial guesses for the matrices A, B, and .

Make the elements of A and B random but reasonable. (For example, the ondiagonal elements of the A matrix are typically larger than the o -diagonal terms.) For the initial matrix make all values equal.

Test your resulting program by reworking Example 15.4 several times. What do you observe 15.

14 Modify the MATLAB code for Example 15.4 so that the CPU time spent in the model estimation algorithm can be measured. After this is accomplished, rework Example 15.

4 for error vectors having length N = 20,000 and 100,000. Compare the times required to estimate the model. Also compare the error probabilities.

. i i i i i TranterBook Software EAN13 2003/11/18 16:12 page 626 #644. Discrete Channel Models 15 . 15.15 Rework Example 15.5 assuming two good states and two bad states.

15.16 Assume that a discrete channel is 0.990 0.

120 A= 0.150 0.040 de ned by the state transition matrix 0.

001 0.003 0.006 0.

600 0.180 0.100 0.

200 0.500 0.150 0.

030 0.130 0.800.

Determine an equival Software ean13+2 ent block diagonal Markov model having two good states and two bad states. (Note: This channel model represents another test case presented by Sivaprakasam and Shanmugan [6]. The student should compare the result with that found by Sivaprakasam and Shanmugan.

). i i i i i TranterBook Software ean13+2 2003/11/18 16:12 page 627 #645. Section 15.11. Appendix A: Error Vector Generation Appendix A: Error Vector Generation Program: c15 errvector.m % File: c15_errvecto r.m disp( ) disp( Default values are: ) N = 20000 % default N A = [0.8 0.

1 0.1; 0.2 0.

6 0.2; 0.02 0.

08 0.90] % default A B = [0.999 0.

95 0.99; 0.001 0.

05 0.01] % default B disp( ) disp( Accept default values ) dtype = input( Enter y for yes or n for no > , s ); if dtype == n N = input( Enter N, the number of points to be generated > ); A = input( Enter A, the state transition matrix > ); B = input( Enter B, the error distribution matrix > ); end state = 1; % initial state total_states = size(A,1); out = zeros(1,N); % initialize error vector state_seq = zeros(1,N); % initialize state sequence h = waitbar(0, Calculating Error Vector ); % ran_b = rand(1); % get random number if ran_b>B(1,state) % test for error out(1) = 1; % record error end state_seq(1) = state; % record state for t=2:N u1 = rand(1); % get random number cum_sum = [0 cumsum(A(state,:))]; for i=1:total_states % loop to determine new state if u1 >= cum_sum(i) & u1 < cum_sum(i+1); state = i; % assign new state end end state_seq(t) = state; % new record state u2 = rand(1); % get random number if u2 > B(1,state)} out(t) = 1; % record error end waitbar(t/N) end close(h) % End of script file..

Copyright © reffec.com . All rights reserved.