[发明专利]一种基于Spark平台的多目标进化社区检测方法有效
申请号: | 201710371317.X | 申请日: | 2017-05-19 |
公开(公告)号: | CN107276843B | 公开(公告)日: | 2020-02-07 |
发明(设计)人: | 公茂果;陈兰强;秦晓雷;王善峰 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;G06Q50/00 |
代理公司: | 61200 西安通大专利代理有限责任公司 | 代理人: | 徐文权 |
地址: | 710065 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于Spark平台的多目标进化社区检测方法,主要用于解决传统多目标进化算法在大规模网络社区检测上的缺陷。其包括如下步骤:1)读入待社区划分的网络邻接表,并初始化种群;2)每个节点收集由该节点参与构成的三角结构信息;3)计算种群每个个体的目标函数值,复制初始种群中的个体到个体当前个体的最好社区划分记录;4)通过交叉变异产生新个体,并计算新个体的目标函数值;5)通过基于边界交叉方式的分解策略来选择新一代种群,更新当前个体的最好社区划分记录;6)如果迭代次数到达最高上线,跳到步骤7),否则跳转到步骤4);7)输出多目标进化的社区发现结果。 | ||
搜索关键词: | 一种 基于 spark 平台 多目标 进化 社区 检测 方法 | ||
【主权项】:
1.一种基于Spark平台的多目标进化社区检测方法,其特征在于,包括以下步骤:/n步骤1:读入待社区划分的网络邻接表,并初始化种群,利用节点数据集count函数,求出网络节点总数记为|V|;网络邻接表是网络数据的一种存储方式,邻接表中节点成对存在,表示这对节点有边连接;具体方法如下:/n步骤1-0:利用Hadoop分布式平台的文件管理,将待检测的网络邻接表保存到分布式文件存储系统;/n步骤1-1:利用Spark平台的图模型库GraphX通过读取网络的邻接表创建graph网络对象;/n步骤1-2:利用标签传播算法,初始化网络的节点属性,并利用随机函数生成种群,种群大小记为popSize;/n步骤1-3:利用节点数据集count函数求出网络节点总数;/n需要说明的是:graph对象包含VertexRDD[VertexId,VD]节点数据集、EdgeRDD[ED]网络边数据集;其中VertexId即节点的id、VD为节点的属性,且成对存在,ED是网络边的属性;初始化后,节点的社区划分存储在节点属性VD中;对于种群而言,节点属性VD被扩展为数组,数组长度为种群中个体的数量,该数组记为popArray;/n步骤2:每个节点收集由该节点参与构成的三角结构信息,以及该节点的度;具体方法如下:/n步骤2-0:利用图模型GraphX的消息分发聚合机制收集节点的相邻节点id,组成相邻节点id表,记为ListIds;/n步骤2-1:求步骤2-0中得到的ListIds长度,即得到该节点的度d,并存入节点属性VD中;/n步骤2-1:在利用消息分发聚合机制,检查消息分发的源节点与目标节的ListIds是否有相同的id,及是否有相同的邻接点,有则表示能够构成三角结构,向目标节点发送该相邻节点的id,在目标节点的节点属性VD中存入该三角结构,节点能够组成的三角结构记为ListTriangles;/n步骤2-2:经以上步骤,节点属性VD变为三元组:(popArray,d,ListTriangles);popArray表示种群在该节点的社区划分,d为节点的度,ListTriangles为该节点可组成的三角结构;/n步骤3:计算种群每个个体的目标函数值,复制初始种群中的个体到当前个体的最好社区划分记录,记为Pbest,并记迭代次数i=0;目标函数公式如下:/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710371317.X/,转载请声明来源钻瓜专利网。
- 上一篇:一种低能耗、自动化恒温控制电路
- 下一篇:智慧校园信息采集系统及方法