Dominating set
Template:Short description Template:For

In graph theory, a dominating set for a graph Template:Math is a subset Template:Math of its vertices, such that any vertex of Template:Math is in Template:Math, or has a neighbor in Template:Math. The domination number Template:Math is the number of vertices in a smallest dominating set for Template:Mvar.
The dominating set problem concerns testing whether Template:Math for a given graph Template:Mvar and input Template:Mvar; it is a classical NP-complete decision problem in computational complexity theory.Template:Sfnp Therefore it is believed that there may be no efficient algorithm that can compute Template:Math for all graphs Template:Math. However, there are efficient approximation algorithms, as well as efficient exact algorithms for certain graph classes.
Dominating sets are of practical interest in several areas. In wireless networking, dominating sets are used to find efficient routes within ad-hoc mobile networks. They have also been used in document summarization, and in designing secure systems for electrical grids.
Formal definition
Given an undirected graph Template:Math, a subset of vertices is called a dominating set if for every vertex , there is a vertex such that .
Every graph has at least one dominating set: if the set of all vertices, then by definition D is a dominating set, since there is no vertex . A more interesting challenge is to find small dominating sets. The domination number of Template:Math is defined as: .
Variants
A connected dominating set is a dominating set that is also connected. If S is a connected dominating set, one can form a spanning tree of G in which S forms the set of non-leaf vertices of the tree; conversely, if T is any spanning tree in a graph with more than two vertices, the non-leaf vertices of T form a connected dominating set. Therefore, finding minimum connected dominating sets is equivalent to finding spanning trees with the maximum possible number of leaves.
A total dominating set (or strongly-dominating set) is a set of vertices such that all vertices in the graph, including the vertices in the dominating set themselves, have a neighbor in the dominating set.Template:Sfnp That is: for every vertex , there is a vertex such that . Figure (c) above shows a dominating set that is a connected dominating set and a total dominating set; the examples in figures (a) and (b) are neither. In contrast to a simple dominating set, a total dominating set may not exist. For example, a graph with one or more vertices and no edges does not have a total dominating set. The strong domination number of Template:Math is defined as: ; obviously, .
A dominating edge-set is a set of edges (vertex pairs) whose union is a dominating set; such a set may not exist (for example, a graph with one or more vertices and no edges does not have it). If it exists, then the union of all its edges is a strongly-dominating set. Therefore, the smallest size of an edge-dominating set is at least .
In contrast, an edge-dominating set is a set D of edges, such that every edge not in D is adjacent to at least one edge in D; such a set always exists (for example, the set of all edges is an edge-dominating set).
A k-dominating set is a set of vertices such that each vertex not in the set has at least k neighbors in the set (a standard dominating set is a 1-dominating set). Similarly, a k-tuple dominating set is a set of vertices such that each vertex in the graph has at least k neighbors in the set (a total dominating set is a 1-tuple dominating set). An Template:Math-approximation of a minimum k-tuple dominating set can be found in polynomial time.Template:Sfnp Every graph admits a k-dominating set (for example, the set of all vertices); but only graphs with minimum degree Template:Math admit a k-tuple dominating set. However, even if the graph admits k-tuple dominating set, a minimum k-tuple dominating set can be nearly k times as large as a minimum k-dominating set for the same graph;Template:Sfnp An Template:Math-approximation of a minimum k-dominating set can be found in polynomial time as well.
A star-dominating set is a subset D of V such that, for every vertex v in V, the star of v (the set of edges adjacent to v) intersects the star of some vertex in D. Clearly, if G has isolated vertices then it has no star-dominating sets (since the star of isolated vertices is empty). If G has no isolated vertices, then every dominating set is a star-dominating set and vice versa. The distinction between star-domination and usual domination is more substantial when their fractional variants are considered.[1]
A domatic partition is a partition of the vertices into disjoint dominating sets. The domatic number is the maximum size of a domatic partition.
An eternal dominating set is a dynamic version of domination in which a vertex v in dominating set D is chosen and replaced with a neighbor u (u is not in D) such that the modified D is also a dominating set and this process can be repeated over any infinite sequence of choices of vertices v.
Dominating and independent sets
Dominating sets are closely related to independent sets: an independent set is also a dominating set if and only if it is a maximal independent set, so any maximal independent set in a graph is necessarily also a minimal dominating set.
Domination by independent sets
A dominating set may or may not be an independent set. For example, figures (a) and (b) above show independent dominating sets, while figure (c) illustrates a dominating set that is not an independent set.
The independent domination number Template:Math of a graph Template:Mvar is the size of the smallest dominating set that is an independent set. Equivalently, it is the size of the smallest maximal independent set. The minimum in Template:Math is taken over less elements (only the independent sets are considered), so Template:Math for all graphs Template:Mvar.
The inequality can be strict - there are graphs Template:Mvar for which Template:Math. For example, let Template:Mvar be the double star graph consisting of vertices Template:Tmath, where Template:Math. The edges of Template:Mvar are defined as follows: each Template:Mvar is adjacent to Template:Mvar, Template:Mvar is adjacent to Template:Mvar, and Template:Mvar is adjacent to each Template:Mvar. Then Template:Math since Template:Math is a smallest dominating set. If Template:Math, then Template:Math since Template:Tmath is a smallest dominating set that is also independent (it is a smallest maximal independent set).
There are graph families in which Template:Math, that is, every minimum maximal independent set is a minimum dominating set. For example, Template:Math if Template:Mvar is a claw-free graph.Template:Sfnp
A graph Template:Mvar is called a domination-perfect graph if Template:Math in every induced subgraph Template:Mvar of Template:Mvar. Since an induced subgraph of a claw-free graph is claw-free, it follows that every claw-free graphs is also domination-perfect.Template:Sfnp
For any graph Template:Mvar, its line graph Template:Math is claw-free, and hence a minimum maximal independent set in Template:Math is also a minimum dominating set in Template:Math. An independent set in Template:Math corresponds to a matching in Template:Mvar, and a dominating set in Template:Math corresponds to an edge dominating set in Template:Mvar. Therefore a minimum maximal matching has the same size as a minimum edge dominating set.
Domination of independent sets
The independence domination number Template:Math of a graph Template:Mvar is the maximum, over all independent sets Template:Mvar of Template:Mvar, of the smallest set dominating Template:Mvar.[2] Dominating subsets of vertices requires potentially less vertices than dominating all vertices, so Template:Math for all graphs Template:Mvar.
The inequality can be strict - there are graphs Template:Mvar for which Template:Math. For example, for some integer Template:Mvar, let Template:Mvar be a graph in which the vertices are the rows and columns of an Template:Mvar-by-Template:Mvar board, and two such vertices are connected if and only if they intersect. The only independent sets are sets of only rows or sets of only columns, and each of them can be dominated by a single vertex (a column or a row), so Template:Math. However, to dominate all vertices we need at least one row and one column, so Template:Math. Moreover, the ratio between Template:Math can be arbitrarily large. For example, if the vertices of Template:Mvar are all the subsets of squares of an Template:Mvar-by-Template:Mvar board, then still Template:Math, but Template:Math.[2]
The bi-independent domination number Template:Math of a graph Template:Mvar is the maximum, over all independent sets Template:Mvar of Template:Mvar, of the smallest independent set dominating Template:Mvar. The following relations hold for any graph Template:Mvar:
History
The domination problem was studied from the 1950s onwards, but the rate of research on domination significantly increased in the mid-1970s. In 1972, Richard Karp proved the set cover problem to be NP-complete. This had immediate implications for the dominating set problem, as there are straightforward vertex to set and edge to non-disjoint-intersection bijections between the two problems. This proved the dominating set problem to be NP-complete as well.Template:Sfnp
Algorithms and computational complexity
The set cover problem is a well-known NP-hard problem – the decision version of set covering was one of Karp's 21 NP-complete problems. There exist a pair of polynomial-time L-reductions between the minimum dominating set problem and the set cover problem.Template:Sfnp These reductions (see below) show that an efficient algorithm for the minimum dominating set problem would provide an efficient algorithm for the set cover problem, and vice versa. Moreover, the reductions preserve the approximation ratio: for any α, a polynomial-time Template:Nowrap algorithm for minimum dominating sets would provide a polynomial-time Template:Nowrap algorithm for the set cover problem and vice versa. Both problems are in fact Log-APX-complete.Template:Sfnp
The approximability of set covering is also well understood: a logarithmic approximation factor can be found by using a simple greedy algorithm, and finding a sublogarithmic approximation factor is NP-hard. More specifically, the greedy algorithm provides a factor Template:Math approximation of a minimum dominating set, and no polynomial time algorithm can achieve an approximation factor better than Template:Math for some Template:Math unless P = NP.Template:Sfnp
L-reductions
The following two reductions show that the minimum dominating set problem and the set cover problem are equivalent under L-reductions: given an instance of one problem, we can construct an equivalent instance of the other problem.Template:Sfnp
From dominating set to set covering
Given a graph Template:Math with Template:Math construct a set cover instance Template:Math as follows: the universe Template:Mvar is Template:Mvar, and the family of subsets is Template:Math such that Template:Mvar consists of the vertex Template:Mvar and all vertices adjacent to Template:Mvar in Template:Mvar.
Now if Template:Mvar is a dominating set for Template:Mvar, then Template:Math is a feasible solution of the set cover problem, with Template:Math. Conversely, if Template:Math is a feasible solution of the set cover problem, then Template:Mvar is a dominating set for Template:Mvar, with Template:Math.
Hence the size of a minimum dominating set for Template:Mvar equals the size of a minimum set cover for Template:Math. Furthermore, there is a simple algorithm that maps a dominating set to a set cover of the same size and vice versa. In particular, an efficient Template:Nowrap algorithm for set covering provides an efficient Template:Nowrap algorithm for minimum dominating sets.

- For example, given the graph Template:Mvar shown on the right, we construct a set cover instance with the universe Template:Math and the subsets Template:Math Template:Math Template:Math Template:Math Template:Math and Template:Math In this example, Template:Math is a dominating set for Template:Mvar – this corresponds to the set cover Template:Math For example, the vertex Template:Math is dominated by the vertex Template:Math, and the element Template:Math is contained in the set Template:Math.
From set covering to dominating set
Let Template:Math be an instance of the set cover problem with the universe Template:Mvar and the family of subsets Template:Math we assume that Template:Mvar and the index set Template:Mvar are disjoint. Construct a graph Template:Math as follows: the set of vertices is Template:Math, there is an edge Template:Math between each pair Template:Math, and there is also an edge Template:Math for each Template:Math and Template:Math. That is, Template:Mvar is a split graph: Template:Mvar is a clique and Template:Mvar is an independent set.
Now if Template:Math is a feasible solution of the set cover problem for some subset Template:Math, then Template:Mvar is a dominating set for Template:Mvar, with Template:Math: First, for each Template:Math there is an Template:Math such that Template:Math, and by construction, Template:Mvar and Template:Mvar are adjacent in Template:Mvar; hence Template:Mvar is dominated by Template:Mvar. Second, since Template:Mvar must be nonempty, each Template:Math is adjacent to a vertex in Template:Mvar.
Conversely, let Template:Mvar be a dominating set for Template:Mvar. Then it is possible to construct another dominating set Template:Mvar such that Template:Math and Template:Math: simply replace each Template:Math by a neighbour Template:Math of Template:Mvar. Then Template:Math is a feasible solution of the set cover problem, with Template:Math.

- The illustration on the right show the construction for Template:Math Template:Math Template:Math Template:Math and Template:Math
- In this example, Template:Math is a set cover; this corresponds to the dominating set Template:Math
- Template:Math is another dominating set for the graph Template:Mvar. Given Template:Mvar, we can construct a dominating set Template:Math which is not larger than Template:Mvar and which is a subset of Template:Mvar. The dominating set Template:Mvar corresponds to the set cover Template:Math
Special cases
If the graph has maximum degree Δ, then the greedy approximation algorithm finds an Template:Math-approximation of a minimum dominating set. Also, let Template:Mvar be the cardinality of dominating set obtained using greedy approximation then following relation holds, , where Template:Mvar is number of nodes and Template:Mvar is number of edges in given undirected graph.Template:Sfnp For fixed Δ, this qualifies as a dominating set for APX membership; in fact, it is APX-complete.Template:Sfnp
The problem admits a polynomial-time approximation scheme (PTAS) for special cases such as unit disk graphs and planar graphs.Template:Sfnp A minimum dominating set can be found in linear time in series–parallel graphs.Template:Sfnp
Exact algorithms
A minimum dominating set of an Template:Mvar-vertex graph can be found in time Template:Math by inspecting all vertex subsets. Template:Harvtxt show how to find a minimum dominating set in time Template:Math and exponential space, and in time Template:Math and polynomial space. A faster algorithm, using Template:Math time was found by Template:Harvtxt, who also show that the number of minimum dominating sets can be computed in this time. The number of minimal dominating sets is at most Template:Math and all such sets can be listed in time Template:Math.Template:Sfnp
Parameterized complexity
Finding a dominating set of size Template:Mvar plays a central role in the theory of parameterized complexity. It is the most well-known problem complete for the class W[2] and used in many reductions to show intractability of other problems. In particular, the problem is not fixed-parameter tractable in the sense that no algorithm with running time Template:Math for any function Template:Mvar exists unless the W-hierarchy collapses to FPT=W[2].
On the other hand, if the input graph is planar, the problem remains NP-hard, but a fixed-parameter algorithm is known. In fact, the problem has a kernel of size linear in Template:Mvar,Template:Sfnp and running times that are exponential in Template:Radic and cubic in Template:Mvar may be obtained by applying dynamic programming to a branch-decomposition of the kernel.Template:Sfnp More generally, the dominating set problem and many variants of the problem are fixed-parameter tractable when parameterized by both the size of the dominating set and the size of the smallest forbidden complete bipartite subgraph; that is, the problem is FPT on biclique-free graphs, a very general class of sparse graphs that includes the planar graphs.Template:Sfnp
The complementary set to a dominating set, a nonblocker, can be found by a fixed-parameter algorithm on any graph.Template:Sfnp
See also
- Vizing's conjecture - relates the domination number of a cartesian product of graphs to the domination number of its factors.
- Set cover problem
- Bondage number
- Nonblocker - the complement of a dominating set.
Notes
References
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Garey-Johnson, p. 190, problem GT2.
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation
- Template:Citation
- Template:Citation.
- Template:Citation.
- Template:Citation.
- Template:Citation.