Efficient sub-5 approximations for minimum dominating sets in unit disk graphs$

G.D. da Fonsecaa, C.M.H. de Figueiredo1, V.G. Pereira de S´a1, R.C.S. Machadoc

aUniversidade Federal do Estado do Rio de Janeiro, Brazil bUniversidade Federal do Rio de Janeiro, Brazil cInstituto Nacional de Metrologia, Qualidade e Tecnologia, Brazil

Abstract A unit disk graph is the of n congruent disks in the plane. Dominating sets in unit disk graphs are widely studied due to their applicabil- ity in wireless ad-hoc networks. Because the minimum prob- lem for unit disk graphs is NP-hard, numerous approximation algorithms have been proposed in the literature, including some PTASs. However, since the proposal of a linear-time 5- in 1995, the lack of efficient algorithms attaining better approximation factors has aroused at- tention. We introduce an O(n+m) algorithm that takes the usual adjacency representation of the graph as input and outputs a 44/9-approximation. This approximation factor is also attained by a second algorithm, which takes the geometric representation of the graph as input and runs in O(n log n) time regardless of the number of edges. Additionally, we propose a 43/9- approximation which can be obtained in O(n2m) time given only the graph’s adjacency representation. It is noteworthy that the dominating sets obtained by our algorithms are also independent sets.

arXiv:1204.3488v3 [cs.DS] 28 Jan 2014 Keywords: approximation algorithms; dominating set; unit disk graph.

$An extended abstract of this paper appeared in the proceedings of the 10th Workshop on Approximation and Online Algorithms (WAOA’12), Lecture Notes in Computer Science 7846 (2013), 82–92. Research partially supported by FAPERJ and CNPq grants. Email addresses: [email protected] (G.D. da Fonseca), [email protected] (C.M.H. de Figueiredo), [email protected] (V.G. Pereira de S´a), [email protected] (R.C.S. Machado)

Preprint submitted to Theoretical Computer Science September 15, 2021 1. Introduction

A unit disk graph G is a graph whose n vertices can be mapped to points in the plane and whose m edges are defined by pairs of points within Euclidean distance at most 1 from one another. Alternatively, one can regard the vertices of G as mapped to coplanar disks of unit diameter, so that two vertices are adjacent whenever the corresponding disks intersect. A dominating set D is a subset of the vertices of a graph such that every vertex not in D is adjacent to some vertex in D. An independent set is a subset of mutually non-adjacent vertices. An independent dominating set is a dominating set which is also an independent set. Note that any maximal independent set is an independent dominating set. Dominating sets in unit disk graphs are widely studied due to their ap- plication in wireless ad-hoc networks [15]. Since it is NP-hard to compute a minimum dominating set of a unit disk graph [4], several approximation al- gorithms have been proposed [6, 7, 11, 12, 15, 19, 23]. Such algorithms are of two main types. Graph-based algorithms receive as input the adjacency rep- resentation of the graph and assume no knowledge of the point coordinates, whereas geometric algorithms work in the Real RAM model of computation and receive solely the vertex coordinates as input1. If the coordinates of the n disk centers are known, the m edges of the corresponding graph G can be figured out easily. It can be done in O(n + m) time under the Real RAM model with floor function and constant-time hash- ing, and in O(n log n + m) time without those operations [1]. Thus, for the price of a conversion step, graph-based algorithms can be used when the input is a unit disk realization of G. However, unless P=NP, no efficient algorithm exists to decide whether a given graph admits a unit disk real- ization [3], let alone exhibit one. As a consequence, geometric algorithms cannot be efficiently transformed into graph-based algorithms. In this pa- per, we introduce approximation algorithms of both types, benefiting from the same approximation factor analysis. The proposed graph-based algo- rithm runs in O(n+m) time, and the geometric algorithm runs in O(n log n) time regardless of m.

1The Real RAM model is a technical necessity, otherwise storing the coordinates of the vertices would require an exponential number of bits [17].

2 Previous algorithms. A graph-based 5-approximation algorithm that runs in O(n + m) time was presented in [15]. The algorithm computes a maximal independent set, which turns out to be a 5-approximation because unit disk 2 graphs contain no K1,6 as induced subgraphs, as shown in that same paper. Polynomial-time approximation schemes (PTAS) were first presented as geometric algorithms [12] and later as graph-based algorithms [19]. Also, a graph-based PTAS for the more general disk graphs was proposed in [11]. Unfortunately, the complexities of the existing PTASs are high-degree poly- nomials. For example, the PTAS presented in [19] takes O(n225) time to obtain a 5-approximation (using the analysis from [6]). Although its analysis is not tight, the running time is too high even for moderately large graphs. The reason is that these PTASs invoke a subroutine that verifies by brute force whether a graph admits a dominating set with k vertices. The verifi- cation takes nO(k) time, and it is unlikely that this can be improved (unless FPT=W[1], as proved in [16]). Such a subroutine is applied to several sub- graphs, and the value of k grows as the approximation error decreases. A similar strategy was used in [13] to obtain a PTAS for the minimum inde- pendent dominating set. The lack of fast algorithms with approximation factor less than 5 was re- cently noticed in [6], where geometric algorithms with approximation factors of 4 and 3 and running times respectively O(n9) and O(n18) were presented. While a significant step towards approximating large instances, those algo- rithms require the geometric representation of the graph, and their running times are still polynomials of rather high degrees. Linear and near-linear- time approximation algorithms constitute an active topic of research, even for problems that can be solved exactly in polynomial time, such as maximum flow and maximum matching [5, 22]. It is useful to contrast the minimum dominating set problem with the maximum independent set problem. While a maximal independent set is a 5-approximation to both problems, it is easy to obtain a geometric 3-approx- imation to the maximum independent set problem in O(n log n) time [18]. In the graph-based version, a related strategy takes roughly O(n5) time, though. No similar results are known for the minimum dominating set problem. The existing PTASs for the minimum dominating set problem in unit disk graphs are based on some packing constraints that apply to unit disk

2 The graph K1,q consists of a vertex with q pendant neighbors.

3 graphs.3 One of these constraints is the bounded growth property: the size of an independent set formed by vertices within distance r of a given vertex, in a unit disk graph, is at most (1 + 2r)2. Note, however, that the bounded growth property is not tight. For example, for r = 1, it gives an upper bound of 9 vertices where the actual maximum size is 5. Since the bounded growth property is strongly connected to the problem of packing circles in a circle, obtaining exact values for all r seems unlikely [9].

Our contribution. Our main result consists of the two approximation algo- rithms given in Section 3: a graph-based algorithm, which runs in linear O(n + m) time, and its geometric counterpart, which runs in O(n log n) time in the Real RAM model, regardless of the number of edges. The approxi- mation factor of both algorithms is 44/9. The strategy in both cases is to construct a 5-approximate solution using the algorithm from [15], and then perform local improvements to that initial dominating set. Our main lemma (Lemma 9) uses forbidden subgraphs to show that a solution that admits no local improvement is a 44/9-approximation. Since the dominating sets produced by our algorithms are independent sets, the same approximation factor holds for the independent dominating set problem. Proving that a certain graph is not a unit disk graph (and is therefore a forbidden induced subgraph) is no easy feat4. We make use of an assortment of results from discrete geometry in order to prove properties of unit disk graphs that are interesting per se. For example, we use universal covers and disk packings to show that the neighborhood of a clique in a unit disk graph contains at most 12 independent vertices. These properties, along with a tighter version of the bounded growth property, are collected in Section 2, and allow us to show that certain graphs are not unit disk graphs. Consequently, the analyses of our algorithms employ a broader set of forbidden subgraphs which include, but are not limited to, the K1,6. Additionally, in Section 4, we show that a possible, somewhat natural re- finement to our graph-based algorithm leads to a tighter 43/9-approximation, albeit for the price of an extra O(n2) multiplying factor in the time complex- ity of the algorithm.

3In packing problems, one usually wants to enclose non-overlapping objects into a re- cipient covering the greatest possible fraction of the recipient area. 4The fastest known algorithm to decide whether a given graph is a unit disk graph is doubly exponential [21].

4 2. Forbidden subgraphs

In this section, we introduce some lemmas about the structure of unit disk graphs. These lemmas will be applied to prove our approximation factors in Sections 3 and 4. We start by stating three previous results from the area of discrete geometry. The first lemma comes from the study of universal covers (for a recent survey see [10]).

Lemma 1 (P´al[20]). If a set of points P has diameter 1, then P can be enclosed by a circle of radius 1/√3.

Packing congruent disks in a circle is a well-studied problem. Exact bounds on the radius of the smallest circle packing k unitary disks are known for some small values of k, namely k 13 and k = 19 [9]. The bound for k = 13 will be useful to us. ≤

Lemma 2 (Fodor [9]). The radius of the smallest circle enclosing 13 points with mutual distances at least 1 is (1 + √5)/2.

The density of a packing is the ratio between the covered area and the total area. The following general upper bound is useful when no exact bound is known.

Lemma 3 (Fejes T´oth [8]). Every packing of two or more congruent disks in a convex region has density at most π/√12.

Given a graph G = (V,E) and a vertex v V , let N(v) denote the open neighborhood of v and let N[v] = N(v) v denote∈ the closed neighborhood of v. More generally, the open r-neighborhood∪ { } of a vertex v is the set of vertices w such that the distance between v and w in G is exactly r, while the closed r-neighborhood of a vertex v is the set of vertices w such that the distance between v and w in G is at most r. For a set S V , we let ⊆ NS(v) = N(v) S and NS[v] = N[v] S. Finally, given a subgraph H of G, the closed neighborhood∩ of H, denoted∩ N[H], is the set of vertices that belong to the closed neighborhood of some vertex of H. The following two lemmas concern neighborhoods in unit disk graphs. Lemma 4. The closed neighborhood of a clique in a unit disk graph contains at most 12 independent vertices.

5 Proof. By Lemma 1, the points which define a clique in a unit disk graph can be enclosed by a circle of radius 1/√3. Therefore, the points correspond- ing to the closed neighborhood of such a clique are enclosed by a circle of radius 1+(1/√3). By Lemma 2, a circle enclosing 13 points with mutual dis- tances at least 1 has radius at least (1+√5)/2. Since (1+√5)/2 > 1+(1/√3), the lemma follows.

Lemma 5. Given an integer r 1, the closed r-neighborhood of a vertex in a unit disk graph contains at most≥ π(2r + 1)2/√12 independent vertices. b c Proof. All n disks of diameter 1 corresponding to the closed r-neighborhood of a vertex v must be enclosed by a circle Z of radius (2r + 1)/2 centered on v. Each disk of diameter 1 has area π/4 and Z has area (2r + 1)2π/4. Using Lemma 3, we have (n π/4)/((2r + 1)2π/4) π/√12, and the lemma follows. ≤

We say that a graph G is (k, `)-pendant if there is a vertex v in G with k vertices of degree 1 in the open neighborhood of v and ` vertices of degree 1 in the open 2-neighborhood of v. We refer to v as a generator of the (k, `)- pendant graph. The following lemma bounds the value of the parameter ` for (4, `)-pendant unit disk graphs.

Lemma 6. If G is a (4, `)-pendant unit disk graph, then ` 8. ≤

Proof. Let v be a generator of G. Since K1,6 is a forbidden induced sub- graph [15] and v has 4 neighbors of degree 1, we have that the remaining neighbors of v together with v itself form a clique. By Lemma 4, it follows that 4 + ` 12. ≤ Next, we consider the case of (3, `)-pendant unit disk graphs.

Lemma 7. If G is a (3, `)-pendant unit disk graph, then ` 16. ≤ Proof. Let v be a generator of G. Since two vertices are adjacent if and only if their Euclidean distance is at most 1, the closed neighborhood of v lies inside a circle of radius 1 centered at v. Let u be a neighbor of v with degree 1. We divide the aforementioned circle into six congruent sectors s1, . . . , s6 in such a way that u sits on the boundary of two adjacent sectors s1, s2. Since the diameter of each sector is 1 and u has degree 1, we have

6 R R′ 2.5 2.5 √3 1.5 2.5 1.5 2 1.5 1.51 1.5 (a) (b)

Figure 1: Upper bounds to the area of the Minkowski sum of s5 s6 and a disk of radius 1.5 in the two different scenarios discussed in the proof of Lemma∪ 7: in (a), the dark area corresponds to a semicircle containing s5 s6; in (b), it corresponds to the convex hull ∪ of s5 s6. ∪ that s1 s2 only contains vertex u. By the same argument, the remaining two neighbors∪ of v that have degree 1 are contained in two of the remaining four sectors, which we call s3, s4 (note that the sectors do not necessarily appear in the order s1, . . . , s6). Therefore, only sectors s5, s6 may contain the neighbors of v that have degree greater than 1. Notice that the neighbors of the vertices in s5 s6 should be located ∪ within Euclidean distance at most 1 from s5 s6. Consequently, the disks of unit diameter corresponding to such vertices∪ should be completely contained in the region defined as the Minkowski sum of s5 s6 and a disk of radius 1.5, ∪ i.e. the region within distance at most 1.5 from s5 s6. We compute upper bounds to the area of such a region by considering∪ two cases, depending on whether s5 and s6 are opposite sectors (bounded by the same pair of straight lines). First, we consider the case when s5 and s6 are not opposite sectors. In this scenario, s5 s6 is contained in a semicircle of radius 1 centered at the generator v, as represented∪ in Figure 1(a). We define a region R as the locus of points within distance at most 1.5 from the aforementioned semicircle of radius 1. The area a of R is therefore a = 3 + 17π/4. By Lemma 3, the number of disks of unit diameter contained in R is at     most a √π 1 < 18.8814 < 19. Since k = 3 of these disks are the · 12 · π/4 degree-1 neighbors of v, we have ` < 16. Second, we consider the case when s5 and s6 are opposite sectors. In this scenario, the region s5 s6 is not convex. In order to obtain a convex region R0, we define R0 as the∪ locus of points within distance at most 1.5 from

7 0 0 the convex hull of s5 s6 (see Figure 1(b)). The area a of R is therefore 7√3/2 + 43π/12. ∪ By Lemma 3, the number of disks of unit diameter contained in R0 is at     most a0 √π 1 < 19.9989 < 20. Since k = 3 of these disks are the · 12 · π/4 degree-1 neighbors of v, we have ` < 17.

Finally, the following lemma holds for the general case.

Lemma 8. If G is a (k, `)-pendant unit disk graph, then k + ` 22. ≤ Proof. Immediately from Lemma 5 with r = 2.

3. Linear-time 44/9-approximation

In this section, we present two 44/9-approximation algorithms. The key property to analyze the approximation factor is presented in Lemma 9, while the running time analyses are presented in Sections 3.1 and 3.2. Hereafter, let G = (V,E) be a unit disk graph, and let D V be an independent dominating set of G. If v D and uv E, we⊆ say that v dominates u and, conversely, that u is dominated∈ by v.∈ As already mentioned, unit disk graphs are free of induced K1,6. There- fore, at most 5 vertices of D may belong to the closed neighborhood of any given vertex v V .A corona is a set C D consisting of exactly 5 neigh- bors of some vertex∈ c V D. Such a⊆ vertex c, which is not necessarily unique, is called a core ∈of the\ corona C, whereas the 5 vertices of the corona are referred to as the corona’s petals. Notice that the subgraph induced by a corona C and a corresponding core c is a K1,5. Given a dominating set D, a corona C D is said to be reducible if there is a core c of C such that D c C is a⊆ dominating set. We refer to the operation that converts D into∪ { the}\ smaller dominating set D c C as a reduction of C with respect to c. If there is no core allowing for∪ { a}\ reduction of C, than C is dubbed irreducible. If C is an irreducible corona, then, for every core c of C, there must exist a vertex w V (C c ), such that: ∈ \ ∪ { } (i) w is not adjacent to c; (ii) w is only dominated, in D, by vertices that belong to C. We call w a witness of c, conveying the idea that the corona having c as a core cannot be reduced with respect to c due to the existence of w.

8 Lemma 9. Let G = (V,E) be a unit disk graph, D an independent dominat- ing set in G, and D∗ a minimum dominating set of G. If all coronas in D are irreducible, then ρ := D / D∗ 44/9. | | | | ≤ Proof. We use a charging argument to bound the ratio between the cardi- nalities of D and D∗. Consider that each vertex u D splits a unit charge ∈ evenly among the vertices in the closed neighborhood ND∗ [u]. The function f : D∗ (0, 5] below corresponds to the total charge assigned to each ver- tex v∗ →D∗, accumulating the (fractional) charges that v∗ receives from the ∈ ∗ vertices in ND[v ]:

X 1 f(v∗) = . (1) ∗ ∗ ND [u] u∈ND[v ] | |

∗ ∗ Note that, since D and D are dominating sets, neither ND∗ [u] nor ND[v ] ∗ ∗ are ever empty, and f(v ) ND[v ] . Such function f allows us to write the cardinality of D as ≤ | | X D = f(v∗). | | v∗∈D∗ Since P ∗ D ∗ ∗ f(v ) ρ = | | = v ∈D D∗ D∗ | | | | is precisely the average value of f( ) over the elements of D∗, we obtain the desired bound ρ 44/9 by showing· that the existence of vertices c∗ in D∗ with f(c∗) > 44/≤9 is counterbalanced by a sufficiently large number of vertices r∗ in D∗ with f(r∗) 4. Before we continue, note that≤ f(c∗) > 44/9 means that f(c∗) = 5, because the summation in (1) has at most 5 terms, all of which are of the form 1/i for some integer i 1. Thus, let c∗ be a vertex in D∗ with f(c∗) = 5. Clearly, ∗ ≥ ∗ ∗ c / D, otherwise f(c ) ND[c ] = 1, because D is an independent set. Moreover,∈ c∗ must have exactly≤ | 5 neighbors| in D, since a larger number of neighbors in D would imply the existence of an induced K1,6 in G, which ∗ ∗ is not possible, and a smaller number would imply f(c ) ND[c ] 4, a contradiction. Therefore, vertex c∗ is a core. ≤ | | ≤ Now let C D be the corona of which c∗ is a core. Because there are no reducible coronas⊆ in D, the core c∗ must have a witness w. Note that, ∗ for all petals u C, the only vertex in ND∗ [u] is the core c . Otherwise, ∈ 9 c∗ w r∗

C

Figure 2: Figure for the proof of Lemma 9. A square indicates a vertex of D∗, a solid circle a vertex of the corona C D, and a hollow circle a vertex not in D D∗. Vertices w and r∗ are respectively witness⊆ and reliever of core c∗. ∪ the contribution of some u C in the summation yielding f(c∗) — given by (1) — would be at most∈ 1/2, and f(c∗) would be at most 9/2 < 5, a contradiction. In particular, the above implies that the witness w, which is adjacent to at least one vertex in C, cannot belong to D∗. But D∗ is a dominating set, so there must exist a vertex r∗ D∗ that is adjacent to w, and r∗ = c∗ because a witness w is not adjacent∈ to the corresponding core by definition.6 We call r∗ a reliever of c∗. Figure 2 illustrates this situation. ∗ We now show that ND[r ] 4. For sake of contradiction, assume ∗ | | ≤ ND[r ] > 4. Because G is free of induced K1,6, such number must be |exactly| 5, so that r∗ is the core of a corona C0 D. Such a corona must be disjoint from corona C, otherwise there would be⊂ a vertex in C C0 adjacent to more than one vertex in D∗, namely c∗ and r∗, contradicting∩ the fact that the only neighbor in D∗ of any petal of C is the core c∗. Since, by definition, the witness w is only dominated in D by vertices of C, we have NC0 (w) = . Hence, C0 w is an independent set of G, constituting, along with the core∅ ∗ ∪{ } r , an induced K1,6 in G. This is a contradiction, because G is a unit disk ∗ ∗ ∗ ∗ graph. Thus, ND[r ] 4. Since f(r ) ND[r ] , we have f(r ) 4. We have just| shown| ≤ that the existence≤ of| a vertex| c∗ in D∗ with≤f(c∗) = 5 implies the existence of a vertex r∗ D∗ such that f(r∗) 4. Were this correspondence one-to-one, we would∈ be able to state that≤ the average of f( ) over the elements of D∗ was no greater than 4.5. Unfortunately, this correspondence· is not necessarily one-to-one, as exemplified by the graph in Figure 3, for which a disk model is given in Figure 4 with coordinates presented in Table 1. Still, the lemmas in Section 2 allow us to bound the ratio between the number of vertices c∗ with f(c∗) = 5 and the number of vertices r∗ for which the values of f are significantly lower. Let r∗ D∗ D be a reliever. In order ∈ \ 10 c∗ c∗ 2 w2 w3 3

c1∗ w1 w4 c4∗

r∗

∗ ∗ ∗ Figure 3: Unit disk graph where 4 distinct cores c1, . . . , c4 share the same reliever r .

Figure 4: Geometric model for the graph in Figure 3. Due to scale/precision issues, some disks appear to touch one another when in fact they do not. For clarity, disks that actually touch one another have their centers connected by a straight line. Moreover, there are no concentric disks among those for the witnesses w1, . . . , w4. The coordinates of the centers are given in Table 1. to obtain the claimed bound, we consider two cases depending on the size ∗ of ND[r ]: ∗ ∗ (i) |ND[r ]| ≤ 3. By Lemma 5, the closed 4-neighborhood of r contains at most 73 independent vertices. Since each corona contains 5 independent ∗ vertices, at most (73 ND[r ] )/5 = 14 cores may share a common re- b − | | c

11 r∗ : (0, 0); ∗ c1 :( 2492384, 879081), w1 :( 492423, 870355), ∗ − − c2 :( 1310377, 2686162), w2 :( 484809, 874619), ∗ − − c3 : (1310377, 2686162), w3 : (484809, 874619), ∗ c4 : (2492384, 879081), w4 : (492423, 870355); remaining vertices: ( 776025, 3531423), ( 1492384, 879081), ( 999986, 5235), (±2309705, 2722805), (±3491646, 917468), (±3023782, 31960), (±1776763, 3570742), (±1840296, 1838114), (±2022913, 3866), (±503019, 864274), (±2957226, 1764474), (±810377, 1820137)− . ± − ± ± Table 1: Coordinates of the centers of the disks in Figure 4. All diameters are equal to 1000001.

5 ∗ ∗ ∗ liever . To derive an upper bound, let c1, . . . , c14 D denote such cores. If ∗ ∈ ∗ ∗ ∗ ND[r ] 3, then the average value of f( ) among r , c , . . . , c is at most | | ≤ · 1 14 1 3 + 14 5 · · < 4.867. 15 ∗ ∗ (ii) |ND[r ]| = 4. By Lemma 6, if ND[r ] = 4, then at most 8 cores ∗ ∗ ∗ | | c1, . . . , c8 may have r as their common reliever, for otherwise we obtain a (4, 9)-pendant graph, which cannot be a unit disk graph. Thus, the average value of f( ) among r∗, c∗, . . . , c∗ is at most · 1 8 1 4 + 8 5 · · = 44/9 = 4.888 ... 9 ∗ The worst case is ND[r ] = 4, and therefore ρ 44/9, concluding the proof. | | ≤

3.1. Graph-based algorithm By Lemma 9, an independent dominating set with no reducible coronas is a 44/9-approximation to the minimum dominating set. We now describe how to obtain such a set in linear time given the adjacency list representation of the graph.

5We would like to thank an anonymous referee for this simplified argument.

12 We can easily compute a maximal independent set D, which is a 5-approx- imation to the minimum dominating set [15], in O(n + m) time. An inde- pendent dominating set with no reducible coronas can then be obtained by iteratively performing reductions. However, naively performing such reduc- tions leads to a running time of O(n2m), since (i) there are O(n) candidate cores for a reducible corona, (ii) detecting whether a vertex v is in fact the core of a reducible corona by inspecting the 3-neighborhood of v takes O(m) time, and (iii) we may need to reduce a total of O(n) coronas. Fortunately, the following algorithm modifies the set D and returns an independent dom- inating set with no reducible coronas in O(n + m) time.

(1) For each vertex v V D, compute ND(v). ∈ \ (2) For each vertex v V D, if ND(v) = 5, add ND(v) to the list of coronas (unless it∈ is already\ there).| | C (3) Let B . For each corona C , if there is a vertex c such that D c ←C ∅ is a dominating set, then∈ C add c to the set B. ∪ { }\ (4) Choose a maximal subset B0 of B such that the pairwise distance of the vertices in B0 is at least 5. 0 (5) For each vertex c B , perform a reduction D D c ND(c). ∈ ← ∪ { }\ (6) Repeat all the steps above until B0 = . ∅ The algorithm is correct since all changes made to D along its execution preserve the property that D is an independent dominating set. Notice that, in step (4), we only reduce coronas that are sufficiently far from each other, in order to guarantee that we do not reduce a corona that may have ceased to be reducible due to a previous reduction. Moreover, the algorithm always terminates because the size of D decreases at every iteration, except for the last one. Next, we show that the running time is O(n + m). Step (1) can be easily implemented to run in O(n+m) time. To execute step (2) in O(n+m) time, we must determine in constant time whether a corona is already in the list . This can be achieved by indexing each corona C by an arbitrary vertex vC C (say, the one with the lowest index), and by storing with v a list of coronas∈ that are in and whose index is v. Note that, because of the packing constraints inherentC to unit disk graphs, the number of coronas that contain a given vertex is constant. Step (3) can be implemented as follows (for each corona C ): ∈ C (3a) Let S1 be the union of the open neighborhoods of the 5 petals of C.

13 (3b) Let S2 be the set of vertices dominated only be vertices of C, i.e., S contains every vertex w S1 such that ND(w) C. ∈ ⊆ (3c) Let S3 be the intersection of the closed neighborhoods N[v] of all v ∈ S2 C. ∪ (3d) If S3 = , then add an arbitrary vertex of S3 to the set B. 6 ∅ The steps above take O(n + m) total time when executed for all coronas C , because the number of coronas that contain or are adjacent to a given vertex∈ C is also constant by packing constraints. It is easy to perform steps (4) and (5) in linear time. It remains to show that the whole process is only repeated for a constant number of iterations. Let B1,...,Bk denote the set of reducible coronas at each iteration of the algorithm with Bk = . Note that the reductions performed in step (5) never ∅ create a new reducible corona. Therefore B1 ) ) Bk. Let C denote a corona that was reduced in the last iteration k. If···C was not reduced during a previous iteration i < k, then another corona within distance 5 from C was reduced at that very iteration i. Since, again by packing constraints, the maximum number of coronas within constant distance from C is itself a constant, we have k = O(1). The following theorem summarizes the result from Section 3.1. Theorem 10. Given the adjacency list representation of a unit disk graph with n vertices and m edges, it is possible to find a 44/9-approximation to the minimum dominating set problem in O(n + m) time.

3.2. Geometric algorithm In this section, we describe how to obtain an independent dominating set with no reducible corona in O(n log n) time given the geometric representa- tion of the graph. The input is therefore a set P of n points. Without loss of generality, we assume that the corresponding unit disk graph is connected (otherwise, we can compute the connected components in O(n log n) time using a Delaunay triangulation [2]). We use terms related to vertices of the graph and to the corresponding points interchangeably. For example, we say a set of points is independent if all pairwise distances are greater than 1. We want the points of P to be structured in a suitable fashion. Thus, as a preliminary step, we sort the points by x-coordinates and by y-coordinates separately (such orderings will also be useful later on), and we partition the points of P according to an infinite grid with unitary square cells by

14 performing two sweeps on the sorted points. Without loss of generality, we assume that no point lies on the boundary of a grid cell. Given p P , let σ(p) denote the grid cell that contains p. We refer to the set of at∈ most 8 non-empty grid cells surrounding a cell Q as the open vicinity of Q, denoted N(Q), and to the union of Q and its open vicinity as the closed vicinity of Q, denoted N[Q]. Note that a point p can only be adjacent to points in the closed vicinity of σ(p), that is, N[p] N[σ(p)]. Each point p P stores a pointer to its containing cell σ(p). Also,⊂ each cell stores the list∈ of points it contains and pointers to the cells in its open vicinity. Since the graph is connected, the diameter of the point set is at most n 1, and thus this whole step can be done in O(n log n) time. − We are now able to show how to compute a maximal independent set D efficiently. We begin by making a copy P 0 of P , and by letting D . Then we repeat the two following steps while set P 0 is non-empty. (i)← Choose ∅ an arbitrary point p P 0 and add it to set D. (ii) For each point p0 in the closed vicinity of σ(p), remove∈ p0 from P 0 if pp0 1. When P 0 becomes empty, D is an independent dominating set. Thisk processk ≤ takes O(n) time due to the two following facts. First, a cell belongs to the closed vicinity of a constant number of cells. Second, the maximum number of points inside a cell with pairwise distances greater than 1 is also a constant. We now have that D is a maximal independent set, and therefore a 5-approximation to the minimum dominating set. Next, we show how to modify D in order to produce an independent dominating set with no re- ducible corona, therefore a 44/9-approximation to the minimum dominating set. The algorithm mirrors the one in Section 3.1, but each step takes no more than O(n log n) time using the geometric representation of the graph. Since D is an independent set and a grid cell Q has side 1, a simple packing argument shows that D Q 4. We store the set D Q in the | ∩ | ≤ ∩ corresponding cell Q. In order to compute ND(p), it suffices to inspect the at most 36 points in D Q for Q N[σ(p)]. We can then build a list of coronas in O(n) time (steps∩ (1) and∈ (2) of Section 3.1). To perform step (3), we need to find out whether there is a core c such that D c C is a dominating set, for each corona C = p1, . . . , p5 . First, ∪ { }\ { } we make S1 the union of ND(pi) for 1 i 5. Then, we let S2 be the subset ≤ ≤ of S1 containing only the points p with ND(p) C. These first two steps are similar to steps (3a) and (3b) in Section 3.1.⊆ The remaining sub-steps of step (3) are significantly different, though. We proceed by making S3 = S2 C. We need to determine whether there ∪ 15 is a point p S3 that is adjacent to all points in S3. For each p S3, let β(p) denote∈ the disk of radius 1 centered at p. Let R denote the∈ convex region defined by the intersection of β(p) for all p S3. A point p is adjacent ∈ to all points in S3 if and only if p R. We can compute the region R in ∈ O( S3 log S3 ) time using divide-and-conquer in a manner analogous to half- | | | | plane intersection [2]. We can then test whether each point p S3 belongs to the region R in logarithmic time using binary search (remember∈ the points were previously sorted). If there is at least one point p S3 R, then we add p to the set B. Therefore, the whole step (3) takes O∈(n log∩n) time. In step (4) of the geometric algorithm, we choose an alternative set B0 B which can be computed in O(n) time as follows. For each p B, we add⊂ p to B0 and then remove from B all points that are contained∈ in the cells within Euclidean distance at most 4 of σ(p). Since by packing constraints there are O(1) points in the intersection of D and the closed vicinity of a cell, we can easily perform step (5) in O(n) time. Finally, the number of repetitions triggered by step (6) is constant by an argument identical to the one given for the graph-based algorithm. The following theorem summarizes the result from Section 3.2.

Theorem 11. Given a set of n points representing a unit disk graph, it is possible to find a 44/9-approximation to the minimum dominating set problem in O(n log n) time in the Real RAM model of computation.

4. Achieving a 43/9-approximation

In the previous section, a 44/9-approximation was obtained by reducing coronas of a maximal independent set D of graph G, that is, by subsequently replacing 5 petals with 1 core in D as long as that operation preserved dom- inance. A natural step to tighten the approximation factor is to allow for weak reductions, whereby the 5 petals of a corona C are removed from the independent dominating set D, yet not only is a core c of C inserted into D but also some mutually non-adjacent witnesses of c, as long as their number is no greater than 3 and they dominate all witnesses of c. By doing so, the weak reduction of C (with respect to c) preserves dominance and still shaves off at least one unit from the size of D. If such operation is possible on a corona C, then C is said to be weakly reducible. A core c which has 4 (or

16 more) mutually non-adjacent witnesses is said to be an overwhelmed core.6 We consider the graph-based algorithm presented in Section 3.1 with some modifications to cope with weak reductions. The whole modified algorithm becomes:

(1) For each vertex v V D, compute ND(v). ∈ \ (2) For each vertex v V D, if ND(v) = 5, add C = ND(v) to the list of ∈ \ | | coronas (unless it is already there), and add v to the list LC containing the coresC of C. (3) Let B be an initially empty mapping of cores onto sets of witnesses. For each corona C , if there is a vertex c LC and an independent set Wc ∈ C ∈ with at most 3 witnesses of c such that (D C) c Wc is a dominating \ ∪{ }∪ set, then add (c, Wc) to B. (4) Choose a maximal subset B0 of the cores in B such that the pairwise distance of the vertices in B0 is at least 5. 0 (5) For each vertex c B , perform a (weak) reduction D (D ND(c)) ∈ ← \ ∪ c Wc. { } ∪ (6) Repeat all the steps above until B0 = . ∅ The new step (3) can be implemented as follows (for each corona C ): ∈ C

(3a) Let S1 be the union of the open neighborhoods of the 5 petals of C. (3b) Let S2 be the set of all vertices w S1 with ND(w) C. ∈ ⊆ (3c) For each core c LC , greedily obtain a maximal independent set Wc of ∈ S2 N[c]. If Wc 3, add (c, Wc) to B and break. \ | | ≤ Because each core is evaluated separately as to whether it allows for a weak reduction (whereas in the algorithm of Section 3.1 a constant number of set operations per corona was executed), step (3c) dominates the complex- ity of the whole sequence of steps (1) to (5), with a total O(nm) time for running on all coronas C . Another important difference, as far as goes, is that in∈ this C modified algorithm the number of iterations

6If c is an overwhelmed core of a corona C, then it might be the case that a weak reduction on C with respect to c is still possible. If the subgraph G[W ] induced by the set W of witnesses of c admits an independent dominating set W 0 W of size no greater than 3, then (D C) c W 0 is still an independent dominating set⊆ of G, and its cardinality is strictly less\ than∪ { }D ∪. However, one cannot decide in (close to) linear time whether such a dominating set exists,| | and that will not be required by our algorithm.

17 ...

Figure 5: Example of graph with a maximal independent set (represented by solid circles) containing only 1 weakly reducible corona. After every weak reduction performed by the modified algorithm, except for the last one, a new weakly reducible corona is created. of the main loop — steps (1) to (5) — is no longer O(1), due to the fact that new (weakly) reducible coronas can be created, as illustrated in Fig- ure 5. However, the number of iterations is certainly O(n), because the size of D decreases by at least 1 in each iteration. Hence the overall time com- plexity of the modified algorithm is O(n2m). Next, we establish the approximation factor of the modified algorithm. Note that step (3c) asserts that the coronas that are not (weakly) reduced by the algorithm present only overwhelmed cores.

Lemma 12. Let G = (V,E) be a unit disk graph, D an independent dom- inating set in G, and D∗ a minimum dominating set of G. If all coronas in D have only overwhelmed cores, then ρ = D / D∗ 43/9. | | | | ≤ Proof. We follow a strategy similar to that in the proof of Lemma 9 (also using the concept of reliever defined therein): by employing the same func- tion f : D∗ (0, 5] defined in (1), we prove there is an appropriate balance among vertices→ with high (> 43/9) and low ( 4) images under f, thus yielding an average value for f( ) that is no greater≤ than 43/9 — the claimed approximation factor. · Let c∗ be a vertex in D∗ with f(c∗) > 43/9. Because 43/9 > 4.5, and all (at most 5) terms in the summation that yields f are either 1 or no greater than 0.5, we have that f(c∗) > 43/9 implies f(c∗) = 5. So c∗ is a core. By hypothesis, c∗ is overwhelmed. Hence, c∗ possesses at least 4 mutually non- adjacent witnesses w1, . . . , w4, each one implying the existence of a reliever r∗ D∗ with f(r∗) 4. Surely, such relievers need not be all distinct, and different∈ cores may≤ share a common reliever. Still, geometric properties of unit disk graphs allow us to derive upper bounds for the core-to-reliever ratio. We can thus obtain an upper bound to the average value of f( ) in D∗, and consequently to the approximation factor of the algorithm. · ∗ ∗ ∗ Suppose there are t cores ci D such that f(ci ) = 5. For i = 1, . . . , t, we ∗ ∈ let Ci be the corona having ci as a core, Wi be a set of (at least 4) mutually

18 ∗ ∗ non-adjacent witnesses of ci , and Ri be the set of relievers of ci . Now, we construct a bipartite multigraph G0 = (C0 R0,E0) as follows. The parts of 0 0 ∗ ∗ 0 ∪ 0 G are C = c1, ..., ct and R = R1 ... Rt. The multiset E contains, between each{ core c∗ }C0 and reliever ∪r∗ ∪R0, a number φ(c∗, r∗) of parallel i ∈ j ∈ i j edges that is equal to the number of petals of Ci adjacent to witnesses w ∗ ∗ (of ci ) such that w is a neighbor of rj . Thus, the total number of edges incident to a core c∗ C0 is i ∈ ∗ X ∗ ∗ d(ci ) = φ(ci , rj ). ∗ 0 rj ∈R Analogously, the total number of edges incident to a reliever r∗ R0 is j ∈ ∗ X ∗ ∗ d(rj ) = φ(ci , rj ). ∗ 0 ci ∈C We now obtain an upper bound ρ0 = 43/9 for the average value of f( ) over C0 R0. Observe that C0 contains all vertices c∗ of D∗ such· that f(c∗∪) > 43/9, hence the average value ρ of f( ) over the whole set D∗ C0 R0 cannot be any greater. · Of⊇ course∪ the average value we are interested in depends on the core-to- reliever ratio C0 / R0 in G0: the more cores (respectively, the fewer relievers) in C0 (in R0),| the| | greater| the average. Therefore, in order to obtain the desired upper bound ρ0, we must consider the case in which the elements of C0 (respectively, of R0) have degrees in G0 that are as low (as high) as possible. First, notice that if c∗ is a core of corona C and f(c∗) = 5, then it is not possible that more than two non-adjacent witnesses of c∗ sharing a common ∗ reliever r are adjacent to the same petal p C. Otherwise, let w1, w2 and ∗ ∈ ∗ w3 be such witnesses. Since p and r are non-adjacent (due to the image of c ∗ under f being 5), the subgraph of G induced by p, r , w1, w2, w3 is a K2,3. { } This is a contradiction, because the graph K2,3 is not a unit disk graph [14]. Thus, since c∗ has at least four witnesses, the number of petals of C adjacent to witnesses of c∗ — and therefore the degree of each core in C0 — is at least 4/2 = 2. d Thee above lower bound can be improved for cores c∗ C0 having a reliever r∗ with exactly four neighbors in D. If a reliever r∗ ∈has four neigh- bors in (the independent set) D, then the remaining neighbors of r∗ form

19 a clique. Since there is a witness w of c∗ among these remaining neigh- bors of r∗, then the other (at least) three mutually non-adjacent witnesses of c∗ must have relievers distinct from r∗. Moreover, by an argument anal- ogous to the one used in the previous paragraph, those witnesses must be adjacent to at least 3/2 = 2 petals of the corona having c∗ as a core. This means there ared ate least two edges connecting c∗ to its reliev- ers in R0 r∗ , plus one edge connecting c∗ to r∗. Hence, the degree of c∗ in G0\{is at} least 3. ∗ 0 ∗ The maximum degrees of vertices r R depend on the number ND(r ) of neighbors of r∗ in D, and now we employ∈ some of the geometric| lemmas| of Section 2 to infer suitable upper bounds. Recall that any set of petals is an independent set.

∗ ∗ If ND(r ) = 4 (implying f(r ) 4), then, by Lemma 6, there are at • most| 8 petals| in the 2-neighborhood≤ of r∗. Hence, d(r∗) 8. ≤ ∗ ∗ If ND(r ) = 3 (implying f(r ) 3), then, by Lemma 7, there are at • most| 16 petals| in the 2-neighborhood≤ of r∗. Hence, d(r∗) 16. ≤ ∗ ∗ If ND(r ) = 2 (implying f(r ) 2), then, by Lemma 8, there are at • most| 20 petals| in the 2-neighborhood≤ of r∗. Hence, d(r∗) 20. ≤ ∗ ∗ If ND(r ) = 1 (implying f(r ) 1), then, by Lemma 8, there are at • most| 21 petals| in the 2-neighborhood≤ of r∗. Hence, d(r∗) 21. ≤

For k = 1,..., 4, let nk denote the number of relievers in G containing 0 P4 0 0 exactly k neighbors in D, so that R = k=1 nk. Let also C4 C be the set of cores having at least one| reliever| with exactly 4 neighbors⊆ in D, 0 0 0 and C3 = C C4 be the set of cores whose relievers have at most three \ 0 0 0 neighbors in D. Finally, we let t3 = C and t4 = C , so that t = C = | 3| | 4| | | t3 + t4. Since G0 is bipartite, the number of edges incident to C0 and the number of edges incident to R0 are the same. Consequently, X X d(c∗) = d(r∗), c∗∈C0 r∗∈R0 and

2t3 + 3t4 8n4 + 16n3 + 20n2 + 21n1. (2) ≤

20 The same reasoning holds for the subgraph of G0 induced by the cores 0 0 in C3 and their relievers in R , so

2t3 16n3 + 20n2 + 21n1. (3) ≤ By dividing both sides of (3) by 2 and adding it to (2), we obtain 63 3(t3 + t4) 8n4 + 24n3 + 30n2 + n1. (4) ≤ 2 As for the average ρ0 of f( ) over the elements of G0, we can write · 5(t + t ) + 4n + 3n + 2n + n ρ0 = 3 4 4 3 2 1 . t3 + t4 + n4 + n3 + n2 + n1

Now, substituting (t3 + t4) in the expression above by the upper bound obtained from (4), we have

52 107 0 3 n4 + 43n3 + 52n2 + 2 n1 ρ 11 23 . ≤ 3 n4 + 9n3 + 11n2 + 2 n1 Thus, ρ0 is bounded by a multivariate rational function whose maximum is 43/9 = 4.777 ..., achieved when n1 = n2 = n4 = 0.

The following theorem summarizes the result from Section 4. Theorem 13. Given the adjacency list representation of a unit disk graph with n vertices and m edges, it is possible to find a 43/9-approximation to the minimum dominating set problem in O(n2m) time.

5. Conclusion and open problems We introduced novel efficient algorithms for approximating the minimum dominating set and minimum independent dominating set in unit disk graphs. On one hand, a linear-time algorithm was devised attaining a sub-5 ap- proximation factor, namely 44/9 < 4.889. Nevertheless, the best lower bound we know for the proposed algorithm is 4.8, which corresponds to the unit disk graph given in Figure 3. Closing this gap would likely require the develop- ment of new tools to prove that certain graphs are not unit disk graphs, for which computer generated proofs may be useful. On the other hand, an enhanced approximation factor of 43/9 < 4.778 was obtained by allowing for more local replacements, yet a lower bound of 4.25,

21 Figure 6: Lower bound of 4.25 to the approximation factor of the modified graph-based algorithm. The coordinates of the centers are given in Table 2.

(0, 0), (0, 4500000), ( 336577, 3647829), ( 3372414, 3440722), ( 3657983, 1789254), (±469471, 882947), (±2857376, 5297889), (±3887452, 5297889), (±1043683, 2940723), (±2506389, 2940723), (±892089, 1789254), (±2657983, 1789254), (±1775036, 1258725), (±529919, 5348048), (±997564, 4430244), (±4605648, 790625), (±5515150, 1274216), (±5515150, 2304292), (±4605648, 2787883), (±1775036, 2258725), (±2373785, 4388387), (±4657983, 1789254), (±3372414, 4440722), (±515038, 857167), (±999780, 20942), (±4371043, 4388387). ± − ± ± Table 2: Coordinates of the centers of the disks in Figure 6. All diameters are equal to 1000001. corresponding to the unit disk graph given in Figure 6 (with coordinates in Table 2), is the best we are aware of. Notwithstanding the O(n2) factor increase on its time complexity, such a modified algorithm is still much faster than, say, the state-of-the-art 4-approximation algorithm from [6], which requires a geometric model as input and runs in O(n9) time. Moreover, since the number of (weak) reductions that are performed remains linear, it may be possible to conceive either a refined analysis or a smarter implementation.

22 References [1] J.L. Bentley, D.F. Stanat, E. Hollins Williams Jr., The complexity of finding fixed-radius near neighbors, Information Processing Letters 6 (6) (1977) 209–212. [2] M. de Berg, O. Cheong, M. van Kreveld, M. Overmars, Computational Geometry: Algorithms and Applications, Springer, 2010. [3] H. Breu, D.G. Kirkpatrick, Unit disk graph recognition is NP-hard, Computational Geometry 9 (1–2) (1998) 3–24. [4] B. N. Clark, C.J. Colbourn, D.S. Johnson, Unit disk graphs, Discrete Mathematics 86 (1–3) (1990) 165–177. [5] P. Christiano, J.A. Kelner, A. Madry, D.A. Spielman, S.-H. Teng, Elec- trical flows, Laplacian systems, and faster approximation of maximum flow in undirected graphs, in: Proc. 43rd annual ACM Symp. on Theory of Computing (STOC), 2011, pp. 273–282. [6] M. De, G. Das, S. Nandy, Approximation algorithms for the discrete piercing set problem for unit disk, in: Proc. 23rd Canadian Conference on Computational Geometry (CCCG), 2011, pp. 375–380. [7] T. Erlebach, M. Mihal´ak,A (4 + )-approximation for the minimum- weight dominating set problem in unit disk graphs, in: Proc. 7th Work- shop on Approximation and Online Algorithms, Vol. 5893 of Lecture Notes in Computer Science, 2010, pp. 135–146. [8] L. Fejes T´oth,Lagerungen in der Ebene, auf der Kugel und im Raum, Springer-Verlag, 1953. [9] F. Fodor, The densest packing of 13 congruent circles in a circle, Con- tributions to Algebra and Geometry 44 (2) (2003) 431–440. [10] S.R. Frinch, Mathematical Constants, no. 94 in Encyclopedia of Math- ematics and its Applications, Cambridge, 2003. [11] M. Gibson, I. Pirwani, Algorithms for dominating set in disk graphs: Breaking the log n barrier, in: Proc. 18th Annual European Symposium on Algorithms (ESA), Vol. 6346 of Lecture Notes in Computer Science, 2010, pp. 243–254.

23 [12] H.B. Hunt III, M.V. Marathe, V. Radhakrishnan, S. Ravi, D.J. Rosenkrantz, R.E. Stearns, NC-approximation schemes for NP- and PSPACE-hard problems for geometric graphs, Journal of Algorithms 26 (1998) 238–274.

[13] J.L. Hurink, T. Nieberg, Approximating minimum independent domi- nating sets in wireless networks, Information Processing Letters 109 (2) (2008) 155–160.

[14] E.J. van Leeuwen, Approximation algorithms for unit disk graphs, Tech. Rep. UU-CS-2004-066, Institute of Information and Computing Sci- ences, Utrecht University (2004).

[15] M.V. Marathe, H.Breu, H.B. Hunt III, S.S. Ravi, D.J. Rosenkrantz, Simple heuristics for unit disk graphs, Networks 25 (2) (1995) 59–68.

[16] D. Marx, Parameterized complexity of independence and domination on geometric graphs, in: Proc. 2nd International Workshop on Parameter- ized and Exact Computation (IWPEC), Vol. 4169 of Lecture Notes in Computer Science, 2006, pp. 154–165.

[17] C. McDiarmid, T. Muller, Integer realizations of disk and segment graphs, preprint arXiv:1111.2931.

[18] T. Nieberg, Independent and dominating sets in wireless communication graphs, Ph.D. thesis, University of Twente (2006).

[19] T. Nieberg, J. Hurink, W. Kern, Approximation schemes for wireless networks, ACM Transactions on Algorithms 4 (4) (2008) 49:1–49:17.

[20] J. P´al,Ein minimumprobleme f¨urovale, Math. Annalen 83 (1921) 311– 319.

[21] J. Spinrad, Efficient Graph Representations, Fields Inst. monographs, AMS, 2003.

[22] D.E.D. Vinkemeier, S. Hougardy, A linear-time approximation algo- rithm for weighted matchings in graphs, ACM Transactions on Algo- rithms 1 (2005) 107–122.

24 [23] F. Zou, Y. Wang, X.-H. Xu, X. Li, H. Du, P. Wan, W. Wu, New approxi- mations for minimum-weighted dominating sets and minimum-weighted connected dominating sets on unit disk graphs, Theoretical Computer Science 412 (3) (2011) 198–208.

25