Abstract
Packing rings into a minimum number of rectangles is an optimization problem which appears naturally in the logistics operations of the tube industry. It encompasses two major difficulties, namely the positioning of rings in rectangles and the recursive packing of rings into other rings. This problem is known as the Recursive Circle Packing Problem (RCPP). We present the first dedicated method for solving RCPP that provides strong dual bounds based on an exact Dantzig–Wolfe reformulation of a nonconvex mixed-integer nonlinear programming formulation. The key idea of this reformulation is to break symmetry on each recursion level by enumerating one-level packings, i.e., packings of circles into other circles, and by dynamically generating packings of circles into rectangles. We use column generation techniques to design a “price-and-verify” algorithm that solves this reformulation to global optimality. Extensive computational experiments on a large test set show that our method not only computes tight dual bounds, but often produces primal solutions better than those computed by heuristics from the literature.
Similar content being viewed by others
References
Achterberg, T. (2007). Constraint integer programming. Ph.D. thesis, Technische Universität Berlin.
Bergner, M., Caprara, A., Ceselli, A., Furini, F., Lübbecke, M. E., Malaguti, E., et al. (2015). Automatic Dantzig–Wolfe reformulation of mixed integer programs. Mathematical Programming, 149(1–2), 391–424.
Castillo, I., Kampas, F. J., & Pintér, J. D. (2008). Solving circle packing problems by global optimization: Numerical results and industrial applications. European Journal of Operational Research191(3), 786–802. http://EconPapers.repec.org/RePEc:eee:ejores:v:191:y:2008:i:3:p:786-802.
COIN-OR: CppAD, a package for differentiation of CPP Algorithms. http://www.coin-or.org/CppAD. Accessed 2014.
COIN-OR: Ipopt, Interior point optimizer. http://www.coin-or.org/Ipopt. Accessed 2016.
Costa, A., Hansen, P., & Liberti, L. (2013). On the impact of symmetry-breaking constraints on spatial branch-and-bound for circle packing in a square. Discrete Applied Mathematics, 161(1–2), 96–106. https://doi.org/10.1016/j.dam.2012.07.020. http://www.sciencedirect.com/science/article/pii/S0166218X12002855.
Dantzig, G. B., & Wolfe, P. (1960). Decomposition principle for linear programs. Operations Research8(1), 101–111. http://www.jstor.org/stable/167547.
Demaine, E. D., Fekete, S. P., & Lang, R. J. (2010). Circle packing for origami design is hard. arXiv preprint arXiv:1008.1224.
Desaulniers, G., Desrosiers, J., & Solomon, M. M. (2006). Column generation (Vol. 5). Berlin: Springer.
Dror, M. (1999). Polygon plate-cutting with a given order. IIE Transactions, 31(3), 271–274. https://doi.org/10.1023/A:1007606007369.
Farley, A. A. (1990). A note on bounding a class of linear programming problems, including cutting stock problems. Operations Research, 38(5), 922–923. https://doi.org/10.1287/opre.38.5.922.
Fortz, B., Labbé, M., & Poss, M. (2010). A branch-and-cut-and-price framework for convex MINLP applied to a stochastic network design problem. In Workshop on mixed integer nonlinear programming (p. 131).
Gamrath, G. (2010). Generic branch-cut-and-price. Master’s thesis.
Gilmore, P., & Gomory, R. (1961). A linear programming approach to the cutting stock problem. Operations Research, 9, 849–859.
Gilmore, P., & Gomory, R. E. (1965). Multistage cutting stock problems of two and more dimensions. Operations Research, 13(1), 94–120.
Hales, T. C., Adams, M., Bauer, G., Dang, D. T., Harrison, J., Hoang, T. L., Kaliszyk, C., Magron, V., McLaughlin, S., Nguyen, T. T., Nguyen, T. Q., Nipkow, T., Obua, S., Pleso, J., Rute, J., Solovyev, A., Ta, A. H. T., Tran, T. N., Trieu, D. T., Urban, J., Vu, K. K., & Zumkeller, R. (2015). A formal proof of the Kepler conjecture. arXiv:1501.02155.
Hifi, M., & M’Hallah, R. (2009). A literature review on circle and sphere packing problems: Models and methodologies. Advances in Operations Research, 150, 624:1–150, 624:22. http://dblp.uni-trier.de/db/journals/advor/advor2009.html#HifiM09.
ILOG, Inc: ILOG CPLEX: High-performance software for mathematical programming and optimization. See http://www.ilog.com/products/cplex/. Accessed 2016.
Jans, R. (2009). Solving lot-sizing problems on parallel identical machines using symmetry-breaking constraints. INFORMS Journal on Computing, 21(1), 123–136.
Kallrath, J. (2009). Cutting circles and polygons from area-minimizing rectangles. Journal of Global Optimization, 43(2), 299–328. https://doi.org/10.1007/s10898-007-9274-6.
Kallrath, J. (2015). Packing ellipsoids into volume-minimizing rectangular boxes. Journal of Global Optimization, 67, 151–185. https://doi.org/10.1007/s10898-015-0348-6.
Kilinç, M., & Sahinidis, N. V. (2014). Solving MINLPs with BARON. Talk at MINLP 2014, Carnegie Mellon University, Pittsburgh, PA, USA. http://minlp.cheme.cmu.edu/2014/papers/kilinc.pdf.
Lenstra, J. K., & Kan, A. H. G. R. (1979). Complexity of packing, covering and partitioning problems. In A. Schrijver (Ed.), Packing and covering in combinatorics (pp. 275–291). Mathematisch Centrum.
Lübbecke, M. E., & Desrosiers, J. (2005). Selected topics in column generation. Operations Research, 53(6), 1007–1023.
MUMPS, Multifrontal Massively Parallel sparse direct Solver. http://mumps.enseeiht.fr. Accessed 2011.
Muter, I., Birbil, S. I., & Bülbül, K. (2013). Simultaneous column-and-row generation for large-scale linear programs with column-dependent-rows. Mathematical Programming, 142(1), 47–82. https://doi.org/10.1007/s10107-012-0561-8.
Pedroso, J. P., Cunha, S., & Tavares, J. N. (2016). Recursive circle packing problems. International Transactions in Operational Research, 23(1–2), 355–368. https://doi.org/10.1111/itor.12107.
Pisinger, D., & Sigurd, M. (2005). The two-dimensional bin packing problem with variable bin sizes and costs. Discrete Optimization, 2(2), 154–167. https://doi.org/10.1016/j.disopt.2005.01.002.
Ralphs, T. K., & Galati, M. V. (2005). Decomposition in integer linear programming. Integer Programming: Theory and Practice, 3, 57–110.
Sahinidis, N. V. (1996). Baron: A general purpose global optimization software package. Journal of Global Optimization, 8(2), 201–205. https://doi.org/10.1007/BF00138693.
SCIP—Solving Constraint Integer Programs. http://scip.zib.de. Accessed 2017.
Vance, P. H. (1998). Branch-and-price algorithms for the one-dimensional cutting stock problem. Computational Optimization and Applications, 9(3), 211–228. https://doi.org/10.1023/A:1018346107246.
Vance, P. H., Barnhart, C., Johnson, E. L., & Nemhauser, G. L. (1994). Solving binary cutting stock problems by column generation and branch-and-bound. Computational Optimization and Applications, 3(2), 111–130. https://doi.org/10.1007/BF01300970.
Vanderbeck, F., & Wolsey, L. A. (1996). An exact algorithm for IP column generation. Operations Research Letters, 19(4), 151–159. https://doi.org/10.1016/0167-6377(96)00033-8.
Vanderbeck, F., & Wolsey, L. A. (2010). Reformulation and decomposition of integer programs (pp. 431–502). Springer, Berlin. https://doi.org/10.1007/978-3-540-68279-0_13.
Vigerske, S. (2013). Decomposition in multistage stochastic programming and a constraint integer programming approach to mixed-integer nonlinear programming. Ph.D. thesis, Humboldt-Universität zu Berlin, Mathematisch-Naturwissenschaftliche Fakultät II.
Wächter, A., & Biegler, L. T. (2006). On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Mathematical Programming, 106(1), 25–57. https://doi.org/10.1007/s10107-004-0559-y.
Acknowledgements
This work has been supported by the Research Campus MODAL Mathematical Optimization and Data Analysis Laboratories funded by the Federal Ministry of Education and Research (BMBF Grant 05M14ZAM). All responsibility for the content of this publication is assumed by the authors.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Electronic supplementary material
Below is the link to the electronic supplementary material.
Rights and permissions
About this article
Cite this article
Gleixner, A., Maher, S.J., Müller, B. et al. Price-and-verify: a new algorithm for recursive circle packing using Dantzig–Wolfe decomposition. Ann Oper Res 284, 527–555 (2020). https://doi.org/10.1007/s10479-018-3115-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10479-018-3115-5