一、实验目的
1.掌握离散信道的信道容量的计算方法;
2.理解不同类型信道的不同特点与不同的计算方法;
二、实验内容
1.进一步熟悉一般离散信道的信道容量计算方法;
2.进一步复习巩信道性质与实际应用;
3.学习如何将复杂的公式转化为程序。
三、实验仪器、设备
1、计算机-系统最低配置256M内存、P4 CPU;
2、MATLAB编程软件。
四、实现原理
信道容量是信息传输率的极限,当信息传输率小于信道容量时,通过信道编码,能够实现几乎无失真的数据传输;当数据分布满足最佳分布时,实现信源与信道的匹配,使得信息传输率能够达到信道容量。
本实验利用信道容量的算法,使用计算机完成信道容量的计算。
实验采用迭代算法计算信道容量,即:设DMC的转移概率pyx(i,j),p(i)是任意给定的一组初始给定输入分布,开始为等概率分布,以后逐次迭代更新p(i)的取值。
其所有分量P (i)均不为0。
按照如下方法进行操作:
具体方法:
1、计算q(j)=
i
j
i
pyx
i
p)
,(
*)(,pyx(i,j)为信道转移概率
2、计算a(i)
先算中间变量d(i)=∑
j
j
q
j
i
pyx
j
i
pyx)
(
/)
,(
log(
*)
,(
然后,a(i)=exp(d(i))
3、计算中间变量U=∑
i
i
p i
a)(
*)(
4、计算IL=log2(u)
5、计算IU=log2(max(a(i))
6、当IU-IL>ε(ε为设定的迭代精度)时,进入以下循环,否则输出迭代次数n,信道容量C=IU计算结果,最佳分布p(i)。
①重新计算p(i)=p(i)*a(i)/U
②计算q(j),方法同1
③计算a(i),方法同2
④计算中间变量U=∑
i
i
p i
a)(
*)(
⑤计算IL=log2(u)
⑥计算IU=log2(max(a(i))
⑦计次变量n=n+1
返回6判断循环条件是否满足。
五、实验步骤
1、计算非对称信道的信道容量
运行程序
待程序运行完毕,记录迭代次数n和信道容量计算结果C。
2、计算对称信道的信道容量
运行程序
待程序运行完毕,记录迭代次数n和信道容量计算结果C。
六、实验报告要求
1、根据格式要求撰写实验报告;
2、附录完整的程序代码;
3、总结实验心得。
七、思考题
1、考虑当信道转移矩阵为非方阵时,影响信道容量的因素有那些?
2、迭代精度和迭代次数的关系?。