对称信道容量的求解

发布时间 : 星期日 文章对称信道容量的求解更新完毕开始阅读

课程设计说明书 第5页

只能得到容量的上界和下界,确切容量尚不易规定。

5.2信道容量计算思路

为了评价实际信道的利用率,应具体计算已给信道的容量。这是一个求最大值的问题。由于互信息对输入符号概率而言是凸函数,其极值将为最大值,因此这也就是求极值的问题。对于离散信道,P(x)是一组数,满足非负性和归一性等条件,可用拉格朗日乘子法求得条件极值。对于连续信道,P(x)是一函数,须用变分法求条件极值。但是对于大部分信道,这些方法常常不能得到显式的解,有时还会得到不允许的解,如求得的P(x)为负值等。为了工程目的,常把信道近似表示成某些易于解出容量的模式,如二元对称信道和高斯信道。对于其他信道的容量计算曾提出过一些方法,但都有较多的限制。比较通用的解法是迭代计算,可借助计算机得到较精确的结果。

对于连续信道,只需把输入集和输出集离散化,就仍可用迭代公式来计算。当然如此形成的离散集,包含的元的数目越多,精度越高,计算将越繁。对于信息论中的其他量,如信息率失真函数,可靠性函数等,都可以用类似的方法得到的各种迭代公式来计算。

5.3信道容量定理

从求信道容量的问题实际上是在约束条件下求多元函数极值的问题,在通常情况下,计算量是非常大的。下面我们介绍一般离散信道的平均互信息达到信道容量的充要条件,在某些情况下它可以帮助我们较快地找到极值点。

信道容量定理只给出了达到信道容量时,最佳输入概率分布应满足的条件,并没有给出最佳输入概率分布值,也没有给出信道容量的数值。另外,定理本身也隐含着达到信道容量的最佳分布不一定是唯一的,只要输入概率分布满足充要条件式,就是信道的最佳输入分布。在一些特殊情况下,我们常常利用这一定理寻求输入分布和信道容量值。

5.4离散多符号信道及其信道容量

实际离散信道的输入和输出常常是随机变量序列,用随机矢量来表示,

课程设计说明书 第6页

称为离散多符号信道。

若在任意时刻信道的输出只与此时刻信道的输入有关,而与其他时刻的输入和输出无关,则称之为离散无记忆信道,简称为DMC(discrete memoryless channel)。

输入、输出随机序列的长度为N的离散无记忆平稳信道通常称为离散无记忆信道的N次扩展信道。

对于离散无记忆N次扩展信道,当信源是平稳无记忆信源时,其平均互信息等于单符号信道的平均互信息的N倍。

当信源也是无记忆信源并且每一时刻的输入分布各自达到最佳输入分布时,才能达到这个信道容量NC。

6.组合信道及其信道容量

前面我们分析了单符号离散信道和离散无记忆信道的扩展信道。实际应用中常常会遇到两个或更多个信道组合在一起使用的情况。例如,待发送的消息比较多时,可能要用两个或更多个信道并行发送,这种组合信道称为并联信道;有时消息会依次地通过几个信道串联发送,例如无线电中继信道,数据处理系统,这种组合信道称为级联信道。在研究较复杂信道时,为使问题简化,往往可以将它们分解成几个简单的信道的组合。这一节我们将讨论这两种组合信道的信道容量与其组成信道的信道容量之间的关系。

独立并联信道的信道容量才等于各信道容量之和。

级联信道是信道最基本的组合形式,许多实际信道都可以看成是其组成信道的级联。两个单符号信道组成的最简单的级联信道X→Y→Z 组成一个马尔可夫链。根据马尔可夫链的性质,级联信道的总的信道矩阵等于这两个串接信道的信道矩阵的乘积。求得级联信道的总的信道矩阵后,级联信道的信道容量就可以用求离散单符号信道的信道容量的方法计算。信道和高斯信道 。对于其他信道的容量计算曾提出过一些方法,但都有较多的限制。比较通用的解法是迭代计算,可借助计算机得到较精确的结果。

对于连续信道,只需把输入集和输出集离散化,就仍可用迭代公式来计算。当然如此形成的离散集,包含的元的数目越多,精度越高,计算将

课程设计说明书 第7页

越繁。对于信息论中的其他量,如信息率失真函数,可靠性函数等,都可以用类似的方法得到的各种迭代公式来计算。

7.程序设计

信道输入为等概率分布,即 p=1/4,I=1,2,3,4有如下信道转移矩阵

?1/2 1/2 0 0??0 1/2 1/20??p???0 0 1/2 1/2???1/2 0 0 1/2??,求其信道容量。

求互信息量二等函数文件hmessage.m,其源代码如下: function r=hmessage(x,f,nx,my)

% x为输出的概率分布,f为转移概率矩阵,nx为输出德符号的可选个数,即x的元素%个数,nx同时也是矩阵f的行数,my是矩阵的列数,也即输出概率空间中的元素个数

sum=0; for i=1:nx for j=1:my t=f(i,j)*x(i) %求平均互信息量

sum=sum-t*log(f(i,j))/log(2); end end r=sum;

disp('平均互信息量');

double(r) %返回结果

用于计算离散信源平均信息量的函数为message.m文件,其源代码如下:

function r=message(x,n) r=0; for i=1:n

r=r-x(i)*log(x(i))/log(2);

课程设计说明书 第8页

end disp r

下面利用函数 message来求信源的熵。利用函数message来求平均互信息量,并最终得到信道容量。其实现的MATLAB程序代码如下:

>>clear all;

x=[0.25 0.25 0.25 0.25];

f1=[1/2 1/2 0 0;0 1/2 1/2 0;0 0 1/2 1/2;1/2 0 0 1/2];%定义信道概率的转移矩阵

Hf1=hmessage(x,f1,4,4) hx=message(x,4)

disp('信道1的信道容量') c1=hx-hf1 平均互信息量为 hf1=0.1250

此离散信源的平均信息量为 hx=0

信道1的信道容量 c1=0.1250

联系合同范文客服:xxxxx#qq.com(#替换为@)