Presentation is loading. Please wait.

Presentation is loading. Please wait.

卒業研究 木分解ヒューリスティック アルゴリズムの性能評価実験 ~アルゴリズムの改良の考察と そのプログラム作成~

Similar presentations


Presentation on theme: "卒業研究 木分解ヒューリスティック アルゴリズムの性能評価実験 ~アルゴリズムの改良の考察と そのプログラム作成~"— Presentation transcript:

1 卒業研究 木分解ヒューリスティック アルゴリズムの性能評価実験 ~アルゴリズムの改良の考察と そのプログラム作成~
4年:山下 由展

2 目次     木分解の定義について 木分解を生成する    ヒューリスティックアルゴリズムの紹介 卒業研究について

3 木分解の定義 木T Xp=V(G)の ある部分集合 X1 1 Xp p G=(V,E):連結な単純グラフ
(T,X):T・・木、X={Xi⊆V(G)[i∈V(T)]} 木T Xp=V(G)の ある部分集合 X1 Xp ※pはTの頂点の番号(ここでは1≦p≦|V(G)|)

4 木分解の定義 (1)∪i∈V(T)Xi=V(G) 頂点集合{1,2,3,4,5,6,7} 1 2 1,2,4 3 4 7 4,6,7
⇒TとX={Xi⊆V(G):i∈V(T)}が次の条件(1)(2)(3)を満たす。 (1)∪i∈V(T)Xi=V(G) 頂点集合{1,2,3,4,5,6,7} 1,2,4 1 5 2 4,6,7 3,4,6,7 1,3,4 4 3 4,5,6 3,4,5 2,5 (T,X) G

5 木分解の定義 (2)∀v,w∈V(G)[(v,w)∈E(G)⇒∃i∈V(T)[v,w∈Xi]] 1 2 1,2 ,4 3 4 7 4 ,6,
(T,X)がGの木分解 ⇒TとX={Xi⊆V(G):i∈V(T)}が次の条件(1)(2)(3)を満たす。 (2)∀v,w∈V(G)[(v,w)∈E(G)⇒∃i∈V(T)[v,w∈Xi]] 1,2 ,4 1 5 2 ,6, 1,3 ,4 4 3 4,5,6 3,4,5 G (T,X)

6 木分解の定義 1 2 1,2,4 3 4 7 1,3,4 4,6,7 4,5,6 3,4,5 5 6 G (T,X) (T,X)がGの木分解
⇒TとX={Xi⊆V(G):i∈V(T)}が次の条件(1)(2)(3)を満たす。 (3)∀i,j,k∈V(T)[jがTにおけるiからkへの道上にある    ⇒Xi∩Xk⊆Xj 1 1,2,4 5 2 1,3,4 4,6,7 4 3 4,5,6 3,4,5 G (T,X)

7 木分解の定義 1,2,4 4,6,7 1,3,4 幅=2 4,5,6 3,4,5 幅=maxi∈I|Xi|-1(ここではtwD(G)で表す)
木幅=min{twD(G)} D 1,2,4 4,6,7 1,3,4 幅=2 4,5,6 3,4,5

8 グラフから木分解をつくってなにか役にたつの?
グラフの木幅を定数で押さえることができる ⇒最大独立集合問題やハミルトンサイクル問題など のNP困難問題を多項式時間でとくことができる。

9 目次     木分解の定義について 木分解を生成する    ヒューリスティックアルゴリズムの紹介 卒業研究について

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

11 木分解を生成するヒューリスティックアルゴリズム(Aire M.C.A Koster等の論文に載っているもの)
操作 このアルゴリズムの概要 G0 Gi V(G)={v1,v2,…,vn} ≠クリーク G0' Gi' v1、v2、…、vn 木分解 i j グラフG ・・ ・・・ |Xi|最大 すべての Gi(i∈V(T))がクリークになるまで |Xj|最大

12 木分解を生成するヒューリスティックアルゴリズム(Aire M.C.A Koster等の論文に載っているもの)
G=(V、E) はグラフで、 (T,X)はGの木分解 である(ここで、 T=(I,F)はノードI と辺Fの木。 そして、X={Xi:i∈I} はVの部分集合族 G=(V、E) |i|=1 かつ X1=Vの 木分解 をつくる 木分解を つくる操作をする ∃i∈I: Gi≠クリーク 目標の 木分解 完成 no yes

13 準備 ここで、Gi=(Vi、Ei)を次で定める。 Vi=Xi、Ei=E(G[Xi])∪E(∪k∈N(i)C(Xi∩Xk)) d i b f
に隣接する頂点の集合 ここで、Gi=(Vi、Ei)を次で定める。 Vi=Xi、Ei=E(G[Xi])∪E(∪k∈N(i)C(Xi∩Xk)) Cはクリーク d i b f k G3 G). j h d a e c g 1 2 3 5 abd acd cde def ・・・ e c 4 Gの 木分解の作成途中 egh

14 木分解を生成するヒューリスティックアルゴリズム(Aire M.C.A Koster等の論文に載っているもの)
G=(V、E) はグラフで、 (T,X)はGの木分解 である(ここで、 T=(I,F)はノードI と辺Fの木。 そして、X={Xi:i∈I} はVの部分集合族 G=(V、E) |i|=1 かつ X1=Vの 木分解 をつくる 木分解を つくる操作をする ∃i∈I: Gi≠クリーク 目標の 木分解 完成 no yes

15 木分解を生成する ヒューリスティクアルゴリズム
Minimum separating vertex set S はグラフ Xi1 S Yi1 i0 i Xi0 Xi はその 頂点集合 Xi0 = S Gi Gi[Vi/S] Yim-1 Xim-1 i1 i2 im Xi1 Xi2 Xim Yi2 ・・・ ・・・ S ・・・ Xi2 Yim Xk、k∈N(i) S Xim Gi[Vi/S]はm個の 連結成分に分割された とする。 S

16 目次     木分解の定義について 木分解を生成する    ヒューリスティックアルゴリズムの紹介 卒業研究について

17 卒業研究内容 辺の数 最大 Gi [Vi/S] はグラフ i ・・・ Xi はその 頂点集合 ・・・ ・・・ ・・・ Xk、k∈N(i)
Minimum Separating Vertex set (ここではSとする) 辺の数は すべて同じとは 限らない。 Minimum separating Vertex setで誘導される Giの誘導部分グラフ

18 卒業研究内容 i i0 無駄にクリークに ならないように 努める Xi0 Xi Gi [Vi/S] Xi1 Xi2 Xim ・・・ ・・・
E[Gi[minimum separating vertex set]] 最大 E[Gi[Vi/S]]最小 |V[Gi[Vi/S]]|同じ

19 実演Java

20 関連データ 論文のものの 方が幅が小さい 卒研のものの 方が幅が小さい 同じ 標本数 頂点数 50 10 48 50 50 37 100 OS CPU PentiumⅢ プロセッサ WindowsXP 使用した計算機 PentiumⅣ プロセッサ Redhat

21 Fin


Download ppt "卒業研究 木分解ヒューリスティック アルゴリズムの性能評価実験 ~アルゴリズムの改良の考察と そのプログラム作成~"

Similar presentations


Ads by Google