基于传输熵理论的通信网络拓扑结构推理算法matlab仿真
目录
1.程序功能描述
2.测试软件版本以及运行结果展示
3.部分程序
4.算法理论概述
步骤1:基于二元TE的潜在链路筛选
步骤2:基于多元条件TE的误报剔除
5.完整程序
1.程序功能描述
传输熵(Transfer Entropy, TE)是度量两个随机过程间有向信息传递的非参数统计量,其核心思想是通过 “原因” 时间序列的历史信息降低 “结果” 时间序列未来状态的不确定性,适用于刻画通信网络中节点间数据包与 ACK 包的因果关联。
2.测试软件版本以及运行结果展示
MATLAB2022A/MATLAB2024B版本运行




3.部分程序
%进行算法1的检测
for i = 1:N-1for j = i+1:NX=A{i};Y=A{j};[TE1,TE2,L]=transfer_entropy(X,Y,pieces,Lens);if [(TE1 <=0.1 && TE2 <=0.1) || any(X) ==0 || any(Y) ==0]&L==0elseif TE1>TE2cm(i,j)=1;elsecm(j,i)=1;endendend
endbg=biograph(cm,IDS);
set(bg.nodes,'shape','circle','color',[1,1,1],'lineColor',[0,0,0]);
set(bg,'layoutType','equilibrium');
bg.showWeights='on';
set(bg.nodes,'textColor',[0,0,0],'lineWidth',2,'fontsize',9);
set(bg,'arrowSize',12,'edgeFontSize',9);
get(bg.nodes,'position')
view(bg);
012_075m
4.算法理论概述
基于传输熵的拓扑推理分为“初步筛选”与“误报剔除”两步,通过二元TE与多元条件TE的结合,实现高精度链路识别。
步骤1:基于二元TE的潜在链路筛选
该步骤通过计算所有节点对的二元传输熵,初步识别可能存在的通信链路,核心是统计显著性检验,避免随机噪声导致的虚假关联。


步骤2:基于多元条件TE的误报剔除
步骤1中高TE值可能源于间接链路(如j→k→i导致TEXiD →XjACK升高),需通过多元条件TE剔除误报,保留仅由直接链路贡献的因果关联。


相较于格兰杰因果(GC)、多维霍克斯过程(MHP),基于传输熵的算法具有以下优势:
| 推理方法 | 核心假设 | 适用场景 | 优势 | 劣势 |
|---|---|---|---|---|
| 传输熵(TE) | 无模型假设,非参数 | 非线性、非高斯通信网络 | 无需线性自回归建模,能捕捉复杂因果关联 | 需较多样本量保证精度 |
| 格兰杰因果(GC) | 线性自回归模型 | 线性高斯系统 | 计算复杂度低,样本需求少 | 无法处理非线性链路,误报率高 |
| 多维霍克斯过程(MHP) | 事件自激 / 互激特性 | 稀疏事件型网络 | 能刻画事件触发延迟 |
5.完整程序
VVV
关注后手机上输入程序码:123
