Create Presentation
Download Presentation

Download

Download Presentation

Fixed Parameter Complexity of the Maximum Leaf Weight Spanning Tree Problem

112 Views
Download Presentation

Download Presentation
## Fixed Parameter Complexity of the Maximum Leaf Weight Spanning Tree Problem

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**Bart Jansen, Utrecht University**Fixed Parameter Complexity of the Maximum Leaf Weight Spanning Tree Problem**Max Leaf Spanning Tree**• Max Leaf • Instance: Connected graph G, positive integer k • Question: Is there a spanning tree for G with at least k leaves? • Applications in network design • YES-instance for k ≤ 8**Complexity of Max Leaf**• Classicalcomplexity • Max-SNP complete, sonopolynomial-timeapproximationscheme (PTAS) • NP-complete, even for**BipartiteMax Leaf Spanning Tree**• Bipartite Max Leaf • Instance: Connectedbipartitegraph G withblack and whiteverticesaccording to the partition, positive integer k • Question: Is there a spanning tree for G with at least k blackleaves?**Complexity of Bipartite Max Leaf**• Classicalcomplexity • No constant-factorapproximation • NP-complete, even for:**Weighted Max Leaf Spanning Tree**• Weighted Max Leaf • Instance: Connected graph G with non-negative vertex weights;positive number k • Question: Is there a spanning tree for G such that its leaves have combined weight at least k? Leafweight 11 Leafweight 16**Complexity of Weighted Max Leaf**• Classical complexity • NP-complete by restriction of Max Leaf • If weights {0,1} are allowed, no constant-factor approximation since it generalizes Bipartite Max Leaf • We consider the fixed parameter complexity**Fixed Parameter Complexity**• Suppose we encounter a NP-complete problem • No O(nc) algorithm for fixed c • No efficient algorithm exists? • What happens if we use some information about the instance? • For example: solution size is k, much less than n. • Can we solve it in O(2kn) time? • True for many problems, such as Vertex Cover • Instance of a parameterized problem is <I,k> • Regular instance and the parameter as a natural number • If there is an f(k)nc time algorithm for a problem • Then it is Fixed Parameter Tractable (FPT)(n is the size of instance I)**Kernelization algorithms**• A kernelization algorithm: • Reduces parameterized instance <I,k> to equivalent <I’,k’> • Size of I’ does not depend on I but only on k • Time is poly (|I| + k) • New parameter k’ is at most k • If |I’| is O(g(k)), then g is the size of the kernel • Kernelization algorithm implies fixed parameter tractability • Compute a kernel, analyze it by brute force**Parameterization for Max Leaf**• Parameterize by the target value k • Number of leaves, or leaf weight**Preliminaries**Terminology and a lemma**Terminology**• A set S of vertices is a cutset if their removal splits the graph into multiple connected components • A path component of length k is a path <x,v1,v2, .. , vk,y>, s.t. • x, y have degree ≠ 2 • all vi have degree 2**Leaves and cutsets**• If S is a cutset, then at least one vertex of S is internal in a spanning tree • We need to give at least one vertex in S a degree ≥ 2 to connect both sides**Fixed parameter intractability**Bipartite Max Leaf is hard for W[1]**Parameterized complexity classes**• We prove that Bipartite Max Leaf is hard for W[1] • (Probably) no f(k)nc algorithm • No proof of membership in W[1] • It might be harder than any problem in W[1] • No hardness proof for W[2] either**Reductions prove W[1] hardness**• W[i] hardness is proven by parameterized reduction <I,k> <I’,k’> from some W[i]-hard problem • Similar to (Karp) reductions for NP-completeness • Reduction in time f(k)*poly(|I|) • New parameter k’ ≤ g(k) for some function g • We reduce k-Independent Set (W[1]-complete) to Bipartite Max Leaf**Setup for reduction**• k-Independent Set • Instance: Graph G, positive integer k • Question: Does G have an independent set of size at least k? • (i.e. is there a vertex set S of size at least k, such that no vertices in S are connected by an edge in G?) • Parameter: the value k**Reduction from k-Independent Set**• Given an instance of k-Independent Set, we reduce as follows: • Color all vertices black • Split all edges by a white vertex • Add white vertex w with edges to all black vertices • Set k’ = k • Polynomial time • k’ ≤ g(k) = k**Independent set of size k Spanning tree with ≥ k black**leaves • Complement of S is a vertex cover • Build spanning tree: • Take w as root, connect to all black vertices • We reach the white verticesfrom the vertex cover V – S • Sinceevery white vertexused to beanedge Edges incident on w are not drawn**Spanning tree with k black leaves Independent set of**size k • Take the black leaves as the independent set • Ifthere was anedge x,y thenthey are notbothleaves • Since {x,y} is a cutset • Bycontraposition, black leavesforman independent set Edges incident on w are not drawn**Fixed parameter tractability**A linear kernel for Maximum Leaf Weight Spanning Tree on planar graphs**A linearkernelforWeighted Max Leafonplanargraphs**• Kernel of size 78k on planar graphs • Strategy: • Give reduction rules • that can be applied in polynomial time • that reduce the instance to an equivalent instance • Prove that after exhaustive application of the rules, either: • the size of the graph is bounded by 78k • or we are sure that the answer is yes • then we output a trivial, constant-sized YES-instance**Kernelization lemma**• We want to be sure that the answer is YES if the graph is still big after applying reduction rules • Use a lemma of the following form: • If no reduction rules apply, there is a spanning tree with |G|/c leaves of weight ≥ 1 (for some c > 0) • With such a proof, we obtain: • If |G| ≥ ck then G has a spanning tree with |G|/c≥ck/c=k leaves of weight 1 • So a spanning tree with leaf weight ≥ k • If |G| ≥ ck after kernelization we return YES • If not, the instance is small**The reduction rules**• The reduction rules must enforce: • When we increase the size of the graph, eventually this leads to an increase in optimal leaf weight of a spanning tree • So we need to avoid: • A graph can always grow larger without increasing the optimal leaf weight of a spanning tree • All reduction rules are needed to prevent such situations**Bad situation 1)**• Vertex of positive weight, with arbitrarily many degree-1 neighbors of weight 0**1) Removedegree 1 vertices**• Structure: • Vertex x of degree 1 adjacent to y of degree > 1 • Operation: • Delete x, decrease k by w(x), set w(y) = 0 • Justification: • Vertex x will be a leaf in any spanning tree • The set {y} is a cutset, so y will never be a leaf in a spanning tree k’ = k – w(x)**Bad situation 2)**• A connected component of arbitrarily many vertices of weight 0**2) Contract edgesbetween weight-0 vertices**• Structure: • Two adjacent weight-0 vertices x, y • Operation: • Contract the edge xy, let w be the merged vertex • Justification: • We can always use the edge xy in an optimal tree**Bad situation 3)**• Arbitrarily many weight-0 degree-2 vertices with the same neighborhood**3) Duplicate degree-2 weight-0 vertices**• Structure: • Two weight-0 degree-2 vertices u,v with equal neighborhoods {x,y} • The remainder of the graph R is not empty • Operation: • Remove v and its incident edges • Justification: • {x, y} forms a cutset • One of x,y will always be internal in a spanning tree**Bad situation 4)**• A necklace of arbitrary length • Every pair of positive-weight vertices forms a cutset, so at most 1 leaf of positive weight**4) Edgebypassing a weight-0 vertex**• Structure: • a weight-0 degree-2 vertex with neighbors x,y • a direct edge xy • Operation: • remove the edge xy • Justification: • You never need xy • If xy is used, we might as well remove it and connect x and y through z • Since w(z) = 0, leaf weight does not decrease**Bad situation 5)**• Three path components of arbitrary length • At most 4 leaves in any spanning tree**5) Shrinklargepathcomponents**• Structure: • Path component <x,v1,v2,..,vp,y> with p ≥ 4 • Operation: • Replace v2,v3, .. , vp-1 by new vertex v* • Weight of v*: • Compute maximum of edge endpoint weights on edges (vi,vi+1) for i=1 .. p-1 • Subtract maximum of w(v1) and (vp) • Justification: • The two spanning trees are equivalent • Suppose a spanning tree avoids an edge inside the path component • We gain at least as much weight by avoiding an edge incident on v***Bad situation 6)**• An arbitrarily long cycle with alternating weighted / zero weight vertices • At most one leaf of positive weight**6) Cut a simplecycle**• Structure: • The graph is a simple cycle • Operation: • Remove an edge that maximizes the combined weight of its endpoints • Justification: • Any spanning tree for G avoidsexactlyoneedge • Avoidinganedgewith maximum weight of endpoints is optimal**About the reduction rules**• Reduction rules are necessary and sufficient for the kernelization claim • Rules do not depend on parameter k • Reduction rules do not depend on planarity of the graph • But the structural proof that every reduced instance has a |G|/c leaf weight spanning tree does depend on planarity • Reduction rules can be executed in linear time • Yields O(k) 278k + O(|V| + |E|) algorithm**Discussion of the kernels**• Kernel for {0,1,…} weights on planar graphs • Current kernel size 78k • Improved analysis may decrease kernel size • New reduction rules needed to go below 31k • Kernel size for {1,2,...} weights • Current kernel size 7.5k • New reduction rules needed to go below 7.5k**Different parameterizations**What is it that makes Weighted Max Leaf hard?**Parameterizations for Weighted Max Leaf with {0,1,…}**weights**Reduction to Positive-Weighted Max Leaf**• Weighted Max Leaf with weight 0 and parameter x + k • Weighted Max Leaf with weight ≥ 1 and parameter k’ = x + k Is there a spanning tree of leaf weight ≥ 13 ? k = 13, x = 2 Is there a spanning tree of leaf weight ≥ 14 ? Is there a spanning tree of leaf weight ≥ 15 ?**Summary**• Maximum Leaf Weight Spanning tree is a natural generalization of the Maximum Leaf Spanning Tree problem • If weights are ≥ 1: • Kernel with 7.5k vertices • If weights are 0 or ≥ 1: • W[1]-hard on general graphs • Linear kernel when restricted to • planar graphs, • graphs of bounded genus, • graphs in which the degree of positive-weight vertices is bounded.**Future work**• Classifying complexity of general-graph problem • Hardness proof for some W[i] > 1 • Membership proof for some W[i] • Investigate connections to approximation algorithms • PTAS on planar graphs using Planar-Separators? • Constant-factor approximation for {0,1} weights