Presentation is loading. Please wait.

Presentation is loading. Please wait.

Welcome to the TACO Project Finding tree decompositions Hans L. Bodlaender Institute of Information and Computing Sciences Utrecht University.

Similar presentations


Presentation on theme: "Welcome to the TACO Project Finding tree decompositions Hans L. Bodlaender Institute of Information and Computing Sciences Utrecht University."— Presentation transcript:

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)


Download ppt "Welcome to the TACO Project Finding tree decompositions Hans L. Bodlaender Institute of Information and Computing Sciences Utrecht University."

Similar presentations


Ads by Google