信息论试验指导书

上传人:m**** 文档编号:192952726 上传时间:2023-03-07 格式:DOCX 页数:14 大小:24.31KB
收藏 版权申诉 举报 下载
信息论试验指导书_第1页
第1页 / 共14页
信息论试验指导书_第2页
第2页 / 共14页
信息论试验指导书_第3页
第3页 / 共14页
资源描述:

《信息论试验指导书》由会员分享,可在线阅读,更多相关《信息论试验指导书(14页珍藏版)》请在装配图网上搜索。

1、信息理论与编码实验指导书电子与电气工程学院罗晓琴 编实验要求1、实验前认真阅读实验指导书的内容,并完成预习任务。2、复习 Matlab 的相关知识,完成仿真。3、要熟悉本次实验的任务。4、实验过程中要认真记录实验结果,仿真结果需经指导教师审阅。5、实验后每位同学要独立完成实验报告的内容。目录实验一 离散信源的自信息量和熵3 实验二 最大离散熵定理6实验三 费诺编码9实验四 霍夫曼编码13实验五 香农编码16实验一:计算离散信源的自信息量和熵一、实验目的1、熟悉离散信源的特点。2、学习Matlab仿真离散信源的方法。3、学习离散信源自信息量和信源熵的计算方法。4、熟悉 Matlab 编程。二、实

2、验设备1、计算机2、软件:Matlab三、实验原理 本实验主要完成信源概率分布的自信息量以及信源熵的计算。计算公式如下: 一个字符它所携带的信息量是和该字符出现的概率有关,概率可以表征自信息量 的大小自信息的计算公式为:lgl(a)?lop自信息量有两个含义:第一、当事件发生前,表示该事件发生的不确定性; 第二、当事件发生后,标是该事件所提供的信息量自信息量的单位取决于对数所取的底,若以2为底,单位为比特,以e为底, 单位为奈特,以10为底,单位为哈特。在通信系统中,通常取比特为单位,底数2略去不写。由于自信息1(a)是一个随机变量,不能用来表征整个信源的不确定度。所以我们 用平均自信息量来表

3、征整个信源的不确定度。平均自信息量就是信源输出所有消 息的自信息的数学期望,又称为信息熵、信源熵,简称熵。熵(平均自信息)的计算公式为:1? pplogp?H(x)?logp 信息熵H(x)是对信源的平均不确定性的描述。qq12121 丄 1?1iii它从平均意义上来表征信源的总体信息测度。对于某特定的信源,其信息熵是一 个确定的数值。信息熵具有如下三种物理意义。第一,信息熵H (x)是表示信源输出后,每个消息或符号所提供的平均信息量。 第二,信息熵H(X)是表示信源输出前,信源的平均不确定性。第三,信息熵H (x)可表征变量X的随机性。 由此可以看出,自信息量与信息熵的含义是不同的:(1)

4、信息熵是表征信源本身统计特性的一个物理量,它表示信源的平均不确定 性,是信源输出的每一个消息所能提供的平均信息量;自信息量表示的是 每一 个消息的信息量度。(2) 信息熵是针对信源的,是信源输出的信息量,表示信源输出前的平均不确 定性;自信息量是针对信宿的,是接收者在消除了信源不确定性后所获得的信息 的度量。(3) 若信道无干扰,接收者获得的信息量在数量上等于信源的熵,若有干扰时, 则两者不相等。四、实验内容1、已知信源概率分布为:p=l/2,l/4,l/&1/8,编写出计算自信息量的 Matlab 程序。程序:end打开空白的M文件编辑器,将上述程序输入。保存。通过M文件调用的形式完成仿真。

5、步骤:在 command window 中输入 p二1/2,1/4,1/8,1/8 f 调用 deal.M 文件f 输 入I=deal(l/2,1/4,1/& 1/8),仿真实现。2、写出信源概率分布为:p=1/2,1/4,1/& 1/8离散信源熵的Matlab程序。 程序:H = deal(p)function n =4; H =0; i =1: nforI(i)=-log2(p(i) ; H =H + p(i)*I(i); end打开空白的M文件编辑器,将上述程序输入。保存。通过M 文件调用的形式完成仿真。步骤:在 command window 中输入 p二1/2,1/4,1/8, 1/8

6、f 调用 deal.M 文件f 输 入H=deal(1/2,1/4,1/& 1/8),仿真实现。3、写出信源概率分布为:p=1/2,1/4,1/&1/8的离散信源自信息量和信源熵的 Matlab 程序。IH=deal(p)functionn=length(p);H=0; i =1: nforI(i)=-log2(p(i);h = h + p(i)*I(i); end 步骤:在 command window 中输入 p=1/2,1/4,1/8,1/8 f调用 deal.M 文件f输,仿真实现。I H=deal(1/2,1/4,1/8,1 /8)入.4、将程序在计算机上仿真实现,验证程序的正确性并

7、完成思考题的程序设计。五、思考题1、说明离散信源自信息量和信息熵的不同含义。2、甲地天气预报构成的信源空间为:X大小1111(x)p 3446乙地信源空间为:Y晴小雨53 (y)p 88求此两个信源的熵。求各种天气的自信息量。六、实验报告要求 总结离散信源的特点及离散信源平均信息量的计算,写出实验内容中的仿真程序 及结果,完成思考题中MATLAB实现语句,并附上仿真实现的结果。实验二 最大离散熵定理一、实验目的1、熟悉熵函数的基本性质。2、掌握最大熵定理。3、学习Matlab仿真二维曲线图的方法。4、熟悉 Matlab 编程。二、实验设备1、计算机2、软件:Matlab三、实验原理信息熵H (

8、x)是随机变量X的概率分布p (x)的函数,它有如下性质:1、对称性H(P)二H(p,p,p,,p)二 H(p,p,,p p)二二H(p,p,p,p,,p概率分布的顺序是可以任意互换的,互换后的概率分布表示的是相同的随机变量,随机 变量的总体结构没有变化,则可证明对应的熵函数的值也不会变。该性质表明熵 函数只与信源的总体统计特性有关。这也说明,信息熵只抽取了信源信息输出的 统计特征,而没有考虑信息的具体含义和效用。也就是说,信息熵有它的局限性, 它不能描述时间本身的具体含义和主观价值等。2、确定性H(1,0)=0在概率矢量P=(p,p,p,,p)中,只要有一个分量为1,其它分量必为0,这 由概

9、率分布的完备性可以得到。也就是说信源的平均不确定度为0。3、非负性H(P)二H(p,p,p,,p)0因为P=(p,p,p,,p)是概率分布,OWpiWl,-logpiO,故上式成立。 需要注意的是,只有离散信源熵才有非负性,连续信源的相对熵将可能出现负值:4、扩展性H? (p,p,p,)二,p-(p,p,p,,p), H lim这个性质的含义是:增加一个基本不会出现的小概率事件,信源nn 1123321n?0的熵保持不变。虽然小概率事件的出现给予接收者的信息量很大,但在熵的计算 中,它占的比重很小,可以忽略不计,这也是熵的总体平均性的体现。5、连续性H?Hlim (p,p,p,,p+p)=)-

10、,p(p,p,,p即信源概率空间中的概率分量的微小波动,不会引起熵nn112q332n-11n?0的变化。6、递增性H(p,p,p,,p, q, q, q,q)二H(p,p,p,,p)+p H(q/ p , q/ p,n3n-1311m22123q/ p,q/ p)q+q+q,+q =pn2nn1nnm3 n这个性质表明,假如有一个信源的n个元素的概率分布为(p,p,p, p)其中某个元素p又被划分为m个元素,这某个元素的概率之和等于p,这样得到的新信源的熵增加了一项,增加的一项是由于划分产生的不确定性。 nnn7、极值性H(p,p,p,,p) WH(l/n,l/n,,1/n)=logn上式中

11、,当且仅当n个离散消息等概率出现时等式成立。这一性质说明,对不 同概率分布p (x)所构成的熵,只有当等概率分布时,信源的不确定性最大,j 熵达到极大值。8、上凸性熵函数H(p)是概率矢量P=(p,p,p,,p)的严格上凸函数,正因为熵函数寳具 有上凸性,所以熵函数具有极值,熵函数的最大值存在。9、唯一性四、实验内容1、已知二元信源概率空间为p (x) =x1-x,对应的二元信源的熵可表示为:H(x)=-xlog2(x)-(l-x)log2(l-x)。通过 Matlab 软件画出概率分布函数 p (x) 与熵函数之间的二维曲线图,编写出程序。仿真结果如下图所示:编程过程中要注意的地方:x的步长

12、设置为0.001,H(x)的运算为矩阵运算,必 须用点乘:“.*”。2、用同样的方法画出三元信源空间的熵函数与概率分布的三维曲线图。仿真结 果如下所示。.1.10.10.0.0.3330.333300p2p1五、思考题1、熵函数的基本性质有哪些?2、最大熵定理的结论是什么?六、实验报告要求写出用Matlab软件画出概率分布函数p (x)与熵函数之间的二维、三维曲线图 的程序,并附上仿真结果图。并对本实验进行总结、分析。费诺编码实验三 一、实验目的 1、掌握费诺编码的编码原理 Matlab 编程。2、熟悉Matlab仿真费诺编码的过程。3、通过二、实验设备1、计 算机Mat lab 2、软件:三

13、、实验原理:费诺编码的步骤、将概率按从大到小 的顺序排列;1、按编码进制数将概率分组,使每组概率和尽可能接近或相等;2 、给每组分配一位码元;3,直到概率不再可分为止。 32 和4、将每一分组再按同样原则划分,重复四、实验内容xxxXxxx?3246进行二进制费诺对给定信源 ?)04Xq(07.04.0.3.10090.0.0? MATLAB编码,通过进行编码过程仿真,并计 算平均码长。程序如下:clc;clear;A=0.4,0.3,0.1,0.09,0.07,0.04;A=fliplr(sort(A);m,n=size(A);for i=1:nB(i,1)=A(i);enda=sum(B(

14、:,1)/2;for k=1:n-1if abs(sum(B(1:k,1)-a)=abs(sum(B(1:k+1,1)-a)break;endendfor i=1:nif i=k B(i,2)=0; elseB(i,2)=1;endendEND=B(:,2);END=sym(END);j=3;while (j=0) p=1;while(p=n) x=B(p,j-1);for q=p:n if x=-1 break;elseif B(q,j-1)=xy=1; continue;else y=0;break;endendend if y=1 q=q+1;endif q=p|q-p=1 B(p,j)

15、=-1;else if q-p=2 B(p,j)=0;END(p)=char(END(p),0;B(q-1,j)=1;END(q-1)=char(END(q-1),1;else a=sum(B(p:q-1,1)/2;for k=p:q-2if abs(sum(B(p:k,1)-a)=abs(sum(B(p:k+1,1)-a); break;endendfor i=p:q-1 if i1 & B(i,j)=B(i-1,j)d=d+1;elsed=1;endB(B(n,j+1),j+1)=-1;temp=B(:,j+1);x=find(temp=B(i,j);END(i)=END1(x(d);en

16、dy=B(n,j+1);END(t-1)=char(END1(y),0;END(t)=char(END1(y),1;t=t+1;END1=END;endAENDfor i=1:na,b=size(char(END(i);L(i)=b;endavlen=sum(L.*A)H1=log2(A);H=-A*(H1)P=H/avlen%五、思考题xxxxxXx?1542对对给定信源进行二进制霍夫?q(.05X).025250.0.20.150100.0?曼编码。写出编码码字,并计算平均码长。 六、实验报告要求写出用 Matlab 进行霍夫曼编码的程序,并给出仿真结果。实验五 香农编码一、实验目的1、掌

17、握香农的编码原理2、熟悉C+编程。3、通过C+仿真香农编码的过程。二、实验设备1、计算机2、软件:C+三、实验原理 给定某个信源符号的概率分布,通过以下的步骤进行香农编码 1、将信源消息符号按其出现的概率大小排列:P(X)?P(X)? ?p(x)ni2K; 2、确定满足下列不等式的整数码长j?llogpx)?K?log(x)?p(2i2ii3、为了编成唯一可译码,计算第i个消息的累加概率:J P(X)P?嵌?变换成二进制数。、将累加概率4PK位即为该消息符号的二 进制码。5、取 二进制数的小数点后 四、实验内容iixxxxxxXx?5273对给定信源进行二进制?q(X)0.20.190.180

18、.170.150.10.01?香农编码,通过 C+进行编码过程仿真、 香农(Shannon)编码参考程序int main()int N;cout”请输入信源符号个数:”;cinN;cout请输入各符号的概率:” endl;double *X=new doubleN; /离散无记忆信源int i,j;for(i=0;iN;i+)cout”X”i+1Xi;/由小到大排序for(i=0;iN;i+)for(j=i+1;jN;j+)if(XiXj) double temp=Xi;Xi=Xj;Xj=temp;int *K=new intN;/确定码长for(i=0;iN;i+) Ki=int(-(log

19、(Xi)/log(2)+1; /确认码长为 1-log2(p(xi) if(Ki=(-(log(Xi)/log(2)+l)当 Ki=-log2(p(xi)时,Ki-Ki-;/累加概率double *Pa=new doubleN;pa0=0.0;for(i=1;iN;i+) pai=pai-1+Xi-1;/将累加概率转换为二进制string *code=new stringN;for(i=0;iN;i+)for(j=0;j=1) /累加概率乘2大于1,对应码字加1,累加概率自身取余 codei+=”1”;Pai=Pai*2-1;else/累加概率乘2小于1时,对应码字加0,累加概率自身取余cod

20、ei+=”0”;Pai*= 2;for(i=0;iN;i+)codei= codei.substr(0,Ki);/求码字/输出码字 coutsetw(12)信源” setw(12)概率 p(x) setw(12)累加概 率Pa(x) setw(8) 码长 K setw(8) 码字endl;for(i=0;iN;i+) coutsetw(12)i+1setw(12)Xisetw(12)Pai setw(8) Kisetw(8)codeiendl;delete X;delete Pa;delete K;delete code;getch();retuen 0;五、思考题xxxxxXx?1542对对给定信源进行二进制香农?q(.05X)10.025.0.25.200150.00?编码。写出编码码字,并计算平均码长。 六、实验报告要求写出用C+进行香农编码的程序,并给出仿真结果。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!