Abstract
The problem of packing ellipsoids is considered in the present work. Usually, the computational effort associated with numerical optimization methods devoted to packing ellipsoids grows quadratically with respect to the number of ellipsoids being packed. The reason is that the number of variables and constraints of ellipsoids’ packing models is associated with the requirement that every pair of ellipsoids must not overlap. As a consequence, it is hard to solve the problem when the number of ellipsoids is large. In this paper, we present a nonlinear programming model for packing ellipsoids that contains a linear number of variables and constraints. The proposed model finds its basis in a transformation-based non-overlapping model recently introduced by Birgin et al. (J Glob Optim 65(4):709–743, 2016). For solving large-sized instances of ellipsoids’ packing problems with up to 1000 ellipsoids, a multi-start strategy that combines clever initial random guesses with a state-of-the-art (local) nonlinear optimization solver is presented. Numerical experiments show the efficiency and effectiveness of the proposed model and methodology.
Similar content being viewed by others
References
Andreani, R., Birgin, E.G., Martínez, J.M., Schuverdt, M.L.: On augmented Lagrangian methods with general lower-level constraints. SIAM J. Optim. 18(4), 1286–1309 (2007)
Andretta, M., Birgin, E.G., Martínez, J.M.: Practical active-set Euclidian trust-region method with spectral projected gradients for bound-constrained minimization. Optimization 54(3), 305–325 (2005)
Bertsekas, D.P.: Nonlinear Programming, 2nd edn. Athena Scientific, Belmont (1999)
Bezrukov, A., Stoyan, D.: Simulation and statistical snalysis of random packings of ellipsoids. Par. Part. Syst. Charact. 23(5), 388–398 (2007)
Birgin, E.G., Bustamante, L.H., Callisaya, H.F., Martínez, J.M.: Packing circles within ellipses. Int. Trans. Oper. Res. 20(3), 365–389 (2013)
Birgin, E.G., Floudas, C.A., Martínez, J.M.: Global minimization using an augmented Lagrangian method with variable lower-level constraints. Math. Program. 125(1), 139–162 (2010)
Birgin, E.G., Gentil, J.M.: New and improved results for packing identical unitary radius circles within triangles, rectangles and strips. Comput. Oper. Res. 37(7), 1318–1327 (2010)
Birgin, E.G., Lobato, R.D., Martínez, J.M.: Packing ellipsoids by nonlinear optimization. J. Glob. Optim. 65(4), 709–743 (2016)
Birgin, E.G., Martínez, J.M.: A box-constrained optimization algorithm with negative curvature directions and spectral projected gradients. Computing [Suppl] 15(1), 49–60 (2001)
Birgin, E.G., Martínez, J.M.: Large-scale active-set box-constrained optimization method with spectral projected gradients. Comput. Optim. Appl. 23(1), 101–125 (2002)
Birgin, E.G., Martínez, J.M.: Practical Augmented Lagrangian Methods for Constrained Optimization. Society for Industrial and Applied Mathematics, Philadelphia (2014)
Birgin, E.G., Martínez, J.M., Raydan, M.: Nonmonotone spectral projected gradient methods on convex sets. SIAM J. Optim. 10(4), 1196–1211 (2000)
Birgin, E.G., Martínez, J.M., Raydan, M.: Algorithm 813: SPG-software for convex-constrained optimization. ACM Trans. Math. Softw. 27(3), 340–349 (2001)
Birgin, E.G., Martínez, J.M., Ronconi, D.P.: Optimizing the packing of cylinders into a rectangular container: a nonlinear approach. Eur. J. Oper. Res. 160(1), 19–33 (2005)
Birgin, E.G., Sobral, F.N.C.: Minimizing the object dimensions in circle and sphere packing problems. Comput. Oper. Res. 35(7), 2357–2375 (2008)
Castillo, I., Kampas, F.J., Pintér, J.D.: Solving circle packing problems by global optimization: numerical results and industrial applications. Eur. J. Oper. Res. 191(3), 786–802 (2008)
Chernov, N., Stoyan, Yu., Romanova, T.: Mathematical model and efficient algorithms for object packing problem. Comput. Geom. 43(5), 535–553 (2010)
Choi, Y.K., Chang, J.W., Wang, W., Kim, M.S., Elber, G.: Continuous collision detection for ellipsoids. IEEE Trans. Vis. Comput. Graph. 15(2), 311–324 (2009)
Conway, J.H., Sloane, N.J.A.: Sphere Packings, Lattices and Groups Volume 290 of Grundlehren der math. Wissenschaften. Springer, New York (1999)
Donev, A., Cisse, I., Sachs, D., Variano, E., Stillinger, F.H., Connelly, R., Torquato, S., Chaikin, P.M.: Improving the density of jammed disordered packings using ellipsoids. Science 303(5660), 990–993 (2004)
Donev, A., Connelly, R., Stillinger, F.H., Torquato, S.: Underconstrained jammed packings of nonspherical hard particles: ellipses and ellipsoids. Phys. Rev. E 75(5), 051304 (2007)
Donev, A., Stillinger, F.H., Chaikin, P.M., Torquato, S.: Unusually dense crystal packings of ellipsoids. Phys. Rev. Lett. 92, 255506 (2004)
Donev, A., Torquato, S., Stillinger, F.H.: Neighbor list collision-driven molecular dynamics simulation for nonspherical hard particles. I. Algorithmic details. J. Comput. Phys. 202(2), 737–764 (2005)
Donev, A., Torquato, S., Stillinger, F.H.: Neighbor list collision-driven molecular dynamics simulation for nonspherical hard particles. II. Applications to ellipses and ellipsoids. J. Comput. Phys. 202(2), 765–793 (2005)
Galiev, ShI, Lisafina, M.S.: Numerical optimization methods for packing equal orthogonally oriented ellipses in a rectangular domain. Comput. Math. Math. Phys. 53(11), 1748–1762 (2013)
Golub, G.H., Van Loan, C.F.: Matrix Computations, 3rd edn. Johns Hopkins University Press, Baltimore (1996)
Izmailov, A.F., Solodov, M.V., Uskov, E.I.: Global convergence of augmented Lagrangian methods applied to optimization problems with degenerate constraints, including problems with complementarity constraints. SIAM J. Optim. 22(4), 1579–1606 (2012)
Izmailov, A.F., Solodov, M.V., Uskov, E.I.: Combining stabilized SQP with the augmented Lagrangian algorithm. Comput. Optim. Appl. 62(2), 405–429 (2015)
Kallrath, J.: Cutting circles and polygons from area-minimizing rectangles. J. Glob. Optim. 43(2), 299–328 (2009)
Kallrath, J.: Packing ellipsoids into volume-minimizing rectangular boxes. J. Glob. Optim. (2015). doi:10.1007/s10898-015-0348-6
Kallrath, J., Rebennack, S.: Cutting ellipses from area-minimizing rectangles. J. Glob. Optim. 59(2), 405–437 (2014)
Kampas, F.J., Castillo, I., Pintér, J.D.: General ellipse packings in optimized regular polygons. http://www.optimization-online.org/DB_HTML/2016/03/5348.html (2016)
Kampas, F.J., Pintér, J.D., Castillo, I.: General ellipse packings in an optimized circle using embedded Lagrange multipliers. http://www.optimization-online.org/DB_HTML/2016/01/5293.html (2016)
Lobato, R.D.: Ellipsoid packing. PhD thesis, University of Sao Paulo (2015)
Man, W., Donev, A., Stillinger, F.H., Sullivan, M.T., Russel, W.B., Heeger, D., Inati, S., Torquato, S., Chaikin, P.M.: Experiments on random packings of ellipsoids. Phys. Rev. Lett. 104, 185501 (2010)
Martínez, J.M.: Local minimizers of quadratic functions on euclidean balls and spheres. SIAM J. Optim. 4(1), 159–176 (1994)
Martínez, L., Andrade, R., Birgin, E.G., Martínez, J.M.: Packmol: a package for building initial configurations for molecular dynamics simulations. J. Comput. Chem. 30(13), 2157–2164 (2009)
Pankratov, A., Romanova, T., Khlud, O.: Quasi-phi-functions in packing problem of ellipsoids. Radioelectron. Inform. 68(1), 37–41 (2015)
Stoyan, Y., Romanova, T., Pankratov, A., Chugay, A.: Optimized object packings using quasi-phi-functions. In: Fasano, G., Pintér, J.D. (eds.) Optimized Packings with Applications, Volume 105 of Springer Optimization and Its Applications, Chapter 13, pp. 265–293. Springer, Cham (2015)
Stoyan, Y.G., Pankratov, A., Romanova, T.: Quasi-phi-functions and optimal packing of ellipses. J. Glob. Optim. 65(2), 283–307 (2016)
Stoyan, Y.G., Yas’kov, G.: A mathematical model and a solution method for the problem of placing various-sized circles into a strip. Eur. J. Oper. Res. 156(3), 590–600 (2004)
Stoyan, Y.G., Yas’kov, G.: Packing congruent hyperspheres into a hypersphere. J. Glob. Optim. 52(4), 855–868 (2012)
Stoyan, Y.G., Yas’kov, G.: Packing equal circles into a circle with circular prohibited areas. Int. J. Comput. Math. 89(10), 1355–1369 (2012)
Stoyan, Y.G., Zlotnik, M.V., Chugay, A.: Solving an optimization packing problem of circles and non-convex polygons with rotations into a multiply connected region. J. Oper. Res. Soc. 63(3), 379–391 (2012)
Acknowledgements
The authors are indebted to the anonymous referees whose comments helped to improve this paper.
Author information
Authors and Affiliations
Corresponding author
Additional information
This work was supported by PRONEX-CNPq/FAPERJ E-26/111.449/2010-APQ1, FAPESP (Grants 2010/10133-0, 2013/03447-6, 2013/05475-7, 2013/07375-0, and 2012/23916-8), and CNPq (Grants 309517/2014-1, 303750/2014-6).
Appendix: Derivatives
Appendix: Derivatives
The computation of the derivatives of the function defined in (33) is nontrivial. That is because this function depends on the functions \(\mathcal {X}\) and \(\mathcal {U}\) whose values are given by the solution of an optimization problem. Firstly, we will show the derivatives of the terms that compose the function defined in (33) in terms of the derivatives of the functions \(\mathcal {X}\) and \(\mathcal {U}\). Next, we will show how to compute the derivatives of the functions \(\mathcal {X}\) and \(\mathcal {U}\). To simplify the notation, we will denote by \(\mathcal {X}_{ij}\) the value \(\mathcal {X}(c_i,c_j,\Omega _i,\Omega _j;P_i,P_j)\) and by \(\mathcal {U}_{ij}\) the value \(\mathcal {U}(c_i,c_j,\Omega _i,\Omega _j;P_i,P_j)\).
1.1 First order derivatives
Let \(i,j \in \{1,\dots ,m\}\) such that \(i < j\). We have that \(\mathcal {X}(c_i,c_j,\Omega _i,\Omega _j;P_i,P_j)\) is a solution to the problem
where \(c_{i}^{ij} = P_i^{-\frac{1}{2}}Q_i^{\top }(c_i-c_j)\), and \(\mathcal {U}(c_i,c_j,\Omega _i,\Omega _j;P_i,P_j)\) is the corresponding Lagrange multiplier. According to the Karush–Kuhn–Tucker first-order necessary conditions for problem (38), we have
Thus, by defining the function \(F: \mathbb {R}^{n} \times \mathbb {R}^{n} \times \mathbb {R}^{q} \times \mathbb {R}^{q} \rightarrow \mathbb {R}^{n+1}\) as
we have that \(F(c_i,c_j,\Omega _i,\Omega _j) = 0\) for all \(c_i,c_j \in \mathbb {R}^n\) and for all \(\Omega _i,\Omega _j \in \mathbb {R}^q\). That is, F is an identically zero function. Therefore, we have that the derivative of function F is also an identically zero function. Hence, for each variable v of the function F and for each component \(\ell \in \{1,\dots ,n+1\}\) of F, we have
Once the values of \(\mathcal {X}_{ij}\) and \(\mathcal {U}_{ij}\) are known, we have, for each \(\ell \in \{1,\dots ,n+1\}\), analytical expressions for \(\frac{\partial F_{\ell }}{\partial v}\), \(\frac{\partial F_{\ell }}{\partial \mathcal {U}_{ij}}\), and \(\frac{\partial F_{\ell }}{\partial [\mathcal {X}_{ij}]_k}\) for each \(k \in \{1,\dots ,n\}\). On the other hand, the values of \(\frac{\text {d}\mathcal {U}_{ij}}{\text {d}v}\) and \(\frac{\text {d}[\mathcal {X}_{ij}]_k}{\text {d}v}\) for each \(k \in \{1,\dots ,n\}\) are unknown, but can be computed by solving the linear system provided by (40):
Then, for each \(i, j \in \{1,\dots ,m\}\) such that \(i < j\), we need to solve \(2(n+q)\) linear systems with \(n+1\) equations and \(n+1\) variables (one linear system for each variable among \(c_i\), \(c_j\), \(\Omega _i\) and \(\Omega _j\)).
Once i and j are fixed, observe that the \(2(n+q)\) linear systems have the same coefficient matrix. The only difference between these systems are their right-hand sides. Thus, in order to solve these linear systems, we can factorize the coefficient matrix only once and then, for each right-hand side, solve the linear system with the coefficient matrix already factorized.
1.2 Second order derivatives
For each variable v of the function F defined in (39) and for each component \(\ell \) of F, we define the function \(G^v_\ell \) as the total derivative of the function \(F_\ell \) with respect to v:
Since the function F is identically zero, its derivative is also identically zero. Then, for each variable u of the function \(G^v_\ell \), we have
Next, we present the partial derivatives of the function \(G^v_{\ell }\), that appear in the expression (41). The partial derivative of \(G^v_{\ell }\) with respect to the variable u is given by
The partial derivative of \(G^v_{\ell }\) with respect to \(\mathcal {U}_{ij}\) is given by
Finally, the partial derivative of \(G^v_{\ell }\) with respect to \(\mathcal {X}_{ij}\) is given by
The simplifications in the expressions of the derivatives of \(G^v_{\ell }\) with respect to \(\mathcal {U}_{ij}\) and \(\mathcal {X}_{ij}\) come from the removal of null elements.
Considering that the values of the first order derivatives of the function F are known, the equation (41) provides the following linear system
for each variable u and for each variable v of the function F. The components of the right-hand side of this system are given by
for each \(\ell \in \{1,\dots ,n+1\}\). Notice that the coefficient matrix of this linear system does not depend on the variables u and v. Therefore, for each \(i,j \in \{1,\dots ,m\}\) such that \(i < j\), we have \((n+q)(2(n+q) + 1)\) linear systems (one for each pair of variables u and v of the function F) with \(n+1\) variables each one, and all of them have the same coefficient matrix.
Rights and permissions
About this article
Cite this article
Birgin, E.G., Lobato, R.D. & Martínez, J.M. A nonlinear programming model with implicit variables for packing ellipsoids. J Glob Optim 68, 467–499 (2017). https://doi.org/10.1007/s10898-016-0483-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10898-016-0483-8