Skip to main content
Log in

Cutting ellipses from area-minimizing rectangles

  • Published:
Journal of Global Optimization Aims and scope Submit manuscript

Abstract

A set of ellipses, with given semi-major and semi-minor axes, is to be cut from a rectangular design plate, while minimizing the area of the design rectangle. The design plate is subject to lower and upper bounds of its widths and lengths; the ellipses are free of any orientation restrictions. We present new mathematical programming formulations for this ellipse cutting problem. The key idea in the developed non-convex nonlinear programming models is to use separating hyperlines to ensure the ellipses do not overlap with each other. For small number of ellipses we compute feasible points which are globally optimal subject to the finite arithmetic of the global solvers at hand. However, for more than 14 ellipses none of the local or global NLP solvers available in GAMS can even compute a feasible point. Therefore, we develop polylithic approaches, in which the ellipses are added sequentially in a strip-packing fashion to the rectangle restricted in width, but unrestricted in length. The rectangle’s area is minimized in each step in a greedy fashion. The sequence in which we add the ellipses is random; this adds some GRASP flavor to our approach. The polylithic algorithms allow us to compute good, near optimal solutions for up to 100 ellipses.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Notes

  1. The expression polylithic has been introduced by Kallrath [10, 12] to refer to modeling and solution approaches in which optimization problems are solved by tailor-made methods involving several models or solve statements or algorithmic components.

References

  1. Adjiman, C.S., Androulakis, I.P., Floudas, C.A.: Global optimization of mixed integer nonlinear problems. AIChE J. 46, 1769–1797 (2000)

    Article  Google Scholar 

  2. Adjiman, C.S., Androulakis, I.P., Maranas, C.D., Floudas, C.A.: A global optimization method aBB for process design. Comput. Chem. Eng. 20(Suppl. 1), S419–424 (1996)

    Article  Google Scholar 

  3. Androulakis, I.P., Maranas, C.D., Floudas, C.A.: aBB: a global optimization method for general constrained nonconvex problems. J. Glob. Optim. 7, 337–363 (1995)

    Article  Google Scholar 

  4. Dyckhoff, H.: A typology of cutting and packing problems. Eur. J. Oper. Res. 44, 145–159 (1990)

    Article  Google Scholar 

  5. Feo, T., Resende, M.: Greedy randomized adaptive search procedures. J. Glob. Optim. 6, 109–133 (1995)

    Article  Google Scholar 

  6. Floudas, CA.: Private communication (2012)

  7. Floudas, C.A., Akrotirianakis, I.G., Caratzoulas, S., Meyer, C.A., Kallrath, J.: Global optimization in the 21st century: advances and challenges for problems with nonlinear dynamics. Comput. Chem. Eng. 29, 1185–1202 (2005)

    Article  Google Scholar 

  8. Gensane, T., Honvault, P.: Optimal Packings of Two Ellipses in a Square. Technical report, L.M.P.A. (2012)

  9. Hettich, R., Kortanek, K.O.: Semi-infinite programming. SIAM Rev. 35, 380–429 (1993)

    Article  Google Scholar 

  10. Kallrath, J.: Combined strategic design and operative planning in the process industry. Comput. Chem. Eng. 33, 1983–1993 (2009)

    Google Scholar 

  11. Kallrath, J.: Cutting circles and polygons from area-minimizing rectangles. J. Glob. Optim. 43, 299–328 (2009)

    Article  Google Scholar 

  12. Kallrath, J.: Polylithic modeling and solution approaches using algebraic modeling systems. Optim. Lett. 5, 453–466 (2011). doi:10.1007/s11590-011-0320-4

    Article  Google Scholar 

  13. Liberti, L.: Reformulation and convex relaxation techniques for global optimization. Ph.D. Thesis, Imperial College London, London, UK (2004)

  14. Liberti, L., Pantelides, C.: An exact reformulation algorithm for large nonconvex NLPs involving bilinear terms. J. Glob. Optim. 36, 161–189 (2006)

    Article  Google Scholar 

  15. Lindo Systems: Lindo API: User’s Manual. Lindo Systems, Chicago (2004)

    Google Scholar 

  16. Lopez, M., Still, G.: Semi-infinite programming. Eur. J. Oper. Res. 180, 491–518 (2007)

    Article  Google Scholar 

  17. Maranas, C.D., Floudas, C.A.: Finding all solutions of nonlinearly constrained systems of equations. J. Glob. Optim. 7, 143–182 (1995)

    Article  Google Scholar 

  18. Markót, M.C.: Interval methods for verifying structural optimality of circle packing configurations in the unit square. J. Comput. Appl. Math. 199, 353–357 (2007)

    Article  Google Scholar 

  19. Markót, M.C., Csendes, T.: A new verified optimization technique for the “packing circles in a unit square” problems. SIAM J. Optim. 16, 193–219 (2005)

    Article  Google Scholar 

  20. Miller, P.: Globally optimal packing of nonconvex two-dimensional shapes by approximation with ellipses. Princeton University, Princeton, NJ, Senior Thesis (2012)

  21. Misener, R., Floudas, C.: GloMIQO: global mixed-integer quadratic optimizer. J. Glob. Optim. pp. 1–48 (2012). doi:10.1007/s10898-012-9874-7

  22. Rebennack, S., Kallrath, J.: Continuous piecewise linear \(\delta \)-approximations for MINLP problems. I. Minimal breakpoint systems for univariate functions. Tech. rep., Colorado School of Mines Division of Economics and Business Working Paper Series 2012–12 (2012)

  23. Rebennack, S., Kallrath, J.: Continuous piecewise linear \(\delta \)-approximations for MINLP problems. II. Bivariate and multivariate functions. Tech. rep., Colorado School of Mines Division of Economics and Business Working Paper Series 2012–13 (2012)

  24. Rebennack, S., Kallrath, J., Pardalos, P.M.: Column enumeration based decomposition techniques for a class of non-convex MINLP problems. J. Glob. Optim. 43, 277–297 (2009)

    Article  Google Scholar 

  25. Tawarmalani, M., Sahinidis, N.V.: Convexification and global optimization in continuous and mixed-integer nonlinear programming: theory, algorithms, software, and applications. Nonconvex optimization and its applications series. Kluwer, Dordrecht, The Netherlands (2002)

    Book  Google Scholar 

Download references

Acknowledgments

Thanks are directed to Prof. Dr. Siegfried Jetzke (Ostfalia Hochschule, Salzgitter, Germany) for his interest in this work, comments on the manuscript and discussion about the usefulness of ellipses and ellipsoids in real world problems.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Steffen Rebennack.

Appendix: Notation

Appendix: Notation

We start with the notation used in the derivation of the model; they are not used in the mathematical programming formulations directly.

\({\mathsf {A}}_{\theta i}\) :

positive definite matrix defining ellipses; entries are \(A_{11}, A_{12}, A_{21}\), and \(A_{22}\)

\(\mathbf{c}\) :

objective function coefficient vector of auxiliary problems; \(\mathbf{c}^{\top } = (1,0)\) or \(\mathbf{c}^{\top } = (0,1)\)

\(d_i\) :

distance of ellipse \(i\) to line \(\mathbf{G}(t)\)

\({\mathsf {D}}_i\) :

diagonal matrix for ellipse \(i\) with eigenvalues of \({\mathsf {A}}_{\theta i}\) in the diagonal

\(\delta _{ij}^{ab}\) :

maximum vertical extension of ellipse \(i\) to the hyperplane in the new coordinate system

\(\delta _{ij}^{be}\) :

maximum vertical extension of ellipse \(j\) to the hyperplane in the new coordinate system

\({\mathsf {E}}_{\theta -\omega ,i}\) :

positive definite matrix defining rotated ellipses; \({\mathsf {E}}_{\theta -\omega ,i} := {\mathsf {A}}_{\theta -\omega ,i}\); entries are \(E_{11}, E_{12}, E_{21}\), and \(E_{22}\)

\(\mathbf{G}(t)\) :

separating line, i.e., hyperplane

\({\mathcal {L}}(\mathbf{x}, \bar{\lambda })\) :

Lagrangian function

\(\lambda _{id}\) :

eigenvalue of matrix \({\mathsf {A}}_{\theta i};\, \lambda _{i1} = a_i^{-2}\) and \(\lambda _{i2} = b_i^{-2}\)

\(\bar{\lambda }\) :

Lagrangian multiplier associated with ellipse equation

\(\varphi _i\) :

rotation angle to generate ellipse \(i\) in new coordinate system

\({\mathsf {R}}_{\theta i}\) :

rotation matrix for ellipse \(i\) at angle \(\theta _i\)

\(\mathbf{v}_i(\varphi _i)\) :

equation for ellipse \(i\) in new coordinate system

\(v_{id}^0\) :

center coordinate (in dimension \(d\)) of ellipse \(i\) in the new coordinate system

\(v_{i2}^{ -}\) :

minimal extension (in dimension \(d=2\)) of ellipse \(i\) in the new coordinate system

\(x_{id}^{-}\) :

minimum extension of ellipse \(i\) in dimension \(d\)

\(x_{id}^{+}\) :

maximum extension of ellipse \(i\) in dimension \(d\)

The notation used in the mathematical programming models and heuristics is summarized in the following sections.

1.1 Indices and sets

\(d \in \{1,2\}\) :

index for the dimension; \(d=1\) represents the length and \(d=2\) the width

\(i\in {\mathcal {I}}:= \{ 1, \ldots , n \}\) :

objects (ellipses or circles) to be cut

\((c_x,c_y) \in {\mathcal {I}}^{\mathrm {ce}}\) :

small rectangles, cells, dividing the design rectangle

\((i,j) \in {\mathcal {I}}^{\mathrm {co}}\) :

pairs of congruent ellipses; we assume \(i < j\)

1.2 Data

\(a_{i}\) :

semi-major axis of ellipse \(i;\, a_i \ge b_i\)

\(\tilde{a}_{n}\) :

area of the design rectangle for the “symmetric” cutting for \(n\) identical ellipses

\(A_{i}\) :

area of ellipse \(i;\, A_{i} = \pi a_{i}b_{i}\)

\(A^{-}, A^{+}\) :

lower and upper bound on the area, \(a\), of the design rectangle obtained during the computation

\(A^{\mathrm{ci, -}}\) :

minimal area of the design rectangle to host the inner circles associated with the ellipses. \(A^{\mathrm{ci, -}}\) provides a lower bound on the associated ellipse cutting problem

\(A^{\mathrm{ci, +}}\) :

area of the design rectangle to host the outer circles associated with the ellipses. \(A^{\mathrm{ci, -}}\) provides an upper bound on the associated ellipse cutting problem

\(b_{i}\) :

semi-minor axis of ellipse \(i;\, a_i \ge b_i\)

\(C_{c_x c_y d}^-, C_{c_x c_y d}^+\) :

lower and upper boundary coordinate of cell \((c_x, c_y)\)

\(\overline{D}_{ij}\) :

bound on the distance variables \(d_{ij}^{\mathrm{ab}}\) and \(d_{ij}^{\mathrm{be}}\)

\(\Delta \) :

relative gap

\(\varepsilon \) :

eccentricity measuring the deviation of an ellipses from a circle

\(n_1, n_2, n_3\) :

parameters in the heuristics: number of ellipses selected

\(R_i\) :

radius of circle \(i\) to be cut

\(\rho \) :

factor (parameter) for semi-minor axis for test instances TE\(\rho \)

\(S_{id1}, S_{id2}\) :

auxiliary data derived from semi-major and semi-minor axis, as defined in (32)

\(S_{d}^{-}, S_{d}^{+}\) :

minimum (lower bound) and maximum size (upper bound) of the extension of the design rectangles in dimension \(d\)

\(x_{1,n}^{\mathrm {R}}\) :

length of the design rectangle for the “symmetric” cutting of \(n\) identical ellipses

\(X^{-}\) :

smallest center coordinate among the \(n_3\) ellipses in coordinate direction \(d=1\)—only used for heuristic H2

1.3 Decision variables

\(a\) :

(continuous) area of the design rectangle; \(a^{*}\) defines (globally) optimal area

\(d_{ij}^{\mathrm{ab}}\) :

(continuous) distance of the center of ellipse \(i\) to the separating line between the ellipses \(i\) and \(j\); ellipse \(i\) is above the separating line

\(d_{ij}^{\mathrm{be}}\) :

(continuous) distance of the center of ellipse \(j\) to the separating line between the ellipses \(i\) and \(j\); ellipse \(j\) is below the separating line

\(\delta _{i c_x c_y}\) :

(binary) assign ellipse \(i\) to cell \((c_x,c_y)\)

\(g^0_{ijd}\) :

(continuous) footpoint coordinate (in dimension \(d\)) of separating line between ellipses \(i\) and \(j\); we place the footpoint inside the design rectangle; index \(ij\) is dropped in Sect. 2.1.4

\(g_{ijd}\) :

(continuous) slope (in dimension \(d\)) of the separating line between ellipses \(i\) and \(j\); index \(ij\) is dropped in Sect. 2.1.4

\(\lambda _{ij}\) :

(continuous) linear combination variable for hyperplane and ellipses \(i\) and \(j\)

\(\omega _{ij}\) :

(continuous) inclination angle of the separating line between the ellipses \(i\) and \(j;\, \omega _{ij} \in [0,2\pi ]\); index \(ij\) is dropped in Sect. 2.1.4

\(p_{ij}^{\mathrm{ab}}\) :

(continuous) auxiliary variable modeling \(\cos ( \theta _{i} - \omega _{ij} );\, p_{ij}^{\mathrm{ab}} \in [-1,1]\)

\(p_{ij}^{\mathrm{be}}\) :

(continuous) auxiliary variable modeling \(\cos ( \theta _{j} - \omega _{ij} );\, p_{ij}^{\mathrm{be}} \in [-1,1]\)

\(\theta _{i}\) :

(continuous) orientation angle of ellipse \(i;\, \theta _{i} \in [0,2\pi ]\)

\(v_i\) :

(continuous) auxiliary variable representing trigonometric term \(\cos \theta _i;\, v_i \in [-1,1]\)

\(w_i\) :

(continuous) auxiliary variable representing trigonometric term \(\sin \theta _i;\, w_i \in [0,1]\)

\(x_{d}^{\mathrm {R}}\) :

(continuous) extension of the design rectangle in dimension \(d\)

\(x_{id}^0\) :

(continuous) coordinates of the center vector of object \(i\) to be cut

\(z\) :

(continuous) waste of the design rectangle; \(z = a - \sum \nolimits _{i \in {\mathcal {I}}} A_{i}\)

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kallrath, J., Rebennack, S. Cutting ellipses from area-minimizing rectangles. J Glob Optim 59, 405–437 (2014). https://doi.org/10.1007/s10898-013-0125-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10898-013-0125-3

Keywords

Navigation