A (5/3 + ε)-approximation for unsplittable flow on a path: placing small tasks into boxes

In the unsplittable flow on a path problem (UFP) we are given a path with edge capacities and a collection of tasks. Each task is characterized by a subpath, a profit, and a demand. Our goal is to compute a maximum profit subset of tasks such that, for each edge e, the total demand of selected tasks that use e does not exceed the capacity of e. The current best polynomial-time approximation factor for this problem is 2+є for any constant є>0 [Anagostopoulos et al.-SODA 2014]. This is the best known factor even in the case of uniform edge capacities [Călinescu et al.-IPCO 2002, TALG 2011]. These results, likewise most prior work, are based on a partition of tasks into large and small depending on their ratio of demand to capacity over their respective edges: these algorithms invoke (1+є)-approximations for large and small tasks separately. The known techniques do not seem to be able to combine a big fraction of large and small tasks together (apart from some special cases and quasi-polynomial-time algorithms). The main contribution of this paper is to overcome this critical barrier. Namely, we present a polynomial-time algorithm that obtains roughly all profit from the optimal large tasks plus one third of the profit from the optimal small tasks. In combination with known results, this implies a polynomial-time (5/3+є)-approximation algorithm for UFP. Our algorithm is based on two main ingredients. First, we prove that there exist certain sub-optimal solutions where, roughly speaking, small tasks are packed into boxes. To prove that such solutions can yield high profit we introduce a horizontal slicing lemma which yields a novel geometric interpretation of certain solutions. The resulting boxed structure has polynomial complexity, hence cannot be guessed directly. Therefore, our second contribution is a dynamic program that guesses this structure (plus a packing of large and small tasks) on the fly, while losing at most one third of the profit of the remaining small tasks.

[1]  Esther M. Arkin,et al.  Scheduling jobs with fixed start and end times , 1987, Discret. Appl. Math..

[2]  Fabrizio Grandoni,et al.  A Mazing 2+∊ Approximation for Unsplittable Flow on a Path , 2014, SODA.

[3]  Baruch Schieber,et al.  A quasi-PTAS for unsplittable flow on line graphs , 2006, STOC '06.

[4]  Fabrizio Grandoni,et al.  To Augment or Not to Augment: Solving Unsplittable Flow on a Path by Creating Slack , 2017, SODA.

[5]  Fabrizio Grandoni,et al.  Constant Integrality Gap LP Formulations of Unsplittable Flow on a Path , 2013, IPCO.

[6]  Nikhil Bansal,et al.  A logarithmic approximation for unsplittable flow on line graphs , 2014, TALG.

[7]  Cynthia A. Phillips,et al.  Off-line admission control for general scheduling problems , 2000, SODA '00.

[8]  Reuven Bar-Yehuda,et al.  A unified approach to approximating resource allocation and scheduling , 2000, STOC '00.

[9]  Chandra Chekuri,et al.  Unsplittable Flow in Paths and Trees and Column-Restricted Packing Integer Programs , 2009, APPROX-RANDOM.

[10]  Anamitra R. Choudhury,et al.  Improved Algorithms for Resource Allocation under Varying Capacity , 2014, ESA.

[11]  Mihalis Yannakakis,et al.  Primal-dual approximation algorithms for integral flow and multicut in trees , 1997, Algorithmica.

[12]  Refael Hassin,et al.  Allocation of bandwidth and storage , 2002 .

[13]  Amit Kumar,et al.  New Approximation Schemes for Unsplittable Flow on a Path , 2015, SODA.

[14]  Paul S. Bonsma,et al.  A Constant Factor Approximation Algorithm for Unsplittable Flow on Paths , 2011, FOCS.

[15]  Marek Chrobak,et al.  Caching Is Hard - Even in the Fault Model , 2010, ESA.

[16]  Andreas Wiese,et al.  Submodular unsplittable flow on trees , 2016, IPCO.

[17]  Fabrizio Grandoni,et al.  Improved Approximation Algorithms for Unsplittable Flow on a Path with Time Windows , 2015, WAOA.

[18]  Fabrizio Grandoni,et al.  A Mazing 2+ε Approximation for Unsplittable Flow on a Path , 2018, ACM Trans. Algorithms.

[19]  Yuval Rabani,et al.  An improved approximation algorithm for resource allocation , 2011, TALG.

[20]  Amit Kumar,et al.  Approximation Algorithms for the Unsplittable Flow Problem , 2002, Algorithmica.

[21]  Andrea Vitaletti,et al.  Approximation Algorithms for Bandwidth and Storage Allocation Problems under Real Time Constraints , 2000, FSTTCS.

[22]  Chandra Chekuri,et al.  Multicommodity demand flow in a tree and packing integer programs , 2007, TALG.

[23]  Alexander Schrijver,et al.  Combinatorial optimization. Polyhedra and efficiency. , 2003 .

[24]  Ulrich Pferschy,et al.  Resource allocation with time intervals , 2010, Theor. Comput. Sci..

[25]  Dror Rawitz,et al.  Resource Allocation in Bounded Degree Trees , 2007, Algorithmica.