Download presentation
Presentation is loading. Please wait.
1
Randomized Process of Unknowns and Implicitly Enforced Bounds on Parameters Jianer Chen Department of Computer Science & Engineering Texas A&M University
2
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: Genus-k Graph Embedding: k-Clique: Introduction
3
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: Genus-k Graph Embedding: k-Clique: How efficiently? Introduction
4
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n k-Clique: O(n ωk/3 ) (ω is the best exponent for matrix multiplication) Introduction
5
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n k-Clique: O(n ωk/3 ) (ω is the best exponent for matrix multiplication) Introduction
6
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n k-Clique: O(n ωk/3 ) (ω is the best exponent for matrix multiplication) Introduction
7
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n Introduction
8
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n Introduction
9
Brief (and Informal) Review on Fixed-Parameter Tractability Suppose that the optimal solution value k is bounded by a constant, then the following NP-hard problems can all be solved in polynomial time: k-Vertex Cover: O(1.274 k + kn) Genus-k Graph Embedding: f(k)n Our goal: when a problem is solvable in time f(k)n c (fixed parameter tractable), develop “ pratical ” algorithms (i.e., where f(k) and c are as small as possible). Introduction
10
The k -path problem. Monien [85], Bodlaender [93]: O*(2 k k! ) (graph search); Alon et al.[95]: O*(5.5 k ) R, O*(c k ) D, exponential space (color coding) Chen et al.-Kneis, et al. [09]: O*(4 k ) R, O*(4 k+o(k) ) D, polynomial space, (randomized divide-and-conquer) Introduction
11
The FVS problem on undirected graphs Bodlaender [94], Downey-Fellows [92]: O*((17k 4 )!) (graph structures); Downey-Fellows [99]: O*((2k+1) k ) ; Raman et al. [02]: O*((4 log k) k ) (cycle structures); Kanj et al. [04]: O*((2 log k) k ) ; Raman et al. [06]: O*((12 log k/log log k) k ) ; Read-Smith-Vetta [04]: (iterative compression); Guo et al. [06]: O*(37.7 k ) ; Dehne et al. [05]: O*(10.6 k ) ; Chen et al. [08]: O*((5 k ) (iterative compression + implicit parameter bound); Introduction
12
The research in development of parameterized algorithm has been in an exciting stage: New techniques are being explored; Improved (and simpler!) parameterized algorithms are being developed; Algorithmic open problems are being resolved. Introduction
13
In this talk, we dicuss two techniques that have turned out to be useful in the recent development of parameterized algorithms: Randomized process of a small unknown subsets in a large universal set; Implicitly enforced bounds on parameters during a branch-and-bound process. Introduction
14
Dealing with a small unknown In traditional algorithm design, we do sorting, so that later search and other processes become easier; divide-and-conquer, to achieve efficient recursive algorithms; dynamic programming, to avoid unnecessary repeated processes. All these techniques have proven to be extremely useful in traditional algorithm design. Dealing With A Small Unknown
15
In parameterized algorithm design in many cases, we look for a small subset (of size k ) satisfying certain properties in a large universal set (of size n ). Examples: Vertex Cover, k -Path, 3D-Matching, 3-Set Packing, Feedback Vertex Set, Set Splitting, …… Dealing With A Small Unknown
16
It will be nice if the previous algorithmic techniques in traditional algorithm design can be applied to the small subset. However, the small subset is unknown. Dealing With A Small Unknown
17
Simple probability facts Let S be a subset of size k in a universal set U of size n. By simple probability theory: Fact 1. For any given permutation p( S ) of S, if we randomly permutate U, the probability that S is permuted into the order of p( S ) is 1/ k! Fact 2. If we randomly divide U into k parts, the probability that each part contains exactly one element in S is at least 1/ e k Fact 3. For any given partition ( S 1, S 2 ) of S, if we randomly partition U, the probability that S is partitioned into ( S 1, S 2 ) is 2/2 k Dealing With A Small Unknown
18
Therefore, by randomly processing the (explicitly given) universal set U, the desired (and unknown) subset S has a reasonable probability to be processed correctly. Dealing With A Small Unknown
19
Remarks Fact 1 has been used to develop a very simple algorithm for k -path, which is efficient for very small k (e.g., k ≤ 10 ) e.g., Kelly et al. [03]; Fact 2 is the basic idea of color-coding developed by Alon-Yuster-Zwick [95]; We will concentrate on Fact 3 in this talk. Dealing With A Small Unknown
20
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. graph G Dealing With A Small Unknown
21
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. Suppose there is a k -path P in G Dealing With A Small Unknown
22
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. Randomly partition the vertices of G Dealing With A Small Unknown
23
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. The probability that the first half of P is white and the second half of P is black in 1/2 k Dealing With A Small Unknown
24
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. Recursively construct ( k/2 )-paths in the two half-graphs Dealing With A Small Unknown
25
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. Constructing k -paths in G by connecting the ( k/2 )-paths in the two half-graphs. Dealing With A Small Unknown
26
Example 1. k -path k-Path: given a graph G and an integer k, either construct a simple path of k vertices in G, or report no such a path exists. Remarks. 1. This gives a randomized algorithm of running time O*( 4 k ) for the k -path problem. 2.Williams [08] very recently developed a randomized algorithm of running time O*(2 k ) for the unweighted k -path problem based on an algebraic approach. Dealing With A Small Unknown
27
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. the universal set U Dealing With A Small Unknown
28
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. the collection C of subsets in U Dealing With A Small Unknown
29
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. a partition of U splits k subsets ( k = 5) Dealing With A Small Unknown
30
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. Only the elements in the split subsets need to be properly split Dealing With A Small Unknown
31
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. only a subset S of ≤ 2 k elements needs to be properly split (each split subset contains exactly 2 elements in S ). Dealing With A Small Unknown
32
Example 2. Set-Splitting Set-Splitting: given a collection C of subsets of a universal set U and an integer k, either construct a partition (U 1, U 2 ) of U that splits at least k subsets in C, or report no such a partition exists. Therefore, a direct analysis shows that if we randomly split the universal set U, then the set S will be split properly with a probability 1/2 2k. A more careful analysis shows that the probability is actually 1/2 k. Thus, by examining O(2 k ) random partitions of the universal set U, we have a high probability to find the desired partition of U. Dealing With A Small Unknown
33
Remark 1. weighted case The above techniques can be applied directly to the same problems with weight (e.g., k -path problem on weighted graphs, and set-splitting problem on collections of weighted subsets). Dealing With A Small Unknown
34
Remark 2. De-randomization The above randomized techniques can be de- randomized. An ( n, k )-universal set is a collection C of partitions of the set U = {1, 2, …, n }, such that for any k -subset S and any partition ( S 1, S 2 ) of S, there is partition ( U 1, U 2 ) of U in C such that S 1 ⊆ U 1, and S 2 ⊆ U 2. Theorem (Naor et al. [95], Chen et al. [09]). There is an ( n, k )-universal set C of size O(n2 k+o(k) ) that can be constructed in time O(n2 k+o(k) ). Dealing With A Small Unknown
35
Remark 2. De-randomization Therefore, instead of using O*(2 k ) randomized partitions of the universal set U, we can simply try all O*(2 k+o(k) ) partitions of U in the ( n, k )-universal set C in the above theorem. In consequence, randomized parameterized algorithms based on this technique can be de- randomized and lead to deterministic algorithms with slightly worse running time. Dealing With A Small Unknown
36
Implicit parameter bound Consider a branch-and-search process: Vertex Cover: pick a vertex v of degree > 0, branch by either including v or excluding v in the objective vertex cover, then recursively work on the resulting graphs. T(k) = T(k-1) + T(k-d) (d = # of neighbors of v ) ==== a time O*(c k ) algorithm for Vertex Cover Independent Set: pick a vertex v of degree > 0, branch by either including v or excluding v in the objective independent set, then recursively work on the resulting graphs. T(k) = T(k-1) + T(k-?) ==== no FPT algorithm for Independent Set Implicit Parameter Bound
37
A frequently encountered difficulty in developing parameterized algorithms is when we apply branch-and- search process, some branching paths do not effectively decrease the parameter value k. In some cases, there can be an implicit bound on the parameter that limits the number of times in the branch- and-search process that do not decrease the parameter value. Implicit Parameter Bound
38
Example 1. UFVS Undirected Feedback Vertex Set Problem (UFVS): Given an undirected graph G and a parameter k, decide if there is a feedback vertex set F of size k (i.e., every cycle in G contains at least one vertex in F ). By the Iterative Compression Method (Reed-Smith-Vetta), the UFVS problem can be reduced to the following problem Reduced Disjoint FVS (RX-FVS): given an undirected graph G and a feedback vertex set F 1 of size k+1, decide if there is a disjoint feedback vertex set F 2 of size k for G. Implicit Parameter Bound
39
Example 1. UFVS Observation. Let ( G, F 1 ) be an instance of RX-FVS Both induced subgraphs D 1 = G [ F 1 ] and D 2 = G − F 1 are acyclic. The objective feedback vertex set F 2 is in D 2. Reformulation. Given a forest decomposition ( D 1, D 2 ) of G, decide if there is a feedback vertex set F 2 of size k for G, where F 2 ⊆ D 2. Implicit Parameter Bound
40
Example 1. UFVS Given a forest decomposition ( D 1, D 2 ) of G, decide if there is a feedback vertex set F 2 of size k for G, where F 2 ⊆ D 2. Familiar problem: branch on a vertex v in D 2. Recursively work on the instances B1. ( D 1, D 2 − v, k − 1 ) ; B2. ( D 1 +v, D 2 − v, k ); On branching B2 that excludes v in the objective feedback vertex set F 2, the parameter value is not decreased. Implicit Parameter Bound
41
Example 1. UFVS Given a forest decomposition ( D 1, D 2 ) of G, decide if there is a feedback vertex set F 2 of size k for G, where F 2 ⊆ D 2. pick a vertex v in D 2 such that v has≥2 neighbors in D 1 recursively work on the two instances B1. ( D 1, D 2 − v, k − 1 ) ; B2. ( D 1 +v, D 2 − v, k ); An implicit bound on k : the number h of connected components of D 1. B1 decreases k (without increasing h ) B2 decreases h (without increasing k ) Implicit Parameter Bound
42
Example 1. UFVS Given a forest decomposition ( D 1, D 2 ) of G, decide if there is a feedback vertex set F 2 of size k for G, where F 2 ⊆ D 2. pick a vertex v in D 2 such that v has≥2 neighbors in D 1 recursively work on the two instances B1. ( D 1, D 2 − v, k − 1 ) ; B2. ( D 1 +v, D 2 − v, k ); Thus, the combined parameter k+h is always decreased In the original instance ( G, F 1 ) of RX-FVS ( F 1 is a feedback vertex set of size k+1 for G ), D 1 = G[F 1 ] has at most k+1 connected components. Thus initially, k+h ≤ 2k+1. Implicit Parameter Bound
43
Example 1. UFVS Theorem. The RX-FVS problem can be solved in time O*(4 k ). Theorem. The UFVS problem can be solved in time O*(5 k ). Implicit Parameter Bound
44
Example 2. Multiway-Cut Multiway-Cut: Given a graph G, a collection C = {T 1, …, T h } of terminal sets in G, and a parameter k, decide if there is a multiway cut H of size k such that H ⊆ G – U T i, and G – H has no path between a vertex in T i and a vertex in T j for any i ≠ j. Implicit Parameter Bound T1T1 T2T2 T3T3 T4T4
45
Example 2. Multiway-Cut Multiway-Cut: Given a graph G, a collection C = {T 1, …, T h } of terminal sets in G, and a parameter k, decide if there is a multiway cut H of size k such that H ⊆ G – U T i, and G – H has no path between a vertex in T i and a vertex in T j for any i ≠ j. Implicit Parameter Bound Y : a separator Y T1T1 T2T2 T3T3 T4T4
46
Example 2. Multiway-Cut We consider a branch-and-search process from a vertex u adjacent to T 1, where u cannot be “trivially’’ processed. Let T others = U 2≤j≤h T j ; T 1 ’ = T 1 + u Implicit Parameter Bound T1T1 T2T2 T3T3 T4T4 u T1’T1’ T others
47
Example 2. Multiway-Cut Lemma. The size of a min-cut from T 1 to T others is not larger than the size of a min-cut from T 1 ’ to T others. Lemma. Let Y be a vertex set that does not contain the vertex u. Then Y is a multiway cut for { T 1, …, T h } if and only if Y is a separator for { T 1 ’, T 2, …, T h }. Implicit Parameter Bound T1T1 T2T2 T3T3 T4T4 u T1’T1’ T others
48
Example 2. Multiway-Cut Main Lemma. If the size of a min-cut from T 1 to T others is equal to that from T 1 ’ to T others, then {T 1, T 2, …, T h } has a separator of size k if and only if {T 1 ’, T 2, …, T h } has a separator of size k (which is also a separator for {T 1, T 2, …, T h }) Implicit Parameter Bound T1T1 T2T2 T3T3 T4T4 u T1’T1’ T others
49
Example 2. Multiway-Cut Main part of the algorithm for Multiway-Cut Input : G, {T 1, …, T h }, k 1. …… 2. pick the vertex u; let T 1 ’ = T 1 + u; T others = U 2≤j≤h T j 3. construct a min-cut X from T 1 to T others ; 4. construct a min-cut X’ from T 1 ’ to T others ; 5. if |X| = |X’| then recursively work on G, {T 1 ’, T 2, …, T h }, k; else \\ |X| < |X’| --- branch on u recursively work on G−u, {T 1, T 2, …, T h }, k−1; \\ include u recursively work on G, {T 1 ’, T 2, …, T h }, k; \\ exclude u …… Implicit Parameter Bound
50
Example 2. Multiway-Cut Complexity Analysis 5. if |X| = |X’| then recursively work on G, {T 1 ’, T 2, …, T h }, k; else \\ |X| < |X’| --- branch on u recursively work on G−u, {T 1, T 2, …, T h }, k−1; \\ include u recursively work on G, {T 1 ’, T 2, …, T h }, k; \\ exclude u The size m = |X| of a min-cut from T 1 to T others is an implicit bound on the parameter k. Implicit Parameter Bound
51
Example 2. Multiway-Cut Complexity Analysis 5. if |X| = |X’| then recursively work on G, {T 1 ’, T 2, …, T h }, k; else \\ |X| < |X’| --- branch on u recursively work on G−u, {T 1, T 2, …, T h }, k−1; \\ include u → parameter k is decreased recursively work on G, {T 1 ’, T 2, …, T h }, k; \\ exclude u The size m = |X| of a min-cut from T 1 to T others is an implicit bound on the parameter k. each branch either decreases the parameter k Implicit Parameter Bound
52
Example 2. Multiway-Cut Complexity Analysis 5. if |X| = |X’| then recursively work on G, {T 1 ’, T 2, …, T h }, k; else \\ |X| < |X’| --- branch on u recursively work on G−u, {T 1, T 2, …, T h }, k−1; \\ include u → parameter k is decreased recursively work on G, {T 1 ’, T 2, …, T h }, k; \\ exclude u → min-cut from T 1 to T others is increased The size m = |X| of a min-cut from T 1 to T others is an implicit bound on the parameter k. each branch either decreases the parameter k or increases the size m = |X| of a min-cut from T 1 to T others ; Implicit Parameter Bound
53
Example 2. Multiway-Cut Complexity Analysis 5. if |X| = |X’| then recursively work on G, {T 1 ’, T 2, …, T h }, k; else \\ |X| < |X’| --- branch on u recursively work on G−u, {T 1, T 2, …, T h }, k−1; \\ include u → parameter k is decreased recursively work on G, {T 1 ’, T 2, …, T h }, k; \\ exclude u → min-cut from T 1 to T others is increased The size m = |X| of a min-cut from T 1 to T others is an implicit bound on the parameter k. each branch either decreases the parameter k or increases the size m = |X| of a min-cut from T 1 to T others ; The parameter k is not smaller than 0, and the size m of a min-cut from T 1 to T others is not larger than k. Implicit Parameter Bound
54
Example 2. Multiway-Cut each branch either decreases the parameter k or increases the size m = |X| of a min-cut from T 1 to T others ; The parameter k is not smaller than 0, and the size m of a min-cut from T 1 to T others is not larger than k. Theorem. The Multiway-Cut Problem can be solved in time O(4 k kn 3 ). Implicit Parameter Bound
55
Conclusions and Open Problems Conclusions The research in parameterized algorithm is growing fast but still very young; Faster (and simpler) algorithms are explored based on deeper understanding of algorithmic methodology. Open Problems New techniques for classical parameterized problems: Vertex Cover? planar graph problems? Conclusions and Open Problems
56
Thank You
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.