A customized branchandbound approach for irregular shape nesting
Abstract
We study the Nesting Problem, which aims to determine a configuration of a set of irregular shapes within a rectangular sheet of material of fixed width, such that no overlap among the shapes exists, and such that the length of the sheet is minimized. When both translation and rotation of the shapes are allowed, the problem can be formulated as a nonconvex quadratically constrained programming model that approximates each shape by a set of inscribed circles and enforces that circle pairs stemming from different shapes do not overlap. However, despite many recent advances in today’s global optimization solvers, solving this nonconvex model to guaranteed optimality remains extremely challenging even for the stateoftheart codes. In this paper, we propose a customized branchandbound approach to address the Nesting Problem to guaranteed optimality. Our approach utilizes a novel branching scheme to deal with the reverse convex quadratic constraints in the quadratic model and incorporates a number of problemspecific algorithmic tweaks. Our computational studies on a suite of 64 benchmark instances demonstrate the customized algorithm’s effectiveness and competitiveness over the use of generalpurpose global optimization solvers, including for the first time the ability to find global optimal nestings featuring five polygons under free rotation.
Keywords
Nesting Problem Irregular strip packing Global optimization Reverse convex quadratic constraints1 Introduction
“Nesting” refers to the task of finding a packing of twodimensional shapes that minimizes the amount of material needed to carve them out of a stock. This minimization of waste can be of utmost economic importance in certain large industrial sectors, wherein a minuscule reduction in the amount of stock material used would result in significant monetary savings across the whole industry. For example, obtaining tight nesting solutions is of great practical importance when cutting metal parts for automobiles, airframes and other machinery, as well as cutting leather and fabrics for apparel and upholstery applications. In commercial settings, a human “nester” usually refines a packing solution by hand from the starting point of a computationallyidentified solution [16], thereby necessitating the development of automated solutions.
This paper focuses on the Irregular Strip Packing Problem, also simply known as the Nesting Problem, which is is a rather general twodimensional cutting and packing problem [22] where the shapes to be packed can be different to each other, irregular and nonconvex, and may possibly contain holes. The shapes, which are usually represented (approximated to arbitrary precision) by polygons, are to be packed in a stock that comes in the form of a fixedwidth rectangular sheet, whose length is to be minimized. This problem has been studied extensively, with most of the focus being on the development of heuristics to obtain largescale packings [2, 5, 6, 13]. However, while heuristic methods are practically valuable for the generation of good solutions, they can not rigorously quantify the quality of packings produced and therefore lack any guarantees of optimality. Additionally, heuristic methods often rely on the exact solution of smallerscale problems as part of their search strategy, motivating the need to develop good exact solution strategies.
The key differences among exact, mathematical optimizationbased approaches are the means by which the “nonoverlapping” of shapes is satisfied. A traditional method for constraining shapes to not overlap involves constructing a “nofit” polygon per each pair of shapes in the problem [4]. The nofit polygon approach simplifies the task of algebraically encoding overlap between two shapes into the relatively easy task of identifying if a point lies in the interior of a polygon. In this way, one can enforce constraints that require a predefined point on a shape to lie outside the nofit polygons of each of the other shapes. These nofit polygons can be precomputed inputs to the optimization model, but are only applicable in the case of polygons with fixed orientation (i.e., no rotation allowed). Furthermore, many approaches leveraging the nofit polygon concept also require the shapes to be convex. In Daniels and Milenkovic [9], the convexity of the polygons was exploited to formulate a linear programming (LP) model for solving the fixedorientation version of the Nesting Problem. The algorithm identifies valid constraints that require the horizontal and vertical placement of polygons to shift so as to eliminate an identified overlap.
When nonconvex polygons are considered (still with no rotation), the nofit polygon may also become nonconvex and the nonoverlapping constraints may no longer be expressed in a simple linear form. An approach to handle the nonconvexity of the nofit polygon was presented in Gomes and Oliveira [11], where the authors dynamically select which edges of the nonconvex nofit polygon to enforce at a local configuration; however, the authors couple this idea with heuristic methods to guide the placement of shapes, resulting in an inexact, metaheuristic algorithm. AlvarezValdes et al. [3] build upon this approach by providing a rigorous branchandbound (BB) procedure to dynamically search over the sets of nofit polygon edges. While the authors demonstrated provably optimal packing solutions for up to 12 polygons (5 of which nonconvex), the tractability of their algorithm was found to decrease dramatically with the number of nonconvex polygons considered in the placement.
In Fischetti and Luzzi [10], the authors adapt the prior approaches by utilizing binary variables to explicitly model the disjunctions between nonconvex parts of the nofit polygon. This idea results in model formulations that are directly representable as mixedinteger linear programs. At the time, the authors were only able to solve instances with up to 7 pieces (5 of which nonconvex). Consequently, they focused on utilizing their mathematical optimization formulation in the context of a heuristic algorithm for solving the related Multiple Containment Problem. Cherri et al. [8] later improved upon this approach by representing pieces as combinations of convex polygons and formulating similar mixedinteger programming models.
When considering instances with the freedom to rotate the polygons to be nested, an additional level of nonlinearity is introduced and a geometric idea other than the nofit polygon must be considered. In Milenkovic [16], the authors adapted their previous translationonly approach to work for continuous rotation by using a BB tree to search through the space of feasible rotations and by repeatedly solving relaxed translationonly problems. However, their algorithm was only practical for packings of 2 or 3 polygons unless further restrictions on angles of rotation were applied. Another idea is to approximate each polygon by a collection of circles, which can then be constrained to not overlap with sets of circles from other polygons. The key feature of such “circlecovering” approaches is the fact that each of the constraints to enforce no overlap between two circles can be readily written with rotation of the parent polygons taken into account. The computational downside, however, is that these nonoverlapping constraints are reverse convex quadratic [12] and therefore require use of advanced global optimization (GO) techniques, such as those typically studied in circle packing problems [7]. Rocha et al. [19] compare several approaches for statically approximating the polygons via different circlecovering schemes. However, since their schemes overapproximate the true region of the polygons, this method constitutes an inexact, heuristic approach to the Nesting Problem that provides good, feasible packings but no rigorous bound on the best possible one. Furthermore, the authors observe that the tractability of the problem decreases dramatically as more accurate approximations are required. The current stateoftheart framework for exact polygon nesting under free rotation comes from Jones [14], in an algorithm called QPNest. This approach uses inscribed circles to underapproximate the true region of the polygons and attempts to dynamically improve the quality of the approximation by introducing new circles where needed, managing also in this way the tradeoff between approximation accuracy and numerical tractability. The QPNest algorithm was able to globally solve a Nesting Problem instance with four polygons by employing generalpurpose GO solvers. A more detailed description of this algorithm is provided later in this paper.

We develop an exact approach to solve the Nesting Problem to global optimality that does not rely on the use of generalpurpose global optimization solvers.

We identify a generic approach to dynamically satisfy reverse convex quadratic constraints commonly found in optimization models within the field of cutting and packing.

We conduct a comprehensive computational study that illustrates the competitiveness of our approach compared to the previous stateoftheart.

We present, for the first time in the open literature, provably optimal solutions for Nesting Problem instances featuring five polygons under free rotation.
The remainder of the paper is organized as follows. In Sect. 2, we present the standard quadratically constrained programming (QCP) formulation that models the Nesting Problem, and we discuss how a suitable linear relaxation of the latter can be used as the basis of our BBbased algorithm. Implementation details of the algorithm itself, including several model tightening procedures, are presented in Sect. 3. Finally, Sect. 4 presents results on the algorithm’s computational performance as well as a comprehensive comparison with the QPNest approach utilizing four different stateoftheart GO solvers. For convenience, a table synopsizing notation is provided at the end of the manuscript.
2 Mathematical modeling
2.1 Nonconvex QCP model
We highlight that, although constraints (5) dictate that any circle inscribed in polygon p will not overlap with any circle inscribed in polygon q, the model does not prohibit the penetration of uncovered parts of polygon p into q. Therefore, this model technically constitutes a relaxation of the full Nesting Problem, and its optimal value is merely a lower bound for the latter. The approximation error can however be improved by considering additional circles in the sets \(C_p\) that increase the coverage areas of the polygons.
2.2 Customized model relaxation
First, we illustrate our strategy for relaxing the trigonometric constraints (2). Let \(\left[ \theta ^L_p, \theta ^U_p\right] \) denote the feasible interval of \(\theta _p\) (originally equal to \(\left[ 0, 2 \pi \right) \)). In the space of \(\left( c_p, s_p\right) \), the corresponding constraint (2) requires that all feasible points project exactly on the circumference of a unit circle (Fig. 4a). This constraint can be initially dropped from consideration, resulting in a convex relaxation defined by the box bounds \(\left[ \,1,+\,1\right] \) (Fig. 4b). Feasibility of the nonconvex constraint can then be gradually enforced by branching on the implicit \(\theta _p\) variable domain and tightening the relaxation in the \(\left( c_p, s_p\right) \) space, as follows.
Let K denote a solution of the relaxed problem with coordinates \(\left( c^*_p, s^*_p\right) \) such that it violates the original constraint. Using this solution as a guide, one may dissect the \(\left[ 0, 2 \pi \right) \) interval into three parts (each representing an angle of \(2\pi /3\) radians) and define a set of three linear constraints (corresponding to two tangent lines and one secant) to form the convex relaxation of the original trigonometric constraint in each of the three resulting subdomains. If properly oriented with respect to K (Fig. 4c), it can be guaranteed that this parent solution is excluded in all of the three subdomains. In subsequent violations of the trigonometric constraint, one could further dissect the applicable \(\theta _p\) interval into two parts. If the solution K is used as the guide to define the branching point, one can again guarantee that this parent solution is excluded from both resulting subdomains, defining a proper branching strategy to be employed in the course of a BB search process. More specifically, we propose a domain split that aims to produce a BB tree that is as balanced as possible. Let N be the point with coordinates \(\left( \cos \left( \frac{\theta ^L_p + \theta ^U_p}{2} + \pi \right) , \sin \left( \frac{\theta ^L_p + \theta ^U_p}{2} + \pi \right) \right) \), and let \(\theta ^*_p\) denote the angle in radians between the positive \(c_p\)axis and the point at which the unit circle intersects with the ray that starts at N and passes through K. The resulting proposed split is then \(\left[ \theta ^L_p, \theta ^*_p\right] \cup \left[ \theta ^*_p, \theta ^U_p\right] \) (Fig. 4d). Note that our branching scheme works also in the case when K resides outside the trigonometric circle.
3 The new algorithm
In this section, we discuss the details of our newly proposed algorithm for addressing the Nesting Problem to guaranteed optimality. As already discussed, the algorithm implements a BB search process that solves at each node LP relaxations of the type (7)–(12). The overall algorithm is illustrated in Fig. 6.
We remark that, at the root node, the LP relaxation model only includes constraints (9), (10), and (12). Consequently, it does not include any linear relaxation of trigonometric or nonoverlapping constraints, since no branching has yet occurred towards enforcing their feasibility.
3.1 Feasibility checking
After solving an LP relaxation (7)–(12), we check whether its optimal solution is a feasible configuration for the Nesting Problem. A feasible configuration has to be insured against two conditions: (i) all rotational angles are correctly defined, that is, trigonometric constraints (2) are satisfied; (ii) there is no overlap among polygons. For the former condition, we utilize a parameter \(\varepsilon _{\theta }\) to denote what resolution of a rotational angle would be satisfactory to achieve. Consequently, we can declare that a trigonometric constraint is satisfied at a given \(\left( c^*_p, s^*_p\right) \) when the quantity \(\sqrt{c^{*^2}_p + s^{*^2}_p}1\) is bounded from above by \(\varepsilon ^{\text {max}}_{\theta } = \frac{1}{\cos \left( \frac{\varepsilon _\theta }{2}\right) }  1\) and from below by \(\varepsilon ^{\text {min}}_{\theta } = 1  \cos \left( \frac{\varepsilon _\theta }{2}\right) \). For the latter condition, we first check whether all circle pairs covered by the circle library \(\left\{ C_p\right\} _{p \in P}\) satisfy a penetration tolerance \(\varepsilon _{\phi }\) at their applicable \(\left( {\varDelta }x^*_{pmqn}, {\varDelta }y^*_{pmqn}\right) \). Assuming this is the case, the penetrationcomputing procedure proposed in Jones [14] is then applied to check the solution also for possible overlaps not covered by the circle library. We highlight that assessing possible violations against the static library of circles is a step that is significantly faster computationally than the more expensive penetrationcomputing algorithm. To that end, our strategy ensures that invocation of the latter is only reserved for those cases when it is absolutely necessary. If both feasibility conditions are met, then a feasible configuration has been obtained; the solution can be considered as a possible new incumbent solution and the node is fathomed. Otherwise, the node must either be tightened or branched upon in order to eliminate the current solution.
3.2 Branching rule selection
As discussed earlier, our BB algorithm utilizes two types of branching rules, one aimed at enforcing the feasibility of the trigonometric constraints and one aimed at doing so for the nonoverlapping constraints. In order to properly decide which of these two heterogeneous rules to implement each time branching is to be performed, we first provide a suitable way to normalize the violations of trigonometric constraints. More specifically, let \(R^{ch}_p\) denote the radius of a circle with the same area as the convex hull of polygon p. From a geometric point of view, the shortest distance between \(\left( c^*_p, s^*_p\right) \) and the corresponding trigonometric circle’s circumference, i.e., \(\left \sqrt{c^{*^2}_p + s^{*^2}_p}  1\right \), indicates the extent to which the polygon \(p \in P\) is allowed to contract or expand as a result of the relaxation imposed on its rotational angle. Hence, the quantity \(V^{\theta }_p = R^{ch}_p \left \sqrt{c^{*^2}_p + s^{*^2}_p}  1\right \) can be used as a suitable metric to express a trigonometric constraint’s violation in terms of magnitude of polygon overlap. This quantity is directly comparable with the extent to which two circles are overlapping, namely \(V^{\phi }_{pmqn} = R_{pm} + R_{qn}  \sqrt{{\varDelta }x^{*^2}_{pmqn} + {\varDelta }y^{*^2}_{pmqn}}\).
Let \(\hat{p} \in P\) be the polygon with the highest trigonometric constraint violation, and let \(\left( \bar{m},\bar{n}\right) \in C_{\bar{p}} \times C_{\bar{q}}\), where \(\left( \bar{p},\bar{q}\right) \in \left\{ P \times P : \bar{q} > \bar{p} \right\} \), be the circle pair with the highest nonoverlapping constraint violation. We choose to branch based on the former if \(V^{\theta }_{\hat{p}} > \tau ^{\text {noov}} V^{\phi }_{\bar{p}\bar{m}\bar{q}\bar{n}}\), while we branch on the latter otherwise. Here, \(\tau ^{\text {noov}} < 1\) is a weighting factor to prioritize branching on trigonometric constraints before branching on nonoverlapping ones, which our computational experience has determined as beneficial to do. Furthermore, since branching into two subdomains will produce fewer child nodes in the BB tree than the initial branching into three subdomains, the violations of currently unbranched nonoverlapping constraints are further discounted by some factor \(\tau ^{\text {unbr}} < 1\).
3.3 Feasibilitybased node tightening
We apply the above projection and tightening procedure every time an LP relaxation is solved. More specifically, we focus on the up to \(N^{\text {fbt}}\) polygon pairs \(\left( p, q\right) \in \left\{ P \times P: q > p\right\} \) that overlap the most, identify the pair of circles \(\left( \bar{m}, \bar{n}\right) \in C_p \times C_q\) that are responsible for these violations, and attempt to tighten the feasible spaces \(F_{p\bar{m}q\bar{n}}\) using information from any relevant space \(F_{pmqn}\). If the resulting linear cuts are strong enough to cut off the relaxed solution, these cuts are immediately added to the model (augmenting the set \(C^2_{pq}\), if necessary) and the latter is resolved. It is important to note, however, that even if these cuts do not strengthen the LP relaxation, they may prove useful in tightening the model at some later point during the course of the BB search. To take advantage of this fact, we save the linear cuts to nodespecific libraries of previously identified cuts. Future node solutions are first checked for possible violations against these libraries before applying the full feasibilitybased tightening process.
Finally, we remark that feasibilitybased tightening can also be applied as soon as a branching step based on an implicit angle \(\phi _{pmqn}\) is taken, in order to strengthen the newlyformed children nodes. More specifically, the restricted feasible space \(F_{pmqn}\) in the child node’s domain that resulted from application of the branching disjunction can be projected so as to tighten any applicable spaces \(F_{p\bar{m}q\bar{n}}\).
3.4 Tighter variable bounds
3.5 Symmetry breaking constraints
 (i)
Polygon rotational symmetry: For a polygon \(p \in P\) with a rotationally symmetric angle, \({\varTheta }_p\), relative to its center (e.g., for a perfect square, \({\varTheta }_p = \pi /4\)), one may break symmetry by imposing \(\theta _p \le {\varTheta }_p\).^{2}
 (ii)
Identical polygons: When two polygons p and q, such that \(q > p\), are identical, then \(h_p \le h_q\) can be added into the model to break this symmetry.^{3}
 (iii)
Sheet orientation: This symmetry arises due to the fact that an equivalent packing solution can always be obtained when rotating the entire configuration by 180 degrees. Hence, in all instances one can enforce \(\theta _{p^\star } \le \pi \), where \(p^\star \in P\) is a specific polygon that one chooses for purposes of defining this constraint.
4 Computational studies
Parameters used in the new algorithm
Symbol  Parameter  Value 

\(\varepsilon _{\theta }\)  Resolution of rotational angle  \(\frac{2\pi }{360}\) 
\(\varepsilon _{\phi }\)  Tolerance for circle penetration checking  \(10^{3}\) 
\(\varepsilon ^{\text {opt}}\)  Optimality tolerance  \(10^{3}\) 
\(N^{\text {lib}}\)  Number of inscribed circles per polygon initially in library  30 
\(N^{\text {fbt}}\)  Maximum number of circle pairs for which feasibilitybased tightening is attempted  6 
\(\tau ^{\text {noov}}\)  Weighting factor for violation of a nonoverlapping constraint  0.1 
\(\tau ^{\text {unbr}}\)  Weighting factor for violation of an unbranched nonoverlapping constraint  0.3 
4.1 Instances
In order to generate our suite of benchmark testing instances, we use the data from the wellstudied instance SHAPES2 [18], which features a total of seven different polygons shown in Fig. 9. Using all possible combinations of these polygons, we generated a total of 64 nesting instances, namely 35 fourpolygon, 21 fivepolygon, 7 sixpolygon, and 1 sevenpolygon instances. According to the dataset, the fixed width of the rectangular sheet is \(W = 15\).^{5}
4.2 Fixed orientation case
Comparison between QPNest and the new algorithm for the case of fixed orientation, using a naive solution as incumbent
# of polygons  # of instances  Avg. # of nonconvex polygons  “BestofFour” QPNest approach  New BBbased approach  

# of solved instances  Avg. time (s)  Avg. gap (%)  # of solved instances  Avg. time (s)  Avg. gap (%)  
4  35  1.7  35  309  –  35  4  – 
5  21  2.1  12  1517  67.9  21  94  – 
6  7  2.6  1  2155  70.5  7  591  – 
7  1  3.0  0  –  76.0  0  –  0.2 
Comparison between QPNest and the new algorithm for the case of fixed orientation, using an optimal solution as incumbent
# of polygons  # of instances  Avg. # of nonconvex polygons  “BestofFour” QPNest approach  New BBbased approach  

# of solved instances  Avg. time (s)  Avg. gap (%)  # of solved instances  Avg. time (s)  Avg. gap (%)  
4  35  1.7  35  116  –  35  2  – 
5  21  2.1  16  1587  1.6  21  55  – 
6  7  2.6  1  1398  3.1  7  406  – 
7  1  3.0  0  –  6.6  1  4176  – 
4.3 Free rotation case
Comparison between QPNest and the new algorithm for the case of free rotation, using a naive solution as incumbent
# of polygons  # of instances  Avg. # of nonconvex polygons  “BestofFour” QPNest approach  New BBbased approach  

# of solved instances  Avg. time (s)  Avg. gap (%)  # of solved instances  Avg. time (s)  Avg. gap (%)  
4  35  1.7  22  6565  71.2  34  1646  58.3 
5  21  2.1  0  –  80.1  2  18,938  54.3 
6  7  2.6  0  –  94.6  0  –  66.9 
7  1  3.0  0  –  *  0  –  61.5 
Comparison between QPNest and the new algorithm for the case of free rotation, using an optimal fixedorientation solution as incumbent
# of polygons  # of instances  Avg. # of nonconvex polygons  “BestofFour” QPNest approach  New BBbased approach  

# of solved instances  Avg. time (s)  Avg. gap (%)  # of solved instances  Avg. time (s)  Avg. gap (%)  
4  35  1.7  23  6764  13.0  35  287  – 
5  21  2.1  0  –  26.9  10  17,058  41.6 
6  7  2.6  0  –  71.9  0  –  54.8 
7  1  3.0  0  –  *  0  –  52.6 
5 Conclusions
Nesting irregular shapes within rectangular sheets while allowing both translation and free rotation is an industrially important, yet notoriously hard, problem for which little effort has been devoted on how to solve to provable optimality. To the best of our knowledge, the QPNest approach proposed in Jones [14] was the only exact method that could obtain global optimal solutions for certain instances up to four polygons. This performance was confirmed also via the computational study we conducted in this paper, where we used the latest available versions of four different global optimization solvers as the basis for the QPNest method.
Our new approach adopts the circlecovering idea, but instead of solving quadratically constrained programming nesting model approximations iteratively, it proposes to tackle the full problem in a single branch and bound search, using a customized linear relaxation and a novel branching scheme. We also propose several model tightening techniques, which can be readily incorporated in the dynamic process of the search. Many of the proposed ideas can in fact have wider applicability, beyond the context of shape nesting, when addressing optimization models that feature reverse convex quadratic constraints. Our computational studies on a suite of 64 benchmark instances demonstrated the competitiveness of the new approach. Meanwhile, for the first time in the open literature, fivepolygon nestings under free rotation were solved to global optimality.
6 List of symbols
7 Indices
 p, q

Polygon
 i, j

Vertex
 m, n

Circle
8 Sets
 P

Set of polygons to nest
 \(I_p\)

Set of vertices of polygon p
 \(C_p\)

Set of circles inscribed in polygon p
 \(\hat{P}\)

Subset of polygons whose rotational angle interval has been branched
 \(C_{pq}^2\)

Set of circle pairs between polygon p and polygon q that have been branched
 \(F_{pmqn}\)

Feasible space of relaxed nonoverlapping constraints for circle m in polygon p and circle n in polygon q
9 Continuous variables
 \(h_p\)

Horizontal translation of polygon p
 \(v_p\)

Vertical translation of polygon p
 \(\theta _p\)

Rotation of polygon p
 \(c_p\)

Cosine of \(\theta _p\)
 \(s_p\)

Sine of \(\theta _p\)
 L

Length of sheet on which shapes are nested
 \(({\varDelta }x_{pmqn},{\varDelta }y_{pmqn})\)

Displacement between circle m in polygon p and circle n in polygon q
 \(\phi _{pmqn}\)

Angle between center of circle m in polygon p and circle n in polygon q
10 Parameters
 \((x_{pi},y_{pi})\)

Nominal coordinates of vertex i on polygon p
 \((x_{pm},y_{pm})\)

Nominal coordinates of center of circle m inscribed in polygon p
 \(R_{pm}\)

Radius of circle m inscribed in polygon p
 W

Width of sheet on which shapes are nested
 \(L_{\text {BKS}}\)

Sheet length of best known nesting solution
 \(N^{\text {init}}\)

Number of circles initially inscribed per polygon
 \(N^{\text {lib}}\)

Number of circles initially present in a library of inscribed circles per polygon
 \(\left( \theta _p^L,\theta _p^U\right) \)

Lower and upper bounds on the rotation of polygon p
 \(\left( \phi _{pmqn}^L,\phi _{pmqn}^U\right) \)

Lower and upper bounds on the angle between center of circle m in polygon p and circle n in polygon q
 \(\hat{\alpha }_{pk}, \hat{\beta }_{pk}, \hat{\gamma }_{pk}\)

Coefficients to define relaxed trigonometric constraint k for polygon p
 \(\alpha _{pmqnk}, \beta _{pmqnk}, \gamma _{pmqnk}\)

Coefficients to define relaxed nonoverlapping constraint k for circle m in polygon p and circle n in polygon q
 \(\varepsilon _\theta \)

Resolution of rotational angles
 \(\varepsilon _\phi \)

Tolerance on shape penetration
Footnotes
 1.
In fact, one needs only impose these constraints for the vertices that constitute the convex hull of polygon \(p \in P\).
 2.
 3.
We prefer to use \(h_p + v_p \le h_q + v_q\), because it is likely to break symmetry in more instances.
 4.
In the original implementation of Jones [14], the values 5 and 13 were proposed for parameter \(N^{\text {init}}\). However, in most instances used in this study, we found that using 5 or more circles per each and every polygon leads to initial QCP models that cannot be solved within the time limit, i.e., the GO solvers could not even complete the first (and also easiest) iteration. In contrast, using the setting \(N^{\text {init}}= 3\) and allowing the circle sets to grow more judiciously as overlaps are identified led to much better performance of the QPNest approach.
 5.
For the sake of better numerical stability, in our implementations the width was normalized down to the value of 1, and all coordinates were scaled correspondingly.
Notes
Acknowledgements
This work is dedicated to the memory of our academic father and grandfather, Professor Christodoulos A. Floudas. While his untimely passing has left us all with sorrow, his lasting impact on the field of Global Optimization shall remain a source of inspiration.
References
 1.Achterberg, T.: SCIP: solving constraint integer programs. Math. Program. Comput. 1(1), 1–41 (2009)MathSciNetCrossRefMATHGoogle Scholar
 2.AlvarezValdes, R., Parreño, F., Tamarit, J.M.: Reactive GRASP for the strippacking problem. Comput. Oper. Res. 35(4), 1065–1083 (2008)CrossRefMATHGoogle Scholar
 3.AlvarezValdes, R., Martinez, A., Tamarit, J.M.: A branch and bound algorithm for cutting and packing irregularly shaped pieces. Int. J. Prod. Econ. 145(2), 463–477 (2013)CrossRefGoogle Scholar
 4.Bennell, J.A., Oliveira, J.F.: The geometry of nesting problems: a tutorial. Eur. J. Oper. Res. 184(2), 397–415 (2008)MathSciNetCrossRefMATHGoogle Scholar
 5.Bortfeldt, A.: A genetic algorithm for the twodimensional strip packing problem with rectangular pieces. Eur. J. Oper. Res. 172(3), 814–837 (2006)MathSciNetCrossRefMATHGoogle Scholar
 6.Burke, E., Hellier, R., Kendall, G., Whitwell, G.: A new bottomleftfill heuristic algorithm for the twodimensional irregular packing problem. Oper. Res. 54(3), 587–601 (2006)MathSciNetCrossRefMATHGoogle Scholar
 7.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)MathSciNetCrossRefMATHGoogle Scholar
 8.Cherri, L.H., Mundim, L.R., Andretta, M., Toledo, F.M., Oliveira, J.F., Carravilla, M.A.: Robust mixedinteger linear programming models for the irregular strip packing problem. Eur. J. Oper. Res. 253(3), 570–583 (2016)MathSciNetCrossRefMATHGoogle Scholar
 9.Daniels, K., Milenkovic, V.J.: Multiple translational containment: approximate and exact algorithms. In: Clarkson, K. (ed.) Proceedings of the Sixth Annual ACMSIAM Symposium on Discrete Algorithms, pp. 205–214 (1995)Google Scholar
 10.Fischetti, M., Luzzi, I.: Mixedinteger programming models for nesting problems. J. Heuristics. 15(3), 201–226 (2009)CrossRefMATHGoogle Scholar
 11.Gomes, A.M., Oliveira, J.F.: Solving irregular strip packing problems by hybridising simulated annealing and linear programming. Eur. J. Oper. Res. 171(3), 811–829 (2006)CrossRefMATHGoogle Scholar
 12.Hillestad, R.J., Jacobsen, S.E.: Reverse convex programming. Appl. Math. Optim. 6, 63–78 (1980)MathSciNetCrossRefMATHGoogle Scholar
 13.Hopper, E., Turton, B.C.: A review of the application of metaheuristic algorithms to 2D strip packing problems. Artif. Intell. Rev. 16(4), 257–300 (2001)CrossRefMATHGoogle Scholar
 14.Jones, D.R.: A fully general, exact algorithm for nesting irregular shapes. J. Global Optim. 59, 367–404 (2014)MathSciNetCrossRefMATHGoogle Scholar
 15.Lindo Systems Inc.: LINDOGlobal 11.0 (2017)Google Scholar
 16.Milenkovic, V.J.: Rotational polygon containment and minimum enclosure using only robust 2D constructions. Comput. Geometry 13, 3–19 (1999)MathSciNetCrossRefMATHGoogle Scholar
 17.Misener, R., Floudas, C.A.: GloMIQO: global mixedinteger quadratic optimizer. J. Global Optim. 57(1), 3–50 (2013)MathSciNetCrossRefMATHGoogle Scholar
 18.Oliveira, J.F., Gomes, A.M., Ferreira, J.S.: TOPOS: a new constructive algorithm for nesting problems. OR Spektrum 22(2), 263–284 (2000)MathSciNetCrossRefMATHGoogle Scholar
 19.Rocha, P., Rodrigues, R., Gomes, A.M., Toledo, F.M.B., Andretta, M.: Circle covering representation for nesting problems with continuous rotations. IFAC Proc. Vol. 47(3), 5235–5240 (2014)CrossRefGoogle Scholar
 20.Rodrigues, M.O., Cherri, L.H., Mundim, L.R.: MIP models for the irregular strip packing problem: new symmetry breaking constraints. ITM Web Conf. 14, 00005 (2017)CrossRefGoogle Scholar
 21.Tawarmalani, M., Sahinidis, N.V.: A polyhedral branchandcut approach to global optimization. Math. Program. 103(2), 225–249 (2005)MathSciNetCrossRefMATHGoogle Scholar
 22.Wäscher, G., Haußner, H., Schumann, H.: An improved typology of cutting and packing problems. Eur. J. Oper. Res. 183(3), 1109–1130 (2007)CrossRefMATHGoogle Scholar