<!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 />
    <article-meta>
      <title-group>
        <article-title>Combining Local Search and Genetic Algorithm for Two-Dimensional Guillotine Bin Packing Problems with partial sequence constraint</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Filipe Souza</string-name>
          <email>ffilipe.luca-desouza@mycit.ie</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Diarmuid Grimes</string-name>
          <email>diarmuid.grimes@cit.ieg</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of computer science Cork Institute of Technology Cork</institution>
          ,
          <country country="IE">Ireland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this work we consider a variant of the standard bin packing problem, known as the the two-dimensional guillotine cutting problem. This is a widely occurring problem in industry, for example for reducing the economic and environmental costs of glass production. This variant can also incorporate an additional partial sequencing constraint on batches of sub-items in comparison with the traditional bin packing problem. We propose a hybrid metaheuristic approach combining a dedicated genetic algorithm with a local search for solution re nement. The genetic algorithm has a number of dedicated aspects for the problem at hand, such as a complex phenotype representation with multi gene-types, a partial tness function and di erent mutation operators for di erent parts of the chromosome tuple. Empirical results on public instances demonstrate the e ectiveness of the hybrid algorithm and provide insight into interleaving local search with population-based approaches.</p>
      </abstract>
      <kwd-group>
        <kwd>Bin Packing Problem</kwd>
        <kwd>Genetic Algorithm</kwd>
        <kwd>Local Search</kwd>
        <kwd>Phenotype</kwd>
        <kwd>Genotype</kwd>
        <kwd>Fitness Function</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        The Two-Dimensional Bin Packing Problem (2BP) aims to allocate several
rectangular items to a set of rectangular bins, in a way that the number of
required bins is minimized. Most of the literature related to Cutting and Packing
problems are based on heuristic [
        <xref ref-type="bibr" rid="ref13 ref14 ref2 ref8">2, 8, 13, 14</xref>
        ] or Branch-and-Bound [
        <xref ref-type="bibr" rid="ref12 ref18 ref19 ref3">3, 12, 18, 19</xref>
        ]
approaches.
      </p>
      <p>Cutting glass optimization is an important industrial specialization of the
2BP. The initial constraint in this problem is that the glass jumbo (bin) must
be cut in guillotine cuts, i.e. orthogonal cuts going from one side of the sheet
component to the other. In this work we consider the variant where the items
can be rotated by 90 degrees and with partial sequencing constraints introduced
by the ROADEF/EURO challenge 20181, where the items from the same order
(stack) have to be cut in a speci c sequence.
1 https://www.roadef.org/challenge/2018/en/index.php</p>
      <p>To address this issue a novel technique combining a dedicated genetic
algorithm interleaved with a local search operator is proposed, denoted as
GALS2BP. To the best of our knowledge, the use of such a hybrid algorithm to solve
the 2BP, is still insu ciently explored. The method proposed is investigated not
only to generate good performance for the variant studied but also to provide
further insight into the behavior of such hybridized techniques.</p>
      <p>Investigating the potential of combining Local Search and Genetic
Algorithm can produce impressive results, due to the complementary nature of the
approaches. Genetic algorithms look at combining good solutions, but without
looking at why a solution is good or bad. On the other hand, local search
methods only consider one solution, but they speci cally look for where the solution
can be improved and make changes based on this.</p>
      <p>Furthermore, this work digs deep into many components of Genetic
Algorithms such as a complex phenotype representation of a chromosome with
multiple gene-types, a partial tness function, and the application of di erent
mutation operators for di erent parts of a chromosome. Additional aspects
investigated include crossover operators, elite survival, and periodic rediversi cation
of the population to avoid stagnation.</p>
      <p>
        The performance of the GALS-2BP approach was evaluated on the instances
proposed in the ROADEF/EURO challenge 2018: Cutting Optimisation
Problem, and shown to be competitive with the winner of that challenge: the MBA*
algorithm [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. The latter is an anytime tree search algorithm with some
simplistic bounds and pseudo-dominance properties. The evaluation also provided
opportunity to develop a number of insights into the behavior of a hybrid
approach such as GALS-2BP.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Problem de nition</title>
      <p>The guillotine cutting problem considered here can be de ned as follows:
De nition 1 (Item). An item i is a glass piece to cut, characterized by a pair
(wi; hi) representing its width w and its height h.</p>
      <p>De nition 2 (Stack). A stack S = fi1; i2; :::; ij g is an ordered sequence of
items such that i1 &lt; cut i2 &lt; cut ... &lt; cut ij , basically meaning that item i1
must be cut before item i2, which is one of the constrains related to deliveries
and item processing. For example in an instance with three stacks s1 = fi1; i2g,
s2 = fi3; i4; i5g, and s3 = fi6; i7g, two feasible sequence of cutting can be de ne
as below:
{ The sequence s1; s2; s3; s3; s2; s1; s2 means i1; i3; i6; i7; i4; i2; i5.</p>
      <p>{ The sequence s2; s3; s2; s1; s3; s1; s2 means i3; i6; i4; i1; i7; i2; i5.</p>
      <p>De nition 3 (Batch). The set of items to cut is called batch I. It corresponds
to a customer order using the stack notation, the item set I can be partitioned
into n stacks.</p>
      <p>I =
n
[ sk
De nition 4 (Bin). A bin b is characterized by a pair (Wb; Hb) representing
its width W and its height H. The set of bins B = fb1; b2; :::; bqg, where b1 &lt; cut
b2 means that bin b1 has to be used before the bin b2. In addition the bin size is
standardised.</p>
      <p>8a; b 2 B : Wa = Wb
8a; b 2 B : Ha = Hb
De nition 5 (Guillotine cut). A guillotine cut is the cut that divides a nonempty
subset p into two disjoint rectangular subsets p01 and p02 such that no item i 2 I
is intersected by the cut between p01 and p02.</p>
      <p>De nition 6 (Cutting pattern). A set cutting pattern P = fp1; p2; :::; ptg is
a feasible solution, where 8p 2 P , p is a guillotine cutting pattern that divides a
rectangular glass piece pt in two new rectangular piece pt+1 and pt+2. Figure 1
depicts an example of guillotine pattern for a bin and the order of the cuts.
De nition 7 (Waste). A waste ! is a p, where 8i 2 I : i \ p = 0. In Figure 1,
p7 and p8 are examples of waste.</p>
      <p>! = p ) 8i 2 I : i \ p = 0
De nition 8 (Residual). A residual R is the last element of P .</p>
      <p>R = pjP j</p>
      <p>The objective function is to minimize the geometrical loss of the cutting
patterns applied to bins. In order to compute the loss area, glass leftover must
b2B
i2I
X xib = 1
b2B
X wihixij
i2I
s \ q = 0
yBj</p>
      <p>yBj+1
j 2= p 3 i
xib 2 f0; 1g
yb 2 f0; 1g
b2B
WbHb
8i 2 I
8b 2 B
8s; q 2 S; s 6= q
8j 2 f1; 2; :::; jBj 1g
8i; j 2 I; i 6= j; 9p 2 P
8i 2 I; 8b 2 B
8b 2 B
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
not be taken into account, since they can be reused after cutting. Only the
residual in the last cutting pattern will be considered in order to simplify the
residual management. This residual is represented by the waste at right of the
last 1-cut performed in the last cutting pattern in a solution as described in
de nition 8. So that, the problem can thus be modeled as:
xib 2 f0; 1g should be 1 i item i is packed into bin b.
yb 2 f0; 1g should be 1 i bin b is used.
minimize X HbWbyb</p>
      <p>(HRWR)
subject to:</p>
      <p>X wihi &lt;= X HbWb</p>
      <p>X wihi
i2I</p>
      <p>Note that in our work, we consider a slight simpli cation of two-dimensional
cutting glass problem proposed in the ROADEF/EURO challenge 2018. Namely
the defects constraint of the challenge problem, where a bin may contain
defects at given locations and that must not be included in our cut items, is not
considered in this work.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Related Work</title>
      <p>
        The 2BP has been a problem of interest for decades [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. One of the most popular
heuristic approaches to tackle the two-dimensional bin packing problem was
proposed by Baker et al.[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], the well-known bottom-left (BL) heuristic. It tries
to minimize the height of each piece in a rectangular bin, focusing on orthogonal
and oriented packing.
      </p>
      <p>
        Numerous variants of the bottom-left heuristic have been proposed since then
(e.g. [
        <xref ref-type="bibr" rid="ref13 ref8">8, 13</xref>
        ]). Even though the recent literature have recommended block-based
placement[
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] for guillotine problems, due to the additional ordered sequence
constraint in our problem, we chose item-based placement based on BL, similar
to [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>
        In terms of relevant GA approaches to the 2BP, Goncalves and Resende in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
proposed a biased random-key genetic algorithm (BRKGA) approach. In their
work a novel tness function was also proposed which we have incorporated for
our evolutionary process tness function. While, Hwang et al.in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] used Genetic
Algorithms as an approach to solving a variant of 2BP with guillotine constraint
for retail shelf space design, in this variant the size of the items can be mutated
in order to maximize the demand rate of the items, which is a function of the
quantity displayed and the location in the shelf space.
      </p>
      <p>
        To the best of our knowledge, the idea of combining Genetic Algorithm with
local search approach to solve a speci c problem was introduced in the late 80s
with the term of Memetic Algorithms [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], and since then it has been the focus of
many research works (See [
        <xref ref-type="bibr" rid="ref15 ref17 ref5">17, 15, 5</xref>
        ]). While in the matter of 2BP, Kierkosz and
Luczak in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] proposed an interesting approach that combines an evolutionary
algorithm and a tree search, where the GA solution is used as an input for the
tree search step. The same idea is implemented in this paper's approach, where
the LS uses the GA solution to generate the nal solution.
      </p>
      <p>
        Finally, the current State of the art algorithm to solve the variation of 2BP
presented in this work comes from [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], where they proposed the algorithm
MBA*. The approach involves a tree search algorithm with aggressive pruning
which diminishes over time.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Proposed Hybrid Algorithm</title>
      <p>
        Chromosome Representation Using the standard GA terminology, a
solution to a problem is given by a set of genes encoded in a chromosome. This
solution can be represented directly or indirectly by the chromosome. When it
is a direct representation, the chromosome will be the solution of the problem,
referred to as a Genotype [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. An indirect representation on the other hand,
has the chromosome as the input to a particular procedure to generate the
solution, that representation is known as a Phenotype [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In this work, the indirect
representation was used given that the problem solution is too computationally
expensive.
      </p>
      <p>For this reason, the chromosome consists of three subgroups of genes that
are combined to compute the tness of the chromosome. Each chromosome is
composed of 3N genes, where N is the number of items in the instance problem.
The rst N genes represents the sequence in which the items will be cut (this
part of the chromosome works the same as a permutation problem encoding).
The next N genes represent whether the item will be rotated or not. The nal N
genes represent the orientation of the cutting for the item (horizontal or vertical).
Fitness Function The tness function presented in equation 1 was
implemented for the Genetic Algorithm. That function gives the nal cost for the
solution. However, it is necessary to place each item in its bin to calculate or
update this tness function, and this requires a high computational e ort.
Therefore this is impracticable for the Local Search step in computing the cost of each
neighborhood move. Instead, the occupation rate of the bin is used to guide
search. Equation 10 formally describes how the occupation rate is calculated for
a given bin.</p>
      <p>Pi2I wihixib</p>
      <p>WbHb
(10)
Initial Population A high level of diversity in the initial population is essential
to avoid early stagnation in GAs. Thus, the initial population was created with a
random set of item sequences and also randomly assigning the rotation position
and the cutting orientation. Hence, the diversity of the population is ensured,
while the Local Search step aids in the intensi cation.</p>
      <p>
        Selection Method In order to achieve a balance between biasing towards
tter individuals (i.e. better solutions) and the necessity of being computationally
e cient, the chosen selection method was Tournament Selection[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In
particular, binary tournament selection was used, where two individuals are randomly
chosen and the tter of the two is selected.
Crossover Operator Due to the speci city of this problem, the
chromosome is divided into three parts as previously stated. Hence, di erent crossover
operators were developed for each part. For the permutation part two di
erent permutation-based crossover operators were tested - uniform order-based
crossover and PMX. While the two parts with Boolean valued genes followed
the permutation operator chosen. In other words, when the PMX is used for
permutation, two-point crossover is used for the Boolean parts, and uniform
crossover was used for the uniform order-based operator case.
      </p>
      <p>Mutation Operator The mutation operator works in the following way: First,
a subset of o spring population is selected based on the mutation rate
probability. Then, for each o spring, it is decided randomly which part (sequence,
rotation, cut orientation) of the chromosome will be mutated. If the sequence
part is chosen, the algorithm will apply a Reciprocal Exchange Mutation on that
part of the chromosome, where two random genes are selected and their
positions are swapped. Otherwise, Boolean genes are selected based on the mutation
rate and their values are ipped.</p>
      <p>Elite survival Elite survival was included such that the top x percent of the
best solutions of the previous population are copied to the new population
without modi cations. Then, the rest of the new population is generated by the
processes of crossover and mutation of the individuals from the previous
population (including the elite chromosomes).</p>
      <p>Local Search The Local Search is the last step to generate a new population.
That step tries to optimize the wasted space left by the Genetic Algorithm
solution. In order to do that, for each wasted space in the bins the Local Search
algorithm searches in the whole neighbourhood composed by the next item of
each stack. If there is more than one neighbour suitable for the waste space, it is
randomly selected between the three best t items and the selected item will be
moved to ll the wasted space. The quality of the neighbor move is de ned by
the size of the smallest new wasted space that it creates after placing the item.
5
5.1</p>
    </sec>
    <sec id="sec-5">
      <title>Experimental results</title>
      <p>Experimental design
The con guration presented in Table 1 below was used to assess the
performance of the GALS-2BP algorithm comparing it to the MBA* algorithm. Both
algorithms were run under the same conditions and on the same machine
(MacBook Pro 2.4 GHz Intel Core i5 machine with 8GB 1600 MHz DDR3 on macOS
High Sierra), with a runtime cuto of 10 minutes per instance. Furthermore, as
the proposed approach has stochastic components, the presented results are the
average of 10 runs with di erent seeds.
Replacement Strategy During initial experimentation, it was observed that
the approach was not able to improve the solutions after the initial population
for some instances. This is illustrated in Fig. 3, where for the instance X2 the
algorithm was not able to improve the solution after the initial population even
when Local Search was applied for more than 40% of the population. Analysing
the problem, it was discovered that the population was rapidly becoming
homogeneous due to the strong speci city of the Local Search Process. To overcome
this issue, a Replacement Strategy component was developed.</p>
      <p>
        The proposed Replacement Strategy was implemented based on that
proposed by Bennell et al.[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. At every fty generations, any duplicated solution
is overwritten by a new solution that is a copy of the best solution with some
genes mutated. In this way it is possible to avoid premature convergence and
also create diversity on the population without loss of speci city.
Chromosome Representation Initially a solution was represented by a
chromosome was of N genes, where each gene was composed by the three parameters.
However, this was found to be ine ective as the sequencing constraint resulted
in swapping of information between genes. In this way the children were losing
a lot of genetic information from their parents. This problem was particularly
prominent in instances where there were many items per stack. This motivated
the representation with 3N genes given in the previous section.
      </p>
      <p>Mutation Operator In the initial implementation, the mutation operator was
divided into two parts. The rst one dealt with the Boolean genes, where each
gene swapped its value based on the mutation rate probability. The second part
involved a permutation mutation operator. However, when analysed empirically
it was observed that the operator behaviour was extremely sensitive to the size
of the instance. In other words, the same mutation rate could generate a high
number of mutations in a big instance, which made the search highly stochastic,
while in a small instance it rarely generated any mutation. This was the
motivation and inspiration behind the mutation operator described in the previous
section.
5.3</p>
      <p>Evaluation
Figure 4 shows the results obtained with the GALS-2BP algorithm compared to
the MBA* solution in the set of instances with size ranging from 5 to 656 items.
As depicted in the graph, the GALS-2BP achieves results near to the
state-ofthe-art in instances with up to 300 items. However, the gap tends to increase in
larger instances. Nevertheless, the GALS-2BP still found solutions with around
90% of occupation rate, even in instances greater than 400 items.</p>
      <p>
        Figure 5 depicts the benchmark between the GALS-2BP algorithm and the
MBA* algorithm per di erent average of stack size. The GALS-2BP managed
to outperform the benchmark algorithm in instances with less than 5 items per
stack, and also managed to catch results very near to the MBA* in instances
with up to 15 items per stack on average. Unfortunately, when the number of
items per stack starts to increase more than this, the di erence tends to increase
as well.
Even though the GALS-2BP did not outperform the overall results of the MBA*
algorithm [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], it still found very good solutions, particularly for instances with
fewer sequencing constraints. It is also important to highlight the consistency of
the proposed hybrid algorithm, where in the total of fty di erent executions for
each instance the best result found throughout these executions always remained
at most 2% above the average best solution for each instance.
      </p>
      <p>The reason for the better performance on instances with fewer sequencing
constraints is that the GA has more freedom to combine solutions. The
population evolves with less noise in the crossover and mutation operator. The local
search also has a larger neighbourhood to improve the solution when fewer
sequencing constraints and therefore more possibilities for improvement.</p>
      <p>With regard to the crossover operators it was found that the PMX crossover
performed better. This is due to the problem's high sensitivity to changes, since
the PMX crossover is has a higher capacity to preserve the parents
characteristics.</p>
      <p>It should also be noted that, since the Local Search is executed before the
calculation of the tness function, the goal of the GA is e ectively to generate
the best inputs for the Local Search step instead of looking for the best nal
solution. In order to demonstrate the impact of this, the Local Search was run
for di erent proportions of the population (from 0% to 100% in steps of 10%).</p>
      <p>The results of this are shown in Figure 6. One can clearly see, in the average
occupation rate for the population along iterations, the unstable behaviour of
the algorithm when the Local Search is used in only a part of the population.
This instability happens because part of the population is trying to evolve to
the best nal solution while the other part is trying to evolve to the best input
for the Local Search process. Thus, a worse solution from the GA can in some
cases be a better input to the Local Search than a good solution would be. For
example a worse solution can result in avoiding a local minimum in the Local
Search.
7</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>In this paper we introduced a novel hybrid algorithm, combining Genetic
Algorithms and Local Search, to solve the Two-Dimensional Guillotine Bin-Packing
problem. Empirical analysis demonstrated the worth of the method, in
particular nding an average occupation rate of 91% across a range of challenging
instances. In future work, one are for improvement would be the development of
placement strategies to help the process of decoding the phenotype chromosome
into a better nal solution. This would be extremely bene cial, particularly for
instances with many sequencing constraints.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Abdulal</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ramachandram</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Reliability-Aware Genetic</surname>
          </string-name>
          Scheduling Algorithm in Grid Environment.
          <source>International Conference on Communication Systems and Network</source>
          Technologies pp.
          <volume>673</volume>
          {
          <issue>677</issue>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Baker</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Co</surname>
            <given-names>man</given-names>
          </string-name>
          , E.,
          <string-name>
            <surname>Rivest</surname>
          </string-name>
          , R.:
          <article-title>Orthogonal Packings in Two Dimensions</article-title>
          .
          <source>SIAM J. Comput. 9</source>
          ,
          <issue>846</issue>
          {
          <fpage>855</fpage>
          (
          <year>1980</year>
          ). https://doi.org/10.1137/0209064
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Baldi</surname>
            ,
            <given-names>M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Crainic</surname>
            ,
            <given-names>T.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perboli</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tadei</surname>
          </string-name>
          , R.:
          <article-title>Branch-and-price and beam search algorithms for the Variable Cost and Size Bin Packing Problem with optional items</article-title>
          .
          <source>Annals of Operations Research</source>
          <volume>222</volume>
          ,
          <volume>125</volume>
          {
          <fpage>141</fpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bennell</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Soon</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Potts</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.N.:</surname>
          </string-name>
          <article-title>A genetic algorithm for two-dimensional bin packing with due dates</article-title>
          .
          <source>International Journal of Production Economics</source>
          <volume>145</volume>
          ,
          <issue>547</issue>
          {
          <fpage>560</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Fernandez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gil</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marquez</surname>
            ,
            <given-names>A.L.</given-names>
          </string-name>
          , Ban~os, R.,
          <string-name>
            <surname>Montoya</surname>
            ,
            <given-names>M.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parra</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A memetic algorithm for two-dimensional multi-objective bin-packing with constraints</article-title>
          .
          <source>Proceedings of the 13th annual conference companion on Genetic and evolutionary computation - GECCO</source>
          p.
          <volume>341</volume>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Gilmore</surname>
            ,
            <given-names>P.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gomory</surname>
            ,
            <given-names>R.E.</given-names>
          </string-name>
          :
          <article-title>Multistage cutting stock problems of two and more dimensions</article-title>
          .
          <source>Operations research 13</source>
          ,
          <volume>94</volume>
          {
          <fpage>120</fpage>
          (
          <year>1965</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Goncalves</surname>
            ,
            <given-names>J.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Resende</surname>
            ,
            <given-names>M.G.</given-names>
          </string-name>
          :
          <article-title>A biased random key genetic algorithm for 2D and 3D bin packing problems</article-title>
          .
          <source>International Journal of Production Economics</source>
          <volume>145</volume>
          ,
          <issue>500</issue>
          {
          <fpage>510</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ye</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Bottom-Left Placement Theorem for Rectangle Packing</article-title>
          . arXiv:
          <volume>1107</volume>
          .4463 [cs] (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Hwang</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Choi</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>A genetic algorithm approach to an integrated problem of shelf space design and item allocation</article-title>
          .
          <source>Computers &amp; Industrial Engineering</source>
          <volume>56</volume>
          , 809{
          <fpage>820</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Jakobs</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>On genetic algorithms for the packing of polygons</article-title>
          .
          <source>European Journal of Operational Research</source>
          <volume>88</volume>
          ,
          <volume>165</volume>
          {
          <fpage>181</fpage>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kierkosz</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luczak</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A hybrid evolutionary algorithm for the two-dimensional packing problem</article-title>
          .
          <source>Central European Journal of Operations Research</source>
          <volume>22</volume>
          ,
          <volume>729</volume>
          {
          <fpage>753</fpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Libralesso</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fontan</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>An anytime tree search algorithm for the 2018 ROADEF/EURO challenge glass cutting problem</article-title>
          . arXiv:
          <year>2004</year>
          .00963 [cs] (
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Liu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Teng</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          :
          <article-title>An improved BL-algorithm for genetic algorithm of the orthogonal packing of rectangles</article-title>
          .
          <source>European Journal of Operational</source>
          Research pp.
          <volume>413</volume>
          {
          <issue>420</issue>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Lodi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Monaci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pietrobuoni</surname>
          </string-name>
          , E.:
          <article-title>Partial enumeration algorithms for TwoDimensional Bin Packing Problem with guillotine constraints</article-title>
          . Discrete Applied Mathematics pp.
          <volume>40</volume>
          {
          <issue>47</issue>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Merz</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Freisleben</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Memetic Algorithms for the Traveling Salesman Problem</article-title>
          .
          <source>Complex Systems</source>
          p.
          <volume>50</volume>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Moscato</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          : On Evolution, Search, Optimization,
          <string-name>
            <given-names>Genetic</given-names>
            <surname>Algorithms</surname>
          </string-name>
          and
          <string-name>
            <surname>Martial Arts - Towards Memetic Algorithms. Caltech Concurrent Computation Program</surname>
          </string-name>
          (
          <year>1989</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Moscato</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cotta</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>A Gentle Introduction to Memetic Algorithms</article-title>
          .
          <source>Operations Research &amp; Management Science</source>
          <volume>57</volume>
          ,
          <issue>105</issue>
          {
          <fpage>144</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Pisinger</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sigurd</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Using Decomposition Techniques and Constraint Programming for Solving the Two-Dimensional Bin-Packing Problem</article-title>
          .
          <source>INFORMS Journal on Computing</source>
          <volume>19</volume>
          ,
          <issue>36</issue>
          {
          <fpage>51</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Puchinger</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raidl</surname>
            ,
            <given-names>G.R.</given-names>
          </string-name>
          :
          <article-title>Models and algorithms for three-stage two-dimensional bin packing</article-title>
          .
          <source>European Journal of Operational Research</source>
          <volume>183</volume>
          ,
          <volume>1304</volume>
          {
          <fpage>1327</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Ronald</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Duplicate genotypes in a genetic algorithm</article-title>
          .
          <source>IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98TH8360)</source>
          pp.
          <volume>793</volume>
          {
          <issue>798</issue>
          (
          <year>1998</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>