A Fast Parallel Implementation of a PTAS for Fractional Packing and Covering Linear Programs

We present a parallel implementation of the randomized $$(1+\varepsilon )$$(1+ε) approximation algorithm for packing and covering linear programs presented by Koufogiannakis and Young (2007). Their approach builds on ideas of the sublinear time algorithm of Grigoriadis and Khachiyan’s (Oper Res Lett 18(2):53–58, 1995) and Garg and Könemann’s (SIAM J Comput 37(2):630–652, 2007) non-uniform-increment amortization scheme. With high probability it computes a feasible primal and dual solution whose costs are within a factor of $$1+\varepsilon $$1+ε of the optimal cost. In order to make their algorithm more parallelizable we also implemented a deterministic version of the algorithm, i.e. instead of updating a single random entry at each iteration we updated deterministically many entries at once. This slowed down a single iteration of the algorithm but allowed for larger step-sizes which lead to fewer iterations. We use NVIDIA’s parallel computing architecture CUDA for the parallel environment. We report a speedup between one and two orders of magnitude over the times reported by Koufogiannakis and Young (2007).

[1]  Seungjoon Lee,et al.  Content Placement via the Exponential Potential Function Method , 2013, IPCO.

[2]  James King,et al.  A 4-Approximation Algorithm for Guarding 1.5-Dimensional Terrains , 2006, LATIN.

[3]  Joseph S. B. Mitchell,et al.  A Constant-Factor Approximation Algorithm for Optimal 1.5D Terrain Guarding , 2007, SIAM J. Comput..

[4]  K. Mehlhorn,et al.  Optimal Algorithms for Generating Discrete Random Variables with Changing Distributions , 1992 .

[5]  Jason Sanders,et al.  CUDA by example: an introduction to general purpose GPU programming , 2010 .

[6]  Jochen Könemann,et al.  Faster and Simpler Algorithms for Multicommodity Flow and Other Fractional Packing Problems , 2007, SIAM J. Comput..

[7]  Neal E. Young,et al.  Sequential and parallel algorithms for mixed packing and covering , 2001, Proceedings 2001 IEEE International Conference on Cluster Computing.

[8]  Joseph S. B. Mitchell,et al.  A constant-factor approximation algorithm for optimal terrain guarding , 2005, SODA '05.

[9]  Leonid Khachiyan,et al.  A sublinear-time randomized approximation algorithm for matrix games , 1995, Oper. Res. Lett..

[10]  Baruch Awerbuch,et al.  A Distributed Algorithm for Large-Scale Generalized Matching , 2013, Proc. VLDB Endow..

[11]  S. Sitharama Iyengar,et al.  Introduction to parallel algorithms , 1998, Wiley series on parallel and distributed computing.

[12]  Jie Cheng,et al.  CUDA by Example: An Introduction to General-Purpose GPU Programming , 2010, Scalable Comput. Pract. Exp..

[13]  Daniel Bienstock,et al.  Potential Function Methods for Approximately Solving Linear Programming Problems: Theory and Practice , 2002 .

[14]  Baruch Awerbuch,et al.  Stateless Distributed Gradient Descent for Positive Linear Programs , 2009, SIAM J. Comput..

[15]  Éva Tardos,et al.  Fast Approximation Algorithms for Fractional Packing and Covering Problems , 1995, Math. Oper. Res..

[16]  Jeffrey Scott Vitter,et al.  Dynamic Generation of Discrete Random Variates , 1993, SODA '93.

[17]  Aleksander Madry,et al.  Faster approximation schemes for fractional multicommodity flow problems via dynamic graph algorithms , 2010, STOC '10.

[18]  Sanjeev Arora,et al.  The Multiplicative Weights Update Method: a Meta-Algorithm and Applications , 2012, Theory Comput..

[19]  MICHAEL D. GRIGORIADIS,et al.  An Interior Point Method for Bordered Block-Diagonal Linear Programs , 1996, SIAM J. Optim..

[20]  Kurt Mehlhorn,et al.  Maintaining Discrete Probability Distributions Optimally , 1993, ICALP.

[21]  Joseph JáJá,et al.  An Introduction to Parallel Algorithms , 1992 .

[22]  Kunle Olukotun,et al.  Accelerating CUDA graph algorithms at maximum warp , 2011, PPoPP '11.

[23]  Khaled M. Elbassioni,et al.  Improved Approximations for Guarding 1.5-Dimensional Terrains , 2009, Algorithmica.

[24]  Danny Ziyi Chen,et al.  Optimal guarding of polygons and monotone chains , 1995, CCCG.

[25]  Robert R. Meyer,et al.  An Interior Point Method for Block Angular Optimization , 1991, SIAM J. Optim..

[26]  Neal E. Young K-medians, facility location, and the Chernoff-Wald bound , 2000, SODA '00.

[27]  Christos Koufogiannakis,et al.  A Nearly Linear-Time PTAS for Explicit Fractional Packing and Covering Linear Programs , 2013, Algorithmica.

[28]  Noam Nisan,et al.  A parallel approximation algorithm for positive linear programming , 1993, STOC.

[29]  Oded Regev,et al.  Simulating Quantum Correlations with Finite Communication , 2007, FOCS.