Approximation and Online Algorithms for Multidimensional Bin Packing: a Survey✩
Total Page:16
File Type:pdf, Size:1020Kb
Computer Science Review 24 (2017) 63–79 Contents lists available at ScienceDirect Computer Science Review journal homepage: www.elsevier.com/locate/cosrev Survey Approximation and online algorithms for multidimensional bin packing: A surveyI Henrik I. Christensen a, Arindam Khan b,∗,1, Sebastian Pokutta c, Prasad Tetali c a University of California, San Diego, USA b Istituto Dalle Molle di studi sull'Intelligenza Artificiale (IDSIA), Scuola universitaria professionale della Svizzera italiana (SUPSI), Università della Svizzera italiana (USI), Switzerland c Georgia Institute of Technology, Atlanta, USA article info a b s t r a c t Article history: The bin packing problem is a well-studied problem in combinatorial optimization. In the classical bin Received 13 August 2016 packing problem, we are given a list of real numbers in .0; 1U and the goal is to place them in a minimum Received in revised form number of bins so that no bin holds numbers summing to more than 1. The problem is extremely important 23 November 2016 in practice and finds numerous applications in scheduling, routing and resource allocation problems. Accepted 20 December 2016 Theoretically the problem has rich connections with discrepancy theory, iterative methods, entropy Available online 16 January 2017 rounding and has led to the development of several algorithmic techniques. In this survey we consider approximation and online algorithms for several classical generalizations of bin packing problem such Keywords: Approximation algorithms as geometric bin packing, vector bin packing and various other related problems. There is also a vast Online algorithms literature on mathematical models and exact algorithms for bin packing. However, this survey does not Multidimensional packing and covering address such exact algorithms. Bin packing In two-dimensional geometric bin packing, we are given a collection of rectangular items to be Multidimensional scheduling packed into a minimum number of unit size square bins. This variant has a lot of applications in cutting Geometric packing stock, vehicle loading, pallet packing, memory allocation and several other logistics and robotics related problems. In d-dimensional vector bin packing, each item is a d-dimensional vector that needs to be packed into unit vector bins. This problem is of great significance in resource constrained scheduling and in recent virtual machine placement in cloud computing. We also consider several other generalizations of bin packing such as geometric knapsack, strip packing and other related problems such as vector scheduling, vector covering etc. We survey algorithms for these problems in offline and online setting, and also mention results for several important special cases. We briefly mention related techniques used in the design and analysis of these algorithms. In the end we conclude with a list of open problems. ' 2016 Elsevier Inc. All rights reserved. Contents 1. Introduction........................................................................................................................................................................................................................ 64 1.1. Organization of the Survey.................................................................................................................................................................................... 65 2. Preliminaries ...................................................................................................................................................................................................................... 65 2.1. Approximation algorithms and inapproximability ............................................................................................................................................. 65 2.2. One dimensional bin packing................................................................................................................................................................................ 66 2.2.1. Offline 1-D bin packing .......................................................................................................................................................................... 66 I This research was supported by NSF EAGER award grants CCF-1415496 and CCF-1415498. ∗ Corresponding author. E-mail addresses: [email protected] (H.I. Christensen), [email protected] (A. Khan), [email protected] (S. Pokutta), [email protected] (P. Tetali). 1 Supported by SNF Grant 200021_159697/1. A part of this work was done when the author was at Georgia Institute of Technology. http://dx.doi.org/10.1016/j.cosrev.2016.12.001 1574-0137/' 2016 Elsevier Inc. All rights reserved. 64 H.I. Christensen et al. / Computer Science Review 24 (2017) 63–79 2.2.2. Online 1-D bin packing........................................................................................................................................................................... 67 2.3. Multidimensional bin packing .............................................................................................................................................................................. 67 2.3.1. Geometric packing.................................................................................................................................................................................. 67 2.3.2. Vector packing ........................................................................................................................................................................................ 67 2.3.3. Relation between the problems............................................................................................................................................................. 68 2.4. Techniques ............................................................................................................................................................................................................. 68 2.4.1. NextFitDecreasingHeight (NFDH)....................................................................................................................................................... 68 2.4.2. Steinberg's Packing................................................................................................................................................................................. 68 2.4.3. Configuration LP ..................................................................................................................................................................................... 69 2.4.4. Algorithms based on rounding items to constant number of types.................................................................................................... 69 2.4.5. Round and Approx (R&A) Framework................................................................................................................................................... 70 3. Geometric bin packing....................................................................................................................................................................................................... 70 3.1. Geometric bin packing .......................................................................................................................................................................................... 70 3.2. Online packing ....................................................................................................................................................................................................... 71 3.3. Square packing....................................................................................................................................................................................................... 71 3.4. Resource augmentation......................................................................................................................................................................................... 71 3.5. Strip packing .......................................................................................................................................................................................................... 71 3.6. Shelf and guillotine packing.................................................................................................................................................................................. 72 3.7. Geometric knapsack .............................................................................................................................................................................................. 73 3.8. Other related problems ......................................................................................................................................................................................... 73 4. Vector bin packing ............................................................................................................................................................................................................. 73 4.1. Offline vector packing............................................................................................................................................................................................ 74 4.2. Online vector packing...........................................................................................................................................................................................