Download - Welcome to the TACO Project Finding tree decompositions

Transcript
Page 1: Welcome to the TACO Project Finding tree decompositions

Welcome to the TACO ProjectFinding tree decompositions

Hans L. Bodlaender

Institute of Information and Computing Sciences

Utrecht University

Page 2: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 2

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

Page 3: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 3

Focus

• Using treewidth and tree decompositions to solve problems from combinatorial optimization

• Finding treewidth and tree decompositions with help of techniques from combinatorial optimization

Page 4: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 4

This talk

• Historic• Treewidth: definition• How to determine the treewidth

– NP-complete– Fixed parameter version– Special graphs– Approximation– Heuristics– Preprocessing

Page 5: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 5

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)

Page 6: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 6

Definition tree-decomposition

• A tree-decomposition of a graph G=(V,E) is a pair ({X(i)|iI}, T=(I,F)), such that– for all (v,w)E: there is an i I with v,w X(i)– for all vV: 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 b c

de f g

h

ab

b be f

fh

e f cc

f gc

g d

Page 7: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 7

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.

Page 8: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 8

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

Page 9: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 9

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, …

Page 10: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 10

Fixed parameter variant

Problem: Treewidth-k.

Instance: Graph G.

Question: Is the treewidth of G at most k?• Arnborg, Courneil, Proskurowski 1987: O(nk+2).

– Based upon this algorithm, experimental work by Shoiket and Geiger (1997).

• Robertson and Seymour with help of graph minors O(n2):– 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 eachfixed k

For eachfixed k

Page 11: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 11

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

Page 12: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 12

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!

Does not change the answer to the problem!

Page 13: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 13

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!

Does not change the answer to the problem!

Page 14: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 14

Step 3

• Take any maximal matching and contract these edges

LemmaSteps 1 – 3 remove a linearnumber of vertices

LemmaSteps 1 – 3 remove a linearnumber of vertices

Page 15: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 15

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

Page 16: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 16

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

wx …

xv

w

Page 17: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 17

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.

Page 18: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 18

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

Page 19: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 19

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(n3 log4n k5 log k) time.

Page 20: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 20

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, …

Page 21: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 21

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

Page 22: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 22

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

Page 23: Welcome to the TACO Project Finding tree decompositions

Finding tree decompositions 22-2-2002 23

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)