Abstract
We study the storage allocation problem (SAP) which is a variant of the unsplittable flow problem on paths (UFPP). A SAP instance consists of a path P= (V, E) and a set J of tasks. Each edge e∈ E has a capacity ce and each task j∈ J is associated with a path Ij in P, a demand dj and a weight wj. The goal is to find a maximum weight subset S⊆ J of tasks and a height function h: S→ R+ such that (i) h(j) + dj≤ ce, for every e∈ Ij; and (ii) if j, i∈ S such that Ij∩ Ii≠ ∅ and h(j) ≥ h(i) , then h(j) ≥ h(i) + di. SAP can be seen as a rectangle packing problem in which rectangles can be moved vertically, but not horizontally. We present a polynomial time (9 + ε) -approximation algorithm for SAP. Our algorithm is based on a variation of the framework for approximating UFPP by Bonsma et al. [FOCS 2011] and on a (4 + ε) -approximation algorithm for δ-small SAP instances (in which dj≤ δ· ce, for every e∈ Ij, for a sufficiently small constant δ> 0). In our algorithm for δ-small instances, tasks are packed carefully in strips in a UFPP manner, and then a (1 + ε) factor is incurred by a reduction from SAP to UFPP in strips. The strips are stacked to form a SAP solution. Finally, we provide a (10 + ε) -approximation algorithm for SAP on ring networks.
Original language | English |
---|---|
Pages (from-to) | 1105-1127 |
Number of pages | 23 |
Journal | Algorithmica |
Volume | 77 |
Issue number | 4 |
DOIs | |
State | Published - 1 Apr 2017 |
Bibliographical note
Publisher Copyright:© 2016, Springer Science+Business Media New York.
Keywords
- Approximation algorithms
- Bandwidth allocation
- Rectangle packing
- Storage allocation
- Unsplittable flow