# Dominating set

In graph theory, a **dominating set** for a graph *G* = (*V*, *E*) is a subset *D* of *V* such that every vertex not in *D* is adjacent to at least one member of *D*. The **domination number** γ(*G*) is the number of vertices in a smallest dominating set for *G*.

The **dominating set problem** concerns testing whether γ(*G*) ≤ *K* for a given graph *G* and input *K*; it is a classical NP-complete decision problem in computational complexity theory.[1] Therefore it is believed that there may be no efficient algorithm that finds a smallest dominating set for all graphs, although there are efficient approximation algorithms, as well as both efficient and exact algorithms for certain graph classes.

Figures (a)–(c) on the right show three examples of dominating sets for a graph. In each example, each white vertex is adjacent to at least one red vertex, and it is said that the white vertex is *dominated* by the red vertex. The domination number of this graph is 2: the examples (b) and (c) show that there is a dominating set with 2 vertices, and it can be checked that there is no dominating set with only 1 vertex for this graph.

## 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.[2]

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.

## Independent domination

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. Thus, the smallest maximal independent set is greater or equal in size than the smallest independent dominating set. The **independent domination number** *i*(*G*) of a graph *G* is the size of the smallest independent dominating set (or, equivalently, the size of the smallest maximal independent set).

The minimum dominating set in a graph will not necessarily be independent, but the size of a minimum dominating set is always less than or equal to the size of a minimum maximal independent set, that is, γ(*G*) ≤ *i*(*G*).

There are graph families in which a minimum maximal independent set is a minimum dominating set. For example, γ(*G*) = *i*(*G*) if *G* is a claw-free graph.[3]

A graph *G* is called a **domination-perfect graph** if γ(*H*) = *i*(*H*) in every induced subgraph *H* of *G*. Since an induced subgraph of a claw-free graph is claw-free, it follows that every claw-free graphs is also domination-perfect.[4]

### Examples

Figures (a) and (b) are independent dominating sets, while figure (c) illustrates a dominating set that is not an independent set.

For any graph *G*, its line graph *L*(*G*) is claw-free, and hence a minimum maximal independent set in *L*(*G*) is also a minimum dominating set in *L*(*G*). An independent set in *L*(*G*) corresponds to a matching in *G*, and a dominating set in *L*(*G*) corresponds to an edge dominating set in *G*. Therefore a minimum maximal matching has the same size as a minimum edge dominating set.

The following example illustrates that strict inequality can hold for γ(*G*) ≤ *i*(*G*). Let *G*
be the double star graph consisting of vertices *x_1*, ..., *x_p*, *a*, *b*, *y_1*, ..., *y_q*, where *p*, *q* > 1. The edges of *G* are defined as follows: each *x_i* is adjacent to *a*, *a* is adjacent to *b*, and *b* is adjacent to each *b_j*. Then γ(*G*) = 2 since {*a*, *b*} is a minimal vertex domination set. If *p* ≤ *q*, then *i*(*G*) = *p* + 1 since {*x_1*, ..., *x_p*, b} a smallest maximal independent set.

## 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.[5] 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 α-approximation algorithm for minimum dominating sets would provide a polynomial-time α-approximation algorithm for the set cover problem and vice versa. Both problems are in fact Log-APX-complete.[6]

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 1 + log |*V*| approximation of a minimum dominating set, and no polynomial time algorithm can achieve an approximation factor better than *c* log |*V*| for some *c* > 0 unless P = NP.[7]

### 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.[5]

**From dominating set to set covering.**
Given a graph *G* = (*V*, *E*) with *V* = {1, 2, ..., *n*}, construct a set cover instance (*U*, *S*) as follows: the universe *U* is *V*, and the family of subsets is *S* = {*S*_{1}, *S*_{2}, ..., *S*_{n}} such that *S*_{v} consists of the vertex *v* and all vertices adjacent to *v* in *G*.

Now if *D* is a dominating set for *G*, then *C* = {*S*_{v} : *v* ∈ *D*} is a feasible solution of the set cover problem, with |*C*| = |*D*|. Conversely, if *C* = {*S*_{v} : *v* ∈ *D*} is a feasible solution of the set cover problem, then *D* is a dominating set for *G*, with |*D*| = |*C*|.

Hence the size of a minimum dominating set for *G* equals the size of a minimum set cover for (*U*, *S*). 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 α-approximation algorithm for set covering provides an efficient α-approximation algorithm for minimum dominating sets.

- For example, given the graph
*G*shown on the right, we construct a set cover instance with the universe*U*= {1, 2, ..., 6} and the subsets*S*_{1}= {1, 2, 5},*S*_{2}= {1, 2, 3, 5},*S*_{3}= {2, 3, 4, 6},*S*_{4}= {3, 4},*S*_{5}= {1, 2, 5, 6}, and*S*_{6}= {3, 5, 6}. In this example,*D*= {3, 5} is a dominating set for*G*– this corresponds to the set cover*C*= {*S*_{3},*S*_{5}}. For example, the vertex 4 ∈*V*is dominated by the vertex 3 ∈*D*, and the element 4 ∈*U*is contained in the set*S*_{3}∈*C*.

- For example, given the graph

**From set covering to dominating set.**
Let (*S*, *U*) be an instance of the set cover problem with the universe *U* and the family of subsets *S* = {*S*_{i} : *i* ∈ *I*}; we assume that *U* and the index set *I* are disjoint. Construct a graph *G* = (*V*, *E*) as follows: the set of vertices is *V* = *I* ∪ *U*, there is an edge {*i*, *j*} ∈ *E* between each pair *i*, *j* ∈ *I*, and there is also an edge {*i*, *u*} for each *i* ∈ *I* and *u* ∈ *S*_{i}. That is, *G* is a split graph: *I* is a clique and *U* is an independent set.

Now if *C* = {*S*_{i} : *i* ∈ *D*} is a feasible solution of the set cover problem for some subset *D* ⊆ *I*, then *D* is a dominating set for *G*, with |*D*| = |*C*|: First, for each *u* ∈ *U* there is an *i* ∈ *D* such that *u* ∈ *S*_{i}, and by construction, *u* and *i* are adjacent in *G*; hence *u* is dominated by *i*. Second, since *D* must be nonempty, each *i* ∈ *I* is adjacent to a vertex in *D*.

Conversely, let *D* be a dominating set for *G*. Then it is possible to construct another dominating set *X* such that |*X*| ≤ |*D*| and *X* ⊆ *I*: simply replace each *u* ∈ *D* ∩ *U* by a neighbour *i* ∈ *I* of *u*. Then *C* = {*S*_{i} : *i* ∈ *X*} is a feasible solution of the set cover problem, with |*C*| = |*X*| ≤ |*D*|.

- The illustration on the right show the construction for
*U*= {*a*,*b*,*c*,*d*,*e*},*I*= {1, 2, 3, 4},*S*_{1}= {*a*,*b*,*c*},*S*_{2}= {*a*,*b*},*S*_{3}= {*b*,*c*,*d*}, and*S*_{4}= {*c*,*d*,*e*}.

- The illustration on the right show the construction for

- In this example,
*C*= {*S*_{1},*S*_{4}} is a set cover; this corresponds to the dominating set*D*= {1, 4}.

- In this example,

*D*= {*a*, 3, 4} is another dominating set for the graph*G*. Given*D*, we can construct a dominating set*X*= {1, 3, 4} which is not larger than*D*and which is a subset of*I*. The dominating set*X*corresponds to the set cover*C*= {*S*_{1},*S*_{3},*S*_{4}}.

### Special cases

If the graph has maximum degree Δ, then the greedy approximation algorithm finds an *O*(log Δ)-approximation of a minimum dominating set. Also, let *d*_{g} be the cardinality of dominating set obtained using greedy approximation then following relation holds, , where *N* is number of nodes and *M* is number of edges in given undirected graph.[8] For fixed Δ, this qualifies as a dominating set for APX membership; in fact, it is APX-complete.[9]

The problem admits a polynomial-time approximation scheme (PTAS) for special cases such as unit disk graphs and planar graphs.[10] A minimum dominating set can be found in linear time in series-parallel graphs.[11]

### Exact algorithms

A minimum dominating set of an *n*-vertex graph can be found in time *O*(2^{n}*n*) by inspecting all vertex subsets. Fomin, Grandoni & Kratsch (2009) show how to find a minimum dominating set in time *O*(1.5137^{n}) and exponential space, and in time *O*(1.5264^{n}) and polynomial space. A faster algorithm, using *O*(1.5048^{n}) time was found by van Rooij, Nederlof & van Dijk (2009), 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 1.7159^{n} and all such sets can be listed in time *O*(1.7159^{n}).[12]

### Parameterized complexity

Finding a dominating set of size *k* 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 *f*(*k*)*n*^{O(1)} for any function *f* 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 *k*,[13] and running times that are exponential in √*k* and cubic in *n* may be obtained by applying dynamic programming to a branch-decomposition of the kernel.[14] 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.[15]

The complementary set to a dominating set, a nonblocker, can be found by a fixed-parameter algorithm on any graph.[16]

## Variants

Vizing's conjecture relates the domination number of a cartesian product of graphs to the domination number of its factors.

There has been much work on connected dominating sets. 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* 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. 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.

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. An (1+log n)-approximation of a minimum *k*-tuple dominating set can be found in polynomial time.[17] Similarly, 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. While every graph admits a *k*-dominating set, only graphs with minimum degree *k* − 1 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;[18] An (1.7 + log Δ)-approximation of a minimum *k*-dominating set can be found in polynomial time as well.

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*.

## See also

## Notes

- Garey & Johnson (1979).
- Hedetniemi & Laskar (1990).
- Allan & Laskar (1978).
- Faudree, Flandrin & Ryjáček (1997).
- Kann (1992), pp. 108–109.
- Escoffier & Paschos (2006).
- Raz & Safra (1997).
- Parekh (1991).
- Papadimitriou & Yannakakis (1991).
- Crescenzi et al. (2000).
- Takamizawa, Nishizeki & Saito (1982).
- Fomin et al. (2008).
- Alber, Fellows & Niedermeier (2004).
- Fomin & Thilikos (2006).
- Telle & Villanger (2012).
- Dehne et al. (2006).
- Klasing & Laforest (2004).
- Förster (2013).

## References

- Alber, Jochen; Fellows, Michael R; Niedermeier, Rolf (2004), "Polynomial-time data reduction for dominating set",
*Journal of the ACM*,**51**(3): 363–384, arXiv:cs/0207066, doi:10.1145/990308.990309. - Allan, Robert B.; Laskar, Renu (1978), "On domination and independent domination numbers of a graph",
*Discrete Mathematics*,**23**(2): 73–76, doi:10.1016/0012-365X(78)90105-X. - Crescenzi, Pierluigi; Kann, Viggo; Halldórsson, Magnús; Karpinski, Marek; Woeginger, Gerhard (2000), "Minimum dominating set",
*A Compendium of NP Optimization Problems*. - Dehne, Frank; Fellows, Michael; Fernau, Henning; Prieto, Elena; Rosamond, Frances (2006), "Nonblocker: Parameterized algorithmics for minimum dominating set" (PDF),
*SOFSEM 2006: 32nd Conference on Current Trends in Theory and Practice of Computer Science, Merin, Czech Republic, January 21-27, 2006, Proceedings*, Lecture Notes in Computer Science,**3831**, Springer, pp. 237–245, doi:10.1007/11611257_21. - Escoffier, Bruno; Paschos, Vangelis Th. (2006), "Completeness in approximation classes beyond APX",
*Theoretical Computer Science*,**359**(1–3): 369–377, doi:10.1016/j.tcs.2006.05.023 - Faudree, Ralph; Flandrin, Evelyne; Ryjáček, Zdeněk (1997), "Claw-free graphs — A survey",
*Discrete Mathematics*,**164**(1–3): 87–147, doi:10.1016/S0012-365X(96)00045-3, MR 1432221. - Fomin, Fedor V.; Grandoni, Fabrizio; Kratsch, Dieter (2009), "A measure & conquer approach for the analysis of exact algorithms",
*Journal of the ACM*,**56**(5): 25:1–32, doi:10.1145/1552285.1552286. - Fomin, Fedor V.; Grandoni, Fabrizio; Pyatkin, Artem; Stepanov, Alexey (2008), "Combinatorial bounds via measure and conquer: Bounding minimal dominating sets and applications",
*ACM Transactions on Algorithms*,**5**(1): 9:1–17, doi:10.1145/1435375.1435384. - Fomin, Fedor V.; Thilikos, Dimitrios M. (2006), "Dominating sets in planar graphs: branch-width and exponential speed-up",
*SIAM Journal on Computing*,**36**(2): 281, doi:10.1137/S0097539702419649. - Förster, Klaus-Tycho. (2013), "Approximating Fault-Tolerant Domination in General Graphs",
*Proc. of the Tenth Workshop on Analytic Algorithmics and Combinatorics ANALCO*, SIAM, pp. 25–32, doi:10.1137/1.9781611973037.4, ISBN 978-1-61197-254-2. - Garey, Michael R.; Johnson, David S. (1979),
*Computers and Intractability: A Guide to the Theory of NP-Completeness*, W. H. Freeman, ISBN 0-7167-1045-5, p. 190, problem GT2. - Hedetniemi, S. T.; Laskar, R. C. (1990), "Bibliography on domination in graphs and some basic definitions of domination parameters",
*Discrete Mathematics*,**86**(1–3): 257–277, doi:10.1016/0012-365X(90)90365-O. - Kann, Viggo (1992),
*On the Approximability of NP-complete Optimization Problems*(PDF). PhD thesis, Department of Numerical Analysis and Computing Science, Royal Institute of Technology, Stockholm. - Klasing, Ralf; Laforest, Christian (2004), "Hardness results and approximation algorithms of k-tuple domination in graphs",
*Information Processing Letters*,**89**(2): 75–83, doi:10.1016/j.ipl.2003.10.004. - Papadimitriou, Christos H.; Yannakakis, Mihailis (1991), "Optimization, Approximation, and Complexity Classes",
*Journal of Computer and System Sciences*,**43**(3): 425–440, doi:10.1016/0022-0000(91)90023-X - Parekh, Abhay K. (1991), "Analysis of a greedy heuristic for finding small dominating sets in graphs",
*Information Processing Letters*,**39**(5): 237–240, doi:10.1016/0020-0190(91)90021-9 - Raz, R.; Safra, S. (1997), "A sub-constant error-probability low-degree test, and sub-constant error-probability PCP characterization of NP",
*Proc. 29th Annual ACM Symposium on Theory of Computing*, ACM, pp. 475–484, doi:10.1145/258533.258641, ISBN 0-89791-888-6. - Takamizawa, K.; Nishizeki, T.; Saito, N. (1982), "Linear-time computability of combinatorial problems on series-parallel graphs",
*Journal of the ACM*,**29**(3): 623–641, doi:10.1145/322326.322328. - Telle, Jan Arne; Villanger, Yngve (2012), "FPT algorithms for domination in biclique-free graphs", in Epstein, Leah; Ferragina, Paolo (eds.),
*Algorithms – ESA 2012: 20th Annual European Symposium, Ljubljana, Slovenia, September 10–12, 2012, Proceedings*, Lecture Notes in Computer Science,**7501**, Springer, pp. 802–812, doi:10.1007/978-3-642-33090-2_69. - van Rooij, J. M. M.; Nederlof, J.; van Dijk, T. C. (2009), "Inclusion/Exclusion Meets Measure and Conquer: Exact Algorithms for Counting Dominating Sets",
*Proc. 17th Annual European Symposium on Algorithms, ESA 2009*, Lecture Notes in Computer Science,**5757**, Springer, pp. 554–565, doi:10.1007/978-3-642-04128-0_50, ISBN 978-3-642-04127-3.

## Further reading

- Grandoni, F. (2006), "A note on the complexity of minimum dominating set",
*Journal of Discrete Algorithms*,**4**(2): 209–214, CiteSeerX 10.1.1.108.3223, doi:10.1016/j.jda.2005.03.002. - Guha, S.; Khuller, S. (1998), "Approximation algorithms for connected dominating sets" (PDF),
*Algorithmica*,**20**(4): 374–387, doi:10.1007/PL00009201. - Haynes, Teresa W.; Hedetniemi, Stephen; Slater, Peter (1998a),
*Fundamentals of Domination in Graphs*, Marcel Dekker, ISBN 0-8247-0033-3, OCLC 37903553. - Haynes, Teresa W.; Hedetniemi, Stephen; Slater, Peter (1998b),
*Domination in Graphs: Advanced Topics*, Marcel Dekker, ISBN 0-8247-0034-1, OCLC 38201061.