Processing math: 0%

2017年11月12日日曜日

グラフの Spanner と Erdős Girth Conjecture

1. Introduction


離散アルゴリズム・理論計算機科学の界隈で数年前からホットな話題がいくつかありますが, 今回はそのうちの一つであるSpannerを取り上げたいと思います. Spannerと聞くとなんとなく「spanning tree」などを思い浮かべるかもしれませんが, 雰囲気は似ています. 本記事ではあくまでも初歩的な内容までを取り扱います.

グラフ G=(V,E)全域部分グラフ H=(V,F) (ただし F\subseteq E) が G(\alpha, \beta)-spannerであるとは, 任意の頂点ペア u,v\in V に対して d_H(u,v)\leq \alpha\cdot d_G(u,v)+\beta が成り立つことです. ここでグラフXに対してd_X(u,v) は頂点 u,v 間の X上における最短経路長(距離)とおいています. 気持ちとしては, 辺をたくさん持つようなグラフから辺を取り除いてスパースにしたい. でも元のグラフの構造(最短経路長)をあまり損ないたくない という動機から産み出された概念であって, 例えば大規模グラフに対してその構造上の特性を失わずに前処理で辺を削ってから何か(例えば直径とか)を計算する, みたいな状況を想定しています. 上述の定義における\alphastretch, \betaadditive error などと言ったりします. 今回は stretch に着目します.

最近(2011年〜)の理論計算幾科学系の名だたるトップカンファレンス(SODA, STOC, FOCS)において, (1,\beta)-spanner と (\alpha, 0)-spanner のそれぞれに関する論文が散見されます. 実際に


  • An Optimal-Time Construction of Sparse Euclidean Spanners with Tiny Diameter , Shay Solomon, Ben-Gurion, (SODA11, best student paper)
  • New Additive Spanners , Shiri Chechik (SODA13, best student paper)
  • Near-Optimal Light Spanners , Shiri Chechik, Christian Wulff-Nilsen (SODA16, best paper)
  • The 4/3 Additive Spanner Exponent is Tight , Amir Abboud, Greg Bodwin (STOC16, best student paper)

はそれぞれ上記のカンファレンス(FOCSでの受賞は未だありません)において受賞しています. これを見るといかにSpannerが注目されているトピックであることが分かると思います. さて, Spanner系の研究で実際になされていることは

  • Spannerの辺数と \alpha, \betaとのトレードオフの境界
  • 実際にSpannerを構成するアルゴリズム
がメインのトピックになります. 前者のトピックに関しては, 実際にSpannerを構成するアルゴリズムを提案すれば「ここまで辺を削減できる」という上界を得ることができます. では, 「どのアルゴリズムを用いてもこれ以上辺を削減できない」ことを言うためにはどうすれば良いでしょうか?そこで登場するのがタイトルにある Erdős Girth Conjecture です.

2. Erdős Girth Conjecture



グラフの girth (内周) とは, 最小閉路長のことです. 例えば, 図を見ると分かるように, girth\geq 4であることと三角形を持たないことは同値です. Spannerとgirthの関係はどこにあるのでしょうか.


上図では, 内周6のグラフから辺 uw を除去しています. 消去後のグラフでは, uv間の距離は1から5に変化します. 内周が6なので, uv としてどの辺を選んでもこうなります. すなわち, 内周 k のグラフを持っているとき, そのグラフに対して (k-2,0)-spanner となるような真部分グラフを構成することは不可能です.

一方で, こちらの記事で紹介したように, girth \geq 5のグラフは辺数が高々 O(n^{1.5}) となります. 実は, 一般に girth \geq 2k+1 のグラフは辺数が高々 O(n^{1+1/k}) となることが知られています (完全二部グラフを見てわかるように, 二部グラフはn^2/4くらいの辺を持ちうるので偶数長の閉路は問題にはなりません. 実際, 任意のグラフに対して最大カットのサイズは|E|/2以上なので, 辺数を半分くらいにすれば二部化することができます).  Erdős Girth Conjecture はこの上界が定数倍をのぞいてタイトであることを述べています.

Conj. Erdős Girth Conjecture     

次の2条件を満たすグラフ G=(V,E) が存在する.

  1. |E|=\Omega(n^{1+1/k}) を満たす.
  2. Gの内周が2k+1以上である.

 Erdős Girth Conjecture を仮定するとどうなるでしょうか. この予想を満たすグラフGに対し, その(2k-1,0)-Spanner を構成しようとするとすでにGの内周が2k+1以上なので, 所望のSpanner は G 自身でなければなりません (Gのどの辺 uv を削除しても上述のように距離が 2k倍になってしまうからです).

一方で, 実は任意に入力で与えられたグラフ G に対して (2k-1, 0)-Spanner でかつ辺数が O(n^{1+1/k}) なるものを多項式時間で求めるアルゴリズムが知られています[1]. 辺数をこのアルゴリズムより削減できるようなアルゴリズムが存在したとすると,  Erdős Girth Conjecture のグラフを入力として与えたときに上の議論と矛盾してしまいます. つまりこの知られているアルゴリズムが最適である, と結論づけることができます.


3. 余談


実は辺重み有りグラフでも, 辺数が O(n^{1+1/k}) なる (2k-1, 0)-Spanner を多項式時間で求めるアルゴリズムが知られています[1].

なお,  Erdős Girth Conjecture は k=1,2,3,5 の場合は解決されているようです [2].

今回は additive の方には触れませんでしたが, 興味のある方はぜひ調べてみてください.


[1]: I. Althöfer, G. Das, D. Dobkin, D. Joseph, J. Soares. On sparse spanners of weighted graphs. Networks, 9(1): 81–100, 1993

[2]: R. Wenger. Extremal graphs with no C4’s, C6’s, or C10’s. Journal of Combinatorial Theory, 113–116, 1991.

講義資料をNotionで書いてみた

 プログラミング応用という名前の講義を受け持っており, そこで組合せ最適化のベーシックな話題とそのPythonでの実装を教えているのですが, 資料をNotionで書いてみました. 講義資料をNotionで公開しているのでアルゴリズムの基礎とかNP困難性とかを勉強したい人はどう...