Treewidth: Preprocessing and Kernelization

Similar documents
Algorithm Graph Theory: How hard is your combinatorial optimization problem?

Preprocessing for treewidth

Necessary edges in k-chordalizations of graphs

Weighted Treewidth: Algorithmic Techniques and Results

On exact algorithms for treewidth

Vertex Cover is Fixed-Parameter Tractable

On Exploring Temporal Graphs of Small Pathwidth

FEDOR V. FOMIN. Lectures on treewidth. The Parameterized Complexity Summer School 1-3 September 2017 Vienna, Austria

Faster parameterized algorithms for Minimum Fill-In

A Branch and Bound Algorithm for Exact, Upper, and Lower Bounds on Treewidth

Faster parameterized algorithms for Minimum Fill-In

Treewidth. Kai Wang, Zheng Lu, and John Hicks. April 1 st, 2015

On Structural Parameterizations of the Matching Cut Problem

A Complete Anytime Algorithm for Treewidth

Treewidth and graph minors

Pre-processing for Triangulation of Probabilistic Networks

An Effective Upperbound on Treewidth Using Partial Fill-in of Separators

New Upper Bound Heuristics for Treewidth

Pre-processing for Triangulation of Probabilistic Networks

Chordal deletion is fixed-parameter tractable

Kernelization Upper Bounds for Parameterized Graph Coloring Problems

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

Fixed-Parameter Tractability Results for Full-Degree Spanning Tree and Its Dual

On Bounded-Degree Vertex Deletion Parameterized by Treewidth

Graph Editing to a Given Degree Sequence,

Common Induced Subgraph Isomorphism Structural Parameterizations and Exact Algorithms

W[1]-hardness. Dániel Marx. Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017

Tree Decompositions, Treewidth, and NP-Hard Problems. A Survey Paper on Recent Findings in the Field. Gerrod Voigt

Solving Dominating Set in Larger Classes of Graphs: FPT Algorithms and Polynomial Kernels

Fixed-Parameter Algorithms, IA166

Recent Advances in FPT and Exact Algorithms for NP-Complete Problems

Treewidth: Computational Experiments

Chordal deletion is fixed-parameter tractable

Improved Algorithms and Complexity Results for Power Domination in Graphs

Parameterized graph separation problems

arxiv: v3 [cs.ds] 26 Sep 2013

PLANAR GRAPH BIPARTIZATION IN LINEAR TIME

Optimization Problems in Dotted Interval Graphs

arxiv: v1 [cs.ds] 19 Feb 2014

9. Parameter Treewidth

Fixed-Parameter Algorithms

Graphs and Discrete Structures

arxiv: v1 [cs.ds] 8 Jan 2019

Fixed Parameter Algorithms

Exact Algorithms Lecture 7: FPT Hardness and the ETH

A faster parameterized algorithm for PSEUDOFOREST DELETION Bodlaender, H.L.; Ono, H.; Otachi, Y.

Finding a -regular Supergraph of Minimum Order

Algorithmic graph structure theory

Extremal Graph Theory. Ajit A. Diwan Department of Computer Science and Engineering, I. I. T. Bombay.

Lift Contractions. Petr Golovach 1 Marcin Kamiński 2 Daniël Paulusma 1 Dimitrios Thilikos 3. 1 September 2011

W[1]-hardness. Dániel Marx 1. Hungarian Academy of Sciences (MTA SZTAKI) Budapest, Hungary

A Linear Vertex Kernel for Maximum Internal Spanning Tree

Coloring edges and vertices of graphs without short or long cycles

APPROXIMATION ALGORITHMS FOR TREEWIDTH. Keywords: Treewidth, Triangulation, Tree Decomposition, Network Flow.

Parameterized Reductions

Fixed-parameter tractable canonization and isomorphism test for graphs of bounded treewidth

COLORING EDGES AND VERTICES OF GRAPHS WITHOUT SHORT OR LONG CYCLES

Parameterized Complexity - an Overview

Discrete Applied Mathematics. On Bounded-Degree Vertex Deletion parameterized by treewidth

The Square Root Phenomenon in Planar Graphs

arxiv: v1 [cs.lo] 28 Sep 2015

Exponential time algorithms for the minimum dominating set problem on some graph classes

A Framework for Network Reliability Problems on Graphs of Bounded Treewidth

REU Problems of the Czech Group

Recognizability Equals Definability for Graphs of Bounded Treewidth and Bounded Chordality

Contracting a chordal graph to a split graph or a tree

NP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch]

Parameterized Algorithm for Eternal Vertex Cover

A single-exponential FPT algorithm for Distance-Hereditary Vertex Deletion

arxiv: v5 [cs.cc] 28 Oct 2010

Contracting graphs to paths and trees

Kernelization for Maximum Leaf Spanning Tree with Positive Vertex Weights

KERNELIZATION. Polynomial time preprocessing - data reduction

Faces in the Crowd: On the Algorithmic Utility of Disks and Covers

A Faster Parameterized Algorithm for Pseudoforest Deletion

On the Complexity of Various Parameterizations of Common Induced Subgraph Isomorphism

PROBLEM SOLVING AND SEARCH IN ARTIFICIAL INTELLIGENCE

Improved Algorithms and Complexity Results for Power Domination in Graphs

9 About Intersection Graphs

Vertex 3-colorability of claw-free graphs

The Method of Extremal Structure on the k-maximum CUT Problem

Approximation algorithms for Euler genus and related problems

Important separators and parameterized algorithms

An exact characterization of tractable demand patterns for maximum disjoint path problems

Combinatorial Optimization on Graphs of Bounded Treewidth

On Covering a Graph Optimally with Induced Subgraphs

Colouring graphs with no odd holes

Embedded Width, A Variation of Treewidth for Planar Graphs

FPT Algorithms Msc Thesis

Discrete Applied Mathematics

Computing Linkless and Flat Embeddings of Graphs in R 3

Let G = (V, E) be a graph. If u, v V, then u is adjacent to v if {u, v} E. We also use the notation u v to denote that u is adjacent to v.

Exact Algorithms for Graph Homomorphisms

The Graph Motif problem parameterized by the structure of the input graph

arxiv: v1 [cs.dm] 21 Dec 2015

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Algorithms For Inference Fall 2014

These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models.

arxiv: v5 [cs.dm] 9 May 2016

INTEGER PROGRAMMING MODELS FOR THE BRANCHWIDTH PROBLEM. A Dissertation ELIF ULUSAL

Key words. Parameterized complexity, clique-width, tree-width, chromatic number, edge domination,

Transcription:

Treewidth: Preprocessing and Kernelization Hans L. Bodlaender Joint work with Arie Koster, Frank van den Eijkhof, Bart Jansen, Stefan Kratsch, Vincent Kreuzen 1

This talk Survey of work on preprocessing and kernelization for treewidth 1. Treewidth 2. Reduction rules 3. Safe separators 4. Kernelization 5. Conclusions 2

1 TREEWIDTH 3

Treewidth Graph parameter telling how treelike a graph is Introduced by Robertson & Seymour (198*) in work on graph minors Several equivalent notions Many applications Intractable problems often easier when restricted to graphs of bounded treewidth, e.g.: Courcelle s theorem: Each problem formulatable in Monadic Second Order Logic can be solved in linear time on graphs of bounded treewidth Probabilistic networks: linear time algorithm for inference problem on graphs of bounded treewidth 4

Treewidth A tree decomposition of a graph G is a tree in which each node corresponds to a set of vertices from G (a bag) with: Every vertex of G occurs in some bag. For every edge of G there is a bag containing both endpoints. All bags containing the same vertex form a connected subtree. b d a a a g h b c f a g g h c f a b c d c f e f d g h c e e The treewidth of a tree-decomposition is the size of the largest bag minus one. 5

Lemmas If W is a clique, then in any tree decomposition, there is a bag that contains all vertices in W If G is obtained from G by contracting edges, then the treewidth of G is at most the treewidth of G 6

Algorithms on tree decompositions Usual form: 1. Find a tree decomposition of small width 2. Run a dynamic programming algorithm on the tree decomposition Time of step 2 is (usually) exponential (or worse) in the width of the tree decomposition So, need for algorithms to determine treewidth and find tree decompositions of small width 7

Complexity of treewidth NP-complete B, 1997: For each fixed k, there is a linear time algorithm to test if the treewidth of a given graph is at most k, and if so, find a corresponding tree decomposition O(n) = (n) time... (Röhrig, 1998; even if k=4) and many many more results Practical algorithms... Heuristics Fast(er) exact algorithms Preprocessing Transform your input to a smaller equivalent input 8

Two types of preprocessing Reduction rules (Simplification) Rules that change G into a smaller `equivalent graph Maintains a lower bound variable for treewidth low Safe separators (Divide and Conquer) Splits the graph into two or more smaller parts with help of a separator that is made to a clique 9

2 REDUCTION RULES 10

Reduction Input Graph G Compute Treewidth for G Preprocessing rules Reduced Graph H Compute Treewidth for H Tree decomposition for G Undo preprocessing Tree decomposition for H Safe rules that Make G smaller Maintain optimality Use for preprocessing graphs when computing treewidth 11

Reduction rules Help of a variable low low gives lower bound on treewidth of original input graph Safe rule: if (G,low) is changed to (G,low ) then max (treewidth(g), low) = max (treewidth(g,low )) Algorithm: while we see a safe rule to apply (that simplifies instance) do Apply it 12

Reduction rules for Treewidth Arnborg, Proskurowski, 1986: Rules that recognize graphs of treewidth 1, 2, 3 Bodlaender, Koster, vd Eijkhof, 2005: Preprocessing heuristics for treewidth vd Eijkhof, Bodlaender, Koster, 2007: Generalization and weighted variants Sanders, 1996: Rules for treewidth 4 Hein, Koster, 2011: Experimental evaluation of Sanders rules Bodlaender, Jansen, Kratsch, 2011: New rules and kernelization Kreuzen, 2011: Experimental evaluation of new rules 13

Example: Series Rule (from Arnborg, Proskurowski, 1986) Series Rule: remove a vertex of degree 2 and connect its neighbors Safe if treewidth is at least 2 (low > 1) Series Rule v Original Graph Reduced Graph 14

Example a b a b a b a b c c e f e f e f e f d g g g Reduce Solve c b f c f d a b e f c b f Undo reductions a b e f a b e f a b e f 15 e g f e g f e g f

Simplicial and almost simplicial vertices A vertex is simplicial if its neighbors form a clique A vertex v is almost simplicial if v has a neighbor w such that all neighbors except w form a clique v v is simplicial v v is almost simplicial 16

Simplicial Rule Let v be a simplicial vertex in G Remove v Set low := max (low, degree(v)) Simplicial Rule Original Graph Reduced Graph v Simplicial Rule is safe Special cases: all vertices of degree 0 and 1 17

Almost Simplicial Rule (2005 version) Let v be a almost simplicial vertex in G and low degree(v) Remove v Turn neighbors into clique Almost Simplicial Rule Reduced Graph v Original Graph Almost Simplicial Rule is safe 18

Proof of safeness of Almost Simplicial Rule Suppose G is obtained from G G is obtained from G by contracting, so treewidth(g ) is at most treewidth(g) If we have tree decomposition of G : N(v) is a clique, so there is a bag containing N(v) N(v) v N(v) N(v) Add a new bag as shown New bag has size degree(v)+1 low+1 19

Buddy Rule Let v,w be a buddy in G and low 3 Remove v,w. Turn neighbors into clique Buddy Rule Buddy = Two vertices with same 3 neighbors v w Original Graph Reduced Graph Safe; generalizations exist 20

(Extended) Cube Rule Let low 3 and cube structure (see picture) Replace subgraph as shown Safe. Not often in practice but helps to increase lower bound Extended Cube Rule Original Graph Reduced Graph 21

Lower bound rules Rules that increase low E.g., if no rule applies and low=3, then set low:=4 Or run a lower bound heuristic 22

Results for probabilistic networks original preprocessed original preprocessed instance V E V E low instance V E V E low alarm 37 65 0 0 4 oesoca+ 67 208 14 75 9 barley 48 126 26 78 4 oesoca 39 67 0 0 3 boblo 221 328 0 0 3 oesoca42 42 72 0 0 3 diabetes 413 819 116 276 4 oow-bas 27 54 0 0 4 link 724 1738 308 1158 4 oow-solo 40 87 27 63 4 mildew 35 80 0 0 4 oow-trad 33 72 23 54 4 munin1 189 366 66 188 4 pignet2 3032 7264 1002 3730 4 munin2 1003 1662 165 451 4 pigs 441 806 48 137 4 munin3 1044 1745 96 313 4 ship-ship 50 114 24 65 4 munin4 1041 1843 215 642 4 vsd 38 62 0 0 4 munin-kgo 1066 1730 0 0 5 water 32 123 22 96 5 wilson 21 27 0 0 3 Some cases could be solved with preprocessing to optimality Often substantial reductions obtained Time needed for preprocessing was small (never more than a few seconds) 23

4 SAFE SEPARATORS 24

Safe separators A set of vertices S is a safe separator if and only if The treewidth of G equals the maximum over the treewidth of all graphs obtained by Taking a connected component W of G -S Take the graph, induced by W S Make S into a clique in that graph + Original Graph Components 25 25

Use of safe separators Split the graph with safe separators (making the separator to a clique) Until no safe separators can be found Solve each component separately Treewidth is maximum of treewidths of components Also possible to construct tree decomposition of input graph Some sufficient conditions for separators to be safe 26

What separators are safe? Clique separators (several authors) Minimal almost clique separators (B, Koster, 2006) S is a minimal separator: it has no separator as a proper subset S is almost a clique: there is a vertex v with S-{v} is a clique All minimal separators of size 1 and 2 (corollary) All minimal separators of size 3 that split off more than one vertex (BK) 27

Safeness of minimal almost clique separators If one component is contracted to the red vertex, the separator turns into a clique So, the treewidth of the components is at most the treewidth of G We can combine tree decompositions of the components to one of G (example on next slide) Treewidth(G) equals maximum of treewidth components 28

+ + 29

Safe separators: Results for probabilistic networks size separators output almostclique instance V E clique size 3 # graphs # cliques # To Do low barley-pp 26 78 0 7 0 8 7 1 5 diabetes-pp 116 276 0 85 0 86 84 2 4 link-pp 308 1158 0 0 0 1 0 1 4 munin1-pp 66 188 0 2 0 3 2 1 4 munin2-pp 165 451 6 13 4 24 12 12 4 munin3-pp 96 313 2 2 2 7 4 3 4 munin4-pp 215 642 3 4 0 8 2 6 4 oesoca+-pp 14 75 0 0 0 1 0 1 9 oow-trad-pp 23 54 0 0 1 2 1 1 4 oow-solo-pp 27 63 0 0 1 2 0 2 4 pathfinder-pp 12 43 0 5 0 6 6 0 6 pignet2-pp 1002 3730 0 0 0 1 0 1 4 pigs-pp 48 137 0 1 0 2 1 1 5 ship-ship-pp 24 65 0 0 0 1 0 1 4 water-pp 22 96 0 1 0 2 1 1 6 30

4 KERNELIZATION 31

Bounds on reduced instance sizes? Preprocessing + a proof on quality (size of resulting instances) What we cannot expect: always decrease input size Lemma. If P NP, then for any NP-complete problem Q there is no polynomial time algorithm that always transforms an input of Q to a smaller equivalent input Proof: Otherwise, repeat till O(1) size input, and solve. Kernelization: bounds as a function of a parameter of the input 32

Kernels A parameterized problem is a subset of S* x N for some finite alphabet S. A parameterized problem Q is said to have a kernel of size f(k) if there is an algorithm A, mapping inputs of Q to inputs of Q with A uses time polynomial in x +k on input (x,k) For all inputs (x,k): Q((x,k)) if and only if Q(A(x,k)) If A maps (x,k) to (x, k ) then x f(k) k' f(k) From fixed parameter tractability (Downey, Fellows) Intuition: bound f(k) with polynomial time preprocessing 33

Negative result B, Downey, Fellows, Hermelin (2008) Treewidth has no kernel of polynomial size unless the anddistillation conjecture does not hold. Treewidth Given: Graph G=(V,E), integer k Parameter: k Question: Is the treewidth of G at most k Next: other parameters 34

Kernels for treewidth with other parameters Treewidth with Given Vertex Cover Given: Graph G=(V,E), integer k, vertex cover W of G Parameter: W = l Question: Is the treewidth of G at most k? If we do not have a vertex cover: use a 2-approximation algorithm to find one (affects constant factor) B, Jansen, Kratsch, 2011: A kernel with O(k 3 ) vertices for Treewidth with Given Vertex Cover 35

First two rules Simplicial Vertex Rule variant: If v is a simplicial vertex of degree at most k, then remove v If v is a simplicial vertex of degree more than k, then say no the treewidth of G is at most k+1 Trivial Decision Rule: If W k, then say yes A simple construction of treewidth at most W exists 36

Common Neighbors Rule Taken from linear time algorithm B, 1997 Safe rule Common Neighbors Rule If x and y are in W, and x and y have at least k+1 common neighbors, then add the edge {x,y} x y W x y W 37

Kernelization algorithm and bound The algorithm: while a rule can be applied do apply it Theorem: The reduced graph has W 2 k = O(k 3 ) vertices. Proof: Each vertex v in V -W is not simplicial, so has two nonadjacent neighbors, which must be in W. Assign v to such a pair. Each nonadjacent pair of vertices in W has at most k vertices assigned to it, otherwise the common neighbor rule applies. 38

Feedback vertex set parameter and almost simplicial vertices Theorem (B, Jansen, Kratsch, 2011): Treewidth with a Given Feedback Vertex Set has a kernel with O(k 4 ) vertices. Feedback vertex set: a set of vertices W such that G[V-W] is a forest A leaf in the forest that is not almost simplicial has two non-adjacent neighbors in W Motivates to remove almost simplicial vertices W = almost simplicial 39

New Almost Simplicial Vertex Rule Test can be carried out in polynomial time New Almost Simplicial Vertex Rule If v is an almost simplicial vertex, then If the degree of v is at most k then make the neighbors of v into a clique and remove v Same as old rule If the degree of v is at least k+2 then say no G has a clique of size k+2 so treewidth is larger than k If the degree of v is exactly k+1 then 1. If for each pair of neighbors x, y of w we have that {x,y} E or there is a path from x to y that avoids N[v], then say no 2. Otherwise, make the neighbors of v into a clique and remove v Rule that removes all (regardless of degree) simplicial vertices 40

Experimental evaluation New almost simplicial vertex rule can be changed into preprocessing step Instead of saying no, increase the lower bound by one Eventually, all almost simplicial vertices are removed Also, common neighbors rule and generalization (disjoint paths, implemented with flow / Ford-Fulkerson) were implemented Work fall 2011, Kreuzen, (B, Kratsch) 41

Experiments and first results Experiment 1: use the New Almost Simplicial Vertex Rule on 570 graphs from our usual test set (all graphs except a few very large ones) On 116 instances, additional reductions with the new rule could be applied Additional reductions ranged from 1 vertex to all vertices of graph Running time was somewhat larger, up to 1.7 seconds for 645 vertex graph initx.1.2, but still good Experiment 2: experiment 1 + Common Neighbors and Disjoint Paths Rule Sometimes slow (worst case O(n 7 )) but still practical Further reductions obtained Adding edges to graph actually is good! 42

Some results of experiment 1 graph V E Old V Old E Old low New V New E barley 48 126 26 78 4 25 76 5 celar04 340 1009 114 524 6 105 476 8 miles500 128 1170 103 1068 8 79 827 22 zeroin.i.2 211 3541 157 3541 4 57 1097 31 New low 43

Ongoing work Better implementation for experiment 2 (mixing rules to speedup) Random graphs More test data General conclusion: the new rules help in practice to obtain further reductions! 44

5 CONCLUSIONS 45

Conclusions This talk: Preprocessing heuristics for treewidth: reductions and separators Kernels for treewidth Vertex cover result only used existing rules + a counting argument Feedback vertex set result uses generalization of almost simplicial vertex rule to bound number of leaves in forest + new rules + counting argument Interaction between (algorithmic) graph theory and experimental work Ongoing work: kernels for pathwidth (B, Jansen, Kratsch) 46