1 / 33

Computing Branchwidth via Efficient Triangulations and Blocks

Computing Branchwidth via Efficient Triangulations and Blocks. Authors: F.V. Fomin, F. Mazoit, I. Todinca Presented by: Elif Kolotoglu, ISE, Texas A&M University. Outline. Introduction Definitions Theorems Algorithm Conclusion. Introduction.

shona
Download Presentation

Computing Branchwidth via Efficient Triangulations and Blocks

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computing Branchwidth via Efficient Triangulations and Blocks Authors: F.V. Fomin, F. Mazoit, I. Todinca Presented by: Elif Kolotoglu, ISE, Texas A&M University

  2. Outline • Introduction • Definitions • Theorems • Algorithm • Conclusion

  3. Introduction • Proceedings of the 31st Workshop on Graph Theoretic Concepts in Computer Science (WG 2005), Springer LNCS vol. 3787, 2005, pp. 374-384 • An algorithm to compute the branchwidth of a graph on n vertices in time (2 + √3)n · nO(1) is presented • The best known was 4n · nO(1)

  4. Introduction • Branch decomposition and branchwidth were introduced by Robertson and Seymour in 1991 • Useful for solving NP-hard problems when the input is restricted to graphs of bounded branchwidth • Testing whether a general graph has branchwidth bounded by some integer k is NP-Complete (Seymour & Thomas 1994)

  5. Introduction • Branchwidth and branch decompositions are strongly related with treewidth and tree decompositions • For any graph G, bw(G) ≤ tw(G) + 1 ≤ Floor(3/2bw(G)) • But the algorithmic behaviors are not quite same

  6. Introduction • On planar graphs computing branchwidth is solvable in polynomial time while computing the treewidth in polynomial time is still an open problem • On split graphs computing branchwidth is NP hard, although it is linear time solvable to find the treewidth

  7. Introduction • Running times of exact algorithms for treewidth • O*(1.9601n) by Fomin, Kratsch, Todinca-2004 • O*(1.8899n) by Villanger-2006 • O*(4n) with polynomial space by Bodlaender, Fomin, Koster, Kratsch, Thilikos-2006 • O*(2.9512n) with polynomial space by Bodlaender, Fomin, Koster, Kratsch, Thilikos-2006

  8. Outline • Introduction • Definitions • Theorems • Algorithm • Conclusion

  9. Definitions • Let G = (V, E) be an undirected and simple graph with |V|=n, |E|=m and let T be a ternary tree with m leaves • Letηbe a bijection from the edges of G to the leaves of T • Then the pair(T, η)is called abranch decompositionof G. e a a d e d b c c b

  10. Definitions • The vertices of T will be called nodes, and the edges of T will be called branches • Removing a branch e from T partitions T into two subtrees T1(e) and T2(e). lab(e) is the set of vertices of G both incident to edges mapped on T1(e) and T2(e). e a a d e d b c c b

  11. Definitions • The maximum size over all lab(e) is the width of the branch decomposition (T, η) • Thebranchwidthof G, denoted byβ(G),is the minimum width over all branch decompositions of G • A branch decomposition of G with width equal to the branchwidth is anoptimal branch decomposition

  12. Example 6 8 1 2 6 5 0 8 7 4 7 3 3 5 4 2 4 8 3 6 5 0 2 1 7 1 0

  13. Definitions • A graph G is chordal if every cycle of G with at least 4 vertices has a chord(an edge between two non-consecutive vertices of a cycle) • A supergraph H=(V,F) of G=(V, E) (i.e. E is a subset of F) is a triangulation of G if H is chordal • If no strict subgraph of H is a triangulation of G, then H is called a minimal triangulation

  14. Definitions • For each x in V we can associate a subtree Tx covering all the leaves of the branch decomposition T that are corresponding to the incident edges of x • The intersection graph of the subtrees of a tree is chordal • The intersection graph of the subtrees Tx is a triangulation H(T, η) of G. • Lab(e) induces a clique in H

  15. Outline • Introduction • Definitions • Theorems • Algorithm • Conclusion

  16. Theorems • The basic result states that, for any graph G, there is an optimal branch decomposition (T, η) such that H(T, η) is an efficient triangulation of G • To compute the branchwidth, this result is combined with an exponential time algorithm computing the branchwidth of hyper-cliques

  17. Theorems • A triangulation H of G is efficient if • Each minimal separator of H is also a minimal separator of G; • For each minimal separator S of H the connected components of H-S are exactly the connected components of G-S

  18. Theorems • Theorem 1: There is an optimal branch decomposition (T, η) of G s.t. the chordal graph H(T, η) is an efficient triangulation of G. Moreover, each minimal separator of H is the label of some branch of T.

  19. Theorems • A set of vertices B in V of G is called a block if, for each connected component Ci of G-B, • its neighborhood Si=N(Ci) is a minimal separator • B\Si is non empty and contained in a connected component of G-Si Si B Ci

  20. Theorems • The minimal separators Si border the block B and the set of these minimal separators are denoted by S(B) • The set of blocks of G is denoted by BG

  21. Theorems • Lemma 1&2: If H is an efficient triangulation of G, then any maximal clique K of H is a block of G, and for any block B of G, there is an efficient triangulation H(B) of G s.t. B induces a maximal clique in H

  22. Theorems • Let B be a block of G and K(B) be the complete graph with vertex set B. A branch decomposition (TB,ηB) of K(B) respects the block B if, for each bordering minimal separator S in S(B), there is a branch e of the decomposition s.t. S is a subset of lab(e). The block branchwidth bbw(B) of B is the minimum width over all the branch decompositions of K(B) respecting B

  23. Theorems • Theorem 2: • Theorem 4: Given a graph G and the list BG of all its blocks together with their block-branchwidth, the branchwidth of G can be computed in O(nm|B(G)|) time

  24. Theorems • n(B): # of vertices of block B • s(B): # of minimal separators bordering B • Theorem 5: The block-branchwidth of any block B can be computed in O*(3s(B)) time • Theorem 6: The block-branchwidth of any block B can be computed in O*(3n(B)) time

  25. Theorems • s(B) is at most the # of components of G-B, so n(B)+s(B)≤n • At least one s(B) or n(B) ≤ n/2, then • Theorem 7: For any block B of G, the block-branchwidth of B can be computed in O*(√3n) time

  26. Thorems • Theorem 8: The branchwidth of a graph can be computed in O*((2+√3)n) time • Pf: Every subset B of V is checked (in polynomial time) if it is a block or not. The block-branchwidth is computed for each block. The number of blocks is at most 2n) and for each block O*(√3n) time is needed. And the branchwidth is computed using Theorem 4 in O*(2n) time.

  27. Outline • Introduction • Definitions • Theorems • Algorithm • Conclusion

  28. Algorithm • Given a minimal separator S of G and a connected component C of G-S, R(S,C) denotes the hypergraph obtained from G[SUC] by adding the hyperedge S. S C

  29. Algorithm • Input: G, all its blocks and all its minimal separators • Output: bw(G) • Compute all the pairs {S,C} where S is a minimal separator and C a component of G-S with S=N(C); sort them by the size of SUC • for each {S,C} taken in increasing order • bw(R(S,C))=bbw(SUC) • for each block Ω with • compute the components Ci of G-Ω contained in C and let Si=N(Ci) • let ∆*G be the set of inclusion minimal separators of G • bw(G)=

  30. Outline • Introduction • Definitions • Theorems • Algorithm • Conclusion

  31. Conclusion • Enumerating the blocks in a graph and finding the block-branchwidth of the blocks leads to a O*((2+√3)n) time algorithm for the branchwidth problem • This is the best algorithm for branchwidth problem

  32. Conclusion • Open problems for future research: • Is there a faster way of computing block branchwidth? • Can we find any smaller class of triangulations (compared to efficient triangulations) that contains H(T, η), for some optimal branch decompositions of the graph?

More Related