340 likes | 358 Views
Bart Jansen Polynomial Kernels for Hard Problems on Disk Graphs. Accepted for presentation at SWAT 2010. Overview. Introduction Kernelization Graph classes Kernels Triangle Packing, K t -matching, H-matching Red/Blue Dominating Set Connected Vertex Cover Conclusion.
E N D
Bart JansenPolynomial Kernels for Hard Problems on Disk Graphs Accepted for presentation at SWAT 2010
Overview • Introduction • Kernelization • Graph classes • Kernels • Triangle Packing, Kt-matching, H-matching • Red/Blue Dominating Set • Connected Vertex Cover • Conclusion
Kernelization for graph problems • Consider a computational decision problem on graphs • Input: encoding x of a question about graph G and integer k. • Question: does graph G have a (…)? • Parameter:k • Parameter expresses some property of the question (size of what we are looking for, treewidth of graph, etc.) • A kernelization algorithm takes (x, k) as input and computes instance (x’, k’) of same problem in polynomial time, such that • Answer to x is YES answer to x’ is YES • k’ ≤ g(k) for some function g • |x’| ≤ f(k) for some function f • The function f is the size of the kernel • We want f to be a (small) polynomial
Recent kernelization results Bad news Good news If we require G to be planar, lots of problems have linear or quadratic kernels Even if we relax planarity to bounded genus, H-minor-free, … • Many parameterized problems are W[1]-hard and have no kernels • Several easier parameterized problems only have kernels where f is exponential
Expanding the range of good news • The frameworks giving general good news about small kernels only apply under restrictions that make the graph G sparse: |E| ≤ c |V| • Dense graphs without special structure make the problem hard, implying non-existence of kernels • We consider graphs that exhibit structure, but are not sparse: (unit)disk graphs • Yields good news: • Red-Blue Dominating Set, H-Matching, Connected Vertex Cover • Do not have polynomial kernels in general graphs • Have polynomial kernels in (unit)disk graphs • And the problems are still hard on disk graphs
Graph classes Linear edge count Meta-theorems Quadratic edge count planar unit-disk bounded-genus bounded-genus H-minor-free disk Our kernels Ki,j-subgraph-free Subquadratic edge count Kernels for Dominating Set general
Disk graphs • Consider a set S of closed disks in the plane • The intersection graph of S: • has a vertex v for every disk D(v), • has an edge between u and v iff. the disks D(v) and D(u) intersect. • (touching disks also intersect)
Properties of disk graphs • If all disks have the same radius, their intersection graph is a unit disk graph • All planar graphs are disk graphs (varying radii) • Any clique is a (unit)disk graph • Compare with K5 which is not planar • So there are disk graphs with • Class of (unit)disk graphs • Closed under vertex deletion • Not closed under edge deletion • Not closed under edge contraction
Structure theory and kernels Triangle packing and h-matching
Triangle Packing • Input: Graph G, integer k • Question: Are there k vertex-disjoint triangles in G? • Parameter: k • NP-complete, even on planar graphs • In FPT on general graphs with a O(k2)-vertex kernel
Triangle Packing • Input: Graph G, integer k • Question: Are there k vertex-disjoint triangles in G? • Parameter: k • Single reduction rule • Try all O(n3) sets of size 3, and test if they form a triangle • Mark vertices that occur in a triangle • Delete all vertices that were not marked
Kernelization algorithm • Greedily build a maximal triangle packing • Suppose the greedy packing contains k* copies
Neighborhood Clique Lemma • Let v be a vertex in a unit-disk graph G. Then there is a clique of size ⌈deg(v) / 6⌉ among the neighbors of G. • G[N(v)] has a clique of size ⌈deg(v) / 6⌉ • Proof. • Consider centers of v and its neighbors in a disk realization • Divide the plane into 6 equal sectors around v • Some sector contains ⌈deg(v) / 6⌉ sectors (Pigeonhole Principle) v
Neighbors in each sector form a clique • Assume every disk has radius ½ • If v has a neighbor x then distance |xv| ≤ 1 y v x v
Neighbors in each sector form a clique • Assume every disk has radius ½ • If v has a neighbor x then distance |xv| ≤ 1 • Consider two neighbors x,y in the same sector • By adjacency to v: |xv| ≤ 1, |yv| ≤ 1 • Sector definition: angle xvy ≤ 60o • By law of Cosines: |xy| ≤ 1 • So x,y adjacent • Neighbors within sector form a clique y x v
Analysis of kernel size • If there is a maximal triangle packing with k* copies in G, then |V| is O(k*) • Proof. • We divide V in two subsets: • set S with vertices that are used in a selected copy • set W with the remainder • Since all triangles are vertex-disjoint, there are exactly 3k* vertices in S (every triangle uses 3 vertices) • We bound the size of W • Every vertex in W must be adjacent to vertex in S • Every vertex in S has at most 12 neighbors in W • So |W| ≤ 12 |S| ≤ 12(3 k*) ∈ O(k*)
Extension to Kt-matching • We get a kernel with O(k) vertices for Triangle Packing in unit-disk graphs • Current best kernel for general graphs has O(k2) vertices • Generalizes to Kt-matching for every fixed t • Pack vertex-disjoint complete subgraphs of size t • Important properties still hold: • Every vertex that is not selected in a maximal packing must be adjacent to a selected vertex • Every selected vertex has O(t) neighbors in W
Extension to H-Matching • H-matching problem • Pack vertex-disjoint copies of a fixed connected graph H • Kernel with O(k|H|-1) vertices by H. Moser [SOFSEM ‘09] • No kernel polynomial in |H| + k • H-matching on unit-disk graphs • H can be arbitrary • Graph G in which we find the copies is a unit-disk graph • Our result • O(k)-vertex kernel for every fixed graph H • Constant is exponential in the diameter of H • Properties of maximal H-matching in reduced graph • Every unused vertex has distance ≤ diameter(H) to a used vertex • Every vertex has O(|H|) unused neighbors
Structure theory and kernels Red/blue dominating set
Red/Blue Dominating Set • Input: Graph G with red vertices R, blue vertices B, integer k • Question: Is there a set of ≤ k red vertices that dominate all blue vertices? • Parameter: min(|R|,|B|)
Background • min(|R|,|B|) as parameter since parameter k is W[1] hard, even on unit-disk graphs • In FPT on general graphs, no polynomial kernel • Usually assume G is bipartite with R and B as color classes • We do not assume this here; bipartite disk graphs are planar • Our results: • O(min(|R|,|B|))-vertex kernel on planar graphs • O(min(|R|,|B|)2)-vertex kernel on unit-disk graphs • O(min(|R|,|B|)4)-vertex kernel on disk graphs
Reduction Rules • Red vertices r1, r2 such that N(r1) ∩ B ⊆ N(r2) ∩ B • Delete r1 • Blue vertices b1, b2 such that N(b1) ∩ R ⊆ N(b2) ∩ R • Delete b2
Balance • After exhaustive application of reduction rules, the color classes must be balanced • Number of vertices in the classes must be polynomially related • Easy for planar graphs: |R| ≤ 5|B| (and vice versa) • Contribution: • |R| ∈ O(|B|2) (and vice versa) for unit-disk graphs • |R| ∈ O(|B|4) (and vice versa) for disk graphs • These structural results immediately yield kernels
Balance in colored unit-disk graphs • Usual model: two vertices adjacent iff their disks intersect • Double the radius of disks • Now: two vertices adjacent iff the disk of one contains the center of the other, and vice versa • We prove: if no two red vertices see the same blue vertices, then |R| ∈ O(|B|2). ∙ ∙ ∙ ∙ radius 1 radius ½
Proof • We prove: if no two red vertices see the same blue vertices, then |R| ∈ O(|B|2) • Look at arrangement of the plane induced by blue circles • Each region contains at most one red center • Complexity of the arrangement is O(|B|2) ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙ ∙
Balance in colored disk graphs • Reconsider usual model: vertices adjacent iff disks intersect • We prove: if no red disk sees a subset of the blue vertices seen by another red disk, then |R| ∈ O(|B|4) [A,B] [A,B,C] [B,A] [B,A,C] A B C
Balance in colored disk graphs • A face in the arrangement of bisector curves determines a unique order of encountering blue disks • The blue neighbors of a red disk are a prefix of the string determined by the face containing its center • So any face contains at most one red disk [A,B,C] [B,A,C] A B [B,C,A] [A,C,B] C [C,A,B] [C,B,A]
Balance in colored disk graphs • Given n curves for which each pair intersects O(1) times, the complexity of the arrangement is O(n2) • We have O(|B|2) curves, hence complexity is O(|B|4) • Total number of red disks is O(|B|4) [A,B,C] [B,A,C] [B,C,A] [A,C,B] [C,A,B] [C,B,A]
Summary of kernels for Red/Blue Dominating Set • By applying the reduction rules we find in polynomial time an equivalent instance such that no red vertex sees a subset of what another red vertex sees • Same for the blue vertices • Structural theorems show that in such colored graphs the sizes of the color classes are polynomially related • So size of the largest class is polynomial in the size of smallest class • Hence |V| = |R| + |B| ≤ min(|R|+|B|) + max(|R|,|B|) is O(min(|R|+|B|)c)
Structure theory and kernels Connected vertex cover
Connected Vertex Cover • Input: Graph G, integer k • Question: Is there a vertex cover of ≤ k vertices that induces a connected subgraph? • Parameter: k • FPT on general graphs, no polynomial kernel • Trivial linear-vertex kernel on unit-disk graphs • Any vertex cover for a unit-disk graph must have size ≥ n/12 (Erik-Jan’s thesis)
Annotated Connected Vertex Cover • Input: Graph G, set of marked vertices S, integer k • Question: Is there a vertex cover of ≤ k vertices that induces a connected subgraph, and which contains all marked vertices? • Parameter: k • Unmarked vertex v is dead if all its neighbors are marked, if not then v is live • Reduction rules • Unmarked vertex v with degree > k: mark v • Distinct dead vertices u,v such that N(u) ⊆ N(v): delete u
Analysis • Call an edge covered if it’s incident on a marked vertices • Otherwise an edge is uncovered • > k2 uncovered edges: output NO • > k marked vertices: output NO • In remaining cases ≤ k2 uncovered edges • ≤ 2k2 live vertices since each live vertex is incident on an uncovered edge • ≤ k marked vertices • Remains to bound the dead vertices • # Dead vertices can be bounded in # marked vertices by the balance argument, gives #dead is O(k4) • More intricate argument gives O(k2) bound • Annotation can be undone
Conclusion and discussion • Several parameterized problems without polynomial kernels on general graphs, do allow polynomial kernels on dense (unit)disk graphs • Colored Ki,j-subgraph-free graphs also have the “polynomial balance property” • Polynomial kernels for Red/Blue Dom. Set and Connected V.C. • Open problems • Poly kernel for H-matching in disk graphs? • Poly kernel for unit-disk Edge Clique Cover? • Poly kernel for unit-disk Partition (Vertex Set) Into Cliques? • Improve the quartic bound for balance in disk graphs • Find other problems where colored graph balance implies poly kernels