主权项 |
一种复杂网络局部社区发现方法,从包含源节点的初始社区出发通过逐渐扩展找到源节点所隶属的网络局部社区,其特征在于,所述初始社区按照如下方式确定:步骤S1:初始化一条空的核心路径,并将任意选取的源节点添加到该路径,该路径用于存储从源节点到核心节点所途经的各节点;步骤S2:对于以核心路径中由源节点指向社区核心的最后一个节点为中心的邻域内的每个节点,计算其与最后一个节点的连通强度值,并找到使得连通强度最大的节点z;步骤S3:判断步骤S2找到的节点z是否包含在核心路径中,如果没包含则将节点z加入核心路径,返回步骤S2;如果包含则按照如下子步骤对核心路径中可能存在的多余节点进行过滤:S31:确认核心路径中节点z是否位于核心路径中倒数第二个位置,如果是则进入步骤S32,否则就说明不存在多余节点,进入步骤S4;S32:分别计算核心路径中排位最后两个节点的邻域中心度值,如果最后一个节点的邻域中心度值小于倒数第二个节点的邻域中心度值,则删除核心路径中的最后一个节点,进入步骤S4,否则就说明不存在多余节点,直接进入步骤S4;步骤S4:将当前核心路径中的节点确定为初始社区;所述步骤S32中的邻域中心度值计算方式为:NC(p)=Count{q|Max{RS(q,r)|r∈N(q)}=RS(q,p),q∈N(p)}其中,NC(p)表示节点p的邻域中心度值,N(p)表示节点p的邻域,RS(p,q)表示相邻节点p和q之间的连通强度,Max{*}表示集合中的最大值,Count{*}表示集合中元素的个数。 |