Magnetic disk drive with reduced disk-to-disk spacing and improved
The Within-Strip Discrete Unit Disk Cover Problem I IIfraser/papers/in_strip_jour.pdfThe...
Transcript of The Within-Strip Discrete Unit Disk Cover Problem I IIfraser/papers/in_strip_jour.pdfThe...
The Within-Strip Discrete Unit Disk Cover Problem I,II
Robert Frasera,1,∗, Alejandro Lopez-Ortiza
aSchool of Computer Science, University of Waterloo, Waterloo, Ontario, Canada N2L 3G1
Abstract
We present a study of the Within-Strip Discrete Unit Disk Cover (WSDUDC) problem, which is arestricted version of the Discrete Unit Disk Cover (DUDC) problem. For the WSDUDC problem,there exists a set of points and a set of unit disks in the plane, and the points and disk centresare confined to a strip of fixed height. An optimal solution to the WSDUDC problem is a setof disks of minimum cardinality that covers all points in the input set. We describe a range ofapproximation algorithms for the problem, including 4- and 3-approximate algorithms which applyfor strips of height 2
√2/3 ≈ 0.94 and 0.8 units respectively, as well as a general scheme for any
strip with less than unit height. We prove that the WSDUDC problem is NP-complete on stripsof any fixed height, which is our most interesting result from a theoretical standpoint. The resultis also quite surprising, since a number of similar problems are tractable on strips of fixed height.Finally, we discuss how these results may be applied to known DUDC approximation algorithms.
Keywords: Computational Geometry, Geometric Set Cover, Approximation Algorithms
1. Introduction1
We consider the Within-Strip Discrete Unit Disk Cover (WSDUDC) problem, which is a special2
case of the general Discrete Unit Disk Cover (DUDC) problem. Given a set D of m unit disks and3
a set P of n points in the plane, the DUDC problem is to select a minimum cardinality subset4
D? ⊆ D to cover P. If both P and the centre points of D are located within some strip of the5
plane of fixed height, then the problem is an instance of the WSDUDC problem.6
The WSDUDC problem is most interesting from a theoretical standpoint. We will show that7
the WSDUDC problem is NP-complete for strips of any fixed height, which is quite surprising.8
The DUDC problem is very well studied (we discuss some of the related results shortly), and this9
result sheds additional light on where the hardness of the problem lies.10
The NP-completeness result for WSDUDC is surprising because there are a number of very11
similar problems that are tractable if the height of the strip is bounded by a constant. For example,12
IA preliminary version of this work appeared in the proceedings of CCCG 2013 [1].IIFunding for this research was provided by the Natural Sciences and Engineering Research Council of Canada
(NSERC), partially under the NSERC Strategic Grant on Optimal Data Structures for Organization and Retrievalof Spatial Data.∗Corresponding authorEmail addresses: [email protected] (Robert Fraser), [email protected] (Alejandro Lopez-Ortiz)
1Present address: Department of Computer Science, University of Manitoba, Winnipeg, Manitoba, Canada R3T2N2
Preprint submitted to Theoretical Computer Science June 20, 2013
the maximum independent set of a unit disk graph may be found in polynomial time if the setting13
is confined to a strip of fixed height [2]. Geometric set cover on unit squares (precisely WSDUDC,14
except the disks are replaced with axis-aligned unit squares) may be solved optimally in nO(k)15
time when confined to strips of height k [3]. The problem of covering points in a strip with16
disks centred strictly outside the strip (rather than inside as in WSDUDC) is polynomial time17
solvable [4]. Furthermore, the notion of decomposing a problem into strip-based subproblems is18
natural. For example, the PTAS for the Minimum Geometric Unit Disk Cover problem (Section19
2.4) operates by dividing the problem into strips [5].20
An implication of a polynomial time algorithm for WSDUDC for strips of any fixed height21
would be a simple PTAS for DUDC, using the shifting techniques of Hochbaum and Maass [5].22
The PTAS for DUDC [6], as discussed in Section 2.2, uses fundamentally different techniques.23
In the WSDUDC problem, the input consists of a set of m unit disks D with centre points Q,24
and a set of n points P, all of which lie in the Euclidean plane. We define the strip s of height h25
as the region of the plane between two parallel lines `1 and `2, where Q ∩ s = Q and P ∩ s = P.26
We assume that we are provided with the lines `1 and `2; alternatively, a minimum width strip27
may be computed (e.g. [7]). For our discussion, we assume that the strip is horizontal. We wish to28
determine the minimum cardinality set of disks D? ⊆ D such that P ∩ (∪D?) = P. Let `+i denote29
the open half-plane lying above `i, and similarly `−i is the open half-plane lying below `i. We say30
that a disk of radius r centred at a point q (written C(q, r)) covers a point p if the Euclidean31
distance between p and q is no greater than r, i.e. dist(p, q) ≤ r. In the context of this work,32
r = 1.33
Definition 1. The Within-Strip Discrete Unit Disk Cover (WSDUDC) Problem: Given a set P34
of n points, a set D of unit radius disks in the plane, where each disk D ∈ D is centred at a point35
in a set Q of m points, and parallel lines `1 and `2 such that `1 ⊂ `+2 and `2 ⊂ `−1 , which define36
a strip s = `−1 ∩ `+2 of height h such that P ⊂ s and Q ⊂ s, the Within-Strip Discrete Unit Disk37
Cover problem is to find a set D? ⊆ D of minimum cardinality such that D? covers P.38
This is a seemingly simpler context than the general Discrete Unit Disk Cover (DUDC) prob-39
lem, which is only distinguished from WSDUDC by the fact that DUDC has no strip confining40
the positions of the points and disks.41
Definition 2. The Discrete Unit Disk Cover (DUDC) Problem: Given a set P of n points and a42
set D of m unit radius disks in the plane, where a disk Di ∈ D is centred at a point qi in a set Q,43
the Discrete Unit Disk Cover problem is to find a set D? ⊆ D of minimum cardinality such that44
D? covers P.45
DUDC is NP-complete2 [8, 9], and the general set cover problem (i.e. the covering sets are46
unrestricted) is not approximable within a factor of c log n, for some constant c, assuming P 6= NP47
[10] (also, unless NP ⊆DTIME(nO(log logn)), i.e., all problems in NP can be solved in nO(log logn)48
time) [11]).49
1.1. Applications50
While we do not claim any specific applications for this research, work on specific geometric51
set cover problems is often motivated by applications in wireless networking or facility location52
2To be precise, the DUDC problem is NP-complete in dimensions d > 1, but is solvable in linear time in d = 1[5].
2
problems in operations research, e.g. [12, 13]. In particular, when wireless clients and servers are53
modelled as points in the plane and the range of wireless transmission is assumed to be constant54
in all directions (say one unit), the resulting region is a disk of unit radius centred on the point55
representing the wireless transmitting device. Under this model, sender a successfully transmits56
a wireless message to receiver b if and only if point b is covered by the unit disk centred at point57
a. This model applies more generally to a variety of facility location problems for which the58
Euclidean distance between clients and facilities cannot exceed a given radius, and clients and59
candidate facility locations are represented by discrete sets of points. Problems of this nature may60
be modelled with the DUDC problem.61
Our interest is primarily theoretical. However, since WSDUDC is an important subroutine62
for DUDC approximation algorithms, improvements to this problem address the general DUDC63
problem as well.64
1.2. Organization of the Paper65
We begin with a review of the general Discrete Unit Disk Cover (DUDC) problem and several66
related problems. We discuss restricted settings of DUDC, such as line-separated DUDC and67
strip-separated DUDC.68
This paper is focussed on a restricted DUDC setting in which the points and disk centres are69
confined to a strip of the plane of fixed height, which we call the Within-Strip Discrete Unit Disk70
Cover (WSDUDC) problem. We describe a range of approximation algorithms for the problem.71
Next, we provide a proof demonstrating that the WSDUDC problem is NP-complete on strips of72
any fixed height.73
The principal results in this paper consist of the NP-completeness proof of WSDUDC, as well74
as a set of approximation algorithms for the problem:75
• A general 3d1/√
1− h2e-approximate algorithm running in O(m4n+ n log n) time.76
• A 4-approximate algorithm taking O(m4n+ n log n) time.77
• A 3-approximate algorithm running in O(m6n+ n log n) time.78
Finally, we describe how these WSDUDC algorithms may be used to obtain new approximation79
algorithms for the general DUDC problem.80
2. Related Work81
There are many known approximation algorithms for DUDC, which make use of a variety82
of techniques. Obviously the general approximation algorithms for set cover (e.g. [14]) directly83
provide an O(log n) approximation algorithm. There is a series of constant factor approximation84
algorithms and a PTAS, mostly published within the past few years. The PTAS of [6] is applicable85
only for 0 < ε ≤ 2 (see Section 2.2), and so the running time of the PTAS is prohibitively large86
for any approximation factor. For this reason research has continued on the DUDC problem,87
specifically oriented toward determining approximation algorithms with better running times. We88
summarize the known results below, and a graphical representation of the set of Pareto optimal89
approximation algorithms with respect to running time versus approximation factors is given in90
Figure 1.91
3
• O(1)-approximation, Bronnimann and Goodrich, 1995 [15]. It is based on ε-nets, and was92
the first constant-factor approximation algorithm for DUDC.93
• 108-approximation, Calinescu et al., 2004 [16]. This algorithm worked using a decomposition94
of the problem into that of using unit disks to cover points contained in an equilateral triangle95
with unit length sides. A 6-approximate algorithm is given for covering each triangle, and96
then it is shown that a unit disk covers points in no more than 18 triangles3 for a total97
approximation factor of 108.98
• 72-approximation, Ambuhl et al., 2006 [4] / Narayanappa and Vojtechovsky, 2006 [17]. The99
first result divides the plane into squares of size 1/√
2 × 1/√
2, and provides a factor 2100
approximation for covering points in such squares (and a disk may cover points in up to 36101
squares). This approach also works for weighted DUDC. The second result improves on that102
of [16] by tiling the plane with unit size hexagons.103
• 38-approximation, Carmi et al., 2007 [18]. This algorithm decomposes the plane into squares104
of size 3/2× 3/2, and uses a variety of techniques to cover points in each square using disks105
centred both inside and outside the squares.106
• 22-approximation, Claude et al., 2010 [19, 20]. This result improves on [18] primarily with107
an improved Line-Separable DUDC algorithm.108
• (1+ε)-approximation, Mustafa and Ray, 2010 [6]. This is the best PTAS known for DUDC,109
and is based on local search. We discuss the PTAS in Section 2.2.110
• 18-approximation, Das et al., 2011 [21]. By using a decomposition similar to that of the111
72-approximate algorithm of Ambuhl et al. [4] and the ideas of Claude et al. [19] for Line-112
Separable DUDC, a slightly improved approximation factor is obtained, and the running113
time is significantly improved.114
• 15,16-approximations, (this paper). This work examines the Within-Strip DUDC problem,115
and uses the results with the decomposition of Das et al. [21] to obtain the lowest known116
approximation factor for a DUDC approximation algorithm with a tractable running time.117
Another PTAS for DUDC was presented by Liao and Hu [22]. The PTAS is based on the118
assumption that the point set P is found on the integer grid, and so there is a constant maximum119
cardinality of a subset of P that may be covered by any particular disk. Despite the simplifying120
assumption, their running time does not improve upon that achieved by Mustafa and Ray. While121
Bronnimann and Goodrich [15] described the first small ε-net for unit disks, Pyrga and Ray [23]122
gave an analysis showing smaller nets for a generalized setting. The Discrete Unit Disk Cover123
problem (this name was coined by Carmi et al. [18]) has been studied under some other names as124
well, such as Geometric Set Cover on Unit Disks [3], Geometric Hitting Set on Unit Disks [24], and125
the Unit Disk Covering problem [17]. We adhere to the label Discrete Unit Disk Cover because126
it was the first name in the literature that clearly distinguishes the problem from the Minimum127
Geometric Disk Cover problem, where the disk centres are unrestricted (see Section 2.4).128
3We list the approximation factor for [16] as 108, although the original publication presented the factor as 102.Narayanappa and Vojtechovsky [17] noticed a small bug in the analysis, specifically that a disk may cover points in18 rather than 17 triangles, and corrected the factor to that listed here.
4
100
10
12 4 6 8 10 12 14 16 18 20
c-Approximation Algorithms, Running in O(mxn) Time
c
x
Valid range for ε in PTAS
Our results
103
104
PTAS of Mustafa & Ray, 2010
18-approximate algorithm of [15]
Figure 1: We summarize the best known algorithms for the DUDC problem. The shaded region indicates the rangewhere ε is valid in the PTAS [6]. Note that the vertical axis is a log scale.
2.1. Duality for Discrete Unit Disk Cover129
For Discrete Unit Disk Cover, it is often convenient to work in the dual hitting set version of130
the problem. We call this the Discrete Unit Disk Piercing (DUDP) problem, and it is particularly131
useful because an optimal solution for DUDC is equivalent to an optimal solution for DUDP. Recall132
that the input for the DUDC problem is a set of points P and a set of unit disks D with centre133
points Q. The dual DUDP formulation is a set of unit disks DP with centre points P, and the set134
of points Q. An optimal solution to the DUDP problem is a minimum cardinality set of points135
Q? ⊆ Q where each disk in DP contains at least one point in Q?.136
Lemma 1. Given an instance of DUDC with input points P, input disks D (where Q is the set of137
centre points of D), and an optimal solution D?, the dual DUDP problem on the instance is solved138
optimally by Q?, the set of centre points of D?.139
Proof. The lemma depends on the fact that both the primal DUDC problem and the dual DUDP140
problem use unit disks. Any pair of points (p ∈ P, q ∈ Q) where dist(p, q) ≤ 1 have the property141
that the disk centred at q in the primal covers p, and the disk centred at p in the dual is pierced142
by q. Therefore, the set of points covered by a disk D in the primal is exactly the set of centre143
points of the disks pierced by q (the centre point of D) in the dual.144
2.2. PTAS for Discrete Unit Disk Cover145
Mustafa and Ray [6] presented a (1 + ε)-approximation algorithm (PTAS) for the Hitting Set146
problem on a variety of geometric sets (including unit disks) which is based on the idea of local147
search. The PTAS runs in O(m2(c/ε)2+1n) time4, where c ≤ 4γ [6]. Their γ value can be bounded148
4Since were are interested in DUDC, we convert the parameter notation to be consistent with those used in thispaper. Therefore, for our purposes, the number of points in the hitting set formulation is m, because this is thenumber of disks in the DUDC setting. Similarly, n is the number of disks in the hitting set problem.
5
from above by 2√
2 [25, 26]. They perform a k-level search, where k = (c/ε)2 ≥ 4γ2, so ε ≤ 2. The149
fastest operation of this algorithm is obtained by setting ε = 2 for a 3-approximation algorithm,150
and this will run in O(m2·(8√2/2)2+1n) = O(m65n) time in the worst case. This algorithm is not151
practical in general, although it is possible that a lower running time may be obtained through152
better bounding of the constant factors or improvements to their algorithm, or that the running153
time on real world data never approaches this worst case bound.154
2.3. Minimum Dominating Set on Unit Disk Graphs155
In the Minimum Dominating Set on Unit Disk Graphs (MDS-UDG) problem, the input consists156
of a graph G = (P, E), where P consists of a set of points in the plane, and the edge (pi, pj) for157
pi, pj ∈ P exists in E if and only if dist(pi, pj) ≤ 1. In other words, given a unit disk Di centred158
at pi, the point pj is covered by Di, and vice-versa (i.e. pi ∈ Dj). An MDS-UDG solution is the159
minimum dominating set P? over G, so that ∀pi ∈ P, if pi 6∈ P?, then ∃e = (pi, pj) ∈ E such that160
pj ∈ P?. 5 Alternatively, the problem may be formulated as DUDC where P = Q.161
Interestingly, the proof of NP-completeness of the MDS-UDG problem [27] predates the formal162
unit disk graph definition by nearly a decade! Many papers also consider the minimum weight163
connected dominating set, where the solution graph is connected. There is a significant set of164
results on the unweighted MDS-UDG problem, including algorithms providing constant factor165
approximations of 5 [28], 4.8 [29], 4 and 3 [30]. There exists a PTAS for the standard version of166
the problem [31], as well as for the variation where the solution is required to consist of a connected167
graph (MCDS) [32] (which is also NP-complete [33]). Furthermore, there exists a PTAS for the168
problem if a planar embedding of the graph is not provided [34].169
2.4. Minimum Geometric (Unit) Disk Cover170
In the Minimum Geometric Disk Cover (GDC) problem, the input consists of a set of points171
in the plane, and the problem is to find a set of disks of radius r of minimum cardinality whose172
union covers the points. Naturally, the problem may be scaled so that r = 1, to be similar to the173
DUDC definition. Unlike the Discrete Unit Disk Cover problem (Definition 2), the disk centres174
are not constrained to be selected from an input set, but rather may be centred at arbitrary points175
of the plane. This problem is NP-hard [9, 35] and has a PTAS solution [36, 5]. There are many176
possible generalizations of the GDC problem; see Clarkson and Varadarajan [37] for a discussion of177
geometric set cover problems. The PTAS for the GDC problem is particularly noteworthy, because178
it introduced the shifting strategy for geometric approximation algorithms.179
2.5. Discrete k-Center180
Another problem with a similar feel to DUDC is the Discrete Euclidean k-Centre problem:181
given a set Q of m points in the plane, a set P of n points in the plane, and an integer k, find182
a set of k disks centred on points in Q whose union covers P such that the radius of the largest183
disk is minimized. Observe that the set P has a Discrete Unit Disk Cover solution consisting of184
k disks centred on points in Q if and only if P has a Discrete k-Centre solution centred on points185
in Q with radius at most one. This problem is NP-hard if k is an input variable [38]. When k is186
5There is an alternate (and equivalent) formulation on the unit disk graph, where there is an edge between pointspi and pj if and only if unit disks centred at pi and pj have a non-empty area of intersection.
6
fixed, Hwang et al. [39] give an mO(√k)-time algorithm, and Agarwal and Procopiuc [40] give an187
mO(k1−1/d)-time algorithm for points in Rd.188
2.6. Other Discrete Geometric Covering Problems189
A natural extension of the DUDC problem is to consider other shapes such as squares or α-fat190
objects. The PTAS of Mustafa and Ray [6] applies to these settings (see Section 2.2). A PTAS191
for the weighted version of the Discrete Unit Square Cover problem [3] was found based on the192
shifting strategy of Hochbaum and Maass [5]. This is somewhat surprising, since this approach193
does not seem to work for DUDC.194
3. Specialized DUDC Settings195
The approximation algorithms that have been used for the DUDC problem often employ re-196
stricted versions of the general problem as subcases, and the restricted versions are quite interesting197
in their own regard. There are enough variants of the DUDC problem used in this paper that a198
reference table (Table 1) describing the settings is warranted.
Table 1: A summary of the settings for DUDC used in this paper. Square points represent disk centres.
Discrete Unit Disk Cover(DUDC), Definition 2.
Line Separable Discrete UnitDisk Cover (LSDUDC),
Definition 3.
Strip-Separable DiscreteUnit Disk Cover (SSDUDC),
Definition 4.
Within Strip Discrete UnitDisk Cover (WSDUDC),
Definition 1.
199
7
3.1. Line-Separable Discrete Unit Disk Cover200
Perhaps the most basic restricted DUDC setting is the Line-Separable Discrete Unit Disk Cover201
(LSDUDC) problem, where P and Q may be separated by a line `.202
Definition 3. The Line-Separable Discrete Unit Disk Cover (LSDUDC) Problem: Given a set203
P of n points, a set D of unit radius disks in the plane, where each disk Di ∈ D is centred at a204
point qi ∈ Q, |Q| = |D| = m, and a line ` defining half-planes `+ and `− such that P ⊂ `− and205
Q ⊂ `+, the Line-Separable Discrete Unit Disk Cover problem is to find a set D? ⊆ D of minimum206
cardinality such that D? covers P.207
We may arbitrarily set ` to be horizontal, and furthermore, we may have the set Q lie in the208
region above the line ` (call this the half-plane `+). The LSDUDC problem is an important sub-209
problem that is applied multiple times in several of the general DUDC approximation algorithms.210
A similar problem to LSDUDC is studied in [16, 41], but their setting has the centres of the disks211
within a specified unit disk and the points to be covered are outside that disk. Claude et al. [19]212
provide the best known LSDUDC algorithm, which computes an exact solution in O(mn+ n log n)213
time.214
There exists a generalization to the LSDUDC problem known as Assisted LSDUDC (A-215
LSDUDC), which considers disks centred on both sides of the line. See [19] or [42, Chapter216
3] for a complete description of the A-LSDUDC problem, as well as an O(mn+m logm+ n log n)217
time 2-approximate algorithm.218
3.2. Strip-Separable Discrete Unit Disk Cover219
The Strip-Separable Discrete Unit Disk Cover (SSDUDC) problem restricts P to a strip defined220
by parallel lines `1 and `2, and Q must be located entirely outside of the strip6.221
Definition 4. Strip-Separable Discrete Unit Disk Cover (SSDUDC) Problem: Suppose we are222
given a set P of n points, a set D of unit radius disks in the plane, where each disk D ∈ D is223
centred at a point in a set Q of m points, and parallel lines `1 and `2 such that `1 ⊂ `+2 and224
`2 ⊂ `−1 . Furthermore, `1 and `2 define a strip s = `−1 ∩ `+2 such that P ⊂ s and Q ∩ s = ∅. The225
Strip-Separable Discrete Unit Disk Cover problem is to find a set D? ⊆ D of minimum cardinality226
such that D? covers P.227
Again, we may assume that the lines `1 and `2 are horizontal. The SSDUDC problem was228
introduced by Ambuhl et al. [4, Lemma 1], and they propose a dynamic programming algorithm229
for a weighted version of the problem. We present a description of their technique (which applies230
even for weighted disks) with a time bound of O(m4n+ n log n) in Algorithm 1. In Algorithm 1,231
we make use of the function neq(j, j′), which evaluates to 1 if j 6= j′, and 0 otherwise. We denote232
the weight of disk Di by wDi , and the weights of the lines are w`1 = w`2 = 0233
Theorem 1. SSDUDC may be solved exactly in O(m4n+ n log n) time on weighted disks.234
6Note that this is a generalized version of the LSDUDC problem, and so a SSDUDC algorithm may also be appliedto that setting. However, the best known running time for SSDUDC exceeds that of LSDUDC by a significant margin.
8
Algorithm 1 SSDUDC(P,D, `1, `2)1: Input: A set of points P lying between `1 and `2, a set of disks D whose centres are separable
from P by `1 or `2.2: Output: D? ⊆ D, a minimum cardinality set of disks covering P.3: Sort P left-to-right4: Divide D into DU and DL (disks centred above `1 and below `2 respectively)5: DU ← DU ∪ {`1}, DL ← DL ∪ {`2}6: for i := 1 to n do7: for j := 1 to |DU | do8: for k := 1 to |DL| do9: T [i, j, k]←∞ // Base case (i.e. if pi 6∈ DU
j ∪DLk )
10: if pi ∈ DUj ∪DL
k then11: if i = 1 then12: T [1, j, k]← wDU
j+ wDL
k// Initialize the DP table
13: else14: for j′ := 1 to |DU | do15: for k′ := 1 to |DL| do16: T [i, j, k]← min{T [i, j, k], T [i− 1, j′, k′] + neq(j, j′) · wDU
j+ neq(k, k′) · wDL
k}
17: // Backtrack from minimum weight cover on pn to find D?
18: return D?
This algorithm consists of five nested for loops and the initial sorting operation; the latter235
contributes O(n log n) to the final running time. The outer loop may iterate O(n) times, while the236
inner four loops may iterate O(m) times each. All other work performed in the loops may be done237
in constant time, so the total running time of this implementation is O(m4n+ n log n).238
The dual version of the SSDUDC problem has also been studied. In the Double-Sided Disk239
Cover (DSDC) problem, disks centred in a strip are used to cover points outside of the strip; this240
also has an exact dynamic programming solution [43].241
4. Within-Strip Discrete Unit Disk Cover Approximation Algorithms242
To begin, we present a general 3d1/√
1− h2e-approximate algorithm for strips of height h < 1,243
which runs in O(m4n+ n log n) time. Given a strip of height at most 2√
2/3 (≈ 0.94), a 4-244
approximate solution is given which improves upon the general algorithm by checking for simple245
redundancy while still running in O(m4n+ n log n) time. For a strip of height at most 4/5 = 0.8,246
an O(m6n+ n log n) time 3-approximate solution is provided which uses dynamic programming247
to solve all sub-problems optimally (note that using the general 3d1/√
1− h2e-approximate algo-248
rithm on strips of height 2√
2/3 or 4/5 would produce a 6-approximation). The 3-approximation249
algorithm divides the strip into subproblems so that the disks used in one subproblem may overlap250
those in at most two others, and each subproblem is solved optimally. Unfortunately, the best251
known algorithm for one of these subproblems requires O(m6n+ n log n) time, and so this is the252
running time of the 3-approximate WSDUDC algorithm. These results are summarized in Table253
2. Note that the new algorithms all apply to strips of greater height than the previous result.254
In Section 3.2, we discussed the Strip-Separated Discrete Unit Disk Cover (SSDUDC) problem.255
In that setting, the input consists of a set of points P located in a strip in the plane, like WSDUDC,256
9
Table 2: Approximation Factors and Running Times of WSDUDC Algorithms
Approximation Factor Running Time Height of Strip Reference
6 O(mn+m logm+ n log n) ≤ 1/√
2 ≈ 0.71 [21]
3d1/√
1− h2e O(m4n+ n log n) ≤ 1 this paper
4 O(m4n+ n log n) ≤ 2√
2/3 ≈ 0.94 this paper
3 O(m6n+ n log n) ≤ 4/5 = 0.8 this paper
but the set of unit disk centres Q lies strictly outside of the strip rather than in the strip. We257
described an O(m4n+ n log n) dynamic programming algorithm for SSDUDC in Algorithm 1,258
which we use in several of the WSDUDC algorithms in this section.259
4.1. A General 3d1/√
1− h2e-Approximation Algorithm for h < 1260
In this section, we present an algorithm for approximating the optimal WSDUDC solution on261
strips of a general height h < 1. The algorithms of Sections 4.2 and 4.3 extend these ideas with262
refinements which achieve better approximation factors in narrower strips.263
Theorem 2. Given a strip of height h < 1, we may find a 3d1/√
1− h2e-approximation to the264
WSDUDC problem in O(m4n+ n log n) time.265
We define the set of rectangles R◦, where R◦i ∈ R◦ is the largest rectangle of height 2h266
which may be covered by Di ∈ D, and the strip s has height h and is assumed to be horizontal.267
Furthermore, we use a set of rectangles R of height h, defined as Ri = R◦i ∩ s,Ri ∈ R, R◦i ∈ R◦.268
In other words, a rectangle in R is defined as the portion of a rectangle in R◦ which lies inside the269
strip. In Figure 2, the shaded rectangles are those in R.270
Observation 1. Suppose we are given a strip of height h < 1 and a unit disk D whose centre271
lies in the strip. R◦ is defined as the rectangle of height 2h and width k = 2√
1− h2 which is272
circumscribed by D. If a point q is covered by R◦, then D also covers q. Furthermore, R◦ covers273
the entire height of the strip.274
We divide the set of points P into two sets P = PR∪PR, where PR is the set of points covered275
by the set of rectangles R, and PR = P \ PR, i.e. those points covered by D but not R. The276
approximation algorithm proceeds in two stages to compute the cover: first the points in PR are277
covered, and then the remaining uncovered points in PR are covered. We refer to the points in PR278
as occurring in the gaps of the strip, and the points in PR are in the intervals (see Figure 2). In279
our discussion, we assume that h > 0, so that the width of the rectangles is k = 2√
1− h2 < 2. 7280
4.1.1. Covering PR281
The set PR may be viewed as existing in the gaps lying between the rectangles in the set R.282
The centres of all disks are separated from the points in PR by vertical lines (those of the gap283
7If h = 0, all points and disk centres are collinear, and PR is empty. This setting is solved optimally by theGreedy-Rectangles algorithm detailed in Section 4.1.2.
10
gap interval
gap
gap gapinterval interval
Figure 2: Intervals are continuous segments of the strip covered by the rectangles in R, and gaps are the segmentsof the strip outside of the intervals.
boundaries). For each gap of the strip, the points are covered optimally with the O(m4n+ n log n)284
time algorithm for SSDUDC (Algorithm 1). While points in each gap are covered optimally,285
we may lose optimality when we combine these solutions8. Recall that rectangles have width286
k = 2√
1− h2. There is a rectangle corresponding to each disk, and so no disk centre lies within a287
distance of k/2 from any gap. By interleaving rectangles of width k with gaps of some width ε, a288
disk may cover points in 2d1/k − 1/2e gaps as ε tends to 0. To see this, consider the right side of289
a disk Di, where Ri defines an interval of width k/2 on this right side. Since Di has unit radius,290
d(1 − k/2)/ke additional rectangles (and gaps, one to the left of each rectangle) may be at least291
partially covered by Di to the right. For example, given 2/5 < k ≤ 2/3, disks may cover points in292
four gaps, and for 2/3 < k < 2, disks may cover points in two. Thus, the union of the solutions293
for each gap has an approximation factor of 2d1/k − 1/2e for covering PR.294
4.1.2. Covering PR295
To cover the points which remain after the previous step, we iteratively add the right-most296
rectangle that covers the left-most remaining point to the solution, as detailed in Algorithm 2297
(Greedy-Rectangles).298
Algorithm 2 Greedy-Rectangles(R,PR)
1: Input: A set of points PR and a set of rectangles R.2: Output: R′, a set of rectangles covering PR.3: R′ ← ∅4: Sort PR by x-coordinate, sort R by left boundary5: while PR 6= ∅ do6: p` ← left-most point in PR7: Rr ← right-most rectangle in R covering p`8: R′ = R′ ∪Rr
9: PR = PR \ (Rr ∩ PR)10: return R′
8Covering the points in the union of the gaps cannot be solved optimally in general. The hardness proof forWSDUDC (Section 5) only has points in gaps.
11
Lemma 2. A rectangle R′i selected by Greedy-Rectangles may overlap another rectangle R′i−1299
(the previous rectangle chosen) by k − ε, for any ε > 0.300
Proof. The left rectangle R′i−1 covers a point p` which is to the left of the right rectangle R′i, which301
in turn covers a point pr to the right of R′i−1. By pushing p` to the left edge of R′i−1 and pr to the302
right edge of R′i, the rectangles may be overlapped so that R′i−1 lies ε to the left of R′i, and both303
are chosen.304
Lemma 3. Let R′ = {R′1, . . . , R′|R′|} be the set of rectangles found by Greedy-Rectangles,305
indexed from left to right so that ∀i, j, i < j ↔ left(R′i, R′j) where left(R′i, R
′j) indicates that R′i is306
left of R′j. Then no two non-consecutive rectangles intersect, i.e. ∀i, j, j > i+ 1→ R′i ∩R′j = ∅.307
Proof. Suppose that this is not the case and R′i and R′j intersect although there exist rectangles308
R′i+1, . . . , R′j−1 ∈ R′, where i + 1 ≤ j − 1. Rj is to the right of each of these intermediate309
rectangles, and Rj covers all points to the right of Ri which these rectangles cover. Let P ′ be the310
set of points covered by the rectangles R′i+1, . . . , R′j−1. P ′ is covered entirely by R′i ∪R′j , and none311
of R′i+1, . . . , R′j−1 are the right-most rectangle covering a point to the right of R′i, so they would312
not be chosen by Greedy-Rectangles.313
Lemma 4. Greedy-Rectangles computes a cover of PR with an approximation factor of314
3d1/k − 1/2e times the optimal solution.315
Proof. Consider the maximum number of rectangles in the Greedy-Rectangles solution that316
may be replaced by a single disk Di in the strip. One of the rectangles available to the algorithm317
is Ri ⊂ R◦i , where R◦i is circumscribed by Di. By Lemma 2, there may be another rectangle ε to318
the left or right of Ri which will be selected by the algorithm, and so the approximation factor is319
at least 2. It may be possible to pack additional pairs of nearly overlapping rectangles as densely320
as permitted by Lemma 3 so that the points covered by these rectangles are also covered by Di.321
Since all disks have unit radius and R◦i is circumscribed, each side of Di can potentially cover all322
points covered by at most 2d(1 − k/2)/ke − 1 additional rectangles (see Figure 3). This analysis323
is similar to Section 4.1.1, but now all rectangles are paired except for the right-most one (in a324
right-most pair, the region covered only by the right rectangle cannot be covered at all by Di325
since we consider the pairs to have width k, i.e. ε = 0). Thus, the total approximation factor is326
4d1/k − 1/2e.327
Greedy-Rectangles requires both the set of rectangles R and the set of points PR to be328
sorted in left to right order. The sorted lists are each walked through a single time, so the total329
running time is O(m logm+ n log n).330
4.1.3. Combining Solutions for PR and PR331
Recall that the approximation factor for covering the entire set of PR is 2d1/k − 1/2e and332
4d1/k− 1/2e for covering PR, where k is the width of the rectangles. We simply sum these factors333
to get an overall approximation factor of 6d1/k − 1/2e < 3d1/√
1− h2e for strips of arbitrary334
height h < 1. The running time is O(m4n+ n log n), dominated by the SSDUDC algorithm used335
to cover PR. The WSDUDC algorithm is summarized in Algorithm 3.336
12
D1 R◦1
D2
D3
D4
D5
D6R◦2
R◦3
R◦4
R◦5
R◦6
q1 q2q3
q4
q5
q6
q7
q8
q9
Figure 3: An illustration of Lemma 4. We wish to know the number of rectangles in which a disk, say D1, maypossibly cover points. R◦1 may be paired with another rectangle as described in Lemma 2, we illustrate this with R◦2.We now wish to determine how many distinct rectangles may be covered to the right of this pair (the case for theleft side is analogous). In this case, we have h = 0.97, and so 2d(1− k/2)/ke − 1 = 3. We see this with R◦3, R
◦4, R
◦5,
as D1 covers all points in these rectangles. It is possible that D1 covers points contained in a rectangle paired withthe right-most rectangle in this set (e.g., q8 ∈ D1 ∩R◦6), but such points are covered by R◦5 as well.
4.2. 4-Approximation Algorithm for h ≤ 2√
2/3337
The general algorithm for covering PR presented in the previous section has an approximation338
factor of 4 when k ≥ 2/3 (h ≤ 2√
2/3). However, for each pair of consecutive rectangles R′i−1 and339
R′i found by Greedy-Rectangles, we can determine whether one or two disks are required to340
cover the points covered by the pair of rectangles. In other words, we determine whether there341
exists a disk Dj such that (R′i−1 ∪ R′i) ∩ P ⊆ Dj ∩ P. To do so, we run through R′ in order, and342
check whether the current pair may be replaced by any disk in D. This way, we are assured that343
exactly two disks are required to cover the points contained in any consecutive pair of rectangles344
in our solution for PR.345
Theorem 3. If h ≤ 2√
2/3, we can improve the approximation factor for WSDUDC to 4 in346
O(m4n+ n log n) time.347
Consider a diskDi ∈ D?, which may or may not be a member of our refined solution set. Di may348
intersect at most four rectangles in R′. Every consecutive pair of rectangles in R′ now requires349
at least two disks, so at least two disks are required to cover any four consecutive rectangles.350
Therefore, the overall approximation factor is two. This operation will scan m disks for every351
possible disk to remove from the solution, so the operation takes O(m2n) time9. We outline the352
improvements in Algorithm 4.353
We now have a 2-approximate algorithm for PR when k ≥ 2/3, and we may solve each gap of354
PR optimally. We show that we may combine these solutions to achieve an overall 4-approximate355
9It would not be difficult to improve on the running time of this operation, but this is not a bottleneck on theoverall running time.
13
Algorithm 3 WSDUDC-GEN(P,D, s)1: Input: A set P of points in a horizontal strip s of height h < 1, and a set D of unit disks
centred in s.2: Output: A set D? ⊆ D, which covers P with a factor 3d1/
√1− h2e approximation.
3: D? ← ∅4: R◦ ← set of rectangles of height 2h circumscribed by D5: R ← R◦ ∩ s6: Sort R left to right by left boundary of each rectangle7: G ← set of gaps in R∩ s8: for i := 1 to |G| do9: Pi = Gi ∩ P // Find the set of points in the current gap
10: D′ ← SSDUDC(Pi,D, Gi) (Algorithm 1)11: D? ← D? ∪ D′12: P ← P \ (P ∩ D′)13: R′ ←Greedy-Rectangles(R,PR) (Algorithm 2)14: D? ← D? ∪ D′ // D′ is the set of disks corresponding to R′15: return D?
Algorithm 4 WSDUDC-4(P,D, s)1: Input: A set P of points in a horizontal strip s of height h ≤ 2
√2/3, and a set D of unit disks
centred in s.2: Output: A set D? ⊆ D, which covers P with a factor 4 approximation.3: Perform lines 3-13 from Algorithm 34: Rp ← R1 ∈ R′ // Assume the rectangles are stored left to right in R′5: D′ ← ∅6: for i := 2 to |R′| do7: Rc ← Ri ∈ R′8: for j := 1 to |D| do9: if (Rp ∪Rc) ∩ P ⊆ Dj ∩ P then
10: Rp, Rc ← Dj // A bit abusive, but to simplify the algorithm description we allow Rp
and Rc to be a rectangle or a disk11: j ← |D|+ 112: if Dp 6∈ D′ then13: D′ ← D′ ∪ {Dp} // Dp is the disk corresponding to Rp
14: Rp ← Rc
15: return D? ∪ D′
14
algorithm for WSDUDC, when the strip is of height less than 2√
2/3. For the purposes of counting,356
we may assume that the disks forming the cover for each gap are equally distributed amongst357
the neighbouring intervals for both the approximate solution and the optimal one. We are not358
interested in the worst-case approximation factor in any given interval; rather we are interested359
in the approximation factor over the strip as a whole. For each gap, only disks found in adjacent360
intervals may form part of the solution. Disk centres are located at least a distance 1/3 from361
the end of an interval, and so disk centres in non-adjacent intervals are more than unit distance362
away from the gap. Therefore, for each interval of the strip, assume that n` disks are used for363
covering the gap to the left, ns disks are used for covering the points in the interval, and nr disks364
are used to cover the points in the gap to the right. The minimum number of disks required is365
max{n`, ns/2, nr}, since both n` and nr are optimal and ns is a 2-approximation. We conclude that366
n` + ns + nr ≤ 4 ·max{n`, ns/2, nr}, and thus it is a 4-approximation algorithm. The worst-case367
running time is O(m4n+ n log n), dominated by the running time of the SSDUDC algorithm.368
4.3. 3-Approximation Algorithm for h ≤ 4/5369
We now describe a 3-approximate algorithm for narrower strips, specifically when k ≥ 6/5 (h ≤370
4/5). In this case10, the PR sub-problem may be solved optimally using dynamic programming.371
We define a set of disks Ds as mutually spanning if each disk in Ds covers a non-empty set of372
points which lies to the left of all other disks in Ds, as well as a non-empty set of points lying to373
the right of all other disks in Ds. We show that no optimal solution to the cover of QR requires a374
mutually spanning set of more than three disks.375
Lemma 5. If h ≤ 4/5, an optimal solution to PR requires mutually spanning sets of cardinality376
at most three.377
Proof. Suppose that there exists a mutually spanning set of four disks in the optimal solution.378
Recall that each point in the set PR is covered by some rectangle circumscribed by a disk. Using379
Lemma 3, we show that a set of four rectangles exists which covers all of the points covered by380
the four disks. At least one rectangle is required to cover the left-most point, this may be followed381
by a pair of rectangles, whose combined width is greater than k, and then there may be a final382
rectangle spanning an additional width k. Therefore, any section of PR of length 2k can always383
be covered by a set of at most 4 rectangles.384
The maximum width in a strip for a mutually spanning set of disks of any cardinality is 3−k/2;385
note that 2k ≥ 3− k/2 when k ≥ 6/5. Therefore, any solution which uses four mutually spanning386
disks to cover a set of points P ′ need only use (at most) four rectangles to cover a set of points P ′′,387
where P ′ ⊆ P ′′, and so four mutually spanning disks are never needed in an optimal solution.388
By Lemma 5, a dynamic program which adds disks to the solution in a left-to-right fashion need389
only consider up to triples of disks to terminate sub-problems to ensure that the sub-problems are390
independent and optimal. Such a dynamic program is described in Algorithm 5. In the algorithm,391
D2 and D3 are the sets of mutually spanning doubles and triples of disks respectively, and D is the392
set of all sets of disks under consideration. Given two sets Di,Dj ∈ D, if Di covers points left of Dj ,393
10A similar dynamic programming algorithm applies to larger strips, but the running time increases rapidly withh. The running time of the dynamic program is O(m2cn), where c is the cardinality of the largest minimal mutuallyspanning sets in an optimal solution. As h approaches unit distance, c tends to infinity.
15
Algorithm 5 Optimal-PR (D,PR)
1: Input: A set PR of points in the intervals of a horizontal strip s of height h ≤ 4/5, and a setD of unit disks centred in s.
2: Output: A set D? ⊆ D of minimum cardinality which covers PR.3: D← D ∪D2 ∪ D3, m′ ← |D|4: Topologically sort D on the <c operator5: c[0] = 0, c[1 . . .m′] =∞6: for i = 1 . . .m′ do7: for j = 0 . . . i− 1 do8: size ← c[j] + |Di|9: if size < c[i] and no points lie between Di and Dj then
10: c[i]← size11: Backtrack on c to recover optimal cover D?
12: return D?
and Dj does not cover points left of Di, we write Di <c Dj to indicate this relationship. Otherwise,394
we consider them incomparable under this operator. Hence, we may establish a partially ordered395
set over all of the sets in D with respect to the <c operator. Note that directed cycles are impossible396
in this set, since the transitive property holds for the <c operator. We impose a topological sorting397
D = {D1, . . . ,D|D|} so that for any two sets Di,Dj in this ordering, we have that i < j → Dj 6<c Di.398
The correctness of Optimal-PR follows from the fact that all points left of a set Di are covered399
in a valid solution to a subproblem terminating with Di, and all mutually spanning sets up to size400
three are considered. Optimal-PR runs in O(m6n) time: there are O(m3) possible combinations401
of disks that we consider in two nested for loops, and inside the nested loop we check the disks402
against the point set P.403
We have optimal algorithms for computing the cover of each gap of PR and each interval of PR.404
Further, the disks covering a gap only come from the two adjacent intervals, and the disks covering405
an interval only come from the interval itself. Since the disks in each interval can contribute to406
only three problems, each of which is solved optimally, the worst-case is that three times the407
optimal number of disks is used. The running time of the algorithm (Algorithm 6) is dominated408
by Optimal-PR, so the overall running time is O(m6n+ n log n).409
Theorem 4. Given a strip of height h ≤ 4/5, a 3-approximate solution may be found to WSDUDC410
in O(m6n+ n log n) time.411
Algorithm 6 WSDUDC-3(P,D, s)1: Input: A set P of points in a horizontal strip s of height h ≤ 4/5, and a set D of unit disks
centred in s.2: Output: A set D? ⊆ D, which covers P with a factor 3 approximation.3: Perform lines 3-12 from Algorithm 34: D′ ←Optimal-PR (D,PR) (Algorithm 5)5: return D? ∪ D′
16
5. NP-Completeness of WSDUDC412
We prove that WSDUDC is NP-complete by reducing from the minimum vertex cover (Vertex-413
Cover) problem on planar graphs of maximum degree three, which is known to be NP-complete414
(and APX-hard) [44, 45]. In the Vertex-Cover problem, we are given a graph G = (V,E) (in415
particular, a planar graph with no vertex of degree greater than three), and we seek a minimum416
cardinality subset V ? ⊆ V such that for all e(i,j) = (vi, vj) ∈ E, either vi ∈ V ? or vj ∈ V ?. In417
other words, the vertex cover is a minimum cardinality hitting set of all of the edges in the graph.418
An instance of the decision version of WSDUDC is {P,D, c} (c is an integer), and we ask whether419
there exists a solution D? such that P ∩ (∪D?) = P and |D?| < c.420
Theorem 5. WSDUDC is NP-complete on a strip of height h, for any h > 0.421
WSDUDC is in NP, since a certificate may be provided as a set of disks that covers all of the422
points in P, which is trivial to verify.423
In the reduction, we create an instance of WSDUDC from a planar graph so that a solution D?424
to the WSDUDC problem provides a solution V ? to the Vertex-Cover problem on the graph.425
For our reduction, it is easier to consider the dual (disk piercing) setting of WSDUDC, but of426
course once the construction is complete it may be converted back again from the dual so that the427
problem is in the primal (disk covering) setting. The Within-Strip Discrete Unit Disk Piercing428
(WSDUDP) problem takes as input a set of points Q, and a set of unit disks DP with centre429
points P, where both P and Q are contained in a strip of height h. An optimal solution consists430
of a minimal number of points Q? ⊆ Q such that each disk in DP contains at least one point from431
Q?. Let WS(G) be the WSDUDP instance created from a graph G. Note that a solution Q? for432
WSDUDP is exactly the set of centre points to D?, the optimal solution to the WSDUDC problem433
in the primal setting (see Lemma 1).434
Assume that we have a planar embedding of the graph and a horizontal strip so that the terms435
left, right, above and below are all well defined. Let `vvert be the vertical line through vertex v. For436
the reduction, we make use of dummy vertices, which are simply extra vertices that we may place437
on an edge of the graph G. A dummy edge is an edge which is incident upon at least one dummy438
vertex. Informally, the steps of the reduction are (the precise details follow, see also Figure 4 for439
an illustration):440
1. Obtain a straight line planar embedding of G (e.g. [46]) where each vertex has a distinct441
x-coordinate.442
2. For any vertex v with degree three where all incident edges are left or right of `vvert, ‘bend’ the443
lowest edge with a dummy vertex so that the edge becomes incident to v from the opposite444
side of `vvert, call this new graph G′ = (V ′, E′). We will continue to build on this graph445
through the reduction.446
3. For each vertex v ∈ V ′, add a dummy vertex to V ′ at each point where `vvert∩ e 6= ∅,∀e ∈ E′.447
4. Scan the vertices to identify each vertex v of degree one or two where all edges are incident on448
the same side of `vvert, suppose without loss of generality that the edges are incident from the449
right. Place a vertical line `vert between v and the next vertex to the left in the embedding,450
and add a dummy vertex at each point where `vert ∩ e 6= ∅,∀e ∈ E′. This ensures that451
consecutive vertical arrays of vertices differ in cardinality by at most one.452
5. For any pair of vertices vi, vj ∈ V where there is an edge e = (vi, vj) ∈ E), ensure that453
an even number of vertices have been added onto the edge e in G′ by adding an additional454
dummy vertex if necessary.455
17
6. Create the WSDUDP instance WS(G) from G′ so that every edge in E′ corresponds to a456
disk in D and every vertex in V ′ corresponds to a point in Q. We then show that an optimal457
solution to WSDUDP provides an optimal cover for G′, from which an optimal vertex cover458
for G may be found, as required.459
Lemma 6. Given an edge e(i,j) of the planar graph G = (V,E), one can arbitrarily add a pair460
of adjacent dummy vertices Vd = {vi1 , vi2} along the edge e(i,j), producing two new edges in the461
augmented graph G′ = (V ∪ Vd, E ∪ {e(i,i1), e(i1,i2), e(i2,j)} \ {e(i,j)}). The graph G′ remains planar,462
and the cardinality of the optimal solution to Vertex-Cover over G′ is |V ?| + 1, where V ? is463
the set of vertices in a minimum vertex cover of G. Given this property, for any optimal solution464
V ?G′ to Vertex-Cover on G′, we can find an optimal solution V ?
G to Vertex-Cover on G in465
polynomial time.466
Proof. By placing the dummy vertices directly on the edge e(i,j) in any embedding, planarity467
is preserved. There are two possibilities for a minimum vertex cover V ? over an edge e(i,j) in468
G = (V,E); either one or both of its vertices are in V ?. The addition of a pair of dummy vertices469
{vi1 , vi2} on e(i,j) creates three edges in place of e(i,j): {e(i,i1), e(i1,i2), e(i2,j)}, with e(i,i1) and e(i1,i2)470
sharing the dummy vertex vi1 , and e(i1,i2) and e(i2,j) sharing the other dummy vertex vi2 .471
In the first case, e(i,j) is covered by one vertex from V ?, say vi. Then e(i,i1) is covered by V ?,472
but e(i1,i2) and e(i2,j) are not. The only optimal cover is to add the shared dummy vertex vi2 to473
the solution. Therefore, the size of the optimal solution increases by one. In the second case, e(i,j)474
was covered by both vi and vj in V ?, and so e(i,i1) and e(i2,j) are covered. Therefore, arbitrarily475
selecting one of the dummy nodes to cover e(i1,i2), say vi1 , increases the size of the optimal solution476
by one. Although e(i,i1) is covered by two vertices, the topology of the graph and cover local to vi477
remains unchanged.478
Suppose there is only one pair of dummy nodes in G′. At least one of the dummy vertices from479
the pair {vi1 , vi2} must be in the optimal solution V ?G′ , since they are the endpoints of the edge480
e(i1,i2). If only one is in the optimal solution, say vi1 , we can discard it and return V ?G = V ?
G′ \{vi1}481
as an optimal solution to Vertex-Cover on G.482
If both vi1 and vi2 are in V ?G′ , we must discard both and add either vi or vj to the solution for V ?
G.483
If vi or vj is also in V ?G′ , then the adjacent dummy vertex is extraneous and V ?
G′ is a suboptimal484
cover (a contradiction). Without loss of generality, say vi, vi1 and vi2 are in V ?G′ and V ?
G′ is an485
optimal cover; this is a contradiction since V ?G′ \{vi1} provides a vertex cover of smaller cardinality.486
Therefore neither vi nor vj is in V ?G′ , and we may arbitrarily set V ?
G′ = (V ?G′ \ {vi1}) ∪ {vi}. This487
provides a different vertex cover for G′ which is of equal cardinality, and thus is optimal. Now we488
are in the first case again.489
If there are more pairs of dummy vertices, this argument may be applied iteratively to adjacent490
pairs in G′ until each pair of dummy vertices has only one vertex in V ?G′ . If there is exactly one491
dummy vertex from each pair in the optimal vertex cover, these may be removed to provide an492
optimal vertex cover V ?G for G.493
An example WSDUDP construction WS(G) is shown in Figure 4 to provide intuition for the494
gadgets used in the reduction. Each edge of the graph G′ (actual or dummy) corresponds to a disk495
in WS(G), and each vertex (actual or dummy) corresponds to a point in Q. A point in Q pierces496
two disks in WS(G) if the degree of the corresponding vertex in G′ is two; points pierce three disks497
if their corresponding vertices have degree three. This ensures that there is a one-to-one mapping498
18
trans-2
cis-3
trans-3
cis-2
(a) Given a graph G, we compute a planar embedding (see Section 5.1 for vertex classes).trans-2
trans-3
cis-2trans-3
cis-2
(b) The cis-3 vertex has been replaced with a trans-3 vertex and a cis-2 vertex (i.e. the edge has been‘bent’ by adding a new vertex on the edge).
(c) Dummy vertices are added at the intersection points of edges of the graph with vertical lines incidentupon all vertices.
(d) Dummy vertices have been added so that adjacent stacks only vary in cardinality by one, and also sothat all edges of the input graph have an even number of dummy vertices incident upon them.
}}
dvertdvert/2 ddisk
`1
`2
(e) We construct a series of stacks of disks, where disks in adjacent stacks have slight overlap. The diskcentres in each stack are aligned vertically and separated by a fixed distance dvert. The number of disksin adjacent stacks may only vary by one. If two consecutive stacks have the same number of disks, thecentres are aligned horizontally and separated by ddisk. If two consecutive stacks have differing numbers ofdisks, the centres are staggered vertically by dvert/2, so that each disk centre is ddisk from two disk centresin the adjacent stack (thus, these stacks are distance
√d2disk − d2vert apart). The points of Q are indicated
by squares; those points piercing three disks are drawn as empty squares. The centre points of the disksP are displayed as filled circles.
Figure 4: A sample WSDUDP construction WS(G) for the NP-hardness reduction.
19
between the solution to the constructed WSDUDP instance and the minimum vertex cover of the499
modified graph that it represents.500
In the reduction we use wires, which are formally defined below. In essence, a wire is a set of501
disks and a set of points which are arranged so that any disk of the wire intersects at most two502
others, and for any pair of disks with a non-empty area of intersection, this area contains a point.503
Conversely, any point in the wire pierces exactly two disks, so that given a wire with mw disks, the504
cardinality of the minimum set of points piercing all disks is dmw/2e. We also use stacks, where a505
stack is a set of disks whose centre points are collinear on a vertical line.506
Lemma 7. w horizontal wires may be placed so that they are vertically adjacent in the WSDUDP507
setting, for any w > 0, so that the solution in one wire is independent from that of all other wires.508
Proof. By placing the disk centres of all wires directly above one another to create sets of stacks,509
the solution for each wire is independent of all others. Suppose that there are w wires, and the510
strip has height h. If the lenses formed by the area of intersection between consecutive disks on a511
wire have height h` < h/w, then the lenses do not intersect any other disks. However, we require512
extra room for gadgets, so we restrict each lens to half this height, h` = h/2w. The minimum513
distance between disk centres on a wire is thus ddisk > 2√
1− h2` .514
A wire wi is a sequence of disks positioned so that consecutive centres are spaced ddisk units515
apart, not necessarily collinearly, where 2√
1− h2` < ddisk ≤√
2 + 2√
1− (3h`/4)2, so that there516
exists a small area of overlap between consecutive disks which contains a point in Q.11 Disk centres517
on adjacent wires are placed dvert = 3h`/2 units apart vertically, and we define a stack as a set518
of such vertically aligned disks. The centres of the disks in a stack are shifted within the strip by519
dvert/2 relative to an adjacent stack when the number of disks in the two stacks differs, while the520
distance between consecutive centres in each wire remains ddisk.521
Lemma 8. There is a non-empty area of intersection between three disks in two consecutive stacks522
when the centres of the stacks are shifted vertically by dvert/2 relative to each other, and the distance523
ddisk ≤√
2 + 2√
1− (3h`/4)2.524
Proof. Without loss of generality, assume that disks D1, D2 are in the left stack and D3 is in525
the right stack, and their centrepoints are p1, p2, p3 respectively (see Figure 5). Let ⊥p1,p2 be the526
perpendicular bisector between p1 and p2; p3 lies on ⊥p1,p2 . Let ∂Di denote the boundary of Di.527
Then there is a unique point to the right of p1 and p2 at ⊥p1,p2 ∩∂D1 ∩ ∂D2, call this point pr.528
If pr and p3 are at most unit distance apart, then D3 covers pr and there is a non-empty area of529
intersection between D1, D2, and D3. Suppose dist(pr, p1) = dist(pr, p2) = dist(pr, p3) = 1, and530
we assumed that dvert = 3h`/2, so dist(p1, p3) = dist(p2, p3) =√
2 + 2√
1− (3h`/4)2. Therefore,531
the lemma holds when ddisk ≤√
2 + 2√
1− (3h`/4)2, as claimed.532
11Note that 2√
1− h2` <
√2 + 2
√1− (3h`/4)2 for h` > 0.
20
1
13h/4
√1− (3h/4)2
ddisk
D1
D2
D3
p1
p2
p3pr
Figure 5: The construction demonstrates that there is a non-empty area of intersection between three disks when
configured as shown and ddisk ≤√
2 + 2√
1− (3h`/4)2.
5.1. Gadgets533
In the graph, we may encounter vertices of degree one, two, or three. With each vertex in our534
construction, wires may begin, end, split, merge, or continue unchanged. For vertices of degree535
one, the incident edge will correspond to a terminal disk on a wire. For vertices of degree two, if536
one edge leaves to the left and the other to the right in the embedding, this is a trans-2 vertex12,537
and we handle it by continuing all wires. If both edges go in the same direction (left or right),538
we call this a cis-2 vertex, and we have a gadget to merge the pair of wires corresponding to the539
edges. Analogously, we have gadgets for both the trans-3 and cis-3 degree three vertices. Finally,540
we build a gadget to increase the number of vertices on an edge. With each gadget, we apply the541
analogous modification to G′ by adding dummy vertices to the respective edges. This ensures that542
an optimal solution to WS(G) corresponds exactly to an optimal vertex cover for G′.543
cis-2 Gadget544
In this case, a pair of wires will terminate, and since the two terminal disks correspond to a545
pair of edges sharing a vertex, we place a vertex in the area covered by both disks and no others.546
An extra column of dummy nodes should be used to extend all other wires if the vertex is on an547
interior face of the planar embedding of the graph, since two wires are terminated simultaneously,548
and we may only shift wires by dvert/2 with each column (see Figure 6a).549
trans-3 Gadget550
Suppose we have an upper wire ending in disk Du and a lower wire ending in disk Dl, and551
they merge into a single wire beginning with disk Dc. We place Dc at a point so that the distance552
12Borrowing from the Latin terms in isomerism, trans means “on the other side”, and cis means “on the sameside”. We label them relative to a vertical line through the vertex, so a cis vertex has all incident edges to one sideof the vertical line.
21
(a) The cis-2 gadget. Two wires terminatesuch that a single point pierces the last disk ineach wire.
Du
Dl
Dc
(b) The trans-3 gadget. One wire divides tobecome two (alternatively, two wires merge tobecome one).
(c) The cis-3 gadget combines the cis-2 andtrans-3 gadgets so that three wires terminate.
Figure 6: The gadgets for the WSDUDC NP-hardness reduction.
between the centres of both Dc to Du and Dc to Dl is ddisk, as described in Lemma 8. By placing553
a vertex in Dc ∩Du ∩Dl, a single point pierces three disks, which corresponds to a vertex which554
can cover three edges in the graph (see Figure 6b).555
cis-3 Gadget556
For this gadget, we combine the trans-3 and cis-2 gadgets to build a cis-3 configuration. In557
the planar graph embedding, this corresponds to introducing a bend in the lowest edge incident558
to the cis-3 vertex with a dummy vertex, so that it becomes a trans-3 vertex (see Figure 6c).559
Card+ Gadget560
If the total number of dummy vertices added to an edge of G is odd, we require a gadget which561
increases the number of disks between a pair of points on a wire by one. An extra disk whose562
centre is very close to the centre point of a disk on the wire (Figure 7) allows points to be placed563
so that the wire remains independent from adjacent wires, while increasing the number of disks564
on the wire by one.565
Now an instance of the WSDUDP problem WS(G) may be constructed from any planar graph566
G with no vertex of degree greater than three. A solution Q? to WS(G) is also a solution V ?G′567
to the Vertex-Cover problem on G′ = (V ′, E′), where vi ∈ V ′ is mapped to qi ∈ Q and568
qi ∈ Dj ↔ vi ∈ ej ∈ E′. By Lemma 6, we can find a minimum vertex cover V ?G for G from V ?
G′569
in polynomial time. Therefore, there is a hitting set of size c + (|D| − |V |)/2 for WS(G) if and570
22
D1 D2
D3
q1 q2 q3p1 p2
Figure 7: The Card+ gadget. We add a disk D2 into a wire by inserting the disk very close to one of the otherson the wire. Suppose that we originally had D1 and D3 on the wire, and point p1 was in their intersection, i.e.p1 ∈ D1 ∩D3. Now we add a disk D2 whose centre q2 is beside q1, and p1 is moved so that p1 ∈ D1 ∩D2, p1 6∈ D3.A new point p2 is placed so that p2 ∈ D2 ∩D3, p2 6∈ D1. Now the wire contains one more disk than previously, andthe new disk does not cover any points from adjacent wires.
only if there exists a vertex cover of size c for G. The optimal hitting set for D uses all points571
corresponding to the set of vertices in the vertex cover, plus exactly half of the extra points added572
in the construction of WS(G) from G, by Lemma 6. The number of disks stacked vertically in any573
column of WS(G) is in O(m), where m is the number of edges and n is the number of vertices in574
the graph G. The number of such stacks is in O(n), so the total number of disks and points in575
the WSDUDP construction is O(mn). In Lemma 9, we show that the number of bits required to576
represent the coordinates of the disk centres and points may be bounded by a polynomial in the577
size of the input.578
Lemma 9. The coordinates of the disk centres and points may be expressed using a number of bits579
that is polynomial on the size of the input.580
Proof. We will demonstrate that all points are separated from other points by distances that are581
polynomial on the size of the input in each dimension, and hence their logarithms are linearly582
related. First we consider the y-coordinate, which is the axis orthogonal to the strip. In the583
construction, we place all points and disk centres on horizontal grid lines that are spaced by584
3h`/4 = 3h/8w, where h is the height of the strip, and w is the maximum number of edges of the585
graph that may intersect a vertical line, so w ∈ O(m). Therefore, the vertical distance between586
points may always be expressed using O(logw + log(1/h)) bits, which is polynomial in the size of587
the input, and so the same number of bits suffices to represent the y-coordinates.588
The x-coordinates of points may be placed at a unit distance to the right or left of a disk589
centre (since we consider the disks closed), and so we will show that the bounds hold for the disk590
centres only. Recall that the disk centres are separated by a value ddisk, where 2√
1− h2` < ddisk ≤591
√2 + 2
√1− (3h`/4)2. The upper bound on the difference in the x-coordinate is 1+
√1− (3h`/4)2,592
realized when adjacent disk centres are shifted vertically by 3h`/4 relative to each other, as shown593
in Figure 5, such as in a trans-3 gadget. We will show that there exists a coordinate between594
these bounds that can be expressed in a polynomial number of bits on the size of the input by595
showing that the difference between the bounds may be lower bounded by a polynomial in the size596
the input. Hence a rational number with polynomially many bits fits in the desired region. Let597
δ = 1+√
1− (3h`/4)2−2√
1− h2` , the difference between the upper and lower bounding functions598
on the horizontal distance between disk centres. We observe that a parabola such as 0.05h2 serves599
as a lower bound on this difference function in the range h` ∈ [0 . . . 1]; a section of the plot of these600
two functions is illustrated in Figure 8.601
23
7× 10−7
6× 10−7
5× 10−7
4× 10−7
3× 10−7
2× 10−7
1× 10−7
00
2× 10−4 4× 10−4 4× 10−4 8× 10−4 1× 10−3
h
units
0.05h2`
1 +√1− (3h`/4)2 − 2
√1− h2
`
Figure 8: A plot suggesting that 0.05h2` serves as a lower bound for 1 +
√1− (3h`/4)2 − 2
√1− h2
` .
To formalize this bound, we first take the derivative of δ− 0.05h2` to obtain δ′ = − 9h`
4√
16−9h2`
+602
2h`√1−h2
`
−h`/10. This function has a single real root at h` = 0, and so we conclude that 0.05h2` ≤ δ603
for all values h` ∈ [0 . . . 1]. Since h` may be expressed as a polynomial of h and m, the distance604
between disk centres in the x-coordinate may also be expressed as a polynomial of the input,605
because there exists such a value for ddisk between the upper and lower bounds. Therefore, the606
upper bound may be computed to a number of bits that is logarithmic in a polynomial of the607
input, and so one may determine the x-coordinates of the centres of the disks by computing from608
left to right with these bounds.609
This completes the proof of Theorem 5.610
6. 15- and 16-Approximate Algorithms for Discrete Unit Disk Cover611
The 18-approximate DUDC algorithm of Das et al. [21] has two fundamental components.612
The plane is divided into horizontal strips bounded by the line segments `0, . . . , `t (indexed from613
top to bottom) so that dist(`i, `i+1) = 1√2
for each i ∈ {0, . . . , t−1}. The horizontal strip bounded614
by the lines `i and `i+1 is written as [`i, `i+1].615
In the first step, a cover is found for all points in P which are line-separable from a disk in616
D by any line in the set {`1, . . . , `t−1}. A 12-approximation algorithm is used for this setting,617
which is called the Outside Strip Discrete Unit Disk Cover (OSDUDC) problem [21] (not to be618
confused with the Strip-Separated Discrete Unit Disk Cover (SSDUDC) problem of Section 3.2,619
which is applied to a single strip only). In the second step, a WSDUDC algorithm is used to cover620
the points in P ∩ [`i, `i+1], which are covered only by the disks centred inside the strip [`i, `i+1],621
for each i ∈ {0, 1, . . . , t− 1} (this is the case for all points remaining after running the OSDUDC622
algorithm).623
Theorem 6. The DUDC algorithm of Das et al. [21, Algorithm 3] is is a 12 + c-approximation624
algorithm, taking T time in the worst case. The pair (c, T ) is determined by the choice of WSDUDC625
24
algorithm in this case, and known results include (3, O(m6n+ n log n)), (4, O(m4n+ n log n)), and626
(6, O(mn+m logm+ n log n)).627
Proof. Das et al. [21] established the 12-approximation factor for OSDUDC, which is added to the628
approximation factor of the selected WSDUDC algorithm. The running time of the OSDUDC algo-629
rithm is O(mn+m logm+ n log n) [42, p.63]. The running time of each call to WSDUDC(Pi,Di)630
ranges from O(|Di||Pi|+ |Di| log |Di|+ |Pi| log |Pi|) for the 6-approximate algorithm of Das et al. to631
O(|Di|6|Pi|+ |Pi| log |Pi|) for the 3-approximate algorithm described in this work. Therefore, the632
running time of the DUDC algorithm is dominated by that of WSDUDC for all known WSDUDC633
algorithms.634
7. Conclusions and Future Work635
We have outlined several approximation algorithms for the WSDUDC problem, along with a636
proof of NP-completeness for the problem. The general 3d1/√
1− h2e-approximate algorithm and637
the 4-approximate algorithm for strips of height ≤ 2√
2/3 both run in O(m4n+ n log n) time.638
Finally, we presented a 3-approximate algorithm for strips of height ≤ 4/5 which runs in O(m6n)639
time.640
There are several interesting directions for future work. It seems possible that an improved641
approximation algorithm for WSDUDC could be obtained using shifting strategies similar to those642
of the PTAS for GDC (see [5]). It would also be interesting to see how well the problem could643
be approximated if the setting were changed to one where the points are confined to the strip,644
but the disk centres are unconstrained. While the dynamic programming solution for covering PR645
should work with small modifications, it is unclear whether the points in PR can still be covered646
optimally (although we conjecture that an optimal solution is possible). Finally, an improvement647
to the SSDUDC algorithm would improve the running time of the general approximation algorithm648
and the 4-approximation algorithm, since the running time of SSDUDC is the bottleneck on the649
running time for these algorithms.650
Bibliography651
[1] R. Fraser, A. Lopez-Ortiz, The within-strip discrete unit disk cover problem, in: Proceedings652
of the Canadian Conference on Computational Geometry (CCCG), 2012, pp. 61–66.653
[2] T. Matsui, Approximation algorithms for maximum independent set problems and fractional654
coloring problems on unit disk graphs, in: Proceedings of the 1998 Japanese Conference on655
Discrete and Computational Geometry (JCDCG), Vol. 1763 of Lecture Notes in Computer656
Science, Springer Berlin / Heidelberg, 2000, pp. 194–200.657
[3] T. Erlebach, E. van Leeuwen, PTAS for weighted set cover on unit squares, in: Proccedings658
of Approximation, Randomization, and Combinatorial Optimization. Algorithms and Tech-659
niques (APPROX/RANDOM), Vol. 6302 of Lecture Notes in Computer Science, Springer660
Berlin / Heidelberg, 2010, pp. 166–177.661
[4] C. Ambuhl, T. Erlebach, M. Mihal’ak, M. Nunkesser, Constant-factor approximation for662
minimum-weight (connected) dominating sets in unit disk graphs, in: Proceedings of the663
Workshop on Approximation Algorithms for Combinatorial Optimization Problems (AP-664
PROX), 2006, pp. 3–14.665
25
[5] D. S. Hochbaum, W. Maass, Approximation schemes for covering and packing problems in666
image processing and VLSI, Journal of the ACM 32 (1985) 130–136.667
[6] N. Mustafa, S. Ray, Improved results on geometric hitting set problems, Discrete and Com-668
putational Geometry 44 (2010) 883–895.669
[7] G. Toussaint, Solving geometric problems with the rotating calipers, in: In Proceedings of670
IEEE Mediterranean Electrotechnical Conference (MELECON), 1983, pp. 1–8.671
[8] D. Johnson, The NP-completeness column: An ongoing guide, Journal of Algorithms 3 (2)672
(1982) 182–195.673
[9] R. J. Fowler, M. S. Paterson, S. L. Tanimoto, Optimal packing and covering in the plane are674
NP-complete, Information Processing Letters 12 (3) (1981) 133–137.675
[10] R. Raz, S. Safra, A sub-constant error-probability low-degree test, and a sub-constant error-676
probability PCP characterization of NP, in: Proceedings of the ACM Symposium on Theory677
of Computing (STOC), 1997, pp. 475–484.678
[11] U. Feige, A threshold of lnn for approximating set cover, Journal of the ACM 45 (4) (1998)679
634–652.680
[12] C. Toregas, R. Swain, C. ReVelle, L. Bergman, The location of emergency service facilities,681
Operations Research 19 (6) (1971) pp. 1363–1373.682
[13] D. Yang, S. Misra, X. Fang, G. Xue, J. Zhang, Two-tiered constrained relay node placement in683
wireless sensor networks: Efficient approximations, in: Proceedings of IEEE Communications684
Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON),685
2010, pp. 1 –9.686
[14] V. Chvatal, A Greedy Heuristic for the Set-Covering Problem, Mathematics of Operations687
Research 4 (3) (1979) 233–235.688
[15] H. Bronnimann, M. Goodrich, Almost optimal set covers in finite VC-dimension, Discrete and689
Computational Geometry 14 (1) (1995) 463–479.690
[16] G. Calinescu, I. I. Mandoiu, P.-J. Wan, A. Z. Zelikovsky, Selecting forwarding neighbours in691
wireless ad hoc networks, Mobile Networks and Applications 9 (2) (2004) 101–111.692
[17] S. Narayanappa, P. Vojtechovsky, An improved approximation factor for the unit disk covering693
problem, in: Proceedings of the Canadian Conference on Computational Geometry (CCCG),694
2006, pp. 15–18.695
[18] P. Carmi, M. Katz, N. Lev-Tov, Covering points by unit disks of fixed location, in: Proceed-696
ings of the International Symposium on Algorithms and Computation (ISAAC), Vol. 4835 of697
Lecture Notes in Computer Science, 2007, pp. 644–655.698
[19] F. Claude, G. Das, R. Dorrigiv, S. Durocher, R. Fraser, A. Lopez-Ortiz, B. Nickerson,699
A. Salinger, An improved line-separable algorithm for discrete unit disk cover, Discrete Math-700
ematics, Algorithms and Applications (DMAA) 2 (1) (2010) 77–87.701
26
[20] F. Claude, R. Dorrigiv, S. Durocher, R. Fraser, A. Lopez-Ortiz, A. Salinger, Practical discrete702
unit disk cover using an exact line-separable algorithm, in: Proceedings of the International703
Symposium on Algorithms and Computation (ISAAC), Vol. 5878 of LNCS, 2009, pp. 45–54.704
[21] G. K. Das, R. Fraser, A. Lopez-Ortiz, B. G. Nickerson, On the discrete unit disk cover problem,705
International Journal of Computational Geometry and Applications 22 (5) (2012) 407–419.706
[22] C. Liao, S. Hu, Polynomial time approximation schemes for minimum disk cover problems,707
Journal of Combinatorial Optimization (2009) 1–14.708
[23] E. Pyrga, S. Ray, New existence proofs for epsilon-nets, in: Proceedings of the Symposium709
on Computational Geometry (SoCG), ACM, 2008, pp. 199–207.710
[24] N. Mustafa, S. Ray, Improved results on geometric hitting set problems, http://www.711
mpi-inf.mpg.de/~saurabh/Papers/Hitting-Sets.pdf (2009).712
[25] G. Frederickson, Fast algorithms for shortest paths in planar graphs, with applications, SIAM713
Journal on Computing 16 (6) (1987) 1004–1022.714
[26] I. Koutis, G. Miller, A linear work, o(n1/6) time, parallel algorithm for solving planar Lapla-715
cians, in: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA), 2007,716
pp. 1002–1011.717
[27] S. Masuyama, T. Ibaraki, T. Hasegawa, The computational complexity of the m-center prob-718
lems on the plane, IEICE Transactions (1976-1990) E64-E (2) (1981) 57–64.719
[28] M. V. Marathe, H. Breu, H. B. Hunt, S. S. Ravi, D. J. Rosenkrantz, Simple heuristics for unit720
disk graphs, Networks 25 (2) (1995) 59–68.721
[29] G. D. Da Fonseca, C. M. H. de Figueiredo, V. G. P. de Sa, R. Machado, Linear time ap-722
proximation for dominating sets and independent dominating sets in unit disk graphs, in:723
Proceedings of the Workshop on Approximation and Online Algorithms (WAOA), 2012.724
[30] M. De, G. Das, S. Nandy, Approximation algorithms for the discrete piercing set problem for725
unit disks, in: Proceedings of the Canadian Conference on Computational Geometry (CCCG),726
2011, pp. 375–380.727
[31] H. B. Hunt III, M. V. Marathe, V. Radhakrishnan, S. Ravi, D. J. Rosenkrantz, R. E. Stearns,728
NC-approximation schemes for NP- and PSPACE-hard problems for geometric graphs, Jour-729
nal of Algorithms 26 (2) (1998) 238 – 274.730
[32] X. Cheng, X. Huang, D. Li, W. Wu, D.-Z. Du, A polynomial-time approximation scheme for731
the minimum-connected dominating set in ad hoc wireless networks, Networks 42 (4) (2003)732
202–208.733
[33] D. Lichtenstein, Planar formulae and their uses, SIAM Journal on Computing 11 (2) (1982)734
329–343.735
[34] T. Nieberg, J. Hurink, A PTAS for the minimum dominating set problem in unit disk graphs,736
in: Proceedings of the Workshop on Approximation and Online Algorithms (WAOA), Vol.737
3879 of Lecture Notes in Computer Science, Springer Berlin / Heidelberg, 2006, pp. 296–306.738
27
[35] K. J. Supowit, Topics in computational geometry, Ph.D. thesis, University of Illinois at739
Urbana-Champaign (1981).740
[36] T. Gonzalez, Covering a set of points in multidimensional space, Information Processing741
Letters 40 (1991) 181–188.742
[37] K. L. Clarkson, K. Varadarajan, Improved approximation algorithms for geometric set cover,743
Discrete and Computational Geometry 37 (1) (2007) 43–58.744
[38] P. K. Agarwal, M. Sharir, Efficient algorithms for geometric optimization, ACM Computing745
Surveys 30 (1998) 412–458.746
[39] R. Z. Hwang, R. C.-T. Lee, R. C. Chang, The generalized searching over separators strategy747
to solve some NP-hard problems in subexponential time, Algorithmica 9 (1993) 398–423.748
[40] P. K. Agarwal, C. M. Procopiuc, Exact and approximation algorithms for clustering, in:749
Proceedings of the Symposium on Discrete Algorithms (SODA), ACM Press, 1998.750
[41] G. K. Das, S. Das, S. C. Nandy, Homogeneous 2-hop broadcast in 2D, Computational Geom-751
etry: Theory and Applications 43 (2010) 182–190.752
[42] R. Fraser, Algorithms for geometric covering and piercing problems, Ph.D. thesis, University753
of Waterloo (2012).754
[43] X. Xu, Z. Wang, Wireless coverage via dynamic programming, in: Proceedings of Wireless755
Algorithms, Systems, and Applications (WASA), Vol. 6843, LNCS, 2011, pp. 108–118.756
[44] M. R. Garey, D. S. Johnson, The rectilinear Steiner tree problem is NP-complete, SIAM757
Journal on Applied Mathematics 32 (4) (1977) pp. 826–834.758
[45] P. Alimonti, V. Kann, Some APX-completeness results for cubic graphs, Theoretical Com-759
puter Science 237 (1-2) (2000) 123 – 134.760
[46] H. Fraysseix, J. Pach, R. Pollack, How to draw a planar graph on a grid, Combinatorica 10761
(1990) 41–51.762
28