Approximation Algorithms for a Variant of Discrete Piercing Set Problem for Unit Disks

Similar documents
Approximation Algorithms for Geometric Intersection Graphs

Approximation Algorithms for Maximum Independent Set of a Unit Disk Graph

ON THE DISCRETE UNIT DISK COVER PROBLEM

On the Discrete Unit Disk Cover Problem

Improved Results on Geometric Hitting Set Problems

arxiv: v1 [cs.cg] 13 Sep 2012

PTAS for geometric hitting set problems via Local Search

Geometric Unique Set Cover on Unit Disks and Unit Squares

Practical Discrete Unit Disk Cover Using an Exact Line-Separable Algorithm

Geometric Red-Blue Set Cover for Unit Squares and Related Problems

Geometric Red-Blue Set Cover for Unit Squares and Related Problems

The Within-Strip Discrete Unit Disk Cover Problem

Unit Disk Cover Problem in 2D

Approximating Node-Weighted Multicast Trees in Wireless Ad-Hoc Networks

Practical Discrete Unit Disk Cover Using an Exact Line-Separable Algorithm

PTAS for Weighted Set Cover on Unit Squares

Introduction to Approximation Algorithms

Approximation Algorithms for the Unit Disk Cover Problem in 2D and 3D

Conflict-free Covering

Approximation Algorithms for Intersection Graphs

Aggregate-Max Nearest Neighbor Searching in the Plane

Approximating Fault-Tolerant Steiner Subgraphs in Heterogeneous Wireless Networks

On Minimum Sum of Radii and Diameters Clustering

Packing Two Disks into a Polygonal Environment


On ɛ-unit distance graphs

Bottleneck Steiner Tree with Bounded Number of Steiner Vertices

On Planar Intersection Graphs with Forbidden Subgraphs

Approximation Algorithms for Unit Disk Graphs

Parameterized Complexity of Independence and Domination on Geometric Graphs

Minimum-Link Watchman Tours

Preferred directions for resolving the non-uniqueness of Delaunay triangulations

T. Biedl and B. Genc. 1 Introduction

Convex Hull of the Union of Convex Objects in the Plane: an Adaptive Analysis

ON WEIGHTED RECTANGLE PACKING WITH LARGE RESOURCES*

An Efficient Algorithm for 2D Euclidean 2-Center with Outliers

Algorithms for Euclidean TSP

A better constant-factor approximation for weighted dominating set in unit disk graph

On connected domination in unit ball graphs

Polynomial Time Approximation Schemes for the Euclidean Traveling Salesman Problem

Range-Aggregate Queries Involving Geometric Aggregation Operations

CMSC 754 Computational Geometry 1

Connected Components of Underlying Graphs of Halving Lines

Theorem 2.9: nearest addition algorithm

The geometric generalized minimum spanning tree problem with grid clustering

arxiv: v1 [math.co] 7 Dec 2018

Lecture 3: Art Gallery Problems and Polygon Triangulation

On Computing the Centroid of the Vertices of an Arrangement and Related Problems

OUTPUT-SENSITIVE ALGORITHMS FOR TUKEY DEPTH AND RELATED PROBLEMS

Smallest Intersecting Circle for a Set of Polygons

Max-Cut and Max-Bisection are NP-hard on unit disk graphs

Approximation Algorithms for Geometric Covering Problems for Disks and Squares

1 Introduction and Results

On the Max Coloring Problem

On Covering a Graph Optimally with Induced Subgraphs

Optimization and approximation on systems of geometric objects van Leeuwen, E.J.

REDUCING GRAPH COLORING TO CLIQUE SEARCH

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994)

Faster Construction of Planar Two-centers

A 2k-Kernelization Algorithm for Vertex Cover Based on Crown Decomposition

A linear time approximation scheme for computing geometric maximum k-star

Cutting out polygons with a circular saw

Computing Maximally Separated Sets in the Plane and Independent Sets in the Intersection Graph of Unit Disks

Visibility: Finding the Staircase Kernel in Orthogonal Polygons

Max-Cut and Max-Bisection are NP-hard on unit disk graphs

Minimum Spanning Tree Verification under Uncertainty

Parameterized graph separation problems

Geometric Steiner Trees

Geometric Considerations for Distribution of Sensors in Ad-hoc Sensor Networks

A SIMPLE APPROXIMATION ALGORITHM FOR NONOVERLAPPING LOCAL ALIGNMENTS (WEIGHTED INDEPENDENT SETS OF AXIS PARALLEL RECTANGLES)

Bounds on the signed domination number of a graph.

On Multi-Stack Boundary Labeling Problems

Decomposing Coverings and the Planar Sensor Cover Problem

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS

Set Cover with Almost Consecutive Ones Property

Interleaving Schemes on Circulant Graphs with Two Offsets

The Square Root Phenomenon in Planar Graphs

Research Collection. An O(n^4) time algorithm to compute the bisection width of solid grid graphs. Report. ETH Library

Approximability Results for the p-center Problem

Computational Geometry

arxiv: v1 [cs.cg] 8 Jan 2018

For a set S of line segments, a separator can be found using duality. Under duality, the segments transform to double wedges, and a separator line tra

arxiv: v1 [cs.cc] 2 Sep 2017

Complexity Results on Graphs with Few Cliques

Approximation Algorithms

APPROXIMATING THE MAXMIN AND MINMAX AREA TRIANGULATIONS USING ANGULAR CONSTRAINTS. J. Mark Keil, Tzvetalin S. Vassilev

Planar Graphs with Many Perfect Matchings and Forests

The Full Survey on The Euclidean Steiner Tree Problem

On the Euclidean Bottleneck Full Steiner Tree Problem

Hardness of Subgraph and Supergraph Problems in c-tournaments

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

January 10-12, NIT Surathkal Introduction to Graph and Geometric Algorithms

Optimal parameterized algorithms for planar facility location problems using Voronoi diagrams

The Art Gallery Problem: An Overview and Extension to Chromatic Coloring and Mobile Guards

On Minimum Weight Pseudo-Triangulations

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Reachability on a region bounded by two attached squares

Domination, Independence and Other Numbers Associated With the Intersection Graph of a Set of Half-planes

Introduction to Approximation Algorithms

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls

Transcription:

Approximation Algorithms for a Variant of Discrete Piercing Set Problem for Unit Disks Minati De Gautam K. Das Paz Carmi Subhas C. Nandy Abstract In this paper, we consider constant factor approximation algorithms for a variant of the discrete piercing set problem for unit disks. Here a set of points P is given; the objective is to choose minimum number of points in P to pierce the unit disks centered at all the points in P. We first propose a very simple algorithm that produces 1- approximation result in O(n log n) time. Next, we improve the approximation factor to 4 and then to 3. The worst case running time of these algorithms are O(n 8 log n) and O(n 15 log n) respectively. Apart from the space required for storing the input, the extra work-space requirement of all these algorithms are O(1). Finally, we propose a PTAS for the same problem. Given a positive integer k, it can produce a solution with performance ratio (1 + 1 k ) in O(n O(k) ) time. Keywords: minimum dominating set, piercing, unit disk, approximation algorithm. 1 Introduction The piercing set of a set of objects S in R is a set of points Q such that each object in S contains at least one point in Q. Here, the goal of the optimization problem is to compute a piercing set for S of minimum size. A clique C in the geometric intersection graph G of a set of objects S implies that each pair of objects corresponding to the nodes in C are intersecting. But, it does not imply that all of them have a common intersection region. In other words, a clique C in G does not imply that the objects corresponding to the members in C can be pierced by a single point. However, if S consists of a set of axis-parallel rectangles, then the minimum piercing set corresponds to the minimum clique cover of the intersection graph of the members in S. The minimum clique cover problem for a set of axis-parallel unit squares in R is known to be NP-hard [0]. Hochbaum and Maass [3] proposed a PTAS for the minimum clique cover problem for a set of axis-parallel unit squares with time complexity n O(1/ɛ). The time complexity was later improved to n O(1/ɛ) by Feder and Greene [19], and then by Gonzalez []. Chan [10] proposed a PTAS for squares of arbitrary size with time complexity n O(1/ɛ). In fact, this algorithm works for any collection of fat objects. Chan and Mahmood [1] considered the problem for a set of A preliminary version of this paper appeared in CCCG 011 Indian Statistical Institute, Kolkata, India Indian Institute of Technology, Guwahati, India Ben-Gurion University of the Negev, Israel 1

axis-parallel rectangles of fixed height (but of arbitrary width), and proposed a PTAS with n O(1/ɛ ) time complexity. The minimum clique cover problem for unit disk graph also has a long history. The problem is known to be NP-hard [8], and a 3-approximation algorithm is easy to obtain [6]. Recently, Dumitrescu and Pach [18] proposed an O(n ) time randomized algorithm for the minimum clique cover problem with approximation ratio.16. They also proposed a polynomial time approximation scheme (PTAS) for this problem that runs in O(n 1/ɛ ) time. It improves on a previous PTAS with O(n 1/ɛ4 ) running time [30]. As a clique in a disk graph may not imply a common intersection region (see Figure 1), the minimum piercing set problem and the minimum clique cover problem are different for unit disk graphs. The minimum piercing set problem for disks has many applications in wireless communication where the objective is to place the base stations to cover a set of radio terminals (sensors) distributed in a region. The minimum piercing set problem for unit disks is also NP-hard [5, 18]. Carmi et al. [5] proposed an approximation algorithm for this problem where the approximation factor is 38. In particular, if the points are distributed below a straight line L, and the base stations (of same range) are allowed to be installed on or above L then a 4-factor approximation algorithm can be obtained provided each point below L lie within a unit distance from at least one base station. Figure 1: graph Clique in a unit disk In the discrete version of the minimum piercing set problem for unit disks, two sets of points P and Q are given. The unit disks are centered at the points of P, and the piercing points need to be chosen from Q. The objective is to choose minimum number of points from Q to pierce the disks centered at all the points in P. The problem is known to be NP-hard [5]. The first constant factor approximation result on this problem is proposed by Calinescu et al. [4]. It uses linear programming relaxation method to produce an 108-factor approximation result. The approximation result is then improved to 7 in [8], 38 in [5], and in [14]. Finally, Das et al. [16] proposed an 18-factor approximation algorithm that runs in O(n log n + m log m + mn) time, where P = n and Q = m. Another variant of the discrete piercing set problem for unit disks assumes Q = P. In other words, the unit disks corresponding to the points in P need to be pierced by choosing minimum number points from P itself. This problem has a nice application. Consider a situation where a set of sensors are distributed in a region, and their positions are known. Each sensor can communicate with all the sensors in its communication range ρ, and can get the data acquired by them. The ρ parameter of all the sensors are assumed to be same. The objective of the base station is to select minimum number of these sensors to collect data from all the sensors. In this paper, we study this variant of the discrete piercing set problem. This is equivalent to the minimum dominating set problem for the unit disk graph (or MDS problem in short). Here, an undirected graph is constructed with nodes corresponding to the points in P. Between a pair of nodes there is an edge if the distance between the two points is at most their radii. A node in the

graph dominates itself and all its neighbors. The objective is to choose minimum number of nodes to dominate all the nodes in the graph. The above problem is known to be NP-hard [13]. Ambühl et al. [3] first proposed an approximation algorithm for this problem. They considered the weighted version of the problem where each node is attached with a positive weight. The objective is to find the minimum weight dominating set of the nodes in the graph. The approximation factor of their proposed algorithm is 7. Huang et al. [4] improved the approximation factor for the same problem to 6 + ɛ. Dai and Yu [15] further improved the approximation factor to 5 + ɛ. Recently, Zou et al. [3] proposed a polynomial time 4 + ɛ factor approximation algorithm. The theme of the algorithms in [4, 15, 3] are same. First, they solve a sub-problem with approximation factor γ (γ = 6, 5, 4 in [4], [15] and [3] respectively) and then using this result they solve the original problem with approximation factor γ + ɛ. The time complexity of their algorithms are of the form O(α(n) β(n)), where O(α(n)) is the time 84 4( complexity of the algorithm for the sub-problem and O(β(n)) = O(n ɛ ) ) is the number of times the sub-problem needs to be invoked to solve the corresponding original problem. Putting ɛ = 1, we can get γ + 1 factor approximation algorithm, but the time complexity becomes very high degree polynomial function in n. Nieberg and Hurink [9] proposed an O(n c ) time PTAS for computing the minimum dominating set for unit disk graphs, where c is an integer satisfying (c + 1) < (1 + ɛ) c for 0 < ɛ 1. It accepts any undirected graph as input, and returns a (1 + ɛ) factor approximation solution for the dominating set problem, or a certificate indicating that the input graph is not a unit disk graph. The fastest worst-case running time is obtained by setting ɛ = 1 for a -approximation result, which runs in O(n c ) = O(n 9 ) = O(n 81 ) time. Clearly, this algorithm is not very efficient. Recently, Gibson and Pirwani [1] proposed a PTAS for minimum dominating set of (arbitrary size) disk graph which runs in n O( 1 ɛ ) time. Our present work is directed towards finding the constant factor approximation algorithms for the MDS problem that are tractable with respect to computation time. For the unweighted version of the MDS problem, the best known result is a 5-factor approximation algorithm proposed in [6], and it works for disks of arbitrary radii. This result is then used for the h-piercing problem, where the objective is to choose minimum number of points in P to pierce each disk by at least h points. The proposed approximation factor is 5( h 1). In this paper, we propose three almost similar algorithms for the MDS problem (i.e., the discrete piercing problem with Q = P ). The first one produces a 1-approximation result in O(n log n) time. The second one produces a 4-approximation solution in O(n 8 log n) time, and the last one produces a 3-approximation solution in O(n 15 log n) time. We can use this result to improve the approximation factor for the h-piercing problem [6] of constant radius disks to 3( h 1) from 5( h 1). We also show that each of these algorithms can be made in-place with O(1) extra-space keeping their time complexities invariant. This is of great advantage in the sense that the algorithms for different optimization problems in unit disk graph have wide applications in sensor network where the necessary softwares are embedded in tiny sensors, and the constraint in memory size is very much important due to their size. Finally, we propose a PTAS for the discrete piercing set problem. Given a positive integer k, the proposed algorithm produces a solution with performance ratio (1 + 1 k ) in n O(k) time. 3

Approximation algorithms We are given a set of points P, where each point corresponds to a unit disk centered at that point. The objective of the optimum algorithm for the discrete piercing set problem is to choose minimum number of points of P such that each disk contains at least one chosen point. In this section, we propose constant factor approximation algorithms for this problem..1 A simple 1-approximation algorithm We partition the plane into a regular hexagonal lattice as shown in Figure. Here, each cell is a regular hexagon whose largest diagonal is of unit length. So, all the unit disks centered in a particular cell χ can be pierced by choosing any point from that cell χ. Our algorithm will take a point p P from each non-empty cell and report them as a piercing set. Now, we will prove the following observation: 1 3 4 5 (1, 1) (1, ) (1, 3) (1, 4) (1, 5) 6 7 8 9 10 11 1 13 B A F C D E 15 16 h (, 1) (, ) (, 3) (, 4) (, 5) (, 6) d (3, 1) (3, ) (3, 3) (3, 4) (3, 5) 17 18 19 0 1 (4, 1) (4, ) (4, 3) (4, 4) (4, 5) (4, 6) 3 4 5 6 7 (5, 1) (5, ) (5, 3) (5, 4) (5, 5) (a) (b) Figure : Using Hexagonal partitioning: (a) justification of Observation 1, and (b) computation of cell identity Observation 1 A point inside a cell can not pierce unit disks centered at more than twelve cells simultaneously. Proof: Consider the partitioning of the plane as shown in Figure (a). Here, the cells are numbered as 1,,..., 7. The cell 14 is further divided into 6 sub-cells named as A, B, C, D, E and F. Let p be a point inside the cell 14. Without loss of generality, assume that p is in the sub-cell A. Now, observe that p can pierce unit disks centered in the fourteen cells numbered as,3,7,8,9,1,13,14,15,18,19,0,4 and 5. We will show that p can not pierce unit disks centered in cells and 4 simultaneously. For any two point u and v in cell and 4 respectively, the distance dist(u, v). From triangular inequality, we have dist(u, p) + dist(p, v) dist(u, v) >, where dist(a, b) denotes the Euclidean distance of two points a and b in R. This implies that at least one of dist(u, p) and dist(p, v) is greater than 1. Thus, the point p can not pierce unit disks centered at 4

u and v simultaneously. Using similar argument it can be shown that p can not pierce unit disks centered at pair of cells (3, 4), (,5) and (3,5) simultaneously. Therefore, p can not pierce unit disks centered at more than twelve cells simultaneously. Hence we have the result. Now, we will describe how to implement this algorithm in an in-place manner. We will virtually assume that the cells are rectangle as shown in Figure (b). Each rectangle is of size 3 4 3 4 3 3 4 excepting the starting and ending rectangles of even rows, which are of size. Each rectangle is attached with an identity (i, j), where i denotes the row number and j denotes the rectangle number in the i-th row. Each hexagonal cell is attached with an identity (i, j) if it contains the center (intersection of the diagonals) of the (i, j)-th rectangle. For a point p = (x, y), we will first decide in which rectangle it belongs as follows. We compute i = x/. If i is even, we compute j = y/ 3 4, and if i is odd then j = (y 3 8 )/ 3 4. Thus, the point p is in the j-th rectangle of the i-th row. Next, we check whether it is in any of the two triangular pockets of that rectangle. If not, then we assign the point in the cell (i, j). Otherwise, if it is in the left triangle in the (i, j)-th rectangle and i is even (resp. odd), we assign p in cell (i 1, j 1) (resp. (i 1, j)). Similarly, if p is in the right triangle in the (i, j)-th rectangle and and i is even (resp. odd), we assign p in cell (i 1, j) (resp. (i 1, j + 1)). Thus, the cell identity of a point can be computed in O(1) time using only constant number of variables. Thus, we have the following theorem: 3 4 Theorem 1 The approximation factor of the proposed algorithm is 1, and its running time is O(n log k), where k is the size of the optimum solution. Apart from the array containing the input points, the extra-space required for this algorithm is O(k). Proof: Consider a piercing point in the optimum solution. By Observation 1, it can pierce unit disks centered in at most twelve cells. But, we have chosen at most 1 different points to pierce those unit disks. Thus, the approximation factor follows. In order to justify the time complexity, we shall not construct the grid explicitly. We maintain a height balanced binary tree T for storing the non-empty grid cells. The processing of each point consists of computing its corresponding cell number (i, j), and checking whether (i, j) is in T. If it is present in T then nothing needs to be done; otherwise, we insert (i, j) in T along with the point p. After processing all the points in P, we need to visit T for reporting the piercing points. Since the size of T is at most 1k, the time and space complexity results follow. The space complexity can further be improved to O(1) by sorting the points in P with respect to their cell identity number. Note that the cell number of the points are never stored; these are computed on demand. After sorting, the points in the same cell appear consecutively in the array P. Finally, another scan in the array P is required to report one point (in P ) from each non-empty cell. Thus, the total time required is O(n log n).. Improving the approximation factor In this section, we follow a different scheme for designing approximation algorithms for the considered problem. The basic idea of these algorithms is as follows. 5

Partition the entire plane into (polygonal) cells and color the cells using t colors, say c 1, c,..., c t, such that no unit disk intersects two or more cells of the same color. Find a polynomial time exact algorithm A which will take a cell χ as input and compute minimal subset of points in P to pierce all the unit disks centered at χ. Let OP T i be the set of piercing points obtained by the algorithm A for all the cells colored by c i. Due to the partitioning property, OP T i OP T, where OP T is the optimum solution for the problem. Thus i OP T i t OP T, and we have t-approximation algorithm...1 A 4-approximation algorithm For 4-approximation algorithm, we partition the plane into a grid whose each cell is of size 3 3 as shown in Figure 3(a). Observe that we can color the cells using 4 colors such that no unit disk can intersect two or more cells of same color. 3 1 3 A B A B A B 1 3 4 5 6 1 C D C D C D 7 8 9 10 11 1 A B A B A B 13 14 15 16 17 18 C D C D C D 19 0 1 3 4 A B A B A B 5 6 7 8 9 30 (a) Figure 3: Proof of Lemma 1 1 (b) 1 1 (c) 1 First, we analyze the time complexity of computing the minimum number of points in P required to pierce all the unit disks centered in a cell χ of size 3 3. We use P χ to denote the set of point inside the cell χ. In order to get the minimum cardinality subset of P for piercing the unit disks centered at the points in P χ, we need to identify the minimum number of points in P such that the unit disks centered at those points can cover all the points in P χ. We split χ into 9 sub-cells each of size 1 1 (see Figure 3(b)) such that a unit disk at any point inside a sub-cell covers that sub-cell completely. Note that we need at most 9 disks to cover all the points in P χ. The reasons are (i) the disk centered at any point inside a sub-cell covers all the points inside that sub-cell, and (ii) each non-empty sub-cell of χ can contribute one such point. Consider the unit width shaded region around the cell χ (see Figure 3(c)). Let Q χ be all the points in P lying inside χ and this shaded region. The points in Q χ can pierce the unit disks centered in the cell χ. We choose every point of p Q χ, and check whether all the unit disks centered centered in P χ are pierced by p. If it fails for all the points in Q χ, then we choose each pair of points p, q Q χ and test whether each unit disks centered in P χ is pierced by at least one of the points p and q. If it fails again for all possible pairs of points, we choose each triple of points of 6

Q χ and so on. For all possible 7-tuples, we choose each tuple of 7 points from Q χ and test whether each unit disk centered in P χ is pierced by any of those 7 points. For each tuple, the checking needs O(n) time. Thus, for checking all possible tuples of size at most 7, the total time needed is O(n 8 ) in the worst case. If this also fails, then we check for a solution of size 8 by following manner: Consider all possible 7-tuples of points from Q χ. For each 7-tuple S Q χ, do the following: 1. Find the points of P χ whose corresponding units disks are not pierced by any of the points in S. Let U P χ be these set of points.. Compute the farthest point Voronoi diagram (FVD) of U [17]. 3. Consider each point p in Q χ \ S and check whether p pierces all the unit disks centered at U as follows: find the farthest point f of p among the members in U by performing a point location in the FVD of U. If the dist(p, f) < 1, then S {p} is a valid piercing set for all the unit disks centered in P χ. Computation of FVD needs O(n log n) time and point location for each point needs O(log n) time. Thus, the overall time complexity for obtaining a solution of size 8 (if exists) is O(n 8 log n). If there exists no solution of size 8, we can get a solution of size 9 by choosing one point from each of the 9 sub-cells of χ. Note that, all these sub-cells must be non-empty. Thus, we have the following result: Lemma 1 The minimum piercing set of the unit disks centered at the points inside a cell χ of size 3 3 can be computed in O(n 8 log n) time. Lemma 1 along with the facts that (i) a unit disk in the optimum solution of a cell χ does not cover any point of some other cell ψ unless ψ is one of the eight neighboring cells of χ, and (ii) the proposed 4-coloring of the cells (in Figure 3) indicating that no unit disk intersect two cells of the same color, lead to the following result. Theorem A 4-approximation algorithm for the minimum discrete piercing set problem for unit disk exists with time complexity O(n 8 log n). Remark 1 We can reduce the time complexity of this problem by using the general version of the discrete -center problem, stated as follows: Given a set of n points Π and a set Ψ of m unit disks, cover all the members of Π with two disks from Ψ. The time complexity of our algorithm is dominated by the problem of testing the existence of a solution of size 8. Here we considered all possible 6-tuples, for each 6-tuple T, we identified the disks in P χ that are not pierced by any of the members of that 6-tuple. Let the centers of these disks be Π, and Ψ = the unit disks centered at Q χ \ T. Agarwal et al. proposed an O(n 4/3 log 5 n) time algorithm for a restricted version discrete -center problem [1], where the set Π and the centers of disks in Ψ are same. We can reduce the time complexity of our algorithm to O(n 7 1 3 log 5 n) if the algorithm of [1] can be tailored to handle the case where Π Ψ. 7

Making the algorithm in-place This algorithm can easily be made in-place as follows. As in the earlier section, we sort the points in P according to the cell number in which they belong. Next, we consider each non-empty cell χ in an ordered manner, and compute the optimum set of points to pierce all the unit disks centered at χ as follows. Note that the cells are placed in order in the array P, and the points in each cell are also contiguously placed in P. Since the position of χ is known, we also know the starting and ending positions of the points in each of the 9 cells contributing to the point set Q χ. These starting and ending positions are stored in an array A of size 9. We use another array of size 7 to generate all possible combinations (A[, j] A[1, j] 1) = total the number of points in these 9 cells. For each generated combination, we can identify the corresponding points S Q χ by using the array A. Again, a linear scan among the members in P χ is needed to test whether the corresponding unit disks are pierced by the chosen points in S. Thus, the existence of an optimal solution of size 7 can be made in-place. of size i (for all i = 1,,..., 7) with the integers {1,,..., k}, where k = 9 j=1 As we do not know any in-place way to compute farthest point Voronoi diagram, we substitute the steps mentioned earlier for getting a solution of size 8 as follows. Consider all possible 7-tuples of points from Q χ. For each 7-tuple S Q χ, do the following 1. Find the points of P χ whose corresponding units disks are not pierced by any of the points of S. Let U 1, U,..., U 9 be the these points in the 9 sub-cells. Thus U = U 1 U... U 9. Some of the U i s may be empty. Move U i at the beginning of the corresponding sub-cell in an in-place manner.. Compute convex hulls C 1, C,... C 9 for point sets U 1, U,..., U 9, respectively, in an in-place manner [9, 31]. The hull vertices are stored at the beginning of the corresponding sub-cells. 3. Consider each point p Q χ \ S and check whether p pierce all the unit disks centered in U as follows: Find farthest point f i of p in each non-empty U i by performing a binary search among the vertices in C i. Let d i = dist(p, f i ), where U i is non-empty, otherwise d i = 0, i {1,,..., 9}. if max{d 1, d,..., d 9 } 1, then {p} S is a solution. Since in-place convex hull algorithm needs O(n log n) time [9, 31], and computing the farthest point f i of a point p Q χ \ S in U i needs O(log n) time, this step takes O(n 8 log n) time and O(1) extra-space. If all these efforts fail, then choosing one point from each of the 9 sub-cells of χ can also be performed by a linear scan in the portion of the array P χ. Thus, the overall time complexity remains O(n 8 log n) in the worst case. 8

.. Further improving the approximation factor to 3 As in the earlier sections, here too we need to partition the plane into cells. We split the plane into horizontal strips of height 3. Each odd numbered strip is divided into equal sized cells of width 6. The horizontal width of the last cell may be less than 6, depending on the horizontal width of the region. Each even numbered strip is divided into cells such that the first cell is of width 3, and the other cells are of width 6, excepting the last cell as mentioned for odd numbered strips. 6 3 A B C A B C 1 3 4 5 6 B C A B C A 7 8 9 10 11 1 A B C A B C 13 14 15 16 17 18 B C A B C A 19 0 1 3 4 A B C A B C 5 6 7 8 9 30 B C A B C A 31 3 33 34 35 36 Figure 4: Coloring the cells for 3-factor approximation algorithm In Figure 4, we give a coloring of the cells using 3 colors. Observe that such a coloring has the property that no point can pierce unit disks centered in two or more cells of the same color. The maximum number of points required to pierce all the unit disks centered in a cell χ of size 3 6 is 18 as we can split χ into 18 sub-cells each of size 1 1. As described in previous subsection, we can show that to compute the minimum number of points from P to pierce all the unit disks centered in χ needs at most O(n 17 log n) time and it can be implemented in an in-place manner using O(1) extra-space. Thus, we have the following result: Theorem 3 A 3-approximation in-place algorithm for the minimum discrete piercing set problem for unit disk exists with time complexity O(n 17 log n). Improving the time complexity Here, we split the plane into horizontal strips of width such that no point in P lies on the boundary of a strip. Next, we split each strip of width into cells of size 4 (similar to Figure 4). Here too, we can color all the cells using 3 colors such that no point can pierce unit disks centered in two or more cells of same color. Consider a cell χ of size 4 in the Euclidean plane. Let P χ be the set of points in P lying inside χ. We now give an upper bound on the minimum number of points in P required for piercing the unit disks centered at the points of P χ. Note that 9

the set of points Q χ that pierce the unit disks centered at P χ lie inside a rectangle R of size 6 4 whose each of the four sides is 1 unit away from the corresponding boundary of χ, and if O P χ (resp. O Q χ ) be the minimum cardinality subset of points in P χ (resp. Q χ ) required to pierce the unit disks centered at P χ, then O O. Consider the graph G = (V, E), where vertices of V correspond to the points in P χ and E = {(v i, v j ) v i, v j V & disks of radius 1 centered at the points corresponding to v i and v j intersect}. Therefore, finding O, the minimum cardinality subset of points in P χ for piercing the unit disks centered at the points in P χ is equivalent to finding minimum dominating set γ(g) of the graph G. Minimum dominating set and maximum independent set 1 of a graph G are closely related as stated in the following lemma. Lemma [] For an arbitrary graph G, γ(g) I(G), where γ(g) and I(G) are the minimum dominating set and maximum independent set respectively. We use Γ and I to denote the set of disks corresponding to the vertices in γ(g) and I(G) respectively. Let R be the rectangular region of size 5 3 whose each of the four sides is 1 unit away from the corresponding boundary of χ. If a set of disks H of radius 1 can be placed inside a rectangle R where no two of these disks are mutually overlapping, but may touch each other, then we state that the set of disks H can be packed inside the rectangle R. By an optimal packing, we mean a packing of maximum size. Let Ψ be the set of disks of radius 1 of maximum cardinality (not necessarily centered at the points in P χ ) that can be packed in the region R. We now have the following result. Lemma 3 I Ψ. Proof: Note that if a disk lies completely inside R then its center lies inside χ or on the boundary of χ. For contradiction, let I > Ψ. Since the disks in I are non-intersecting, all the members in I can be packed in R. Thus, we have a contradiction since Ψ is the maximum number of disks of radius 1 that can be packed in R. Lemma and 3 along with the above discussions imply that O O = γ(g) I(G) Ψ. In [7], it is proved that the size of the optimal packing of a 10 10 square with unit disks is 5. They also provided a pictorial illustration of the corresponding packing (see Figure 5). It shows that the size of the optimal packing of a 10 6 rectangle is 15. The reason is that if we could pack the 10 6 rectangle with more than 15 unit radius disks, then we could improve the size of the optimal packing of the 10 10 square. This contradicts the claim stated in [7]. Thus, the number of non-overlapping disks of radius 1 that can be put in a rectangle of size 5 3 can be at most 15 (see Figure 5). Therefore, we have the following result. 1 Independent set of a graph G = (V, E) is a set of vertices Î ( V ) such that no two vertices in Î are adjacent to each other. Maximum independent set I(G) of a graph G is an independent set of maximum size. 10

Figure 5: Optimal packing in a 10 10 square without any overlapping pair Lemma 4 The number of points needed to pierce the unit disks centered at a cell χ of size 4 is at most 15. Lemma 4 leads to the following result: Theorem 4 A 3-approximation in-place algorithm for the minimum discrete piercing set problem for unit disk exists with time complexity O(n 15 log n). Remark Note that if we use cells of size for the 4-approximation algorithm, then the same algorithm works as in Section..1, and the time complexity remains unchanged (see Theorem ). 3 Polynomial time approximation scheme Given a point set P in R and a fixed integer k 1, we design polynomial time approximation scheme (PTAS) for our discrete piercing set problem by using two nested applications of shifting strategy, proposed by Hochbaum and Mass [3]. We first split the plane into horizontal strips of width and then split the plane into vertical strips of width. These will be referred to as elementary horizontal strips and elementary vertical strips, respectively. In the first level, we apply shifting strategy in horizontal direction by executing k iterations as follows. In the i-th iteration of this level, decompose the entire region into disjoint horizontal slabs such that the first slab is of width i and all other slabs are of width k. We then consider only those slabs H having at least one point, and compute the solution by applying the shifting strategy in the vertical direction by executing k iterations at the second level. Its j-th iteration splits the slab H into rectangular cells such that the first cell is of size j h and all other cells are of size k h, where h is the width of the slab H; h = i for the first slab and h = k for all other slabs. We use elementary horizontal strips to split the region into strips at the first level, and then the elementary vertical strips to get the cells at the second level. We use the notation (i, j)-th iteration to denote the i-th iteration at the first level and j-th iteration at the second level. We now explain the method of computing the optimum solution in each cell of size k k. For a smaller cell also the same method works by conceptually extending it to a size k k. We 11

partition a cell of size k k into ( k ) sub-cells each of size 1 1. Since any point inside a sub-cell ρ of size 1 1 can pierce all unit disk centered in that sub-cell, we can say that maximum number of disk required to pierce all the unit disks centered inside the cell of size k k is ( k ). Therefore, we have to check at most O(n ( k ) χ ) combinations of the points for getting the optimum solution for piercing all unit disks centered in a cell χ of size k k, where n χ is the number of points in P whose corresponding disk has a portion in the cell χ (see Figure 3(c)). Since the points in P centered in a cell is disjoint from that of the other cells, and a point in P can participate in computing the optimum solution of at most 9 cells, we have the following result: Lemma 5 The total time required for the (i, j)-th iteration of the algorithm is O(n ( k ) ). In the (i, j)-th iteration, the feasible solution is the union of the optimum solutions of all the cells constructed in that iteration. Finally, the algorithm returns the minimum among the k feasible solutions corresponding to k iterations. Theorem 5 Given a set P of n points in R and an integer k 1, the proposed algorithm delivers a discrete piercing set of the disks centered at all the points of P in O(k n ( k ) ) time, whose size is at most (1 + 1 k ) OP T, where OP T is the size of the optimum solution. Proof: We use the same technique of [3] to analyze the approximation factor of our algorithm. Let OP T be the optimum solution, OP T ij OP T that intersect the boundary lines of all the cells considered in the (i, j)-th iteration. If S ij is a feasible solution obtained by our algorithm in the (i, j)-th iteration, then S ij OP T + OP T ij. Summing over all (i, j), we have k i=1 j=1 k S ij k OP T + k i=1 j=1 k OP T ij. Since no disk of unit radius is intersected by two elementary horizontal strips (resp. by two elementary vertical strips), and each horizontal (resp. vertical) boundary appears at most k times throughout the algorithm, we have Thus, k i=1 j=1 k i=1 j=1 k OP T ij kop T + kop T. k S ij k OP T + kop T = (k + k)op T. Denoting by S av and S min the average and minimum values of S ij considering all the iterations, we have S min S av (1 + 1 k ) OP T. The time complexity result follows from Lemma 5, and the fact that we need to execute k number of iterations. The proposed algorithm can be implemented in an in-place manner using an array of size ( k ) for generating the different combinations of indices of the points inside a cell. It also needs three scalar locations I, J, S, where S stores the minimum solution obtained so far, and (I, J) stores the iteration number when the minimum solution is obtained. 1

3.1 Improving the time complexity We can improve the time complexity using a divide and conquer strategy as stated below using the following result. Lemma 6 Let χ be a cell of size k k, and L be a vertical line that properly intersects χ. The number of points required to pierce all the unit disks which intersect L and whose center is to the left (resp. right) of L is at most 5k. Proof: Consider a vertical strip of width inside R whose right (resp. left) boundary is the line L. Split it into squares of size 3 3. All unit disks centered in such a square can be pierced by any point of P inside that square. The result follows from the fact that the total number of squares in each of these two strips is 3 3 k 5k as k 1. Let Q be the set of points of P inside a cell χ of size k k. Consider a vertical line V and a horizontal line H that split R into four sub-cells each of size k k. Let Q V H be the points in Q whose corresponding unit disks intersect the V and/or H, and Q la, Q lb, Q ra, Q rb be the set of points of Q in the four quadrants whose corresponding unit disks do not intersect V and H. Note that (i) the size of optimum discrete piercing set for Q V H is at most 0k (see Lemma 6), and any subset of Q V H may appear in the optimum solution for R, (ii) Q i Q j =, i, j {la, lb, ra, rb}, and (iii) any unit disk centered in the optimum solution of any one of the four quadrants do not intersect V and H. Thus, we can adopt the following divide and conquer strategy to compute the optimum solution inside χ. Consider all possible subsets Q Q V H of size at most 0k. For each of these choices, we do the following in each quadrant i {la, lb, ra, rb}: delete all the points in Q i whose corresponding unit disks are already pierced by any of the points of Q ; let ˆQ i Q i be the remaining set of points. Now compute the optimum solution Q i Q i for piercing the unit disks centered in ˆQ i recursively using the same procedure. Next, check whether Q Q la Q lb Q ra Q rb pierce all the unit disks centered at Q. Thus, the number of combinations of points to be chosen for testing for an optimum solution follows the recursion relation T (n, k) = 4 T (n, k ) n0k = n O(k). This leads to the following result: Theorem 6 Given a set P of n points in R and an integer k 1, the proposed algorithm delivers a discrete piercing set of the disks centered at all the points of P in n O(k) time, whose size is at most (1 + 1 k ) OP T, where OP T is the size of the optimum solution. It needs to be mentioned that we could not suggest a scheme of implementing this recursive algorithm in an in-place manner using extra-space whose size is a sub-linear function of the input size n. 4 Conclusion We propose constant factor approximation algorithms for a variant of the discrete piercing set problem for unit disks, where the points chosen for piercing the disks are from the set of center 13

points of the disks given for piercing. The simplest algorithm produces 1-approximation result in O(n log n) time. We then improve the approximation factor to 4. Finally, we propose a 3- approximation algorithm, which is an improvement of the current best known result by a factor of 5 3 [6]. The method of designing approximation algorithms used in this paper may be useful for some other problems. All these algorithms can be made in-place with O(1) extra-space without any degradation in their asymptotic running time. Our algorithm can also be used to solve the h-piercing problem for unit disks as defined in [6]. Following the same method as in [6], it can be shown that the result obtained by our method is no worse than 3( h 1)-factor of the optimum solution for the h-piercing problem. Thus, our result for the h-piercing problem is an improvement by a factor 5 3 over the existing best known result [6]. The algorithms proposed in [11, 7, 1] can be tailored to get a PTAS for our MDS problem in n O( 1 ɛ ) time. Here, we propose a PTAS with time complexity n O( 1 ɛ ). Acknowledgment We deeply acknowledge both the reviewers for their valuable comments and suggestions which drastically improve the quality of the paper. References [1] P. K. Agarwal, M. Sharir, and E. Welzl. The discrete -center problem. In Proceedings of the thirteenth annual symposium on Computational geometry, SCG 97, pages 147 155, New York, NY, USA, 1997. ACM. [] R. B. Allam and R. Laskar. On domination and independent domination numbers of a graph. Discrete Mathematics, 3():73 76, 1978. [3] C. Ambühl, T. Erlebach, M. Mihalák, and M. Nunkesser. Constant-factor approximation for minimum-weight (connected) dominating sets in unit disk graphs. In APPROX-RANDOM, pages 3 14, 006. [4] G. Călinescu, I. I. Mandoiu, P. J. Wan, and A. Zelikovsky. Selecting forwarding neighbors in wireless ad hoc networks. Mobile Network Applications, 9():101 111, 004. [5] P. Carmi, M. J. Katz, and N. Lev-Tov. Covering points by unit disks of fixed location. In ISAAC, pages 644 655, 007. [6] P. Carmi, M. J. Katz, and N. Lev-Tov. Polynomial-time approximation schemes for piercing and covering with applications in wireless networks. Comput. Geom., 39(3):09 18, 008. [7] L. G. Casado, I. Garca, P. G. Szabo,, and T. Csendes. Packing equal circles in a square ii new results for up to 100 circles using the tamsass-pecs algorithm. Applied Optimization, 59:07 4, 001. 14

[8] M. R. Cerioli, L. Faria, T. O. Ferreira, and F. Protti. On minimum clique partition and maximum independent set on unit disk graphs and penny graphs: complexity and approximation. Electronic Notes in Discrete Mathematics, 18:73 79, 004. [9] T. M. Chan. Optimal output-sensitive convex hull algorithms in two and three dimensions. Discrete & Computational Geometry, 16(4):361 368, 1996. [10] T. M. Chan. Polynomial-time approximation schemes for packing and piercing fat objects. J. Algorithms, 46():178 189, 003. [11] T. M. Chan and S. Har-Peled. Approximation algorithms for maximum independent set of pseudo-disks. Discrete & Computational Geometry, 48():373 39, 01. [1] T. M. Chan and A. A. Mahmood. Approximating the piercing number for unit-height rectangles. In CCCG, pages 15 18, 005. [13] B. N. Clark, C. J. Colbourn, and D. S. Johnson. Unit disk graphs. Discrete Mathematics, 86(1-3):165 177, 1990. [14] F. Claude, G. K. Das, R. Dorrigiv, S. Durocher, R. Fraser, A. López-Ortiz, B. G. Nickerson, and A. Salinger. An improved line-separable algorithm for discrete unit disk cover. Discrete Math., Alg. and Appl., (1):77 88, 010. [15] D. Dai and C. Yu. A 5+ɛ-approximation algorithm for minimum weighted dominating set in unit disk graph. Theor. Comput. Sci., 410(8-10):756 765, 009. [16] G. K. Das, R. Fraser, A. López-Ortiz, and B. G. Nickerson. On the discrete unit disk cover problem. In WALCOM, pages 146 157, 011. [17] M. de Berg, O. Cheong, M. van Kreveld, and M. H. Overmars. Computational Geometry: Algorithms and Applications (3. ed.). Springer-Verlag, 008. [18] A. Dumitrescu and J. Pach. Minimum clique partition in unit disk graphs. Graphs and Combinatorics, 7(3):399 411, 011. [19] T. Feder and D. H. Greene. Optimal algorithms for approximate clustering. In STOC, pages 434 444, 1988. [0] M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, 1979. [1] M. Gibson and I. A. Pirwani. Algorithms for dominating set in disk graphs: breaking the logn barrier. In ESA (1), pages 43 54, 010. [] T. F. Gonzalez. Covering a set of points in multidimensional space. Inf. Process. Lett., 40(4):181 188, 1991. [3] D. S. Hochbaum and W. Maass. Approximation schemes for covering and packing problems in image processing and vlsi. J. ACM, 3(1):130 136, 1985. 15

[4] Y. Huang, X. Gao, Z. Zhang, and W. Wu. A better constant-factor approximation for weighted dominating set in unit disk graph. Journal of Combinatorial Optimization, 18:179 194, 008. [5] D. S. Johnson. The np-completeness column: an ongoing guide. J. Algorithms, 3():18 195, 198. [6] M. V. Marathe, H. Breu, H. B. H. III, S. S. Ravi, and D. J. Rosenkrantz. Simple heuristics for unit disk graphs. Networks, 5():59 68, 1995. [7] N. H. Mustafa and S. Ray. Improved results on geometric hitting set problems. Discrete & Computational Geometry, 44(4):883 895, 010. [8] S. Narayanappa and P. Vojtechovský. An improved approximation factor for the unit disk covering problem. In CCCG, pages 15 18, 006. [9] T. Nieberg and J. Hurink. A ptas for the minimum dominating set problem in unit disk graphs. In WAOA, pages 96 306, 005. [30] I. A. Pirwani and M. R. Salavatipour. A weakly robust ptas for minimum clique partition in unit disk graphs. In SWAT, pages 188 199, 010. [31] J. Vahrenhold. On the space efficiency of the ultimate planar convex hull algorithm. In CCCG, pages 131 136, 01. [3] F. Zou, Y. Wang, X. Xu, X. Li, H. Du, P. J. Wan, and W. Wu. New approximations for minimum-weighted dominating sets and minimum-weighted connected dominating sets on unit disk graphs. Theor. Comput. Sci., 41(3):198 08, 011. 16