《信息论上机实验报告.docx》由会员分享,可在线阅读,更多相关《信息论上机实验报告.docx(15页珍藏版)》请在三一办公上搜索。
1、信息论与编码实验报告实验一:计算离散信源的熵一、实验设备:1、计算机2、软件:Matlab二、实验目的:1、熟悉离散信源的特点;2、学习仿真离散信源的方法3、学习离散信源平均信息量的计算方法4、熟悉Matlab编程;三、习题:1. 甲地天气预报构成的信源空间为:大雨18,小雨18乙地信源空间为:p (y)晴78,求此两个信源的嫡。小雨一18_求各种天气的自信息量。代码:x=1/2,1/4,1/8,1/8;y=7/8,1/8;HX=sum(-x.*log2(x)HY=sum(-y.*log2(y)IX=-log2(x)IY=-log2(y)答案:h(X) = 1.75;H(Y) = 0.5436
2、2、某信息源的符号集由A、B、C、D、E组成,设每一符号独立出现,其出现的概率分别为,1/4,1/8,1/8,孑16, 5/16, 试求该信源符号的平均信息量。代码:x=1/4,1/8,1/8,3/16,5/16;HX=sum(-x.*log2(x)答案:H(X) = 2.2272bit/符号3、设有四个消息分别以概率1/4, 1/8, 1/8, 1/2传送,每一消息的出现是相互独立的。试计算其平均信息量。代码:x=1/4,1/8,1/8,1/2;HX=sum(-x.*log2(x)答案:H(X) =1.75bit/符号4.设一个二元信源(只有0和1两种符号)其概率空间为:-X -0_ p (
3、x) _=一 p, 1 一 p _编程画出H与p的关系,并说明当P呈什么分布时,平均信息量达到最大值。(说明:H=-p.*log2(p)-(1-p).log2(1-p);)代码:p= 1/1000000:1/1000:1;H=-p*log2(p)-(1-p).*log2(1-p);plot(p,H) grid on xlabel(p);ylabel(HP);图:0.90.80.7n c1/1U_uT - - 7r1ITi1I - rA 4/- 1111L u -r|IIIIIIII n n. -11IiiiiiU-Z T11IT11I111人F:二:3 实验二:I n0验证熵1.【例2.6】有
4、一离散无记忆信源Xp(x)验证二次扩展信源X 2的嫡等于离散信源X的嫡的2倍,即H (X 2) = 2 H (X)代码:x=1/2,1/4,1/4;hx=sum(x.*log2(1./x)x2=1/4,1/16,1/16,1/8,1/8,1/8,1/16,1/8,1/16hx2=sum(x2.*log2(1./x2)答案:H(X) = 1.5;H(X2) = 3.02. 验证两个统计独立的信源X,验证:H (XY) = H (X) + H (Y)其中:1-_-1a aab b bX123Y123=1 11,、=1 1 1P(x), ,l p (y), L 2 44L 3 3 3代码:x=1/2
5、,1/4,1/4;y=1/3,1/3,1/3;xy=1/6,1/6,1/6,1/12,1/12,1/12,1/12,1/12,1/12hx=sum(x.*log2(1./x)hy=sum(y*log2(1/y)Hxy=sum(xy.*log2(1./xy)答案:h(X) = 1.5,H(Y) = 1.585H(XY) = 3.0853、条件熵的计算与熵的强可加性验证离散二维平稳信源,满足:H(X 1 X2) = H(X 1) + H(X21 X 1)某一离散二维平稳信源XP (x)0 1 211 4 136,9,4气*2其联合概率分布X 12 )为:XjX20120:0118,8201836编
6、程计算:1) 联合时(X1X 22) 条件熵贝X 2I X ,)3) 验证:H(X!X2) 顷(X1)+ H(XX代码:x1=11/36,4/9,1/4;x2=11/36,4/9,1/4;b=1/4,1/18,0;1/18,1/3,1/18;0,1/18,7/36;HXY=0;for i=1:size(b,1)for j=1:size(b,2)if b(i,j)0HXY=HXY-b(i,j).*log2(b(i,j);endendendHXYHx1=sum(x1.*log2(1./x1)Hx2=sum(x2.*log2(1./x2)b0=b(1,:);b1=b(2,:);b2=b(3,:);x
7、1x2=b0./x2;b1./x2;b2./x2;Hx1x2=0;for i=1:size(x1x2,1)for j=1:size(x1x2,2)if x1x2(i,j)0Hx1x2=Hx1x2-b(i,j).*log2(x1x2(i,j);endendendHx1x2答案H(X ) = 1.5426;H(X I X ) = 0.8717口 : H(X1X2)= 2.4144H(X+ H(X21 X= 2.4144实验三:离散信道的平均互信息的计算1. 【习题3.1】设信源= 扑2 p (x) _| |_ 0.6,0.4通过一干扰信道,接收到符号为7 =牛七,其信道矩阵为:一 5P顼6金4 J
8、1) 求信源X中事件X1和X2分别含有的自信息;2) 收到消息,j( =1,2)后,获得的关于气(i = 1,2)的信息量;3) 求信源X和输出变量Y的信息熵;4) 信道疑义度H(X I 7)和噪声熵H(7 |X);5) 接收到消息Y后获得的平均互信息;代码:x=0.6,0.4;p=5/6,1/6;3/4,1/4;Ix1=log2(1./(x(1,1)Ix2=log2(1/(x(1,2)pxy=x(1,1)*p(1,:);x(1,2)*p(2,:);py=x*p(:,1),x*p(:,2);px_y=pxy(:,1)/py(1,1),pxy(:,2)/py(1,2);I=log2(p./py;
9、py)Hx=sum(x.*log2(1/x)Hy=sum(py*log2(1./py)Hx_y=sum(sum(pxy.*log2(1./px_y)Hy_x=sum(sum(pxy.*log2(1./p)Ixy=sum(sum(pxy.*log2(p./py;py)1. I(x ) = 0.737I(x ) = 1.3219122. I(x ; y ) = 0.0589, I(x ; y ) = -0.263, I(x ; y ) = -0.0931,I(x ; y ) = 0.3219答案:3.4.5.H (X) = 0.971,H (Y) = 0.7219H (X IY) = 0.9635
10、H (Y I X) = 0.7145I (X; Y) = 0.00742. 二元信道的互信息与信源分布的关系有二元信源:XP (x)011 一有二元信道,其传递矩阵为:P =1 - ppP =0.80.2_ p1 - p _,其中P = 0.2,即传递矩阵一0.20.8 _编程实现下面题目:1)画出平均互信息1 (x;y)随信源分布的关系曲线,并求出最大平均互信息。验证:信道容量C (最大平均互信息)满足:C = 1 - H(P)2)验证:信道容量C (最大平均互信息)满足:C = 1 - H(P)代码:syms w;x=w,1-w;p=0.8,0.2;0.2,0.8;pxy=x(1,1)*p
11、(1,:);x(1,2)*p(2,:);py=x*p(:,1),x*p(:,2);px_y=pxy(:,1)/py(1,1),pxy(:,2)/py(1,2);Ix_y=sum(sum(pxy*log2(p,/py;py);ezplot(w,Ix_y,0,1,0,1);xlabelC 变量 w);ylabelC平均互信息量I)title(平均互信息量与w的函数关系)grid on;图:量息信互均平0.5平均互信息量与w的函数关系0.40.30.20.10-0.1-0.200.10.20.30.40.50.60.70.80.91变量w实验四:离散信道及其信道容量一、实验设备:1、计算机2、软件:
12、Matlab二、实验目的:1、了解信道传输概率的状态图和信道转移概率矩阵特点;2、了解什么是信道容量和最佳输入概率分布;3、列出计算信道容量和平均互信息的计算步骤;4、熟悉Matlab编程;三、习题:计算下面几类信道的信道容量C:1无损信道1/21/20000 -P=003/53/101/100000001C = l o 骂代码:p1=1/2,1/2,0,0,0,0;0,0,3/5,3/10,1/10,0;0,0,0,0,0,1;C1=sum(log2(size(p1(:,1)答案:c=1.5852无噪有损信道一10_P = 10C = log s0 1代码:p2=1,0;1,0;0,1;C2
13、=sum(log2(size(p2(1,:)答案:c=13对称离散信道【例3.6】1111C = log s - H (p p )代码:p3=1/3,1/3,1/6,1/6;1/6,1/6,1/3,1/3;C3=sum(log2(size(p3(1,:)-sum(p3(1,:).*log2(1,/p3(1,:)答案:c=0.08174 一般信道,其信道矩阵为:121618114421361384求1)其信道容量C , 2)最佳输入分布p(a.)I代码:答案:4. C = 0.3109,p(a) = (0.1702,0.3955,0.4343)beta =-1.9732-1.1610-0.892
14、7pb =0.20530.36050.4342pa =0.17020.39550.4343实验五:连续信源的差熵与波形信道的信道容量一、实验设备:1、计算机2、软件:Matlab二、实验目的:1、熟悉连续信源的特点;2、学习仿真连续信源的方法3、学习连续信源平均信息量的计算方法4、熟悉Matlab编程;三、习题1、设在平均功率受限高斯加性波形信道中,信道带宽为3kHz,又设(信号功率+噪声功率)/噪声功率=10dB。(即10lg(1 + P) = 10dBPn,其中lg是以10为底的对数)。1) 试计算该信道传送的最大信息率(单位时间);2) 若信噪比降为5dB,要达到相同的最大信息传输率,信
15、道带宽应是多少?代码:syms x,a=4;b=8;p=1/(b-a);f=p*(log2(p)/log2(2);hx=-int(f,x,a,b);hx=double(hx);hx;m=3;o=2;p2=(1/(2*pi*o2)(1/2)*exp(-(x-m)2/(2*o2);hx2=log2(2*pi*exp(1)*o2)/2;hx2=double(hx2);p3=exp(-x/4)/4;hx3=log2(4*exp(1);p4=exp(-abs(x)/4)/8;hx4=log2(4*2*exp(1);hxhx2hx3hx4W=3000;C=W*log2(10);Rt=C/1W2=Rt/lo
16、g2(1+10(5/10)答案:1. 最大信息传输率R广9965.784(bit / s)2, 带宽应为:W = 4.8439e+003实验六:无失真信源编码与保真度准则下的信源编码一、实验设备:1、计算机2、软件:Matlab二、实验目的:1、理解无失真信源编码与保真度准则下的信源编码的物理意义;2、理解无失真信源编码与保真度准则下的信源编码的区别;3、熟悉Matlab编程;三、习题:1、(习题5.4)若有一信源,SP( s)s145s215,每秒钟发出2.66个信源符号。将此信源的输出符号送入某一个二元信道中进行传输(假设信道是无噪无损的),而信道每秒钟只传递两个二元符号。试问信源不通过编
17、码能否直接与信 道连接?若通过适当编码能否在此信道中进行无失真传输?若能连接,试说明如何编码并说明原因。代码:Ps=4/5,1/5;Is=sum(log2(1./Ps)C=log2(2);Ix=2*C答案:Is =2.6439Ix =22、(习题7.1) 一个四元对称信源UP(u)0,1,2,接收符号为y=,1,2,3!其失真矩阵为0111D =,求 D max 和 D min o1101 1110代码:r=2;q=2.66;L=log2(q)pu=1/4 1/4 1/4 1/4;D=0 1 1 1;1 0 1 1;1 1 0 1;1 1 1 0;V=0 1 2 3;for i=1:size(pu,1);j=1:size(D,2);Dmin=sum(pu(1,i)*min(D(j,:);Dmax=min(sum(pu(1,i)*D(:,j); endDminDmax答案:L =1.4114Dmin =0Dmax =0.7500