基于力引导的点布局优化算法制造技术

技术编号:19780623 阅读:72 留言:0更新日期:2018-12-15 11:58
本发明专利技术属于可视化数据技术领域,公开了基于力引导的点布局优化算法,包括如下步骤:步骤(1):定义节点集合,边集合和无向图G;步骤(2):设置系统中吸引力的总大小,系统中排斥力的总大小和总量级函数;步骤(3):定义M(0);步骤(4):用算法聚集阶段迭代的总数和算法分裂阶段迭代的总数表示;步骤(5):计算吸引力和排斥力在X轴方向和Y轴方向上的分量;步骤(6):用笛卡尔坐标空间内X、Y轴方向上的排斥力和吸引力表示第t次迭代时节点在X、Y轴方向上受到的合力,然后获取节点迭代后的坐标;步骤(7):迭代次数等于一个固定值时,迭代停止,算法结束。本发明专利技术解决传统算法中迭代次数多的问题,具有更好的扩展性。

【技术实现步骤摘要】
基于力引导的点布局优化算法
本专利技术属于可视化数据
,尤其涉及基于力引导的点布局优化算法。
技术介绍
力导向算法是指通过对每个节点的计算,算出引力和排斥力综合的合力,再由此合力来移动节点的位置。对适用于一般网状结构数据绘图的算法来说,力导向算法是一种常被应用的方法。通过对每个节点的计算,算出引力和排斥力综合的合力,再由此合力来移动节点的位置。执行一次后根据节点新位置算出新的能量值,如同力学概念,能量值越小,表示整个网络越趋于稳定。一般来说能量值越小,网络图的配置显示就会越清晰,因此当能量值到达最小值的时候,网状图的配置状态就是我们想要的结果。这种方法的缺点是不收敛,总是有节点在两个不同位置上来回振动,虽然不会收敛,但是来回振动时的配置通常也最终可达到某种稳定的状态,因此实际的执行都以指定执行的次数来决定停止的条件。另外一个问题就是网状图的节点数太多时,也无法求得令人满意的结果。当开始配置不好的情况下,通常是力导向算法的配置结果也不是很好,所以使用力导向算法通常会配合一个初始配置的算法,以达成较满意的网状配置。多级算法最重要的是代表节点的选择,这样就会直接影响到执行效率和结果。力导向算法的想法很简单,且容易使用和修改以满足需求。我们可更改网状图的初始位置以加快收敛,也可根据不同的要求加入不同种类的力,另外,算法过程中虽然没有特别针对网状图的对称性进行配置,但是当网状图中存在对称关系时也能获得较好的结果。力导向算法的缺陷是在初始配置不佳的时候所得到的网状图也不会很好,所以可根据网状数据的特性是否选择该算法。经典的力导向布局算法在网络可视化领域内有着极为广泛的应用,算法规定:在任意两个节点间都存在电荷斥力作用,在任意相连的两个节点间都存在弹簧引力作用。但也存在一些不足之处,比如,在一次迭代中,要计算节点受到的力的作用时,需要该节点与其他所有节点的距离与电荷斥力的大小,如此一来,造成算法在每一次迭代中花费较长的时间。再者,布局的原始状态下,所有节点是随机分布的,从而导致随机状态下的布局距离布局达到稳定态需要经历较多的迭代次数。另外,在节点数量较大的复杂网络中,有较高的可能性出现大量边与边交错,难以看清的问题。申请号为201611249511.2的专利公开了网络拓扑自适应的数据可视化方法及装置,该网络拓扑自适应的数据可视化方法包括:对节点进行预处理,输出预处理节点;采用力引导布局算法对所述预处理节点进行处理,形成初始网络拓扑图;对所述初始网络拓扑图中重叠的预处理节点进行去重处理,输出去重节点;基于所述去重节点形成目标网络拓扑图。该网络拓扑自适应的数据可视化方法可实现数据可视化自动化,简化数据可视化处理流程,无需人工干预,可有效节省人工干预成本,并提高处理效率。但是该算法迭代次数多,迭代周期长。
技术实现思路
本专利技术的目的在于公开迭代次数少,扩展性强的基于力引导的点布局优化算法。本专利技术的目的是这样实现的:基于力引导的点布局优化算法,包含如下步骤:步骤(1):定义无向图G=(V,E)由节点集合V与边集合E组成,节点集合V={vi|1≤i≤n},n>0;边集合E={ei|0≤i≤m},m≥0;vi是无向图G的节点,ei是无向图G的边;定义若节点vi,vj∈V,j∈[1,n],且vi,vj∈E,则节点vi,vj是相邻的;定义若两条边公用同一节点,那么这两条边是相邻的;n表示节点的数量,m表示边的数量;步骤(2):将吸引力的大小设置为mM(t)μ,μ=0.9;Ma(t)=2M(t)0.9m2;Mr(t)=M(t)n(n-1);f(t)=2M(t)0.9m2-M(t)n(n-1);上式中,Ma(t)是系统中吸引力的总大小,Mr(t)是系统中排斥力的总大小,f(t)是总量级函数;步骤(3):设t=tp时刻,总量级函数f(t)等于0;t为算法迭代的次数,t∈[1,+∞);定义t=0时,M(0)=1/m;t>1时,M(t)单调递增;M(1)<M(tp);令步骤(4):设算法聚集阶段迭代的总数为s,算法分裂阶段迭代的总数为b,且0<s<b。令用m,n,t和s表示M(t):步骤(5):计算吸引力和排斥力在X轴方向和Y轴方向上的分量:上式中,fa(vi,t).x表示笛卡尔坐标空间内X轴方向上的吸引力,fa(vi,t).y表示笛卡尔坐标空间内Y轴方向上的吸引力,θij(t)表示在第t次迭代时X轴与连接顶点vi和vj的直线之间的夹角;aij属于邻接矩阵A,aij=1表示节点vi,vj相邻;aij=0表示节点vi,vj不相邻;上式中,fr(vi,t).x表示笛卡尔坐标空间内X轴方向上的排斥力,fr(vi,t).y表示笛卡尔坐标空间内Y轴方向上的排斥力;步骤(6):由vi(t).x和vi(t).y获取迭代后节点vi的坐标:第t次迭代时节点vi在X轴方向上受到的合力vi(t).x:vi(t).x=fa(vi,t).x+fr(vi,t).x;第t次迭代时节点vi在Y轴方向上受到的合力vi(t).y:vi(t).y=fa(vi,t).y+fr(vi,t).y;由vi(t).x和vi(t).y更新节点vi的坐标;步骤(7):当t=s+b时,迭代停止。本专利技术的有益效果为:本专利技术解决了传统算法中迭代次数太多和迭代周期长的问题,还解决了在节点数量较大的复杂网络中大量边与边交错,难以看清的问题。与传统算法相比,本专利技术具有更好的扩展性。附图说明图1是基于力引导的点布局优化算法在m=4,n=4,在M(t)=t时f(t)的变化情况;图2为力引导的点布局优化算法与FR算法交叉边数量对比图;图3为力引导的点布局优化算法与FR算法边长标准差对比图;图4为力引导的点布局优化算法与FR算法节点间最小距离对比图;图5为力引导的点布局优化算法与FR算法节点分布对比图;图6为力引导的点布局优化算法与FR算法交迭代时间对比图;图7为力引导的点布局优化算法对8*8的普通随机网络图的应用;图8为FR算法对8*8的普通随机网络图的应用;图9为力引导的点布局优化算法对15*5的QueenGraph网络图的应用;图10为FR算法对15*5的QueenGraph网络图的应用。具体实施方式下面结合附图来进一步描述本专利技术:基于力引导的点布局优化算法,宏观上分为两个阶段,即聚集阶段和分裂阶段。定义无向图G=(V,E)是由节点集合V与边集合E组成,节点集合V={vi|1≤i≤n},其中n>0,边集合E={ei|0≤i≤m},其中m≥0,vi和ei分别是图G的节点和边。节点{vi,vj}∈V,若{vi,vj}∈E,那么这两节点是相邻的。若两条边公用同一节点,那么这两条边是相邻的。定义邻接矩阵A中,使用0或1表示两节点是否相邻,若相邻,即{vi,vj}∈E,那么(a)ij=1;若不相邻,那么(a)ij=0。为了简单起见,在本章的剩余部分将无向图简单地称为图。通过图形的布局,已知给定的平面图区域内所有节点的位置,即X坐标和Y坐标。假设吸引力和排斥力定义在一对节点之间,并且将图看作是一个物理系统,那么经典的力引导的布局算法从一个随机的初始布局开始,然后迭代地找到一个总能量最小的布局,对应于系统的机械平衡状态。使用变量t来表示算本文档来自技高网
...

【技术保护点】
1.基于力引导的点布局优化算法,其特征在于:包含如下步骤:步骤(1):定义节点集合,边集合和无向图G;步骤(2):设置系统中吸引力的总大小,系统中排斥力的总大小和总量级函数;步骤(3):定义M(0);步骤(4):用算法聚集阶段迭代的总数和算法分裂阶段迭代的总数表示M(t);步骤(5):计算吸引力和排斥力在X轴方向和Y轴方向上的分量;步骤(6):用笛卡尔坐标空间内X、Y轴方向上的排斥力和吸引力表示第t次迭代时节点vi在X、Y轴方向上受到的合力,然后获取节点迭代后的坐标;步骤(7):迭代次数等于一个固定值时,迭代停止,算法结束。

【技术特征摘要】
1.基于力引导的点布局优化算法,其特征在于:包含如下步骤:步骤(1):定义节点集合,边集合和无向图G;步骤(2):设置系统中吸引力的总大小,系统中排斥力的总大小和总量级函数;步骤(3):定义M(0);步骤(4):用算法聚集阶段迭代的总数和算法分裂阶段迭代的总数表示M(t);步骤(5):计算吸引力和排斥力在X轴方向和Y轴方向上的分量;步骤(6):用笛卡尔坐标空间内X、Y轴方向上的排斥力和吸引力表示第t次迭代时节点vi在X、Y轴方向上受到的合力,然后获取节点迭代后的坐标;步骤(7):迭代次数等于一个固定值时,迭代停止,算法结束。2.根据权利要求1所述的基于力引导的点布局优化算法,其特征在于:所述的步骤(1)具体为:定义无向图G=(V,E)由节点集合V与边集合E组成,节点集合V={vi|1≤i≤n},n>0;边集合E={ei|0≤i≤m],m≥0;vi是无向图G的节点,ei是无向图G的边;定义若节点vi,vj∈V,j∈[1,n],且vi,vj∈E,则节点vi,vj是相邻的;定义若两条边公用同一节点,那么这两条边是相邻的;n表示节点的数量,m表示边的数量。3.根据权利要求1所述的基于力引导的点布局优化算法,其特征在于:所述的步骤(2)具体为:将吸引力的大小设置为mM(t)μ,μ=0.9;Ma(t)=2M(t)0.9m2;Mr(t)=M(t)n(n-1);f(t)=2M(t)0.9m2-M(t)n(n-1);上式中,Ma(t)是系统中吸引力的总大小,Mr(t)是系统中排斥力的总大小,f(t)是总量级函数。4.根据权利要求1所述的基于...

【专利技术属性】
技术研发人员:周连科赵昱杰谢晓东褚慈薛冬梅王念滨王红滨李秀明王勇军迟熙翔
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙江,23

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

1