CN111046516B - 一种复杂网络拓扑三维布局方法、装置及存储设备 - Google Patents
一种复杂网络拓扑三维布局方法、装置及存储设备 Download PDFInfo
- Publication number
- CN111046516B CN111046516B CN201910494139.9A CN201910494139A CN111046516B CN 111046516 B CN111046516 B CN 111046516B CN 201910494139 A CN201910494139 A CN 201910494139A CN 111046516 B CN111046516 B CN 111046516B
- Authority
- CN
- China
- Prior art keywords
- node
- list
- information
- nodes
- vertex
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 230000008569 process Effects 0.000 claims description 47
- 238000004364 calculation method Methods 0.000 claims description 39
- 238000006073 displacement reaction Methods 0.000 claims description 35
- 238000012800 visualization Methods 0.000 claims description 7
- 230000003247 decreasing effect Effects 0.000 claims description 5
- 230000002457 bidirectional effect Effects 0.000 claims description 4
- 230000008094 contradictory effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 2
- 230000000007 visual effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/904—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种复杂网络拓扑三维布局方法、装置及存储设备,涉及通信技术领域,用以解决目前面对数量庞大的网络拓扑数据,人们无法分析出数据的整体结构,也难以快速发现数据中包含节点信息的错误,并且难以实现合理且快速三维布局的问题,包括:读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;检验节点信息列表中所有节点的顶点信息并基于创建的节点列表判断节点间逻辑结构的正确性;根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种复杂网络拓扑三维布局方法、装置及存储设备。
背景技术
随着互联网技术的大规模应用,产生了诸多种类的数据,对于海量数据的分析,直观上远远超出了人脑能够诠释和分析的能力。如果把这些数据转换成人们能够理解的图形表达,通过人类视觉感知系统来感知,则会给予人们更深刻、更直观的体会。
在网络拓扑中,原始数据由很多个具有相同形式的数据结构所组成,需要将每一个数据结构变成“节点”形式进行展示,点与点之间的连接关系包含在数据结构之中,最后以“连线”的形式进行展示。
对于大量的网络拓扑数据,整体上,人们无法直接地分析出其整体结构,细节上,对于数据中包含的节点信息,也难以快速发现错误。因此,如何对庞大的网络拓扑数据进行可视化展示,并在此过程中找到并解决数据存在的问题,成为了急需解决的问题。
此外,目前在网络拓扑数据布局过程中,较多采用的是力引导算法。传统的力导向算法在计算时,若拉力和斥力的比例系数确定后,在计算过程中便不可更改,当计算拉力的系数相对与斥力设置的较小时,若同一个父节点下的子节点中插入了其他节点,子节点们在其他节点斥力的作用下会出现由于太分散而无法聚拢,而当拉力设置过大时,节点们又不够分散,堆积一团,无法实现合理且快速三维布局。
发明内容
基于上述存在的问题,本发明提供一种复杂网络拓扑三维布局方法、装置及存储设备,用以解决目前面对数量庞大的网络拓扑数据,人们无法从分析出整体结构,也难以快速发现数据中包含节点信息的错误,并难以实现合理且快速三维布局的问题。
本发明公开一种复杂网络拓扑三维布局方法,包括:
读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;
检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;
根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局。
进一步地,所述原始拓扑数据包括顶点编号列表和节点信息列表,其中,节点信息列表中包含多个节点,单个节点信息包括:节点编号、节点类型、节点逻辑层级、节点的父节点编号列表、节点的兄弟节点编号列表、节点的子节点信息编号列表。
进一步地,所述读取原始拓扑数据的节点信息并创建节点列表,包括:自定义节点类型,为节点设置基础属性;将原始数据的节点信息转成节点列表,创建节点列表,遍历原始拓扑数据中的节点信息列表;将每个节点信息都转换成一个节点中的属性,通过节点编号判断该节点是否已经存在于节点列表中,若不存在,则将该节点添加节点列表。
进一步地,所述检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性,包括:检验顶点信息是否正确、逻辑关系是否正确、整体结构是否完整。
进一步地,所述检验顶点信息是否正确包括:创建新的节点列表;按照顶点编号列表中的编号在节点列表中找到对应编号的节点;检查该顶点的属性,父节点应为空,逻辑层级应为0;若顶点属性正确,将顶点的等级属性置0,并将顶点添加进新的节点列表。
进一步地,所述检验逻辑关系是否正确,包括:找到顶点的连接点;判断顶点和其连接点的连接关系是否为双向且逻辑是否正确;判断连接点是否在新的节点列表中,若在,则比较其逻辑关系是否和二者的等级属性值关系矛盾,若不在,则修改连接点的等级属性,将其添加进新的节点列表;继续遍历连接点的其他所有连接点,重复上述过程,直至再无节点可被添加。
进一步地,所述检验整体结构是否完整,包括:判断新节点列表中节点个数与原节点列表的个数是否相同,若相同,则判定结构完整。
进一步地,所述根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局,包括:初始化过程,力引导布局过程,前端实现输出信息可视化过程。
进一步地,所述初始化过程,包括:
节点质量、电量赋值,其中,节点的质量公式为:m=(1+连接的节点数)×单位质量值;节点的电量公式为:首先是初始赋值,q=(层级+1)×单位电量值,递归加上节点的所有子节点的电量值之和的一半;
坐标赋值,包括:高度坐标赋值和平面坐标赋值;
高度坐标赋值过程包括:将节点的等级和层级反转,节点层级=最大层级-目前层级,高度坐标=节点等级×等级差+节点层级×层级差;
平面赋值,包括:确定所有顶点坐标,子节点相对于父节点按角度平均分配,父子距离r=q,并将r投射在x,y轴上。
进一步地,所述力引导布局过程,包括:
计算初始位置时整个系统的能量,并将节点位置信息作为文件输出进行保存;
按照迭代次数循环进行节点受力计算、位移计算,并计算新位置下系统的能量,与前一位置下的系统能量相比,若能量值变低,则当前位置信息作为文件输出覆盖之前的位置信息文件;
循环结束后,输出文件为整个过程中的最低能量下的节点位置信息。
进一步地,所述节点受力计算,包括:计算节点所受拉力、斥力进而计算节点所受合力;其中,计算拉力时,首先计算节点与连接点水平方向的距离r’,系数k由常量改为变量,将其与迭代次数n关联,得到计算公式F=kl×r’,其中,kmax,kmin为预设的最大和最小拉力系数,N为总的迭代次数,n为当前迭代次数,当拉力计算后的拉力系数kl大于/>时,计算节点的父节点对其的斥力,否则不计算父节点的斥力;计算斥力时,斥力计算公式为/>其中q1代表所述节点的电量,q2代表所述父节点的电量。
进一步地,所述节点位移计算,包括:
位移的计算公式为而时间T,先增大后减小,采用高斯函数计算;其中,a、b、c为系数,由外部给出,x为变量,与迭代次数n关联,计算完位移后,如果位移大于预设阈值S(S为变量,S=最大位移值–递减值×迭代次数),则按照S计算,否则按位移值计算。
进一步地,所述前端实现输出信息的可视化过程,包括:根据系统最小能量状态下的节点位置信息文件,进行三维布局绘制。
本发明公开一种复杂网络拓扑三维布局装置,其特征在于,包括:
节点列表创建模块:用于读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;
逻辑关系判定模块:用于检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;
三维布局绘制模块:用于根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局。
本发明还公开一种存储设备,其特征在于,所述存储设备中存储有多条指令,所述指令适于由处理器加载并执行一种复杂网络拓扑三维布局方法的步骤。
与现有技术相比,本发明提供的一种复杂网络拓扑逻辑关系判定及三维布局方法和装置,至少实现了如下的有益效果:
通过读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局,实现了对原始拓扑数据结构进行逻辑检查有益于后续分析并进行可视化展示,在节点布局的过程中,改进力引导算法,计算拉力时采用渐变力,使得拉力和斥力的计算比例在不断变化。让拉力在一开始相对于斥力较大,使得同一个父节点下的子节点在拉力的作用聚在一起,然后拉力慢慢减小,在斥力的作用下,节点再慢慢散开,避免了同一个父节点下的子节点中插入了其他节点的情况,保证了布局的合理性并加快了布局进程和效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种复杂网络拓扑三维布局方法流程图;
图2为本发明实施例提供的又一种复杂网络拓扑三维布局方法流程图;
图3为本发明实施例提供的一种复杂网络拓扑三维布局装置结构图。
具体实施方式
为了使本发明的目的,技术方案和优点更加清楚,下面结合附图,对本发明实施例提供的一种复杂网络拓扑逻辑关系判定及三维布局方法的具体实施方式进行详细地说明。应当理解,下面所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
目前面对数量庞大的网络拓扑数据,人们无法从分析出整体结构,也难以快速发现数据中包含节点信息的错误,并且难以实现合理且快速三维布局。
基于此,本发明实施例提供一种复杂网络拓扑三维布局方法流程图,如图1所示,包括:
S101,读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;
其中,节点信息列表中包含多个节点,单个节点信息包括:节点编号、节点类型、节点逻辑层级、节点的父节点编号列表、节点的兄弟节点编号列表、节点的子节点信息编号列表。
优选地,所述读取原始拓扑数据的节点信息并创建节点列表,包括:自定义节点类型,为节点设置基础属性;将原始数据的节点信息转成节点列表,创建节点列表,遍历原始拓扑数据中的节点信息列表;将每个节点信息都转换成一个节点中的属性,通过节点编号判断该节点是否已经存在于节点列表中,若不存在,则将该节点添加节点列表。
优选地,所述检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性,包括:检验顶点信息是否正确、逻辑关系是否正确、整体结构是否完整。
S102,检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;
优选地,所述检验顶点信息是否正确包括:创建新的节点列表;按照顶点编号列表中的编号在节点列表中找到对应编号的节点;检查该顶点的属性,父节点应为空,逻辑层级应为0;若顶点属性正确,将顶点的等级属性置0,并将顶点添加进新的节点列表。
优选地,所述检验逻辑关系是否正确,包括:找到顶点的连接点;判断顶点和其连接点的连接关系是否为双向且逻辑是否正确;判断连接点是否在新的节点列表中,若在,则比较其逻辑关系是否和二者的等级属性值关系矛盾,若不在,则修改连接点的等级属性,将其添加进新的节点列表;继续遍历连接点的其他所有连接点,重复上述过程,直至再无节点可被添加。
优选地,所述检验整体结构是否完整,包括:判断新节点列表中节点个数与原节点列表的个数是否相同,若相同,则判定结构完整。
S103,根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局。
优选地,所述根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局,包括:初始化过程,力引导布局过程,前端实现输出信息可视化过程。
优选地,所述初始化过程,包括:
节点质量、电量赋值,其中,节点的质量公式为:m=(1+连接的节点数)×单位质量值;节点的电量公式为:首先是初始赋值,q=(层级+1)×单位电量值,递归加上节点的所有子节点的电量值之和的一半;
坐标赋值,包括:高度坐标赋值和平面坐标赋值;
高度坐标赋值过程包括:将节点的等级和层级反转,节点层级=最大层级-目前层级,高度坐标=节点等级×等级差+节点层级×层级差;
平面赋值,包括:确定所有顶点坐标,子节点相对于父节点按角度平均分配,父子距离r=q,并将r投射在x,y轴上。
优选地,所述力引导布局过程,包括:
计算初始位置时整个系统的能量,并将节点位置信息作为文件输出进行保存;
按照迭代次数循环进行节点受力计算、位移计算,并计算新位置下系统的能量,与前一位置下的系统能量相比,若能量值变低,则当前位置信息作为文件输出覆盖之前的位置信息文件;
循环结束后,输出文件为整个过程中的最低能量下的节点位置信息。
优选地,所述节点受力计算,包括:计算节点所受拉力、斥力进而计算节点所受合力;其中,计算拉力时,首先计算节点与连接点水平方向的距离r’,系数k由常量改为变量,将其与迭代次数n关联,得到计算公式F=kl×r’,其中,kmax,kmin为预设的最大和最小拉力系数,N为总的迭代次数,n为当前迭代次数,当拉力计算后的拉力系数kl大于/>时,计算节点的父节点对其的斥力,否则不计算父节点的斥力;计算斥力时,斥力计算公式为/>q1代表所述节点的电量,q2代表所述父节点的电量。
优选地,所述节点位移计算,包括:
位移的计算公式为而时间T,先增大后减小,采用高斯函数计算;其中,a、b、c为系数,由外部给出,x为变量,与迭代次数n关联,计算完位移后,如果位移大于预设阈值S(S为变量,S=最大位移值–递减值×迭代次数),则按照S计算,否则按位移值计算。
优选地,所述前端实现输出信息的可视化过程,包括:根据系统最小能量状态下的节点位置信息文件,进行三维布局绘制。
其中,节点信息列表中单个节点信息包括:节点编号、节点类型、节点逻辑层级、节点的父节点编号列表、节点的兄弟节点编号列表、节点的子节点信息编号列表。
优选地,所述读取原始数据节点信息并创建节点列表,包括:自定义节点类型,按照设计需求为节点设置基础属性;将原始数据的节点信息转成节点列表,包括:创建节点列表,遍历原始数据中的节点信息列表;将每个节点信息都转换成一个节点中的属性,通过节点编号判断该节点是否已经存在于节点列表中,若不存在,则将该节点添加节点列表。
因此,本发明实施例提供的方法通过读取原始数据节点信息并创建节点列表;检验节点信息并判断逻辑结构的正确性;根据数据逻辑结构采用改进的力引导算法对节点进行三维布局,实现了对原始数据结构进行逻辑检查有益于后续分析并进行可视化展示,在节点布局的过程中,改进力引导算法,计算拉力时采用渐变力,使得拉力和斥力的计算比例在不断变化。让拉力在一开始相对于斥力较大,使得同一个父节点下的子节点在拉力的作用聚在一起,然后拉力慢慢减小,在斥力的作用下,节点再慢慢散开,避免了同一个父节点下的子节点中插入了其他节点的情况,保证了布局的合理性并加快了布局进程和效率。
本发明实施例提供又一种复杂网络拓扑逻辑关系判定及三维布局方法流程图,如图2所示,包括:
S201,读取原始数据节点信息并创建节点列表;
S202,自定义节点类型,按照设计需求为节点设置基础属性。
S203,将原始数据的节点信息转换成信息列表,包括:创建节点列表,遍历原始数据中的节点信息列表;将每个节点信息都转换成一个节点中的属性,通过节点编号判断该节点是否已经存在于节点列表中,若不存在,则将该节点添加节点列表。
S204,检验顶点信息是否正确,若正确,则将顶点的等级置0,并将顶点添加进新列表,若错误,输出错误顶点编号;
优选地,所述检验顶点信息是否正确包括:创建新的节点列表;按照顶点编号列表中的编号在节点列表中找到对应编号的节点;检查该顶点的属性,父节点应为空,逻辑层级应为0;若顶点属性正确,将顶点的等级属性置0,并将顶点添加进新的节点列表。
S205,检验逻辑关系是否正确,若正确,继续进行逻辑检验,是否正确,若错误,输出错误节点编号;
优选地,所述检验逻辑关系是否正确,包括:找到顶点的连接点;判断连接关系是否双向且逻辑是否正确;判断连接点是否在新的节点列表中,若在,则比较其逻辑关系是否和等级值矛盾,若不在,则修改连接点的等级属性,将其添加进新的节点列表;找到连接点的所有连接点,重复上述过程,直至再无节点可被添加。
S206,检验整体结构是否正确,若正确,进入三维布局绘制过程,若错误,输出错误节点编号列表;
优选地,所述检验整体结构是否完整,包括:判断新节点列表中节点个数与原节点列表的个数是否相同,若相同,则结构完整。
S207,初始化节点信息;
优选地,所述初始化过程,包括:节点质量、电量赋值,其中,节点的质量公式为:m=(1+连接的节点数)×单位质量值;节点的电量公式为:首先是初始赋值,q=(层级+1)×单位电量值,递归加上及诶单的所有子节点的电量值之和的一半;坐标赋值,包括:高度坐标赋值和平面坐标赋值;高度坐标赋值过程包括:将节点的等级和层级反转,节点层级=最大层级-目前层级,高度坐标=节点等级×等级差+节点层级×层级差;平面赋值,包括:确定所有顶点坐标,子节点相对于父节点按角度平均分配,父子距离r=q,并将r投射在x,y轴上。
S208,使用改进的力引导算法布局;
优选地,所述使用改进力引导算法布局,包括:计算初始位置时整个系统的能量,并将节点位置信息作为文件输出进行保存;按照迭代次数循环进行,节点受力计算、位移计算、并计算新位置下系统的能量,与前一位置下的系统能量相比,若能量值变低,则当前位置信息作为文件输出覆盖之前的位置信息文件;循环结束后,输出文件为整个过程中的最低能量下的节点位置信息。
优选地,所述节点受力计算,包括:计算节点所受拉力、斥力进而计算节点所受合力;其中,计算拉力时,首先计算节点与连接点水平方向的距离r’,将弹簧原长置零,系数k由常量改为变量,将其与迭代次数n关联,得到计算公式F=kl×r’,其中,kmax,kmin为预设的最大和最小拉力系数,N为总的迭代次数,n为当前迭代次数,当拉力计算后的拉力系数kl大于/>时,计算节点的父节点对其的斥力,否则不计算父节点的斥力;计算斥力时,斥力计算公式为/>其中q1代表所述节点的电量,q2代表所述父节点的电量;
优选地,所述节点位移计算,包括:位移的计算公式为而时间T,先增大后减小,采用高斯函数/>计算。其中,a、b、c为系数,由外部给出,x为变量,与迭代次数n关联,/>计算完位移后,如果位移大于预设阈值S(S为变量,S=最大位移值–递减值×迭代次数),则按照S计算,否则按位移值计算;
S209,在前端实现可视化布局;
优选地,所述前端实现可视化布局,包括:根据系统最小能量状态下的节点位置信息文件,进行三维布局绘制。
本发明实施例同时提供了一种复杂网络拓扑逻辑关系判定及三维布局装置,如图3示,包括:
节点列表创建模块31:用于读取原始数据节点信息并创建节点列表;
逻辑关系判定模块32:用于检验节点信息及判断逻辑结构的正确性;
三维布局绘制模块33:用于根据数据逻辑结构采用改进的力引导算法对节点进行三维布局。
本发明实施例还提供一种存储设备,所述存储设备中存储有多条指令,所述指令适于由处理器加载并执行本发明实施例提供一种复杂网络拓扑三维布局方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明实施例可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种复杂网络拓扑三维布局方法,其特征在于:
读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;
检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;
根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局;
所述根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局,包括:初始化过程,力引导布局过程,前端实现输出信息可视化过程;
所述初始化过程,包括:
节点质量、电量赋值,其中,节点的质量公式为:m=(1+连接的节点数)×单位质量值;节点的电量公式为:首先是初始赋值,q=(层级+1)×单位电量值,递归加上节点的所有子节点的电量值之和的一半;
坐标赋值,包括:高度坐标赋值和平面坐标赋值;
高度坐标赋值过程包括:将节点的等级和层级反转,节点层级=最大层级-目前层级,高度坐标=节点等级×等级差+节点层级×层级差;
平面赋值,包括:确定所有顶点坐标,子节点相对于父节点按角度平均分配,父子距离r=q,并将r投射在x,y轴上;
所述力引导布局过程,包括:
计算初始位置时整个系统的能量,并将节点位置信息作为文件输出进行保存;
按照迭代次数循环进行节点受力计算、位移计算,并计算新位置下系统的能量,与前一位置下的系统能量相比,若能量值变低,则当前位置信息作为文件输出覆盖之前的位置信息文件;
循环结束后,输出文件为整个过程中的最低能量下的节点位置信息;
所述节点受力计算,包括:计算节点所受拉力、斥力进而计算节点所受合力;其中,计算拉力时,首先计算节点与连接点水平方向的距离r′,系数k由常量改为变量,将其与迭代次数n关联,得到计算公式F=kl×r′, 其中,kmax,kmin为预设的最大和最小拉力系数,N为总的迭代次数,n为当前迭代次数,当拉力计算后的拉力系数kl大于/>时,计算节点的父节点对其的斥力,否则不计算父节点的斥力;计算斥力时,斥力计算公式为/>其中,q1代表所述节点的电量,q2代表所述父节点的电量;
所述节点位移计算,包括:
位移的计算公式为而时间T,先增大后减小,采用高斯函数/>计算;其中,a、b、c为系数,由外部给出,x为变量,与迭代次数n关联,/>计算完位移后,如果位移大于预设阈值S,S为变量,S=最大位移值–递减值×迭代次数,则按照S计算,否则按位移值计算。
2.如权利要求1所述的方法,其特征在于,所述原始拓扑数据包括顶点编号列表和节点信息列表,其中,节点信息列表中包含多个节点,其中单个节点信息包括:节点编号、节点类型、节点逻辑层级、节点的父节点编号列表、节点的兄弟节点编号列表、节点的子节点信息编号列表。
3.如权利要求2所述的方法,其特征在于,所述读取原始拓扑数据的节点信息并创建节点列表,包括:自定义节点类型,为节点设置基础属性;将原始数据的节点信息转成节点列表,创建节点列表,遍历原始拓扑数据中的节点信息列表;将每个节点信息都转换成一个节点中的属性,通过节点编号判断该节点是否已经存在于节点列表中,若不存在,则将该节点添加节点列表。
4.如权利要求3所述的方法,其特征在于,所述检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性,包括:检验顶点信息是否正确、逻辑关系是否正确、整体结构是否完整。
5.如权利要求4所述的方法,其特征在于,所述检验顶点信息是否正确包括:创建新的节点列表;按照顶点编号列表中的编号在节点列表中找到对应编号的节点;检查该顶点的属性,父节点应为空,逻辑层级应为0;若顶点属性正确,将顶点的等级属性置0,并将顶点添加进新的节点列表。
6.如权利要求5所述的方法,其特征在于,所述检验逻辑关系是否正确,包括:找到顶点的连接点;判断顶点和其连接点的连接关系是否为双向且逻辑是否正确;判断连接点是否在新的节点列表中,若在,则比较其逻辑关系是否和二者的等级属性值关系矛盾,若不在,则修改连接点的等级属性,将其添加进新的节点列表;继续遍历连接点的其他所有连接点,重复上述过程,直至再无节点可被添加。
7.如权利要求5所述的方法,其特征在于,所述检验整体结构是否完整,包括:判断新节点列表中节点个数与原节点列表的个数是否相同,若相同,则判定结构完整。
8.如权利要求1所述的方法,其特征在于,所述前端实现输出信息的可视化过程,包括:根据系统最小能量状态下的节点位置信息文件,进行三维布局绘制。
9.一种复杂网络拓扑三维布局装置,其特征在于,包括:
节点列表创建模块:用于读取原始拓扑数据的节点信息并创建节点列表,其中,原始拓扑数据包括顶点编号列表和节点信息列表;
逻辑关系判定模块:用于检验节点信息列表中所有节点的顶点信息并判断节点间逻辑结构的正确性;
三维布局绘制模块:用于根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局;
所述三维布局绘制模块,用于根据拓扑数据的逻辑结构采用改进的力引导算法对节点进行三维布局,包括:初始化过程,力引导布局过程,前端实现输出信息可视化过程;
所述初始化过程,包括:
节点质量、电量赋值,其中,节点的质量公式为:m=(1+连接的节点数)×单位质量值;节点的电量公式为:首先是初始赋值,q=(层级+1)×单位电量值,递归加上节点的所有子节点的电量值之和的一半;
坐标赋值,包括:高度坐标赋值和平面坐标赋值;
高度坐标赋值过程包括:将节点的等级和层级反转,节点层级=最大层级-目前层级,高度坐标=节点等级×等级差+节点层级×层级差;
平面赋值,包括:确定所有顶点坐标,子节点相对于父节点按角度平均分配,父子距离r=q,并将r投射在x,y轴上;
所述力引导布局过程,包括:
计算初始位置时整个系统的能量,并将节点位置信息作为文件输出进行保存;
按照迭代次数循环进行节点受力计算、位移计算,并计算新位置下系统的能量,与前一位置下的系统能量相比,若能量值变低,则当前位置信息作为文件输出覆盖之前的位置信息文件;
循环结束后,输出文件为整个过程中的最低能量下的节点位置信息;
所述节点受力计算,包括:计算节点所受拉力、斥力进而计算节点所受合力;其中,计算拉力时,首先计算节点与连接点水平方向的距离r′,系数k由常量改为变量,将其与迭代次数n关联,得到计算公式F=kl×r′, 其中,kmax,kmin为预设的最大和最小拉力系数,N为总的迭代次数,n为当前迭代次数,当拉力计算后的拉力系数kl大于/>时,计算节点的父节点对其的斥力,否则不计算父节点的斥力;计算斥力时,斥力计算公式为/>其中,q1代表所述节点的电量,q2代表所述父节点的电量;
所述节点位移计算,包括:
位移的计算公式为而时间T,先增大后减小,采用高斯函数/>计算;其中,a、b、c为系数,由外部给出,x为变量,与迭代次数n关联,/>计算完位移后,如果位移大于预设阈值S,S为变量,S=最大位移值–递减值×迭代次数,则按照S计算,否则按位移值计算。
10.一种计算机存储设备,其特征在于,所述存储设备中存储有多条指令,所述指令适于由处理器加载并执行权利要求1-8任一所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910494139.9A CN111046516B (zh) | 2019-06-06 | 2019-06-06 | 一种复杂网络拓扑三维布局方法、装置及存储设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910494139.9A CN111046516B (zh) | 2019-06-06 | 2019-06-06 | 一种复杂网络拓扑三维布局方法、装置及存储设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111046516A CN111046516A (zh) | 2020-04-21 |
CN111046516B true CN111046516B (zh) | 2023-11-10 |
Family
ID=70231719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910494139.9A Active CN111046516B (zh) | 2019-06-06 | 2019-06-06 | 一种复杂网络拓扑三维布局方法、装置及存储设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111046516B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111695223B (zh) * | 2020-06-11 | 2023-03-03 | Ut斯达康通讯有限公司 | 一种网络拓扑布局方法及系统 |
CN116055334B (zh) * | 2023-01-13 | 2024-04-19 | 中国联合网络通信集团有限公司 | 一种网络布局方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490830A (zh) * | 2015-05-12 | 2016-04-13 | 哈尔滨安天科技股份有限公司 | 一种网络拓扑图中查找环状结构的方法及系统 |
CN106685716A (zh) * | 2016-12-29 | 2017-05-17 | 平安科技(深圳)有限公司 | 网络拓扑自适应的数据可视化方法及装置 |
CN107623594A (zh) * | 2017-09-01 | 2018-01-23 | 电子科技大学 | 一种地理位置信息约束的三维层级网络拓扑可视化方法 |
CN108600022A (zh) * | 2018-04-28 | 2018-09-28 | 中国人民解放军国防科技大学 | 一种动态网络布局加速方法 |
-
2019
- 2019-06-06 CN CN201910494139.9A patent/CN111046516B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490830A (zh) * | 2015-05-12 | 2016-04-13 | 哈尔滨安天科技股份有限公司 | 一种网络拓扑图中查找环状结构的方法及系统 |
CN106685716A (zh) * | 2016-12-29 | 2017-05-17 | 平安科技(深圳)有限公司 | 网络拓扑自适应的数据可视化方法及装置 |
CN107623594A (zh) * | 2017-09-01 | 2018-01-23 | 电子科技大学 | 一种地理位置信息约束的三维层级网络拓扑可视化方法 |
CN108600022A (zh) * | 2018-04-28 | 2018-09-28 | 中国人民解放军国防科技大学 | 一种动态网络布局加速方法 |
Non-Patent Citations (2)
Title |
---|
Printability verification for double-patterning technology;Luk-Pat, G等;《Proceedings of the SPIE - The International Society for Optical Engineering》;第TS=node* and TS=layout and TS=force guidance卷;1-11 * |
虚拟力引导蚁群算法的WSN全局控制链路实现策略;田一鸣等;《计算机研究与发展》;26-30 * |
Also Published As
Publication number | Publication date |
---|---|
CN111046516A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Tran et al. | Shape grammar approach to 3D modeling of indoor environments using point clouds | |
US9098941B2 (en) | Systems and methods for graphical layout | |
CN111260766B (zh) | 虚拟光源处理方法、装置、介质及电子设备 | |
CN111135574B (zh) | 游戏场景生成方法、装置、计算机可读介质及电子设备 | |
CN111046516B (zh) | 一种复杂网络拓扑三维布局方法、装置及存储设备 | |
US11069099B2 (en) | Drawing curves in space guided by 3-D objects | |
CN112717414B (zh) | 游戏场景编辑方法、装置、电子设备以及存储介质 | |
US11080438B2 (en) | Building-information management system with directional wind propagation and diffusion | |
CN112991547A (zh) | 模型简化处理方法、装置以及电子设备、介质 | |
US9141380B2 (en) | Method and system for visualization of large codebases | |
CN110362854B (zh) | 一种故障树图形化建模节点布局的自动处理方法、装置 | |
CN114239198B (zh) | 一种基于并行优化的电网子图划分方法及装置 | |
US20110267350A1 (en) | Adaptive Process Simplification of Mined Business Process Graphs Using Tutte Parameterizations | |
CN112464040B (zh) | 图结构识别、可视化展示及显示操作方法及装置 | |
CN113657396A (zh) | 训练方法、译文展示方法、装置、电子设备以及存储介质 | |
Lam et al. | Hyperbolic Wheel: A novel hyperbolic space graph viewer for hierarchical information content | |
WO2023103980A1 (zh) | 三维路径展示方法、装置、可读存储介质及电子设备 | |
US11941327B2 (en) | Customizable reinforcement learning of column placement in structural design | |
US11966822B2 (en) | Feature processing for machine learning | |
US9129318B2 (en) | System and method for allocating suppliers using geographical information system and supplier capability | |
CN113655942A (zh) | 一种图表数据的展示方法和装置 | |
CN113313809A (zh) | 一种渲染方法和装置 | |
CN112465943B (zh) | 一种发色渲染方法、装置、电子设备及存储介质 | |
US20240028787A1 (en) | Techniques for design space exploration in a multi-user collaboration system | |
CN110889902B (zh) | 一种三维建模的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 150028 building 7, innovation and entrepreneurship square, science and technology innovation city, Harbin high tech Industrial Development Zone, Heilongjiang Province (No. 838, Shikun Road) Applicant after: Antan Technology Group Co.,Ltd. Address before: 150028 building 7, innovation and entrepreneurship square, science and technology innovation city, Harbin high tech Industrial Development Zone, Harbin, Heilongjiang Province (No. 838, Shikun Road) Applicant before: Harbin Antian Science and Technology Group Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |