一种应用于具有社区结构网络的边排序方法_2

文档序号:9667443阅读:来源:国知局
拓扑图;
[0043] 图4为对图3进行分析后得到的决策图;
[0044] 图5为一种网络社区结构图的具体示例图;
[0045] 图6为对图5中的各个社区结果单元进行排序后得到的结果图;
[0046] 图7为图5映射得到的虚拟网络图;
[0047] 图8为对图7进行节点-边排序结果图;
[0048]图9为采用本发明排序方法对图5进行边排序后,得到的最终排序结果图;
[0049]图10为采用传统的广度优先排序策略进行排序得到的结果图;
[0050] 图11为用于验证本发明效果的第一网络拓扑图;
[0051] 图12为用于验证本发明效果的第二网络拓扑图;
[0052] 图13为用于验证本发明效果的第三网络拓扑图。
【具体实施方式】
[0053] 为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合 附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以 解释本发明,并不用于限定本发明。
[0054] 本发明提供一种应用于具有社区结构网络的边排序方法,包括以下步骤:
[0055] 步骤1,对由多个网络节点组成的初始网络进行社区关系分析,同时,保持初始网 络中各个节点的拓扑关系不变,生成网络社区结构图;其中,所述网络社区结构图包括η个 社区结构单元,η为自然数;将η个社区结构单元依次记为社区结构单元Q、社区结构单元 (V··社区结构单元Cn;
[0056] 并且,将连接同一个社区结构单元内部的两个网络节点之间的边称为社区内部 边,将连接两个社区结构单元之间的边称为跨社区边;
[0057] 参考图5,为一种网络社区结构图的具体示意;在图5中,共划分得到了 3个社区 结构单元,分别为社区结构单元<^、社区结构单元〇;和社区结构单元(:3。另外,在图5中可 以看出,共存在4条跨社区边,分别为Ll、L2、L3和L4。
[0058] 步骤2,对于每个社区结构单元,均采用以下边排序方法:
[0059] 对属于该社区结构单元的所有社区内部边,采用广度优先遍历方法,以序号1为 排序起点,对社区内部边进行边排序,得到属于每个社区结构单元的社区内部边的原始边 排序序号;
[0060] S卩:设社区结构单元Q、社区结构单元(V··社区结构单元Cn所包含的边数量分别 为H··^;
[0061]贝lj :
[0062] 对属于社区结构单元Q的社区内部边的原始边排序序号分别为1、2…N1;
[0063] 对属于社区结构单元C2的社区内部边的原始边排序序号分别为1、2…N2;
[0064] ____
[0065] 对属于社区结构单元Cn的社区内部边的原始边排序序号分别为1、2…Nn;
[0066] 因此,对于图5所示的网络社区结构图,经过本步骤的排序,可得到图6示出的网 络社区结构图。可见,对于社区结构单元Q、社区结构单元(:2和社区结构单元(:3,分别从1 开始进行社区内部边的原始边排序,Q的原始边排序序号为1、2…6 ;C2的原始边排序序号 为1、2··· 10 ;C3的原始边排序序号为1、2··· 15。
[0067] 步骤3,将步骤1生成的网络社区结构图中的每个社区结构单元映射为对应的虚 拟网络节点;将步骤1生成的网络社区结构图中的每条跨社区边映射为虚拟跨社区边,虚 拟网络节点以及虚拟跨社区边即形成虚拟网络。
[0068] 因此,对于图5示出的网络社区结构图,可映射形成图7的虚拟网络图。
[0069] 步骤4,采用广度优先遍历方法对所述虚拟网络进行节点-边排序,得到虚拟网络 节点和虚拟跨社区边的排序序号。
[0070] 本步骤具体为:
[0071] 任意选取一个虚拟网络节点Fi作为排序起点,其排序序号即为1 ;然后,从2开 始,对所有关联于虚拟网络节点Fi且尚未排序的虚拟跨社区边进彳丁排序,设此处,共有xl 条虚拟跨社区边直接与虚拟网络节点Fi相连接,则xl条虚拟跨社区边的排序序号分别为: 2、3…xl+1 ;然后,对于序号为2的虚拟跨社区边,将与其另一端连接的虚拟网络节点排序 为xl+2;对于序号为3的虚拟跨社区边,如果与其另一端连接的虚拟网络节点尚未排序,则 将其排序为xl+3 ;依此类推,直到将与xl条虚拟跨社区边的另一端连接的虚拟网络节点均 排序结束后,再对下一层虚拟网络节点进行排序,如此反复,直到将虚拟网络中的各个虚拟 网络节点和虚拟跨社区边均排序后,结束。
[0072] 对于图7示出的虚拟网络图,可得到图8示出的节点-边排序结果。
[0073] 步骤5,根据虚拟网络节点的序号和虚拟跨社区边的序号,对步骤2得到的网络社 区结构图重新进行边排序,得到最终的边排序结果;
[0074] 边排序方法包括:
[0075] 步骤5. 1,将虚拟网络节点和虚拟跨社区边统称为虚拟元素,将虚拟元素按步骤4 排序得到的排序序号由小向大的顺序依次记为虚拟元素Q1、虚拟元素Q2…虚拟元素Qr;其 中,r为虚拟元素的总数量;
[0076] 在图8中,共有7个虚拟元素,包括3个虚拟网络节点以及4条虚拟跨社区边。
[0077] 将步骤2得到的网络社区结构图中的社区结构单元以及跨社区边统称为实体元 素,将分别与虚拟元素Q1、虚拟元素Q2…虚拟元素Qr对应的实体元素记为实体元素P1、实 体元素P2…实体元素Pr;可见,实体元素区分为两类,一类是社区结构单元,属于该社区结 构单元的社区内部边已按传统广度优先策略完成边排序,即:已存在原始排序序号;另一 类是跨社区边,还未存在排序序号;
[0078] 步骤5. 2,依次访问实体元素P1、实体元素P2…实体元素Pr,此处,实际上是根据 对虚拟网络进行的节点-边排序结果,按虚拟元素的排序顺序,依次对虚拟元素所对应的 实体元素进行访问的。
[0079] 具体访问方法如下:
[0080] 步骤5.2. 1,首先访问实体元素P1,并判断实体元素P1是否为社区结构单元,此 处,由于实体元素P1为第1个被访问对象,因此,必然为社区结构单元,表明实体元素P1的 社区内部边已存在原始排序序号,维持实体元素P1的社区内部边的原始排序序号不变;并 将实体元素P1的最大排序序号的值赋给变量W;
[0081] 步骤5. 2. 2,然后,继续访问实体元素P2,并判断实体元素P2是否为社区结构单 元,如果是,则执行步骤5. 2. 3 ;如果否,则执行步骤5. 2. 4 ;
[0082] 步骤5. 2. 3,此时,表明实体元素P2的社区内部边已存在原始排序序号,同时,对 实体元素P2的各个原始排序序号进行更新操作,更新方法为:令每个原始排序序号加上变 量W当前值,得到更新后的排序序号;
[0083] 同时,对变量W的值进行更新操作,将实体元素P2更新后的最大排序序号的值赋 给变量W;
[0084] 转到步骤5. 2. 5 ;
[0085] 步骤5. 2. 4,此时,表明实体元素P2为跨社区边,实体元素P2排序的序号为变量W 当前值加1后的值;
[0086] 同时,对变量W的值进行更新操作,将实体元素P2的排序序号赋给变量W;
[0087] 转到步骤5. 2. 5 ;
[0088] 步骤5. 2. 5,按步骤5. 2. 3-步骤5. 2. 4的排序方法,对后续的实体元素P3…实体 元素Pr依次进行访问并排序,得到最终的边排序结果。
[0089] 例如,对于图6示出的网络社区结构图,按以下顺序进行访问并排序:
[0090] (1)首先访问社区结构单元Q,由于其为最初访问的对象,因此,社区结构单元Q 已存在的原始边排序序号维持不变,仍然为1、2…6 ;同时,将6赋给变量W;
[0091] (2)然后,对跨社区边L1进行访问,向跨社区边L1增加的排序序号为:变量W当 前值加1,即6+1,为7 ;
[0092] 同时,更新变量W的值为7 ;
[0093] (3)对跨社区边L2进行访问,向跨社区边L2增加的排序序号为:变量W当前值加 1,即 7+1,为 8;
[0094] 同时,更新变量W的值为8 ;
[0095] ⑷访问社区结构单元C2,由于其已存在原始排序序号,因此,对社区结构单元C2 的各个原始排序序号进行更新操作,更新方法为:令每个原始排序序号加上变量W当前值, 即8,得到更
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1