[发明专利]一种基于改进遗传算法的复杂网络社区挖掘方法在审
申请号: | 201410429721.4 | 申请日: | 2014-08-28 |
公开(公告)号: | CN104200272A | 公开(公告)日: | 2014-12-10 |
发明(设计)人: | 杨新武;杨丽军;李瑞 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06N3/12 | 分类号: | G06N3/12 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 张慧 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 改进 遗传 算法 复杂 网络 社区 挖掘 方法 | ||
1.一种基于改进遗传算法的复杂网络社区挖掘方法,其特征在于包括如下步骤:
步骤1:计算机初始化;
步骤2:种群初始化,每个个体的基因位随机选择其基因位所代表的结点的某一邻居结点的编号作为此基因位的等位基因,得到父种群,步骤如下:
(1)每个个体初始化为一个长度为n位的编码,每个基因位的等位基因全为0,n为个体的编码长度;
(2)对个体的每个基因位v,找到网络中结点编号为v的邻居结点编号集N(v)={u|结点u与结点v直接相连};
(3)随机选择邻居结点编号集N(v)中的一个结点编号u′作为基因位v的等位基因,对初始化种群中个体的步骤进行循环Popsize(种群规模)次,完成种群初始化;
步骤3:计算父种群中所有个体的适应度Q,方法如下:
其中,A=(Auv)n×n表示网络G中结点的邻接矩阵,如果结点u与v之间存在边连接,则Auv=1,否则Auv=0;δ(r(u),r(v))为社区认同度函数,其中,r(u)表示u所在的社区,r(v)表示v所在的社区,如果r(u)=r(v),其取值为1,表示结点u和v在同一社区中;否则取值为0,表示结点u和v不在同一社区中;ku表示结点u的度,kv表示结点v的度;E表示网络G中总的边数,被定义为
步骤4:对种群进行最小生成树聚类,并进行类别标记,确定主类和副类;
步骤5:锦标赛选择主类中的两个个体进行交叉和变异操作,生成Popsize/2个后代个体Popm;锦标赛选择副类中的两个个体进行交叉和变异操作,生成Popsize/2个后代个体Popr;锦标赛选择主类的一个个体和副类中的一个个体进行交叉和变异操作,生成Popsize/2个后代个体Popc,其中Popsize=100,Popm和Popc取值为50;
步骤6:Popm和Popc构成主类种群的候选解Om,Popr和Popc构成副类种群的候选解Or;根据主类种群目标函数从Om中用u+λ选择策略选择Popsize/2个个体作为下一代主类种群个体;根据副类种群的适应度函数从Or中用μ+λ选择策略选择Popsize/2个个体作为下一代副类种群个体,u+λ选择策略即从父代中选择μ个个体,从子代中选择λ个个体,然后再从u+λ个体中选择μ个个体;
步骤7:判断δ是否在连续的50代内不再减小,若是,随机生成一部分个体进入下一代的遗传操作;若否,执行步骤8,δ的变化方法如下:
δt+1=δt+α·Δt
其中,α为0~1的小数,t表示当前代数,Δt取值如下:
其中,Gt表示在进化代数t时,成功繁殖的双亲对,则|Gt|表示成功繁殖的双亲对的数目,Dis(p,q)表示个体p和个体q间的距离;表示成功繁殖的双亲间的平均距离,δt表示第t代时的距离阈值;则Δt表示第t代的成功繁殖的双亲间的平均距离与距离阈值的差;
成功繁殖包含两种情况:一是双亲都来自主类,则有一个后代个体比双亲都好即为成功繁殖;二是一个父代个体来自主类,另一个父代个体来自副类,则有一个后代个体比双亲中来自主类的父代个体好,即为成功繁殖;
在种群进化过程中,δ不断减小,当种群趋向于收敛时,δ基本不再减小,本发明设置的是在50代内不再减小,就随机生成15个个体进入下一代的遗传操作;
步骤8:重复步骤4--步骤7直到到达种群迭代次数T,得到社区最佳划分;
所述的复杂网络采用图G(V,E)表示,其中V为结点v的集合,E为边e的集合,设V中结点数为n,E中边的数目为m,则结点v的编号为(1,2,...,v,...,n),v∈(1,2,...,v,...,n),e∈(1,2,...,e,...,m);
所述的种群用Pop表示,指的是复杂网络若干可能的社区划分结果,社区方法称为社区挖掘方法用S表示,s为属于S中的一种划分方法即s∈(1,2,...,s,...,S),S表示划分方法的总数,其中的任何一种划分结果称为个体,用Pop(s)表示,则所有的可能的划分结果的数目称为种群规模,用Popsize表示;
所述的个体的编码采用基于基因座邻接的编码表示,该表示中一个基因代表网络中的一个顶点,一个基因的等位基因用它的邻居节点表示。
2.根据权利要求1所述的种群最小生成树聚类后确定主类和副类,其特征在于包括如下步骤:
步骤S4-1:利用归一化共用信息I(Pop(sA),Pop(sB))度量种群中两个个体Pop(sA)和Pop(sB)间距离,归一化共用信息方法如下:
其中,C为置乱矩阵,共有I行J列,所述I是第一种划分方法sA中包含的社区数,所述J是第二种划分方法sB中包含的社区数,Ci.是置乱矩阵C中第i行的元素之和,即C.j是所述置乱矩阵C中第j列的元素之和,即Vij是第一种划分方法sA中的社区i和第二种划分方法sB中的社区j中共同拥有的结点数:当没有共同结点时,Vij=0;当有部分共同结点时,Vij为其交集中的结点数;当所有结点都相同时,Vij取社区i或社区j中的结点数;V为所述复杂网络中的总的结点数;
当第一种划分方法sA的结果和第二种划分方法sB的结果完全相同时,I(Pop(sA),Pop(sB))=1;当第一种划分方法sA的结果和第二种划分方法sB的结果不同时,I(Pop(sA),Pop(sB))=0;
步骤S4-2:计算两种划分方法的结果Pop(sA)和Pop(sB)间的距离d方法如下:d=1-I(Pop(sA),Pop(sB));
步骤S4-3:利用普利姆方法求得包含种群所有个体的最小生成树;
步骤S4-4:断开最小生成树中权值超过阈值的边,得到种群的森林,即得到种群的聚类划分,阈值为最小生成树中所有最有边中小于0.88*avg的最大距离,avg为最小生成树中所有边的平均值,阈值的范围在(0,1);
步骤S4-5:深度遍历该森林,并对种群个体进行类别标记即将个体中的类别成员变量设置为其所属的类别号,并保存到classid数组中;
步骤S4-6:寻找最优个体所在的类做为主类,其余各类归为副类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学;,未经北京工业大学;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410429721.4/1.html,转载请声明来源钻瓜专利网。