Skip to main content
Log in

Packing circles into perimeter-minimizing convex hulls

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

Abstract

We present and solve a new computational geometry optimization problem in which a set of circles with given radii is to be arranged in unspecified area such that the length of the boundary, i.e., the perimeter, of the convex hull enclosing the non-overlapping circles is minimized. The convex hull boundary is established by line segments and circular arcs. To tackle the problem, we derive a non-convex mixed-integer non-linear programming formulation for this circle arrangement or packing problem. Moreover, we present some theoretical insights presenting a relaxed objective function for circles with equal radius leading to the same circle arrangement as for the original objective function. If we minimize only the sum of lengths of the line segments, for selected cases of up to 10 circles we obtain gaps smaller than \(10^{-4}\) using BARON or LINDO embedded in GAMS, while for up to 75 circles we are able to approximate the optimal solution with a gap of at most \(14\%\).

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

Similar content being viewed by others

Notes

  1. The term polylithic has been coined by Kallrath [10, 12] to refer to tailor-made modeling and solution approaches to solve optimization problems exploiting several models and their solutions.

References

  1. Ahn, H.K., Cheong, O.: Aligning two convex figures to minimize area or perimeter. Algorithmica 62(1), 464–479 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  2. Bennell, J., Scheithauer, G., Stoyan, Y., Romanova, T., Pankratov, A.: Optimal clustering of a pair of irregular objects. J. Global Optim. 61(3), 497–524 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  3. Bezdek, K.: Lectures on Sphere Arrangements—the Discrete Geometric Side, vol. 32. Springer, New York (2013)

    Book  MATH  Google Scholar 

  4. Böröczky, J.R.: Finite Packing and Covering. Cambridge Tracts in Mathematics. Cambridge University Press, Cambridge (2004)

    Book  Google Scholar 

  5. Castillo, I., Kampas, F., Pintér, J.: Solving circle packing problems by global optimization: numerical results and industrial application. Eur. J. Oper. Res. 191(3), 786–802 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  6. Conway, J., Sloane, N.: Sphere Packings, Lattices and Groups. A Series of Comprehensive Studies in Mathematics. Springer, Berlin (1988)

    Book  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  8. Hifi, M., M’Hallah, R.: Adaptive and restarting techniques-based algorithms for circular packing problems. Comput. Optim. Appl. 39, 17–35 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  9. Hifi, M., Paschos, V., Zissimopoulos, V.: A simulated annealing approach for the circular cutting problem. Eur. J. Oper. Res. 159, 430–448 (2004)

    Article  MATH  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. Global Optim. 43, 299–328 (2009)

    Article  MathSciNet  MATH  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  13. Kallrath, J.: Packing ellipsoids into volume-minimizing rectangular boxes. J. Global Optim. 67(1), 151–185 (2017). https://doi.org/10.1007/s10898-015-0348-6

    Article  MathSciNet  MATH  Google Scholar 

  14. Libeskind, S.: Euclidean and transformational geometry: a deductive inquiry. Jones & Bartlett Learning, LLC (2008). https://books.google.de/books?id=JiTse0Nm_-IC

  15. Nash, E., Pir, A., Sottile, F., Ying, L.: Convex hull of two circles in \(r^3\). Tech. rep. Algebraic Geometry (2017)

  16. Rappaport, D.: A convex hull algorithm for discs, an application. Comput. Geom. Theory Appl. 1(3), 171–187 (1992)

    Article  MathSciNet  MATH  Google Scholar 

  17. Stetsyuk, P., Romanova, T., Scheithauer, G.: On the global minimum in a balanced circular packing problem. Optim. Lett. 10, 1347–1360 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  18. Stoyan, Y., Yaskov, G.: Packing congruent hyperspheres into a hypersphere. J. Global Optim. 52(4), 855–868 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  19. Stoyan, Y., Yaskov, G.: Packing unequal circles into a strip of minimal length with a jump algorithm. Optim. Lett. 8(3), 949–970 (2014). https://doi.org/10.1007/s11590-013-0646-1

    Article  MathSciNet  MATH  Google Scholar 

  20. Thue, A.: Über die dichteste Zusammenstellung von kongruenten Kreisen in einer Ebene. J. Dybwad (1910). https://books.google.de/books?id=IUJyQwAACAAJ

Download references

Acknowledgements

We thank Julius Näumann (Student, TU Darmstadt, Darmstadt, Germany), Prof. Dr. Julia Kallrath and Jan-Erik Justkowiak (Student, Hochschule Darmstadt, Darmstadt, Germany) and Dr. Fritz Näumann (Consultant, Weisenheim am Berg, Germany) for their careful reading of and feedback on the manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Markus M. Frey.

Appendices

Notation

We start with the symbols introduced in the derivation of the model; they are not used in the MINLP model directly.

\(\Delta \) :

the difference between the upper and lower bound from the LP relaxation for the MINLP provided by the solver.

\(\partial {\mathcal {S}}\) :

the perimeter of the convex hull hosting all circles.

\({\mathcal {H}}_{ij}\) :

hyperplane induced by the circular line segment of circle i connecting a pair of ingoing and outgoing vertices \(\mathbf{v}_{j}^{\mathrm {la}}\) and \(\mathbf{v}_{j++1}^{\mathrm {al}}\) located on that circle. In our 2D problem, \({\mathcal {H}}_{ij}\) is a straight line.

\({\mathcal {H}}_{j}\) :

hyperplane induced by line segment j connecting and tangential to two adjacent circles. In our 2D problem, \({\mathcal {H}}_{j}\) is a straight line.

m :

the number of circles touching the convex hull; \(m \le n\).

n :

the number of circles to be placed.

\(N^\mathrm {ls}_i\) :

for circle i, the maximal number of incoming or outgoing line segments.

\(\mathbf{n}_{j}^{\mathrm {H}}\) :

the normal vector onto hyperplane \({\mathcal {H}}_{j}\) induced by line segment j connecting two circles.

\({\mathcal {S}}\) :

the convex hull hosting all circles.

\(S_{ij}\) :

specifying whether arc on circle i induced by line segment j is a major (\(S_{ij}=1\)) or minor sector (\(S_{ij}=0\)); \(S_{ij} \in \{0,1\}\).

\(\mathbf{v}_{j}^{\mathrm {al}}\) :

vertex connecting a source arc to line segment j; \(\mathbf{v}_{j}^{\mathrm {al}}=(v_{1j}^{\mathrm {al}},v_{2j}^{\mathrm {al}})\)

\(\mathbf{v}_{j}^{\mathrm {an}}\) :

vertex connecting a source arc line segment \(j+1\); \(\mathbf{v}_{j}^{\mathrm {an}}=(v_{1j}^{\mathrm {an}},v_{2j}^{\mathrm {an}})\).

\(\mathbf{v}_{j}^{\mathrm {la}}\) :

vertex connecting line segment j to a destination arc; \(\mathbf{v}_{j}^{\mathrm {la}}=(v_{1j}^{\mathrm {la}},v_{2j}^{\mathrm {la}})\).

\(\mathbf {x}^{\mathrm {c}}\) :

radius-weighted center of all circles.

The symbols used in the MINLP model are summarized in the following subsections.

1.1 Indices and sets

  • \(d \in \{1,2\}\) index for the dimension; \(d=1\) represents the length, and \(d=2\) the width of the rectangle.

  • \(i\in {\mathcal {I}}:= \{ 1, \ldots , n \}\) objects (circles) to be packed.

  • \(j\in {\mathcal {J}}:= \{ 1, \ldots , m \le N^\mathrm {J} \le n \}\) line segments potentially connecting circles and tangential to the convex hull. Note that the number m of active line segments is identical to the number of circular arcs contributed to \(\partial {\mathcal {S}}\).

1.2 Data

\(E_d\) :

length (\(d=1\)) and width (\(d=2\)) of the rectangle.

L :

length of the rectangle.

\(R_i\) :

radius of circle i to be packed.

\(S_i\) :

indicator specifying to use a major (\(S_i=1)\) or minor (\(S_i=0)\) sector of circle i contributing an arc to the boundary of the convex hull.

W :

width of the rectangle.

1.3 Decision variables

\(d_{j}^{\mathrm {H}}\) :

distance of hyperplane \({\mathcal {H}}_{j}\) induced by line segment j to the origin of the coordinate system.

\(m_{ij}^{\mathrm {D}}\) :

distance of hyperplane \({\mathcal {H}}_{ij}\) induced by circle segment i to the origin of the coordinate system.

\(\mathbf {m}_{dij}^{\mathrm {H}}\) :

a specific orthogonal vector onto the circle line segment of circle i connecting \(\mathbf {v}_{j}^{\mathrm {la}}\) and \(\mathbf {v}_{j}^{\mathrm {an}}\).

\(n_{dj}^{\mathrm {H}}\) :

the normal vector onto hyperplane \({\mathcal {H}}_{j}\) induced by line segment j connecting two circles (direction d).

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

(continuous) extension of the rectangle in dimension d.

\(x_{id}^0\) :

(continuous) coordinates of the center vector of circle i to be packed.

\(\alpha _{ij}\) :

(continuous) sector angle of circle i induced by line segment j.

\(\delta _{ij}\) :

(binary) indicates whether circle i has incoming or outgoing line segment j.

\(\delta _{j}^{\mathrm {A}}\) :

(binary) indicates whether vertices \(\mathbf {v}_{j}^{\mathrm {al}}\) and \(\mathbf {v}_{j}^{\mathrm {la}}\) are active, i.e., line segment j is used.

\(\delta _{ij}^{\mathrm {D}}\) :

(binary) indicates whether circle i is the destination of line segment j.

\(\delta _{j}^{\mathrm {L}}\) :

(binary) indicates whether line segment j is the last active one used.

\(\delta _{ij}^{\mathrm {S}}\) :

(binary) indicates whether circle i is the origin of line segment j.

\(\ell \) :

(continuous) length of the convex hull perimeter.

\(\mu \) :

(integer) the number of active line segments.

Detailed derivations

In this section we provide various derivations in detail.

1.1 Segment and angle

For a given circle of radius R and angle \(\alpha \), measured in radians, the length of the corresponding circular arc is given by

$$\begin{aligned} b=R\alpha \quad . \end{aligned}$$

The length s of a circular segment is related to angle \(\alpha \) by

$$\begin{aligned} s=2R\sin \frac{\alpha }{2}\quad \Longleftrightarrow \quad \alpha =2\arcsin \frac{s}{2R}\quad , \end{aligned}$$

and thus

$$\begin{aligned} b=2R\arcsin \frac{s}{2R}\quad , \end{aligned}$$

where \(s=\left\| \mathbf {m}_{ij}^{\mathrm {H}}\right\| _{2}\) if circle i contributes a circular arc induced by line segment j to the boundary of the convex hull. We have exploited this in (2.59).

Unfortunately, the strong global solver BARON available to us, does not support trigonometric functions. Therefore, we approximate the \(\arcsin \) -function. We could approximate \(\arcsin x\) by its Taylor series expansion

$$\begin{aligned} \arcsin x= & {} \sum _{n=0}^{\infty }\frac{(2n)!}{4^{n}(n!)^{2}(2n+1)}x^{2n+1} \\= & {} x+\frac{1}{6}x^{3}+\frac{3}{40}x^{5}+\frac{5}{112}x^{7}+\frac{ 35}{1152}x^{9}+\frac{63}{2816}x^{11}+O\left( x^{13}\right) \quad , \end{aligned}$$

but as convergence is very slow near \(x=1\), we take a different approximation. For \(x\in [0,1]\) we use

$$\begin{aligned} \arcsin x\approx \frac{\pi }{2}-\sqrt{-\frac{1}{c}\ln \left( 1+\frac{x-1}{e} \right) } \end{aligned}$$

with

$$\begin{aligned} c=\frac{4}{\pi ^{2}}\left[ 1-\ln (e-1)\right] \quad . \end{aligned}$$

This approximation is accurate up to 0.35%, and it is exact in \(x=0\) and \( x=1\). For the full range, \(x\in [-1,1]\), we use

$$\begin{aligned} \arcsin x\approx sign(x)\left[ \frac{\pi }{2}-\sqrt{-\frac{1}{c}\ln \left( 1+ \frac{x-1}{e}\right) }\right] \quad . \end{aligned}$$

Note that BARON supports the logarithmic function \(\ln \). Although the approximation is very good, after the computations using BARON, we use the solution as initial point to LINDOGLOBAL which supports arcsin.

1.2 Useful inequalities

We exploit Theorem 4.3.1 (Wegner inequality, page 109) in [4] to obtain a lower bound of the area of the convex hull enclosing n unit discs. If \(D_{n}\) is the convex hull of n non-overlapping unit discs \((R=1)\) then

$$\begin{aligned} A(D_{n})\ge \sqrt{12}(n-1)+\left( 2-\sqrt{3}\right) \left\lceil \sqrt{12n-3}-3\right\rceil +\pi \quad . \end{aligned}$$
(B.83)

For \(R=0.5\), divide both sides of (B.83) by 4. If we also use the reverse isoperimetric inequality

$$\begin{aligned} 4\pi A\le L^{2}\quad , \end{aligned}$$

we get a lower bound \(L_{\mathrm {lb}}\) on L, the length of the boundary \( \partial {\mathcal {S}}\) of the convex hull \({\mathcal {S}}\). For instance, for \( n=14\) and \(R=0.5\), we get

$$\begin{aligned} L_{\mathrm {lb}}=\sqrt{\pi \left[ \sqrt{12}(n-1)+\left( 2-\sqrt{3}\right) \left\lceil \sqrt{12n-3}-3\right\rceil +\pi \right] }\approx 12.64\quad . \end{aligned}$$

The best solution we found for \(n=14\) is 13.6057, i.e., a gap of 7.6 percent.

On page 99 in [4] we find the somewhat weaker inequality

$$\begin{aligned} A(D_{n})\ge \sqrt{12}n\ \quad , \end{aligned}$$

which for \(R=0.5\) gives a lower bound of \(L_{\mathrm {lb}}\approx \)12.34. The closer \(\partial {\mathcal {S}}\) to a circle, the tighter these lower bounds become.

1.3 Proofs

1.3.1 The sum of the angles

Consider any set of circles with radii \(R_{i}\) enclosed by its convex hull \( {\mathcal {S}}\). Note that here we do not require the \({\mathcal {S}}\) is minimal in its area or length of the perimeter of its boundary \(\partial {\mathcal {S}}\) , i.e., no restrictions on whether the circles are detached or touching each other. The sum of the angles \(\alpha _{i}\) (Note: For simplicity, we consider here only the case of circles contributing at most one arc to \(\partial {\mathcal {S}}\), which allows us to neglect the index j. The idea of the proof works likewise for considering several arcs contributed by the same circle.) of the circular sectors contributing an arc to \(\partial {\mathcal {S}}\) equals to \(360^{\circ }\). Proof: If circle i does not contribute an arc to \(\partial {\mathcal {S}}\), we set \(\alpha _{i}=0\) . Consider circles \(i=1\) and \(i=2\) with centers \(x_{i}^{\mathrm {0}}\), a corresponding circular sector, \(\mathcal {C}_{1}\), contributing an arc to \( \partial {\mathcal {S}}\), the origin \(\mathbf {v}_{1}^{\mathrm {al}}\in \mathcal {C }_{1}\) of the outgoing line segment connecting to its adjacent circular segment, \(\mathcal {C}_{2}\), \(\mathcal {C}_{2}\) itself, and the destination point \(\mathbf {v}_{1}^{\mathrm {la}}\)\(\in \mathcal {C}_{2}\) of the line segment as displayed in Fig. 8a. Since \( \mathbf {v}_{1}^{\mathrm {al}}\) and \(\mathbf {v}_{1}^{\mathrm {la}}\) are touching points on \(\mathcal {C}_{2}\) and \(\mathcal {C}_{1}\), they are orthogonal on the connecting line segment and the vectors \(\mathbf {v}_{1}^{ \mathrm {al}}-x_{2}^{\mathrm {0}}\) and \(\mathbf {v}_{1}^{\mathrm {la}}-x_{1}^{ \mathrm {0}}\) are parallel. We now perform a parallel shift of \(\mathcal {C} _{2}\) to \(\mathcal {C}_{1}\) along the line segment (see Fig. b and scale-down the larger circle so that the radii become equal.

Fig. 8
figure 8

Four circles \(i=1\), \(i=2\), \(i=3\) and \(i=4\) arranged in the plane where each arc has an angle of \(90^{\circ }\) (a). The shift of circle \(i=2\) to the position of circle \(i=1\) (b). a Arrangement of four circles in the plane, b shift the position of circle \(i=2\) to \(i=1\), c re-scale circle \(i=2\) to match the size of \(i=1\)

As the vectors \(\mathbf {v}_{1}^{\mathrm {al}}-x_{2}^{\mathrm {0}}\) and \( \mathbf {v}_{1}^{\mathrm {la}}-x_{1}^{\mathrm {0}}\) are parallel, \(\mathcal {C} _{2}\) matches \(\mathcal {C}_{1}\). After a parallel shift of the center of \( \mathcal {C}_{2}\) it matches exactly the center of \(\mathcal {C}_{1}\) if the smaller circle is increased so that both radii are identical. After scaling \( \mathcal {C}_{2}\) to match radius \(R_{1}\), the union circular sector \( \mathcal {C}_{1}\cup \mathcal {C}_{2}\) has an angle of \(\alpha _{1}+\alpha _{2} \). Note that neither the parallel shifts nor the scaling change the individual angles. If we apply this procedure now to \(\mathcal {C}_{1}\cup \mathcal {C}_{2}\) and \(\mathcal {C}_{3}\), we obtain \(\mathcal {C}_{1}\cup \mathcal {C}_{2}\cup \mathcal {C}_{3}\) with \(\alpha _{1}+\alpha _{2}+\alpha _{3}\). If we continue to apply this procedure to all circles whose sectors contribute an arc to \(\partial {\mathcal {S}}\), we obtain a circle with radius \( R=R_{1}\) and thus \(\sum _{i}\)\(\alpha _{i}=360.\) (q.e.d.)

In other words, we reduce \(\partial {\mathcal {S}}\) to its scaled arcs with line segments eliminated and thus finally obtaining a circle.

1.3.2 Limit on the number of incoming and outgoing line segments

The number \(n_{i}^{\mathrm {ls}}\) of incoming or outgoing line segments is identical to the maximal number of arcs which circle i can contribute to \( \partial {\mathcal {S}}\). If we have one circle only, \(\partial {\mathcal {S}}\) is identical to the circumference of that single circle, and thus \(N_{1}^{ \mathrm {ls}}=0\). In Figs. 1, 2 and 3, we observe \(\max _{i}\{N_{i}^{\mathrm {ls} }\}=1\), and in the non-minimal configurations displayed in Figs. 10a and 11 we have circles with \(N_{i}^{\mathrm {ls}}=2\) , i.e., \(\max _{i}\{N_{i}^{\mathrm {ls} }\}=2\). To derive reasonable value for \(N_{i}^{\mathrm {ls}}\) for minimal configurations, we consider two cases:

  1. 1.

    Unrestricted problem: \(L=W=\infty \), i.e., the fit-the-rectangle inequalities (2.24) and (2.25) are relaxed.

  2. 2.

    Restricted problem: The fit-the-rectangle inequalities (2.24) and (2.25) can be become active and need to be considered, especially, if the circles are large when compared to the size of the rectangle.

Unrestricted problem

For three or more circles, there exist arrangements such that a circle contributes two arcs to the convex hull boundary \(\partial {\mathcal {S}}\), and thus has two incoming and two outgoing line segments. In Fig. 9, for example, the circle in the middle contributes one arc in the Northern, and one on its Southern hemisphere to \( \partial {\mathcal {S}}\). But we will show that these arrangements are not minimal regarding the length of \(\partial {\mathcal {S}}\). The optimal property that each outer circle contributes exactly one arc to the convex hull boundary\(\partial {\mathcal {S}}\) will be denoted as property P in the following. Property P also is equivalent to the property that each outer circle has exactly one incoming and one outgoing line segment, i.e., \(N_{i}^{\mathrm {ls}}=1\) for all circles outer circles i.

Fig. 9
figure 9

Configuration with two incoming and outgoing line segments for the large circle \(i=2\)

In the case of two circles, both circles are outer circles and P is obviously fulfilled. For three circles the minimum length of \(\partial {\mathcal {S}}\) is given by cluster solution, (3.6)

$$\begin{aligned} \ell _{\mathrm {L}3}=2\left[ \sqrt{R_{1}R_{2}}+\sqrt{R_{2}R_{3}}+\sqrt{ R_{3}R_{1}}\right] \end{aligned}$$

with one incoming and outgoing line segment. Now consider a generalized sausage configuration (by this, we mean a configuration with circles lined-up along a straight line, or deviate only slightly from this virtual straight line) under the assumption that circle \(i=2\) is the largest circles placed in the middle with circle \(i=1\) on the left and circle \(i=3\) on the right side. Note that we have an outgoing line segment from circle 2 to circle 1, and an incoming line segment from circle 1 to circle 2, and a similar situation for the pair of circles 2 and 3. The total length \(\ell _{ \mathrm {L}3}^{\mathrm {sc}}\) of all line segments from the exact solutions ( 3.2) is

$$\begin{aligned} \ell _{\mathrm {L}3}^{\mathrm {sc}}= & {} 4\left[ \sqrt{R_{1}R_{2}}+\sqrt{ R_{2}R_{3}}\right] \\= & {} 2\left[ \sqrt{R_{1}R_{2}}+\sqrt{R_{2}R_{3}}\right] +2\left[ \sqrt{ R_{1}R_{2}}+\sqrt{R_{2}R_{3}}\right] \\\ge & {} 2\left[ \sqrt{R_{1}R_{2}}+\sqrt{R_{2}R_{3}}\right] +2\sqrt{R_{3}R_{1}} =\ell _{\mathrm {L}3}\quad . \end{aligned}$$
Fig. 10
figure 10

In a we see a configuration with one circle contributing two arcs. For this configuration, property P does not hold—and it has a large convex hull. In b we see an improved configuration which has property P and somewhat smaller length of \(\partial {\mathcal {S}}\). Finally, c has minimal length of \(\partial {\mathcal {S}}\). a Far from minimal configuration, b improved configuration, c minimal configuration

To provide a motivation for property P for the general case with \(n > 3\) circles, let \(i^*\) be the circle contributing two arcs to \(\partial S\). Due to the convexity property of \(\partial S\) circle \(i^*\) has to be larger than or to the surrounding circles sharing a line with circle \(i^*\). Note, since we have four lines leaving circle \(i^*\) the number of circles sharing a line segment with \(i^*\) are at most four and at least two. W.l.o.g. assume that one circle sharing a line segment with circle \(i^*\) is placed on circle \(i^*\) ’s left, denoted by \(i^\text {left}\), and all other circles on its right side. For example, Fig. 10a shows a configuration in which the largest circle \(i^* = 2\) contributes two arcs and circle \(i^\text {left} = 1\) is placed on its left side. According to the conjecture in Section 5, minimal \(\ell \) implies minimal \(\ell _{\mathrm {L}}\). Thus, assuming the conjecture is true, the configuration with one circle on the left site and the all other circles on the right side cannot lead to minimal value of \(\ell \) for the following reason: By moving circle \(i^\text {left}\) from the left site to the right side of circle \(i^*\), we reduce the number of required line segments by one and the total length \(\ell _{\mathrm {L}}\) of all line segments. The last statement is true due to the following proposition

Proposition 1

Given two circles. The smaller the radii of one of two circles, the smaller the length of the line segment required to connect both circles with each other.

Proposition 1 is true as the length of the line segment between two circles depends on their radii (see Section 2.9.2). Thus, circle \(i^{\text {left}}\) can be connected with any of the other circles on the right side of circle \(i^{*}\) with a line segment having a length smaller or equal to the length of the previous line segment which connected circle \(i^{*}\) with \(i^{\text {left}}\). If we move the smallest circle \(i=1\) in Fig. 10a to the right position as shown in Fig. 10b, \(i=2\) contributes one arc only to \(\partial {\mathcal {S}}\). The total number of required line segments is reduced by one and the total length \(\ell \) of \( \partial {\mathcal {S}}\) as well as the length of the line segments and arcs become smaller. If we now move circle 1 to the lower position as shown in Fig. 10c, we obtain the configuration with minimal value of \(\ell \).

For the four-circle case with \(R_{2}>R_{3}=R_{4}>R_{1}\) displayed in Fig. 10, we can explicitly prove that the sum \(\ell _{\mathrm {L}}^{(\mathrm {a})}\) of line segment lengths of \(\partial \mathcal {S }\) in configuration (a) is not minimal. According to (3.1), if we proceed counter-clockwise to consider the line segments of \(\partial {\mathcal {S}}\), we obtain

$$\begin{aligned} \ell _{\mathrm {L}}^{(\mathrm {a})}= & {} 2\left[ \sqrt{R_{1}R_{2}}+\sqrt{ R_{2}R_{4}}+\sqrt{R_{4}R_{3}}+\sqrt{R_{3}R_{2}}+\sqrt{R_{2}R_{1}}\right] \\&2\left[ \sqrt{R_{1}R_{2}}+\sqrt{R_{2}R_{4}}+\sqrt{R_{3}R_{4}}+\sqrt{ R_{2}R_{3}}+\sqrt{R_{1}R_{2}}\right] \quad . \end{aligned}$$

Now we compare \(\ell _{\mathrm {L}}^{(\mathrm {a})}\) to the minimal length \( \ell _{\mathrm {L}4}=\min \left\{ \ell _{\mathrm {L}4}^{(1)},\ell _{\mathrm {L} 4}^{(2)},\ell _{\mathrm {L}4}^{(3)}\right\} \) of four circles given by one of the tours with lengths \(\ell _{\mathrm {L}4}^{(1)},\ell _{\mathrm {L}4}^{(2)}\) and \(\ell _{\mathrm {L}4}^{(3)}\) calculated by (3.18), (3.19) and (3.20). Exploiting \(R_{2}>R_{3}=R_{4} \), we obtain

$$\begin{aligned} \ell _{\mathrm {L}}^{(\mathrm {a})}= & {} \ell _{\mathrm {L}4}^{(1)}+2\left[ \sqrt{ R_{1}}\left( \sqrt{R_{2}}-\sqrt{R_{4}}\right) \right]>\ell _{\mathrm {L} 4}^{(1)}\quad ,\\ \ell _{\mathrm {L}}^{(\mathrm {a})}= & {} \ell _{\mathrm {L}4}^{(2)}+2\left[ \sqrt{ R_{1}}\left( \sqrt{R_{2}}-\sqrt{R_{3}}\right) \right] >\ell _{\mathrm {L} 4}^{(2)}\quad , \end{aligned}$$

and

$$\begin{aligned} \ell _{\mathrm {L}}^{(\mathrm {a})}=\ell _{\mathrm {L}4}^{(3)}+2\left[ \sqrt{ R_{1}}\left( \sqrt{R_{2}}-\sqrt{R_{3}}\right) +\sqrt{R_{1}}\left( \sqrt{R_{2} }-\sqrt{R_{4}}\right) \right] >\ell _{\mathrm {L}4}^{(3)}\quad , \end{aligned}$$

i.e., \(\ell _{\mathrm {L}}^{(\mathrm {a})}>\ell _{\mathrm {L}4}\).

Restricted case The fit-the-rectangle inequalities (2.24) and (2.25) can force the minimal length convex hull into generalized sausage configurations. This is illustrated by Fig. 11. Three circles with radii \(R_{1}=R_{2}=2\) and \( R_{3}=1.5\) have to be placed in a rectangle specified by \(L=12\) and \(W=4\). The minimal length \(\ell _{*}=\ell _{\mathrm {L}}+\ell _{\mathrm {A}}\) is given by

$$\begin{aligned} \ell _{\mathrm {L}}=2\left[ 2R_{2}+2\sqrt{R_{2}R_{3}}\right] =8+4\sqrt{3} \approx 14.\,9282 \end{aligned}$$

and

$$\begin{aligned} \ell _{\mathrm {A}}= & {} \pi R_{1}+R_{2}\left[ 2\arccos \frac{2\sqrt{R_{2}R_{3}} }{R_{2}+R_{3}}\right] +R_{3}\left[ \pi -2\arccos \frac{2\sqrt{R_{2}R_{3}}}{ R_{2}+R_{3}}\right] \\= & {} \frac{7}{2}\pi +\arccos \frac{2\sqrt{R_{2}R_{3}}}{R_{2}+R_{3}}=\frac{7}{2} \pi +\arccos \frac{4\sqrt{3}}{7}\approx 11.1389 \end{aligned}$$

leading to an approximate value of \(\ell _{*}\approx 26.0671\) realized by the center coordinates \(\mathbf {x}_{1}^{\mathrm {0}}=(2,2)\), \(\mathbf {x} _{2}^{\mathrm {0}}=(6,2)\) and \(\mathbf {x}_{3}^{\mathrm {0}}=(9.5,2)\). In this example, that circle 2 has two incoming and outgoing line segments.

Fig. 11
figure 11

Three circles with radii \(R_{1}=R_{2}=2\) and \(R_{3}=1.5\) have to be placed in a rectangle specified by \(L=12\) and \(W=4\). a shows the configuration for the minimal length (\(\ell \approx 26.0671\)), if two arcs per circle are allowed. Note that circle 2 contributes two tiny arcs (\( \alpha _2 \approx 8.2132^{\circ }\)). In b we allow one arc only resulting in length (\(\ell \approx 27.5486\)). a\(N^{\mathrm {ls}}_i=2, \forall i\), b\(N^{\mathrm {ls}}_i=1, \forall i\).

As expected, when computing a solution with one incoming and one outgoing line segment, we obtain the configuration as displayed in Fig. 11b with \(\ell \approx 27.5486>\ell _{*}\). Therefore, for the restricted case, \(N_{i}^{\mathrm {ls}}=1\) is too tight and we may lose the optimal solution. \(N_{i}^{\mathrm {ls}}=2\) would be sufficient for this case.

Let us now consider a large circle with radius R and four small circles with radius r which touch the square (\(L=W=2R\)) on two adjacent sides of the square. From the condition

$$\begin{aligned} R+\frac{\sqrt{2}}{2}(R+r)+r=2R \end{aligned}$$

we derive

$$\begin{aligned} r=\frac{2-\sqrt{2}}{2+\sqrt{2}}R=\left( 3-2\sqrt{2}\right) R\approx 0.17157\cdot R\quad . \end{aligned}$$

This configuration has no degrees of freedom. All circles just fit into the square if we place the small circles into the corners of the square just touching the large circle. The large circle is not even an outer circle as the four line segments connecting the small circles are parts of the side of the rectangle. Only the small circles contribute arcs with equal angles

$$\begin{aligned} \alpha _{i}=\frac{\pi }{2}\quad ,\quad i\in {\mathcal {I}}_{\mathrm {s} }=\{2,3,4,5\} \end{aligned}$$

or \(90^{\circ }\); therefore, we do not mention index j in this context.

Fig. 12
figure 12

Minimal length configuration of five outer circles. The large circle with radius \(R=1\) contributes four equal arcs to \(\partial {\mathcal {S}} \), each with a small angle of \(5.135^{\circ }\). Each small circle with radius \(r=0.15\) adds one arc of \(84.\,685^{\circ }\). The thin blue lines indicate show the rectangle, a square in this case. (Color figure online)

If we now slightly decrease the small circles to radius \(r=0.15\), we obtain the minimal configuration with eight line segments as displayed in Fig. 12. All circles are outer circles, but now the large circle contributes four small arcs of angle \(5.135^{\circ }\) to \( \partial {\mathcal {S}}\), and thus has four outgoing and four ingoing line segments. Due to the symmetry, the small circles contribute arcs with equal angles

$$\begin{aligned} \alpha _{i}=\pi -2\arccos \frac{2\sqrt{0.15}}{1.15}\approx 1.\,478\quad ,\quad i\in {\mathcal {I}}_{\mathrm {s}}=\{2,3,4,5\} \end{aligned}$$

or \(84.\,685^{\circ }\); again we neglect index j in this context. Thus, in this case we have \(N_{1}^{\mathrm {ls}}=4\) and \(N_{i}^{ \mathrm {ls}}=1\) for \(i\in {\mathcal {I}}_{\mathrm {s}}\), as the arcs contributed by the large circle touch all four sides of the rectangle. Therefore, in the restricted case, it is worthwhile to think about the appropriate values for \( N_{i}^{\mathrm {ls}}\in \{0,1,2,3,4\}\). If the circles are small compared to the size of the rectangle, \(N_{i}^{\mathrm {ls}}=1\) works fine.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kallrath, J., Frey, M.M. Packing circles into perimeter-minimizing convex hulls. J Glob Optim 73, 723–759 (2019). https://doi.org/10.1007/s10898-018-0724-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10898-018-0724-0

Keywords

Navigation