24
卒卒卒卒 Treedecomposition 卒卒卒卒卒卒卒卒 卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒卒 年年 年年 年年 4:

卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

  • Upload
    quasim

  • View
    28

  • Download
    5

Embed Size (px)

DESCRIPTION

卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験. 4年:山下 由展. 目次. Tree decomposition の定義について Tree decomposition を生成するヒューリスティックアルゴリズムの紹介 卒業研究について. Tree decomposition の定義. グラフ G=(V,E) に対して、木 T と V ( G) のある部分 集合族 X= { X i |i ∈V(T)} の対( T,X) を考える。. X p =V(G)の ある部分集合. 木T. X 1. 1. X p. - PowerPoint PPT Presentation

Citation preview

Page 1: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

卒業研究Treedecomposition を生成する

ヒューリスティックアルゴリズムの幅に関する評価実験

4年:山下 由展

Page 2: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

目次 Tree decomposition の定義について Tree decomposition を生成するヒュー

リスティックアルゴリズムの紹介 卒業研究について

Page 3: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義グラフ G=(V,E) に対して、木 T と V ( G) のある部

分集合族 X= { Xi|i∈V(T)} の対( T,X) を考える。木T 1

pXp

※ pはTの頂点の番号(ここでは1≦p≦ |V(G)|)

Xp=V(G)のある部分集合

X1

Page 4: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義グラフ G=(V,E) に対して、木 T と V ( G) のある部

分集合族 X= { Xi|i∈V(T)} の対( T,X) を考える。V(G)= {a,b,c,d,e,f }だとすると

3a,b

c,d

e,fb,c,d,e

d a,b

e,fd,e,f

c

f1

23

4 5(T,X) は2nm通りある

n= |V(G)|mは木の頂点数

(T,X) (T,X)

Page 5: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義グラフ G に対して、木 T と V ( G) のある部分集

合族X= { Xi|i∈V(T)} の対( T,X) が以下の3つの条件を

満たすとき、 (T,X) を G の Tree decomposition とい

う。

(1)∪ i∈V(T)Xi=V(G)

1 2

3 4 7

5 6

1,2,4

1,3,4

3,4,5 4,5,6

4,6,7

1

2

3 4

5

G).( T,X)

頂点集合{ 1,2,3,4,5,6,7}

Page 6: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義グラフ G に対して、木 T と V ( G) のある部分集

合族X= { Xi|i∈V(T)} の対( T,X) が以下の3つの条件を

満たすとき、 (T,X) を G の Tree decomposition とい

う。

( 2)∀v,w∈V(G)[(v,w)∈E(G)⇒∃i∈V(T)[v,w∈Xi]]

1 2

3 4 7

5 6 3,4,5 4,5,6

1

2

3 4

5

G).( T,X)1 , 2, 4

1,3,4 4,6,7

Page 7: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義グラフ G に対して、木 T と V ( G) のある部分集

合族X= { Xi|i∈V(T)} の対( T,X) が以下の3つの条件を

満たすとき、 (T,X) を G の Tree decomposition とい

う。

( 3)∀i,j,k∈V(T)[j が T における i からkへの道上にある   ⇒ Xi∩Xk⊆Xj

1 2

3 4 7

5 6

1,2,4

1,3,4

3,4,5 4,5,6

4,6,7

1

2

3 4

5

G).( T,X)

Page 8: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition の定義 幅= maxi∈I|Xi|-1

木幅=グラフGからつくられる Tree decomposition がもつ

幅のなかで一番小さい値

1,2,4

1,3,4

3,4,5 4,5,6

4,6,7 幅=2

Page 9: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

目次 Tree decomposition の定義について Tree decomposition を生成するヒュー

リスティックアルゴリズムの紹介 卒業研究について

Page 10: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

s-t separating setグラフ G=(V,E) の頂点sから頂点tへのどんな道も集合 S (⊆ V∖ {s、t})の頂点を通る時、この集合 Sを s-t   separating set という。

例)

S ts

Page 11: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Minimum separating vertex set の定義グラフ G = (V,E) の互いに隣接しない頂点全ての組み合わせで st-separating set をすべて求めた時、その中で位数が最小のものをminimum separating   vertex set と呼ぶ。

s tt

Page 12: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition を生成するヒューリスティックアルゴリズム( Aire M.C.A Koster 等の論文に載っているもの )

G=(V 、 E)

|i|=1 かつX1=V のTree decompositionをつくる

∃i∈I:Gi≠ クリーク

Tree decomposition をつくる操作をする 目標の

Tree decomposition完成

yes

no

G=(V 、 E)はグラフで、(T,X) は G の Tree Decompositionである ( ここで、T=(I,F) はノードIと辺 F の木。そして、 X ={ Xi : i∈I}は V の部分集合族

V ( G )={v1、v2、…、vn}

v1、v2、…、vn

頂点を分割して幅の小さいTree decomposition をつくる

(T,X)

Page 13: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

準備ここで、 Gi = (Vi 、 Ei) を次で定める。Vi = Xi 、 Ei = E(G[Xi])∪E(∪ k∈ N(i)C(Xi∩X k ))b

a

d

c

f

e

i k

jh

g

abd acd cde

egh

def1 2 3

4

5

G3

d

c e

ここで、 N(i) は頂点kに隣接する頂点の集合

G).

G のTree   decomposition の作成途中

・・・

C はクリーク

Page 14: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition を生成するヒューリスティックアルゴリズム( Aire M.C.A Koster 等の論文に載っているもの )

G=(V 、 E)

|i|=1 かつX1=V のTree decompositionをつくる

∃i∈I:Gi≠ クリーク

Tree decomposition をつくる操作をする

目標のTree decomposition完成

yes

no

G=(V 、 E)はグラフで、(T,X) は G の Tree Decompositionである ( ここで、T=(I,F) はノードIと辺 F の木。そして、 X ={ Xi : i∈I}は V の部分集合族

Page 15: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Tree decomposition を生成するヒューリスティクアルゴリズム

・・・

Xi

Xk 、k∈ N(i)

Gi

Minimumseparatingvertex set S

・・・

Gi[Vi/S] はm個の連結成分に分割されたとする。

Gi[Vi/S]Yi1

Yi2

Yim-1

YimXi2

Xim

Xim-1

Xi1

S

S

S

Sはグラフはその頂点集合

・・・

Xi0

Xi1 Xi2 Xim

i0i

i1 i2 im

= SXi0

Page 16: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

グラフから Tree decompositionをつくってなにか役にたつの?

グラフの Treewidth を定数で押さえることができる場合、最大独立集合問題やハミルトンサイクル問題などの NP 困難問題を多項式時間でとくことができる。

Page 17: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

実演 Java

Page 18: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

目次 Tree decomposition の定義について Tree decomposition を生成するヒュー

リスティックアルゴリズムの紹介 卒業研究について

Page 19: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

卒業研究内容

・・・

Xi

Xk 、k∈ N(i)

Gi

Minimumseparatingvertex set S

・・・

Gi[Vi/S]

はグラフはその頂点集合

・・・

i

何ペアかの頂点ペアをランダムに選び、その頂点ペアの st separating vertex set の中で位数最小のもの

Sは何ペアかの頂点ペアの中で位数最小のminimum st separating vertex set

頂点ペアを何ペアか選択する時Giの頂点数の1割、2割、3,4,5,6,7、8、9,10割の場合の10通り試している。

それぞれについて、できたTree decomposition の幅を評価する

Page 20: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

現在の状況

頂点数10、20のグラフそれぞれ200個

Tree decomposition

Tree decomposition を作る際、Minimum separating   vertex set を用いたアルゴリズム ,頂点数の1割をランダムに選び、その頂点ペアのst separating set の位数の最小のものを採用したアルゴリズム、頂点数の2割の・・・、頂点数の3割の・・・、・・・、頂点数の10割の・・・。

200個のTree decomposition の幅の平均値をそれぞれ求める

この過程を3回繰り返す

Page 21: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

現在の状況

4.6

4.4

4.5

10割ペア1割ペア

minimum sepa の幅

頂点数10のグラフ200個をそれぞれの方法でTree decomposition に変えて、その幅の平均を求める操作をそれぞれ3回ずつ行った時の幅の平均値の分布

Page 22: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

現在の状況

幅12

11.8

11.9

10割ペア1割ペア

minimum sepa の幅

頂点数20のグラフ200個をそれぞれの方法でTree decomposition に変えて、その幅の平均を求める操作をそれぞれ3回ずつ行った時の幅の平均値の分布

11.7

Page 23: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

これからの課題

グラフの頂点数と生成数を増やしていったり、ランダムに生成したグラフだけではなく、ある特定の種類のグラフにたいしても同様のことをやってみるなど、いろいろな場合を試してみる。

Page 24: 卒業研究 Treedecomposition を生成するヒューリスティックアルゴリズムの幅に関する評価実験

Fin