Create Presentation
Download Presentation

Download Presentation

Fixed Parameter Complexity of the Maximum Leaf Weight Spanning Tree Problem

Fixed Parameter Complexity of the Maximum Leaf Weight Spanning Tree Problem

102 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