Transcript Document

点素パス問題に対するアルゴリズム
小林 佑輔
東京大学 大学院情報理工学系研究科
組合せ最適化セミナー
2012 年 7月 13日
講演内容


イントロダクション
効率的に解けるケース
 2点素パス問題
 k点素パス問題
(Robertson-Seymour のアルゴリズム)
 その他の結果



最短点素パス問題
演習
近年の発展(最大点素パス問題)
イントロダクション


問題の定義
歴史
点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )
s3
s1
t1
t2
s2
t3
点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )
s3
s1
t1
t2
s2
t3
点素(辺素)パス問題
パスが頂点(辺)
を共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素(辺素)なパス P1,…, Pk (Pi : si → ti )
s1
s1
t1
s2
t1
s2
t2

様々な類似問題




t2
有向グラフ or 無向グラフ
頂点対数 k が 定数 or 入力の一部
辺素パス or 点素パス
多くの応用を持つ (例: VLSI の設計)
etc.
特殊ケース(1): s-t 辺素パス問題
Input: 頂点対 (s, t)
Find: 辺素なパス P1,…, Pk (Pi : s → t )
V-X
X
s
最大流アルゴリズムで
多項式時間で解ける
t
Menger の定理 (最大流・最小カット定理)
k 本の辺素パスが存在
すべての s ∊ X ⊆V – t で δ(X) ≧ k
X と V-X を
結ぶ辺の数
特殊ケース(2): t1 = t2 = ・・・ = tk の時
Input: 頂点対 (s1, t) ,…, (sk, t)
Find: 辺素なパス P1,…, Pk (Pi : si → t )
s1
s2
s3
sk
t
最大流アルゴリズムで
多項式時間で解ける
特殊ケース(2): t1 = t2 = ・・・ = tk の時
Input: 頂点対 (s1, t) ,…, (sk, t)
Find: 辺素なパス P1,…, Pk (Pi : si → t )
s
s1
s2
s3
sk
t
最大流アルゴリズムで
多項式時間で解ける
特殊ケース(2): t1 = t2 = ・・・ = tk の時
Input: 頂点対 (s1, t) ,…, (sk, t)
Find: 辺素なパス P1,…, Pk (Pi : si → t )
s
s1
s2
s3
最大流アルゴリズムで
多項式時間で解ける
t
sk
一般の場合にはうまくいかない
s
s1
s2
s3
t1
t2
t3
sk
tk
t
結ぶ頂点の組を指定
されるから難しい
目的:理論的計算量の解明

様々なバリエーションに対して
 多項式時間で解けるか? NP困難か?
 より効率の良いアルゴリズムは?
目的:理論的計算量の解明

様々なバリエーションに対して
 多項式時間で解けるか? NP困難か?
 より効率の良いアルゴリズムは?

点素パス問題の計算量
有向グラフ
無向グラフ
k : 定数
NP-困難
多項式時間 (平面グラフ)
多項式時間 (非巡回的)
多項式時間
線形時間 (平面グラフ)
k : 変数
NP-困難
NP-困難
k : 頂点対数
各問題の帰着(演習)
下記のように帰着可能であることを示せ.
また,それぞれの帰着は平面性を保つか?

無向点素パス問題
有向点素パス問題
無向辺素パス問題
有向辺素パス問題
辺素パスと点素パスの関係

辺素パス問題は線グラフ上の点素パス問題に帰着可能
s1
s1
1
s2
t1
5
2
3
6
4
辺素パス
7
8
t1
2
7
5
1
8
t2
s2
3
4
6
点素パス
定義 (線グラフ)
 元のグラフの辺が線グラフの頂点に対応
 元のグラフで同じ端点を持つ
線グラフで隣接
t2

点素パス問題の計算量
k : 定数
k : 変数
有向グラフ
無向グラフ
NP-困難
多項式時間 (平面グラフ)
多項式時間 (非巡回的)
NP-困難
多項式時間
線形時間 (平面グラフ)
NP-困難
k : 頂点対数

辺素パス問題の計算量
有向グラフ
無向グラフ
k : 定数
NP-困難
多項式時間 (非巡回的)
多項式時間
k : 変数
NP-困難
NP-困難
点素・辺素パス問題の歴史
1927
最大最小定理 (s-t パス)
Menger
1956
最大流アルゴリズム
Ford-Fulkerson
1970s 頂点対数 k が入力の一部の時NP困難
1980
1994
Karp など
k=2, 無向グラフの時のアルゴリズム
Seymour, Thomassen, Shiloach
k=2, 有向グラフの時NP困難
Even-Itai-Shamir
k: 定数,平面有向グラフの時のアルゴリズム
(点素のみ)
1995
k: 定数,無向グラフの時のアルゴリズム
近年
k: 入力の一部の時の近似アルゴリズム
特殊ケースに対するアルゴリズム
Schrijver
Robertson-Seymour
など
効率的に解けるケース



2点素パス問題
k点素パス問題
その他のケース
講演内容


イントロダクション
効率的に解けるケース
 2点素パス問題
 k点素パス問題
(Robertson-Seymour のアルゴリズム)
 その他の結果



最短点素パス問題
演習
近年の発展(最大点素パス問題)
無向点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )

k=2
多項式時間アルゴリズム
Seymour, Thomassen, Shiloach (1980)

k:定数 多項式時間アルゴリズム
Robertson-Seymour (1995)

k:変数 NP困難
s3
s1
t1
Karp (1975)
t2
s2
t3
無向点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )
 k=2
多項式時間アルゴリズム
難しいポイント
Seymour, Thomassen, Shiloach (1980)

 カット条件
k:定数
多項式時間アルゴリズム
Robertson-Seymour (1995)
 幾何的な条件
s1
k:変数 NP困難
の両方を同時に扱う必要がある
Karp (1975)

s3
t1
t2
s2
t3
無向点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )

k=2
多項式時間アルゴリズム
Seymour, Thomassen, Shiloach (1980)

k:定数 多項式時間アルゴリズム
Robertson-Seymour (1995)

k:変数 NP困難
s3
s1
t1
Karp (1975)
t2
s2
t3
2点素パス問題の解法

s1
性質1
s2
t1
平面グラフで s1, s2, t1, t2 が
この順番に同じ面上
2点素パス無し
t2
2点素パス問題の解法

s2
s1
性質1
t1
平面グラフで s1, s2, t1, t2 が
この順番に同じ面上
2点素パス無し

性質2
小さいカットがあると問題を帰着可能
t 1 s1
t2
t 1 s1
t2
s2
連結
サイズ3
t2
s2
サイズ3
2点素パス問題の解法

s2
s1
性質1
t1
平面グラフで s1, s2, t1, t2 が
この順番に同じ面上
2点素パス無し

性質2
小さいカットがあると問題を帰着可能
t 1 s1
t2
t 1 s1
t2
s2
連結
サイズ3
t2
s2
サイズ3
2点素パスの存在条件
2点素パスが存在しない
性質2 の帰着を繰り返すと,性質1 の形になる
s1
t 1 s1
s2
t1
t2
s2
サイズ3
t2
2点素パスの存在条件
定理 (Seymour, 1980)
2点素パスが存在しない
性質2 の帰着を繰り返すと,性質1 の形になる
s1
t 1 s1
s2
t1
t2
s2
サイズ3
t2
2点素パスの存在条件
定理 (Seymour, 1980)
2点素パスが存在しない
性質2 の帰着を繰り返すと,性質1 の形になる
s1
t 1 s1
s2
t1
t2
s2
サイズ3
t2
2点素パス問題は多項式時間で解ける
 カットを見つけるアルゴリズム
 平面性判定アルゴリズム
現在: 線形時間
(Kapadia et al., 2010)
定理 2点素パスが存在しない
帰着を繰り返すと,性質1 の形
理解のために
命題
グラフが 「4点連結」 かつ 「平面的でない」
2点素パスが存在
Shiloach (1980) の方針
平面的でない
をマイナーに持つ
or
K5
K3,3
(Kuratowski の定理)
縮約を繰り返すと部分グラフに持つ
定理 2点素パスが存在しない
帰着を繰り返すと,性質1 の形
理解のために
命題
グラフが 「4点連結」 かつ 「平面的でない」
2点素パスが存在
Shiloach (1980) の方針
平面的でない
をマイナーに持つ
or
K5
K3,3
(Kuratowski の定理)
s1
4点連結
t1
s2
t2
K5 or K3,3 を使って繋げる
演習

平面性判定のアルゴリズムを用いて,
平面グラフで s1, s2, t1, t2 が
この順番に同じ面上
をみたすかどうかを判定できることを示せ.
講演内容


イントロダクション
効率的に解けるケース
 2点素パス問題
 k点素パス問題
(Robertson-Seymour のアルゴリズム)
 その他の結果



最短点素パス問題
演習
近年の発展(最大点素パス問題)
無向点素パス問題
パスが頂点を
共有しない
Input: 頂点対 (s1, t1),…, (sk, tk)
Find: 点素なパス P1,…, Pk (Pi : si → ti )

k=2
多項式時間アルゴリズム
Seymour, Thomassen, Shiloach (1980)

k:定数 多項式時間アルゴリズム
Robertson-Seymour (1995)

k:変数 NP困難
s3
s1
t1
Karp (1975)
t2
s2
t3
Robertson-Seymour のアルゴリズム

頂点対数 k:定数,無向グラフ
点素(辺素)パス問題に対する多項式時間アルゴリズム
Graph Minors 13 (1995)

グラフマイナー理論に基づく
1983年~現在
23本の論文にわたる大理論
Robertson & Seymour: Graph Minors 1 ~ 23
 グラフ理論・アルゴリズムにおける大きな成果

計算時間は O(n3)
n: グラフの頂点数
 k に依存する非常に大きな係数がかかる























Graph minors. I. Excluding a forest, JCTB, 35 (1983), 39-61
Graph minors. II. Algorithmic aspects of tree-width, J. Algorithms, 7 (1986), 309-322
Graph minors. III. Planar tree-width, JCTB, 36 (1984), 49-64
Graph minors. IV. Tree-width and well-quasi-ordering, JCTB, 48 (1990), 227-254
Graph minors. V. Excluding a planar graph, JCTB, 41 (1986), 92-114
Graph minors. VI. Disjoint paths across a disc, JCTB, 41 (1986), 115-138
Graph minors. VII. Disjoint paths on a surface, JCTB, 45 (1988), 212-254
Graph minors. VIII. A Kuratowski theorem for general surfaces, JCTB, 48 (1990), 255-288
Graph minors. IX. Disjoint crossed paths, JCTB, 49 (1990), 40-77
Graph minors. X. Obstructions to tree-decomposition, JCTB, 52 (1991), 153-190
Graph minors. XI. Circuits on a surface, JCTB, 60 (1994), 72-106
Graph minors. XII. Distance on a surface, JCTB, 64 (1995), 240-272
Graph minors. XIII. The disjoint paths problem, JCTB, 63 (1995), 65-110
Graph minors. XIV. Extending an embedding, JCTB, 65 (1995), 23-50
Graph minors. XV. Giant steps, JCTB, 68 (1996), 112-148
Graph minors. XVI. Excluding a non-planar graph, JCTB, 89 (2003), 43-76
Graph minors. XVII. Taming a vortex, JCTB, 77 (1999), 162-210
Graph minors. XVIII. Tree-decompositions and well-quasi-ordering, JCTB, 89 (2003), 77-108
Graph minors. XIX. Well-quasi-ordering on a surface, JCTB, 90 (2004), 325-385
Graph minors. XX. Wagner's conjecture, JCTB, 92 (2004), 325-357
Graph minors. XXI. Graphs with unique linkages, JCTB, 99 (2009), 583-616
Graph minors. XXII. Irrelevant vertices in linkage problems, JCTB, 102 (2012), 530-563.
Graph minors. XXIII. Nash-Williams' immersion conjecture, JCTB, 100 (2010), 181-205.
RSアルゴリズムの概要
グラフの木幅を計算
グラフの複雑さの指標
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
ウォール
GM5 など
RSアルゴリズムの概要
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
(2-2) 大きなクリークマイナーを含む
ウォール
クリークマイナー
連結な
部分グラフ
RSアルゴリズムの概要
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
GM22 の結果
(2-2) 大きなクリークマイナーを含む
ウォール
s1
t3
クリークマイナー
t1
s2
s3
t2
連結な
部分グラフ
RSアルゴリズムの概要
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
s1
 頂点を取り除く
t1 t3
以上を繰り返す
s2
t2
s3
n: グラフの頂点数
m: グラフの辺数
RSアルゴリズムの概要
グラフの木幅を計算
O(n2)
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
O(n2)
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す O(n) 回
O(m)
合計 O(n3) 時間
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
木幅とは
 グラフがどれくらい木に近いか? を表す指標
 木幅 = 1
森
 定義は置いておいて...
G
木幅= 1
G
G
G
木幅= 2
木幅= 2
木幅= 3
木幅とは
 グラフがどれくらい木に近いか? を表す指標
 木幅 = 1
森
 定義は置いておいて...
G
木幅= 1
G
G
G
木幅= 2
木幅= 2
木幅= 3
 “部品” を “木のように” 組み合わせることでグラフを作る
 木幅 := “部品” の最大頂点数 – 1
木幅の定義
 (T, W) が G = (V, E) の 木分解
 T が木, W  {Wt

W
t
tV (T )
 V | t V (T )}
 V , 各枝に対して,Wt が存在して両端点を含む
 t が T の上で t’ と t’’ の間にあるならば
G
T
木幅= 2
Wt '  Wt ''  Wt
木幅の定義
 (T, W) が G = (V, E) の 木分解
 T が木, W  {Wt

W
t
tV (T )
 V | t V (T )}
 V , 各枝に対して,Wt が存在して両端点を含む
 t が T の上で t’ と t’’ の間にあるならば
G
T
木幅= 2
Wt '  Wt ''  Wt
木幅の定義
 (T, W) が G = (V, E) の 木分解
 T が木, W  {Wt

W
t
tV (T )
 V | t V (T )}
 V , 各枝に対して,Wt が存在して両端点を含む
 t が T の上で t’ と t’’ の間にあるならば
Wt '  Wt ''  Wt
 (T, W) の幅 := maxt |Wt| - 1
 G の木幅 := すべての木分解の中で最小の幅
G
T
木幅= 2
演習
 サイクルの木幅が 2 であることを示せ.
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
木幅小さい → 動的計画法
定理 (RS 1995, Arnborg-Proskurowski 1989 など)
木幅が w 以下のグラフ G=(V, E) において,
k 点素パス問題は,(k+w)O(k+w) |V|O(1) 時間で解ける
部分問題
s1
G
…
r1
r2
で,s1, t1, s2, r1, r2, r3 が
t1
どのように繋げるか,を列挙
r3
s2
例: { s1 t1 , s2 r2 }, { s1 r2 , s2 r3 }, …
T
G
…
木幅= 2
…
木幅小さい → 動的計画法
定理 (RS 1995, Arnborg-Proskurowski 1989 など)
木幅が w 以下のグラフ G=(V, E) において,
k 点素パス問題は,(k+w)O(k+w) |V|O(1) 時間で解ける
部分問題
s1
G
…
r1
r2
で,s1, t1, s2, r1, r2, r3 が
t1
どのように繋げるか,を列挙
r3
s2
葉から順に,繰り返し解く
T
G
…
木幅= 2
…
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
木幅大きい → ウォール
定理 (RS 1986)
任意の r に対してある f(r) が存在して以下が成立.
木幅が f(r) 以上の任意のグラフはサイズ r のウォールを含む
Known results
O(r5)
 f(r) =2
, f(r) =Ω(r2 log r)
 G : planar
 G : bounded genus
 G : H-minor-free
 G : K3,k-minor-free
(Robertson-Seymour-Thomas [1994], Diestel et al. [1999])
f(r) = O(r)
f(r) = O(r)
(Robertson-Seymour-Thomas [1994])
f(r) = cH・r
f(r) = 204k・r
(Demaine-Hajiaghayi [2008])
(Demaine et al. [2005])
(Demaine et al. [2009])
木幅大きい → ウォール
定理 (RS 1986)
任意の r に対してある f(r) が存在して以下が成立.
木幅が f(r) 以上の任意のグラフはサイズ r のウォールを含む
Known results
O(r5)
 f(r) =2
, f(r) =Ω(r2 log r)
 G : planar
 G : bounded genus
 G : H-minor-free
 G : K3,k-minor-free
Our results
 G : H-minor-free
 G : general
(Robertson-Seymour-Thomas [1994], Diestel et al. [1999])
f(r) = O(r)
f(r) = O(r)
(Robertson-Seymour-Thomas [1994])
f(r) = cH・r
f(r) = 204k・r
(Demaine-Hajiaghayi [2008])
(Demaine et al. [2005])
(Demaine et al. [2009])
f(r) = |V(H)|O(|E(H)|)・r
O(r2 log r)
f(r) = 2
(Kawarabayashi-K [2012])
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
ほぼ平面的なウォール
(2) tw(G) > (定数) なら大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
(2-2) 大きなクリークマイナーを含む
def
ウォール内部がほぼ平面的
(高々 9k2 個の頂点を取り除くと)
対角の頂点を結ぶ2本の点素パスがウォール内部に取れない
目標:
ほぼ平面的な大きなウォール
 大きなクリークマイナー

大きなウォール
def
ウォールがほぼ平面的
(定数個頂点除くと)
が無い
目標:
ほぼ平面的な大きなウォール
 大きなクリークマイナー

大きなウォール
def
ウォールがほぼ平面的
(定数個頂点除くと)
が無い
ケース (2) の場合分け
(2) tw(G) > (定数) なら大きなウォールを含む
(2-1) 内部がほぼ平面的な大きなウォールを含む
(2-2) 大きなクリークマイナーを含む
ポイント
がたくさんあると,クリークマイナーを作れる
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
GM22
の結果
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
クリークマイナーの処理

サイズ 2k のクリーク C があるとする
(本当はクリークマイナーだが簡単のため)
 ターミナルから
 ターミナルと
t1
s1
t3
s2
t2
C へ 2k 個の点素パスが存在
C を分けるサイズ 2k – 1 以下の点カットが存在
t1
s1
t3
s2
s3
t2
s3
Menger の定理
サイズ ≦ 2k - 1
クリークマイナーの処理

サイズ 2k のクリーク C があるとする
(本当はクリークマイナーだが簡単のため)
 ターミナルから
C へ 2k 個の点素パスが存在
C を使ってターミナルを任意に繋ぐことができる
 ターミナルと
t1
s1
t3
s2
t2
C を分けるサイズ 2k – 1 以下の点カットが存在
t1
s1
t3
s2
s3
t2
s3
Menger の定理
サイズ ≦ 2k - 1
クリークマイナーの処理

サイズ 2k のクリーク C があるとする
サイズ 3k
(本当はクリークマイナーだが簡単のため)
 ターミナルから
C へ 2k 個の点素パスが存在
C を使ってターミナルを任意に繋ぐことができる
C を分けるサイズ 2k – 1 以下の点カットが存在
C の中に“点素パスに無関係”な頂点が存在
 ターミナルと
t1
s1
t3
s2
t2
t1
s1
t3
s2
s3
t2
s3
Menger の定理
サイズ ≦ 2k - 1
無関係!
少しだけ各ステップの説明
グラフの木幅を計算
(1) 木幅≦(定数): 動的計画法で解く
(2) 木幅 > (定数): 大きなウォールを含む
(1) 木幅とは?
(2) 木幅小さい
→動的計画法
(3) 木幅大きい
→ウォール
(4) ほぼ平面的?
(2-1) 内部がほぼ平面的な大きなウォールを含む
中央の頂点を取り除く
(2-2) 大きなクリークマイナーを含む
 点素パスが見つかる
 頂点を取り除く
以上を繰り返す
(5) (2-1) の正当性
(6) (2-2) の正当性
講演内容


イントロダクション
効率的に解けるケース
 2点素パス問題
 k点素パス問題
(Robertson-Seymour のアルゴリズム)
 その他の結果



最短点素パス問題
演習
近年の発展(最大点素パス問題)
その他の結果(1)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
s3
t2
t1
tk
s1
t3
s2
sk
平面的
その他の結果(1)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
定理 (Suzuki-Akama-Nishizeki, 1988)
グラフが平面的で,ターミナルが高々2つの面の周上のとき,
点素パス問題は O(n) 時間で解ける
s3
t2
t1
tk
s1
t3
s2
sk
t1
t2
平面的
s3
tk
s2 s1 s
k
t3
平面的
その他の結果(2)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
定理 (Okamura-Seymour, 1981)
グラフが平面的で,ターミナルが1つの面の周上,
オイラー条件を満たすとき,辺素パス問題は
s3
t2
t1
t2 s3
tk
s1
t3
s2
sk
平面的
t1
tk
s1
t3
s2
sk
平面的
その他の結果(2)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
定理 (Okamura-Seymour, 1981)
グラフが平面的で,ターミナルが1つの面の周上,
オイラー条件を満たすとき,辺素パス問題は 多項式時間で解ける
現在:O(n) 時間
各頂点に接続する
需要+供給 の枝数が偶数
t2
t1
s3
tk
(Wagner-Weihe [1993])
t2 s3
s1
t3
s2
sk
平面的
t1
tk
s1
t3
s2
sk
平面的
その他の結果(2)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
定理 (Okamura-Seymour, 1981)
グラフが平面的で,ターミナルが1つの面の周上,
オイラー条件を満たすとき,辺素パス問題は 多項式時間で解ける
各頂点に接続する
需要+供給 の枝数が偶数
現在:O(n) 時間
(Wagner-Weihe [1993])
定理 (Frank, 1985)
グラフが平面的で,ターミナルが1つの面の周上,
内点が偶数次数のとき,辺素パス問題は多項式時間で解ける
現在:O(n) 時間
(Weihe [1999])
その他の結果(2)
観察
グラフが平面的で,ターミナルが高々1つの面の周上のとき,
点素パス問題は多項式時間で解ける
定理 (Okamura-Seymour, 1981)
グラフが平面的で,ターミナルが1つの面の周上,
オイラー条件を満たすとき,辺素パス問題は
多項式時間で解ける
難しいポイント
各頂点に接続する
需要+供給 の枝数が偶数
 カット条件
 幾何的な条件
どれも幾何的な条件
現在:O(n) 時間
が扱いやすい形
(Wagner-Weihe [1993])
定理 (Frank, 1985)
の両方を同時に扱う必要がある
グラフが平面的で,ターミナルが1つの面の周上,
内点が偶数次数のとき,辺素パス問題は多項式時間で解ける
現在:O(n) 時間
(Weihe [1999])
演習
Demand graph
枝集合 s1t1, s2t2, …, siti をもつグラフを H とする.
定理 (Okamura-Seymour, 1981)
グラフが平面的,ターミナルが1つの面の周上,
オイラー条件 (G+H の次数がすべて偶数) を満たすとき,
辺素パスが存在
カット条件が成立
任意のカットに対して,
G の枝数 ≧ H の枝数

「オイラー条件」を除くと,この関係が成り立たなくなることを示せ.

「1つの面の周上」という条件を除くと,成り立たなくなることを示せ.
第一部,第二部 まとめ

点素パス問題の難しさ
 カット条件
 幾何的な条件
の両方を同時に扱う必要がある

未解決問題
 有向平面グラフ上の辺素パス問題
 有向平面グラフ上の点素パス問題のFPT
 3点素パスの存在の特徴づけ
例題

点素パスを見つけよ
s2
s
1
s3
s4
t1
t3 t2
t4
例題2

点素パスを見つけよ
s3
s2
s4 s1
t2 t4
t3
t1