matlab 二进制信源,基于二进制信源N次扩展熵率的MATLAB仿真

基于二进制信源N次扩展熵率的MATLAB仿真

摘要:本文通过MATLAB分析一个二进制的二符号信源,分别采用了滑窗法、卷积法、变换形法求出了该信源的N次(其中N最大为8)扩展信源的熵率,得出了熵率随着N的增加而逐渐减小的结论。此外,本文还简单比较了三种算法的计算效率与优缺点。

关键词:MATLAB 二进制信源熵率

一、问题的重述和分析

给定一个二进制信源,共包含n个样本,发出0、1的概率分别为p、1-p。对给定的二进制信源做N次扩展后,分析扩展后符号的概率统计特性,计算其熵率H N(X N)并分析H(X N)与N的关系。

本文中,令N=840,p=0.6,N最大取值为8。下面,通过三种办法计算该二进制信源N次扩展的熵率。

(一)滑窗法

该算法的基本思想是设定一个宽度为N的窗口,由符号序列的第1个符号滑动到倒数第N个符号,通过进制转换记录这几组数据中每个窗口消息组成的序列出现的频度,近似N次扩展信源每个消息发出的概率,最终求得其熵率H N(X N)并绘出H N(X N)-N 图(注:计算熵率时可以过滤掉概率为零的分量,因为x→0时,x*lbx→0)。MATLAB算法代码:

clc

sample=840;%给定独立二进制信源[0,1]的样本数

step=8; %设定最大扩展阶数

probability_0=0.6;%设定符号0的概率

H=zeros(1,step);%建立熵率向量

x=randsrc(1,sample,[0,1;0.6,0.4]);

for N=1:step

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值