Applications of Treewidth in Algorithm Design
description
Transcript of Applications of Treewidth in Algorithm Design
![Page 1: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/1.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/2.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/3.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/4.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/5.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/6.jpg)
Preliminaries
![Page 7: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/7.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/8.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/9.jpg)
grids and Γammas
g4 Γ4
![Page 10: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/10.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/11.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/12.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/13.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/14.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/15.jpg)
Subexponential Parameterized Algorithms
![Page 16: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/17.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/18.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/19.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/20.jpg)
Approximation
![Page 21: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/21.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/22.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/25.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/26.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/27.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/28.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/29.jpg)
Remainder of talk:Proof Sketch of Decomposition Theorem
![Page 30: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/30.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/31.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/32.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/33.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/34.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/35.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/36.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/37.jpg)
Breathe Break
Questions?
![Page 38: Applications of Treewidth in Algorithm Design](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/38.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/39.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/40.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/41.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/42.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/43.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/44.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/45.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/46.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/47.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/48.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/49.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/50.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/51.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/52.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/53.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/54.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062520/5681624b550346895dd29104/html5/thumbnails/55.jpg)
Thank You!