基于多目标优化的复杂网络平衡聚类方法_2

文档序号:8943484阅读:来源:国知局
于拓扑结构复杂的网络,所得的网络结构不平衡性高的不足,使得本发明能够更加有效地 搜索出复杂无向符号网络的平衡结构。
[0049] 第三,由于本发明采用更新种群的方法,得到外部种群中的每一个解个体对应一 种网络的聚类结果,克服了现有技术中只能得到单一聚类结果,在网络平衡转换的代价发 生变化的情况下,不能满足寻找最优的聚类结果的需求的不足,使得本发明可以适应不同 网络平衡转换代价下的网络聚类。
【附图说明】
[0050] 图1为本发明的流程图;
[0051] 图2为本发明与现有技术Meme-SB对网络GGS划分的平衡结构比较图;
[0052] 图3为本发明对网络ecoli、yeast的聚类结果分布图。
【具体实施方式】
[0053] 下面结合附图对本发明做进一步的描述。
[0054] 参照图1,对本发明实现的具体步骤做进一步的详细描述。
[0055] 步骤1.读入目标无向符号网络的数据集。
[0056] 步骤2.初始化进化种群。
[0057] 采用正邻接点实数编码方法,生成含有200个解个体的初始进化种群,每个解个 体由m个基因位构成,m等于网络节点数。
[0058] 正邻接点实数编码方法的具体步骤如下:
[0059] 第1步,任意选取一个初始进化种群的解个体的基因位,将该基因位的值设置为 与该基因位对应网络节点的所属的类的标号。
[0060] 第2步,重复执行第1步,直到初始进化种群的解个体的m个基因位的值全部确 定。
[0061] 第3步,任意选取一个初始进化种群的解个体的基因位,找出与其对应的网络节 点的正邻接节点集,从该正邻接节点集中随机选取一个节点,将与所选取节点对应的基因 位的值作为所选取的初始进化种群的解个体基因位的等位基因值。
[0062] 第4步,重复执行第3步,直到初始进化种群的解个体的m个基因位全部确定所属 等位基因值。
[0063] 第5步,判断初始进化种群中的m个基因位已经全部确定所属等位基因值的解个 体的数目是否等于200,若是,则得到初始进化种群,否则,执行第1步。
[0064] 步骤3.按照下述步骤,计算进化种群的适应度。
[0065] 第1步,将计数标志e的初始值设置为1。
[0066] 第2步,以计数标志e的值为序号,选取与该序号相对应的进化种群的解个体。
[0067] 第3步,按照下式,计算所选取的进化种群的解个体的不平衡负连接边的数目:
[0068]
[0069] 其中,f\(X)表示所选取的进化种群的解个体的不平衡负连接边的数目,X表示所 选取的进化种群的解个体,Σ表示求和操作,k表示所选取的进化种群的解个体中所包含 的类的数目,k的取值由所选取的进化种群的解个体确定,N((;,(;)表示所选取的进化种群 的解个体中属于第 r类的所有节点之间的负连接边的数目,(;表示所选取的进化种群的解 个体中属于第r类的所有节点的集合。
[0070] 第4步,按照下式,计算所选取的进化种群的解个体的不平衡正连接边的数目:
[0071]
[0072] 其中,f2(X)表示所选取的进化种群的解个体的不平衡正连接边的数目,X表示所 选取的进化种群的解个体,Σ表示求和操作,k表示所选取的进化种群的解个体中所包含 的类的数目,k的取值由所选取的进化种群的解个体确定,P ((;,O1O表示所选取的进化种群 的解个体中属于第r类的所有节点与其他类中的节点之间的正连接边的数目,(;表示所选 取的进化种群的解个体中属于第r类的所有节点的集合,(^表示所选取的进化种群的解个 体中不属于第r类的所有节点的集合。
[0073] 第5步,判断计数标志e的值是否等于200,若是,则得到进化种群的适应度,执行 步骤4,否则,将计数标志e的值加1,执行第2步。
[0074] 步骤4.按照下述步骤,初始化外部种群。
[0075] 删除进化种群中所有重复的解个体;从进化种群剩余的解个体中,选取所有非支 配的解个体,构成初始的外部种群。
[0076] 步骤5.按照下式,初始化进化种群的参考点:
[0077] z = (Z1, Z2)
[0078] 其中,z表示进化种群的参考点,Z1表示进化种群中所有解个体的不平衡负连接边 的数目的最小值,4表示进化种群中所有解个体的不平衡正连接边的数目的最小值。
[0079] 步骤6.按照下述步骤,更新种群。
[0080] 第1步,设置进化种群中所有解个体的邻域,具体操作是,为进化种群中的每一 个解个体设置一个对应的权重向量;从进化种群中选择第y个解个体,y的取值范围是 [1,200],计算所选取的进化种群的解个体的权重向量与进化种群的所有解个体的权重向 量之间的欧式距离;将所选取的进化种群的解个体的权重向量与进化种群的所有解个体的 权重向量之间的欧式距离的值按升序排列,从升序排列后的所选取的进化种群的解个体的 权重向量与进化种群的所有解个体的权重向量之间的欧式距离的值中,选取前20个值对 应的进化种群的解个体作为所选取的进化种群的解个体的邻域。
[0081] 第2步,将迭代计数标志iteration的初始值设置为1。
[0082] 第3步,对进化种群中的每一个解个体执行遗传操作,更新进化种群,遗传操作包 含交叉操作和变异操作,交叉操作是指,对于进化种群的每一个解个体,从外部种群中任意 选取一个解个体,从所选取的外部种群的解个体中,随机选取一个基因位的值,从所选取的 外部种群的解个体中,找出基因位的值等于所选取的基因位的值的所有基因位,得到所选 取的进化种群的解个体中待更新的基因位的位置集,将与所选取的进化种群的解个体中待 更新的基因位的位置集对应的基因位的值,替换为所选取的外部种群的解个体中所随机选 取的基因位的值,生成所选取的进化种群的解个体的子代个体;变异操作是指,生成一个随 机数rand,rand的取值范围是[0,1],若rand小于变异概率0. 1,对于交叉操作产生的所选 取的进化种群的解个体的子代个体中的每一个基因位,找出与该基因位对应的网络节点的 正邻接节点集,从该正邻接节点集中选取出现次数最多的类的标号,将该类的标号作为交 叉操作产生的所选取的进化种群的解个体的子代个体中对应基因位的值。
[0083] 第4步,更新进化种群的参考点,具体操作是,将参考点的第1个元素的值替换为 进化种群中所有解个体的不平衡负连接边的数目的最小值,将参考点的第2个元素的值替 换为进化种群中所有解个体的不平衡正连接边的数目的最小值。
[0084] 第5步,更新外部种群,具体操作是,选取进化种群的所有非支配的解个体,将所 选取的进化种群的所有非支配的解个体合并到外部种群中,得到临时外部种群;选取临时 外部种群的所有非支配的解个体,作为外部种群。
[0085] 第6步,更新进化种群中每一个解个体对应的邻域,具体操作是,从进化种群中选 择第y个解个体,y的取值范围是[1,200],从所选取的进化种群的解个体的邻域中,选取第 a个解个体,a的值范围是[1,20],按照下式,计算所选取的新的进化种群的解个体的切比 雪夫值:
[0086] g!= max{ λ Jf1(X)-Z1I, A2|f2(X)-z2|}
[0087] 其中,gl表示所选取的进化种群的解个体的切比雪夫值,max表示求最大值操作, λ 1表示与从进化种群的解个体的邻域中所选取的解个体的不平衡负连接边的数目对应的 权重,A(X)表示所选取的进化种群的解个体的不平衡负连接边的数目,X表示所选取的进 化种群的解个体, 21表示进化种群中所有解个体的不平衡负连接边的数目的最小值,λ 2表 示与从所选取的进化种群的解个体的邻域中所选取的解个体的不平衡正连接边的数目对 应的权重,f 2(X)表示所选取的进化种群的解个体的不平衡正连接边的数目,Z2表示进化种 群中所有解个体的不平衡正连接边数的最小值,I · I表示求绝对值操作,按照下式,计算从 所选取的进化种群的解个体的邻域中选取解个体的切比雪夫值:
[0088] g2= max { λ i I A (W) -Z11,λ 21 f2 (W) -z21}
[0089] 其中,g2表示从所选取的进化种群的解个体的邻域中选取的解个体的切比雪夫 值,max表示求最大值操作,λ 1表示与从所选取的进化种群的解个体的邻域中选取的解个 体的不平衡负连接边的数目对应的权重,fl (W)表示从所选取的进化种群的解个体的邻域 中所选取的解个体的不平衡负连接边的数目,W表示从所选取的进化种群的解个体的邻域 中所选取的解个体,Z 1表示进化种群中所有解个体的不平衡负连接边的数目的最小值,λ 2 表示与从所选取的进化种群的解个体的邻域中所选取的解个体的不平衡正连接边的数目 对应的权重,f2(W)表示从所选取的进化种群的解个体
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1