I/O Efficient: Computing SCCs in Massive Graphs
-
Zhiwei Zhang, Jeffrey Xu Yu, Lu Qin, Lijun Chang, Xuemin Lin
-
In SIGMOD 2013
概要
既存手法
EM-SCC
-
Contraction-based
-
グラフを適当に分割する
DFS-SCC
-
semi-external
-
DFS木を2回
-
逆グラフ作って…ってやつ
提案手法
2フェイズアプローチ
-
BR木: 2種類のedge
-
tree-edge: 木を構成する
-
up-edge: 逆方向に向かう(サイクルを構成する)
-
BR木内のサイクルをまとめて1ノードにする
BR木の構築
-
面白い操作をする
-
適当な全域木から始める
-
pushdown(v,u)
-
remove(parent(u), v) then add(u,v)
-
張替えと削除
-
merge
-
この操作をしまくって、SCCを出す
1フェイズアプローチ
-
early acceptance: 早めに併合シマース
-
early rejection: 早めに判定・出力シマース
実験
-
2フェイズはそんなに速くない
-
1フェイズはかなり強い
-
10倍以上
-
色々変えても良いらしい
I/O-efficient algorithm SCC SIGMOD
2013-10-17 23:12:22 (Thu)
最終更新:2013年10月17日 23:12