Download presentation
Presentation is loading. Please wait.
Published byMelinda Dowlen Modified over 10 years ago
1
Bart Jansen, Utrecht University
2
2 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
3
Classical complexity Max-SNP complete, so no polynomial-time approximation scheme (PTAS) NP-complete, even for 3 3-regular graphs By P. Lemke, 1988 Planar graphs of maximum degree 4 By Garey and Johnson, 1979
4
4 Bipartite Max Leaf Instance: Connected bipartite graph G with black and white vertices according to the partition, positive integer k Question: Is there a spanning tree for G with at least k black leaves?
5
Classical complexity No constant-factor approximation NP-complete, even for: 5 d-regular graphs for d ≥ 4 By Fusco and Monti, 2007 Planar graphs of maximum degree 4 By Li and Toulouse, 2006
6
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? 6 Leaf weight 11Leaf weight 16
7
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 7
8
Suppose we encounter a NP-complete problem No O(n c ) 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(2 k n) time? True for many problems, such as Vertex Cover Instance of a parameterized problem is Regular instance and the parameter as a natural number If there is an f(k)n c time algorithm for a problem Then it is Fixed Parameter Tractable (FPT) (n is the size of instance I) 8
9
A kernelization algorithm: Reduces parameterized instance to equivalent 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 9
10
Parameterize by the target value k Number of leaves, or leaf weight 10 Max Leaf Kernel with 3.75k vertices O(4 k k 2 +p(|V|+|E|)) algorithm Bipartite Max Leaf No existing results W[1] hard on general graphs Weighted Max Leaf No existing results Complexity depends on weight range Kernel for restricted graph classes
11
Weight rangeGeneral graphs {1,2,…} Kernel with 7.5k vertices 11
12
Weight range General graphs Planar graphs Genus ≤ Degree of positive- weight ≤ {1,2,…} Kernel with 7.5k vertices {0,1,… } Hard for W[1]78k O(k√ + )O(k 2 ) 12
13
Weight range General graphs Planar graphs Genus ≤ Degree of positive- weight ≤ {1,2,…} Kernel with 7.5k vertices {0,1,… } Hard for W[1]78k O(k√ + )O(k 2 ) Q >0 NP-complete for k=1 (not Fixed Parameter Tractable) 13
14
Weight range General graphs Planar graphs Genus ≤ Degree of positive- weight ≤ {1,2,…} Q ≥1 Kernel with 7.5k vertices {0,1,… } Hard for W[1]78k O(k√ + )O(k 2 ) Q ≥1 U {0} Hard for W[1]O(k) O(k√ + )O(k 2 ) 14
15
Terminology and a lemma 15
16
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, s.t. x, y have degree ≠ 2 all v i have degree 2 16
17
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 17
18
Bipartite Max Leaf is hard for W[1] 18
19
We prove that Bipartite Max Leaf is hard for W[1] (Probably) no f(k)n c 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 Fixed parameter tractable Vertex Cover Feedback Vertex Set Maximum Leaf Spanning Tree.. W[1]-complete Independent Set Set Packing.. W[2]-complete Dominating Set.. 19
20
W[i] hardness is proven by parameterized reduction 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 20
21
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 21
22
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 22
23
23 Complement of S is a vertex cover Build spanning tree: Take w as root, connect to all black vertices We reach the white vertices from the vertex cover V – S ▪ Since every white vertex used to be an edge Edges incident on w are not drawn
24
Take the black leaves as the independent set If there was an edge x,y then they are not both leaves Since {x,y} is a cutset By contraposition, black leaves form an independent set 24 Edges incident on w are not drawn
25
A linear kernel for Maximum Leaf Weight Spanning Tree on planar graphs 25
26
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 26
27
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 27
28
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 28
29
Vertex of positive weight, with arbitrarily many degree-1 neighbors of weight 0 29
30
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) 30
31
A connected component of arbitrarily many vertices of weight 0 31
32
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 32
33
Arbitrarily many weight-0 degree-2 vertices with the same neighborhood 33
34
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 34
35
A necklace of arbitrary length Every pair of positive-weight vertices forms a cutset, so at most 1 leaf of positive weight 35
36
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 36
37
Three path components of arbitrary length At most 4 leaves in any spanning tree 37
38
38 Structure: Path component with p ≥ 4 Operation: Replace v 2,v 3,.., v p-1 by new vertex v* Weight of v*: Compute maximum of edge endpoint weights on edges (v i,v i+1 ) for i=1.. p-1 Subtract maximum of w(v 1 ) and (v p ) 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*
39
An arbitrarily long cycle with alternating weighted / zero weight vertices At most one leaf of positive weight 39
40
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 avoids exactly one edge Avoiding an edge with maximum weight of endpoints is optimal 40
41
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) 2 78k + O(|V| + |E|) algorithm 41
42
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 42
43
What is it that makes Weighted Max Leaf hard? 43
44
Not fixed parameter tractable on general graphs Hard for W[1] by reduction from k-Independent Set (Kernel for restricted graph classes) Target leaf weight k Amenable to dynamic programming O(w w |V|) time algorithm Treewidth w Try all subsets of S positive-weight vertices, check if V \ S is a Connected Dominating Set O(2 p (|V|+|E|)) time Positive-weight vertices p Not fixed parameter tractable For x=0 (no zero-weight vertices) we have regular unweighted Max Leaf, which is NP-complete Zero-weight vertices x Fixed parameter tractable We reduce (k+x) Weighted Max Leaf with {0,1,…} weights to k’ = k+x Weighted Max Leaf with {1,2,…} weights Parameter k + x 44
45
45 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 ? Weighted Max Leaf with weight 0 and parameter x + k Weighted Max Leaf with weight ≥ 1 and parameter k’ = x + k
46
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. 46
47
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 47
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.