Abstract
A string graph is an intersection graph of simple curves on the plane. For \(k\ge 0\), \(B_k\)-VPG graphs are intersection graphs of simple rectilinear curves having at most k cusps (bends). It is well-known that any string graph is a \(B_k\)-VPG graph for some value of k. For \(k\ge 0\), unit \(B_k\)-VPG graphs are intersection graphs of simple rectilinear curves having at most k cusps (bends) and each segment of the curve being unit length. Any string graph is a unit-\(B_k\)-VPG graph for some value of k.
In this article, we show that the Minimum Dominating Set (MDS) problem for unit \(B_k\)-VPG graphs is NP-Hard for all \(k \ge 1\) and provide an \(O(k^4)\)-approximation algorithm for all \(k\ge 0\). Furthermore, we also provide an 8-approximation for the MDS problem for the vertically-stabbed L-graphs, intersection graphs of L-paths intersecting a common vertical line. The same problem is known to be APX-Hard (MFCS, 2018). As a by-product of our proof, we obtained a 2-approximation algorithm for the stabbing segment with rays (SSR) problem introduced and studied by Katz et al. (Comput. Geom. 2005).
Similar content being viewed by others
Keywords
1 Introduction
A string graph is a graph with simple curves on a plane as vertices, and two vertices are adjacent if they intersect. String graphs are important as it contains all intersection graphs of connected sets in \(\mathbb {R}^2\). Asinowski et al. [1] introduced the concept of \(B_k\)-VPG graphs to initiate a systematic study of string graphs and its subclasses. A path is a simple rectilinear curve and a k-bend path is a path having k cusps (bend). The \(B_k\)-VPG graphs are intersection graphs of k-bend paths. Any string graph has a \(B_k\)-VPG representation for some k [1]. A unit k-bend path is a k-bend path with each segments being of unit length. The unit \(B_k\)-VPG graphs are intersection graphs of unit k-bend paths. Any string graph has a unit \(B_{k'}\)-VPG representation for some \(k'\).
A dominating set of a graph \(G=(V,E)\) is a subset D of vertices V such that each vertex in \(V\setminus D\) is adjacent to some vertex in D. The Minimum Dominating Set (MDS) problem is to find a minimum cardinality dominating set of a graph G. It is not possible to approximate the MDS problem on string graphs with n vertices to within \((1-\alpha )\ln n\) unless \(NP\subseteq DTIME(n^{O(\log \log n)})\) [5]. Researchers have studied the MDS problem extensively on important graph classes like planar graphs, permutation graphs, cocomparability graphs all of which are subclasses of string graphs [1, 13, 14, 16] and hence unit \(B_k\)-VPG graphs for some k. The MDS problem admits constant factor approximation algorithms on intersection graphs of unit disks, rectangles with bounded aspect ratio, r-regular polygons etc. all of which are also subclasses of string graphs [10, 12]. Mehrabi [18] gave constant factor approximation algorithms for the MDS problem on restricted subclasses of \(B_1\)-VPG graphs. However, for \(k\ge 1\), it is not known if there is an f(k)-approximation algorithm for the MDS problem on \(B_k\)-VPG graphs. We show that the MDS problem remains NP-Hard on unit \(B_k\)-VPG graphs with \(k\ge 1\).
Theorem 1
It is NP-Hard to solve the MDS problem on unit \(B_k\)-VPG graphs with \(k\ge 1\).
We achieved a constant factor approximation algorithm for the MDS problem on unit \(B_k\)-VPG graphs for a given unit \(B_k\)-VPG representation and fixed k.
Theorem 2
Given a unit \(B_k\)-VPG representation of a graph G with n vertices, there is an \(O(k^2n^5)\)-time \(O(k^4)\)-approximation algorithm to solve the MDS problem on G.
The MDS problem remains difficult in restricted families of \(B_1\)-VPG graphs. An L-path is a 1-bend path having the shape ‘L’. A vertically-stabbed-L-representation of a graph is a collection of L-paths along with a vertical line intersecting all the paths such that 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. The class of vertically-stabbed-L graphs was introduced by McGuinness [17] and it contains many important graph classes like interval graphs, outerplanar graphs, permutation graphs, circle graphs as subclasses. Researchers have studied the MDS problem on these classes of graphs [4, 7,8,9, 11]. An \(\epsilon \)-net based algorithm of Mehrabi [18] gives an O(1)-approximation algorithm for the MDS problem on vertically-stabbed-L-graphs. The specific value of the constant (which is at least 32) was not reported by the author. In this paper, we prove the following.
Theorem 3
Given a vertically-stabbed-L-representation of a graph G with n vertices, there is an \(O(n^5)\)-time 8-approximation algorithm to solve the MDS problem on G.
To prove Theorems 2 and 3, we needed to prove a lemma about the stabbing segment with rays (SSR) problem introduced by Katz et al. [15]. In this problem, the inputs are a set of disjoint leftward-directed horizontal rays and a set of disjoint vertical segments. The objective is to select a minimum number of leftward-directed horizontal rays that intersect all vertical segments. Throughout this article, we let \(\mathcal {SSR}(R,V)\) denote an SSR instance where R is a given set of disjoint leftward-directed horizontal rays and V is a given set of disjoint vertical segments. We observe the following lemma.
Lemma 1
Let R be a set of leftward-directed horizontal rays and V be a set of vertical segments. The cost of an optimal solution for the Integer Linear Program (ILP) of \(\mathcal {SSR}(R, V)\) is at most twice the cost of an optimal solution for the relaxed linear program (LP) of \(\mathcal {SSR}(R, V)\).
As a consequence of the above Lemma 1, we have a subquadratic 2-approximation algorithm for the SSR problem.
Theorem 4
There is an \(O((n+m)\log (n+m))\)-time 2-approximation algorithm for SSR problem where n and m are the number of rays and segments, respectively.
We prove both Lemma 1 and Theorem 4 in Sect. 2 and prove Theorem 3 in Sect. 3. In Sect. 4, we prove Theorems 1 and 2.
2 Proof of Lemma 1 and Theorem 4
In this section, we represent a leftward-directed horizontal ray by simply a ray and a vertical segment by a segment in short. Let R be a set of disjoint rays and V be a set of disjoint vertical segments. We assume each segment intersects at least one ray in R and no two segments in V has the same x-coordinate.
To prove Lemma 1, first we present an iterative algorithm consisting of three main steps. The first step is to include all rays \(r\in R\) in heuristic solution S whenever some segments in V intersect precisely a single ray r in that iterative step. In the next step, delete all segments intersecting any ray in S from V. In the final step, find a ray in \(R\setminus S\) whose x-coordinate of the right endpoint is the smallest among all rays in \(R\setminus S\) and delete it from R (when there are multiple such rays, choose anyone arbitrarily). We repeat the above three steps until V is empty. The above algorithm takes \(O((|R|+|V|)\log (|R|+|V|))\) time (using segment trees [3]) and outputs a set S of rays such that all segments in V intersect at least one ray in S.
We describe the above algorithm formally in Algorithm 1. Below we introduce some notations used to describe the algorithm. We assign token \(T_r=\{r\}\) for each \(r\in R\) initially. For \(i\ge 1\), let \(R_i,V_i,S_i\) be the set of rays, the set of segments and the heuristic solution constructed by this Algorithm 1, respectively at the end of \(i^{th}\) iteration. A ray \(r\in R_i\) is critical if there is a segment \(v\in V_i\) such that r is the only ray in \(R_i\) that intersects v. We describe a discharging technique below.
Let D be a subset of R. A ray \(r\in D\) lies in between two rays \(r',r''\in D\) if the y-coordinate of r lies in between those of \(r',r''\). A ray \(r\in D\) lies just above (resp. just below) a ray \(r'\in D\) if y-coordinate of r is greater (resp. smaller) than that of \(r'\) and no other ray lies in between \(r,r'\) in D. Two rays \(r,r'\in D\) are neighbours of each other if r lies just above or below \(r'\).
Discharging Method: Let \(r\in R_{i-1}\setminus S_{i}\) be a ray whose x-coordinate of the right endpoint is the smallest. The phrase “r discharges the token to its neighbours” in the \(i^{th}\) iteration means the following operations in the given order.
-
(i)
Let \(r'\) lie just above r and \(r''\) lie just below r in \(R_{i-1}\setminus S_i\). For all \(x\in T_r\) (x and r not necessarily distinct) do the following. If there is a segment in \(V_{i}\) that intersects \(x,r'\) and r then assign \(T_{r'}=T_{r'}\cup \{x\}\) and if there is a segment in \(V_{i}\) that intersects \(x,r''\) and r then \(T_{r''}=T_{r''}\cup \{x\}\).
-
(ii)
Make \(T_r=\emptyset \) after performing the above step.
We have the following observation.
Observation A. For some \(v\in V_k, k\ge 1,\) if some ray \(r\in R_0\) intersects v, then either \(r\in R_k\) or there exists some ray \(r'\in R_k\) such that \(r\in T_{r'}\).
Proof
Assume \(r\notin R_k\). Let \({<}r_1,r_2,\ldots ,r_k{>}\) be a sorted order of the rays such that for \(i<j\), \(r_i\) discharged the token to the neighbours before \(r_j\). Due to step 5 of SSR-algorithm, \(X={<}r_1,r_2,\ldots ,r_k{>}\) is an increasing sequence based on the x-coordinate of their right endpoint. Observe that, whenever a ray \(r_i\in X\) discharged its token to its neighbours in the \(i^{th}\) iteration, all the vertical segments in \(V_i\) intersected by \(r_i\) also intersects one of the immediate neighbours of \(r_i\). Again as \(v\in V_k\), v is not intersected by critical ray within k iteration. Hence the result follows. \(\square \)
Lemma 2
For a ray r, there are at most two tokens containing r.
Proof
If r never discharged its token to its neighbours, then the statement is true. Let r discharged the token to its neighbours at iteration i. Note that, r discharged tokens to at most two of its neighbours. Since r gets deleted after the discharging step, the rays whose token contain r become neighbours of each other.
Let j be the minimum integer with \(i<j\) such that at the end of \((j-1)^{th}\) iteration, there is a ray \(p\in R_{j-1}\) which is critical and \(r\in T_p\). Note that iteration of SSR-Algorithm may stop before encountering such events. However, within iteration i to \(j-1\), there may exist some rays which discharged their tokens containing r due to step 5 of SSR-Algorithm.
To prove the lemma, we use induction to show that there are at most two tokens containing r in any iteration from i upto \(j-1\). Consider some k, \(i<k<j\), such that \(x_1\), \(x_2\in R_{k-1}\) be only two rays where \(r\in T_{x_1}\) and \(r\in T_{x_2}\). Notice that, \(x_1\) and \(x_2\) are neighbours of each other and without loss of generality assume \(x_1\) lies just above \(x_2\) in \(V_{k-1}\). Assume \(x_1\) discharged its token at \(k^{th}\) iteration. If there exists a neighbour of \(x_1\) (say \(x_3\)) which is different from \(x_2\), then due to the discharging step of \(k^{th}\) iteration, \(x_1\) passes the token to its neighbours (i.e \(x_2\) and \(x_3\)) and gets deleted from \(R_{k-1}\) to create \(R_{k}\). If \(x_3\) does not exist, then \(x_1\) shall pass the token only to \(x_2\). Therefore \(x_2\) becomes the top-most ray among those rays in \(R_k\) which intersect some segment intersecting r.
Moreover, if x was the only ray in \(R_{k-1}\) such that \(r\in T_x\), then x was the top-most (or bottom-most) ray among those rays in \(R_{k-1}\) which intersect some segment intersecting r. Therefore, at the end of \(k^{th}\) iteration there is exactly one ray \(x'\in R_{k}\) such that \(r\in T_{x'}\) and \(x'\) must be the top-most (resp. bottom-most) ray among those rays in \(R_k\) which intersect some segment intersecting r.
Hence we conclude that for each k with \(i\le k<j\), there is at most two rays \(r', r''\in R_{k}\) such that \(r\in T_{r'}\,\cap \,T_{r''}\) and they are neighbours. If there is exactly one ray \(r'''\in R_{k}\) such that \(r\in T_{r'''}\) then \(r'''\) must be the top-most or bottom-most ray among those rays in \(R_k\) which intersect some segment intersecting r.
In iteration j, ray p is critical and \(r\in T_p\) and p is put in heuristic solution. If p is the only ray whose token contained r, only \(T_p\) will contain r after the termination of Algorithm 1. Let \(r',p\in R_{j-1}\) be the rays whose token contained r. They must be neighbours. Without loss of generality assume that p lies just above \(r'\). If both \(r',p\) are selected in \(S_j\), then there is nothing to prove. Now consider the set A of segments in \(V_{j}\) that intersects r but not p. Note that, no ray above p intersects any segment in A. Hence \(r'\) becomes the only ray in next iterative step whose token contains r and \(r'\) turns to be bottom most ray among those rays in \(R_{j-1}\) which intersect some segment intersecting r. Now consider any iteration \(k>j\). By similar arguments as above, there would be at most one ray in \(R_k\) that contains the token r. Hence the lemma follows. \(\square \)
For a segment \(v\in V\), let \(N(v)\subseteq R\) be the set of rays that intersect v. Let \(r\in S\) be a ray, i be the minimum integer such that \(r\in S_i\). There must exist a segment \(\nu _r\in V_{i-1}\) such that r is the only ray in \(R_{i-1}\) that intersects \(\nu _r\) and all rays in \(N(\nu _r)\setminus \{r\}\) must have passed the token to its neighbours. So, for each ray \(r\in S\), there exists a segment \(\nu _r\) such that for all \(x\in N(\nu _r)\setminus \{r\}\) we have \(T_{x}=\emptyset \). We call \(\nu _r\) a critical segment with respect to r.
Observation B. For a ray \(r\in S\) let \(\nu _r\) be a critical segment with respect to r. Then \(N(\nu _r)\subseteq T_r\).
Proof
Consider any arbitrary but fixed deleted ray \(y\in N(\nu _r)\setminus \{r\}\) which was deleted at some \(j^{th}\) iteration. By Observation A, there exists a ray \(y'\in R_j\) such that \(y'\) intersects v and \(y\in T_{y'}\). Applying the above argument for all rays in \(N(\nu _r)\setminus \{r\}\), we have the proof. \(\square \)
Lemma 3
If S is the set returned by SSR-algorithm with rays R and segments V, then \(|S|\le 2|OPT|\), where OPT is an optimum solution of \(\mathcal {SSR}(R,V)\).
Proof
Let R be the set of rays and V be the set of segments with \(|R|=n, |V|=m\). Consider the ILP formulation Q of \(\mathcal {SSR}(R,V)\). For each ray \(r\in R\), let \(x_r\in \{0,1\}\) denote the variable corresponding to r. Objective is to minimize \(\sum \limits _{r\in R} x_r\) with constraints \(\sum \limits _{r\in N(v)} x_r \ge 1\) for all \(v\in V\). Let the corresponding relaxed LP formulation be \(Q_l\).
Let \(\mathbf Q _l=\{x_r\}_{r\in R}\) be an optimal solution of \(Q_l\). Consider SSR-algorithm. Here, define \(y_r=1\) if \(r\in S\), \(y_r=0\) if \(r\notin S\) and \(\mathbf Q '=\{y_r\}_{r\in R}\), obtained by the algorithm. This is a feasible solution of Q as SSR-algorithm terminates only when no segments are left in \(V_i\). Now we fix any arbitrary \(r\in S\) and \(\nu _r\) be a critical segment with respect to r. Then due to Observation B, we know that for all \(z\in N(\nu _r)\setminus \{r\}\) we have \(T_{z}=\emptyset \) and \(N(\nu _r)\subseteq T_r\). Therefore, for the constraint corresponding to \(\nu _r\) in \(Q_l\), we have that
Therefore, from above argument and from Lemma 2 we conclude that
Hence we have the proof. \(\square \)
The proofs of Lemma 1 and Theorem 4 follows directly from the proof of Lemma 3.
3 Proof of Theorem 3
In this section, we shall give an \(O(n^5)\)-time 8-approximation algorithm to solve the MDS problem on vertically-stabbed-L graphs. In the rest of the paper, OPT(Q) and \(OPT(Q_l)\) denote the cost of the optimum solution of an ILP Q and LP \(Q_l\) respectively.
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 G 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) introduced by Katz et al. [15]. We solve these two subproblems individually.
In the Stabbing Rays with Segments (SRS) problem, the input is a set R of disjoint leftward-directed horizontal rays and a set V of disjoint vertical segments. The objective is to select a minimum cardinality subset of V that intersects all rays in R. We shall propose a heuristic algorithm that gives a feasible solution, and its cost is at most twice the cost of the optimum solution of the ILP of SRS.
2-Approximation Algorithm for SRS Problem: With each segment \(v\in V\), we associate a token \(T_v\) which is a subset of V. Initialise \(T_v=\emptyset \) for each \(v\in V\). Let \(r_i\) be the ray whose right-endpoint, \((x_i , y_i)\), has the smallest x-coordinate. We assume without loss of generality that x- and y-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 V that intersects \(r_i\). Let \(N(r_i)\subseteq V\) be the set of segments that intersect \(r_i\). Let \(v_{top}\) (resp. \(v_{bot}\)) be a segment in \(N(r_i)\) whose top endpoint is top-most (resp., bottom endpoint is bottom-most); it may be that \(v_{top}=v_{bot}\). We add both \(v_{top}\) and \(v_{bot}\) to our heuristic solution set S. Also we set \(T_{v_{top}}=T_{v_{bot}}=N(r_i)\). We remove from R all of the rays that intersect \(v_{top}\) or \(v_{bot}\), delete all segments in \(N(r_i)\) and then repeat the above steps untill \(R=\emptyset \). Observe that for each ray r, there is a segment \(v\in S\) that intersects r. Also observe that for each segment \(v\in V\), there are at most two tokens such that both of them contains v.
Lemma 4
Let Q be the ILP of the SRS instance with a set of rays R and set of segments V as input and \(Q_l\) be the corresponding relaxed LP. Then \(OPT(Q)\le 2\cdot OPT(Q_l)\).
Proof
Let \(\mathbf X =\{x_v\}_{v\in V}\) be an optimal solution of \(Q_l\) where \(x_v\) denotes the value of the variable in \(Q_l\) corresponding to \(v\in V\). Let S be the solution returned by the above algorithm with R, V as input. Now define for each \(v\in V\), \(y_v=1\) if \(v\in S\), \(y_v=0\) if \(v\notin S\) and let \(\mathbf Y =\{y_v\}_{v\in V}\). Observe that \(\mathbf Y \) is a feasible solution of Q. For each \(z\in S\), there is a ray \(r_i\) such that \(T_z=N(r_i)\). Therefore, \(y_z= 1 \le \displaystyle \sum \limits _{v\in N(r_i)} x_v = \displaystyle \sum \limits _{v\in T_{z}} x_v\).
As a segment v is contained in at most two tokens, using the above inequality we have
Hence the result follows. \(\square \)
Now we describe our approximation algorithm for MDS problem on vertically-stabbed-L graphs. Let \(\mathcal {R}=\{\textsc {L}_u\}_{u\in V}\) be a vertically-stabbed-L-representation of a graph \(G=(V,E)\). Without loss of generality, we assume that (i) the vertical line \(x=0\) intersects all the L-paths in \(\mathcal {R}\) and the x-coordinate of the corner point of each L-path in \(\mathcal {R}\) is strictly less than 0, and (ii) whenever two distinct L-paths intersect in \(\mathcal {R}\), they intersect at exactly one point.
For a vertex \(u\in V\), let N[u] denote the closed neighbourhood of u in G, \(H_u=\{c\in N[u]:\textsc {L}_c~\text {intersects the horizontal segment of}~\textsc {L}_u\}\) and let \(V_u\) denote the set \(N(u)\setminus H_u\). Based on these we have the following ILP (say Q) of the problem of finding a minimum dominating set of G.
Let \(Q_l\) be the the relaxed LP formulation of Q and \(\mathbf Q _l=\{x_v:v\in V\}\) be an optimal solution of \(Q_l\). Now we define the following sets.
Based on these, we consider the following two integer programs \(Q'\) and \(Q''\).
Let \(Q'_l\) and \(Q''_l\) be the relaxed LP of \(Q'\) and \(Q''\) respectively. Clearly, the solutions of \(Q'\) and \(Q''\) gives a feasible solution for Q. Hence \(OPT(Q)\le OPT(Q') + OPT(Q'')\). For each \(x_v\in \mathbf Q _l\), define \(y_v=\min \{1,2x_v\}\) and define \(\mathbf Y _l=\{y_v\}_{x_v\in \mathbf Q _l}\). Notice that \(\mathbf Y _l\) gives a solution to \(Q'_l\) and \(Q''_l\). Therefore, \(OPT(Q'_l) + OPT(Q''_l)\le 4\cdot OPT(Q_l)\). We have the following lemma.
Lemma 5
\(OPT(Q')\le 2\cdot OPT(Q'_l)\) and \(OPT(Q'')\le 2\cdot OPT(Q''_l)\).
Proof
Note that for each vertex \(u\in A_1\), \(H_u\) is non-empty and for each \(v\in H_u\), \(L_v\) intersects the horizontal segment of \(L_u\). Let R be the set of horizontal segments of the L-paths representing the vertices in \(A_1\) and S be the set of vertical segments of the L-paths representing the vertices in H. Since all horizontal segments in R intersect the vertical line \(x=0\) and the x-coordinates of the vertical segments in S is strictly less than 0, we can consider the horizontal segments in R as rightward directed rays. Hence, solving \(Q'\) is equivalent to solving the ILP, say \(\mathcal {E}\), of the problem of finding a minimum cardinality subset of vertical segments S that intersects all rays in the set R of rightward-directed rays. Hence solving \(\mathcal {E}\) is equivalent to solving an SRS instance with R and S as input. By Lemma 4, we have that
where \(\mathcal {E}_l\) is the relaxed LP of \(\mathcal {E}\). Hence we have proof of the first part.
For the second part, using similar arguments as above, we can show that solving \(Q''\) is equivalent to solving an SSR instance. Hence, by Lemma 1, we have that \(OPT(Q'')\le 2\cdot OPT(Q''_l)\). Hence the proof follows. \(\square \)
Proof of Theorem 3: Lemma 5 implies that solving \(Q'\) (resp. \(Q''\)) is equivalent to solving SRS (resp. SSR) problem instance. Let A be the union of the solutions returned by 2-approximation algorithm for SRS problem and SSR-algorithm, used to solve \(Q'\) and \(Q''\) respectively. Hence,
Since \(Q_l\) consists of n variables where \(n=|V|\), solving \(Q_l\) takes \(O(n^5)\) time [19]. Solving both the SSR and SRS instances takes a total of \(O(n\log n)\) time and therefore the total running time of the algorithm is \(O(n^5)\).
4 Proof of Theorem 1 and Theorem 2
First we prove the NP-hardness for the MDS problem on unit \(B_1\)-VPG graphs. The (h, w)-grid is the undirected graph G with vertex set \(\{(x,y):x,y\in \mathbb {Z}, 1\le x\le h, 1\le y\le w\}\) and edge set \(\{(u,v)(x,y):|u-x|+|v-y|=1\}\). A graph G is a grid graph if G is an induced subgraph of (h, w)-grid for some positive integers h, w.
Proof of Theorem 1: We shall reduce the NP-complete MDS problem on grid graphs [6] to the MDS problem on unit \(B_1\)-VPG graphs. It is sufficient to show that for any positive integers h, w the (h, w)-grid has a unit \(B_1\)-VPG representation. Let \(G=(V,E)\) be a (h, w)-grid and \(\epsilon =\frac{1}{hw}\). For each \((x,y)\in V\) consider the unit L-path \(\textsc {L}_{(x,y)}\) such that top endpoint of vertical segment of \(\textsc {L}_{(x,y)}\) is \((x,y-\epsilon (x-1))\). The set \(\mathcal {R}=\{\textsc {L}_{(x,y)}:(x,y)\in V\}\) is a unit \(B_1\)-VPG representation of G. This completes the proof.
To prove Theorem 2 we will need Lemma 6. For sake of clarity, first we shall prove Theorem 2 assuming Lemma 6 to be true. The proof of Lemma 6 uses Lemma 1, but it is omitted due to space constraints.
Lemma 6
Let \(S_1\) and \(S_2\) be sets of orthogonal unit length segments. Let \(\mathcal {C}\) be the ILP of the problem of finding a minimum cardinality subset D of \(S_2\) such that every segment in \(S_1\) intersects some segment in D. There is an \(O(n^5)\)-time algorithm to compute a set \(D'\) which gives a solution of \(\mathcal {C}\) and \(|D'|\le 18\cdot OPT(\mathcal {C}_l)\) where \(n=|S_1\cup S_2|\) and \(\mathcal {C}_l\) is the relaxed LP of \(\mathcal {C}\).
Completion of Proof of Theorem 2 Assuming Lemma 6: Let \(\mathcal {R}\) be a unit \(B_k\)-VPG representation of a unit \(B_k\)-VPG graph \(G=(V,E)\). We shall assume that every vertex of G has a self loop (this does not contradict the intersection model as every rectilinear path intersects itself). For a vertex \(v\in V\), let P(v) denote the path in \(\mathcal {R}\) that corresponds to v. For a vertex \(v\in V\), N(v) and N[v] denote the open neighbourhood and closed neighbourhood of v, respectively. Throughout this section, we assume that the segments of each path \(P\in \mathcal {R}\) are numbered consecutively starting from the leftmost segment by \(1,2,\ldots ,t\) where \(t (\le k+1)\) is the number of segments in P.
Define \(\phi :E\rightarrow \mathbb {N}\times \mathbb {N}\) such that for an edge uv, \(\phi (uv)=(i,j)\) if and only if the \(i^{th}\) segment of P(u) intersects the \(j^{th}\) segment of P(v), and for all \(1\le a<i\) and \(1\le b<j\), the \(a^{th}\) segment of P(u) does not intersect the \(b^{th}\) segment of P(v).
For a vertex \(u\in V\), let \(X_u(i,j)=\{v\in N[u] :\phi (uv)=(i,j)\}\). For distinct pairs (i, j) and \((i',j')\) the sets \(X_u(i,j)\) and \(X_u(i',j')\) are disjoint. Let \(\mathcal {K}\) denote the set \(\{1,2,\ldots ,k+1\}\times \{1,2,\ldots ,k+1\}\). Based on these we have the following ILP of the MDS problem on G.
First step of our algorithm is to solve the relaxed LP formulation (say \(Q_l\)) of Q. Let \(\mathbf {Q}_l=\{x_v:v\in V \}\) be an optimal solution of \(Q_l\). For each vertex \(u\in V\), there is a pair \((i,j)\in \mathcal {K}\) such that \(\sum \limits _{v\in X_u(i,j)} x_v \ge \frac{1}{(k+1)^2}\). For each pair \((i,j)\in \mathcal {K}\), define
Based on these, we have the following ILP for each pair \((i,j)\in \mathcal {K}\).
For each pair \((i,j)\in \mathcal {K}\), let \(Q_l(i,j)\) be the relaxed LP of Q(i, j). We have the following
For each \(x_v\in \mathbf Q _l\), define \(y_v=\min \{1,x_v(k+1)^2\}\) and define \(\mathbf Y _l=\{y_v\}_{x_v\in \mathbf Q _l}\). Clearly, \(\mathbf Y _l\) gives a solution to \(Q_l(i,j)\) for each \((i,j)\in \mathcal {K}\). Moreover,
Now we have the following lemma.
Lemma 7
For each pair \((i,j)\in \mathcal {K}\), there is a solution D(i, j) for Q(i, j) such that \(|D(i,j)|\le 18\cdot OPT(Q_l(i,j))\).
Proof
For any \((i,j)\in \mathcal {K}\), solving Q(i, j) is equivalent to finding a minimum cardinality subset D of B(i, j) such that each vertex \(u\in A(i,j)\) has a neighbour in \(D\cap X_u(i,j)\). Notice that, for each \(u\in A(i,j)\) the set \(X_u(i,j)\) is non-empty and each \(v\in X_u(i,j)\), the \(i^{th}\) segment of P(u) intersects the \(j^{th}\) segment of P(v). Let \(S=\{i^{th}\text { segment of } P(u):u\in A(i,j)\}, T=\{j^{th}\text { segment of } P(v):v\in B(i,j)\}\).
Solving Q(i, j) is equivalent to the problem of finding a minimum cardinality subset D of T such that every segment in S intersect at least one segment in D. Moreover, every segment in \(S\cup T\) have unit length. Hence by Lemma 6, we have a solution (say D(i, j)) for Q(i, j) such that \(|D(i,j)|\le 18\cdot OPT(Q(i,j))\). \(\square \)
For each pair \((i,j)\in \mathcal {K}\), due to Lemma 7, we have a solution D(i, j) of Q(i, j) such that \(|D(i,j)|\le 18\cdot OPT(Q_l(i,j))\) in polynomial time. Let D be the union of D(i, j)’s for all \((i,j)\in \mathcal {K}\). We have that
This completes the proof of Theorem 2.
5 Conclusion
We initiated the study of approximating MDS of string graphs in terms of their unit \(B_k\)-VPG representation. It is unlikely that there is \(o(\log k)\)-approximaiton algorithm for MDS problem on \(B_k\)-VPG graphs. This naturally leads to the following question.
Question 1
Is there an \(O(\log k)\)-approximation algorithm for the MDS problem on \(B_k\)-VPG graphs or unit \(B_k\)-VPG graphs?
References
Asinowski, A., Cohen, E., Golumbic, M.C., Limouzy, V., Lipshteyn, M., Stern, M.: Vertex intersection graphs of paths on a grid. J. Graph Algorithms Appl. 16(2), 129–150 (2012)
Bandyapadhyay, S., Maheshwari, A., Mehrabi, S., Suri, S.: Approximating dominating set on intersection graphs of rectangles and L-frames. In: MFCS, pp. 37:1–37:15 (2018)
de Berg, M., Cheong, O., van Kreveld, M., Overmars, M.: Computational Geometry: Algorithms and Applications. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-77974-2
Bousquet, N., Gonçalves, D., Mertzios, G.B., Paul, C., Sau, I., Thomassé, S.: Parameterized domination in circle graphs. In: Golumbic, M.C., Stern, M., Levy, A., Morgenstern, G. (eds.) WG 2012. LNCS, vol. 7551, pp. 308–319. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-34611-8_31
Chlebík, M., Chlebíková, J.: Approximation hardness of dominating set problems in bounded degree graphs. Inf. Comput. 206(11), 1264–1275 (2008)
Clark, B.N., Colbourn, C.J., Johnson, D.S.: Unit disk graphs. Discret. Math. 86(1–3), 165–177 (1990)
Colbourn, C.J., Stewart, L.K.: Permutation graphs: connected domination and steiner trees. Discret. Math. 86(1–3), 179–189 (1990)
Damian, M., Pemmaraju, S.V.: APX-hardness of domination problems in circle graphs. Inf. Process. Lett. 97(6), 231–237 (2006)
Damian-Iordache, M., Pemmaraju, S.V.: A (2+ \(\varepsilon \))-approximation scheme for minimum domination on circle graphs. J. Algorithms 42(2), 255–276 (2002)
Erlebach, T., van Leeuwen, E.J.: Domination in geometric intersection graphs. In: Laber, E.S., Bornstein, C., Nogueira, L.T., Faria, L. (eds.) LATIN 2008. LNCS, vol. 4957, pp. 747–758. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78773-0_64
Farber, M., Keil, J.M.: Domination in permutation graphs. J. Algorithms 6(3), 309–321 (1985)
Gibson, M., Pirwani, I.A.: Algorithms for dominating set in disk graphs: breaking the logn barrier. In: de Berg, M., Meyer, U. (eds.) ESA 2010. LNCS, vol. 6346, pp. 243–254. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15775-2_21
Golumbic, M.C., Rotem, D., Urrutia, J.: Comparability graphs and intersection graphs. Discrete Math. 43(1), 37–46 (1983)
Gonçalves, D., Isenmann, L., Pennarun, C.: Planar graphs as L-intersection or L-contact graphs. In: SODA, pp. 172–184 (2018)
Katz, M.J., Mitchell, J.S.B., Nir, Y.: Orthogonal segment stabbing. Comput. Geom.: Theory Appl. 30(2), 197–205 (2005)
Lahiri, A., Mukherjee, J., Subramanian, C.R.: Maximum independent set on \(B_1\)-VPG graphs. In: Lu, Z., Kim, D., Wu, W., Li, W., Du, D.-Z. (eds.) COCOA 2015. LNCS, vol. 9486, pp. 633–646. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-26626-8_46
McGuinness, S.: On bounding the chromatic number of L-graphs. Discrete Math. 154(1–3), 179–187 (1996)
Mehrabi, S.: Approximating domination on intersection graphs of paths on a grid. In: Solis-Oba, R., Fleischer, R. (eds.) WAOA 2017. LNCS, vol. 10787, pp. 76–89. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-89441-6_7
Tardos, E.: A strongly polynomial algorithm to solve combinatorial linear programs. Oper. Res. 34(2), 250–256 (1986)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Chakraborty, D., Das, S., Mukherjee, J. (2019). Approximating Minimum Dominating Set on String Graphs. In: Sau, I., Thilikos, D. (eds) Graph-Theoretic Concepts in Computer Science. WG 2019. Lecture Notes in Computer Science(), vol 11789. Springer, Cham. https://doi.org/10.1007/978-3-030-30786-8_18
Download citation
DOI: https://doi.org/10.1007/978-3-030-30786-8_18
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30785-1
Online ISBN: 978-3-030-30786-8
eBook Packages: Computer ScienceComputer Science (R0)