Approximating Minimum Dominating Set on String Graphs

09/26/2018 ∙ by Dibyayan Chakraborty, et al. ∙ 0

In this paper, we give approximation algorithms for the Minimum Dominating Set (MDS) problem on string graphs and its subclasses. A path is a simple curve made up of alternating horizontal and vertical line segments. A k-bend path is a path made up of at most k + 1 line segments. An L-path is a 1-bend path having the shape `L'. A vertically-stabbed-L graph is an intersection graph of L-paths intersecting a common vertical line. We give 8-approximation algorithm for MDS problem on vertically-stabbed-L graphs whose APX-hardness was shown by Bandyapadhyay et al. (MFCS, 2018). To prove the above result, we needed to study the Stabbing segments with rays (SSR) problem introduced by Katz et al. (Comput. Geom. 2005). In the SSR problem, the input is a set of (disjoint) leftward-directed rays, and a set of (disjoint) vertical segments. The objective is to select a minimum number of rays that intersect all vertical segments. We give a O((n+m) (n+m))-time 2-approximation algorithm for the SSR problem where n and m are the number of rays and segments in the input. A unit k-bend path is a k-bend path whose segments are of unit length. A graph is a unit B_k-VPG graph if it is an intersection graph of unit k-bend paths. Any string graph is a unit-B_k-VPG graph for some finite k. Using our result on SSR-problem, we give a polynomial time O(k^4)-approximation algorithm for MDS problem on unit B_k-VPG graphs for k≥ 0.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

A graph has vertex set and edge set . A dominating set of a graph is a subset of vertices such that each vertex in is adjacent to some vertex in . The Minimum Dominating Set (MDS) problem is to find a minimum cardinality dominating set of a graph . A string representation of a graph is a collection of simple curves on the plane such that each curve in the collection represents a vertex of the graph and two curves intersect if and only if the vertices they represent are adjacent in the graph. The graphs that have a string representation are called string graphs.

Many important graph families like planar graphs, unit disk graphs and chordal graphs are subclasses of string graphs [1, 11]. Indeed, Pach and Toth [17] proved that the number of string graphs on labelled vertices is at least , indicating that many graphs are string graphs. This motivates the search for efficient algorithms for solving optimisation problems on string graphs. Fox and Pach [10] gave for every , a polynomial time algorithm for computing the Maximum Independent set of -string graphs (intersection graphs of curves on the plane where two curves intersecting at most times) with approximation ratio at most . While Pawlik et al. [18] proved that triangle-free segment graphs (intersection graphs of line segments on the plane) can have arbitrarily high Chromatic Number, Bonnet et al. [4] gave a subexponential algorithm to color string graphs with three colors. In this paper, we study the MDS problem on string graphs and its subclasses.

Since split graphs (graphs whose vertex set can be partitioned into a clique and an independent set) are known to be string graphs, for every , it is not possible to approximate the MDS problem on string graphs with vertices to within unless  [7]. Hence, researchers have focussed on developing approximation algorithms for the MDS problem on special classes of string graphs. The concepts of bend number and -VPG graphs (introduced by Asinowski et al. [1]) become useful in gaining a better understanding of subclasses of string graphs. A path is a simple curve made up of alternating horizontal and vertical line segments. A -bend path is a path made up of at most line segments. A -VPG representation of a graph is a collection of -bend paths such that each path in the collection represents a vertex of the graph, and two such paths intersect if and only if the vertices they represent are adjacent in the graph. The graphs that have a -VPG representation are called -VPG graphs. A graph is said to be a VPG graph if it is a -VPG graph for some . Asinowski et al. [1] showed that the family of VPG graphs are equivalent to the family of string graphs.

Mehrabi [16] gave an -net based -approximation algorithm for the MDS problem on one-string -VPG graphs (graphs with -VPG representation where two curves intersect at most once). Bandyapadhyay et al. [2] proved APX-hardness for the MDS problem on a special class of -VPG graphs, namely vertically-stabbed-L graph (defined below) which was originally introduced by McGuinness [15]. An L-path is a -bend path having the shape ‘L’. A vertically-stabbed-L-representation of a graph is a collection of L-paths and a vertical line such that each path in the collection intersects the vertical line. Each path in the collection represents a vertex of the graph and two paths intersect if and only if the vertices they represent are adjacent in the graph. A graph is a vertically-stabbed-L graph if it has a vertically-stabbed-L-representation. Bandyapadhyay et al. [2] proved APX-hardness for the MDS problem on vertically-stabbed-L graphs by showing that all circle graphs (intersection graphs of chords of a circle) are vertically-stabbed-L graphs. Many researchers have studied the MDS problem on circle graphs [5, 8, 9]. Since all vertically-stabbed-L-graphs are also one-string -VPG graphs, there is a -approximation algorithm for the MDS problem on vertically-stabbed-L graphs (due to Mehrabi [16]). In this paper, we prove the following theorems.

Theorem 1.

Given a vertically-stabbed-L-representation of a graph with vertices, there is a polynomial time -approximation algorithm to solve the MDS problem on .

The time complexity of our algorithm for the MDS problem on vertically-stabbed-L

graph is essentially the time required to solve a linear program with

-coefficient matrix optimally. To prove the above theorem we needed to study the stabbing segment with rays (SSR) problem introduced by Katz et al. [13]. In the SSR problem, the inputs consist of a set of (disjoint) leftward-directed rays and a set of (disjoint) vertical segments. The objective is to select a minimum number of leftward-directed rays that intersect all vertical segments. Katz et al. [13] gave a dynamic programming based -time optimal algorithm to solve the SSR problem where and are the number of rays and segments in the input instance respectively. We prove the following theorem.

Theorem 2.

There is a -time -approximation algorithm for SSR problem where and are the number of rays and segments in the input instance respectively.

Using our approximation algorithm for the SSR problem, we give approximation algorithms for other subclasses of string graphs as well. In this paper, we introduce the class Unit--graph as follows. A unit -bend path is a -bend path whose segments are of unit length. A unit -VPG representation of a graph is a -VPG representation of where all paths in are unit -bend paths. Graphs having unit -VPG representations are called unit -VPG graphs. A graph is said to be a UVPG graph if it is a unit -VPG graph for some . Notice that, every -VPG graph has a unit -VPG representation for some finite . The family of UVPG graphs are equivalent to the family of VPG graphs and therefore equivalent to the family of string graphs. Using our approximation algorithm for the SSR problem, we prove the following theorem.

Theorem 3.

Given a unit -VPG representation of a graph with vertices, there is a polynomial time -approximation algorithm to solve the MDS problem on .

On the negative side, we shall show that solving MDS problem on Unit--VPG graph is NP-Hard. First, we give the approximation algorithm for the SSR problem and prove Theorem 2 in Section 2. In Section 3, we prove Theorem 1 and in Section 4, we give a proof sketch for Theorem 3. Finally we draw conclusion in Section 5.

2 Approximation for SSR-problem

Throughout this section, we let denote an SSR instance where is a given set of (disjoint) leftward-directed rays and is a given set of (disjoint) vertical segments. The objective is to select a minimum cardinality subset of that intersects all segments in . In this section, unless otherwise stated, whenever we say a “ray” we shall refer to a leftward-directed ray and whenever we say a “segment” we shall refer to a vertical segment. Without loss of generality, we can assume that all segments lie in the first quadrant of the plane, each segment intersects at least one ray and no two segments in has same -coordinate.

The algorithm: Our algorithm consists of four main steps. (a) If some segments in intersect precisely one ray , we put

in our heuristic solution

. (b) We delete all segments intersecting any ray in from . (c) We find a ray in whose -coordinate of the right endpoint is the smallest among all rays in and delete it from (when there are multiple such rays, choose anyone arbitrarily). We repeat steps (a)-(c) until all segments are deleted from the instance. We shall refer to the above algorithm as SSR-Algorithm. Notice that, the SSR-Algorithm takes time (using segment tree data structure [3]) where and are the number of rays and segments in the input.

We shall show that the cardinality of the set returned by the SSR-algorithm is at most twice the optimum cost of the relaxed linear programming of the input instance. This would give us the desired approximation factor of the SSR-algorithm. First, we introduce some definitions and some extra steps in the above algorithm for analysis purpose. With each ray we associate a token , which is a subset of (possibly empty). We add an Initialisation Step to our algorithm where we assign for each and assign as , as , as . For let be the set of rays, the set of segments and the heuristic solution constructed by the SSR-Algorithm, respectively at the end of iteration. A ray is critical if there is a segment such that is the only ray in that intersects . Notice that, in the iteration step (a) of the SSR-Algorithm collects all the rays that became critical at the end of iteration and adds them to the heuristic solution to create . Let be a subset of . A ray lies in between two rays if the -coordinate of lies in between those of . A ray lies just above (resp. just below) a ray if -coordinate of is greater (resp. smaller) than that of and no other ray lies in between in . Two rays are neighbours of each other if lies just above or below .

Definition 1.

For a ray and , the phrase “ passes the token to its neighbours” in the iteration shall refer to the following operations in the prescribed order:

  1. Let lies just above and lies just below in . For all ( and not necessarily distinct) do the following. If there is a segment in that intersects and then assign and if there is a segment in that intersects and then .

  2. .

Input: A set of leftward-directed rays and a set of vertical segments.
      Output: A subset of that intersects all segments in .

1: for each and Initialisation.
2:while   do
3:     . Critical ray collection (step (a) of SSR-Algoritm).
4:     . is at the iteration.
5:      the set obtained by deleting all segments from that intersect some rays in . Step (b) of SSR-Algorithm.
6:     Find a whose -coordinate of the right endpoint is the smallest.
7:      passes the token to its neighbours.
8:      The set obtained by deleting from . Token-passing step (modified step (c) of SSR-Algorithm).
9:     ;
10:end while
11:return
Algorithm 1 MOD-SSR-Algorithm
(a) (b) (c) (d)
Figure 1: (a) An input SSR instance, (b) iteration, (c) iteration and (d) iteration of the MOD-SSR-Algorithm with (a) as input. A dotted ray (or segment) indicates a deleted ray (or segment).

The modified algorithm is stated in Algorithm 1. For an illustration, consider the input instance shown in Figure 1(a). At the first iteration, -coordinate of the right endpoint of is the smallest. So, passes the token to its neighbours () and gets deleted. At the end of iteration, notice that has become critical. At the beginning of the iteration Algorithm 1 put in the heuristic solution. Then all segment intersecting is deleted and itself is also deleted. Also in the second iteration, passes the token to its neighbour () and gets deleted. Finally in the third iteration is put in the heuristic solution.

It is easy to see that, the rays returned by Algorithm 1 indeed intersect all segments of the input SSR instance. Moreover for each , the sets constructed by Algorithm 1 is same as the sets constructed by SSR-algorithm. From now on, whenever we refer to the sets we shall refer to the sets constructed by Algorithm 1. We shall now prove that the cardinality of the solution returned by Algorithm 1 is at most twice the optimum solution size of the input SSR instance. Below we describe some observations.

Observation A.

For any ray and some integer , if there is a segment that intersects in the input instance, then also intersects some ray such that .

Proof.

Fix an arbitrary segment that intersects in the input instance. Let be the set of all rays that intersects in the input instance and be the set of rays that passed the token to its neighbours at some iteration with . Formally . If , then and we are done. Otherwise, . Let be a sorted order of the rays in such that for , passed the token to the neighbours before . Due to step of MOD-SSR-algorithm, for , the -coordinate of the ray is less than that of . Hence is an increasing sequence based on the -coordinate of their right endpoint. This implies that whenever a ray was deleted it was shortest among the rays that intersect and belonged to the set . Therefore, whenever a ray passed the token to its neighbours, it had a neighbor which intersects . This fact combined with the token passing rule in Definition says that intersects a ray such that . Applying the above arguments for all rays in , we have the proof. ∎

For any integer and a ray , let denote the segments in that intersect and let be the rays in that intersect at least one segment in .

Observation B.

For any ray and some integer , let be the bottom-most (resp. top-most) ray in . If (i) is the only ray in whose token contains and (ii) passes the token to its neighbours in the iteration, then (a) there is exactly one ray whose token contains ; and is the bottom-most (resp. top-most) ray in .

Proof.

Since is the bottom-most (resp. top-most) ray in and , then must be bottom-most (resp. top-most) ray in . There is exactly one neighbour of in such that there is a segment in that intersects . Therefore, when passes the token to its neighbours, is the only ray whose token shall contain . Since does not belong to , does not belong to . Hence, must be the bottom-most (resp. top-most) ray in . This completes the proof of the claim. ∎

Lemma 1.

Let be a ray. After the termination of Algorithm 1, there are at most two tokens containing .

Proof.

If never passed the token to its neighbours, then the only token that contains is and therefore the statement is true. Now let us assume that, at iteration , passed the token to its neighbours and was deleted from . Let be the minimum integer with such that at the end of iteration, there is a ray which is critical and . If does not exist then we simply assume to be the number of iterations performed by MOD-SSR-Algorithm. We shall prove the following claims.

Claim 1. For each , the only ray in whose token contains is itself.

The proof of the above claim follows directly from the initialisation step and Token-passing step of the Algorithm 1.

Claim 2. For each with , (a) there at most two rays such that ; (b) if both exists then they are neighbours and lies in between in ; (c) if there is exactly one ray such that then must be the top-most or bottom-most ray in .

We prove the claim by induction on the number of iterations. Consider the iteration, where passed the token to its neighbours and got deleted from to create . Clearly, if was not the top-most or bottom-most ray of , then at the end of iteration there are at most two rays such that are neighbours, and lies in between in . Hence, the claim remains true in this case. Suppose was the top-most (resp. bottom-most) ray of . Since , is the top-most (resp. bottom-most) ray of . By Observation B, at the end of iteration there is exactly one ray such that and must be the top-most (resp. bottom-most) ray in . Hence, the claim remains true in this case. We assume the claim to be true for all iterations. Let passed the token to its neighbours in the iteration. If then the claim remains true. When , we have the following cases.

  1. Let be the only ray in such that . Then by induction hypotheis, was the top-most (or bottom-most) ray in and hence in . By Observation B, at the end of iteration there is exactly one ray such that and must be the top-most (resp. bottom-most) ray in .

  2. Let be two rays such that . Without loss of generality, we further assume that , lies just above . If there exists a neighbour of (say ) which is different from , then due to the Token-passing step of iteration, passes the token to its neighbours (i.e and ) and gets deleted from to create . Letting and , we have the proof of the claim. If does not exist, then shall pass the token only to and becomes the top-most ray in (and therefore in ).

This completes the proof of the claim.

Claim 3. For each , there is at most one ray such that and if exists then must be the top-most or bottom-most ray in .

We shall prove the claim by induction on the number of iteration. First consider the iteration. Due to Claim 2, we know that there was at most two rays such that . Recall from the definition of that, there was a ray which was critical and . We have the following cases.

  1. If there were only one ray whose token contained , then and must be same. Since is put in heuristic solution, will never pass the token to its neighbours at any subsequent iteration. Therefore only will contain after the termination of Algorithm 1.

  2. Let both exists. By Claim 2 they must be neighbours and lies in between in . Without loss of generality, assume that lies just above and . If both , then there is nothing to prove. Otherwise, is the only ray in whose token contains . By Observation A, any segment of that intersects in the input instance, intersects . Now consider the set and the set and notice that must be the bottom-most ray in . If did not pass the token to its neighbours in the iteration, then becomes the bottom-most ray in and the statement of the claim remains true. If passed the token to its neighbours in the iteration, then we are done by Observation B.

Now assume that the statement of the claim remains true for iteration. If there is no ray in whose token contained then we directly have the proof of the claim. Otherwise by induction hypothesis, there is a unique ray whose token contains and if exists then is the bottom-most or top-most ray in . Again if did not pass the token to its neighbours in the iteration, then the statement of the claim remains true. If passed the token to its neighbours in the iteration, then must be the bottom-most or top-most ray in and by Observation B we have the proof of the claim.

Now combining Claim 1, Claim 2 and Claim 3, we have the proof of the lemma. ∎

For a segment , we let denote the set of rays in that intersect . Let be a ray, be the minimum integer such that . In other words, was put in the heuristic solution in the iteration. This means there must exist a segment such that is the only ray in that intersects . Moreover, no ray in intersects (otherwise would not have been present in by step-5 of MOD-SSR-Algorithm). Hence, all rays in must have passed the token to its neighbours. Therefore, for all we have . So, for each ray , there always exists a segment such that for all we have . We shall denote such a segment as a critical segment with respect to and denote it as (in case of multiplicity choose any one as ). Now we have the following lemma.

Observation C.

For a ray let be a critical segment with respect to . Then .

Proof.

Consider any arbitrary but fixed deleted ray which was deleted at some iteration. By Observation A, there exists a ray such that intersects and . Now applying the above argument for all rays in , we have the proof. ∎

Lemma 2.

Let be the set returned by Algorithm 1 with as input and be an optimum solution of . Then .

Proof.

Let be the set of rays and be the set of segments with . To prove the lemma we consider the following integer linear programming (ILP) formulation of and the corresponding relaxed linear programming (LP) formulation where for each ray , let denote the variable corresponding to .

(1)

We shall show that the set returned by Algorithm 1 gives an integral solution for whose cost (i.e. cardinality of ) is at most twice the optimum cost of . This will immediately imply the statement of the lemma. Let be an optimal solution of . Also define if , if and . Now we claim that is a feasible solution of . This is true because Algorithm 1 terminates only when no segments are left in . Hence, for each there is a ray that intersects and therefore each constraint of contains a variable such that in . Hence is feasible. Now we fix any arbitrary and be a critical segment with respect to . Then due to Observation C, we know that for all we have and . Therefore, for the constraint corresponding to in , we have that

Due to Lemma 1, we know that for each ray there are at most two rays such that . Therefore,

This completes the proof of the lemma. ∎

Proof of Theorem 2 follows from Lemma 2 which essentially implies that SSR-algorithm is a 2-approximation algorithm for SSR problem. We shall use the following corollary in the proof of Theorem 1 and 3 which follows from Lemma 2.

Corollary 1.

Let be a set of leftward-directed rays and be a set of vertical segments. The cost of an optimal solution for the ILP of is at most times the cost of an optimal solution for the relaxed LP of .

3 Approxmation algorithm for MDS on vertically-stabbed-L graphs

In this section, we shall give a polynomial time -approximation algorithm to solve the MDS problem on vertically-stabbed-L graphs. In the rest of the paper, (resp. ) denotes the cost of the optimum solution of an ILP (resp. LP ).

Overview of the algorithm: First, we solve the relaxed LP formulation of the ILP of the MDS problem on the input vertically-stabbed-L graph and create two subproblems. We shall show that one of those two subproblems is equivalent to the SSR problem and the other is equivalent to a Stabbing Rays with Segments problem (defined below) which was introduced by Katz et al. [13]. We solve these two subproblems individually and show that the union of the solutions gives a solution for the MDS problem on which is at most times the optimal solution.

In the Stabbing Rays with Segments (SRS) problem, the input is a set of (disjoint) leftward-directed rays and a set of (disjoint) vertical segments. The objective is to select a minimum cardinality subset of that intersects all rays in .

Result 1 ([13]).

There is a -approximation algorithm for the SRS problem for rays and segments that runs in time , using space.

We shall show that the cost of the optimum solution of the ILP of SRS is at most twice the cost of the optimum solution of the corresponding relaxed LP. Below we restate the algorithm of Katz et al. [13] in a way that would assist our analysis.

2-approximation algorithm for SRS problem: With each segment , we associate a token which is a subset of . Initialise for each . Let be the ray whose right-endpoint, , has the smallest -coordinate. (We can assume without loss of generality that - and -coordinates of the endpoints of the rays are all distinct.) Assuming that there is a feasible solution to the SRS instance, there must exist a segment of that intersects . Let be the set of segments that intersect . Let (resp. ) be a segment in whose top endpoint is top-most (resp., bottom endpoint is bottom-most); it may be that . We add both and to our heuristic solution set . Also we set . Then we remove from all of the rays that intersect or , delete all segments in and then repeat the above steps untill . We shall refer the algorithm stated above as KMN-algorithm.

First, we state the following observations required to prove Lemma 3.

Observation D.

For each ray , there is a segment that intersects .

Observation E.

For each segment , there are at most two tokens such that both of them contains .

Lemma 3.

Let (resp. ) be a set of (disjoint) leftward-directed rays (resp. vertical segments), be the ILP of the SRS instance with as input and be the corresponding relaxed LP. Then .

Proof.

Consider the following ILP of the SRS instance with as input. For a ray , let denote the set of segments in that intersect .

(2)

Let be an optimal solution of (relaxed LP of ) where denotes the value of the variable in corresponding to . Let be the solution returned by the KMN algorithm with as input. Now define for each , if , if and let . By Observation D, is a feasible solution of . For each , there is a ray such that . Therefore, for the constraint corresponding to in , we have the following

(3)

Hence,

(4)

This completes the proof. ∎

Now we are ready to describe our approximation algorithm for MDS problem on vertically-stabbed-L graphs. Let be a vertically-stabbed-L-representation of a graph . Without loss of generality, we assume that

  1. the vertical line intersects all the L-paths in ,

  2. the -coordinate of the corner point of each L-path in is strictly less than , and

  3. whenever two distinct L-paths intersect in , they intersect at exactly one point.

(a) (b) (c) (d)
Figure 2: A vertically-stabbed-L graph. (a) The sets and corresponding to a vertex . (b) The gray L-paths belongs to and the black L-paths belongs to , (c) The subproblem equivalent to SRS-problem. (d) The subproblem equivalent to SSR-problem.

For a vertex , let denote the closed neghbourhood of in . For each vertex , let and let denote the set (See Figure 2(a)). Based on these we have the following ILP (say ) of the problem of finding a minimum dominating set of .

(5)

The first step of our algorithm is to solve the relaxed LP formulation, say of . Let be an optimal solution of . Now we define the following sets.

Based on these, we consider the following two integer programs and .

(6)
(7)

Let and be the relaxed LP of and respectively. Clearly, the solutions of and gives a solution for . Hence . For each , define and define . Notice that gives a solution to (and ). Therefore, . We have the following lemma.

Lemma 4.

and .

Proof.

Solving is equivalent to finding a minimum cardinality such that each vertex is adjacent to some vertex in . Recall that for each vertex and , intersects the horizontal segment of . Now consider the following sets. Let be the set of horizontal segments of the L-paths representing the vertices in and be the set of vertical segments of the L-paths representing the vertices in (See Figures 2(b) and 2(c) for an example). Since all horizontal segments in intersect the vertical line and the -coordinates of the vertical segments in is strictly less than , we can consider the horizontal segments in as rightward directed rays. Hence, solving is equivalent to solving the ILP (say ) of the problem of finding a minimum cardinality subset of (a set of vertical segments) that intersects all rays in (a set of rightward-directed rays). Hence solving is equivalent to solving an SRS instance with and as input. By Lemma 3, we have that

where is the relaxed LP of . This proves the first part.

For the second part, solving is equivalent to finding a minimum cardinality subset of such that each vertex is adjacent to some vertex in . Recall that, for each vertex and , intersects the vertical segment of . Now consider the following sets. Let be the set of horizontal segments of the L-paths representing the vertices in and be the set of vertical segments of the L-paths representing the vertices in (See Figures 2(b) and 2(d) for an example). Since all horizontal segments in intersect the vertical line and the -coordinates of the vertical segments in is strictly less than , we can consider the segments in as rightward-directed rays. Hence, solving is equivalent to solving the ILP (say ) of the problem of finding a minimum cardinality subset of (a set of rightward-directed rays) that intersects all segments in (a set of vertical segments). Hence, solving is equivalent to solving an SSR instance with and as inputs. By Corollary 1, we have that

where is the relaxed LP of . This proves the second part. ∎

To complete the proof of Theorem 1, notice that Lemma 4 implies that solving (resp. ) is equivalent to solving SRS (resp. SSR) problem instance. Let be the union of the solutions returned by KMN-algorithm and SSR-algorithm, used to solve and respectively. Hence,

Since the LP consists of variables where , solving takes time [12] where is the total number of bits required to encode the -constraint matrix of . Solving both the SSR and SRS instances takes a total of time (Theorem 2 and Result 1) and therefore the total running time of the algorithm is .

4 Hardness and Approximation for MDS on Unit- VPG-graphs

(a) (b)
Figure 3: A unit L-representation (b) of (3,3)-grid (a).

First we prove the NP-hardness for MDS problem on unit--VPG graphs. The -grid is the undirected graph with and . A graph is a grid graph if is an induced subgraph of -grid for some positive integers . Given a grid graph , the Grid-Dominating-Set problem is to find a minimum cardinality dominating set of . We shall reduce the Grid-Dominating-Set problem to the MDS problem on unit--VPG graphs. We will be done by showing that for any positive integers the -grid has a unit--VPG representation. Let be a -grid and . For each consider the L-path such that top endpoint of vertical segment of is (See Figure 3). It is easy to verify that the set of L-paths is a unit--VPG representation of . Hence, we have the following theorem.

Theorem 4.

It is NP-Hard to solve the MDS problem on unit--VPG graphs.

In this section, we describe our approximation algorithm for MDS on Unit- VPG-graphs and prove Theorem 3. First we give an overview of the algorithm below.

Overview of the algorithm for MDS on Unit--VPG graphs: First, we solve the relaxed LP formulation of the ILP of MDS problem on the input Unit--VPG graph and create many subproblems each of which are equivalent to a Proper-Seg-Dom problem (defined below). We shall show that it is possible to get constant factor approximate solutions for each of these subproblems in polynomial time and take the union of all the solutions to get a set . We shall conclude by showing that is a -approximate solution for MDS problem on and can be computed in polynomial time.

In the Proper-Seg-Dom (Proper Orthogonal Segment Domination) problem the input is a set of vertical segments, a set of horizontal segments such that the sets of intervals obtained by projecting the segments in (resp. ) onto the -axis (resp. -axis) are proper (a set of intervals is proper if no two intervals in the set contain each other). The objective is to select a minimum cardinality subset of that intersects all segments in .

In Section 4.1 we shall give a constant factor approximation for the Proper-Seg-Dom problem and in Section 4.2 we shall describe the approximation algorithm for MDS on Unit- VPG-graphs and use our result on Proper-Seg-Dom to prove Theorem 3.

4.1 Approximation for PROPER-SEG-DOM problem

Let (resp. ) be a set of vertical (resp. horizontal) segments, (resp. ) be the projections of the segments in (resp. ) onto the -axis (resp. -axis) and both and are proper sets of intervals. The Proper-Seg-Dom problem is to find a minimum cardinality subset of that intersects all segments in . In this section, we shall give a polynomial time -approximation algorithm to solve the Proper-Seg-Dom problem where . Throughout this section, we let denote the Proper-Seg-Dom problem instance with and as input. In order to solve Proper-Seg-Dom, we consider the following problems.

Overview of the algorithm: First, we solve the relaxed LP formulation of the ILP of the input Proper-Seg-Dom problem and create two subproblems. We shall show that one of the subproblem is equivalent to a Subset Proper Interval Domination problem (defined below) and the other is equivalent to a Proper Orthogonal Segment Stabbing problem (defined below). We give constant factor approximate solution for each these two problems and show that the union of the solutions of these subproblems gives a solution for the input Proper-Seg-Dom problem instance which is at most times the optimal solution.

In the Subset Proper Interval Domination problem (SPID) the inputs are a proper set of intervals and a set . The SPID problem is to select a minimum cardinality subset of that intersects all intervals in . In the Proper Orthogonal Segment Stabbing problem (POSS) inputs are a set of horizontal segments a set of vertical segments such that the set of intervals obtained by projecting the segments in onto the -axis is a proper set of intervals. The POSS problem is to select a minimum cardinality subset of that intersects all vertical segments in . For a set of horizontal segments and a set of vertical segments , shall denote the POSS instance. Let be a proper set of intervals and be a subset of . Then shall denote the SPID instance.

In Section 4.1.1, we give approximation algorithms to solve SPID-problems and POSS-problems. In Section 4.1.2, we give the approximation algorithm for the problem.

4.1.1 Approximation algorithms for SPID and POSS problem

Lemma 5 and Lemma 6 shall compare the integral cost with the fractional cost of the SPID-problem and POSS-problem respectively. We shall use Corollary 2 and Corollary 3 in Section 4.1.2.

Lemma 5.

Let be a proper set of intervals and . The cost of an optimal solution for the relaxed LP of equals to the cost of an optimal solution for the ILP of .

Proof.

For an interval , let and denote the left and right endpoints. Let be the intervals in sorted in the ascending order of the right endpoints. Hence, and as no two intervals in contain each other, we have . For an interval , let denote the set of intervals in that intersect . Now consider the following ILP (say ) of .

(8)

Let be a coefficient matrix of such that the column of corresponds to the variable corresponding to . Each row of have the interval property (i.e the set of 1’s are consecutively in each row). To see this consider any three intervals such that and any interval such that intersects both and . Since and , must intersect . Therefore, is a totally unimodular matrix [19]. Thus any optimal solution of the relaxed LP of is integral and therefore an optimal solution for the ILP of . This completes the proof. ∎

For a proper set of intervals and , an optimal solution of can be computed in time [6]. We shall use the following corollary whose proof follows from Lemma 5.

Corollary 2.

Let (resp. ) be a set of horizontal (resp. vertical) segments, (resp. ) be the projections of the segments in (resp. ) onto the -axis (resp. -axis) and both and are proper sets of intervals. For