【技术实现步骤摘要】
一种基于亲和聚类的分布式大图划分方法
:本专利技术涉及计算机
,具体涉及一种基于亲和聚类的分布式大图划分方法。
技术介绍
:从20世纪90年代初期至今,国内外研究者不断对图划分及其相关问题进行深入研究,提出了许多性能较好的图划分算法。目前图划分研究主要分为离线划分、流式划分以及动态重划分。但是,这些算法通常是集中式算法,这样便于维护复杂的启发式规则,保证相对较好的划分效果,但其扩展性显然受到单计算机节点处理能力的限制,且面对大规模的图划分,不管是离线算法还是流式算法,由于单计算节点内存容量的限制,必然会降低计算性能。由于分布式系统的协同高效性且分布式资源获取变得越来越方便,研究者们逐渐从单计算节点的图划分工作转为并行图划分的研究。最典型的是多层次算法Metis及其并行版本ParMetis,该算法包括三个执行步骤:粗化、初始划分和细化:1)粗化阶段;通过将输入图的某些节点聚合成一个节点来逐步构建一系列的缩并图,每次生成的缩并图作为下一级缩并过程的输入,最终得到一个规模足够小的图,其节点数与边数都较少;2)初始划分阶段;在粗化过程最终生成的图上,选择现有的某种图划分算法计算k路划分,由于该图规模较小,此过程较快;3)细化阶段;将划分后的缩并图沿着缩并阶段的逆过程,逐步还原到原始输入图,由于基于粗化图的划分结果不一定是原始图的最佳划分,所以将粗化图逆向映射回原图过程中的每一级还原的同时,利用KL/FM等启发式算法对割边率进行局部优化,直至最终得到原始图的一个划分。该算法广泛应用在各类图的划分,对于百万规模以内 ...
【技术保护点】
1.一种基于亲和聚类的分布式大图划分方法,其特征在于:包括以下步骤:/n步骤1:输入无权无向图数据G;/n步骤2:采用基于Boruvka算法的层次亲和平衡划分对输入的图数据进行初始划分,即:采用Boruvka最小生成树算法根据顶点相似度对输入图进行约束条件下的平衡图聚类,将图G划分为顶点数相同的k个子图,令每个子图中的顶点距离小于划分前;/n步骤3:对高维网络进行降维处理,即:将生成的k个子图映射为一维空间的顶点序列,令距离最近的两点靠在一起,以此方式完成一维顶点序列的排列;/n步骤4:将每个计算节点中的顶点序列划分为一定数量的子片,划分时以每个子片中含有顶点的数量尽量少为原则;/n步骤5:采用顶点转移策略优化割边数,即:随机选择相邻计算节点中的两个子片,按照互交换正收益交换顶点,并不断的迭代此过程,直到割边数趋于稳定则停止迭代;/n步骤6:采用单点不平衡迁移优化割边数,即:在给定的负载不平衡系数下,随机选择相邻计算节点中的两个子片,按照单点正收益迁移顶点,并不断的迭代此过程,直到割边数趋于稳定或者到达指定的迭代次数下停止迭代;/n步骤7:输出划分结果。/n
【技术特征摘要】
1.一种基于亲和聚类的分布式大图划分方法,其特征在于:包括以下步骤:
步骤1:输入无权无向图数据G;
步骤2:采用基于Boruvka算法的层次亲和平衡划分对输入的图数据进行初始划分,即:采用Boruvka最小生成树算法根据顶点相似度对输入图进行约束条件下的平衡图聚类,将图G划分为顶点数相同的k个子图,令每个子图中的顶点距离小于划分前;
步骤3:对高维网络进行降维处理,即:将生成的k个子图映射为一维空间的顶点序列,令距离最近的两点靠在一起,以此方式完成一维顶点序列的排列;
步骤4:将每个计算节点中的顶点序列划分为一定数量的子片,划分时以每个子片中含有顶点的数量尽量少为原则;
步骤5:采用顶点转移策略优化割边数,即:随机选择相邻计算节点中的两个子片,按照互交换正收益交换顶点,并不断的迭代此过程,直到割边数趋于稳定则停止迭代;
步骤6:采用单点不平衡迁移优化割边数,即:在给定的负载不平衡系数下,随机选择相邻计算节点中的两个子片,按照单点正收益迁移顶点,并不断的迭代此过程,直到割边数趋于稳定或者到达指定的迭代次数下停止迭代;
步骤7:输出划分结果。
2.根据权利要求1所述的一种基于亲和聚类的分布式大图划分方法,其特征在于:所述步骤2中两个顶点之间的距离计算根据下式进行:
上式中,u和v分别表示两个顶点,w(u,v)表示顶点u和v之间的距离;commonNeihborsuv表示顶点v和u的公共邻居数,两顶点之间的公共邻居数通过计算边的三角形个数来求得;Du和Dv分别表示顶点u和v的度数。
3.根据权利要求2所述的一种基于亲和聚类的分布式大图划分方法,其特征在于:所述步骤2中将图G划分为k个子图时,需采用约束条件平衡子图规模,令k个子图之间规模相等,具体方法如下:
将划分的k个子图称为近邻子图,用符号ψ表示,顶点的数量用|Vψ|表示,任意选择ψ中某一顶点v,在子图ψ中存在与其互为邻居的顶点u,这两点的距离最近,当近邻子图的规模达到平均负载时,即满足|Vψ|=n/k,称之为最大近邻子图,用符号ψmax表示,n表示图G的顶点数;
对于近邻子图ψ中的某一顶点v∈Vψ,近邻子图中v的邻点v1∈Vψ,…,vn∈Vψ与顶点v的距离分别表示为w(v,v1),……,w(v,vn),则此点v在ψ中的邻点相似度和值为total′v,即total′v=w(v,v1)…+w(v,vn),邻点相似度和值公式如下:
对于划分后的k个顶点数相同的近邻子图中,将顶点数最小的子图采用单链聚类或全链聚类或平均链聚类算法与其他子图进行合并处理;对于超过平均负载...
【专利技术属性】
技术研发人员:李琪,李虎雄,英昌甜,
申请(专利权)人:绍兴文理学院,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。