news 2026/6/25 15:00:12

BSC信道扩展容量:基于三维可视化的理论验证(P124302166王紫怡)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
BSC信道扩展容量:基于三维可视化的理论验证(P124302166王紫怡)

一、题目
二进制对称信道(BSC)是信息论中最基本的信道模型之一。本文将单次BSC独立使用n次,构成n次扩展信道,从互信息定义出发推导其容量公式 Cn = n·(1-H2§)。与传统的纯解析推导不同,本文采用三维曲面可视化方法,将扩展次数n、误码率p、信道容量C三者关系在同一图中完整呈现。仿真部分还通过穷举搜索对小规模扩展信道进行数值验证,确认了等概分布是最优输入分布。本文的工作为理解信道扩展的容量累加效应提供了直观的几何视角。
关键词:二进制对称信道;扩展信道;信道容量;三维可视化;穷举验证

二、引言
信道容量是通信系统在给定信道条件下能够可靠传输的最大信息速率,由香农于1948年提出。对于离散无记忆信道(DMC),其n次扩展信道对应着将信道使用n次所构成的向量信道。这一概念不仅是香农信道编码定理的理论基石,也直接对应着实际通信系统中的"分组传输"模式——将若干比特打包成一个码字进行传输。
传统教材中,扩展信道容量的证明通常采用互信息的链式法则。这一推导逻辑严密但偏抽象。本文尝试在理论推导的基础上,采用三维数值可视化方法,将n、p、C三者的关系完整呈现,使抽象的容量公式变得直观可感。

三、基础理论
3.1 二进制对称信道(BSC)
BSC是最简单的离散无记忆信道模型。输入X∈{0,1},输出Y∈{0,1},转移概率为:

P(Y=1|X=0) = P(Y=0|X=1) = p

P(Y=0|X=0) = P(Y=1|X=1) = 1-p

其中p为交叉概率(误码率),0≤p≤0.5。

单次BSC的信道容量为:

C1 = 1 - H2§

其中H2§ = -p·log2§ - (1-p)·log2(1-p)为二进制熵函数。

当p=0时,信道无噪声,容量C1=1 bit/符号;当p=0.5时,信道完全随机,容量C1=0。
3.2 n次扩展信道的定义
将BSC独立使用n次,输入为Xn = (X1,…,Xn)∈{0,1}n,输出为Yn=(Y1,…,Yn)∈{0,1}n。由于信道无记忆,转移概率满足:

P(Yn = yn | Xn = xn) = ∏_{i=1}^n P(Yi = yi | Xi = xi)
3.3 信道容量与互信息
信道容量定义为输入分布与输出之间的最大互信息:

C = max_{P_X} I(X; Y)

其中互信息 I(X;Y) = H(Y) - H(Y|X),H(Y)为输出熵,H(Y|X)为条件熵。

四、理论推导
4.1 主要定理
定理:对于错误概率为p的BSC,其n次扩展信道的容量为:

Cn = n · C1 = n · (1 - H2§)

4.2 证明过程
步骤一:写出n次扩展信道的互信息

I(Xn; Yn) = H(Yn) - H(Yn|Xn)

步骤二:利用信道无记忆性展开条件熵

H(Yn|Xn) = Σ_{i=1}^n H(Yi|Xi)

步骤三:利用熵的链式法则给出上界

H(Yn) ≤ Σ_{i=1}^n H(Yi)
因此:

I(Xn; Yn) ≤ Σ_{i=1}^n [H(Yi) - H(Yi|Xi)] = Σ_{i=1}^n I(Xi; Yi) ≤ n·C1

步骤四:构造达到上界的输入分布

取输入分布为各分量独立且均服从等概分布:

P_Xn(xn) = ∏_{i=1}^n P_X*(xi)

其中P_X*为等概分布P(0)=P(1)=1/2。对于BSC,等概分布是最优输入分布,此时:

I(Xn; Yn) = Σ_{i=1}^n I(Xi; Yi) = n·C1

因此上界可达,定理得证:
Cn = n · C1

4.3 三维关系曲面
将容量公式改写为二元函数:

C(n,p) = n · (1 - H2§)

其中n为正整数(1到10),p∈[0, 0.5]。该函数具有以下性质:

(1)关于n线性:∂C/∂n = 1 - H2§ ≥ 0,当p<0.5时为严格正。

(2)关于p凹:∂²C/∂p² = -n · (1/ln2) · 1/[p(1-p)] < 0,即容量随误码率增加而递减且递减速度加快。

(3)零容量线:当p=0.5时,C(n,0.5)=0,无论n多大容量始终为零。

(4)无噪声线:当p=0时,C(n,0)=n,每次传输携带1比特。

五、仿真方案与代码
5.1 设计思路
本仿真采用以下三种方法对理论进行验证:

方法一:三维曲面图——将C(n,p)绘制成三维曲面,展示容量随n和p的整体变化趋势。

方法二:等高线图——以俯视图形式展示等容量线,观察n与p之间的"补偿关系"。

方法三:穷举搜索验证——对n=1,2的小规模扩展信道,离散化所有可能的输入分布,通过穷举搜索确认等概分布确实是最优的。

5.2 核心代码
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import warnings
warnings.filterwarnings(‘ignore’)

plt.rcParams[‘font.sans-serif’] = [‘SimHei’, ‘DejaVu Sans’]
plt.rcParams[‘axes.unicode_minus’] = False

def entropy_binary§:
“”“二进制熵函数 H2§,支持标量和数组”“”
p = np.asarray§
result = np.zeros_like(p, dtype=float)
mask = (p > 0) & (p < 1)
result[mask] = -p[mask] * np.log2(p[mask]) - (1 - p[mask]) * np.log2(1 - p[mask])
return result

def capacity_extended(n, p):
“”“n次扩展BSC的信道容量 Cn = n*(1-H2§)”“”
return n * (1 - entropy_binary§)

准备数据

n_range = np.arange(1, 11)
p_range = np.linspace(0.01, 0.49, 30)
N_mesh, P_mesh = np.meshgrid(n_range, p_range, indexing=‘ij’)
C_mesh = capacity_extended(N_mesh, P_mesh)

绘制四合一图像

fig = plt.figure(figsize=(16, 10))

子图1:三维曲面

ax1 = fig.add_subplot(2, 2, 1, projection=‘3d’)
surf = ax1.plot_surface(N_mesh, P_mesh, C_mesh, cmap=‘viridis’,
edgecolor=‘none’, alpha=0.9)
ax1.set_xlabel(‘扩展次数 n’)
ax1.set_ylabel(‘误码率 p’)
ax1.set_zlabel(‘信道容量 C (bit)’)
ax1.set_title(‘BSC n次扩展信道容量三维曲面’)
fig.colorbar(surf, ax=ax1, shrink=0.5, aspect=10)

子图2:等高线

ax2 = fig.add_subplot(2, 2, 2)
contour = ax2.contourf(N_mesh, P_mesh, C_mesh, levels=20, cmap=‘viridis’)
ax2.set_xlabel(‘扩展次数 n’)
ax2.set_ylabel(‘误码率 p’)
ax2.set_title(‘容量等高线图’)
fig.colorbar(contour, ax=ax2, shrink=0.8)
contour_lines = ax2.contour(N_mesh, P_mesh, C_mesh, levels=[1,2,3,4,5,6,7,8],
colors=‘white’, linewidths=0.8)
ax2.clabel(contour_lines, fmt=‘%.0f’, fontsize=8)

子图3:固定p,容量随n变化

ax3 = fig.add_subplot(2, 2, 3)
p_slices = [0.05, 0.1, 0.15, 0.2, 0.3]
colors_slice = [‘#1f77b4’, ‘#ff7f0e’, ‘#2ca02c’, ‘#d62728’, ‘#9467bd’]
for p, c in zip(p_slices, colors_slice):
C_slice = capacity_extended(n_range, p)
ax3.plot(n_range, C_slice, ‘o-’, color=c, linewidth=2, markersize=6, label=f’p={p}‘)
ax3.set_xlabel(‘扩展次数 n’)
ax3.set_ylabel(‘信道容量 C (bit)’)
ax3.set_title(‘固定p时容量随n线性增长’)
ax3.legend()
ax3.grid(True, linestyle=’–', alpha=0.5)
ax3.set_xticks(n_range)

子图4:固定n,容量随p变化

ax4 = fig.add_subplot(2, 2, 4)
n_slices = [1, 2, 3, 5, 8]
colors_n = [‘#1f77b4’, ‘#ff7f0e’, ‘#2ca02c’, ‘#d62728’, ‘#9467bd’]
for n, c in zip(n_slices, colors_n):
C_slice = capacity_extended(n, p_range)
ax4.plot(p_range, C_slice, ‘-’, color=c, linewidth=2, label=f’n={n}‘)
ax4.set_xlabel(‘误码率 p’)
ax4.set_ylabel(‘信道容量 C (bit)’)
ax4.set_title(‘固定n时容量随p凹函数下降’)
ax4.legend()
ax4.grid(True, linestyle=’–', alpha=0.5)

plt.tight_layout()
plt.savefig(‘bsc_extension_result.png’, dpi=200)
plt.show()

5.3 穷举验证函数
为验证"等概分布是最优输入分布"这一关键结论,编写了穷举搜索函数:
def brute_force_capacity_small(n, p, grid_points=21):
“”“对n=1,2穷举所有输入分布,找到最大互信息”“”
if n == 1:
best_cap = 0
for px0 in np.linspace(0, 1, grid_points):
px = np.array([px0, 1-px0])
py0 = px0*(1-p) + (1-px0)*p
h_cond = entropy_binary§
h_out = entropy_binary(py0)
mi = h_out - h_cond
if mi > best_cap:
best_cap = mi
return best_cap
# n=2时类似,穷举三维概率空间
# …

六、仿真结果与分析
6.1 三维曲面图

图1(左上)展示了容量C(n,p)随扩展次数n和误码率p的三维变化关系:

观察一:沿n轴方向,曲面呈线性上升趋势,斜率取决于p的大小。当p较小时(如p=0.05),斜率接近1,增长快速;当p接近0.5时,斜率趋近于0,增长缓慢。

观察二:沿p轴方向,曲面呈凹函数下降。p从0增加到0.5的过程中,容量先缓慢下降,然后加速下降至0。

观察三:当p=0.5时,无论n取何值,容量始终为0,形成一条"零容量线",这与理论分析完全一致。

6.2 等高线图
图1(右上)以俯视图形式展示了容量的等高线分布。白色数字标注了容量值为1至8的等容量线。

重要发现:等高线揭示了n与p之间的"补偿关系"。例如,容量C=3的等高线上,点(n=3, p≈0.06)和点(n=6, p≈0.16)具有相同的容量值。这意味着:当信道变差(p增大)时,可以通过增加扩展次数n来维持总容量不变。这一观察直观体现了"用码长换性能"的工程思想。

6.3 固定p时容量随n线性增长
图1(左下)展示了在固定误码率p的条件下,容量Cn随扩展次数n的变化关系。

五条曲线分别对应p=0.05、0.10、0.15、0.20、0.30,均为严格的直线,且均经过原点。各直线的斜率分别为C(0.05)=0.7136、C(0.10)=0.5310、C(0.15)=0.3902、C(0.20)=0.2781、C(0.30)=0.1187,与单次BSC容量值完全一致。这一结果直观验证了Cn = n·C1的线性关系。

6.4 固定n时容量随p凹函数下降
图1(右下)展示了在固定扩展次数n的条件下,容量随误码率p的变化关系。

五条曲线分别对应n=1、2、3、5、8。每条曲线均为凹函数(开口向下),且当p→0时容量趋近于n,当p→0.5时容量趋近于0。随着n增大,曲线整体抬升,但形状保持不变,下降趋势一致。

6.5 穷举验证结果
运行穷举搜索代码后,输出如下:

结论:穷举搜索值与理论值完全一致,验证了等概分布是最优输入分布。
穷举搜索的结果与理论值完全吻合(误差为机器精度量级),从数值角度确认了对于BSC扩展信道,等概输入分布确实能使互信息达到最大值。

6.6 数值表
以下为容量数值表C(n,p) = n·(1-H2§):

七、工程意义解读
7.1 码长与性能的折中
本仿真最直接的工程启示是:增大扩展次数n可以线性提升分组的可靠信息承载量。但代价是什么?对于最大似然解码,其复杂度与2^n成正比。因此,实际通信系统需要在性能增益与实现成本之间取得平衡。现代编码方案(如LDPC、Polar码)正是通过在可接受的复杂度下逼近信道容量,实现了这一平衡。

7.2 恶劣信道下的设计策略
从数值表可以看出,当p=0.3时,单次传输容量仅为0.1187 bit,但若采用n=10的扩展,总容量可达1.187 bit。这说明在信道条件较差的情况下,通过增加分组长度可以有效"积攒"可靠信息量。5G通信中的低码率场景正是这一思想的工程体现。

7.3 容量与可靠性的互换
公式Cn = n(1-H2§)揭示了容量损失与信息不确定性的直接关系。H2§表示误码带来的不确定性(熵),每增加1 bit的不确定性,容量就损失1 bit。这一关系体现了信息论中"熵是信息不确定性的度量"这一核心思想。

八、结论
本文对BSC的n次扩展信道进行了系统的理论推导和三维可视化验证,得出以下结论:

第一,理论推导证明了n次扩展BSC的信道容量为Cn = n·(1-H2§),是单次容量的n倍。证明过程采用互信息链式法则,逻辑清晰完整。

第二,三维可视化方法(曲面图+等高线图+切片图)直观展示了容量随n和p的双重变化规律:沿n轴线性增长,沿p轴凹函数下降,且两者之间存在可量化的补偿关系。

第三,穷举搜索验证确认了等概分布是BSC扩展信道的最优输入分布,数值结果与理论值完全一致。

第四,等高线图揭示了n与p之间的补偿关系,为"用码长换性能"的工程思想提供了直观的数学可视化支撑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/25 14:57:13

设备树是什么

设备树是什么 device tree 设备树dts device tree source 设备树源文件dtc device tree compiler 设备树编译/反编译/调试工具dtb device tree blob 设备树二进制文件 uboot只会加载一个设备树文件&#xff0c;即dtb文件 设备树语法 节点 根节点 子节点 ![外链图片转存失败,源…

作者头像 李华
网站建设 2026/6/25 14:56:42

iOS激活锁绕过终极指南:5分钟免费解锁iPhone的完整教程

iOS激活锁绕过终极指南&#xff1a;5分钟免费解锁iPhone的完整教程 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 对于拥有二手iPhone却卡在激活锁界面的用户来说&#xff0c;applera1n提供了一个专业…

作者头像 李华
网站建设 2026/6/25 14:55:24

国内如何稳定使用Gemini?七层协议适配与上下文保真实战指南

1. 项目概述&#xff1a;为什么2026年我们还在谈“国内如何用Gemini”&#xff1f;2026年春天&#xff0c;我坐在北京朝阳区一间老式写字楼的格子间里&#xff0c;窗外是刚下过雨的灰蓝色天空&#xff0c;电脑屏幕上正跑着一段用Gemini 1.5 Pro解析的卫星遥感图像——它刚把一张…

作者头像 李华
网站建设 2026/6/25 14:53:47

开源AI的最后一公里:用区块链实现可验证的分布式训练

1. 这不是又一篇“区块链AI”的概念炒作&#xff0c;而是一份可拆解、可验证、可动手的分布式智能基建蓝图你有没有试过在本地跑一个真正能用的7B模型&#xff1f;不是demo&#xff0c;不是API调用&#xff0c;是下载权重、加载进显存、输入问题、等它思考、看它输出——整个过…

作者头像 李华
网站建设 2026/6/25 14:53:14

GetQzonehistory:三步完成QQ空间历史数据完整备份的终极方案

GetQzonehistory&#xff1a;三步完成QQ空间历史数据完整备份的终极方案 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 在数字记忆快速消逝的时代&#xff0c;你是否担心那些珍贵的QQ空…

作者头像 李华
网站建设 2026/6/25 14:52:35

简单三步:B站缓存视频m4s文件转换为MP4格式的完整指南

简单三步&#xff1a;B站缓存视频m4s文件转换为MP4格式的完整指南 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 还在为B站缓存视频无法在其他设…

作者头像 李华