contents 1 Introduction 2 Main Algorithm 3 yfiles

  • Slides: 52
Download presentation

contents 1, Introduction 2, Main Algorithm 3, yfiles 4, Construction of Tree-Decomposition 5, Analysis

contents 1, Introduction 2, Main Algorithm 3, yfiles 4, Construction of Tree-Decomposition 5, Analysis of Algorithm 6, From now on Target

Introduction ~Purpose~ INPUT : G = (V, E) Output : Tree-decomposition ( T ,

Introduction ~Purpose~ INPUT : G = (V, E) Output : Tree-decomposition ( T , X ) 1 2 6 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 7 3 4 5 8

Introduction ( T , X ) : T = ( I , F )

Introduction ( T , X ) : T = ( I , F ) , X = { Xi : i } (1), ∪i∈I Xi = V (2), for every edge {v, w} ∈E, ∈ I there is an i ∈ I with v ∈Xi and w ∈ Xi, (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj

Introduction ( T , X ) : T = ( I , F )

Introduction ( T , X ) : T = ( I , F ) , X = { Xi : i } (1), ∪i∈I Xi = V (2), for every edge {v, w} ∈E, ∈ I there is an i ∈ I with v ∈Xi and w ∈ Xi, (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I with v ∈X and w ∈ Xi, 1 2 6 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 7 3 4 5 8

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I with v ∈X and w ∈ Xi, 1 2 6 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 7 3 4 5 8

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I

Introduction (2), for every edge {v, w} ∈E, there is an i ∈ I with v ∈X and w ∈ Xi, 1 2 6 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 7 3 4 5 8

Introduction ( T , X ) : T = ( I , F )

Introduction ( T , X ) : T = ( I , F ) , X = { Xi : i } (1), ∪i∈I Xi = V (2), for every edge {v, w} ∈E, ∈ I there is an i ∈ I with v ∈Xi and w ∈ Xi, (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj

Introduction (3), for all i, j, k ∈ I if j is on the

Introduction (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj 1 2 6 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 7 3 4 5 8

Introduction (3), for all i, j, k ∈ I if j is on the

Introduction (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj 1 2 6 1, 2, 3 4 4, 6, 8 2, 4, 7 4, 6, 7 2, 3, 7 3 4 5 8 4, 5

Introduction (3), for all i, j, k ∈ I if j is on the

Introduction (3), for all i, j, k ∈ I if j is on the path from i to k in T , then Xi ∩Xk ⊆ Xj 1 2 6 1, 2, 3 4 4, 6, 8 4, 7 4, 6, 7 2, 3, 7 3 4 5 8 4, 5 2,

Main Algorithm ~ An st-separating set ~ a set S ⊆ V {s, t}

Main Algorithm ~ An st-separating set ~ a set S ⊆ V {s, t} with the property that any path from s to t 1 2

Main Algorithm ~ Minimum st-separating set ~ The minimum number of vertices in an

Main Algorithm ~ Minimum st-separating set ~ The minimum number of vertices in an st-separating set

Main Algorithm ~Outline~ Input Graph G = ( V , E ) Construct( T

Main Algorithm ~Outline~ Input Graph G = ( V , E ) Construct( T , X ) With | I | = 1 and X 1= V no ∃i∈ I with Output : current Tree-decomposition Gi not a clique yes Calculate minimal separating Vertex set S for Gi: m components Yi 1, . . . , Yim Define Xi 0 : = S Xij : Yij ∪ S, for j = 1, . . , m Construct new ( T , X )

Main Algorithm 1 2 6 7 3 4 8 5 Input graph G =

Main Algorithm 1 2 6 7 3 4 8 5 Input graph G = (V, I)

Main Algorithm 1 2 6 Calculate minimal separataing vertex set S for Gi 7

Main Algorithm 1 2 6 Calculate minimal separataing vertex set S for Gi 7 3 4 5 8

Main Algorithm 1 2 6 Calculate minimal separataing vertex set S for Gi 7

Main Algorithm 1 2 6 Calculate minimal separataing vertex set S for Gi 7 3 4 5 8

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for Gi. 7

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for Gi. 7 3 4 5 8 Separate Y 11 and Y 12 S 11 =(4)

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for Gi. 7

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for Gi. 7 3 4 5 8 Separate Y 11 and Y 12 S 11 =(4)

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11.

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11. 7 3 4 8

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11.

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11. 7 3 4 8

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11.

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11. 7 3 4 8 Separate Y 21 and Y 22 S 21 =(2, 4)

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11.

Main Algorithm 1 2 6 Calculate minimal separating vertex set S for X 11. 7 3 4 8 Separate Y 21 and Y 22 S 21 =(2, 4)

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7 4 8

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7 4 8

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7 4 8 Separate Y 31 and Y 32 S 31 =(4, 6)

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7

Main Algorithm 2 6 Calculate minimal separating vertex set S for X 21. 7 4 8 Separate Y 31 and Y 32 S 31 =(4, 6)

Main Algorithm 2 6 7 4 Calculate minimal separating vertex set S for X

Main Algorithm 2 6 7 4 Calculate minimal separating vertex set S for X 31.

Main Algorithm 2 6 7 4 Calculate minimal separating vertex set S for X

Main Algorithm 2 6 7 4 Calculate minimal separating vertex set S for X 31.

Main Algorithm 2 6 7 Calculate minimal separating vertex set S for X 31.

Main Algorithm 2 6 7 Calculate minimal separating vertex set S for X 31. 4 Separate Y 41 and Y 42 S 41 =(4, 6)

Main Algorithm 2 6 7 Calculate minimal separating vertex set S for X 31.

Main Algorithm 2 6 7 Calculate minimal separating vertex set S for X 31. 4 Separate Y 41 and Y 42 S 41 =(4, 6)

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41.

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41.

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41.

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41. ・ ・ ・

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41.

Main Algorithm 6 7 4 Calculate minimal separating vertex set S for X 41. ・ ・ ・ X 41 is clique. r 1 = X 41 = {4, 6, 7}

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for X 42.

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for X 42.

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for Y 42.

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for Y 42. ・ ・ ・

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for Y 42.

Main Algorithm 2 Calculate minimal separating 7 4 vertex set S for Y 42. ・ ・ ・ X 42 is clique. r 2 = X 42 = {2, 4, 7}

Main Algorithm 6 Calculate minimal separating vertex set S for X 32. 4 8

Main Algorithm 6 Calculate minimal separating vertex set S for X 32. 4 8 ・ ・ ・ X 32 is clique. r 3 = X 32 = {4, 6, 8}

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3 4

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3 4

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3 4 Separate Y 33 and Y 34 S 32 =(2, 3)

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 22. 3 4 Separate Y 33 and Y 34 S 32 =(2, 3)

Main Algorithm 2 Calculate minimal separating vertex set S for X 33. 3 4

Main Algorithm 2 Calculate minimal separating vertex set S for X 33. 3 4 ・ ・ ・ X 33 is clique. r 4 = X 33 = {2, 3, 4}

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 34. 3

Main Algorithm 1 2 Calculate minimal separating vertex set S for X 34. 3 ・ ・ ・ X 34 is clique. r 5 = X 34 = {1, 2, 3}

Main Algorithm Calculate minimal separating vertex set S for X 12. 4 ・ ・

Main Algorithm Calculate minimal separating vertex set S for X 12. 4 ・ ・ ・ 5 X 12 is clique. r 6 = X 12 = {1, 2, 3}

Main Algorithm All vertex sets are clique. Connect r 1 , …, r 6.

Main Algorithm All vertex sets are clique. Connect r 1 , …, r 6.

Main Algorithm All vertex sets are clique. S 32 = (2, 3) S 21

Main Algorithm All vertex sets are clique. S 32 = (2, 3) S 21 = (2, 4) Connect r 1 , …, r 6. 1, 2, 3, 4 4, 6, 8 4, 5 2, 4, 7 4, 6, 7 S 1 = (4) S 41 = (4, 7) S 31 = (4, 6)

Analysis of algorithm

Analysis of algorithm

Ex) Given a graph G =(V, E), construct tree- decomposition (T, X). G =

Ex) Given a graph G =(V, E), construct tree- decomposition (T, X). G = (V, E) 1 2 4 3 5 7 6 8 1, 2, 4 7, 8 1, 3, 4 4, 6, 7 3, 4, 5, 6