掌桥专利:专业的专利平台
掌桥专利
首页

一种基于鲸鱼算法的动态多目标社团检测方法

文献发布时间:2023-06-19 19:30:30


一种基于鲸鱼算法的动态多目标社团检测方法

技术领域

本发明涉及目标社团检测技术领域,具体涉及一种基于鲸鱼算法的动态多目标社团检测方法。

背景技术

从人类诞生以来,社会就是不断进步和发展的,而随着社会的进步和发展,人类社会变得越来越复杂,而对于一个复杂系统的分析需要一些工具,现实生活中的很多复杂系统都可以抽象成一个复杂网络来研究;我们都生活在社会中,假如我们把每个人都看成一个节点,人与人之间的联系看成边,那么这种网络就可以体现出一些结构,这种网络被称作社会网络。在科研活动中,以每个人为基础进行展开工作,在研究某领域时的众多参考文献组成了一个引文网络;而通过浏览器也可以访问各种各样的网页获取咨询,各种各样的网页组成了互联网的庞大网络。

然而,经过研究表明,复杂网络的结构并不是随机的,而是呈现出一定结构;复杂网络中的边分布是不均匀的,不仅在全局的范围上不均匀,在局部的边分布也是不均匀的,在一些集合内,部分节点与该集合内许多节点都有边连接,而与集合外的节点连接较少。这种不均匀显示出复杂网络的某些结构中研究比较多的一种结构是社团;把复杂网络抽象成一个图,其中一些节点的连接比较稠密,但和周围其他节点的连接又很稀疏,找出这些连接稠密的节点所形成结构的过程叫做社团检测。

社团检测在传播、投资、工程以及生物学等个方面均存在具体应用,复杂网络的社团检测可以转化为一个优化问题来解决,很多情况下这是一个较难的问题,因为无法对这个问题求解;因此研究者对此提出来很多方法来试图解决这个问题,例如Girvan和Newman首次提出了以模块度为目标社团检测方法;Pizzuti首次将遗传算法引入社团检测领域,提出了一种单一目标的遗传算法,但是这些算法主要都是用于研究静态网络的,而现实世界中大多的复杂网络都是动态的,例如股价的变化会随着时间变化而变化,因此会影响投资组合。

在动态网络的社团检测过程中经常面临着两个互相冲突的目标,首先是当前时间的检测质量尽量高,另外是要保证社团之间在两个时间节点上的差距尽可能小,因此动态网络的社团检测一般是转化为多目标优化问题来解决,而现有存在的一种基于进化算法的动态多目标社团检测算法,是通过优化模块度和归一化互信息这两个目标函数发现动态网络中的社团,但是这种方法并不能保证两个时间节点之间的差距较小的社团结构在下个时间节点中能被考虑到,检测的准确性较差。

发明内容

为了解决社团检测准确性差的问题,本发明的目的在于提供一种基于鲸鱼算法的动态多目标社团检测方法,所采用的技术方案具体如下:

本发明一个实施例提供了一种基于鲸鱼算法的动态多目标社团检测方法,该方法包括以下步骤:

对动态网络进行初始社团划分以得到初始化种群,构建目标函数对初始化种群评估得到当前的最优解;

利用鲸鱼算法对初始化种群内个体位置进行迭代更新,对每次迭代更新后的种群评估更新所述最优解得到更新最优解;

以预设次数的迭代更新作为一个迭代周期,每个迭代周期后计算种群间共识,并将所述种群间共识插入到种群中参与下次迭代,直至达到停止条件后停止迭代并获取种群内共识,计算当前时间节点的解,以得到动态网络中每个时间节点的解。

优选的,所述构建目标函数对初始化种群评估得到当前的最优解的步骤,包括:

所述目标函数包括KKM目标函数和RC目标函数,分别表示为:

其中,KKM和RC分别表示目标函数;L(V

KKM和RC的解共同组成了目标空间,最优解通过目标空间的帕累托最优解集上的两个解得到;帕累托最优解集中的解的计算公式为:

其中,PS表示帕累托最优解集;x表示帕累托最优解集中的解;KKM(x)表示解x在目标函数KKM上的值;RC(x)表示解x在目标函数RC上的值;KKM

优选的,所述利用鲸鱼算法对初始化种群内个体位置进行迭代更新的步骤,包括:

将个体位置更新分为三个步骤分别为包围环绕、气泡攻击和随机搜索;

假设存在一个范围在[0,1]内的随机数p,当p<0.5且

其中,

其中,

当p≥0.5时,个体处于气泡攻击阶段,此时个体的更新公式为:

其中,

当p<0.5且

其中,

优选的,所述种群间共识的获取方法为:

使用支持度的指标衡量当前种群内含有共识社区的频率,支持度的计算公式如下:

其中,s为节点集;POP={p

优选的,所述停止条件为:达到收敛条件或者达到最大迭代次数。

优选的,所述种群内共识的获取方法为:

intraCC(CR

其中,|A∩B∩C|表示A∩B∩C后元素的个数;CR1、CR2以及CR3分别表示最小KKM的解,最小RC的解和膝关节解。

本发明具有如下有益效果:本发明实施例中通过对动态网络进行初始化种群划分,然后对初始化种群进行更新,更加适应动态网络中的个体特征,通过对每个个体位置的迭代更新对最优解进行更新,得到的结果也更加可靠,并且设定多次迭代为一个周期,通过每个迭代周期后计算种群间共识和种群内共识,以得到每个时间节点的解,避免了忽略时间节点导致社团检测不精准的问题,结合每个时间节点的解进行计算检测,提高了检测的准确性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。

图1为本发明一个实施例所提供的一种基于鲸鱼算法的动态多目标社团检测方法流程图;

图2为本发明一个实施例所提供的一种基于鲸鱼算法的动态多目标社团检测方法的逻辑框图;

图3为本发明一个实施例所提供的一种社团内共识的演示示意图。

具体实施方式

为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种基于鲸鱼算法的动态多目标社团检测方法,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。

下面结合附图具体的说明本发明所提供的一种基于鲸鱼算法的动态多目标社团检测方法的具体方案。

请参阅图1和图2,其分别示出了本发明一个实施例提供的一种基于鲸鱼算法的动态多目标社团检测方法流程图和一种基于鲸鱼算法的动态多目标社团检测方法的逻辑框图,该方法包括以下步骤:

步骤S100,对动态网络进行初始社团划分以得到初始化种群,构建目标函数对初始化种群评估得到当前的最优解。

传统的完全基于随机的初始化方法的结果会产生大量冗余,本发明实施例中利用标签传播算法可以使密集连接的一些节点可以迅速地被划分,同时标签传播具有随机性,在结合标签传播线性时间复杂度的基础上还可以使初始解具有更高的多样性。

具体的,本发明实施例中的目标函数为KKM和RC目标函数,两个目标函数的具体定义如下:

其中,KKM和RC分别表示目标函数;L(V

表示社团节点集V

KKM和RC的解共同组成了目标空间,最优解通过目标空间的帕累托最优解集上的两个解得到,两个解分别是最小KKM值的解和最小RC值的解,然后计算得出帕累托最优解集中的解,具体计算公式为:

其中,PS表示帕累托最优解集;x表示帕累托最优解集中的解;KKM(x)表示解x在目标函数KKM上的值;RC(x)表示解x在目标函数RC上的值;KKM

步骤S200,利用鲸鱼算法对初始化种群内个体位置进行迭代更新,对每次迭代更新后的种群评估更新最优解得到更新最优解。

首先,设置鲸鱼算法的种群规模记为N

然后,鲸鱼算法把个体更新抽象为三个步骤分别为包围环绕、气泡攻击和随机搜索;假设存在一个范围在[0,1]内的随机数p,当p<0.5且

其中,t表示当前迭代;X

其中,

当p≥0.5时,个体处于气泡攻击阶段,此时个体的更新公式为:

其中,

当p<0.5且

其中,

基于此利用鲸鱼算法对不同情况下的种群进行迭代更新,并且每次迭代更新之后对种群再次进行评估能够得到更新最优解,也即是更新最优位置。

步骤S300,以预设次数的迭代更新作为一个迭代周期,每个迭代周期后计算种群间共识,并将种群间共识插入到种群中参与下次迭代,直至达到停止条件后停止迭代并获取种群内共识,计算当前时间节点的解,以得到动态网络中每个时间节点的解。

将预设次数记为N,N的取值由实施者根据实际需求设定,每迭代更新N次记为一个迭代周期,在一个迭代周期后计算一次种群间共识,并把种群间共识插入到种群中参与下次迭代更新。

种群间共识的具体方法为:使用支持度的指标衡量当前种群内含有共识社区的频率,支持度的计算公式如下:

其中,s为节点集;POP={p

进一步的,请参阅图3,其示出一种社团内共识的演示示意图;种群内共识的获取公式如下:

intraCC(CR

其中,|A∩B∩C|表示A∩B∩C后元素的个数;CR1、CR2以及CR3分别表示最小KKM的解,最小RC的解和膝关节解;再找出A∩B∩C之后内含个数大于2的元素。

当达到停止条件时,也即是达到收敛条件或者达到最大迭代次数之后停止迭代,并计算种群内共识以供下个时间节点使用,计算当次迭代的膝关节解作为当前时间节点的解;重复上述所有步骤直至完成每一个时间节点网络的迭代,得到每个时间节点的解,最终得到动态网络中所有的目标社团。

综上所述,本发明实施例通过对动态网络进行初始社团划分以得到初始化种群,构建目标函数对初始化种群评估得到当前的最优解;利用鲸鱼算法对初始化种群内个体位置进行迭代更新,对每次迭代更新后的种群评估更新最优解得到更新最优解;以预设次数的迭代更新作为一个迭代周期,每个迭代周期后计算种群间共识,并将种群间共识插入到种群中参与下次迭代,直至达到停止条件后停止迭代并获取种群内共识,计算当前时间节点的解,以得到动态网络中每个时间节点的解,提高了社团检测的准确性。

需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种基于动态种群鲸鱼优化算法的社区检测方法
  • 一种基于鲸鱼优化算法的多目标半自动装配线设计方法
技术分类

06120115935992