Download presentation
Presentation is loading. Please wait.
1
Welcome to the TACO Project Finding tree decompositions Hans L. Bodlaender Institute of Information and Computing Sciences Utrecht University
2
Finding tree decompositions 22-2-20022 Welcome to the TACO project Treewidth and Combinatorial Optimization Sponsored by NWO – EW Cooperation between –Department of Quantitative Economics, Maastricht University –Institute of Information and Computing Sciences, Utrecht University Two PhD students, one post-doc, several staff members Regular meetings Guests
3
Finding tree decompositions 22-2-20023 Focus Using treewidth and tree decompositions to solve problems from combinatorial optimization Finding treewidth and tree decompositions with help of techniques from combinatorial optimization
4
Finding tree decompositions 22-2-20024 This talk Historic Treewidth: definition How to determine the treewidth –NP-complete –Fixed parameter version –Special graphs –Approximation –Heuristics –Preprocessing
5
Finding tree decompositions 22-2-20025 Birth of treewidth 18** – 197*: problems that are hard in general can be solved efficiently on trees / series parallel graphs (Ohm, 198*: problems solvable on decomposable graphs (Bern, Lawler, Wong; Arnborg, Proskurowski; Wimer; Borie; Scheffler, Seese; Courcelle; Lautemann; ) –Arnborg and Proskurowski: Partial k-trees –Robertson and Seymour: treewidth (in their work on graph minors)
6
Finding tree decompositions 22-2-20026 Definition tree-decomposition A tree-decomposition of a graph G=(V,E) is a pair ({X(i)|i I}, T=(I,F)), such that –for all (v,w) E: there is an i I with v,w X(i) –for all v V: the set { i I | v X(i)} forms a connected subtree of T –for all v V: there is an i I with v X(i) Example: a bc d efg h a b bb ef f h efc c fg c gd
7
Finding tree decompositions 22-2-20027 Definition treewidth The width of a tree-decomposition ({X(i) | i I }, T=(I,F)) is. max { |X(i)| | i I } - 1. The treewidth of a graph is the minimum width over all possible tree-decomposition of that graph. In example: width of tree-decomposition and treewidth of graph are 2.
8
Finding tree decompositions 22-2-20028 Applications Graph minor theory (Robertson and Seymour) Many hard problems become linear time solvable when restricted to bounded treewidth –Optimization –Probabilistic networks –… VLSI-layouts Compilers Choleski factorization
9
Finding tree decompositions 22-2-20029 Recognition of treewidth Problem: Treewidth. Instance: Graph G=(V,E), integer k. Question: Is treewidth(G) k? Also: constructive variant: if so, build a tree- decomposition of width k. Theorem (Arnborg, Proskurowski): Treewidth is NP- complete. Even for: bipartite graphs, graphs of degree at most 9, …
10
Finding tree decompositions 22-2-200210 Fixed parameter variant Problem: Treewidth-k. Instance: Graph G. Question: Is the treewidth of G at most k? Arnborg, Courneil, Proskurowski 1987: O(n k+2 ). –Based upon this algorithm, experimental work by Shoiket and Geiger (1997). Robertson and Seymour with help of graph minors O(n 2 ): –Non-constructive algorithm! Improvements by Reed, Lagergren, Matousek and Thomas. Linear time algorithm, 1996; B, using a result with Kloks. –Big constant factor: (n) time… –Hein Röhrig: feasibility study (1998). For each fixed k For each fixed k
11
Finding tree decompositions 22-2-200211 Small values of k Treewidth 1: trees and forests Treewidth 2: generalization of series parallel graphs; O(n) time Treewidth 3: Arnborg, Corneil, Proskurowski; Matousek, Thomas: O(n) Treewidth 4: Sanders: O(n) Experiments (Bodlaender, Koster, vd Eijkhof, vd Gaag): treewidth 1, 2, 3 and other rules for preprocessing
12
Finding tree decompositions 22-2-200212 A linear time algorithm for constant k Step 1. –If v and w have k+2 common neighbors, then the treewidth of G is at most k, if and only if the treewidth of G+ {v,w} is at most k. –In this step, we add all such possible edges. Does not change the answer to the problem!
13
Finding tree decompositions 22-2-200213 Step 2 Remove all simplicial vertices of degree at most k. –Simplicial = all neighbors form a clique. Does not change the answer to the problem!
14
Finding tree decompositions 22-2-200214 Step 3 Take any maximal matching and contract these edges Lemma Steps 1 – 3 remove a linear number of vertices Lemma Steps 1 – 3 remove a linear number of vertices
15
Finding tree decompositions 22-2-200215 Step 4 Recursively solve the problem on the graph obtained in step 3 –Either we have that that graph has treewidth more than k: then the original graph also has treewidth more than k: STOP and output NO –Or we have a tree decomposition of the graph of step 3
16
Finding tree decompositions 22-2-200216 Step 5 Undo the contractions of step 3 The tree decomposition of step 4 can be modified such that sets at most double in size v w x … x v w …
17
Finding tree decompositions 22-2-200217 Step 6 and 7 Solve the problem with help of an algorithm of B and Kloks: –If we have a tree decomposition of width at most some constant r of a graph G, then for constant k, we can find in (n) time a tree decomposition of G of width at most k, or decide such a tree decomposition does not exist. Undo the removal of the simplicial vertices in step 2.
18
Finding tree decompositions 22-2-200218 Special graph classes Polynomial for: forests (1), chordal graphs, circular arc graphs, permutation graphs, distance hereditary graphs, … (many authors) NP-complete for: bipartite graphs, cobipartite graphs, graphs of degree at most 9, … (many authors) Open for: planar graphs
19
Finding tree decompositions 22-2-200219 Approximation Approximation algorithms that are exponential in k: Robertson, Seymour; Lagergren; Reed; Becker, Geiger, Amir: e.g. –Algorithm that uses O(f(k) n log n) time and either tells treewidth(G)>k, or finds tree decomposition of width at most 6k. Polynomial time algorithm with O(log n) approximation ratio (B,Gilbert,Hafsteinsson,Kloks, 1995). Polynomial time algorithm with O(log k) approximation ratio: Bouchitté, Kratsch, Müller, Todinca; Amir; k optimal treewidth (2001) Amir: 720 log k in O(n 3 log 4 n k 5 log k) time.
20
Finding tree decompositions 22-2-200220 Heuristics Heuristics based upon making triangulation (chordal supergraph): LBFS, Maximum cardinality search; or –Choose a vertex v according to some criterion –Turn v’s neighborhood into a clique –Triangulate rest of graph without v Kjærulff: simulated annealing Koster’s heuristic Other: Motte, fill-in, …
21
Finding tree decompositions 22-2-200221 Preprocessing Rules that `make the problem simpler without essentially changing the answer’: –Removal of simplicial vertices –Rules from treewidth 2, 3 (and 4??) –Almost simplicial vertex rule –Safe separators –Adding necessary edges
22
Finding tree decompositions 22-2-200222 Some conclusions Much work has been done on finding tree decompositions of small treewidth of given graphs, but: Theoretical results far outnumber experimental work Sometimes it is worthwhile to spend much time to find a good tree decomposition
23
Finding tree decompositions 22-2-200223 TACO: finding tree decompositions Using Integer Linear Programming formulations of treewidth Preprocessing techniques Branch and cut Adding constraints to ILP Lower bounds Relaxations (subsets of (I)LP constraints)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.