点素パス問題に対するアルゴリズム
This presentation is the property of its rightful owner.
Sponsored Links
1 / 77

東京大学 大学院情報理工学系研究科 PowerPoint PPT Presentation


  • 43 Views
  • Uploaded on
  • Presentation posted in: General

点素パス問題に対するアルゴリズム. 東京大学 大学院情報理工学系研究科. 小林 佑輔. 組合せ最適化セミナー 2012 年 7 月 13 日. 講演内容. イントロダクション 効率的に解けるケース 2点素パス問題 k 点素パス問題 ( Robertson-Seymour のアルゴリズム) その他の結果 最短点素パス問題 演習 近年の発展(最大点素パス問題). イントロダクション. 問題の定義 歴史. 点素パス問題. パスが頂点を共有しない. Input: 頂点対 ( s 1 , t 1 ),…, ( s k , t k )

Download Presentation

東京大学 大学院情報理工学系研究科

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


点素パス問題に対するアルゴリズム

東京大学 大学院情報理工学系研究科

小林 佑輔

組合せ最適化セミナー

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 )

  • 様々な類似問題

    • 有向グラフ or 無向グラフ

    • 頂点対数 kが 定数or 入力の一部

    • 辺素パスor 点素パス etc.

  • 多くの応用を持つ(例: VLSI の設計)

s1

s1

t1

t1

s2

s2

t2

t2


特殊ケース(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

t

sk


特殊ケース(2): t1 = t2 = ・・・ = tkの時

Input:頂点対 (s1, t) ,…, (sk, t)

Find:辺素なパスP1,…, Pk (Pi : si → t)

s1

s2

最大流アルゴリズムで多項式時間で解ける

s3

s

t

sk


特殊ケース(2): t1 = t2 = ・・・ = tkの時

Input:頂点対 (s1, t) ,…, (sk, t)

Find:辺素なパスP1,…, Pk (Pi : si → t)

s1

s2

最大流アルゴリズムで多項式時間で解ける

s3

s

t

sk

一般の場合にはうまくいかない

t1

s1

t2

s2

結ぶ頂点の組を指定されるから難しい

t3

s3

s

t

sk

tk


目的:理論的計算量の解明

  • 様々なバリエーションに対して

    • 多項式時間で解けるか? NP困難か?

    • より効率の良いアルゴリズムは?


目的:理論的計算量の解明

  • 様々なバリエーションに対して

    • 多項式時間で解けるか? NP困難か?

    • より効率の良いアルゴリズムは?

  • 点素パス問題の計算量

k : 頂点対数


各問題の帰着(演習)

無向点素パス問題

有向点素パス問題

無向辺素パス問題

有向辺素パス問題

下記のように帰着可能であることを示せ.

また,それぞれの帰着は平面性を保つか?


辺素パスと点素パスの関係

s1

t1

  • 辺素パス問題は線グラフ上の点素パス問題に帰着可能

s1

t1

2

7

5

5

2

7

1

1

8

8

6

s2

3

t2

4

3

6

s2

t2

4

辺素パス

点素パス

定義(線グラフ)

  • 元のグラフの辺が線グラフの頂点に対応

  • 元のグラフで同じ端点を持つ 線グラフで隣接


  • 点素パス問題の計算量

k : 頂点対数

  • 辺素パス問題の計算量


点素・辺素パス問題の歴史

(点素のみ)Schrijver


効率的に解けるケース

2点素パス問題

k点素パス問題

その他のケース


講演内容

  • イントロダクション

  • 効率的に解けるケース

    • 2点素パス問題

    • k点素パス問題 (Robertson-Seymour のアルゴリズム)

    • その他の結果

  • 最短点素パス問題

  • 演習

  • 近年の発展(最大点素パス問題)


無向点素パス問題

パスが頂点を共有しない

Input:頂点対 (s1, t1),…, (sk, tk)

Find:点素なパスP1,…, Pk (Pi : si → ti )

s3

s1

  • k=2 多項式時間アルゴリズム

  • k:定数 多項式時間アルゴリズム

  • k:変数 NP困難

t1

Seymour, Thomassen, Shiloach (1980)

Robertson-Seymour (1995)

t2

s2

Karp (1975)

t3


無向点素パス問題

パスが頂点を共有しない

Input:頂点対 (s1, t1),…, (sk, tk)

Find:点素なパスP1,…, Pk (Pi : si → ti )

s3

s1

  • k=2 多項式時間アルゴリズム

  • k:定数 多項式時間アルゴリズム

  • k:変数 NP困難

難しいポイント

t1

Seymour, Thomassen, Shiloach (1980)

  • カット条件

  • 幾何的な条件

Robertson-Seymour (1995)

t2

s2

の両方を同時に扱う必要がある

Karp (1975)

t3


無向点素パス問題

パスが頂点を共有しない

Input:頂点対 (s1, t1),…, (sk, tk)

Find:点素なパスP1,…, Pk (Pi : si → ti )

s3

s1

  • k=2 多項式時間アルゴリズム

  • k:定数 多項式時間アルゴリズム

  • k:変数 NP困難

t1

Seymour, Thomassen, Shiloach (1980)

Robertson-Seymour (1995)

t2

s2

Karp (1975)

t3


2点素パス問題の解法

  • 性質1

平面グラフで s1, s2, t1, t2が

この順番に同じ面上

s2

s1

2点素パス無し

t1

t2


2点素パス問題の解法

  • 性質1

平面グラフで s1, s2, t1, t2が

この順番に同じ面上

s2

s1

2点素パス無し

t1

  • 性質2

小さいカットがあると問題を帰着可能

s1

s1

t1

t1

t2

t2

t2

s2

連結

s2

サイズ3

サイズ3


2点素パス問題の解法

  • 性質1

平面グラフで s1, s2, t1, t2が

この順番に同じ面上

s2

s1

2点素パス無し

t1

  • 性質2

小さいカットがあると問題を帰着可能

s1

s1

t1

t1

t2

t2

t2

s2

連結

s2

サイズ3

サイズ3


2点素パスの存在条件

2点素パスが存在しない

性質2の帰着を繰り返すと,性質1 の形になる

s2

s1

s1

t1

t1

t2

s2

サイズ3

t2


2点素パスの存在条件

定理(Seymour, 1980)

2点素パスが存在しない

性質2の帰着を繰り返すと,性質1 の形になる

s2

s1

s1

t1

t1

t2

s2

サイズ3

t2


2点素パスの存在条件

定理(Seymour, 1980)

2点素パスが存在しない

性質2の帰着を繰り返すと,性質1 の形になる

s2

s1

s1

t1

t1

t2

s2

サイズ3

2点素パス問題は多項式時間で解ける

t2

  • カットを見つけるアルゴリズム

  • 平面性判定アルゴリズム

現在: 線形時間

(Kapadia et al., 2010)


理解のために

定理

2点素パスが存在しない

命題

グラフが 「4点連結」かつ 「平面的でない」

帰着を繰り返すと,性質1 の形

2点素パスが存在

Shiloach (1980) の方針

平面的でない

or

をマイナーに持つ

(Kuratowski の定理)

K5

K3,3

縮約を繰り返すと部分グラフに持つ


理解のために

定理

2点素パスが存在しない

命題

グラフが 「4点連結」かつ 「平面的でない」

帰着を繰り返すと,性質1 の形

2点素パスが存在

Shiloach (1980) の方針

平面的でない

or

をマイナーに持つ

(Kuratowski の定理)

K5

K3,3

s1

t1

4点連結

s2

t2

or

を使って繋げる

K5

K3,3


演習

平面グラフで s1, s2, t1, t2が

この順番に同じ面上

平面性判定のアルゴリズムを用いて,

をみたすかどうかを判定できることを示せ.


講演内容

  • イントロダクション

  • 効率的に解けるケース

    • 2点素パス問題

    • k点素パス問題 (Robertson-Seymour のアルゴリズム)

    • その他の結果

  • 最短点素パス問題

  • 演習

  • 近年の発展(最大点素パス問題)


無向点素パス問題

パスが頂点を共有しない

Input:頂点対 (s1, t1),…, (sk, tk)

Find:点素なパスP1,…, Pk (Pi : si → ti )

s3

s1

  • k=2 多項式時間アルゴリズム

  • k:定数 多項式時間アルゴリズム

  • k:変数 NP困難

t1

Seymour, Thomassen, Shiloach (1980)

Robertson-Seymour (1995)

t2

s2

Karp (1975)

t3


Robertson-Seymour のアルゴリズム

GraphMinors 13(1995)

  • 1983年~現在 23本の論文にわたる大理論

  • グラフ理論・アルゴリズムにおける大きな成果

Robertson & Seymour: Graph Minors 1 ~ 23

n: グラフの頂点数

  • kに依存する非常に大きな係数がかかる

頂点対数 k:定数,無向グラフ 点素(辺素)パス問題に対する多項式時間アルゴリズム

グラフマイナー理論に基づく

計算時間は O(n3)


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) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

GM22 の結果

ウォール

クリークマイナー

s1

連結な 部分グラフ

t3

t1

s2

s3

t2


RSアルゴリズムの概要

グラフの木幅を計算

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

  • 点素パスが見つかる

  • 頂点を取り除く

s1

t3

t1

以上を繰り返す

s2

t2

s3


n: グラフの頂点数

m: グラフの辺数

RSアルゴリズムの概要

グラフの木幅を計算

O(n2)

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

O(n2)

  • 点素パスが見つかる

  • 頂点を取り除く

O(m)

以上を繰り返す

O(n) 回

合計 O(n3) 時間


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(4) ほぼ平面的?

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

(5) (2-1) の正当性

(6) (2-2) の正当性

  • 点素パスが見つかる

  • 頂点を取り除く

以上を繰り返す


木幅とは

  • グラフがどれくらい木に近いか? を表す指標

  • 木幅 = 1 森

  • 定義は置いておいて...

G

G

G

G

木幅= 3

木幅= 1

木幅= 2

木幅= 2


木幅とは

  • グラフがどれくらい木に近いか? を表す指標

  • 木幅 = 1 森

  • 定義は置いておいて...

  • “部品” を “木のように” 組み合わせることでグラフを作る

  • 木幅:= “部品” の最大頂点数 – 1

G

G

G

G

木幅= 3

木幅= 1

木幅= 2

木幅= 2


木幅の定義

  • (T, W) が G = (V, E) の 木分解

  • Tが木, W

  • , 各枝に対して,Wt が存在して両端点を含む

  • tがTの上でt’とt’’の間にあるならば

G

T

木幅= 2


木幅の定義

  • (T, W) が G = (V, E) の 木分解

  • Tが木, W

  • , 各枝に対して,Wt が存在して両端点を含む

  • tがTの上でt’とt’’の間にあるならば

G

T

木幅= 2


木幅の定義

  • (T, W) が G = (V, E) の 木分解

  • (T, W) の幅:= maxt |Wt| - 1

  • Gの木幅:= すべての木分解の中で最小の幅

  • Tが木, W

  • , 各枝に対して,Wt が存在して両端点を含む

  • tがTの上でt’とt’’の間にあるならば

G

T

木幅= 2


演習

  • サイクルの木幅が 2 であることを示せ.


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(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

例:{ s1t1 , s2 r2 }, { s1r2 , 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) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(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 : planarf(r) = O(r)

  • G : bounded genusf(r) = O(r)

  • G : H-minor-freef(r) = cH・r

  • G : K3,k-minor-freef(r) = 204k・r

(Robertson-Seymour-Thomas [1994], Diestel et al. [1999])

(Robertson-Seymour-Thomas [1994])

(Demaine et al. [2005])

(Demaine-Hajiaghayi [2008])

(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 : planarf(r) = O(r)

  • G : bounded genusf(r) = O(r)

  • G : H-minor-freef(r) = cH・r

  • G : K3,k-minor-freef(r) = 204k・r

  • G : H-minor-freef(r) = |V(H)|O(|E(H)|)・r

  • G : generalf(r) = 2

(Robertson-Seymour-Thomas [1994], Diestel et al. [1999])

(Robertson-Seymour-Thomas [1994])

(Demaine et al. [2005])

(Demaine-Hajiaghayi [2008])

(Demaine et al. [2009])

Our results

(Kawarabayashi-K [2012])

O(r2 log r)


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(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) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(4) ほぼ平面的?

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

(5) (2-1) の正当性

(6) (2-2) の正当性

  • 点素パスが見つかる

  • 頂点を取り除く

以上を繰り返す


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(4) ほぼ平面的?

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

GM22 の結果

中央の頂点を取り除く

(5) (2-1) の正当性

(6) (2-2) の正当性

  • 点素パスが見つかる

  • 頂点を取り除く

以上を繰り返す


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(4) ほぼ平面的?

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

(5) (2-1) の正当性

(6) (2-2) の正当性

  • 点素パスが見つかる

  • 頂点を取り除く

以上を繰り返す


クリークマイナーの処理

(本当はクリークマイナーだが簡単のため)

s1

s1

t3

t3

t1

t1

s2

s2

t2

t2

s3

s3

サイズ ≦ 2k - 1

  • サイズ 2kのクリーク Cがあるとする

    • ターミナルから Cへ 2k個の点素パスが存在

    • ターミナルと Cを分けるサイズ 2k – 1 以下の点カットが存在

Menger の定理


クリークマイナーの処理

(本当はクリークマイナーだが簡単のため)

s1

s1

t3

t3

t1

t1

s2

s2

t2

t2

s3

s3

サイズ ≦ 2k - 1

  • サイズ 2kのクリーク Cがあるとする

    • ターミナルから Cへ 2k個の点素パスが存在

      Cを使ってターミナルを任意に繋ぐことができる

    • ターミナルと Cを分けるサイズ 2k – 1 以下の点カットが存在

Menger の定理


クリークマイナーの処理

サイズ 3k

(本当はクリークマイナーだが簡単のため)

s1

s1

t3

t3

t1

t1

s2

s2

t2

t2

s3

s3

サイズ ≦ 2k - 1

無関係!

  • サイズ 2kのクリーク Cがあるとする

    • ターミナルから Cへ 2k個の点素パスが存在

      Cを使ってターミナルを任意に繋ぐことができる

    • ターミナルと Cを分けるサイズ 2k – 1 以下の点カットが存在

      C の中に“点素パスに無関係”な頂点が存在

Menger の定理


少しだけ各ステップの説明

(1) 木幅とは?

(2) 木幅小さい

→動的計画法

グラフの木幅を計算

(3) 木幅大きい

→ウォール

(1) 木幅≦(定数): 動的計画法で解く

(2) 木幅 > (定数): 大きなウォールを含む

(4) ほぼ平面的?

(2-1) 内部がほぼ平面的な大きなウォールを含む

(2-2) 大きなクリークマイナーを含む

中央の頂点を取り除く

(5) (2-1) の正当性

(6) (2-2) の正当性

  • 点素パスが見つかる

  • 頂点を取り除く

以上を繰り返す


講演内容

  • イントロダクション

  • 効率的に解けるケース

    • 2点素パス問題

    • k点素パス問題 (Robertson-Seymour のアルゴリズム)

    • その他の結果

  • 最短点素パス問題

  • 演習

  • 近年の発展(最大点素パス問題)


その他の結果(1)

観察

グラフが平面的で,ターミナルが高々1つの面の周上のとき,

点素パス問題は多項式時間で解ける

t2

t1

s3

tk

s1

t3

平面的

s2

sk


その他の結果(1)

観察

グラフが平面的で,ターミナルが高々1つの面の周上のとき,

点素パス問題は多項式時間で解ける

定理(Suzuki-Akama-Nishizeki, 1988)

グラフが平面的で,ターミナルが高々2つの面の周上のとき,

点素パス問題は O(n) 時間で解ける

t2

t1

t1

t2

tk

s3

tk

s1

s2

sk

s3

s1

t3

t3

平面的

s2

平面的

sk


その他の結果(2)

観察

グラフが平面的で,ターミナルが高々1つの面の周上のとき,

点素パス問題は多項式時間で解ける

定理(Okamura-Seymour, 1981)

グラフが平面的で,ターミナルが1つの面の周上,

オイラー条件を満たすとき,辺素パス問題は

t1

t2

s3

t1

t2

s3

tk

tk

s1

s1

t3

t3

平面的

s2

平面的

s2

sk

sk


その他の結果(2)

観察

グラフが平面的で,ターミナルが高々1つの面の周上のとき,

点素パス問題は多項式時間で解ける

定理(Okamura-Seymour, 1981)

グラフが平面的で,ターミナルが1つの面の周上,

オイラー条件を満たすとき,辺素パス問題は 多項式時間で解ける

現在:O(n)時間

各頂点に接続する

需要+供給 の枝数が偶数

(Wagner-Weihe [1993])

t1

t2

s3

t1

t2

s3

tk

tk

s1

s1

t3

t3

平面的

s2

平面的

s2

sk

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

定理(Okamura-Seymour, 1981)

グラフが平面的,ターミナルが1つの面の周上,

オイラー条件 (G+Hの次数がすべて偶数) を満たすとき,

辺素パスが存在 カット条件が成立

任意のカットに対して,

Gの枝数 ≧ Hの枝数

  • 「オイラー条件」を除くと,この関係が成り立たなくなることを示せ.

  • 「1つの面の周上」という条件を除くと,成り立たなくなることを示せ.

枝集合 s1t1, s2t2, …, sitiをもつグラフを Hとする.


第一部,第二部 まとめ

  • カット条件

  • 幾何的な条件

の両方を同時に扱う必要がある

  • 点素パス問題の難しさ

  • 未解決問題

    • 有向平面グラフ上の辺素パス問題

    • 有向平面グラフ上の点素パス問題のFPT

    • 3点素パスの存在の特徴づけ


例題

s2

s1

s3

s4

t1

t3

t2

t4

点素パスを見つけよ


例題2

s3

s2

s4

s1

t4

t2

t3

t1

点素パスを見つけよ


  • Login