ArticleslgStudy

computer science

Dominating set

Dominating set is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Dominating set rather than just read about it. In short: In graph theory, a dominating set for a graph G is a subset D of its vertices, such that any vertex of G is in D, or has a neighbor in D. The domination number γ(G) is the number of vertices in a smallest dominating set for G.

Dominating set — main illustration
Dominating set — illustration

Key takeaways

  • Dominating set belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Dominating set to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Dominating set from memory before moving on to harder problems.

Reference excerpt

In graph theory, a dominating set for a graph G is a subset D of its vertices, such that any vertex of G is in D, or has a neighbor in 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. Therefore it is believed that there may be no efficient algorithm that can compute γ(G) for all graphs G. 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. 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.

Formal definition Given an undirected graph G = (V, E), a subset of vertices D ⊆ V {\displaystyle D\subseteq V} is called a dominating set if for every vertex u ∈ V ∖ D {\displaystyle u\in V\setminus D} , there is a vertex v ∈ D {\displaystyle v\in D} such that { u , v } ∈ E {\displaystyle \{u,v\}\in E} . Every graph has at least one dominating set: if D = V = {\displaystyle D=V=} the set of all vertices, then by definition D is a dominating set, since there is no vertex u ∈ V ∖ D {\displaystyle u\in V\setminus D} . A more interesting challenge is to find small dominating sets. The domination number of G is defined as: γ ( G ) := min { | D | : D is a dominating set of G } {\displaystyle \gamma (G):=\min\{|D|:D{\text{ is a dominating set of }}G\}} .

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.

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

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.

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 = {S1, S2, ..., Sn} such that Sv consists of the vertex v and all vertices adjacent to v in G. Now if D is a dominating set for G, then C = {Sv : v ∈ D} is a feasible solution of the set cover problem, with |C| = |D|. Conversely, if C = {Sv : 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 S1 = {1, 2, 5}, S2 = {1, 2, 3, 5}, S3 = {2, 3, 4, 6}, S4 = {3, 4}, S5 = {1, 2, 5, 6}, and S6 = {3, 5, 6}. In this example, D = {3, 5} is a dominating set for G – this corresponds to the set cover C = {S3, S5}. For example, the vertex 4 ∈ V is dominated by the vertex 3 ∈ D, and the element 4 ∈ U is contained in the set S3 ∈ C.

… excerpt ends here. Continue reading the full article.

Illustrations

Dominating set: Three dominating sets of the same graph (in red). The domination number of this graph is 2: (b) and (c) show that there is a dominating set with 2 vertices, and there is no dominating set with only 1 vertex.
Three dominating sets of the same graph (in red). The domination number of this graph is 2: (b) and (c) show that there is a dominating set with 2 vertices, and there is no dominating set with only 1 vertex.
Dominating set illustration
Dominating set illustration

Worked examples

Example 1 — a first encounter with Dominating set

Start with the simplest possible case. Write down what Dominating set claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Dominating set before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Dominating set ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Dominating set

In research
Dominating set appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Dominating set in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Dominating set is common in secondary-school and first-year university syllabi. It links to neighbouring topics Computational problems in graph theory, Graph theory objects, NP-complete problems, so understanding it makes those chapters shorter.
In everyday life
Look for Dominating set outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Dominating set in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Dominating set means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Dominating set out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Dominating set in simple terms?

In graph theory, a dominating set for a graph G is a subset D of its vertices, such that any vertex of G is in D, or has a neighbor in D. The domination number γ(G) is the number of vertices in a smallest dominating set for G.

Why does Dominating set matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Dominating set?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Dominating set.

Tags

  • Computational problems in graph theory
  • Graph theory objects
  • NP-complete problems

Keep exploring