applications of treewidth in algorithm design

55
Applications of Treewidth in Algorithm Design Daniel Lokshtanov Based on joint work with Hans Bodlaender ,Fedor Fomin,Eelko Penninkx, Venkatesh Raman, Saket Saurabh and Dimitrios Thilikos

Upload: river

Post on 23-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Applications of Treewidth in Algorithm Design. Daniel Lokshtanov Based on joint work with Hans Bodlaender ,Fedor Fomin,Eelko Penninkx, Venkatesh Raman, Saket Saurabh and Dimitrios Thilikos. Background. Most interesting graph problems are NP-hard on general graphs. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Applications of Treewidth in Algorithm Design

Applications of Treewidth in Algorithm Design

Daniel LokshtanovBased on joint work with Hans Bodlaender ,Fedor

Fomin,Eelko Penninkx, Venkatesh Raman, Saket Saurabh and Dimitrios Thilikos

Page 2: Applications of Treewidth in Algorithm Design

Background

Most interesting graph problems are NP-hard on general graphs.

Often input graphs are planar or almost planar. Can this be used to give efficient algorithms?

Most interesting graph problems remain NP-hard on planar graphs.

Page 3: Applications of Treewidth in Algorithm Design

Are planar graphs as hard as general graphs?

On planar graphs many problems admit:- Faster exact algorithms.- Faster parameterized algorithms.- Good preprocessing rules (kernels).- Better approximation algorithms.

Page 4: Applications of Treewidth in Algorithm Design

Case Study: Dominating Set

General Graphs Planar Graphs

Exact Algorithm 1.49n 2O(n1/2)

Parameterized Complexity W[2]-complete 2O(k1/2)

Kernel W[2]-complete O(k)

Approximation log(n) 1+ε

Page 5: Applications of Treewidth in Algorithm Design

Bidimensionality [DFHT]

A framework that gives fast exact algorithms, paramterized algorithms, kernels and approximation schemes for problems on planar graphs.

Main tool: Graph Minors theory of Robertson and Seymour.

Extends to larger classes of graphs. Here; only planar graphs.

Page 6: Applications of Treewidth in Algorithm Design

Preliminaries

Page 7: Applications of Treewidth in Algorithm Design

Problems considered

Input: GMax / Min: κ(G,S) (S V(G) / S E(G))⊆ ⊆Subject to: φ(G,S)

Technical note: we demand that κ(G,S) ≤ |S| and that κ(G,OPT) = |OPT|.

Value of optimal solution on G = π(G).

Page 8: Applications of Treewidth in Algorithm Design

Minors and Contractions

H is a minor of G (H ≤m G)if H can be obtained from G by a sequence of edge contractions, edge deletions and vertex deletions.

H is a contraction of G (H ≤c G) if H can be obtained from G by a sequence of edge contractions.

Page 9: Applications of Treewidth in Algorithm Design

grids and Γammas

g4 Γ4

Page 10: Applications of Treewidth in Algorithm Design

Bidimensionality

A problem Π is (minor)-bidimensional if:– If H ≤m G then π(H) ≤ π(G).

– There is a constant c such that π(gt) ≥ ct2.

A problem Π is contraction-bidimensional if:– If H ≤c G then π(H) ≤ π(G).

– There is a constant c such that π(Γt) ≥ ct2.

Page 11: Applications of Treewidth in Algorithm Design

Examples of Bidimensional problems

• Vertex Cover, Feedback Vertex Set, Longest Path and Cycle Packing are minor-bidimensional.

• Dominating Set, Connected Vertex Cover and Independent Set are contraction-bidimensional.

Page 12: Applications of Treewidth in Algorithm Design

Facts about Treewidth

1. Many graph probems can be solved in 2O(tw(G))n time.2. If H ≤m G then tw(H) ≤ tw(G).3. The treewidth of gk is k.4. Every graph G has a balanced separator of size tw(G).5. On planar graphs, treewidth is constant factor

approximable.

Page 13: Applications of Treewidth in Algorithm Design

Excluded Grid Theorem

Theorem [RS]: Every planar graph G contains g(1/6)*tw(G) as a minor.

Page 14: Applications of Treewidth in Algorithm Design

Excluded Γamma Theorem

Theorem [FGT]: There exists a constant c such that every planar graph G contains Γc*tw(G) as a contraction.

Page 15: Applications of Treewidth in Algorithm Design

Subexponential Parameterized Algorithms

Page 16: Applications of Treewidth in Algorithm Design

Parameter-treewidth bound

Lemma [Parameter-treewidth bound]: For every bidimensional problem Π there is a constant c such that for any planar graph G, tw(G) ≤ cπ(G)1/2

Proof: By excluded grid theorem, gc*tw(G) ≤m G. Since Π is bidimensional, π(gc*tw(G)) ≥ c’tw(G)2. Since Π is minor closed, π(G) ≥ c’tw(G)2.

Page 17: Applications of Treewidth in Algorithm Design

Algorithm on planar graphs

Constant-factor approximate treewidth. Output a decomposition of width t = O(π(G)1/2).

Solve problem in 2O(t)n (or tO(t)n) time. Total time taken is 2π(G)1/2n (or π(G)π(G)1/2n).

Page 18: Applications of Treewidth in Algorithm Design

More general graph classes

Note: The only place we used planarity was for the excluded grid theorem. So results hold on H-minor-free graphs for minor-bidimensional problems and apex-minor-free graphs for contraction-bidimensional problems.

Page 19: Applications of Treewidth in Algorithm Design

Exercise 1:

Prove: For any fixed d, if G is planar and has a set X such that tw(G \ X) ≤ d then tw(G) ≤ d + O(|X|1/2).

Soln: Vertex deletion into treewidth d graphs is minor closed and at least (t/(d+1))2 on gt grids.

Page 20: Applications of Treewidth in Algorithm Design

Approximation

Page 21: Applications of Treewidth in Algorithm Design

Separability

Want: EPTASes for all bidimensional problems on planar graphs.

Can’t handle Longest Path. Parameter-treeewidth bound is not enough, but ”almost enough”.

(1+ε)-approximation in f(ε)poly(n) time.

Page 22: Applications of Treewidth in Algorithm Design

Separability

A problem Π is separable* if for any partition of V(G) into L, S, R such that there is no edge from L to R, and optimal solution OPT V(G)⊆ :

- π(G \ R) ≤ κ(G \ R, OPT \ R) + O(|S|)- π(G \ L) ≤ κ(G \ L, OPT \ L) + O(|S|)

*For contraction-bidimensional problems a slightly different definition is used.

Think ”OPT of left hand side”

Page 23: Applications of Treewidth in Algorithm Design

Excercise 2

Show that Vertex Cover is separable.

Solution: OPT \ R is a feasible solution for G[L ∪S]. Hence π(G \ R) ≤ |OPT \ R|.

Page 24: Applications of Treewidth in Algorithm Design

Exercise 3:

Show that Independent Set is separable.

Solution: Let OPT be a maximum independent set of G. Suppose π(G \ R) > |OPT \ R| + |S|. Then π(G[L]) > |OPT \ R| Then G has an independent set of size: π(G[L]) + |OPT ∩ R| > |OPT \ R| + |OPT ∩ R| =|OPT|.

Page 25: Applications of Treewidth in Algorithm Design

Decomposition Theorem

Theorem: For any minor-bidimensional, separable problem Π on planar graphs, there is a function f : N N and polynomial time algorithm that given G and ε > 0 outputs a set X such that

- |X| ≤ επ(G) - tw(G \ X) ≤ f(ε).

Page 26: Applications of Treewidth in Algorithm Design

Exercise 4:

Assume Feedback Vertex Set (FVS) is minor-bidimensional,and separable. Give an EPTAS for FVS on planar graphs using the decomposition theorem.

Solution: For a fixed ε and given G find X. Solve FVS optimally on G \ X in g(ε)n time. Add X to the solution. Solution size ≤ (1+ε)π(G).

Page 27: Applications of Treewidth in Algorithm Design

Decomposition’ Theorem

Theorem: For any contraction-bidimensional, separable problem Π on planar graphs, there is a function f : N N and polynomial time algorithm that given G and ε > 0 outputs a set X such that

- |X| ≤ επ(G) - tw(G \ X) ≤ f(ε).

Page 28: Applications of Treewidth in Algorithm Design

Example

Dominating Set (DS) is contraction-bidimensional,and separable. Thus it has an EPTAS for on planar graphs.

Proof: For a fixed ε and given G find X using decomposition’. Mark N(X). Find a smallest set S in G\X that dominates all unmarked vertices of G\X. Now S X ∪ is a DS of G of size ≤ (1+ε)π(G).

Page 29: Applications of Treewidth in Algorithm Design

Remainder of talk:Proof Sketch of Decomposition Theorem

Page 30: Applications of Treewidth in Algorithm Design

Balanced Separator Lemma

For any graph G of treewidth t and vertex set X there is a partition of V(G) into L, S, R such that:

- There is no edge between L and R- The separator S is small; |S| ≤ t+1.- The separator is balanced;

|X ∩ L| ≤ 2|X|/3 and |X ∩ R| ≤ 2|X|/3

Page 31: Applications of Treewidth in Algorithm Design

Weak, Non-constructive, Decomposition Theorem

WNDT: For any minor-bidimensional, separable problem Π on planar graphs, there exists a constant c such that any instance G has a vertex set X such that

- |X| ≤ cπ(G) - tw(G \ X) ≤ c.

Page 32: Applications of Treewidth in Algorithm Design

WNDT Proof

1. By parameter-treewidth bound, there is a constant d such that tw(G) ≤ dπ(G)1/2.

2. Let T(k) be the smallest number t such that any planar graph G with π(G) = k contains a set X of size t such that tw(G \ X) ≤ d.

3. Need to prove T(k) = O(k).4. Base Case: T(1) = 0 since tw(G) ≤ dπ(G)1/2 ≤ d.

Page 33: Applications of Treewidth in Algorithm Design

WNDT recurrence

Let Z be an optimal solution in G, then k=|Z|=π(G).

Now, tw(G) ≤ dk1/2.

Balanced Separator Lemma applied to G,Z yields decomposition of V(G) into (L, S, R) such that |S|≤ dk1/2 , L ∩ Z ≤ 2|Z|/3, R ∩ Z ≤ 2|Z|/3.

Page 34: Applications of Treewidth in Algorithm Design

WNDT recurrence

Since Π is separable: π(G \ R) ≤ κ(G \ R, Z \ R) + O(k1/2) ≤ |Z\R|+ O(k1/2)

G\R has a set XL of size T(|Z\R|+ O(k1/2) ) such that tw((G\R)\XL) ≤ d.

G\L has a set XR of size T(|Z\L|+ O(k1/2) ) such that tw((G\L)\XR) ≤ d.

Page 35: Applications of Treewidth in Algorithm Design

WNDT recurrence

X = XL X∪ R S∪ is a set of size T(|Z\R|+ O(k1/2) ) + T(|Z\L|+ O(k1/2) ) + O(k1/2) such that tw(G \ X) ≤ d.

Observe: |Z\R| + |Z\L| ≤ |Z| + |S|.

Page 36: Applications of Treewidth in Algorithm Design

WNDT recurrence

T(k) ≤ T( k + O(k⍺ 1/2)) + T((1- )k + O(k⍺ 1/2)) + O(k1/2)...where 1/3 ≤ ≤ 2/3⍺ .

This solves to T(k) = O(k).

Page 37: Applications of Treewidth in Algorithm Design

Breathe Break

Questions?

Page 38: Applications of Treewidth in Algorithm Design

Scaling Lemma

For any c there is a polynomial time algorithm and a function f : N N that given a planar graph G, a set X such that tw(G\X) ≤ c, and ε > 0 outputs a set X’ of size ε|X| such that for any component C of G \ X’

- |C ∩ X| ≤ f(ε) - |N(C)| ≤ f(ε) Implies tw(G[C]) ≤ f’(ε)

Page 39: Applications of Treewidth in Algorithm Design

Proof Idea for Scaling Lemma

For a fixed γ let Tγ(k) be the smallest integer t such that any G with X such that |X|≤ k and tw(G\X) ≤ d contains a set X’ of size ≤ t such that for any component C of G \ X’

- |C ∩ X| ≤ γ - |N(C)| ≤ γ

Page 40: Applications of Treewidth in Algorithm Design

Proof Idea for Scaling Lemma

For every γ > d prove that Tγ(k) ≤ g(γ)k where g(γ) 0 as γ ∞.

Prove Tγ(k) ≤ g(γ)k using balanced separation as in the proof of WNDL.

Page 41: Applications of Treewidth in Algorithm Design

Recurrence for Scaling Lemma

Tγ(γ) = 0

Tγ(k) ≤ Tγ( k + O(k⍺ 1/2)) + Tγ((1- )k + O(k⍺ 1/2)) + O(k1/2)

...where 1/3 ≤ ≤ 2/3⍺ .

See board

Thus Tγ(k) ≤ g(γ)kbut what is lim g(γ) when γ ∞?

Page 42: Applications of Treewidth in Algorithm Design

Analyzing g(γ)

cheat: set = ½ ⍺ and move lower order terms outside function calls.

Tγ(γ) = 0Tγ(k) ≤ 2Tγ(½k) + O(k½)

Page 43: Applications of Treewidth in Algorithm Design

Analyzing g(γ)

Tγ(γ) = 0 Tγ(k) ≤ 2Tγ(½k) + O(k½)

20 *(½0k)½ = 20/2k½

21 *(½1k)½ = 21/2k½

22 *(½2k)½ = 22/2k½

23 *(½3k)½ = 23/2k½

Page 44: Applications of Treewidth in Algorithm Design

Making Proof of Scaling Lemma constructive

Proof naturally makes a divide and conquer algorithm for constructing X’ from G, X and ε.

Page 45: Applications of Treewidth in Algorithm Design

Making Proof of Scaling Lemma constructive

Proof naturally makes a divide and conquer algorithm for constructing X’ from G, X and ε.

Page 46: Applications of Treewidth in Algorithm Design

What we have, what we want

Have: Weak Nonconstructive Decomposition Theorem and Scaling Lemma

If we could make WNDT constructive, we would be done!

Want: Constant factor approximation of ”treewidth-d deletion” on H-minor free graphs.

Page 47: Applications of Treewidth in Algorithm Design

Protrusion Lemma

For every d, there are constants c such that for every planar graph G, if tw(G)>d then there is a vertex set C such that:– d < tw(G[C]) ≤ c– N(C) ≤ c

Proof: Let X be smallest set such that tw(G)<d. Apply Scaling Lemma on X with ε=½. Set c=f(½). Since X’ < X some component C of G\X’has tw(G[C]) > d.

protrusion: appendage, bagginess, blob, bump, bunch, bunching, convexity, dilation, distention, excess, excrescence, gibbosity, growth, hump, intumescence, jut, lump, nodulation, nodule, outgrowth, outthrust, projection, prominence, promontory, protuberance, sac, sagging, salience, salient, superfluity, swelling, tuberosity, tumefaction, tumor, wart

Page 48: Applications of Treewidth in Algorithm Design

Approximation algorithm forTreewidth-d deletion

Let c be as in Protrusion Lemma. While tw(G) > d:

Find a vertex set C such that d < tw(G[C]) ≤ c and N(C) ≤ c. Find best treewidth-d-deletion XC in G[C]. Add Xc and N(C) to X.G G \ (C N(C))∪

Output X

Page 49: Applications of Treewidth in Algorithm Design

Approximation Ratio

We deletedX1, X2, X3.... Xt ≤ OPTN(C1), N(C2) ... N(Ct) ≤ ct

Each Ci contains a vertex from OPT so t ≤ |OPT|.Hence |X| ≤ (c+1)|OPT|

Page 50: Applications of Treewidth in Algorithm Design

Proof of Decomposition Theorem

By WNDT there exists a treewidth d-deletion of size O(π(G)).

By approximation we can find a treewidth treewidth d-deletion X of size O(π(G)).

By Scaling Lemma we can turn X into a treewidth- f(ε) deletion set X’ of size ε|X|. Choosing ε small enough we get |X’| ≤ επ(G).

Page 51: Applications of Treewidth in Algorithm Design

Approximation - recap

Saw a decomposition lemma for bidiemsional, separable problems on H-minor-free graphs and how it can be used to give EPTAS’es for many problems on H-minor free graphs

Page 52: Applications of Treewidth in Algorithm Design

Kernelization

The decomposition lemma can be modified as follows:

Lemma: For any minor-bidimensional, separable problem Π on H-minor-free graphs, there is a constant c and polynomial time algorithm that given G outputs a set X such that |X| ≤ cπ(X) and G\X can be partitioned into C1, C2, ... Ct where t ≤ cπ(X) such that- there are no edges between Ci and Cj

- tw(G[Ci]) ≤ c - tw(G[Cj]) ≤ c

Page 53: Applications of Treewidth in Algorithm Design

Kernelization

Each Ci can be replaced with a constant size graph using techniques from [BFLPST09].

Kernels of size O(π(G)).

Page 54: Applications of Treewidth in Algorithm Design

Very Short Summary

Bidimensionality is a framework for giving subexponential time algorithms, EPTAS’es and kernels, based on excluded grid theorems and balanced separation techniques.

Page 55: Applications of Treewidth in Algorithm Design

Thank You!