隔离二叉树冲突分解改进算法仿真
1、模型
如图,设M个冲突的信息分组的模型中:左时隙个数为i和右时隙个数为j,则Pij代表其左右时隙情况的总概率[1],即:
此时:
其中M为奇数,且M/2为整数的部分
M为偶数时:
2、分析
当M=2时,冲突的信息分组用冲突分解隔离算法成功分解所需的平均时隙数为[2]:
当M=3时,冲突的信息分组用冲突分解隔离算法成功分解所需的平均时隙数为:
当M=4时,冲突的信息分组用冲突分解隔离算法成功分解所需的平均时隙数为:
以此类推:
当M≥3个冲突的信息分组用冲突分解隔离算法成功分解所需的平均时隙数为:
将LM移项得:
又因为,信息分组的到达过程为Poisson分布:
所以二叉树形冲突分解算法中G个信息分组占用的平均时隙数为:
其中L0=1, L1=1.因此, 可得系统的平均吞吐量为[3]:
3、仿真
对信源数M=1:32,分解冲突平均所需的时隙数进行仿真:
改进二叉树冲突分解仿真值与理论值对比:
隔离型及改进型二叉树形冲突分解时隙对比仿真:
改进二叉树形冲突分解吞吐量仿真:
隔离型及改进型二叉树形冲突分解吞吐量对比仿真:
4、结论
1、由图1改进型二叉树形冲突分解随激活信源数的时隙变化曲线可知,需要分解的平均时隙和激活信源数趋近于线性关系。由表1,将前32个数据的仿真值与理论计算值进行对比,并无明显差异,结果高度吻合理论值。
2、由图2改进型与隔离型二叉树冲突分解的平均时隙进行对比,由仿真结果可知,改进型二叉树冲突分解所需要分解的时隙数明显小于隔离型的平均时隙数。说明该算法分解效率高,时隙数更少。
3、由图3改进型二叉树冲突分解的吞吐量随达到率的变化曲线可知,改进型二叉树形冲突分解隔离算法吞吐量在到达率G=1.8附近达到最大0.626,并当G=∞时取得极限吞吐量0.515。
5、代码
用的MATLAB,各位小伙伴们自行调参:
%% 改进的隔离二叉树冲突分解时隙计算
clc;clear;
L = [1, 3, 4.833] % 初始值已知,并保存历史变量
p = 0.5
N = [1:50] % 数据总个数
for M = [4:50] % 设置需要计算信源的数目
L_new = 0 % 用于求和公式累加
P_M0 = 2*p^M
L1 = 1 -