当前位置:   article > 正文

Thrifty LP-CC 在幂率图上非常具有针对性的优化方案_lpcc算法

lpcc算法

摘要

抓住幂率图的特点——绝大多数点在一个CC里
提出几种优化使得LPCC算法的运行时间显著减小
效果甚至超过当前更多见也效果最好的Disjoint Set CC

背景

幂率无向图、frontier、LPCC

LPCC:每个点有唯一标签,通常是ID,用min函数不断传递标签,每个CC上的点收敛为同一最小标签

DO-LP是典型且最先进的一种
在这里插入图片描述

LP算法的缺陷

对于幂率图

  1. Repeated Wavefronts——缓慢且重复的收敛过程。两个标签数组,每轮1hop,收敛轮数很高,几乎是CC的直径。
  2. Preaching to the Converged——收敛过程的首尾几个迭代,效率很低;而过程中却有很大的重合部分存在于已收敛点和正活动点之中。这意味着DOLP无法识别那些顶点收敛了,并且不断向其传递消息。
  3. Inefficient Initial Label Assignment——不考虑图结构的初始标签分配
  4. Eager Bootstrapping Label Propagation——对于根据frontier大小来选择push/pull的DOLP来说,首轮pull实在太低效了。这样急切而低效的LP没用

DOLP算法的示例收敛进度与活动顶点

Thrifty LP

注意到幂率图CC有如下特点
在这里插入图片描述度最高的点所在CC,居然包含了图中绝大多数的点

结合当前LP算法的4个缺陷,由此提出下面4种优化方法

  1. Unified Labels Array——不再使用两个标签数组了,仅用一个,减少一些过时的消息,进而大大减少收敛轮数
  2. Zero Convergence——如何确定一个点收敛了?若其标签为0,那肯定就收敛了
  3. Zero Planting——把度最大的顶点标签设为0,很可能在CC的中心,诸多便利
  4. Initial Push——首轮pull效率低,不如改为push,仅对点0进行。仅此一轮,因为它的2-hop邻居很多并且大比例重复

在这里插入图片描述

实验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号