<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>International Journal of Computer Mathematics 89 (2012) 1355-1369. doi:10.1080/00207160.
2012.685468.
[14] S. Yakovlev</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.1080/00207160</article-id>
      <article-id pub-id-type="urn">iaieva,</article-id>
      <title-group>
        <article-title>Bi‐objective  Circular‐Hole  Based  Problem in Additive Manufacturing  Topology  Optimization </article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Georgiy Yaskov</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute for Mechanical Engineering Problems of the National Academy of Sciences of Ukraine</institution>
          ,
          <addr-line>2/10 Pozharskogo st., Kharkiv 61046</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Kharkiv Aviation Institute, National Aerospace University</institution>
          ,
          <addr-line>17 Chkalov st., Kharkiv 61070</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Kharkiv National University of Radioelectronics</institution>
          ,
          <addr-line>14 Nauky ave., Kharkiv 61166</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>National University of Internal Affairs, L. Landau av.</institution>
          ,
          <addr-line>27, Kharkiv, 61080</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2012</year>
      </pub-date>
      <volume>1246</volume>
      <fpage>1355</fpage>
      <lpage>1369</lpage>
      <abstract>
        <p>   The paper deals with the circle packing problem which arises in topology optimization for additive manufacturing. The problem consists in packing a number of circles of radii within a particular range imposed by technical limitations, the packing factor being maximized. A biobjective formulation for the problem compromising the packing factor and the maximum mechanical stress of parts is suggested. The -constraint method is applied to search for a trade-off solution of the problem. A new packing approach based on a modified Apollonian circle packing and nonlinear optimization is developed. Numerical examples and graphical illustration of results are given.</p>
      </abstract>
      <kwd-group>
        <kwd> 1  Additive manufacturing</kwd>
        <kwd>topology optimization</kwd>
        <kwd>mechanical stress</kwd>
        <kwd>bi-objective optimization</kwd>
        <kwd>-constraint method</kwd>
        <kwd>packing</kwd>
        <kwd>circle</kwd>
        <kwd>polygon</kwd>
        <kwd>Apollonian circle packing</kwd>
        <kwd>nonlinear optimization</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction </title>
      <p>One of the most important topics of modern mechanical engineering is reducing weight while
maintaining specific characteristics of structures designed. Such problems with conflicting criteria are
related to decision making in a formidable manufacturing process. A key objective of the problems is
finding optimal geometric shape and topology of the designed product ensuring minimum weight at
specified strength. To this end, topology optimization methods [1] are used to find the best design
parameters satisfying the technological and strength constraints and thus providing the objective
function extremum. When optimizing topology of a structure, the stress level in a particular part of the
structure can be used as an indicator of ineffective material usage. Ideally, the stress level in the
structure should be uniform, close to the limiting, but safe value [2].</p>
      <p>Applying topology optimization methods in mechanical engineering is a newish development in
the design procedure. The methods received the greatest impetus in their development when it became
possible to use additive technologies in the manufacturing process [3] instead of classical subtractive
methods. Additive technologies enable to expand the range of designs for the same product.</p>
      <p>In the last two decades, topology optimization became an active field for scientific research. This
led to the use of a multidisciplinary approach in the search for solutions to the problems, which use
the methods of solid mechanics, thermodynamics, biology simultaneously [4].</p>
      <p>Paper [2] reviews modern topology optimization methods.</p>
      <p>Currently, the following main methods of topology optimization can be distinguished: SIMP (solid
isotropic material with penalization), ESO (evolutionary structural optimization), Level-Set (level
setting method) and their various combinations. One of the most effective applications of these
methods is in optimizing the topology of continuous structures, i.e. finding the best placement
location and geometry for holes (cavities) within the modeling area.</p>
      <p>Circle packing problems (CPP) have a wide range of industrial and engineering applications, for
example, facility layout design, cutting stock problems in the glass, metal, paper, textile and wood
industries etc.</p>
      <p>As a rule, practical optimization problems have several conflicting objectives. Such problems are
called multi-objective. Optimization methods for multi-objective optimization problems and its
applications are reviewed in [5, 6].</p>
      <p>In this paper we first propose a bi-objective formulation for circular-hole based topology
optimization which takes into account both the packing factor and the maximum mechanical stress of
parts. A new approach for packing circles based on a modified finite Apollonian circle packing (ACP)
and optimized homothetic transformations of circles is suggested. Both techniques allow to
advantageously arrange circles within polygonal parts minimizing material expenses. The -constraint
method [7] is applied to find out a trade-off circular arrangement.</p>
      <p>In accordance with ACP (see, for example [8]), starting from three mutually tangent circles, next
circles are added to be tangent to the three circles forming four mutually tangent circles (or tangent to
the frontier of the container). We modify ACP for taking into account the upper bound of circle radii
and the minimal allowed distance between the circles. Some circles are allowed to be moved within
the container and located to positions which give a possibility to enlarge radii of next circles being
packed.</p>
      <p>The main contributions of the paper are as follows:
 A bi-objective model of non-standard circular packing problem considering both the
maximum packing factor and mechanical stress of parts for a topology optimization
 A new approach for constructing starting points based on ACP
 New benchmark instances for packing circles with variable radii.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related papers </title>
      <p>The number of papers concerning CPP goes up and up each year. Paper [9] reviews selected works
dealing with packing methods and applications for CPP. We make mention of some recent papers [10,
11, 12]. A powerful tool of solving CPP with unequal circles is treating additional variable metric
characteristics of circles and/or containers (see, for example, [11, 12, 13, 14]). The best results for a
set of benchmark CPP instances are continuously updated in the well known website [15].</p>
      <p>Paper [16] proposes a circular packing model and a fast heuristic algorithm to optimize part
geometries subject to the DMLS constraints. A feature of the model is that radii of circles are
preassigned.</p>
      <p>In [9] a model and a numerical solution approach to packing egg-shaped objects with arbitrary size
and orientation into optimized convex containers is presented. The area of the container is minimized
The solution strategy is based on the analysis of embedded Lagrange multipliers and nonlinear
optimization. Within the universal model, circles and ellipses are considered to be special cases of
egg.</p>
      <p>The ε-constraint method introduced in [7] is often used for solving multi-objective optimization
problems. The method optimizes only one objective while the other objectives are imposed by limits.
In [5] the Pareto optimality of solutions obtained by the ε-constraint method is investigated.</p>
      <p>A bi-objective function for packing in a spacecraft module is proposed in [17]. The dimensions of
the module are minimized and other criteria such as desired adjacency between items and packing
costs are also taken into account. Paper [18] uses a genetic algorithm for bi-objective topology
optimization: minimization mass and maximization effective flexural and torsional rigidities. Methods
for analysis of stress state in parts with different geometries are discussed in [16, 19]. Effective
methods of nonsmooth optimization for allocation problems are considered in [20].</p>
      <p>Containment the circle Сq (vq , rq ) into the domain P</p>
      <p>Сq (vq , rq )  P  int Cq (vq , rq ) I P*   ,  q  IN , 
where P*  Ў2 \ int P</p>
      <p> Minimal allowed distance between the circles Сq (vq , rq ) and Сg (vg , rg )
(a, b) is Euclidean distance between points a, b  R 2 ,
dist(Сq (vq , rq ), Сg (vg , rg ))  ,   (q, g )  l ,  l  I p ,   0  
dist(Cq (vq , rq ),Cg (vg , rg )) </p>
      <p>min
aCq (vq ,rq ), bCg (vg ,rg )</p>
      <p>(a, b) , 
l  {(q, g ) : Сq (vq , rq )  Pl , Сg (vg , rg )  Pl , q  g} . </p>
    </sec>
    <sec id="sec-3">
      <title>3. Problem statement </title>
      <p>Let P0 be a polygon given by its vertices v0i  (x0i , y0i ), i  I0  {1, 2,..., s0}. We define a
disconnected polygonal domain of the form</p>
      <p>P  U Pl ,  Pl  P0 ,  l  I p ,  Pl I Pj   , l  j  I p  {1, 2,..., nP} , 
lI p</p>
      <p>Pl ={(x, y)  R2 : ml (x, y)  0, m  1, 2,..., Ml }  
are
convex
polygons
given
by
vertices
vli  (xli , yli ),
i  Il  {1, 2,..., sl };
ml (x, y)  aml x+bml y+cml  0 , l  I p , are normal equations of the edges of Pl , l  I p . Let us also
define a collection of circles</p>
      <p>Cq  Cq (vq , rq )  {( x, y)  R 2 : ( x  xq )2  ( y  yq )2  rq2}  
of variable radii rq and translation vectors vq  (xq , yq ) for q  I N  {1, 2,..., N} ,
0  r   rq  r   r  , r  , r  are given lower and upper allowed values for rq , r  is the maximal
possible radius of the circle which can be inscribed into Pl , l  I p .</p>
      <p>Conditions of packing the circles Сq (vq , rq ) , q  IN , into the domain P are determined as
where
follows.</p>
      <p>
        
where
 
 
 
 
 
(
        <xref ref-type="bibr" rid="ref2">1</xref>
        ) 
(
        <xref ref-type="bibr" rid="ref3">2</xref>
        ) 
(
        <xref ref-type="bibr" rid="ref1 ref5">4</xref>
        ) 
      </p>
      <p>A problem of bi-objective circle topology optimization into the polygonal domain is formulated as
follows.</p>
      <p>
        Pack circles Сq (vq , rq ) , q  IN , into the domain P providing containment l circles into the
polygon Pl , l  I p , lI p l  n  N and the distance constraints (
        <xref ref-type="bibr" rid="ref3">2</xref>
        ) and maximizing the packing
factor while minimizing the maximum mechanical stress.
      </p>
      <p>
        The packing conditions (
        <xref ref-type="bibr" rid="ref2">1</xref>
        ), (
        <xref ref-type="bibr" rid="ref3">2</xref>
        ) are analytically described using the phi-function technique [21],
which makes it possible presenting a mathematical model as the following bi-objective problem:
max{(), ()}   (
        <xref ref-type="bibr" rid="ref4">3</xref>
        ) 
subject to  W ,   
where   (v, r) is a vector of variables; v  (v1, v2 ,..., vn ) is a vector of variable packing parameters;
r  (r1, r2 ,..., rn ) is a vector of variable radii of circles; function
2
()    rq  
      </p>
      <p>qIn
is the total sum of the circle areas; () is an implicit function which defines the maximum
mechanical stress depending on the vector v of center coordinates of circles and the vector r of radii
of circles;</p>
      <p>W = {  R3n: ) qg (vq , vg , rq , rg )    0, (q, g )  l , l  I p , q (vq , rq )  0, q  In ,  
rq  rq  0, q  In ,  rq  rq  0, q  In}  
 
is an adjusted phi-function of the circles Cq and Cg , (q, g )  l ;
is a feasible region;
)
qg (vq , vg , rq , rg )  ( xq  xg )2  ( yq  yg )2  (rq  rg  )2 ,  
q (vq , rq )  max{ min
lI p m1,2,...,Ml
{ml (vq )  rq }}   
is a phi-function of the circle Cq , q  In , and the set P*  R2 \ int P .</p>
      <p>)</p>
      <p>
        The inequality qg (vq , vg , rq , rg )  0 ensures the condition (
        <xref ref-type="bibr" rid="ref3">2</xref>
        ) for packing the circles Cq and Cg ,
(q, g )   , on the minimal allowed distance  and the inequality q (vq , rq )  0
l
condition (
        <xref ref-type="bibr" rid="ref2">1</xref>
        ) for packing the circle Cq into the polygon P .
provides the
      </p>
      <p>
        We note that () and () are compromising objectives. Therefore, our aim is to find a
tradeoff solution of the bi-objective problem (
        <xref ref-type="bibr" rid="ref4">3</xref>
        )-(
        <xref ref-type="bibr" rid="ref6">5</xref>
        ).
      </p>
    </sec>
    <sec id="sec-4">
      <title>4. Solution approach  4.1.</title>
    </sec>
    <sec id="sec-5">
      <title>Solution strategy </title>
      <p>
        We use the multistart strategy [22] for solving the circular problem (
        <xref ref-type="bibr" rid="ref4">3</xref>
        )-(
        <xref ref-type="bibr" rid="ref6">5</xref>
        ).
(
        <xref ref-type="bibr" rid="ref6">5</xref>
        ) 
 
 
(
        <xref ref-type="bibr" rid="ref7">6</xref>
        ) 
 
 
      </p>
      <p>
        On the assumption that an accepted value of the maximum mechanical stress is tolerable we solve
the problem by means of the  -constraint method [7] which reduces the problem (
        <xref ref-type="bibr" rid="ref4">3</xref>
        )-(
        <xref ref-type="bibr" rid="ref6">5</xref>
        ) to a
singleobjective one
      </p>
      <p>max ()   
subject to  W    </p>
      <p>W  = { W  ( )    0} . </p>
      <p>The main objective is maximizing sum of squares of circles to be packed. Continual review of
mechanical stress is a formidable problem. Of importance is the threshold value  of mechanical
stress.</p>
      <p>Let us temporarily relax the inequality</p>
      <p>
        ( )    0   (
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) 
Then we can evaluate a posteriori the maximum mechanical stress for the obtained topology of the
n *
domain P0 \ int Ui1Ci (* ) and verify the condition (
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) with respect to the local maximum point  .
If the condition (
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) holds true, i.e. (*)    0 , then a feasible point of the problem (
        <xref ref-type="bibr" rid="ref7">6</xref>
        )-(
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) is
found, otherwise we calculate another local maximum point ** and repeat the procedure until (
        <xref ref-type="bibr" rid="ref8">7</xref>
        )
will be met.
      </p>
      <p>
        We decompose the problem (
        <xref ref-type="bibr" rid="ref7">6</xref>
        )-(
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) into l subproblems separately for each polygon Pl , l  I p .
Our multistart strategy involves the following main stages.
appropriate polygon P , l  I p
      </p>
      <p>l
Stage 1. Define a lower bound l of the number l of circles which can be packed into the
with the maximum packing factor, using Algorithm 1 based on
packing equal circles [14]. Form a point ul* .
0  (w1* , w2* , ..., wn*p ) using IPOPT [23].
4.2.</p>
    </sec>
    <sec id="sec-6">
      <title>Solution algorithm </title>
      <sec id="sec-6-1">
        <title>Let us consider our solution strategy in details. Stage 4. Choose the best local maximum point satisfying the inequality (7) found at Stage 3.</title>
        <p>Packing results depend heavily on the number of circles packed and starting points. We make use
the idea of ACP. According to ACP circles are packed repeatedly touching three other circles [8]. To
start ACP we first construct an initial configuration of tangent circles. To this end we realize a
preliminary packing of equal circles with radius r  (if possible). The problem is known as IIPP
(Identical Item Packing Problem) [24] The circle layout algorithm is based on the models described in
[14].</p>
        <p>We consider packing circles into the polygon Pl , l  I p . Let nl1  lj11 j be packed into the
polygons P , j  1, 2,...,l 1. Now we pack the circle C q , q  n1 1. By condition, rq is bounded
j
above by r  , that can be, in general, less than the maximal possible radius rl , l  I p , the circle
C q (vq , rl ) being inscribed into Pl . In this case the center vq of the circle C q (vq , r  ) is free to
move within a polygonal set Pˆ l  Pl (Figure 1) ensuring feasible locations of C q (vq , r  ) in Pl .</p>
        <p>Pl</p>
        <p>r 
ˆ
P l
r 
l
Figure 1: Packing the first circle into  Pl  </p>
        <p>A random position of the circle center is chosen and then a step-by-step procedure of sequential
addition of next circles according to the algorithm [14, 25] is carried out. If a circle with radius r 
cannot be packed into Pl , we go to Stage 2 (ACP) starting from the circle with the maximal possible
radius rl* , l  I p . If there are several possible locations for the circle, we choose a location for which
the circle is tangent to the maximal number of the polygon edges.</p>
        <p>To this end we solve consequently the problems.</p>
        <p>*
max rqk ,  k  0,1, 2,..., kl   </p>
        <p>(k )
subject to  ul
 W
l
(k )</p>
        <p> 
W (k)  { u(k )  R2k 3
l l
: ml (xq , yq )  rq  0, m  1, 2,..., M l ,  l  I p , 
2 2 2
 xq j1  xqt1   yq j1  yqt1    2r    0,  </p>
        <p>*
j,t  1, 2,..., k, j  t,   k {2,..., k } , </p>
        <p>2 2 2
 xq j1  xqk    yq j1  yqk   rq  rqk  d   0,  </p>
        <p>*
j  1, 2,..., k, k {1,.2,.., kl } }.  </p>
        <p> 
*
r
qkl* С
qkl*
r
</p>
        <p>
rq</p>
        <p>Сq
r
</p>
        <p>
rq
Сq2</p>
        <p>P
l
r


rq
Сq1</p>
        <p>*
k  1, 2,..., kl ;
* </p>
        <p>
          A local maximum of the problem (
          <xref ref-type="bibr" rid="ref9">8</xref>
          )-(
          <xref ref-type="bibr" rid="ref10">9</xref>
          ) is calculated. If rqk  r , then we continue to solve
problem (
          <xref ref-type="bibr" rid="ref9">8</xref>
          )-(
          <xref ref-type="bibr" rid="ref10">9</xref>
          ) for the next k , considering u(k )*  (xq* , yq* ,..., xq*k 1, yq*k 1, xqk , yqk , 0) where
l
* 
xqk , yqk are randomly chosen ( ul(k )* W (k) ) as a starting point. If rqk  r , we stop the iterative
l
process. The point
ul*  (vl* , rl* )  (xq* , yq* ,..., xq*k 1, yq*k1, xq*k , yq*k , r1444,.2..4,r443, rq*kl* )  
        </p>
        <p>
          *
is the algorithm output. Then k  kl , the circle Cqkl* touches at least three circles (or edges of Pl )
and can be considered as a first circle packed according to ACP (Figure 2).
(
          <xref ref-type="bibr" rid="ref9">8</xref>
          ) 
 
(
          <xref ref-type="bibr" rid="ref10">9</xref>
          ) 
   
 
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>4.2.2. Algorithm 2. Generating starting feasible points  </title>
      <p>*
If rqk</p>
      <p>
        is a strict local maximum of the problem (
        <xref ref-type="bibr" rid="ref7">6</xref>
        )-(
        <xref ref-type="bibr" rid="ref8">7</xref>
        ), then the circles Cq , Cq1,...,Cqkl* are
rigidly fixed forming a “jammed” packing [26]. We pack next circles C
qkl*1, Cqkl*2
,...,Cql 1
according to ACP until the current radius r
      </p>
      <p>
following ACP becomes less than r (Figure 3). A point
*
qkl*kASP 1</p>
      <p>where kASP is the number of additional circles
is obtained. The total number of circles packed into Pl is l  kl*  kASP , the radii values being within
[r , r ] .</p>
    </sec>
    <sec id="sec-8">
      <title>4.2.3. Local optimization </title>
      <p>After having constructed the starting packing for each polygon Pl , l  I p , we have the total
number n  lI p l of circles to be packed into P .</p>
      <p>
        We turn to problem (
        <xref ref-type="bibr" rid="ref7">6</xref>
        )-(
        <xref ref-type="bibr" rid="ref8">7</xref>
        ), calculate a local maximum point and then construct a starting point
0  (w1* , w2* , ..., wn*p ) . To solve the nonlinear programming problem we make use of IPOPT solver [23]
together with the decomposition strategy [15].
      </p>
      <p>*
rqkl*
Сqkl*2
Сq+kl* +3
rq</p>
      <p>Сq
Сq2
Сq+l -1
Сqkl*1
Сq1</p>
      <p>P
l
Сqkl*kACP
Figure 3: Circle arrangement according to ACP </p>
      <p>
        Several local maximum points are computed and ordered in decreasing order of () (see
problem (
        <xref ref-type="bibr" rid="ref7">6</xref>
        )-(
        <xref ref-type="bibr" rid="ref8">7</xref>
        )) and then one can choose a point meeting (
        <xref ref-type="bibr" rid="ref8">7</xref>
        ). The first point in the ordering for which
the inequality (
        <xref ref-type="bibr" rid="ref8">7</xref>
        ) holds true is a trade-off solution of the problem (
        <xref ref-type="bibr" rid="ref4">3</xref>
        )-(
        <xref ref-type="bibr" rid="ref6">5</xref>
        ). If there is no a point
satisfying the threshold value a (see (
        <xref ref-type="bibr" rid="ref8">7</xref>
        )), new local maximum points are computed or a compromise
value a   is selected. Calculation of mechanical stress values is not considered in this paper. We
refer to paper [10].
      </p>
      <p>As computations show, local maximum points are close to or coincide with the starting points
constructed according to ACP.</p>
    </sec>
    <sec id="sec-9">
      <title>5. Computational results </title>
      <p>We consider the benchmark geometry presented in [10] and provide new benchmark examples for
packing circles with variable radii. The dependence of the number of circles packed and the packing
density on the minimal allowed distance between circles is studied. All experiments were running on
an Intel Core I5 750 computer. We use the Delphi programming language and the Windows 10
operation system. Software library IPOPT [23, 27] for nonlinear optimization problems exploiting
first and second derivative (Hessians) information is utilized.</p>
      <p>
        Example 1. P0 is given by 11 vertices v01  (0,0), v02  (
        <xref ref-type="bibr" rid="ref10">0,9</xref>
        ), v03  (
        <xref ref-type="bibr" rid="ref10">18,9</xref>
        ), v04  (
        <xref ref-type="bibr" rid="ref6">5, 28</xref>
        ),
v05  (0,33), v05  (0, 40), v06  (0, 40), v07  (60, 40), v08  (76,34), v09  (
        <xref ref-type="bibr" rid="ref12">98,11</xref>
        ), v0,10  (
        <xref ref-type="bibr" rid="ref7">100,6</xref>
        ),
v0,11  (100, 0) . P  UlI p l
      </p>
      <p>P , where IP  {1, 2,...,5} , vertices of Pl , l  I p , are v11  (22,31),
v12  (35, 27),
v51  (74,37), v52  (95,37), v53  (91, 31), v54  (74,35). The minimal allowed distance between
circles is   0; r   0.5; r   5;</p>
      <p>The total number of circles packed into P is n  91 ( 1  15, 2  23, 3  14, 4  31, 5  8 ).
Value of the objective in the starting point (ACP) is (0 )  361.3287 and one in the local maximum
point is *  362.0946 . Illustration of the circles packed is shown in Figure 4. This example is
relevant to maximizing the packing factor and meaningless in relation to mechanical stress being
infinite at   0 .</p>
      <p>Example 2. See Example 1.   0.5. The starting objective value is (0 )  317.9666 and the
local maximum point is *  319.3224 . Illustration
(1  11, 2  19, 3  10, 4  21, 5  5) .
  P0  P0
is
shown
in</p>
      <sec id="sec-9-1">
        <title>Figure 5. n  66</title>
        <p>P
1</p>
        <p>P2</p>
        <p>P2
Figure 4: Circle arrangement according to Example 1 
Figure 5: Circle arrangement according to Example 2 
P
3
local maximum point is *  301.7119 . Illustration is shown in Figure 6. n  50 (1  8, 2  12,
3  8, 4  17, 5  5) .</p>
        <p>Example 4. See Example 1.   1. The starting objective value is (0 )  288.9095 and the local
maximum point is *  289.7335 . Illustration is shown in Figure 7. n  47 (1  8, 2  12,
3  8, 4  14, 5  5) .</p>
        <p>The runtime is within 30 seconds for all examples.</p>
        <p>As computational results show, with an increase in the minimal allowed distance between circles,
the contribution of large circles to the total circle area increases, since it is proportional to the squares
of the circle radii. Obviously, this leads to a decrease in the number of circles with small radii and an
increase in the radii of other circles.</p>
        <p>In this regard, the choice of  is of importance. A compromise value is chosen: a too low value
can lead to poor quality printing due to the technical features of the process, while a too large one
causes additional material consumption. Furthermore, the secondary objective () can be
influenced by varying the values of  , r  and r  .
Figure 6: Circle arrangement according to Example 3 
Figure 7: Circle arrangement according to Example 4 </p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>6. Conclusions </title>
      <p>Topology optimization is a key point in additive manufacturing. Circular-hole based layout models
help to cut down material expenses while meeting strength requirements.</p>
      <p>We formulate non-standard packing problem of circles with variable metric characteristics. The
proposed bi-objective model takes into account both the maximum packing factor and mechanical
stress of parts. An efficient packing algorithm based on Apollonian circle packing, nonlinear
programming and the -constraint method has been developed. The approach allows estimating the
number of circular perforations needed and search for an approximate solution of the problem
maximizing the packing factor and following a threshold value of mechanical stress.</p>
      <p>Further research is directed to layout of circular perforations inside a 3D part considering
balancing conditions [22, 28]. Therewith a more nuanced approach to multi-objective optimization
should be constructed.</p>
    </sec>
    <sec id="sec-11">
      <title>7. Acknowledgements </title>
      <p>The investigation is partially supported by the “Program for the State Priority Scientific Research
and Technological (Experimental) Development of the Department of Physical and Technical
Problems of Energy of the National Academy of Sciences of Ukraine” (#6541230) and National
Research Foundation of Ukraine (#02.2020/167). </p>
    </sec>
    <sec id="sec-12">
      <title>8. References </title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          4.2.1. Algorithm 
          <volume>1</volume>
          . 
          <article-title>Searching for a lower bound of the number of circles </article-title>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O.</given-names>
            <surname>Sigmund</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Maute</surname>
          </string-name>
          ,
          <article-title>Struct topology optimization approaches</article-title>
          ,
          <source>Structural and Multidisciplinary Optimization</source>
          <volume>48</volume>
          (
          <year>2013</year>
          )
          <fpage>1031</fpage>
          -
          <lpage>1055</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00158-013-0978-6.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ma</surname>
          </string-name>
          ,
          <article-title>A survey of manufacturing oriented topology optimization methods</article-title>
          ,
          <source>Advances in Engineering Softwar</source>
          <volume>100</volume>
          (
          <year>2016</year>
          )
          <fpage>161</fpage>
          -
          <lpage>175</lpage>
          . doi:
          <volume>10</volume>
          .1016/j.advengsoft.
          <year>2016</year>
          .
          <volume>07</volume>
          .017.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ramya</surname>
          </string-name>
          ,
          <string-name>
            <surname>S. I. Vanapalli,</surname>
          </string-name>
          <article-title>3D printing technologies in various applications</article-title>
          ,
          <source>International Journal of Mechanical Engineering and Technology</source>
          <volume>7</volume>
          (
          <year>2016</year>
          )
          <fpage>396</fpage>
          -
          <lpage>409</lpage>
          . Available from: http://www.iaeme.com/ currentissue.asp?JType=IJMET&amp;
          <article-title>VType=7&amp;IType=3</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Deaton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. V.</given-names>
            <surname>Grandhi</surname>
          </string-name>
          ,
          <article-title>A survey of structural and multidisciplinary continuum topology optimization: post 2000, Structural</article-title>
          and
          <source>Multidisciplinary Optimization</source>
          <volume>49</volume>
          (
          <year>2014</year>
          )
          <fpage>1</fpage>
          -
          <lpage>38</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00158-013-0956-z.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>K.</given-names>
            <surname>Miettinen</surname>
          </string-name>
          , Nonlinear Multiobjective Optimization, Springer Science &amp; Business
          <string-name>
            <surname>Media</surname>
          </string-name>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>N.</given-names>
            <surname>Gunantara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Ai</surname>
          </string-name>
          ,
          <article-title>A review of multi-objective optimization: Methods and its applications</article-title>
          ,
          <source>Cogent Engineering</source>
          ,
          <volume>5</volume>
          :
          <issue>1</issue>
          (
          <year>2018</year>
          ). doi:
          <volume>10</volume>
          .1080/23311916.
          <year>2018</year>
          .
          <volume>1502242</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Y. Y.</given-names>
            <surname>Haimes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. S.</given-names>
            <surname>Lasdon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Wismer</surname>
          </string-name>
          ,
          <article-title>On a bicriterion formulation of the problems of integrated system identification and system optimization,</article-title>
          .
          <source>IEEE Trans. Syst. Man. Cybern</source>
          .
          <volume>1</volume>
          (
          <year>1971</year>
          )
          <fpage>296</fpage>
          -
          <lpage>297</lpage>
          . doi:
          <volume>10</volume>
          .1109/TSMC.
          <year>1971</year>
          .
          <volume>4308298</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>W.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Jiao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Kessler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Malik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , Spatial Statistics of Apollonian Gaskets,
          <source>Experimental Mathematics</source>
          <volume>28</volume>
          (
          <year>2019</year>
          )
          <article-title>263270</article-title>
          . doi:
          <volume>10</volume>
          .1080/10586458.
          <year>2017</year>
          .
          <volume>1385037</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F. J.</given-names>
            <surname>Kampas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Pintér</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Castillo</surname>
          </string-name>
          ,
          <article-title>Packing ovals in optimized regular polygons</article-title>
          ,
          <source>J Glob Optim</source>
          <volume>77</volume>
          (
          <year>2020</year>
          )
          <fpage>175</fpage>
          -
          <lpage>196</lpage>
          . doi:
          <volume>10</volume>
          .1007/s10898-019-00824-8.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>S. P.</given-names>
            <surname>Fekete</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Morr</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Scheffer</surname>
          </string-name>
          , Split Packing:
          <article-title>Algorithms for Packing Circles with Optimal Worst-Case Density</article-title>
          ,
          <source>Discrete Comput Geom</source>
          <volume>61</volume>
          (
          <year>2019</year>
          )
          <fpage>562</fpage>
          -
          <lpage>594</lpage>
          . doi:
          <volume>10</volume>
          .1007/s00454-018-0020- 2.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Stoyan</surname>
          </string-name>
          , G. Yaskov,
          <string-name>
            <given-names>T.</given-names>
            <surname>Romanova</surname>
          </string-name>
          , I. Litvinchev,
          <string-name>
            <given-names>S.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. M.</given-names>
            <surname>Velarde Cantú</surname>
          </string-name>
          ,
          <article-title>Optimized packing multidimensional hyperspheres: a unified approach</article-title>
          , Math Biosci Eng.
          <volume>17</volume>
          (
          <year>2020</year>
          )
          <fpage>6601</fpage>
          -
          <lpage>6630</lpage>
          . doi:
          <volume>10</volume>
          .3934/mbe.2020344.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Kartashov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Korobchynskyi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Skripka</surname>
          </string-name>
          ,
          <article-title>Numerical Results of Variable Radii Method in the Unequal Circles Packing Problem</article-title>
          ,
          <source>in: Proceedings of 2019 IEEE 15th International Conference on the Experience of Designing and Application of CAD Systems (CADSM)</source>
          , Polyana, Ukraine,
          <year>2019</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          . doi:
          <volume>10</volume>
          .1109/CADSM.
          <year>2019</year>
          .
          <volume>8779288</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>