一种基于随机采样和改进BH方法的网络拓扑呈现方法技术

技术编号:38819257 阅读:14 留言:0更新日期:2023-09-15 19:58
本发明专利技术属于计算机应用领域,是一种网络拓扑的呈现方法,包括如下步骤:(10)初始化:初始化节点速度值,设置冷却系数,并创建一个节点索引值数组;(20)节点初始位置计算:初始化节点位置使其按规律排列,即靠近节点阵列起始点的节点置于更靠近中心的位置;(30)随机节点采样算法生成原始布局:在每次迭代中,对每一个节点子集的速度以及每一个节点的位置进行更新;(40)基于WebGPU的BH(Bames

【技术实现步骤摘要】
一种基于随机采样和改进BH方法的网络拓扑呈现方法


[0001]本专利技术属于计算机应用领域,是一种具有效率高、速度快、视图效果好的适用于网络拓扑的呈现方法。

技术介绍

[0002]在互联网+的时代,计算机网络发展异常迅猛,网络通讯所产生的数据十分庞大。其中网络结构特征尤为突出,且网络结构的异构性、动态性、复杂性、发展的非集中性以及时变性等特征都给网络结构分析研究带来了巨大的挑战。网络结构的可视化有助于用户理解、分析目标网络的整体状况和发现存在于网络拓扑的潜在规律,其研究重点和难点在于要及时、快速、正确、完整地获取网络拓扑信息,生成清晰稳定的拓扑图,并以图形方式清晰展现网络结构中的节点和连接状况。网络拓扑发现和显示是现代网络管理的核心任务,通过可视化网络节点及其连接关系,能够清晰直观地了解网络的运行状态、拥塞情况和瓶颈位置,有助于发现和解决故障。同时,网络拓扑可视化也有利于更好地评估、预测和分析网络内部信息、规律和变化。
[0003]目前网络拓扑可视化的研究存在以下不足:
[0004]1、在大规模数据的背景下,传统的网络拓扑呈现方法存在效率低、速度慢的问题,无法支持大规模网络拓扑的呈现。
[0005]2、在大规模数据的背景下,由于可绘制空间的有限,采用传统的绘图方式则必然会导致点线重叠,交叉,混乱不堪的现象出现,无法满足可视化呈现的可读性。

技术实现思路

[0006]针对现有技术中存在的问题,本专利技术的目的在于提供一种基于随机采样和改进BH方法的网络拓扑呈现方法,提高大规模网络条件下网络拓扑的呈现性能和效果。
[0007]本专利技术是通过以下技术方案来实现一种基于随机采样和改进BH方法的网络拓扑呈现方法,包括以下步骤:
[0008](10)初始化:将节点放置在节点集V中,边放置在边集E中,V和E作为数组存储,初始化节点速度值,设置冷却系数α,并创建一个存储每个节点索引值的数组A;
[0009](20)节点初始位置计算:初始化节点位置使其按规律排列,即靠近节点阵列起始点的节点置于更靠近中心的位置;
[0010](30)随机节点采样算法生成原始布局:在每次迭代中,随机节点采样算法分为随机节点和固定大小的节点集两部分计算斥力来更新节点速度,进而更新节点位置;
[0011](40)基于WebGPU的BH算法完善布局:在原始布局基础上使用基于WebGPU的并行BH算法,产生更加对称的布局;
[0012](50)网络拓扑呈现:在Canvas(绘制图形的HTML元素)画布上渲染节点和边。
[0013]本专利技术与现有技术相比,其显著优点如下:
[0014]本专利技术通过基于随机采样和改进BH方法的网络拓扑呈现方法将传统网络拓扑呈
现方法的时间复杂度降低到O(|V|+同),辅助空间复杂度为O(|V|
3/4
),并且产生与直接使用BH算法相当的图形布局质量;在获取原始布局上,随机节点采样算法通过每次迭代更新|V|
3/4
个随机节点子集,每个节点子集有|V|
1/4
个随机斥力的方式来生成原始布局;在完善布局中,通过使用WebGPU中的计算管道来建立和遍历四叉树,从而在降低BH算法时间复杂度的同时细化布局质量,解决了数据过载时原有BH算法计算时间成本过高和无法并行计算的问题;最后通过利用Canvas(绘制图形的HTML元素)渲染速度快的优势,极大提高了网络拓扑呈现的渲染速度。本专利技术适用于网络拓扑的呈现,具有效率高、速度快以及呈现效果好的特点,对于数据量相当的网络数据,在不降低布局质量的同时,本专利技术方法可大幅领先于BH算法布局方法完成呈现。
附图说明
[0015]图1为本专利技术方法步骤图
[0016]图2为本专利技术方法详细流程图
[0017]图3为本专利技术提出的节点初始位置计算流程图
[0018]图4为本专利技术提出的随机节点采样算法更新节点位置流程图
[0019]图5为本专利技术提出的基于WebGPU的BH算法完善布局流程图
[0020]图6为本专利技术提出的四叉树创建示例图
[0021]图7为本专利技术提出的基于WebGPU的BH算法节点斥力计算示例图
[0022]图8为本专利技术方法的网络拓扑呈现图
[0023]具体实施方法
[0024]本专利技术设计一种基于随机采样和改进BH方法的网络拓扑呈现方法,如附图1所示(流程图见附图2),包括以下步骤:
[0025](10)初始化:将节点放置在节点集V中,边放置在边集E中,V和E作为数组存储,初始化节点速度值,设置冷却系数α,并创建一个存储每个节点索引值的数组A。
[0026]上述(10)的初始化步骤具体为:
[0027](11)将节点放置在节点集V中,边放置在边集E中,V和E作为数组存储,遍历节点集V中的所有节点,将每一个节点u的x速度以及y速度初始化为0;
[0028](12)将冷却系数α初始化为1,并创建一个索引值数组A,使其包含从1到|V|的每个整数。
[0029](20)节点初始位置计算:初始化节点位置使其按规律排列,即靠近节点阵列起始点的节点置于更靠近中心的位置,流程图如附图3所示。
[0030]上述(20)节点初始位置计算步骤具体为:
[0031](21)计算每个节点的邻居数量numNeighbors;
[0032]numNeighbors=min(15,|V|)
[0033](22)通过节点数量设置节点之间斥力补偿系数qmult,从而确保布局效果不会太分散;
[0034][0035](23)遍历节点集V中的所有节点,默认将所有节点的斥力设置为

30并将其存储在当前节点的索引属性的强度数组strengths中,并通过KD树为每个节点生成一个大小为numNeighbors的邻居数组node.nearest。
[0036](30)随机节点采样算法生成原始布局:在每次迭代中,随机节点采样算法分为随机节点和固定大小的节点集两部分来计算斥力,使用节点r的斥力来计算节点u的速度的方程为:
[0037][0038][0039]其中δ
x
=r
x

u
x
,δ
y
=r
y

u
y
,r
strength
为节点r的电荷斥力强度(默认为

30),q
mult
为斥力补偿系数;
[0040]在随机节点和固定大小的节点集两部分计算完所有的斥力后,使用速度衰减常数V
d
更新节点u的x和y速度和
[0041][0042][0043]使用u的速度更新每个节点的x和y位置,每次迭代结束前,更新冷却系数α:
[0044]α=α+(α
t

α)
·
α
d
...

【技术保护点】

【技术特征摘要】
1.一种基于随机采样和改进BH方法的网络拓扑呈现方法,其特征在于,包括如下步骤:(10)初始化:将节点放置在节点集V中,边放置在边集E中,V和E作为数组存储,初始化节点速度值,设置冷却系数α,并创建一个存储每个节点索引值的数组A;(20)节点初始位置计算:初始化节点位置使其按规律排列,即靠近节点阵列起始点的节点置于更靠近中心的位置;(30)随机节点采样算法生成原始布局:在每次迭代中,随机节点采样算法分为随机节点和固定大小的节点集两部分计算斥力来更新节点速度,进而更新节点位置;(40)基于WebGPU的BH算法完善布局:在原始布局基础上使用基于WebGPU的并行BH算法,产生更加对称的布局;(50)网络拓扑呈现:在Canvas(绘制图形的HTML元素)画布上渲染节点和边。2.根据权利要求1的网络拓扑呈现方法,其特征在于,所述(10)的初始化步骤具体为:(11)将节点放置在节点集V中,边放置在边集E中,V和E作为数组存储,遍历节点集V中的所有节点,将每一个节点u的x速度以及y速度初始化为0;(12)将冷却系数α初始化为1,并创建一个索引值数组A,使其包含从1到|V|的每个整数。3.根据权利要求1的网络拓扑呈现方法,其特征在于,所述(20)节点初始位置计算步骤具体为:(21)计算每个节点的邻居数量numNeighbors;(22)通过节点数量设置节点之间斥力强度q
mult
,从而确保布局效果不会太分散;(23)遍历节点集V中的所有节点,默认将所有节点的斥力设置为

30并将其后存储在当前节点的索引属性的强度数组strengths中,并通过KD树为每个节点生成一个大小为numNeighbors的邻居数组node.nearest。4.根据权利要求1的网络拓扑呈现方法,其特征在于,所述(30)的随机节点采样算法更新节点的步骤具体为:(31)计算每次迭代更新的节点数量numUpdate和用于采样的节点数量numSamples;(32)对节点集V按步长为numUpdate的窗口依次选取更新的节点数量;(32)通过KD树查找...

【专利技术属性】
技术研发人员:陈轩刘伟祝现威包凯君安靖陈剑
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1