1.1 Introduction
Most combinatorial optimization problems are NPhard. Efficient algorithms to find an optimal solution for such problems are not known. By efficient, we mean running in time polynomial in the input size. Hence, we resort to approximation algorithms which aim to efficiently provide a nearoptimal solution. For minimization problems, a
approximation algorithm () efficiently outputs a solution of cost at most times the optimum, where is called the approximation ratio. A family of approximation algorithms ( with polynomial running times is called a polynomial time approximation scheme (PTAS).In many practical applications, the problem instance can arise from small perturbations in the previous instance of an optimization problem. A naive approach is to work on the new problem instance from scratch using known approximation algorithm. But, with some prior knowledge of the solution for old instance, can we perform better? The computational paradigm of reoptimization addresses this question.
We consider the case where one has devoted a substantial amount of time to obtain an exact solution for the NPhard optimization problem. Now, the goal is to reoptimize the solution whenever the modified instance is known. A reoptimization problem can be built over any optimization problem . An input instance for is a triple , where is an old instance, is a modified instance and is an optimal solution for on .
Suppose is a hard instance obtained via some perturbations in and assume that we have an optimal solution of . The natural question is, can we find an optimal solution of ? In general this may not be the case and we specifically show in Lemma 3 that, if the optimization problem is and the perturbation is a single vertex insertion, then even possessing does not help to find an optimal solution for efficiently, unless . Hence, the objective of an efficient algorithm for is to either achieve a better approximation ratio or improve the running time of the known approximation algorithm. In this paper, the optimization problem we consider for reoptimization is the path vertex cover problem. This problem has its applications in traffic control and secure communication in wireless networks [7]. We briefly explain the optimization problem below:
A path of order in a graph is a simple path containing vertices. For a given graph , is a feasible  vertex cover iff every path of order k in contains at least one vertex from . The problem of finding a feasible kpath vertex cover on a graph is known as path vertex cover problem (). This problem has two variants: weighted and unweighted. The goal in unweighted  is to find a feasible subset of minimum cardinality whereas in weighted , the objective is to find minimum weighted subset of vertices that covers all the paths of order or more.
1.2 Related Work and Contributions
For any fixed integer , the  vertex cover problem () is known to be NPcomplete for an arbitrary graph and also it’s NPhard to approximate it within a factor of , unless P=NP [2]. However, unweighted and weighted  vertex cover problems on trees have polynomial time algorithms [2] [3]. The problem has been studied in [6] as  traversal problem which presents a approximation algorithm for the unweighted version. For , the  corresponds to the conventional vertex cover problem. The  is a dual problem to the dissociation number of the graph. Dissociation number is the maximum cardinality of a subset of vertices that induce a subgraph with maximum degree at most 1. [8] provides a approximation algorithm for weighted  and there is a approximation algorithm for  [4].
For the reoptimization version, G. Ausiello et al. present an algorithm for reoptimizing unweighted vertex cover problem. Following the approach in [5], section 2 shows that reoptimization of unweighted  admits a PTAS under the constant number of vertex insertions. In section 3.1, we extend the reoptimization paradigm for weighted vertex cover problem in [5] to weighted . As a use case for the subroutine in section 3.1, we show in section 3.2 that weighted  can be reoptimized with an approximation factor of 1.5 under constant number of vertex insertions. In section 3.3, we present an algorithm for reoptimization version of weighted  on bounded degree graphs under constant number of vertex insertions. For a given approximation algorithm for weighted  , this algorithm achieves an approximation ratio of for such graphs. In Appendix A, we present the hardness results. In Appendix B, we present and approximation algorithms that are used in our algorithm for weighted  .
1.3 Preliminaries
In this paper, the graphs we consider are simple undirected graphs. A graph is a pair of sets , where is the set of vertices and is the set of edges formed by unordered pairs of distinct vertices in . For a vertex , we denote the set of neighbours of in by , where . For any , we define to be the neighbouring set of S in , where and such that . For any , we use to represent the subgraph induced on the vertex set in . Let and denote the vertex set and edge set of respectively. A degree of a vertex is the number of edges incident on it. We use to denote the maximum degree of the vertices in graph . In the case of weighted graphs, with every vertex we associate a positive weight function . For any , let be the weight of the vertex and for any subset , the weight of the subset is . Size of a graph is defined as the number of vertices in it. A constantsize graph is a graph where number of vertices are constant and independent of input parameters of the algorithm. Two graphs are said to be disjoint if they do not share any common vertices.
Let and be two graphs where . Given a set of attachment edges , insertion of into yields the undirected graph , where and . Thus, a constant number of vertex insertions can be realized as a constantsize graph insertion. We define a vertex insertion in as a special case of graph insertion where the inserted graph is a single vertex . In general, we denote as the optimal solution and as the solution output by an algorithm for the corresponding problem on .
Let denote the optimization problem and is the reoptimization version of it. The we consider in this paper is the  vertex cover problem. The input instance of is a triple , where is the old graph, is the new graph and is an optimal solution for on . Let be a known approximation algorithm for . For the algorithms we give, the equality statements are considered as assignment from right to left.
2 Reoptimization of unweighted 
Let be unweighted . We consider the reoptimization version where a constantsize graph is inserted to the old graph to yield the new graph . Let . For a given , we design an algorithm  for that outputs as a solution.
Theorem 0.1
 for under constantsize graph insertion admits a PTAS.
Proof
Since and is a feasible  vertex cover on and respectively, we get
If has size at most , it would have been found in step 7 of . We know,
and is picked when . Thus, approximation factor for using inequality (1) and above observation is,
Further, we analyze the runtime. Enumerating all possible  in a graph of vertices takes time. Thus for a given set , we can decide in polynomial time whether all paths of order are covered by the set. There are subsets of size at most , where . The runtime of the algorithm is , and hence a valid PTAS. Note that the runtime can be improved by using color coding algorithm for finding a  [1], which runs in time.
3.1 Subroutine for Reoptimzation of Weighted 
Let be weighted . be a known approximation algorithm for . In reoptimization version of the problem , a new graph is obtained by inserting a graph to .
Definition: A family , where and of subsets of is called a good family if it satisfies the following two properties:

Property 1: such that and,

Property 2: , covers all the  which contains atleast one vertex from in graph .
We give below a generic algorithm that works on the good family . This family of sets will be constructed in different ways for different problems. The details are provided in the respective sections.
An algorithm for constructs the good family and feeds it to the subroutine . The algorithm  iteratively prepares a solution for each set . The inputs to the algorithm  are: modified graph , inserted graph , old optimal solution , a good family and .
Lemma 1
If is an optimal solution for weighted  for , then for any , .
Proof
If is a feasible  cover for , then for any , is a feasible  cover for .
is a feasible solution for because . Since , . Hence, .
Theorem 0.2
The algorithm  outputs a solution with an approximation factor of , running in steps, where is the approximation factor of a known .
Proof
A graph is inserted to to yield the new graph . By property 1 of the good family , the optimal solution for must include at least one set in , where . Thus, at least one is prepared by the subroutine.
Let be the optimal solution which includes and not . We prepare number of solutions for the graph .
is a feasible  cover for , where feasibility follows from property 2 of the family. We can write the following inequalities:
From above two inequalities,
Another solution is prepared. From Lemma 1 and construction of , we can write the following inequality:
Since , adding and , we get
Minimum weighted subset between and is chosen to be . Then,
We have prepared a set of number of solutions that is, . By definition of and property 2 of good family , we get that, if , then . By the property 1 of , there exists an such that . Hence, the following inequality for such an holds true:
We know, . So,
Thus, algorithm  outputs a solution with an approximation factor of . Note that step 3 of the algorithm takes time. Moreover, if the running time of on input graph is , then the running time of algorithm  is .
3.2 Reoptimization of weighted 
Let be weighted . A constantsize graph is inserted to to yield the new graph . Let denote the runtime of approximation algorithm [8] for . Let .
Theorem 0.3
Algorithm  is a approximation for under constantsize graph insertion.
Proof
The algorithm works in 3 phases to construct the good family . The algorithm prepares a subset for each feasible  cover for because the optimal solution for must contain one subset among the feasible ’s. In the first phase, if an edge in has a neighbour in , it must be included in .
Let . In the second phase , is made free from all  by removing a feasible subset . In the third phase, the neighbours of the vertices in are included in because such a neighbour will form  with the vertices in and .
Since we consider all feasible subsets and feasible for the corresponding , the constructed family satisfies both the properties of good family. Thus from Theorem 2 and , we get the desired approximation. Further, we analyze the running time. Let . The maximum cardinality of is . Then, the steps 3 to 12 in the algorithm run in because . Thus . Hence the algorithm  runs in .
3.3 Reoptimization of weighted  for bounded degree graphs
A graph free from  contains only isolated vertices. A graph that does not have any  contains isolated vertices and isolated edges. But, in the case of graphs that are free from  (), star graph is a possible component. As the number of subsets needed to be considered for preparation of would be exponential in the vertex degree, we restrict the reoptimization of weighted  to bounded degree graphs. Lemma 3 in Appendix A shows that the problem on bounded degree graphs is NPcomplete.
The local modification which we consider for reoptimization is constantsize graph insertion. Let be the old graph. Given , constantsize graph and attachment edges , the new graph is obtained. Let and . Let the maximum degree of the graph be . We use to denote the collection of  in graph containing at least one vertex from . For a set of vertices , a graph is said to be connected graph if every connected component in the graph contains at least one vertex from . Let be a approximation algorithm for weighted  and be the running time of on .
Definition: We define a variation of on a graph , where traversal starts by enqueuing a set of vertices instead of a single root vertex. Initially, all the vertices in are at the same level and unvisited. Now the unvisited nodes are explored in breadth first manner. In this variation, we obtain the forest for the input , where the vertices of are at level 1 and the subsequent levels signify the order in which the vertices are explored.
Consider the forest obtained from in . We use to denote the set of vertices at level of the forest. Let , where and . Then for . Note that this forest has number of disjoint trees, where the trees have distinct root vertices from .
Lemma 2
In a forest obtained after performing traversal from a set of vertices in a graph having no , the number of vertices at each level is at most .
Proof
Consider the case when is performed from a single vertex set to obtain a tree. For any level , . Thus the statement holds true for . For the case when , let . We claim that there exists a vertex in such that is a common ancestor for all the vertices in . Assume to contrary that the claim is false. If the claim is trivially true. Otherwise we have two distinct vertices and such that they have the lowest common ancestor in , where . This imposes a path of order . But it contradicts the fact that has no paths of order or more. Hence .
Now, when is performed for the case when , the forest obtained has number of disjoint trees where each tree satisfies the above argument. Hence the number vertices in each level in the forest is at most
Theorem 0.4
Algorithm  is a approximation for under graph insertion and runs in , where and .
Proof
We first prove that for every call to the function
, the following invariants on , and are maintained:

and is a kpath free connected graph.

is the set of neighbours of in

L is the set of neighbours of in graph that are also in , i.e .
The above invariants trivially hold true during the first call to the function . Assuming the invariants to be true during a call to , we show that the subsequent recursive calls maintain the invariants. Note that the parameter is incremented to during the recursive call. is a kpath free connected subgraph in . Also, because and . The invariance property of and implies is the set of neighbours of in . From previous observation about and , we get that is the set of neighbours of in which are also in . Thus, the invariants are maintained.
Note that covers all the paths in . is a  cover for because the paths in contain at least one vertex from . Thus, is included in to satisfy property 2 of good family.
By Lemma 2, it is sufficient to consider non empty subsets of size at most from subsequent level to construct . For each recursive call, the case when or is empty is handled in the step 1. A connected graph that has no  will have a maximum level of in the forest. The algorithm explores all feasible subsets for each . Thus the property 1 of good family holds true for , because the family includes all possibilities for that covers . Thus, the constructed family is indeed a good family.
Let be the running time of the function , where is the parameter . Let . Observe that due to the construction of in the previous recursion. As we are choosing sets of size at most from , we get the recursion for and . Thus step 6 in  runs in time. In each function call, is incremented by one element. Thus, because for each level. Note that . Hence using Theorem , the algorithm  runs in = and achieves the desired approximation.
Using  algorithm for weighted  [4] and Theorem , we get the following corollary:
Corollary 1
Algorithm  is a approximation for under constantsize graph insertion, where and is .
In Appendix B, we present approximation algorithms for weighted  vertex cover problem. The approximation algorithm runs in time, where is the size of input graph. The approximation algorithm is a primal dual based algorithm. Using Theorems 5 and 6 of Appendix, we get the following corollaries:
Corollary 2
Algorithm  is a approximation for under constantsize graph insertion, where and is .
Corollary 3
Algorithm  is a approximation for under constantsize graph insertion, where and is .
Note that the algorithm only explores the vertices till level that is, the vertices in the set . Thus is at most . Therefore the algorithm will also run efficiently for the scenarios where the graph is attached to a part of , that is for .
Corollary 4
Algorithm  is a approximation for under graph insertion, where
Comments
There are no comments yet.