A polynomial time approximation schema for maximum k-vertex cover in bipartite graphs

09/18/2019 ∙ by Vangelis Th. Paschos, et al. ∙ Université Paris-Dauphine 0

The paper presents a polynomial time approximation schema for the edge-weighted version of maximum k-vertex cover problem in bipartite graphs.



There are no comments yet.


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

The max -vertex cover problem is defined as follows: given a graph  of order  and a constant , determine  vertices that cover a maximum number of edges. In the (edge-)weighted version of the max -vertex cover, weights are associated with the edges and the objective is to determine  vertices that maximize the total weight of the edges covered by them. The problem is -hard even in bipartite graphs [2, 4].

max -vertex cover is a well-known restriction of max -set cover problem where we are given a family of subsets  over a set of elements  and an integer  and the objective is to determine a subfamily  of cardinality , covering a maximum number of elements from . Analogously, in the weighted version of max -set cover, the elements of  are provided with positive weights and the objective becomes to determine  sets that maximize the total weight of the covered elements.

Both max -set cover and max -vertex cover are well-known problems met in many real-world applications since they model several very natural facility location problems. In particular max -vertex cover is used for modeling problems in areas such as databases, social networks, sensor placement, information retrieval, etc. A non-exhaustive list of references to such applications can be found in [3].

To the best of our knowledge, the approximation of max -set cover has been studied for the first time in the late seventies by Cornuejols et al. [5], where an approximation ratio () is proved for the natural greedy algorithm, consisting of iteratively choosing the currently largest-cardinality set, until  sets are included in the solution. max -vertex cover being a restriction of max -set cover, the same ratio is achieved for the former problem also and this ratio is tight in (weighted) bipartite graphs [3]. A more systematic study of the greedy approximation of max -vertex cover can be found in [7]. In [6] it has been proved that the greedy algorithm also achieves ratio . In the same paper, a very simple randomized algorithm is presented, that achieves approximation ratio

. Using a sophisticated linear programming method, the approximation ratio for

max -vertex cover, in general graphs was improved to  [1]; this ratio remained the best known one in general graphs until 2018, when [8] proposed a 0.92-approximation for the problem. Obvously, this ratio remains valid for bipartite graphs. For this class, the best ratio (still based on linear programming) known before [8] was  ([4]). The complexity of this -approximation algorithm is not given in [4]; a rough evaluation of it, gives a complexity of , where  and  are the two color-classes of  (), which is bounded above by . Finally, max -vertex cover being a generalisation of min vertex cover, its inapproximability by polynomial time approximation schemata (PTAS) in general graphs is immediately derived from the corresponding inapproximability of the latter, ([9]).

Let us note that unweighted max -vertex cover is easy in semi-regular bipartite graphs (where all the vertices of each color class have the same degree). Indeed, any vertices in the color class of maximum degree yield an optimal solution. Obviously, if this color class contains less than vertices, then one can cover all the edges.

In this paper, we propose a PTAS for max -vertex cover in bipartite graphs.

The following notations will be used in what follows:

  • : an edge-weighted bipartite graph instance of max -vertex cover (

    is a weight-vector of dimension 


  • an optimal solution of max -vertex cover and  the subsets of  lying in the color-classes  and , respectively;

  • and  the numbers of the optimal vertices in  and , respectively; ; we assume that ;

  • the value of an optimal solution (i.e., the value of the total coverage capacity of ); the total coverage capacity of ; we set , denotes the private coverage capacity of , i.e., the edges already covered by  are not encountered there; obviously, ;

  • for a vertex-set cardinality  ():

    • denotes the total weight of the edges covered by the members of  covering a maximum weight of edges (the best -elements subset of ; , );

    • denotes the total weight of the edges covered by the members of  covering a minimum weight of edges (the worst -elements subset of );

  • : the approximation ratio of a known max -vertex cover-algorithm.

The following proposition holds and will be frequently used in what follows.

Proposition 1

. For any set  of optimal vertices:

Let us note that values of  and  can be guessed in polynomial time. We simply run the algorithm specified below for any possible pair of integers  an  such that and take the best result of these runnings. One of the results will be obtained for the pair  and the solution returned will dominate the one for this particular pair. It is easy to see that this procedure takes, at worst,  time. In what follows we will reason w.r.t. to the solution obtained for pair .

In what follows, we consider that the vertices of  and  are ordered in decreasing order w.r.t. their initial coverage capacity. Also, we call “best” vertices, a set of vertices that cover the largest total weight of uncovered edges in .

2 A preliminary result

The following proposition shows that we can consider that the values of  are polynomially bounded. Denote by max -vertex cover() the instances of max -vertex cover where edge-weights are bounded above by , for a fixed constant .

Proposition 2

. There exists an approximation-preserving reduction between max -vertex cover and max -vertex cover().

Proof. Consider an instance of max -vertex cover and produce an instance of max -vertex cover() where , and  remain the same and any element  of  is transformed in in , where  is the maximum of the values in . It is easy to see that all the elements in  are bounded above by  and that the transformation of  into  can be done in polynomial time.

Assume now that there exists a polynomial -approximation algorithm A for max -vertex cover() computing a solution  consisting of  edges of total weight  and denote by  the optimal value for the problem. Denote by  the edge-set of an optimal solution of  and by the weights of its edges; obviously . We then have:


where inequalities in (2) hold because the maximum number of edges in a bipartite graph of order  is bounded above by .

Combining (1) and (2) and using the fact that max -vertex cover() is polynomial time -approximable, i.e., , one can easily conclude that in this case max -vertex cover is polynomially approximable within ratio  

3 Improving an approximation ratio 

The following proposition gives a lower bound for , for any , that will be used later (it is easy to see that, symmetrically, the same holds also for ).

Proposition 3

where  is an upper bound of the approximation ratio of Algorithm 1.

Proof. Denote by A a -approximation algorithm for max -vertex cover, fix an integer and run Algorithm 1.

Input: A bipartite graph  and a constant
Output: A -vertex cover of 
  1. remove the best (first)  vertices from  together with their incident edges; let  the remaining graph;

  2. run A on  to solve max ()-vertex cover;

  3. add to the result of step 2 the  vertices removed in step 1;

  4. return the so computed solution SOL1.

Algorithm 1

Step 1 of Algorithm 1 deletes a subset  of optimal vertices members of 

together with their (optimal) incident edges and, probably, another set of optimal edges incident to a subset of

belonging to . Step 2 deletes from , additional optimal vertices. After Steps 1 and 2, the optimal value is at least:

Finally, Step 3 produces a solution SOL1 with value:


Since , (4) becomes:



Consider now the following Algorithm 2.

Input: A bipartite graph  and a constant
Output: A -vertex cover of 
  1. fix a constant ;

  2. for downto  do

    1. run A with ;

let SOL() the solution obtained and  its value;
  • complete SOL() by adding the  best vertices either from , or from 

  • and store it;
  • for downto  do

    1. compute all the sets on  vertices from  and store them together with

  • the edges covered by any of them;
  • for any such set  do

    1. delete it from  together with the edges covered by it and solve

  • max -vertex cover in the remaining graph;
  • add  together with the edges covered by its vertices

  • in the solution computed during the previous step, producing so
    a solution for max -vertex cover on ;
  • store the solution computed;

  • output the best among the solutions so computed.

  • Algorithm 2
    Theorem 1

    The approximation ratio of Algorithm 2 is:

    Proof. Consider Step (2b) of Algorithm 2. If SOL() leaves outside at least  optimal vertices, then either , or contains a set  of at least  optimal vertices with a coverage capacity at least . So, in this case, by adding the  best vertices either from , or from  and taking into account Proposition 1, Algorithm 2 builds a solution with value at least:


    Let now assume that Step 2b of Algorithm 2 leaves outside less than  optimal vertices. If there exist  vertices (outside of the solution computed) either in , or in , with coverage capacity at least , then the solution computed in Step 2b adds in the solution an additional coverage capacity at least  and the discussion just above always holds.

    So, the case remaining to be handled, is the one where:



    For example, suppose that (5) occurs for (). Then, following (3):


    and embedding (7) in (5), one obtains a ratio:

    which, after some easy algebra becomes:


    Consider now the very simple algorithm consisting of taking the  first best vertices of  (recall that vertices in   are ordered in decreasing order with respect to their coverage capacity). It guarantees at least . So:


    Combining (8) and (9) one gets, after some easy algebra:


    Let now consider the other extreme case where Step (2b) of Algorithm 2 leaves outside less than  optimal vertices for any  from  down to . In this case (6) holds for any execution of Step 2 of the algorithm. Then, in Step 3, Algorithm 2 guarantees ratio:

    which gives:


    Assume now that from to , Step (2b) of Algorithm 2 leaves outside less than  optimal vertices and that for Step (2b) of Algorithm 2 leaves outside more than  optimal vertices. This means (following (6)) that until the -th execution of Step 2, and at the -th execution (),  becomes smaller than . Denote by  the coverage capacity of a vertex and consider the sum , for any . Obviously, there exists at least a such that: , which implies . We can assume that . Indeed, if , then Step 3 of Algorithm 2 computes a set  of coverage capacity at least  and then discussion above concludes to a ratio:


    Assuming we get:


    Following the discussion above, for the value  of the so-produced solution holds:

    Solving the inequality:

    one gets:


    Some very simple algebra concludes that the lower bound for  given in (10) is the smallest among the ones given in (10), (11), (12) and (14).

    The proof of the theorem is now concluded.  

    4 A PTAS for max -vertex cover

    Input: A bipartite graph  and a constant
    Output: A -vertex cover of 
    fix a constant ;
    for i:= 1 to  do
           run Algorithm 2 to solve max -vertex cover on  by using Algorithm 2 itself as A;
           *for  A is used*
    end for
    return the solution computed.
    Algorithm 3 A polynomial time approximation schema for max -vertex cover in bipartite graphs

    Revisit (10). Some easy algebra allows to conclude that:


    and this quantity is decreasing with .

    Consider now Algorithm 3 and denote by , the ratio of A (), by , the ratio of Algorithm 3 after the -th execution of the loop for and by  the ratio of Algorithm 3 after the last execution. Suppose also that the for loop of Algorithm 3 is executed  times. Then, taking 15, into account:


    For facility, in what follows, we work with equality in (10), we set and suppose that the loop for of Algorithm 3 is executed  times. Setting in (10), and we have, after some easy algebra:


    Combining (16) and (17)

    Since the discussion just above holds for any fixed constant , the following theorem holds immediately.

    Theorem 2

    . max -vertex cover in bipartite graphs admits a polynomial time approximation schema.


    The very useful discussions with Cécile Murat, Federico Della Croce, Michael Lampis and Aristotelis Giannakos are gratefully acknowledged.


    • [1] A. A. Ageev and M. Sviridenko. Approximation algorithms for maximum coverage and max cut with given sizes of parts. In G. Cornuéjols, R. E. Burkard, and G. J. Woeginger, editors,

      Proc. Conference on Integer Programming and Combinatorial Optimization, IPCO’99

      , volume 1610 of Lecture Notes in Computer Science, pages 17–30. Springer-Verlag, 1999.
    • [2] N. Apollonio and B. Simeone. The maximum vertex coverage problem on bipartite graphs. Discrete Appl. Math., 165:37–48, 2014.
    • [3] A. Badanidiyuru, R. Kleinberg, and H. Lee. Approximating low-dimensional coverage problems. In T. K. Dey and S. Whitesides, editors, Proc. Symposuim on Computational Geometry, SoCG’12, Chapel Hill, NC, pages 161–170. ACM, 2012.
    • [4] B. Caskurlu, V. Mkrtchyan, O. Parekh, and K. Subramani. Partial vertex cover and budgeted maximum coverage in bipartite graphs. SIAM J. Discrete Math., 31(3):2172–2184, 2017.
    • [5] G. Cornuejols, M. L. Fisher, and G. L. Nemhauser. Location of bank accounts to optimize float: an analytic study of exact and approximate algorithms. Management Sci., 23(8):789–810, 1977.
    • [6] Q. Han, Y. Ye, H. Zhang, and J. Zhang. On approximation of max-vertex-cover. European J. Oper. Res., 143:342–355, 2002.
    • [7] D. S. Hochbaum and A. Pathria. Analysis of the greedy approach in problems of maximum -coverage. Naval Research Logistics, 45:615–627, 1998.
    • [8] Pasin Manurangsi. A note on max k-vertex cover: faster fpt-as, smaller approximate kernel and improved approximation. CoRR, abs/1810.03792, 2018.
    • [9] E. Petrank. The hardness of approximation: gap location. Computational Complexity, 4:133–157, 1994.