470 likes | 617 Views
Refined Search Tree Technique for Dominating Set on Planar Graphs. Jochen Alber, Hongbing Fan, Michael R. Fellows, Henning Fernau, Rolf Niedermeier, Fran Rosamond, and Ulrike Stege. Outline. Background Techniques to cope with NP-hardness Paper Technique Analysis. Background. Introduction.
E N D
Refined Search Tree Technique for Dominating Set on Planar Graphs Jochen Alber, Hongbing Fan, Michael R. Fellows, Henning Fernau, Rolf Niedermeier, Fran Rosamond, and Ulrike Stege
Outline • Background • Techniques to cope with NP-hardness • Paper • Technique • Analysis
Introduction • Techniques used to cope with NP-hardness: • approximate solutions • randomization • quantum mechanics, bio-molecular chemistry … • … and Fixed Parameter Tractability (FPT)
What is FPT? • Tractability of a problem having a large input size up to a small fixed parameter • i.e. “exactly” solving a limited version of an NP-hard problem • The problem has to have an algorithm of running time O(f(k).nO(1)) [k<<n]
Classification • NP = O(cn) • FPT = O(f(k).nO(1)) • P = O(nO(1)) • P [subset of] FPT [subset of] NP
Foundations of FPT • 3 basic problems of FPT theory – • Vertex Cover • Independent Set • Dominating Set
k-Vertex Cover • Determine a vertex cover of at most k vertices that cover all edges • Complete enumeration: • O(nk) possibilities
FPT Solution techniques • Kernelization (or data-reduction) • Remove redundancy • Reduce the problem to a simpler version Ex: • In k-vertex cover, simply include any vertex having degree > k
… FPT solution techniques • Bounded-Search Tree • O(2kn) possibilities – linear in n! • Start with 2 sets: • Set of included vertices I = Ø • Set of excluded vertices E = G • Build a binary tree of height k using “edges” • At each step add 1 vertex from edges in E to I • Bound: Remove that edge and neighboring edges for a smaller tree
k-Vertex Cover Search Tree • Tree height ≤ k • Number of nodes O(2k) • Hence complete search requires 2k* poly steps
k-Independent Set • A set of k-disconnected vertices • Complete enumeration: • O(nk) possibilities
k-Independent Set Search Tree • Bound: Choose any vertex from [a vertex + its neighbors], delete them all and continue • Complete search requires O((d+1)k.n) • Just like every vertex has 2 branches in k-vertex cover tree • - vertex itself IN or its neighbor IN • Here there are d+1 branches
k-Dominating Set • Either a vertex or its connected neighbor is in the dominating set • (So vertices cover other vertices) • Searching in O((d+1)k.n) time like k-Independent set (i.e. bounding) not possible! • Only possible for planar graphs
Previous research • An O(c√kn) algorithm was proposed before • large c (= 36√34) • used advance techniques like tree-width • thus - theoretically efficient but not easy to implement • This paper gives an O(ckn) algorithm (c = 8) • uses a combination of kernelization and bounded-search
Annotated Dominating Set • A planar black and white graph • i.e. G = (B [du] W, E) • Find a set of k vertices that dominate all black vertices
Definitions • Open Neighborhood: N(u) = {v ЄV | {u, v} ЄE} • Closed Neighborhood: N[u] = N(u) U {u} • Pendant vertex - a vertex of degree one
The basics • Branching according to a low-degree black vertex • Use of reduction rules (re-kernelization) • Whenever a new vertex u is IN, k-1 more vertices are required … • … and whiten the neighbors of u (Why?)
The Idea • A dominating set problem has 3 types of vertices: • Dominated (black) • Dominating (black or white) -DS • Untouched (black or white)
The Idea • At any point, add the vertex adjacent to an untouched black vertex to DS + reduce k • The added vertex could be black or white • Once that is added, whiten its neighbors (as they are also dominated) • If any neighbor is black, then it is already dominated anyway and k shouldn’t reduce • If it is white, we don’t care anyways! • Going on like this will guarantee an exact solution having k vertices
7 Reduction Rules - R1 • Delete edges between white vertices • After this white vertices connected only to black vertices
R2 • Delete a pendant white vertex
R3 - Branching on a low-degree black vertex • Delete a pendant black vertex w, put its neighbor u (black or white) in D, whiten neighbors of u and lower k to k − 1 • This is the only rule that builds D
R4 • Delete a white vertex u of degree 2 having two black neighbors u1 and u2 connected by an edge {u1, u2}
R5 • Delete a white vertex u of degree 2 with black neighbors u1, u3, if there is a black vertex u2 with edges {u1, u2} and {u2, u3}
R6 • Delete a white vertex u of degree 2 with black neighbors u1, u3, if there is a white vertex u2 and edges {u1, u2} and {u2, u3}
R7 • Delete a white vertex u of degree 3, with black neighbors u1, u2, u3 for which the edges {u1, u2} and {u2, u3} are present
A Few Observations • Rules are sound • Reduction by each rule is linear time
Definitions • G is reduced if any of the above rules cannot be applied anymore to it • G is nearly reduced if (R1), (R2), (R4)–(R7) cannot be applied anymore to it
Plane Embedding Planar Graph embedding Plane Graph
A New Branching Theorem • If G is nearly reducedplanar black and white graph with b black andw white vertices, then max degree of black vertices is 7 • Main technique: • Euler’s formula for planar graphs extended for plane black and white graphs
Embed the Graph • H = G[B] is plane sub-graph of black vertices of the nearly reduced plane graph G • F is the set of faces (i.e. “face-graph”) of H • fH = |F| = number of faces of H • cH = number of connected components of H
Extended Euler Formula • For graph G: • Let: • v = b + w • e = ebb+ ebw • v − e + f = 2 (- original Euler formula) • For graph H: • b − ebb+ fH= 1 + cH(- extended Euler formula)
Triangulation Error • Let z = (3(b + w) − 6) − e • = number of edges for which G fails to be a triangulation of the plane
Main Result • Lemma 4: • If 3w − 4b − z + fH − cH < 7 is satisfied - EQN (A) then max degree of black vertices is 7
Proof Outline • Take a nearly reduced black and white plane graph G • Determine H and its “face graph” • Build equations inductively from face graph to entire graph • Determine cH in terms of cF of each face F • cF = total connected components on boundary of F - 1 • Determine z in terms of zF of each face F of G • zF = total edges to be added to F for triangulation
Proof Outline • Substitute them in EQN (A) to get: • 3 ∑FЄҒ(wF+cF/3 −zF/3 +1/3)−4b −2cH< 6 - EQN (B) • (wF = number of white vertices embedded in F) • Determine tF in terms of ebb- EQN (C) • tF = total edges needed to triangulate F of H (i.e. to triangulate only black vertices on F’s boundary as they may be disconnected)
Proof Outline • Consider that for any face of G • wF+ cF≤ zF+ 1 - EQN (D) • wF≤ tF - EQN (E) • Use EQN (C, D, E) to solve the first term of EQN (B) • Thus prove the inequality
New Search Tree algorithm • Apply Reduction Rules • Construct a k-DS from the reduced graph • Here, running time - O(8kn)
Optimality of Rules • Degree of each black vertex = 7 • Degree of each white vertex = 4
Future Work • Adding more involved reduction rules • Investigating if and how more technical approaches such as tree decompositions could be used in the algorithm
Ponder this (Question 1) • We know that there is one NP-hard problem called minimum Dominating Set. Suppose we solve it by brute force and get an answer where the minimum number of vertices that dominate all others are n. • Now, for the same graph, if we are solving the k-Dominating Set problem, if k < n then what will happen?
Food for thought (Question 2) • Finding min DS is NP-hard • Take a graph and run a breath-first-search on it • Running time = O(# of Vertices + # of Edges) • The interior nodes of the resulting tree form a “connected” DS • Pick such smallest tree – it will form min “connected” DS • running time O(# of Vertices) • Total Running time = O(V2 + EV) • Hence P = NP! • What is the flaw in this argument?