English

Approximation Algorithms for Covering/Packing Integer Programs

Data Structures and Algorithms 2015-06-02 v2 Discrete Mathematics

Abstract

Given matrices A and B and vectors a, b, c and d, all with non-negative entries, we consider the problem of computing min {c.x: x in Z^n_+, Ax > a, Bx < b, x < d}. We give a bicriteria-approximation algorithm that, given epsilon in (0, 1], finds a solution of cost O(ln(m)/epsilon^2) times optimal, meeting the covering constraints (Ax > a) and multiplicity constraints (x < d), and satisfying Bx < (1 + epsilon)b + beta, where beta is the vector of row sums beta_i = sum_j B_ij. Here m denotes the number of rows of A. This gives an O(ln m)-approximation algorithm for CIP -- minimum-cost covering integer programs with multiplicity constraints, i.e., the special case when there are no packing constraints Bx < b. The previous best approximation ratio has been O(ln(max_j sum_i A_ij)) since 1982. CIP contains the set cover problem as a special case, so O(ln m)-approximation is the best possible unless P=NP.

Keywords

Cite

@article{arxiv.cs/0205030,
  title  = {Approximation Algorithms for Covering/Packing Integer Programs},
  author = {Stavros G. Kolliopoulos and Neal E. Young},
  journal= {arXiv preprint arXiv:cs/0205030},
  year   = {2015}
}

Comments

Preliminary version appeared in IEEE Symposium on Foundations of Computer Science (2001). To appear in Journal of Computer and System Sciences