Keywords

1 Introduction

A set of vertices are said to cover an edge if at least one end vertex of that edge is present in that set of vertices. Graph covering problems aim to find a subset of graph vertices such that all edges are covered by that subset while minimizing some objective function. The classical vertex cover problem is a graph covering problem which requires finding a minimum size/cost subset of graph vertices that covers all the edges of a given graph. The problem of covering graphs with specific subgraphs is studied by several researchers in the past four decades [1,2,3, 5]. The objective in such problems is to determine an optimal size/cost collection of subgraphs of a graph such that the union of vertices of the subgraphs covers all edges of the original graph. Based on the topology of subgraphs, several variations of the problem are defined. As most of these variations are NP-hard, the main goal is to design efficient approximation schemes.

In this paper, we aim to study two variants of graph covering with bounded size subgraphs. The problems aim to cover the graph with a minimum number of subgraphs each of whose weight is bounded by a given real number. Formally, let \(G=(V, E, w)\) be a weighted graph where \(w:E \rightarrow R^+\). A forest cover of G is a collection of disjoint trees \(\{T_1, T_2, \cdots , T_j\}\) such that the union of the vertices in all the trees in the collection will be a vertex cover. Note that disjoint trees do not have any common vertices/edges. The cardinality of a forest cover is j, the number of trees in the forest cover. We define a problem named bounded component forest cover (BCFC) problem as follows.

Definition 1

For a given weighted graph \(G=(V, E, w)\), and a non-negative real number \(\lambda \), find a forest cover of minimum cardinality such that the weight of each tree in the forest cover is at most \(\lambda \).

Note that when \(\lambda =0\), the problem is reduced to the minimum vertex cover problem. Hence, we have the following result.

Theorem 1

The BCFC problem over \((G, \lambda )\) is NP-hard.

The second problem is motivated by a real-life application problem monitoring a large art gallery. A guard can see the entire corridor from one of its end junction points. The objective is to place a minimum number of mobile guards in such a way that every corridor can be under the scrutiny of at least one guard in t time period, for a given time \(t>0\). If every guard moves with a constant average velocity v, then the movement routes of the guards decompose the graph into subgraphs, each of which has a length at most vt, and the set of vertices covered by the guards must form a vertex cover. In this case, each subgraph is a walk of length at most vt, and the walks in the solution may be intersecting, i.e., may have common edges/vertices.

Formally, let \(G=(V,E)\) be a weighted graph with the weight function \(w:E \rightarrow R^+\). A walk cover of G is a collection of walks \(\{P_1,P_2, \cdots ,P_j\}\) which are allowed to intersect, i.e., may have common edges/vertices such that the union of the vertices on all the walks in the collection, forms a vertex cover. The cardinality of a walk cover is j, the number of walks in the walk cover. Analogous to BCFC, we define a problem named bounded size walk cover (BSWC) as follows.

Definition 2

For a given weighted graph \(G=(V,E,w)\), and a non-negative real number \(\lambda \), find a walk cover of minimum cardinality such that the weight of each walk in the walk cover is at most \(\lambda \).

If \(\lambda = 0\), BSWC problem is reduced to the minimum vertex cover problem. Therefore, the following result holds.

Theorem 2

The BSWC problem over \((G, \lambda )\) is NP-hard.

2 Related Work

In this section, we briefly mention works related to BCFC, BSWC and graph covering problems. The tree(tour) cover problem was first defined by Arkin et al. [1] in 1993. The tree(tour) cover problem of an edge weighted graph deals with finding a minimum weight tree(tour) in the graph such that the vertices of the tree(tour) are the vertices of some vertex cover of the graph. These two problems are NP-hard as an instance of vertex cover problem, and traveling salesperson problem [6] can be reduced to an instance of tree and tour cover problem, respectively. Arkin et al. have designed a 3.55 and 5.5-factor approximation algorithm for tree cover and tour cover problems, respectively. In [2, 3], researchers have studied the tree cover problem and proposed improved approximation algorithms. Koneman et al. [2] gave a linear programming formulation for the tree cover problem and derived a 3-factor rounding algorithm. Fujito [3] gave a 2-factor approximation algorithm to find a minimum tree cover. Viet Hung Nguyen [4] established a 3.5 approximation factor for the tour cover using a compact linear program which is weaker as compared to 3-factor proposed by Konemann et al. [2]. Researchers have studied a similar problem called edge dominating set problem [5, 7, 8] that finds a subset of edges \(E_1\) in a graph \(G=(V, E)\) such that for each edge not in \(E_1\) has at least one common end vertex with some edges of \(E_1\). It is a minimization problem.. This problem is a special case of BSWC problem when \(\lambda =1\) and the graph is unweighted. Researchers [5, 7, 8] have proposed various approximation algorithms to solve the edge dominating set problem and the best-known algorithm has an approximation factor 2 [5]. Fujito and Nagamochi [5] and Parekh [9] have proposed 2-factor approximation algorithms to find minimum vertex cover, minimum edge dominating set, and some related problems. Monien and Speckeumeyer [11] have established an approximation factor \(\le 1.8\) for finding a minimum vertex cover in all graphs with \(\le 146000\) nodes. To find a minimum vertex cover in graphs authors [12, 13] have proposed different approximation algorithms whose approximation factors are lesser than 2. In [14], authors have proved that it is NP-hard to establish an approximation factor lesser than 1.36067 for a vertex cover problem in a graph.

The problem of graph covering using walks is related to a well-studied problem of graph exploration by mobile agents. If the mobile agents have to monitor the edges of the network by visiting at least one of its end vertices, they have to visit walks containing all vertices of some vertex cover of the graph. The optimal number of agents required for edge exploration is a related problem to BSWC; therefore, we briefly mention a few results on edge exploration. In a graph exploration problem single or multiple mobile agents have to visit the nodes or edges of a graph. Many research works are concerned with the exploration of the graph by a single mobile agent, as discussed in [15,16,17,18, 20]. In [21], authors have assumed that in the deterministic exploration of the graph by multiple agents, the movement of the agents are coordinated centrally. In [22], authors have designed different approximation algorithms for the collective exploration of an arbitrary graph by a group of mobile agents. In [19], authors have studied the problem graph exploration where starting from a node, a mobile agent has to visit all the vertices of an anonymous graph where the nodes do not have ids, but the edges incident on a node are labeled with port numbers. Dhar et al. [23, 24] studied the edge exploration of an anonymous graph by a mobile agent.

3 Results

In this section, we present constant factor approximation schemes for both considered problems.

3.1 Constant Factor Approximation Algorithm for BCFC

Recall a tree cover problem in an edge weighted graph deals with finding a minimum weight tree such that the vertices of the tree form a vertex cover of the graph. First, we show that a constant factor approximation algorithm for the tree cover problem can be used to design a constant factor approximation algorithm to BCFC. The general idea is to find a tree cover of a given graph and then split the tree into bounded size components such that all vertices of the tree cover are preserved in the process of splitting. The resulting forest is a solution of BCFC problem on the given graph. The tree cover problem is NP-Hard; therefore, the proposed scheme obtains an approximated tree cover solution using some \(\rho \)-factor approximation algorithm. The following lemma from [25] helps us to find a solution of BCFC from a given solution of tree cover problem.

Lemma 1

([25]). Let \(\beta >0\) be a positive real number and let T be any tree with vertex set \(V_T\) and the edge set \(E_T\). If for each \(e\in E_T\), \(w(e)\le \beta \), then T can be split into sub-trees \(\zeta _1,\zeta _2, \cdots ,\zeta _{k}\) where \(k \le \max \{\lceil \frac{w(T)}{\beta }\rceil ,1\}\) such that \(w(\zeta _i) \le 2 \beta \) for each \(1 \le i \le k\).

The procedure of how to split the tree into sub-trees is explained in [26].

Let \(G=(V,E,w)\) be a given weighted graph. We define a weight function \(w_{\frac{1}{2}}\) as follows:

$$ w_{\frac{1}{2}}(e) = {\left\{ \begin{array}{ll} \frac{2w(e)}{\lambda } &{}\quad \text {if } w(e)\le \frac{\lambda }{2}, \\ 1 &{}\quad \text {otherwise.} \end{array}\right. } $$

Let \(G'=(V, E, w_{\frac{1}{2}})\) where \(G=(V, E, w)\). Let \(w_{\frac{1}{2}}(X)\) denote the sum of the weights of the edges in a subgraph X of graph \(G'\). Similarly, w(X) is defined for a subgraph X of graph G. The following lemma establishes a relationship between the optimal tree cover of \(G'\) and the number of trees in the optimal solution of BCFC.

Lemma 2

Let \(OPT_{BCFC}\) be the number of sub-trees in the optimal solution of BCFC problem over \((G, \lambda )\) and let \(OPT_{TC}\) be the optimal tree cover of \(G'\). Then \(w_{\frac{1}{2}}(OPT_{TC}) \le 4 OPT_{BCFC}-2\).

Proof

Let \(\xi _1\), \(\xi _2\), \(\cdots \), \(\xi _{OPT_{BCFC}}\) be the trees in an optimal solution of BCFC for \((G, \lambda )\). Then by the definition of \(w_{\frac{1}{2}}\), \(w_{\frac{1}{2}}(\xi _i)\le 2\), for each i, \(1 \le i \le OPT_{BCFC}\). Construct a graph \(H=(V_H,E_H)\) with \(OPT_{BCFC}\) many vertices as follows.

For every tree \(\xi _i\), take a vertex \(u_i\) in \(V_H\). Add an edge \((u_i,u_j) \in E_H\), if there exists a vertex \(v_i \in V_{\xi _i}\) and there exist a vertex \(v_j \in V_{\xi _j}\) such that \(v_i\) and \(v_j\) are connected by a path with at most two edges in G. Assign \(w(u_i,u_j)=\min \limits _{\{P_{xy}|x \in V_{\xi _i}, y \in V_{\xi _j}\}}\{w(P_{xy})\}\), where \(P_{xy}\) is a path between x and y with at most two edges in G. Since G is connected, and the vertices of \(OPT_{BCFC}\) forms a vertex cover, therefore the graph H is also connected. Let \(\tau \) be the minimum spanning tree of H with respect to w and \(E_\tau \) be the set of edges in the \(\tau \). Note that for every edge in \(e\in E_\tau \), \(w_{\frac{1}{2}}(e) \le 2\), as there can be at most two edges in G corresponding to one edge in \(\tau \) and the weight of an edge in G with respect to \(w_{\frac{1}{2}}\) is at most 1. Let \(Z= (\bigcup \limits _{i=1}^{OPT_{BCFC}} \xi _i)\bigcup \tau \). Clearly, Z is a tree cover of G and \(w_{\frac{1}{2}}(Z)\le \sum _{i=1}^{OPT_{BCFC}} w_{\frac{1}{2}}(\xi _i) + \sum _{e \in E_\tau } w_{\frac{1}{2}}(e).\) Recall, \(w_{\frac{1}{2}}(\xi _i)\le 2\) and \(|E_\tau |=|V_\tau |-1=|V_H|-1=OPT_{BCFC}-1\), therefore, we have \(w_{\frac{1}{2}}(Z)\le 2 OPT_{BCFC} + 2(OPT_{BCFC}-1)= 4 OPT_{BCFC}-2\).

Since, \(OPT_{TC}\) is an optimal tree cover of \(G'\), we have \(w_{\frac{1}{2}}(OPT_{TC})\le w_{\frac{1}{2}}(Z)\le 4 OPT_{BCFC}-2\)    \(\square \)

Next, we describe our approach to find a solution for BCFC problem over \((G, \lambda )\). Let A̧ be an approximation algorithm with \(\rho \)-factor approximation guarantee for the tree cover problem. Let \(APX_{TC}\) be the tree cover returned by A̧ for the input graph \(G'=(v,E,w_{\frac{1}{2}})\). First, we obtain an approximated tree cover \(APX_{TC}\) of \(G'\). Then each edge e in \(APX_{TC}\) for which \(w(e) > \frac{\lambda }{2}\) is deleted from \(APX_{TC}\). After deletion of such edges, let \(APX_{TC}\) splits into h sub-trees \(\chi _1\), \(\chi _2\), \(\cdots \), \(\chi _h\). For \(i=1\) to h, a set of sub-trees \(S_i\) is computed from \(\chi _i\) using the tree splitting strategy proposed in [26] such that weight of each sub-tree in \(S_i\) has weight at most 2. Finally, forest cover \(APX_{BCFC}= \bigcup _{i=1}^{h} S_i\) is returned as the solution to the BCFC problem.

Theorem 3

Let \(|APX_{BCFC}|\) be the number of trees in the forest cover \(APX_{BCFC}\), then \(|APX_{BCFC}|\le 4\cdot \rho \cdot OPT_{BCFC}\), when we have a \(\rho \)-factor approximation algorithm for the tree cover problem.

Proof

Let T be a sub-tree in a set of sub-trees \(S_i\subseteq APX_{BCFC}\). Then, \(w_{\frac{1}{2}}(T) \le 2\). Furthermore, for each edge \(e \in T\), \(w(e) \le \frac{\lambda }{2}\) and \(w(T) \le \lambda \). According to Lemma 1, the number of trees in the set of sub-trees \(S_i\), \(|S_i| \le \max \{\lceil {w_{\frac{1}{2}}(\chi _i)}\rceil ,1\}= \max \{\lceil \frac{2w(\chi _i)}{\lambda }\rceil ,1\} \le w_{\frac{1}{2}}(\chi _i)+1\). Recall, \(APX_{BCFC}= \bigcup _{i=1}^{h} S_i\), therefore, \(|APX_{BCFC}| = \sum _{i=1}^h |S_i| \le \sum _{i=1}^h (w_{\frac{1}{2}}(\chi _i)+1)=\sum _{i=1}^h w_{\frac{1}{2}}(\chi _i) + h\). Note that, \(w_{\frac{1}{2}}(APX_{TC}) = \sum _{i=1}^h w_{\frac{1}{2}}(\chi _i) +h-1\), therefore, we have \(APX_{BCFC} \le w_{\frac{1}{2}}(APX_{TC})+1 \le \rho \cdot w_{\frac{1}{2}}(OPT_{TC})+1\). Using Lemma 2, we have \(APX_{BCFC} \le 4\rho \cdot OPT_{BCFC}\).    \(\square \)

Theorem 4

([3]). There exist a 2 factor approximation algorithm for tree cover problem.

In view of Theorem 3 and Theorem 4 we have the final result in this subsection.

Theorem 5

There exists an 8-factor approximation algorithm for BCFC.

3.2 Constant Factor Approximation Algorithm for BSWC

Recall that a solution to BCFC can be easily converted to a solution of BSWC by doubling the edges in each component of the forest cover, breaking the tour into two bounded size walks, which may intersect. Let \(|APX_{BCFC}|\) be the number of trees in the forest cover \(APX_{BCFC}\), which is a solution of BCFC given by the approximation algorithm given in the above section. Then, after doubling the trees in \(APX_{BCFC}\) and cutting the formed tour due to doubling into two walks, we would have \(2|APX_{BCFC}|\) walks. Therefore, the number of walks would be less than or equal to \(8\cdot \rho \cdot OPT_{BCFC}\) when we have a \(\rho \) factor approximation algorithm for the tree cover problem.

In this section, we show that an approximation scheme for the tree cover problem can be used to design a constant factor approximation scheme for BSWC. The general idea is to find a tree cover of a given graph and then delete high-cost edges. This process may result in a forest. The edges in the resulting forest are doubled to form tours over vertices in all respective components of the forest. Splitting these tours into bounded-size walks results in a collection of walks which is a feasible solution for BSWC. We prove that this approximation approach guarantees to give \(6\cdot \rho \cdot OPT_{BSWC}\) solution for BSWC problem.

Let \(G = (V, E, w)\) be a weighted undirected graph, where every edge \(e \in E\) has a positive real weight. We define a weight function \(w'\) on the graph G such that for each edge \(e \in G\), \(w'(e) = \frac{w(e)}{\lambda }\) if \(w(e) \le \lambda \) else \(w'(e) = 1\). Let \(G'=(V,E,w')\) where \(G=(V,E,w)\). Let \(\lambda \) be a non-negative real number. Note that two walks may intersect and may have common vertices/edges. A set of walks \(\{P_1, P_2, \cdots , P_j\}\), such that each walk is of weight at most \(\lambda \), is called bounded size walk cover if union of vertices in all the walks forms a vertex cover of G. For any real \(\lambda \ge 0\), the objective of BSWC problems is to find the minimum cardinality walk cover of G such that the weight of each walk in the walk cover is at most \(\lambda \).

figure a

The above problem is NP-hard. To solve this problem, we design an approximation algorithm that finds a tree cover of the graph and splits the tree cover into sub-trees of smaller size by deleting high-weight edges, but all the vertices of the tree cover must be present in the sub-trees. Deletion of high-weight edges is a classical mechanism to break a tree in problems that have bounded size constraints [26]. The proposed algorithm finds walk cover from a tree cover following the idea of constructing sub-trees from a minimum spanning tree given in the Algorithm 1 in the paper [27]. We have modified Algorithm 1 from [27] according to our requirement to result walks which may intersect. For the sake of completeness, the modified algorithm is summarized as Algorithm 1 in this paper and its working procedure is explained as follows. The algorithm finds an approximated tree cover \(APX_{TC}\) in the graph G using some \(\rho \)-factor approximation algorithm. It deletes all heavy edges with weight more than \(\lambda \) from \(APX_{TC}\). Let k number of edges are deleted which splits \(APX_{TC}\) into \(k+1\) different components \(T_0,\cdots , T_k\). In each \(T_i\), \(i = 0,\cdots , k\), the algorithm finds a tour \(ET_i\) by doubling edges of \(T_i\) and at the end, it deletes one arbitrary edge from \(ET_i\) to get a walk \(C_i\). Note that an edge may appear more than one time in such tour. For \(i=1, \cdots , k\), each walk \(C_i\), is split into sub-walks of weight less than or equal to \(\lambda \) and those sub-walks are added to the solution \(APX_{BSWC}\). Let the walk \(C_i\) is represented as a sequence of vertices \((u_i^1 u_i^2 \cdots u_i^{|V(C_i)|})\). In the walk \(C_i\) let \(u_i^j\) be the first vertex such that \(w(u_i^1 \cdots u_i^{j+1}) > \lambda \), then it adds the walk \((u_i^1 \cdots u_i^j)\) to the set \(APX_{BSWC}\) and deletes the walk \((u_i^1 \cdots u_i^j u_i^{j+1})\) from \(C_i\). To delete any walk \((u_i^1 \cdots u_i^j u_i^{j+1})\) from \(C_i\) , the algorithm deletes the vertices \(\{u_i^1 \cdots u_i^j u_i^{j}\}\) and the edges \(\{(u_i^1,u_i^2) \cdots (u_i^j, u_i^{j+1})\}\). It continues this process until \(w(C_i) \le \lambda \). Finally, we add the truncated walk \(C_i\) to the set \(APX_{BSWC}\).

Fig. 1.
figure 1

Example: Construction of bounded size walk cover.

The execution steps of the Algorithm 1 are depicted with the help of an example, as shown in Fig. 1. Let \(G = (V,E,w)\) be a positive edge-weighted graph as shown in Fig. 1a and let the bound on the weight of each walk be \(\lambda = 20\). The algorithm first computes an approximate tree cover \(APX_{TC}\) in the graph G using some existing tree cover algorithm. Let Fig. 1b be the approximated tree cover \(APX_{TC}\). Then, the algorithm deletes the edge \((v_1,v_3)\) whose weight is greater than \(\lambda =20\) from \(APX_{TC}\). Deletion of \((v_1,v_3)\) splits \(APX_{TC}\) into two different sub-trees \(T_1\) and \(T_2\) as shown in Fig. 1c. Next, the algorithm doubles the edges of sub-trees \(T_1\) and \(T_2\) and finds tours \(ET_1\) and \(ET_2\), respectively, as depicted in Fig. 1d. From each tour \(ET_1\) and \(ET_2\), the algorithm deletes an arbitrary edge and gets open walks \(C_1\) and \(C_2\) as shown in Fig. 1e. In this example \((v_2,v_7)\) and \((v_3,v_6)\) are deleted from \(ET_1\) and \(ET_2\) respectively. Note that an edge may occur twice in these walks due to doubling. In the walk \(C_1\), the algorithm starts from node \(v_7\) and visits up to the node \(v_1\). Since the walk \(P_1 = (v_7,v_2,v_1)\) is the largest visited walk with weight at most 20, it adds the sub-walk \(P_1 = (v_7, v_2, v_1)\) into the solution and deletes the walk \(P_1\) along with the edge \((v_1,v_8)\) from \(C_1\). Then it finds the sub-walk \(P_2 = (v_8,v_1,v_2)\) from the remaining walk of \(P_1\). Similarly, it finds sub-walk \(P_3\) from the walk \(C_2\). All the walks have a weight at most 20 as shown in Fig. 1f. Note that \(P_1\) and \(P_2\) are intersecting and have a common edge \((v_1,v_2)\).

The following Lemmas and Theorem give correctness and derive the approximation factor of Algorithm 1. Recall \(APX_{BSWC}\) is the output of Algorithm 1, which is a set of walks.

Lemma 3

\(APX_{BSWC}\) is a bounded size walk cover of graph G.

Proof

The walks in \(APX_{BSWC}\) are constructed by deleting some edges of a tree cover of the graph G. So the walks in \(APX_{BSWC}\) include all the vertices of the tree cover of G. Therefore, the vertices of all the walks in \(APX_{BSWC}\) still form a vertex cover of graph G. According to Algorithm 1, the weight of each walk in \(APX_{BSWC}\) are bounded to be less or equal to \(\lambda \). Hence, \(APX_{BSWC}\) is a feasible solution to BSWC problem in the graph G.    \(\square \)

To establish the approximation factor of Algorithm 1, we define certain variables. Let \(OPT_{BSWC}\) be the minimum number of bounded size walks, which forms the optimal solution of BSWC problem over a graph G. Let \(OPT_{TC}\) be the optimal tree cover of the graph \(G'\). We establish a relation between \(OPT_{BSWC}\) and \(w'(OPT_{TC})\).

Lemma 4

\(w'(OPT_{TC}) \le 3.OPT_{BSWC}-2\)

Proof

Let \(\{Q_1, Q_2, \cdots , Q_{OPT_{BSWC}}\}\) be the set of walks which forms the optimal solution of BSWC as shown in Fig. 2. Weight of each \(Q_i\) is less than or equal to \(\lambda \), i.e. \(w(Q_i) \le \lambda \) and \(w'(Q_i) \le 1\). We construct a graph \(H=(V_H, E_H)\), similarly to how we constructed a graph H in the proof of Lemma 2. The graph H contains all walks \(Q_1, \cdots , Q_{OPT_{BSWC}}\) as a subgraph and contains a few extra edges/vertices from G to connect these walks into a single connected component. In the graph G, if two walks \(Q_i\) and \(Q_j\) have common vertices or edges, then join them into a single component by taking the union of those walks so that each edge/vertex appears exactly once. We start with graph G, and then, we contract each component from the previous step, which is a subgraph of G, into a single vertex by contracting all the edges and respective vertices to obtain a graph \(G_c=(V_c, E_c)\). Afterward, we find a minimum spanning tree MST T on the contracted graph \(G_c\). Graph H is constructed from MST T by reversing the contraction of the components. The graph H is a sub-graph of G containing all the vertices of walks in the set \(\{Q_1, Q_2, \cdots , Q_{OPT_{BSWC}}\}\). The sub-graph H is a tree cover of G as depicted in Fig. 3.

Fig. 2.
figure 2

\(Q_1,\cdots , Q_{OPT_{BSWC}}\) be the walks in the optimal solution of BSWC

Fig. 3.
figure 3

Sub-graph H of G formed by edges of \(Q_i\) and MST T on \(G_c\)

In the graph \(G_c\), consider two nodes \(u_x\) and \(u_y\) that represent two components that may be formed by union of few walks from the set \(\{Q_1, Q_2, \cdots , Q_{OPT_{BSWC}}\}\). Let \(u_x\) and \(u_y\) are connected in \(G_c\) through a path \(p_{xy}\), which is also present in MST T. Then, the number of edges on path \(p_{xy}\) is at most two. Otherwise, if three edges are present in \(p_{xy}\), then any end vertex of middle edge can not be covered by any vertex of \(Q_i\), for \(1 \le i \le OPT_{BSWC}\), and hence the covering of all edges is not guaranteed. Therefore, weight of each such path \(p_{xy}\) in \(G'\), \(w'(p_{xy}) \le 2\). Note that the vertices H form a vertex cover of G. As per the construction, the graph H contains all walks from the set \(\{Q_1, Q_2, \cdots , Q_{OPT_{BSWC}}\}\) and at most \(OPT_{BSWC}-1\) many paths (of \(p_{xy}\) type) to connect all walks. The weight of each walk \(Q_i\) in \(G'\) is \(w'(Q_i) \le 1\). Hence, the weight of sub-graph H in \(G'\) is given as \(w'(H) \le OPT_{BSWC} + 2.(OPT_{BSWC}-1) \le 3OPT_{BSWC}-2\). Since H is also a tree cover of the graph G, weight of the optimal tree cover in \(G'\), \(w'(OPT_{TC}) \le w'(H)\le 3OPT_{BSWC}-2\).    \(\square \)

Theorem 6

Let \(Y = |APX_{BSWC}|\) be the number of walks of a bounded weight in the set \(APX_{BSWC}\) resulted by Algorithm 1. Then, \(Y \le 6 \cdot \rho \cdot OPT_{BSWC}\), when we have a \(\rho \)-factor approximation algorithm for the tree cover problem.

Proof

The proposed algorithm obtains an approximate tree cover \(APX_{TC}\) of \(G'\) using some \(\rho \)-factor approximation algorithm, i.e. weight of \(APX_{TC}\) in \(G'\) is \(w'(APX_{TC})\) \(\le \) \(\rho .w'(OPT_{TC})\), where \(OPT_{TC}\) is the optimal tree cover of \(G'\). The algorithm deletes the edges from \(APX_{TC}\) whose weight is greater than \(\lambda \) in G. After deletion of heavy edges, let \(APX_{TC}\) be split into \(\{T_1, T_2,...,T_m\}\) sub-trees. The algorithm doubles all edges in each sub-tree for a set of sub-tours \(\{ET_1, ET_2,...,ET_m\}\). After the deletion of an arbitrary edge from each sub-tour, the algorithm finds open walks \(\{C_1, C_2,...,C_m\}\). Each walk \(C_i\) is then splitted into bounded size sub-walks which are kept in the solution as walks that may intersect. Note that Y \(\le \) \(\sum _{i=1}^{m}\lceil {w'(C_i)}\rceil \le \sum _{i=1}^{m}\frac{w(C_i)}{\lambda } + m\). We have \(w'(APX_{TC})= \sum _{i=1}^{m}{w'(T_i)}+m-1\) which can be rewritten as \(2w'(APX_{TC})\ge \sum _{i=1}^{m}\frac{w(C_i)}{\lambda }+2m-2\). Hence \(Y\le 2w'(APX_{TC}) -m+2\le 2\rho \cdot w'(OPT_{TC})-m+2\). Using Lemma 4, we have \(Y \le 6 \cdot \rho \cdot OPT_{BSWC}\), as \(\rho >1\).   \(\square \)

In view of Theorem 6 and Theorem 4, we have the final result in this subsection.

Theorem 7

There exists a 12-factor approximation algorithm for BSWC.

4 Conclusion and Future Work

In this paper, we have studied two graph covering problems: bounded component forest cover (BCFC) problem and bounded size walk cover (BSWC) problem. The problems are NP-hard due to a trivial reduction to the classical vertex cover problem when the bound on weight is 0. We designed \(4.\rho \) factor approximation algorithm for the bounded component forest cover problem, where \(\rho \) is the approximation factor for finding a solution of tree cover problem. We further give a \(6.\rho \) factor approximation algorithm for bounded size walk cover problem. Using 2-factor approximation algorithm given by Fujito [3] for tree cover problem, we have 8-factor and 12-factor approximation algorithm for BCFC and BSWC respectively.

Reducing these approximation factors is the first obvious direction to work on. One possible such improvement may be due to starting of with a subgraph other than a solution to the tree cover problem, which may bring down the final approximations factors. Studying bounded size path cover and bounded size intersecting sub-tour cover are other alternatives that we plan to look in future. Another future direction is to study the graph covering problem using other types of bounded size subgraphs.