Download presentation
Presentation is loading. Please wait.
Published byLaureen McKenzie Modified over 9 years ago
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 · n O(1) is presented The best known was 4 n · n O(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/2 bw(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.9601 n ) by Fomin, Kratsch, Todinca-2004 O*(1.8899 n ) by Villanger-2006 O*(4 n ) with polynomial space by Bodlaender, Fomin, Koster, Kratsch, Thilikos-2006 O*(2.9512 n ) 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 a branch decomposition of G. a b c d e a b e c d
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 T 1 (e) and T 2 (e). lab(e) is the set of vertices of G both incident to edges mapped on T 1 (e) and T 2 (e). a b c d e a b e c d
11
Definitions The maximum size over all lab(e) is the width of the branch decomposition (T, η) The branchwidth of 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 an optimal branch decomposition
12
Example 1 8 7 6 5 4 3 2 0 7 5 63842 1 0 0 1 2 45 7 3 86
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 T x 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 T x 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 C i of G-B, its neighborhood S i =N(C i ) is a minimal separator B\S i is non empty and contained in a connected component of G-S i B CiCi SiSi
20
Theorems The minimal separators S i 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 B G
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 (T B, η 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 B G 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*(3 s(B) ) time Theorem 6: The block-branchwidth of any block B can be computed in O*(3 n(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*(√3 n ) 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 2 n ) and for each block O*(√3 n ) time is needed. And the branchwidth is computed using Theorem 4 in O*(2 n ) 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. C S
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 C i of G-Ω contained in C and let S i =N(C i ) 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?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.