Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
4 views

A_Multi-Heuristic_Algorithm_for_Multi-Container_3-D_Bin_Packing_Problem_Optimization_Using_Real_World_Constraints

This document presents a novel two-stage multi-heuristic algorithm for optimizing the multi-container three-dimensional bin packing problem, addressing real-world constraints such as full shipment and product geometric interlocking. The algorithm aims to minimize the total number of containers used in the palletization process while ensuring stability and sustainability by reducing plastic wrapping. Performance benchmarks demonstrate that the proposed solution effectively handles a wide variety of orders, achieving full palletization in both homogeneous and heterogeneous cases.

Uploaded by

ahsan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

A_Multi-Heuristic_Algorithm_for_Multi-Container_3-D_Bin_Packing_Problem_Optimization_Using_Real_World_Constraints

This document presents a novel two-stage multi-heuristic algorithm for optimizing the multi-container three-dimensional bin packing problem, addressing real-world constraints such as full shipment and product geometric interlocking. The algorithm aims to minimize the total number of containers used in the palletization process while ensuring stability and sustainability by reducing plastic wrapping. Performance benchmarks demonstrate that the proposed solution effectively handles a wide variety of orders, achieving full palletization in both homogeneous and heterogeneous cases.

Uploaded by

ahsan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

Received 12 January 2024, accepted 12 March 2024, date of publication 19 March 2024, date of current version 25 March 2024.

Digital Object Identifier 10.1109/ACCESS.2024.3378063

A Multi-Heuristic Algorithm for Multi-Container


3-D Bin Packing Problem Optimization
Using Real World Constraints
ANAN ASHRABI ANANNO AND LUIS RIBEIRO , (Senior Member, IEEE)
Department of Management and Engineering, Linköping University, 581 83 Linköping, Sweden
Corresponding author: Luis Ribeiro (luis.ribeiro@liu.se)
This work was supported by the Strategic Innovation Program Produktion2030, a joint venture between Vinnova, Formas, and the Swedish
Energy Agency under the scope of the project titled FLAP—Hållbar och flexibel automatisering av säsongsproduktion genom dynamisk
resurshantering under Grant 2021-01283.

ABSTRACT With the growing demand for sustainable and optimal packaging solutions, this study proposes
a novel two-stage algorithm for the multi-container three-dimensional bin packing problem. The research
addresses this problem within the context of a real-world industrial scenario and implements several practical
constraints including: full shipment, customer positioning requirements, and product geometric interlocking,
for increased stability and with the purpose of minimizing the use of plastic wrapping and/or additional
supporting surfaces. The main optimization target is to minimize the total number of containers used in
the palletization process of custom orders with varying degrees of complexity. The proposed algorithm
includes two stages/phases of processing. In the first phase, the algorithm uses constructive heuristics to
generate homogeneous product layers. The layers are then stacked to produce blocks, which are then placed
on individual containers or pallets. The second phase packs the leftover items using a genetic algorithm. The
performance of the proposed solution is benchmarked using real-world industrial data, as well as a more
classic academic benchmark. It is demonstrated, across a very large set of orders, that the algorithm always
achieves solutions for full palletization of the orders. The analysis shows that the approach is generic and the
quality of the solutions generated is relatively even for both small and large, homogeneous and heterogeneous
problem instances.

INDEX TERMS Multi-container 3D-PP, 3D bin packing problem, multi-heuristic algorithm, industrial
application, real world constraints.

I. INTRODUCTION generally known as the three-dimensional packing problem


The growing trend in product customization affects not only (3D-PP) [1]. A very important variation of the problem is
final products’ features but also their transportation and logis- the multi-container three-dimensional bin packing problem,
tics. Product customization is a reality across many different which this paper directly addresses. Within such variation,
industrial and commercial domains. A key challenge, with a number of items need to be fully packed into the least
considerable economic impact, is to optimally pack multiple number of containers. The problem can be easily solved if
items with different weights and form factors on pallets or the items to be packed have the same physical properties
in containers. Optimal packing can follow different criteria, (including but not limited to: dimensions, load capacity,
depending on the sector. However, maximizing the utilization shape, etc.). In reality, however, there are many applications
of space while fulfilling an arbitrary number of auxiliary where high numbers of extremely heterogeneous items must
constraints is the main application line. The problem is be packed together.
Currently, palletization and container filling operations
The associate editor coordinating the review of this manuscript and for such heterogeneous cases are predominately done by
approving it for publication was Claudio Zunino. humans, sometimes with the support of machinery for
2024 The Authors. This work is licensed under a Creative Commons Attribution 4.0 License.
VOLUME 12, 2024 For more information, see https://creativecommons.org/licenses/by/4.0/ 42105
A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

the displacement of heavy items. There are economical,


efficiency and even safety aspects that are at stake when
manual operation is considered. First, the process needs to be
learned and often requires training, which results in training
costs and creates a ramp-up period for operators. The impact
of training cannot be discounted because many industries
will use temporary workers in such processes, who have
not necessarily been trained before in the specifics of a
particular system. After the ramp-up period, the efficiency
is still biased by the operators’ capacity to evaluate an
order and devise an adequate palletizing sequence. Finally,
an operator cannot easily provide guarantees about the
stability of the container being packed, which is a safety
concern in non-walled open containers such as pallets. Sub-
optimal geometric arrangements may also result in an excess FIGURE 1. Literature categorization of the 3D-PP in respect to its main
of containers being used, which incurs higher transportation variables.

costs [2].
3D-PP algorithms can be used to help human operators cre- (but all the products must be packed). The proposed approach
ate more optimal arrangements while providing guarantees in also constrains the problem in the following ways: All the
a multi-objective, multi-constrained 3D-PP. Such algorithms containers are pallets and therefore do not have vertical
can also be used for fully automated palletization. Here, support walls that a product could be placed against. All
the human aspect becomes important again because manual the pallets used in the palletization of a single order have
palletization is a type of work that many operators are not the same dimensions. The item’s shape is constrained to be
motivated to carry out. It is considered to be a physically cuboid, with variable dimensions and orthogonal rotation
intensive, repetitive and unfulfilling task. allowed along the Z-axis. The previous constraints are widely
Another advantage of an algorithmic approach to the realistic, as even large e-commerce stakeholders tend to opt
problem is that less obvious arrangements of items can be for cuboid packaging, sometimes even with further form
considered and evaluated by the algorithm. Sustainability factor restrictions [3].
aspects can be incorporated into that process. For example, A final consideration that is relevant for the definition
by creating geometric interlocks between the items it may be of the 3D-PP problem is the look-ahead window size with
possible to transport pallets without wrapping their contents respect to the items being placed in a container or pallet.
in plastic film, substantially reducing plastic consumption. In some logistic scenarios, it is not possible to know, a priori,
This is in addition to the volume optimization aspects all the items that should be packed into a container (they
mentioned before. are packed as they come to the packaging area). In other
Generally an algorithmic approach to the problem scenarios, the entire composition of the order is known.
improves efficiency by reducing human errors, optimizing These two variations of the problem are known as online and
volume utilization and providing guarantees about key offline 3D-PP, respectively. The proposed approach considers
quality aspects of the palletization process. Collectively, the offline 3D-PP problem.
the previous dimensions translate to cost reduction through Many alternative formulations of the 3D-PP problem are
better utilization of resources. Finally, from a sustainability possible and each formulation will be subject to specific
perspective, doing away with plastic wrapping is of high constraints and challenges, and each will have its particular
relevance. Moreover, transporting well-packed, compact and complications and use cases [2], [4]. Figure 1 summarizes
stable arrangement of items will also reduce sub-optimal the main problem specifications, constraints and applicability
transportation and displacement of goods. limitations/directions of the proposed approach.
In the literature, 3D-PPs belong to the class of cutting After the aforementioned constraints are considered, the
and packing problems, which have been extensively studied overall complexity of the problem, considering real industrial
by the scientific community. According to [2], 3D-PPs use cases, is still too large for exact approaches and solutions.
can be categorized (for items of relatively small size The general problem of deciding on the optimal palletization
compared to the container size) as input minimization or sequence grows in a factorial fashion with the number of
output maximization problems. Input minimization consists items to be placed on a pallet. Such complexity can only be
of packing all the items in the fewest possible containers, tackled by resorting to heuristic methods.
while output maximization consists of attempting to pack as The specialized literature provides a vast amount of
many items as possible in a limited number of containers. potential solutions. However, the authors note that many
This contribution focuses on the first problem and assumes of the proposed solutions resort to oversimplifications of
that, upon receiving an order, a company wishes to ship the problem that make them unviable in a real application
the products in the least number of containers required scenario. Some of the most common simplifications include

42106 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

ignoring: the weight of the items, support conditions, pattern proposed solution on the aforementioned datasets; finally,
complexity, customer item positioning constraints, etc. Section VI offers the final thoughts, lessons learned and
There are important practical consequences to ignoring immediate development directions that result from this
the above. Ignoring the weight of the items often results in study.
solutions where the center of mass of the item aggregate
results in unstable pallets, which are hazardous and not II. LITERATURE REVIEW
acceptable in real-life scenarios. Such solutions could also As discussed in the introductory section, many variations of
theoretically allow lighter items to be overly compressed or the 3D-PP are possible. There are as many variations of the
even deformed by heavier items. Ignoring support conditions problem as there are possible approaches to it. The latter
leads often to arrangements that are impossible (e.g., an item are generally influenced by two main factors: the size of the
is placed in simulation, but in reality, there is not enough problem and the amount of prior knowledge about it (online
supporting area on the item to guarantee that the item or offline problem). Both of these aspects require a bit more
would not fall or deform). Pattern complexity is another characterization to unveil their impact on potential solutions.
practical constraint of great importance. A fully automated The dimension of the problem is directly related to the
solution can rely on complex positioning patterns because, number of items to be palletized/packed. However, the
at least theoretically, the mechanical part of the system sheer number of items does not tell the whole story.
is equipment with appropriate sensors and actuators to Heterogeneity of form factors combined with a relatively
deliver such accurate positioning. However, in reality, many modest number of items will usually yield a problem of
companies rely on both human-based palletization and a higher complexity (as shown in Section V). Highly uniform
form of automated process, sometimes even in collaboration. orders can be quickly palletized by resorting to geometric
Algorithms suitable for the latter case require that the patterns. Real use cases (see [5] and section III) will
devised positioning provide visual cues to the operator denote a very ample variation in the number of items,
so that the desired item alignment and placement can be item types and form factors. For sufficiently heterogeneous
achieved. Finally, companies very often require products orders, size immediately limits exact solutions. These lim-
of the same kind/brand/form factor to be packed together. itations are purely of a computational nature, the number
Many retailers will place the pallet directly on their shop of possible solutions becomes quickly computationally
fronts, so there are aspects of item reachability, presentation intractable.
consistency and branding to be considered in the palletization A priori knowledge also heavily conditions the approaches.
process. Exact solutions are impossible for online problems because
In light of the previous discussion, the authors propose a in real-world online scenarios algorithms have access to at
multi-heuristic-based solution for the palletization problem most the next 2 or 3 items to be palletized. Not surprisingly,
that addresses many of the practical constraints mentioned. approaches using learning are therefore more frequent for
Particularly, our proposed solutions focus, without loss of tackling online problems in comparison to offline problems.
generality, on the Food and Beverages (F&B) domain, where For the general case, heuristic or hybrid solutions are
the authors have several ongoing R&D efforts. For testing the only reasonable strategy. Only limited guarantees of
and evaluation purposes, the work considers a real dataset optimal solutions can be offered under the scope of such
(called Dataset 1000), with roughly 1000 data points that solutions, and even the sub-optimal solutions will be
have been previously characterized and made available in [5]. non-identical depending on the constraints that the algorithm
Each data point corresponds to one anonymized customer respects.
order. In the literature, there exists a myriad of methods for
The results show that the proposed algorithm can palletize solving 3D bin packing problems (see Tables 1, 2, 3, 4, which
a wide assortment of real-world orders in an industry provide an overview of the cases analyzed in this section).
acceptable way considering practical constraints. The authors With the previous in mind, this section analyses both online
do, however, recognize some relevant and practical limita- and offline approaches and attempts to put them into context,
tions, particularly those related to the execution time of the given the application scenarios considered in the different
proposed approach in very large and strongly heterogeneous contributions. Because of the many possible formulations
orders. of the 3D-PP, a direct comparison between approaches is
Considering the above, the subsequent details are orga- virtually impossible. Different approaches will use different
nized as follows: Section II provides a comprehensive quality evaluation metrics. Computational execution perfor-
overview of the state of the art in 3D-PPs and offers a mance metrics are also not comparable as they are sensitive
comparative analysis of the discussed literature. Section III to the quality of the software and hardware used to execute
provides a brief introduction to the characteristics of the the different algorithms. The computational efficiency of the
datasets used in this study, drawing the main differences algorithms could theoretically be investigated but oftentimes
between real industry data and more academic datasets; algorithms are not sufficiently described to evaluate that
Section IV provides a technical description of the proposed either. The analysis in this section is therefore of a more
solution; Section V discusses the results obtained using the qualitative nature and starts by defining the many different

VOLUME 12, 2024 42107


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

practical constraints that are frequently considered in the Stacking constraints limit the amount of column weight
different solutions. that particular items can tolerate before enduring deformation
or damage. Bortfeldt et al. discussed four factors (i.e.,
A. CONSTRAINTS condition of the transportation, content inside the item,
Constraints are of extreme importance for solving geometry of the item and material of the item) that determine
3D-PPs [6] as they cater to quality and safety aspects in the maximum allowable pressure an item can handle before
the packing process. Constraints also significantly influence failure [6]. In the literature, the general approach for
the performance of the 3D-PP algorithms by modifying the integrating this constraint is to decide an upper limit on the
space of possible solutions. They are used to filter out weight an item can support for a given orientation [20], [21],
invalid solutions and satisfy specific customer requirements [22]. However, in many cases, the load limits are simply
in real-world industrial scenarios. not known and, even in real-world applications, the general
Item shape is the most frequent constraint. The great rule of not placing heavier items on top of lighter or fragile
majority of the approaches consider cuboid items, occasion- ones, is usually used as an approximation to the stacking
ally allowing other regular solids, for example, cylinders. constraint [11], [14], [27], [29], [38], [39].
Packing of highly irregular items is uncommon in theoretical Support constraints guarantee that items in a container,
and practical applications for several reasons: it is practically or pallet, are appropriately supported and balanced [8], [40],
impossible to precisely package irregular geometries while [41], [42]. Support is critical for the safety of operators
guaranteeing or calculating all the forthcoming packaging during loading and unloading of the items. Different support
constraints. For reference, an example of irregular packaging criteria may be considered: requiring contact with specific
can be found in [7]. points and edges in the item, requiring a certain percentage
The weight limit constraint is often used to ensure the total of the bottom face of the item to make contact with other
weight of the packages is within the load-bearing capacity of items, a combination of both, etc. Within the verification of
a container [8], [9], [10], [11], [12], [13]. By satisfying this support constraints, it is sometimes included that items may
constraint, proper weight distribution of the packages can be not protrude outside of a specific volume (usually determined
achieved [6]. by the area of the container in connection to a maximum
The center of mass (COM) calculation is frequently used admitted packing height). The majority of the examined
to guarantee the stability of the container, thereby preventing works seek to fulfill support constraints, with the exception
the risk of tipping. In the literature, this is usually referred to of [43], [44], and [45] where such constraints were not
as stability constraint in the literature, which can be divided considered.
into static and dynamic stability. Static stability protects the Non-collision constraints guarantee that items are placed
container from tipping over when the container is standing such that they do not collide with each other. All the works
still [8], [9], [10], [12], [14], [15], [16], [17], [18], [19], [20], examined in this section guarantee non-colliding packing.
[21], [22], [23], [24], [25], [26], [27], [28], [29], [30], [31], Other constraints - aside from the constraints examined
[32], [33], [34]. Dynamic stability (which can be further before, which are extremely frequent in the literature,
classified into lateral and longitudinal stability) is used to some authors introduce more niche or practical constraints.
prevent packages from falling over when the container is Examples of such constraints include, but are not limited to:
subjected to forces during displacement [10], [14], [16], [20], • Complete shipment - all the items in the order must be
[21], [22], [27], [30], [34], [35], [36]. palletized/packed [16], [46].
Item orientation is another practical constraint. In real- • Suitability for robotized and/or operator-based packing
world scenarios, items can only be placed in a limited number - the generated packing solution must be executable
of orientations that guarantee the integrity of the products by both machines and humans, which often implies
during packaging, storage and transportation. Limiting the creating packing arrangement that include visual cues
orientation usually has a secondary beneficial effect on for operators on where to place the items (overlapping
the solution side, which is improving its computational item corners or edges, color coding, etc.) [47], [48].
performance by greatly restricting the number of possible • No buffering - items cannot be buffered before packing,
packaging configurations that need to be evaluated. Due to which usually applies to online problems. Gener-
this, it is a frequently considered constraint across a wide ally, buffering is relevant in both online and offline
range of solutions (see Tables 1, 2, 3, 4). Transformations approaches, but the majority of offline approaches
in item orientation of cuboid-shaped items are usually studied assume all the items are available at all times.
restricted to orthogonal rotations and are relatively common, This is rarely the case in real-world applications where
representing the majority of the cases analyzed in this a limited amount of items pertaining to the whole order
section. This ensures that the edges of items packed in is always buffered for packaging [48], [49].
the container must be parallel to the container’s and other
items’ edges. A few solutions allow oblique rotation ( B. OFFLINE ALGORITHMS
[16], [25]) and some forbid any form of rotation at all A considerable amount of the packing algorithms surveyed
[12], [37]. focus on off-line problems (Tables 1, 2, 3). Solutions to

42108 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

offline problems can be loosely categorized into exact defines the allowed volumes where such aggregates may
(Table 1), heuristic (Table 2) and machine learning-based be placed.
(Table 3). • Packing Sequence Generation - determines the order and
position of the item aggregates satisfying an arbitrary
1) EXACT ALGORITHMS number of constraints.
Exact algorithms (Table 1) perform an exhaustive search • Solution Evaluation and Iteration - evaluates the quality
within the entire solution space and are guaranteed to find of one solution, possibly combining different solu-
an optimal solution. The application of exact solutions is tions with each other and re-iterating the algorithm
limited to problems of reduced complexity. As mentioned until a certain set of quality parameters’ values are
before, reduced complexity usually means an order with met.
low heterogeneity and a relatively modest number of items
and practical constraints. These limitations are currently In order to generate loading patterns for the items a
imposed by the lack of sufficient computational power that placement strategy needs to be developed. In the literature,
would enable an exact algorithm to directly tackle a real placement strategies are classified into the following major
order without further heuristics. While the direct and single types: horizontal layer building [11], [12], [13], [21], [26],
application of such algorithms, at the time of writing, could [29], [30], [31], [35], [36], [39], [51], [52], [53], block
be considered inadequate [2], they can be combined with building [7], [18], [20], [23], [32], [34], [53], [54], stack
other heuristic approaches to improve their performance building [22], guillotine cutting [8], wall building [33], [55],
[14], [19]. [56] and cuboid building [14]. Different loading patterns
Common techniques used in exact solutions are based on will manage the usable packing volume in slightly different
mixed-integer linear programming (MILP) [50] which can ways (prioritizing a certain packing orientation and direction
largely be seen as the basis for other exact methods ( [8], over others, restricting the placement to specific areas,
[12], [40], [41]) including combinatorial branch-and-bound enforcing certain contact points between the packed items,
algorithms [42]. etc.). Additionally, loading strategies aim at simplifying
Junqueira et al. showed that MILP can incorporate the solution space by creating larger item aggregates with
practical constraints (i.e., load bearing, dynamic stability) and geometries that facilitate packing. The general idea is to
solve medium-size problem instances (up to 100 items) [12]. create a set of aggregates according to one of the loading
The best exact algorithms can, at the time of writing, solve patterns and subsequently optimize the placement of these
problem instances with a maximum of 180 items, considering aggregates.
load stability and complete shipment constraints, using the Layer building refers to a loading pattern where items
dual bound approach [16]. are placed horizontally or vertically (wall building) layer-
Ocloo et al. developed a MILP formulation for solving a by-layer. This loading pattern first places items on the
single large object placement problem (SLOPP). The model floor/container base to create the first layer. The subsequent
is capable of satisfying numerous practical constraints like layers are placed on top of, or next to, the previous layer
fragility, COM distribution, loading priorities, etc. [19]. Due until no more layers can fit inside the container. There are
to the extreme computational load, their model produced many different strategies for creating layers regardless of their
optimal solutions for small-size problems up to 16 boxes. placement. Layers can be constructed using identical items
Nascimento et al, further proposed an exact algorithm only [26], [29], [36], [39], [52], [53]. Other authors allow
using integer linear programming (ILP) to solve the single items of different types to be included in the same layer, their
container loading problem [14]. Their algorithm approached process consists of first creating a simple layer of same-type
3D-PP with 12 practical constraints and solved medium-size objects and then merging these layers vertically together
problem instances (maximum 110 items). resulting in a heterogeneous layer [13]. Another possible
strategy includes creating layers of items of the same height,
2) HEURISTIC ALGORITHMS not necessarily of the same type, and distributing them to
Due to the complexity of real-world 3D-PP problems, heuris- ensure that the COM of a layer is close to the geometric center
tic algorithms, sometimes hybridized with exact approaches, of the container [31]. Load-bearing limit and item weight
are practically the main solution. The majority of heuristics have been used as criteria for creating heterogeneous layers
considered attempts to reduce or simplify the vast solution in [21]. In a different problem type, the customer provides the
space by making assumptions about potentially working/non- construction design of layers and the authors used a heuristic
working solutions, by solving multiple sub-optimization approach to stack the layers [30], [35]. Some variations of
problems and aggregating the results, exploiting specific the problem consider multi-compartment containers. In this
problem characteristics, etc. A common line pursued in case, the algorithm considers the geometric dimensions of
the works examined includes using a so-called constructive all the compartments in order to generate the layers. A layer
approach comprising three steps: can be composed of either identical items or residual items
• Loading Pattern Generation - defines item aggregates of only [22]. When items of different types are combined, the
some kind (sets of the box in blocks or layers) and/or packing density of the layers is usually considered a metric

VOLUME 12, 2024 42109


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

TABLE 1. Analysis of offline 3D-PP literature based on exact approaches and improvement strategies.

of layer quality [51]. Another strategy for wall building is are flexible and can be adjusted during the process based on
reported in [55] where the problem is modeled as a single the problem’s state [20], [36], [53].
knapsack problem where strips of boxes need to be formed
and grouped into vertical layers. 3) MACHINE LEARNING ALGORITHMS
Stack building is another strategy for simplifying the Heuristic-based and hybrid approaches improve upon exact
3D-PP whereby items are arranged in vertical columns approaches by allowing a much larger portion of the
(stacks) first, and then the stacks are placed on the container solution space to be explored. This, however, comes at a
floor by solving a more computationally tractable 2D-PP computational performance cost. Recently, machine learning
problem [11]. (ML)-based approaches have started to emerge as a potential
Another way to solve the 3D-PPs is to use the ‘‘block build- alternative to heuristic approaches in some selected use
ing’’ approach. This approach creates cuboid-shaped blocks cases. The general idea is to induce neural classifiers using
of items and then loads them into the container. A block may existing examples of successfully pre-palletized/packed pal-
be homogeneous (items of the same type) or heterogeneous lets/containers. The work with these solutions is widely
(different types). An example of homogeneous block creation experimental, and there is an important general distinction
can be found in [32] where a probabilistic method is used to be considered between exact and heuristic approaches and
to reduce the size of the blocks and optimize their fitting ML-based approaches. The first can guarantee that all the
into the available volume in the container. Heterogeneous considered constraints are fulfilled for all devised solutions,
blocking is reported in [34] and [54] where tree search is while the latter can not directly provide such guarantees.
used to load the blocks into the container’s available volume. On the other hand, the advantage of ML-based approaches
A hybrid strategy is reported in [23] where blocks are first is that a potentially feasible solution can be obtained in a
created using the work described in [34] and then loaded into fraction of the time it takes to compute an exact or heuristic-
the container using an exact method. A similar approach is based solution.
described in [18], however, instead of using an exact method Examples of ML approaches include [60] where Deep
for the placement of the blocks, a meta-heuristic framework Reinforcement Learning (DRL) is used in connection with
using simulated annealing is considered. An approach with a heuristic method to pack items in a space while minimizing
close affinity to block building consists of a three-step process surface area using real data. The DRL method optimizes the
whereby similar items are optimally packed into cartons, and order of items, and the heuristic chooses the best position
cartons are then packed into crates, which are subsequently and orientation for each item. In [44] the authors claim to
loaded into a container using a multi-search heuristic have improved the algorithm discussed in [60] by using
algorithm [7]. a multi-task selected learning approach, which combines
The sequence generation and solution evaluation parts of reinforcement learning and supervised learning, to decide
the constructive heuristic approaches tend to have a very the order and orientation of items at the same time. In [17]
high impact on the performance of the different algorithms. another neural optimization model based on reinforcement
Different approaches are possible and fall into two main learning is discussed to find an optimal sequence/order and
categories: static or dynamic sequences [57]. Static sequences orientation of block selections. The approach assumes a set of
are defined before the packing process is attempted by the pre-blocked items and concentrates on devising the packing
algorithm, and they do not change [56]. Dynamic sequences sequence only. In [61] a deep neural network is used to

42110 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

TABLE 2. Analysis of offline 3D-PP literature based on heuristic approaches and improvement strategies.

VOLUME 12, 2024 42111


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

TABLE 3. Analysis of offline 3D-PP literature based on machine learning approaches and improvement strategies.

TABLE 4. Analysis of online 3D-PP literature based on their solution approaches and improvement strategies.

estimate a placement policy and a Monte Carlo tree search This heuristic tries to place the item as deep, bottom and left
is used to improve said policy. The previous approaches are, as possible in the container.
at large, aligned with the tendency to use hyper-heuristics In [24] the Height Map Minimization method is proposed,
where problem-specific heuristics are automatically created which aims to minimize the increase in volume occupied by
or selected [62], [63]. the items counting from the loading direction [24].
Heuristic approaches for the online problem tend to
C. ONLINE ALGORITHMS perform poorly from an optimization point of view and can
at best guarantee that some limited constraints are fulfilled.
Solutions for the online 3D-PP (Table 4) are much more
In very heterogeneous orders, such heuristics would either
contemporary than the solutions for the offline variations of
create an excess of containers or violate certain constraints
the problem. Online problems also have a closer affinity to
(e.g., column load, stability, etc.) when compared to offline
recent automated bin packing problems, made possible by
heuristics.
the latest advances in artificial vision systems, which will not
be revised in this paper. Exact optimization solutions are not
possible for the online problem since there is no optimization 2) MACHINE LEARNING ALGORITHMS
scope, every item needs to be immediately packed and
The limitations of heuristic approaches in the online variation
therefore global optimal guarantees are not possible.
of the problem render ML-based learning very interesting.
ML has the advantage of using previous knowledge to
1) HEURISTIC ALGORITHMS estimate which local decision generally tends to work
Online 3D-PPs are different from offline 3D-PPs, the better for the general case (the algorithm applies a kind of
majority of the search-based methods for the latter are not knowledge-based intuition for deciding on the placement of
suitable for the former. Therefore, several other heuristic the item).
methods have been developed to solve online 3D-PPs. One of A DRL-based framework to solve an online 2D-PP that
the most popular and simple heuristics is the Deep-Bottom- can also work for online 3D-PPs is discussed in [43]. The
Left (DBL) heuristic, which was introduced in [45] and [48]. framework takes an image of the bin as input and outputs

42112 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

a pixel location where the next item should go. The reward out of which only [4] is publicly available. The orders
function of the algorithm tries to pack the next item next in the said dataset, compared to the orders’ profiles of
to the already packed items to maximize the free space real companies, are relatively limited in both size and
for the remaining items. A two-step approach is discussed item variety. Some of the works analyzed also claim to
in [47]. In the first step, the number of possible positions have done testing on real-world datasets. However, these
and orientations is reduced by only considering the ones datasets are not made public most likely because they contain
that are likely to be optimal, such as the corners of the sensitive data. It is therefore not clear how many of the
container or the edges of the packed items. In the second step, reviewed approaches would perform with real-world data.
DRL is used to learn good packing strategies and select one This creates additional difficulties in comparing the merits of
position-orientation combination from the candidates. the different approaches. In addition to that, to the best of the
The online 3D-PP can also be modeled using a constrained author’s knowledge, there are no publicly available realistic
Markov decision process and solved utilizing the DRL datasets for training ML solutions, which complicates future
approach [15]. The authors of that work have used the developments.
actor-critic framework to improve the DRL strategy, which
combines value function learning and policy search and III. A REALISTIC DATASET FOR EVALUATING 3D-PP
optimizes the policy based on action feasibility predictions. SOLUTIONS
They used a feasibility predictor to estimate if the placement The previous section clearly shows the diversity of problem
actions are feasible and adjust the action probabilities of variations and possible solutions. It also shows that the
output by the actor during training. lack of realistic testing data sometimes undermines the
correct evaluation of existing and new approaches in real-
D. SUMMARY AND ANALYSIS world scenarios. To mitigate this effect the authors test
The literature review clearly shows the diversity of problem their proposed approach against the dataset described in [4],
variations and possible solutions. It also shows that there to enable a comparison with previous works using that
are concrete scalability limits with respect to the maximum dataset. More importantly, the authors test their approach
problem size that can be reasonably tackled by the majority against the dataset detailed in [5] which is publicly available
of the approaches. Exact techniques peak at 180 items, and based on anonymized real industry data. The distribution
while heuristic approaches have been tested up to much of data points in the two datasets is depicted in Figures 2
higher values. All approaches have shown that they are and 3. Each point in the figure represents an order in the
somehow efficient in optimizing towards the most common corresponding datasets as a function of the number of items
optimization goal: improving area/volume utilization. The in each order, the number of different products in them and
number and quality of the constraints considered, as well an entropy measurement of the order. The entropy of the
as the ability to handle very heterogeneous orders, become orders was calculated in the following way [5]: the dataset
the differentiating aspects. Complete shipment constraints was grouped by order and product, and the quantity of each
are not always considered, which biases the obtained results. product was summed for each group. The Shannon index was
Additionally, many of the approaches trying to pack a large then calculated and normalized for each order. The function
number of items are also packing very homogeneous items, entropy from the python scipy. stats._entropy package was
which indirectly benefits the solution. The authors’ experi- used for calculating the index. Normalization of values
ence and observations from evaluating the literature suggest between 0 and 1 was carried out by subtracting the minimum
that the most performance-taxing part of all algorithms is the entropy value from the calculated index and then dividing by
one that handles the heterogeneity of a specific order. Heavily the difference between the maximum and minimum entropy
heterogeneous orders generally defeat all the layer-building values. This results in a value where the higher the entropy,
and block-building approaches, which rely on the unifor- the higher the uncertainty in the distribution of the number of
mity of item dimensions to reduce the problem/solution items per product type.
space. Comparing both datasets side by side shows that the
ML-based approaches are emerging as candidates for variation of order composition in Figure 3 is much higher and
solving many of the performance issues of heuristics and more unpredictable than in Figure 2. The main differences are
exact solutions in the many variations of the 3D-PP. However, in volume of items, product variety but also distribution of
ML solutions require well-curated data, which can only come product variety. These variations pose additional performance
from two sources: companies’ records of previously packed challenges to most algorithms, particularly for high volume
items, which usually do not exist, or artificially generated high entropy orders, where the authors note the very high
solutions created by heuristics and exact solutions. One number of orders with more than 400 items that simultane-
general problem is that realistic datasets for the evaluation ously exceed 20 varieties of products. These numbers are
of 3D-PP solutions are not available. Previous research the upper complexity limits of the dataset detailed in [4]
carried out by the authors shows that a great majority of and visible in Figure 2. Furthermore, it is important to
the specialized literature refers to 19 different datasets [5] mention that, the dataset from 2, used with some frequency

VOLUME 12, 2024 42113


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 4. Frame of reference for placing items inside a pallet.

FIGURE 2. Distribution of orders in the dataset from [4]. pallets are defined as a function of their dimensions as in
[L, W, H], representing their length, width and height. In the
present case, but without loss of generality, the Euro pallet
format [1200 mm, 800 mm, 1400 mm] is considered. The
problem is treated as unbounded to satisfy the full-shipment
constraint. This means that the algorithm has the capability of
adding additional pallets to the problem in order to achieve a
solution.
The palletization process, pallet dimensions, item repre-
sentation and placement will always occur, by convention,
in the first quadrant of the XY plane. The origin of the 3D
coordinate system considered in the palletization process is
therefore, also by convention, placed at the left-bottom corner
of the pallet. The x-axis points along the length of the pallet
and the y-axis points along the width of the pallet.
FIGURE 3. Distribution of orders in the dataset from [5]. The position of an item i is defined by one point in the
above-mentioned coordinate system and is represented as a
tuple of integer values [xi , yi , zi ]. Such a point is also the
in the literature, does not include information regarding the origin of the coordinate system of the item, which has the
weight of the items. The latter is a limitation because item same default orientation as the coordinate system previously
weight largely influences the palletizing patterns in real- defined for the pallet (see Figure 4).
world scenarios. The total quantity of items of type i is denoted
P as qi , and
hence the total number of items in an order is m i=1 qi .
IV. PROPOSED SOLUTION The proposed algorithm therefore finds one packing
3D-PP is a well-known combinatorial optimization problem sequence as well as the positions of the items within that
and is also well-known to be NP-Hard. The algorithm sequence for all the items in one order. The proposed solution
described in this section focuses on the off-line multi- attempts to minimize the number of pallets used, maximize
container 3D bin packing variation of the problem and the compactness (i.e., maximize the contact area between
considers several practically relevant industrial constraints. all the faces of items) of the packed items, and minimize
These are frequently considered in other algorithms described the heterogeneity of item types in each pallet. It does so by
in the literature but very rarely combined into a single combining several heuristics in a two-phased process detailed
algorithm. later.
While doing so, the solution simultaneously satisfies
A. PROBLEM DESCRIPTION eight different constraints: item orientation, non-collision,
In the context of warehouse logistics, and in a very simplified stability, support, pattern complexity, complete shipment,
way, customers place purchasing orders with a variety of customer positioning, layer interlocking.
product compositions that need to be palletized and shipped According to the literature review in Section II-A
using containers/pallets. Each order consists of I set of and to the best of the authors’ knowledge, existing
items, of cuboid shape, and each item (i ∈ I) is represented well-documented methods do not simultaneously address
as [li , wi , hi , mi , vi , qi ], that is length, width, height, all the above-mentioned eight constraints. The authors
weight, volume, and quantity, respectively. These items then cannot exclude, however, the hypothesis that there may
need to be palletized using fixed-size containers/pallets. The be commercial solutions that address them. However, one

42114 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

should stress that the selection of the 8 constraints, detailed and toward the center of the base. The value of the XY
above, for inclusion in the proposed solution resulted from a inward translation is configurable. Support constraints are
requirements elicitation exercise coupled with an industrial important from a practical perspective. Not all items can
research project, whereby companies mentioned that they be supported in the same way. The proposed solution uses,
had not found an immediate solution that would cover the therefore, a combination of supported corner points with the
specifics of their palletization problems. percentage of an item’s bottom area that is supported. These
Of the constraints selected, the first six are hard constraints. two previous re-configurable constraints cover the following
A solution will not be considered valid if one of those cases:
constraints is violated. The latter two are soft constraints. • items that bend under axial weight - in this case,
The algorithm tries to fulfill them; however, it will not reject requiring corner support is not enough, a minimum
infringing solutions to achieve fulfillment of such constraints. amount of bottom area must be supported, in addition
The majority of the constraints described next have been to a specific number of corners, to adequately support
presented before. Therefore, in this section, only the problem such items;
specific details and interpretation of said constraints are • items with a very rigid bottom section - in this case,
discussed. requiring the support of 3 or 4 corners may be enough
Constraint 1: The item orientation constraint is used for as long a small base area is also supported;
to restrict orthogonal rotation to the z-axis. This is a • any variations between the two cases described above
common constraint in many sectors but also something may be adequately configured.
very characteristic of the F&B domain, where this work Constraint 5: The customer pattern complexity con-
is grounded. Many food products require a specific side straint is a customer-specific constraint. Different algorithms
of the package to be facing up and disallow the products will create different packing patterns. In the context of this
from being placed on their sides or upside-down. The work, it is important that the algorithm generate solutions
current algorithm, therefore, only allows two orientations. that can be palletized in manual, semi-automated and fully
The default orientation of the box and its 90 degree rotation automated modes. The item placement strategy considered
along the box’s z-axis. The default orientation of the item ensures that any placed item has at least one vertex and
must guarantee that its edges are parallel to the edges of the two edges aligned with either the pallet or some other item
pallet so that the permitted rotation will also fulfill the same adjacent to it. The previous provides easy visual cues for
requirement. manual packing in a real-world industrial scenario. This is
Constraint 2: Non-collision guarantees that all the items opposed to fully automated packing strategies, which may
in the pallet do not occupy overlapping volume envelopes. place items in positions that are only possible with precise
The algorithm uses axis-aligned bounding boxes to support mechatronic placement. However, it is practically impossible
the detection of collisions. Overlapping bounding boxes are for human operators (e.g., place an item aligning one of
therefore interpreted as colliding. its edges with the line on the second fifth of the length of
Constraint 3: The stability constraint is evaluated for another item). The customer pattern complexity constraint
each pallet in the solution. To that end, the COM of the is important to guarantee that packing solutions can be
pallet with the packed items is calculated. The position of the efficiently and safely implemented by human operators.
COM is restricted to an area contained on the XY plane and Constraint 6: The complete shipment constraint requires
surrounding the geometric center of the pallet. all the items in an order to be packed. Many academic
Tipping conditions are subsequently checked. If the packed contributions disregard this constraint, particularly when
pallet passes the tipping test, it is then checked for relevant solving single-container problems. In real-world applica-
offsets of its COM on the XY plane relative to the geometric tions, shipment is performed using the least number of
center of the pallet in the same plane. The amount of accepted containers required but the entire order needs to be shipped.
deviation is configurable. Stability and support constraints Constraint 7: Customer positioning constraints are very
(defined next) directly address safety requirements and frequent in palletizing operations. In this case, the constraint
regulations. specifies that, as much as possible, equal items must be
Constraint 4: Support constraints are satisfied if the packed as close as possible, ideally creating complete layers
following conditions are true: of products. The rationale behind such a constraint is that,
• at least 40% of the base of an item and its 4 base vertices in the context studied, the majority of the pallets are shipped
are supported by other items, or by the pallet or, to retailers that wish to de-palletize a shipment directly
• a minimum of 50% of the base area is supported as well to their shelves. In that context, products should not be
as 3 base vertices or, mixed. For example, in a real-world scenario, a retailer may
• 75% or more of the base area of the item and 2 base want to de-palletize several layers of milk packages directly
vertices are supported. onto its shelves without having to sort out other items in
The algorithm does not actually test the real vertices of a geometrically complicated mix. It is worth mentioning,
the cuboid but rather a set of four points, corresponding however, that complex orders do not always palletize into
to the XY translation of the cuboid base vertices inwards regular arrangements of layers of the same product. In this

VOLUME 12, 2024 42115


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

case, it is not possible to always fulfil such a constraint,


and a few leftovers of certain products will be mixed, in a
less organized way, with other products. When this occurs,
the algorithm prioritizes the minimization of the number of
pallets used over the hard fulfillment of this constraint.
Constraint 8: The layer interlocking constraint can be
seen as another customer constraint, and it is used to ensure
interlocking among the items between two layers stacked
on top of each other. This constraint is of high practical
relevance since well-interlocked items increase item stability
under pallet displacement. Therefore, packing companies can
dispense the plastic wrapping of the items during shipment.
Reduced plastic usage is desirable due to sustainability
aspects.

B. PROPOSED ALGORITHM
The proposed algorithm operates in two distinct phases. In the
first phase, constructive heuristics are used to generate layers
and blocks of items. The second phase deals with the residual
items that cannot be incorporated into layers and blocks; and
it uses a genetic algorithm to place them on top of existing
blocks or empty pallets. The algorithm therefore assumes a
certain repetition of items of the same kind in a certain order
(this is corroborated by the data discussed in Section III).
A fully heterogeneous order, where each item is of a different
kind and a different form factor, invalidates the usage of the
first phase, and in those cases, the algorithm proceeds with
only using the second phase to generate a solution. In the
forthcoming text, an overview of the algorithm is presented,
after which the full details of the two phases are provided and
discussed.

1) ALGORITHM OVERVIEW
An overview of the algorithm can be found in Figure 5. The
algorithm starts by evaluating a complete order and deciding
if both phases can be enabled. If so, items are merged into
full, half and quarter layers, depending on their quantity and
dimensions. The dimensions of the layers are determined by
the area of the pallet. A full layer has the same area as the
pallet, and a half layer has half of the length of the full pallet
and the same width, finally, a quarter layer has half of the
length and width of a full layer. Initially, the algorithm will
only form layers of the same item type.
Quarter layers of different products but of the same height
are subsequently combined into half layers. Half layers of
the same height are then combined into full layers. At this
point, there may be layers of just one item type but also layers
combining up to four item types. The latter happens in the
rare cases where four quarter layers were first merged into
two half layers, which were subsequently merged into one
full layer. Such layers are of course guaranteed to have the
same height.
When no more layers can be merged, they are merged into FIGURE 5. Overview of the proposed algorithm.
blocks. At this point, there may be residual items (i.e., items
that did not make into layers), these are dealt with at a later fulfils the constraints earlier specified. The general approach
stage. Blocks are created by combining layers in a way that is as follows:

42116 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

and pallets. The same constraints specified earlier need to be


fulfilled. If the GA is not able to find a solution, a new pallet
is spawned and the GA is re-ran. The choice of a GA, among
other alternative heuristics approaches, is due to the ease
and efficiency of GAs in allowing and processing potential
solutions that use permutation encoding. This is the case in
the present problem, where the authors wish to find the best
sequence for placing items in a pallet.

2) PHASE 1: LAYER AND BLOCK BUILDING


The first phase of the algorithm consists of constructing as
many layers as possible and developing them into blocks. The
main advantage of pursuing such a constructive approach is
that the packing solution for the bulk of a large volume order
FIGURE 6. Generation of blocks using multiple full layers, half layers and can be very quickly devised.
quarter layers. At the same time, it becomes very easy to incorporate
all the constraints of interest detailed before while directly
addressing Constraints 1, 5 and 8.
The algorithm starts from an empty pallet and sorts all
There are many different ways of creating layers. Con-
the full layers hierarchically by: occupied area, weight and
straint 1 limits the orientation of the items but still many
item type. The previous results in layers with the best area
packing patterns are possible. Here, the approach leans on
coverage, higher weight and with only items of the same type
simplicity while trying to accommodate Constraint 5. Items
to be on the top of the list of layers. These are placed first
with different form factors will fill in a layer differently and
and on top of each other. If a placement violates one of the
use more or less layer area. In the ideal case, the dimensions
hard constraints earlier specified, or if the maximum packing
of an item are such that in a certain quantity the items
height is exceeded, a new pallet is created and the layer is
completely fill the whole area of the layer. In such idealized
placed there. From this point on, the algorithm has more
cases the layer also offers full support for the next layer.
than one pallet available where it can continue to develop
However, the previous is hardly ever the case. Therefore, for
the blocks. Before it places any additional layers, the existing
every item type eligible to form layers, the algorithm:
blocks are sorted by remaining available packing height in
ascending order, and the process repeats. This maximizes the 1) tests the placement of the items in one orientation;
use of the available volume per pallet. 2) evaluates the unused area and;
When all the full layers are developed into blocks. The 3) attempts to place therein additional items in the second
algorithm proceeds with merging half-layers into the existing orientation.
blocks. The block developing rules are the same and, After testing both starting orientations, the algorithm
additionally, the algorithm will balance the height of the selects the pattern that packs more items into the layer. If both
blocks by ensuring that a half layer that does not violate any alternatives allow the same number of items in the pallet, the
hard constraints is preferably placed in the lowest half of a algorithm selects the one that has more items in the default
block. orientation. An example of a layer constructed following this
Finally, the process repeats for quarter layers. The only procedure can be seen in Figure 7.
difference is that, in this final case, the algorithm will balance Figure 7 shows two possible layering patterns for the same
the height of the block’s four quadrants, instead of halves. set of items. All the items are of the same type and the colors
An example of this block creation procedure can be found in are only used to facilitate distinguishing between items. Both
Figure 6 where cuboids of different colours denote items of layers in the figure satisfy the constraints and pack the same
different types in the same order. amount of items, so they can be both used. In this case,
At this stage, all the layers have been developed into blocks the algorithm will prefer whatever solution has more items
and occupy one or more pallets. in the default orientation. The reason for using the default
The algorithm now proceeds to handle the residual items. orientation is a practical one. Packages are usually designed
These are preferably packed into the existing blocks. The such that the main aesthetic elements are depicted along the
algorithm will therefore pre-check if the remaining usable most visible faces within the default orientation of the item.
packing volume on the existing blocks is theoretically For a layer to be accepted by the algorithm, the items on it
sufficient to accommodate the total volume of the residuals. must cover a minimum amount of the available base area (fill
If the check fails, the algorithm spans a new pallet. In either rate). Such value is a configurable input for the algorithm.
case, the algorithm now starts phase 2 and a Genetic The authors have found empirically that 85%, 90% and 90%
Algorithm (GA) is used to determine the packing sequence of minimum fill rate values for quarter, half and full layers
and the position of the residual items on the available blocks respectively, tend to produce the best results.

VOLUME 12, 2024 42117


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

pattern with horizontal symmetry, the pattern with vertical


symmetry and the pattern with both horizontal and vertical
symmetry. The version with a higher distance is selected.
Note that this does not change the layer composition. The
heuristic is therefore more efficient when the layer is least
symmetric. Figures 8(a) and 8(b) show the interlock between
two identical layers seen from the top, and the interlock
between multiple heterogeneous layers seen from the side of
a block, respectively.
This procedure applies to all layer types (full, half and
quarter). As mentioned before, block construction prioritizes
the placement of the larger full layers first, followed by half
and quarter layers.
The first half layer is always placed on top of the first half
of the last full layer on the block or on the first half of the
pallet (if that half layer is the first layer in the block). From
that point on, the subsequent layers are always placed on the
lowest half of the block.
A similar procedure is considered for the quarter layers
with the exception that the first quarter layer is always placed
in the lowest quadrant of the block. The only exception
is when the quarter layer starts on an empty pallet and is
effectively the first layer in the block. In that case, it is always
placed in the first quadrant. For reference, the block’s halves
FIGURE 7. Two alternative configurations of the same layer (i.e., the same
number of homogeneous items) based on the dynamic shifting approach. and quadrants are depicted in Figure 9.
At the end of the block building procedure, the bulk of
the order has been already packed into blocks (see Figure 10
Figure 7 shows another important behavior of the where a large heterogeneous order has been organized into
algorithm. After selecting the best layer pattern, the remain- blocks), and what is left is to handle residual items that do
ing unused space is distributed along the center lines of not conform to layers or blocks (residuals).
the pallet. This has the effect of pushing the items to the
extremities of the pallet. After studying and evaluating many 3) PHASE 2: PACKING RESIDUALS
layering patterns, the authors have empirically found that Residual packing represents the second phase of the
this simple placing heuristic improves: the stability of the algorithm. At this stage, the algorithm must pack a usually
pallet, support for subsequent layers and layer interlocking very heterogeneous set of items with respect to quantities and
prospects (Constraint 8). form factors that do not conform to layers and that do not
The creation of layers is computationally very efficient easily fit together. Two problems need to be solved at this
because it does not need to verify for support and eliminates stage: decide where to place the items and evaluate different
item collisions by design. At the same time, it utilizes the placing sequences. This is indeed the part of the algorithm
preferred item orientation and fulfills the constraint 5. where complexity substantially impacts its computational
Building blocks using layers is therefore a matter of performance and solution quality.
testing for pallet stability and item support between the The creation, evaluation and improvement of the quality of
layers, as well as improving layer interlock and fulfilling the a specific placing sequence are done by a GA. The decision
customer positioning constraint. of where to place an item follows a specific placement
The heuristic considered for improving the interlocking strategy. The dynamic between the two is as follows: The GA
between layers is based on the calculation of the Hausdorff generates potential placing sequences (i.e., ordered sequences
distance between the top vertices of the items in the bottom in which the residuals are to be placed), and the placement
layer and the bottom vertices of the items in the top layer. strategy takes such sequences and generates a placement that
The Hausdorff distance is higher, the higher the distance does not violate any of the constraints.
between the vertices on the bottom layer and the top layer. Complexity arises on several fronts. First, for an arbitrary
In the present case, the distance reflects the misalignment of quantity of items q, there are q! possible placing sequences
the vertices of the items. The more misaligned, the higher (e.g., an order with 10 items has 10! or 3,628,800 possible
the distance, and the better the interlocking between the placing sequences). The factorial growth of the number of
layers. theoretically possible palletizing solutions as a function of the
To maximize the Hausforff distance, the algorithm consid- number of items is the biggest contributor to the complexity
ers 4 different variations of one layer: the original pattern, the of the 3D-PP problem. Secondly, for any placing sequence,

42118 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 8. Interlocking of layers during block building displayed as (a) top view between two identical layers and (b) side
view for multiple heterogeneous layers.

TABLE 5. List of 10 custom individuals added to the randomly generated


population pool during GA initialization.

25 different types distributed such that every two items


were of the same type, the search space would reduce
from 50! to 25!).
However, 25! possible placing sequences is still a very
large number and the fraction of this solution space that the
FIGURE 9. Visualization of block’s halves and quadrants. GA could explore with reasonable performance is very small.
Proper initialization of the GA becomes very important.
the placement strategy itself generates additional complexity. The algorithm therefore includes a pre-selected set of
An item can potentially be placed in any available space on individuals in its first generation. These individuals are
the available blocks. detailed in Table 5 and codify placement sequences in
The second phase of the algorithm reduces this complexity increasing and decreasing order of properties that are relevant
as follows. Instead of generating/encoding placing sequences for the palletization process including: weight, quantity, base
for individual items, the GA’s individuals encode the order surface area, volume and volume vs. quantity.
in which items of a certain type are to be placed (Figure 12 These individuals have shown to enable the GA to converge
shows how the problem is encoded in the GA’s individuals as quicker to a satisfactory solution by conditioning the search
well as how the mating and mutation evolutionary operators space exploration around useful starting points that codify
are applied). This has two effects: many of the manual placement strategies in place today in
1) it partially addresses Constraint 7 which stipulates industry.
that items of the same type should ideally be packed Evaluation of individuals within the GA is subject to two
together (and thereby by encoding item types rather fitness functions. These functions are formulated as follows:
than individual items implicitly presorts them by type • Fitness function 1: Minimize the average item type
before sending them to the placement strategy); heterogeneity on all the pallets used to pack the order.
2) significantly reduces the search space when the resid- • Fitness function 2: Maximize the average compactness
uals contain items of the same type (e.g., if a set of all the residual items placed on top of existing blocks
of residuals would be composed of 50 items from and empty pallets for the current problem instance.

VOLUME 12, 2024 42119


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 10. Phase-1 block generation for a large order.

Fitness function 1 considers the item types of the


items pre-blocked into the pallets and therefore encourages
solutions that are more compatible with Constraint 7.
Fitness function 2 promotes tighter packing of the residual
items. Compactness evaluates how tightly items are packed
on a pallet. It is a measurement of the maximum surface area
of an item that is in contact with other items or the pallet.
The compactness metric is normalized between 0 and 1. If an
item has a compactness value of 1 that means all 6 surfaces
of the cuboid item are in full contact with other items in the
pallet, and 0 when vice versa. Fitness function 2 evaluates
the compactness of only the residual items since the rest of
the items are already packed compactly using the constructive
heuristics described earlier.
Both fitness functions are therefore directly influenced
FIGURE 11. Visualization of the extreme points generated by placement
by the placement strategy used to pack the residuals. The of items inside a pallet.
GA must apply the placement strategy to every placement
sequence in order to evaluate the results.
The GA uses a modified definition of the Extreme Points EPs is therefore updated after each placement and does not
(EPs) placement strategy documented in [64]. include duplicated points. EPs are ranked based on their
The general idea of extreme points is that when an item height. Lower EPs score higher to discourage the GA from
i with dimensions [li , wi , hi ] is placed on a point [xi , yi , zi ], building columns of items. If two EPs are at the same height
it creates additional points (called EPs) where new items can then the one closer to the origin of the pallet is ranked
be placed. Generically, if an item is positioned at [xi , yi , zi ] first.
on a block or pallet, the following three new EPs are made For every placing sequence the placement strategy will:
available for subsequent placements [li + xi , yi , zi ], [xi , wi + • attempt to place an item in the highest scoring EP and
yi , zi ] and [xi , yi , hi + zi ]. check if the placing violates any of the hard constraints,
In the present case, at the beginning of phase 2, the EPs if it does not, the list of EPs is updated and the next item
corresponding to the vertices of the top surfaces of the items is placed on the new highest ranking EP;
in all blocks are immediately made available to the placing • if the placement fails, the algorithm will attempt to place
strategy. Then, after placing each residual, three EPs per the item in the secondary orientation;
placed residual are created as shown in Figure 11. Each • if the placement on the highest ranking EP fails
EP may only support one placement. The list of available regardless of the item orientation, the second highest

42120 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

ranked EP is selected and tested, and so on and so forth,


until no more EPs are left.

If the placement strategy runs out of valid EPs, the


individual corresponding to that placing sequence is given
maximum penalizing scores on both fitness functions. If the
GA is not able to find a valid solution, i.e., all individuals are
unviable, after a certain number of generations, the GA fails
and restarts with an additional empty pallet added to the list
of available block/pallets.
Failing and restarting the GA is strictly necessary to fulfill
Constraint6. Simultaneously, the placing strategy ensures that
Constraint 5 is respected. Furthermore, in all cases, the items’
positions determined by the placing strategy, during the
execution of the GA, are always encoded into an individual
as metadata. Each individual in the GA has therefore an
active part that participates in the optimization process and
a passive part that stores additional information about the FIGURE 12. GA individuals encoding, mate and mutate operations.
placing solution that the individual represents (position and
orientation) as well as relevant information about the item
types it must place (namely:type, quantity, dimensions and • max stagnation = 5, the base implementation from
height). The previous is important because, as a multi- DEAP was modified to include an early stoppage
objective optimization problem, the result of the evolutionary condition if evolutionary stagnation occurs, in this case,
runs is a Pareto front of non-dominated solutions representing if the fitness values of the solutions are not improving
different trade-offs. Currently, the algorithm will prioritize, after max stagnation consecutive rounds, the algorithm
from the Pareto front, solutions benefiting compactness over is stopped;
heterogeneity. • ngen = 30, is the maximum number of evolutionary
By the end of the second phase, the algorithm is guaranteed cycles the algorithm will run if stagnation does not
to have found a solution. occur.
Stagnation checking is active even for infeasible solutions,
C. IMPLEMENTATION AND PARAMETRIZATION OF THE GA as experience has shown that if the GA is not able to find a
feasible solution within the first max stagnation evolutionary
The base GA considered in the algorithm described before
rounds it probably never will on subsequent rounds.
uses the DEAP Library [65] implementation of the Mu
To explicitly connect the GA implementation to the
plus Lambda evolutionary strategy with the NSGA-II [66]
previously described heuristics and constraints, it is worth
selection operator. The Mu plus Lambda algorithm carries
mentioning that the evaluation of one individual entails
out selection from both the existing population and the
applying the placement strategy to that individual and, after
offspring. While other evolutionary and selection strategies
the placement strategy has been executed, the GA will score
are possible, the authors have found, by experience, that the
the individual on solution heterogeneity and compactness.
above combination delivers good quality results. The quality
So it is effectively the placing strategy that guarantees
of the solutions obtained is in fact much more influenced
the fulfillment of the hard constraints 2 and 6, while the
by the placement strategy rather than the evolutionary and
GA’s selection strategy favors the softer, customer-based
selection strategies due to the extremely large solution space
constraints 7 and 8.
of the problem.
Mating (crossover) and mutation operations are executed
Nevertheless, tuning the evolutionary strategy parameters
in the following way (Figure 12). Given the nature of the
will still contribute to better quality solutions. In the present
encoding of the individuals, which requires that genes within
case, the following values are used:
an individual cannot repeat (that would mean the same
• mu = 15, mu is the number of individuals to select for item type being packed twice, which violates the problem
the next generation; specification), mating and mutation operations operate as
• lambda = 30, lambda is the number of individuals on the follows:
offspring at each generation; • Mutation - a pair of genes is randomly selected from the
• crossover probability = 0.5, is the probability that an individual and the genes are swapped.
individual in the offspring is produced by crossover; • Mating - one crossover point is randomly selected, and
• mutation probability = 0.2, is the probability that an the genes are exchanged between both individuals. This
individual in the offspring is produced by mutation; eventually leads to repeated genes and genes that were
• population size = 100, the initial size of the population; not included in the solution. The repeated genes are then

VOLUME 12, 2024 42121


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 13. Phase-2 GA Architecture.

replaced by the genes that had not been included in the and half layers to be at least 90% filled and quarter layers
solution. to be at least 85% filled, which results in extremely compact
For reference, the general architecture of the GA is and volume efficient arrangements. The bulk of the order
depicted in Figure 13, which shows the delimitation of developed into blocks determines, to a very large extent,
the standard GA implementation and the custom placement the number of pallets used. The algorithm is allowed to add
strategy heuristics specific to the 3D-PP developed in the more pallets dynamically to fulfill the complete packing of
paper. the order and after the first phase, there is usually usable
free volume on the existing blocks/pallets. The usage of
V. RESULT ANALYSIS AND DISCUSSION the GA to optimize compactness ensures that the available
To demonstrate the performance of the proposed solution, volume is explored and that residuals will ideally be packed
the algorithm was benchmarked using the two datasets against existing items from the existing block, preferably of
described in Section III. The palletization of the orders of the same kind. This indirectly, but significantly, optimizes
both datasets was carried out on a workstation with an Intel volume utilization as well.
Xeon W-1250 CPU with a maximum clock speed of 3.30GHz On that line, one also evaluates the compactness of the
and 16 gigabytes of RAM. The proposed solution was coded solution with a secondary purpose. Compact arrangements
using Python V3.12 and executed on a Windows 11 version are usually stabler during transport and will do without
22H2 operating system. being wrapped in plastic, with important sustainability
implications. Compactness can therefore be used as an
A. PERFORMANCE ASSESSMENT CRITERIA indicator of whether or not a packed pallet needs additional
The performance of the algorithm was analyzed using support structures.
three key metrics: average volume utilization, average Finally, execution time creates a kind of make or break deal
compactness and execution time. on the practical utilization of the algorithm. Longer execution
The average volume utilization per pallet demonstrates times may or may not be acceptable depending on the number
how efficiently the loading space is utilized by the algorithm. of orders that need to be processed per unit of time (seconds,
The more the available volume in a pallet is filled, the better; minutes, hours, days, weeks, etc.). Measuring the execution
after all, companies pay for such volume during transport. time allows for identifying the use cases that are feasible for
This metric can be deceiving in extremely low volume orders, the current version of the algorithm.
normally used in more academic datasets, whereby the total
number of items is not sufficient to fill the volume available B. BENCHMARKING WITH INDUSTRY DATA (DATASET
in the pallet. Otherwise, for more realistic orders, it is a good 1000)
estimate of the quality of the solution. The algorithm was tested first against the Dataset
It is worth noting here that the algorithm actually does not 1000 detailed in [5] and briefly described in Section III.
optimize for volume utilization but rather for compactness. To help position and characterize the results on such a rich but
For realistic orders the bulk of items can be, from a volume complex dataset, the dataset was segmented into five classes
utilization perspective, very efficiently packed into blocks. corresponding to 5 entropy intervals:
Note that when creating layers, the algorithm requires full • Entropy Interval 1 - [0, 0.2];

42122 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 14. Distribution of volume utilization for different order sizes and entropy intervals from [5] (each symbol
represents up to 2 observations).

• Entropy Interval 2 - ]0.2, 0.4]; high number of such orders. They are frequent in the F&B
• Entropy Interval 3 - ]0.4, 0.6]; industry and therefore worth studying, mainly occurring
• Entropy Interval 4 - ]0.6, 0.8]; when products are shipped directly to small businesses or
• Entropy Interval 4 - ]0.8, 1]; when samples are being exchanged between operational units
The results of the algorithm on the above-mentioned of the same company.
dataset are summarized in Figures 14, 15 and 16. Collectively, Complex, medium and large volume orders are usually
the three figures provide a good insight into the expectable packed with good performance, with a large portion of
performance of the algorithm on real datasets. Before the such orders utilizing more than 60% of the available pallet
results are analysed it is worth recalling that the algorithm is volume. Here, it is important to re-stress that these results
guaranteed to always generate a solution. This is important fulfill the 8 constraints previously detailed. This is relevant
because many algorithms described in the literature do because the algorithm enforces extremely stringent support
not provide such guarantees, which renders their practical and stability constraints. Many of the algorithms described in
utilization limited. the literature, for example, do not test for support or stability
One starts the analysis by evaluating Figure 14, which also and mainly concentrate on creating non-colliding geometric
reveals additional relevant information about the dataset by arrangements of the items. Simultaneously, the results reflect
showing that the order complexity (interpreted as entropy) what is possible with real form-factor measurements. At this
is not a function of the number of items alone. Figure 14 point, one may reflect on the fact that above 60% is acceptable
breakdowns the distribution of orders by order size along but perhaps not enough for real industrial applications and
the different complexity classes. Small orders have less than that in industry, pallets must surely be packed with a higher
600 items on them, medium orders have between 600 and efficiency today. Both reflections are true but with important
1300 items on them, and large orders have more than caveats. In practical industrial scenarios, additional load
1300 items. While medium and large orders predominantly carriers are incorporated into the same pallet to even out
occupy the fifth entropy interval, quite many small orders surfaces and create additional supporting layers. The previous
denote high complexity as well. means that a certain volume in the order is actually occupied
Average volume utilization has modest values in low by the load carrier, which is a non-value adding volume. Load
entropy orders because many of these orders have a very carriers usually take the form of pallets interleaved between
small amount of items whose volumes do not fill a single item layers. A standard Euro pallet has a maximum usable
pallet. The same is valid for higher entropy orders with few shipping height normally restricted to 1400 mm counting
items on them. In effect, the Dataset 1000 contains a relatively from the top surface of the pallet, with a total usable volume

VOLUME 12, 2024 42123


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 15. Comparison of mean compactness among different problem instances from [5]. Individual standard
deviations are used to calculate the intervals.

of 1344 dm3 . The Euro pallet itself is 1200 mm by 800 mm of the first phase execution times. Order entropy and the variety
base area with a height of 144 mm. Its volume is therefore of item types influence the execution time more profoundly
138.24 dm3 . This means that for every load carrier that is than order volume. Higher entropy orders, including items of
included approximately 10% of volume is lost to the load many different types, usually cause the GA to have to re-start
carrier. The algorithm can be modified to include load carriers and add new pallets, sometimes as much as four times in more
and therefore improve its packing efficiency. Conceptually, complicated cases. On larger orders, there are many more
a load carrier is just an item with the same dimensions as a EPs that need to be tested and the likelihood that the placing
pallet. strategy fails near completion is higher. In many cases, this
It is now worth inspecting Figure 15. means that the placing strategy is able to tentatively place the
Figure 15 illustrates that the mean compactness score majority of the residuals only to fail when 2% to 5% of the
improves when the number of items within the orders residuals are left to place. The placement strategy is applied
decreases. Overall, the average compactness lies between to all the individuals in each generation during the execution
35-60%. It is important to stress that compactness is only of the GA. In these complex scenarios where the strategy
evaluated for the residuals and does not measure the highly fails consistently towards the end, the penalty in execution
compact and stable arrangements of the blocks created in the efficiency is very high with some extremely complex orders
first phase of the algorithm. For smaller orders, the algorithm taking as much as 17500 seconds to execute. The placement
finds more side surfaces to lean residuals against. Some of strategy has been identified as the bottleneck in the process
the real small orders are entirely packed in phase 2, no layers due to the many different constraints it needs to satisfy.
or blocks are possible. In this case, the residuals are tightly To better understand the execution efficiency of the
packed together. On large orders, the residuals are usually proposed algorithm, a distribution of the number of orders
placed on top of existing blocks and there is naturally less side solved in different time intervals is described in Table 6.
contact surface to support against. A similar effect is seen in A large portion of the orders (59.03%) consisting of low
small orders. to medium complexity can be solved in under 10 minutes.
Finally, it is worth analyzing the execution efficiency of the A total of 323 orders with medium and high complexity can
proposed algorithm (Figure 16). be solved in 10-60 minutes. Additionally, high complexity
Execution efficiency is mainly dictated by the nature orders (5.52%) are solved within 60-120 minutes. Extremely
of the residual items. In fact, the execution of phase one high complexity orders, which are less frequent (3%), require
of the algorithm, even for large volume orders, occurs in more than 120 minutes to solve.
under 10 seconds. When one inspects, however, the overall The authors believe that the profiling of the order into
execution times, the majority of the values are very far from entropy classes and the evaluation of the algorithm against

42124 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 16. Empirical cumulative distribution of computational time for different problem instances from [5].

TABLE 6. Execution time distribution for the 996 orders in the Dataset TABLE 7. Comparing the performance of different 3D-PP algorithms
1000. benchmarked on BR1-7 datasets in terms of percentage of average
volume utilization.

them provides an innovative and useful way of benchmarking


the 3D-PP algorithms. One of the advantages is that when
considering a new dataset, it is possible by comparison
with Figure 16 to build a quick idea on the expectable
performance of the algorithm in the new dataset or industrial
application. the used pallet volume is maximized. The authors have
The palletization results obtained for the dataset are selected a total of 7 algorithms, published after the year
available in https://github.com/luferi/3DBPP. 2000, benchmarked using the BR datasets and following
layer/block/wall building approaches:
C. BENCHMARKING WITH AN ACADEMIC DATASET • HBMLS → Heuristic block-loading algorithm based on
(BR1-7 DATASETS) multi-layer search [53]
In this subsection, the performance of the proposed solution • WGMA → Wall generation meta-heuristic algorithm
is compared against other 3D-PP algorithms that have been [18]
proposed in the literature. It is difficult to find performance • CLTRS → Container loading by tree search algorithm
results and indicators for multi-container problems with a [54]
relatively high number of constraints. The BR datasets, • VNS → Variable neighborhood search [67]
described in Section III are single container benchmarks that • BSG-VCS → Beam search algorithm [68]
are commonly used in the literature. As a single container • GRASP → Greedy random adaptive search [36]
dataset, the majority of the algorithms tested against it • HGA → Hybrid genetic algorithm [69]
evaluate the volume utilization achieved but do not satisfy Their performance, with respect to average volume uti-
the complete shipment constraint (Constraint 6). Instead, the lization, on the BR datasets is detailed in Table 7. Virtually
problem is usually treated as a variation of the knapsack all these algorithms are capable of using at least 90% of the
problem, where the objective is to combine items such that available packing volume.

VOLUME 12, 2024 42125


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 17. Comparison of mean compactness among different problem instances from the BR1-7 datasets.
Individual standard deviations are used to calculate the intervals.

Table 7 also shows the results attained by the proposed TABLE 8. Comparing the average computing time (in seconds) of
100 problem instances in each of the BR1-7 datasets using different
solution with two different configurations, strict and relaxed 3D-PP algorithms.
support and complete shipment constraints. In the first
(strict support) the algorithm applies fully all the constraints
specified.
Not surprisingly, the volume utilization results obtained
are all near 50% of volume utilization. There is a very clear
explanation for that. The proposed solution guarantees that
all the items are packed. In the BR dataset, the total number
of items is roughly equal to or slightly less than the usable
volume in the container. A perfect packing, which is not
possible due to a combination of the item’s form factor, would which leads the algorithm to prefer certain less-than-optimal
yield close to 100% volume utilization. In this context, the solutions.
current algorithm will, in all cases, use one additional pallet. The results of the proposed solution on the BR datasets
Mathematically this yields an average volume utilization of are further analyzed in Table 8, Figures 17 and 18. Table 8
about 50% since all the items that theoretically fit in one compares the average execution time of the proposed solution
single container are now fully packed in two containers. with the execution time of other algorithms documented in the
In the relaxed support constraint configuration, the literature, for the purpose of solving each instance of the BR
algorithm is setup in a way that closely resembles the dataset. As mentioned before, execution time is proportional
objectives and packing behavior of the other algorithms it to the quality of the software implementation and the
is compared with. In this case, the support constraints are available computational power. However, it is also greatly
removed and items are mainly placed taking into account affected by the number of constraints and optimization
collision free placement and stability criteria. Additionally, variables that are included in the algorithm. The analysis
for the relaxed case, the numbers reflect that of the most of Table 8 shows, as expected, that the proposed solution
filled pallet, rather than the average of the used volume is slower on the selected datasets, in comparison to other
as in the previous case. One notices some improvement, previously published results. However, a direct comparison
up to 10% in BR1. However, the algorithm will still consider is unfair due to the higher number of constraints, and
pallet stability constraints. Because the BR datasets do not subsequent improved real-world quality of the palletizing
include weight information, the authors have assigned a solutions, considered in the proposed solution. One turns,
unitary weight to all the packages. In this case, their relative therefore, the attention to the assessment of the absolute value
proportion may create imbalances in the center of mass, of the numbers. The worst-case scenario for the BR datasets

42126 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

FIGURE 18. Empirical cumulative distribution of computational time for different problem instances from the BR1-7
datasets.

is about 8 mins of execution time, which still allows real-time Relevant data that the algorithm needs to operate includes:
execution by pre-calculating the orders. order number, product id, quantity of products of a given
Average execution times portray a limited picture of the id in the order, product dimensions and product weight.
problem, without an indication of the distribution of such As mentioned before, items are assumed to be of cuboid
execution times. In order to better characterize the complexity shape. The algorithm outputs the optimized placing sequence
of the problem instances in the BR datasets a similar approach including the Cartesian position and orientation of each item
to Section V-B was used. All 700 problem instances are in the shipment as detailed in Figure 4.
distributed into 5 entropy intervals. All the orders in this Industrial integration of the algorithm would require trans-
dataset are considered small orders as they are all under forming existing order data, typically stored in a company’s
600 items. In the BR dataset, orders are usually much more ERP, into the required data format that the algorithm is
homogeneous in comparison with the orders in the Dataset designed to use. Then, the data must be transferred to the
1000. This enables the algorithm to perform the majority algorithm for processing. The results of algorithm must then
of the packing using the first stage. Figure 18 shows that be collected and used in any appropriate way for the system
solutions for high entropy orders are found significantly faster (for example sending the results to a automatic palletizing
than in the case of the high entropy orders in Dataset 1000. machine or displaying them in visual interface to guide a
Because the second stage of the algorithm has fewer items human operator in the process). This data transformation and
to pack, this also results in more compact arrangements, usage pipeline can be automated in a number of different
as shown in Figure 17. ways. The exact way depends on the Information Technol-
Figure 17 also shows, however, that the average compact- ogy/Operational Technology infrastructures available at the
ness reduces when the heterogeneity of the problem instances company. Profiling of the orders into complexity classes
increases from interval 3 to 5. As problem instances get will help the end user understand which performance can
more heterogeneous, the first phase of the algorithm packs be expected from the algorithm as a function of the most
a smaller number of items into layers and produces a large frequent types of orders. The processing of extremely large
number of heterogeneous residuals. Heterogeneous residual and complex orders may have to be carried out ahead of time
items have a high deviation in their contact surface area. This in order to cater for a higher computational execution time.
makes it difficult for the GA to pack them compactly. The algorithm discussed in the paper purposely avoids such
implementation details, is generic, and can be parameterized
to fit each specific case.
D. INTEGRATION INTO INDUSTRIAL ENVIRONMENTS
The algorithm takes input data in the format described in [5]. VI. CONCLUSION
Without repeating the details of this previous contribution, 3D bin packing problems have a very high impact on any
the authors can mention that typical data can be presented industrial/logistics operation where packing/palletizing and
to the algorithm from a Comma-Separated Values File (CSV transport operations are included. Packing in a way that
file) or as a stream of strings encoding the same information. maximizes the usage of available volume is the golden

VOLUME 12, 2024 42127


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

standard. However, packing is a multidimensional problem developments. Integration of machine learning techniques
and the ability to maximize volume utilization is influenced to the proposed solution can potentially improve its ability
by many factors. In the literature, there are a multitude of to optimize large-volume strongly heterogeneous order with
solutions for a multitude of well-known variations of 3D- acceptable performance.
PP. However, many of the discussed solutions only have an
ACKNOWLEDGMENT
academic interest.
The authors would like to thank the invaluable input of the
Real-world packing scenarios are first conditioned by how
partners of the FLAP project which contributed to the high
much a priori know-how is there about the items that need
quality results reported in this manuscript.
to be packed. In many scenarios, ordering patterns are quite
stochastic and many items are bundled together into larger REFERENCES
containers opportunistically (online problem), transported, [1] N. Chernov, Y. Stoyan, and T. Romanova, ‘‘Mathematical model and
and subsequently broken down again and distributed (for efficient algorithms for object packing problem,’’ Comput. Geom-
etry, vol. 43, no. 5, pp. 535–553, Jul. 2010. [Online]. Available:
example, in large online retail operations). However, in many https://www.sciencedirect.com/science/article/pii/S0925772109001576
other industrial scenarios, customers will place well-defined [2] S. Ali, A. G. Ramos, M. A. Carravilla, and J. F. Oliveira, ‘‘On-line three-
orders including a variety of different items. The entire dimensional packing problems: A review of off-line and on-line solution
approaches,’’ Comput. Ind. Eng., vol. 168, Jun. 2022, Art. no. 108122.
shipment contents are therefore known (offline problem).
[3] Amazon. (2022). How We Work to Find the Perfect Fit for Your
This contribution focused mainly on the latter. By studying Product’s Packaging. [Online]. Available: https://www.aboutamazon.
and evaluating order profiles from real industry data, as well co.uk/news/sustainability/how-we-work-to-find-the-perfect-fit-for-your-
as considering a set of general but also customer-specific con- products-packaging
[4] E. E. Bischoff and M. S. W. Ratcliff, ‘‘Issues in the develop-
straints that occur very frequently in real 3D-PPs, the authors ment of approaches to container loading,’’ Omega, vol. 23, no. 4,
propose and evaluate a potential solution. In particular, the pp. 377–390, Aug. 1995. [Online]. Available: https://www.sciencedirect.
proposed solution addresses two customer-specific needs: com/science/article/pii/030504839500015G
[5] L. Ribeiro and A. A. Ananno, ‘‘A software toolbox for realistic dataset
packing similar items together and creating packing solutions generation for testing online and offline 3D bin packing algorithms,’’
that are executable in fully automated, semi-automated or Processes, vol. 11, no. 7, p. 1909, Jun. 2023. [Online]. Available:
fully manual palletization processes. https://www.mdpi.com/2227-9717/11/7/1909
[6] A. Bortfeldt and G. Wäscher, ‘‘Constraints in container loading—A state-
The 3D-PP solutions generated by the proposed approach of-the-art review,’’ Eur. J. Oper. Res., vol. 229, no. 1, pp. 1–20, Aug. 2013.
have a number of interesting features with a very high [7] H. Wu, S. C. H. Leung, Y.-W. Si, D. Zhang, and A. Lin, ‘‘Three-stage
practical impact. For once, they provide a wide set of heuristic algorithm for three-dimensional irregular packing problem,’’
Appl. Math. Model., vol. 41, pp. 431–444, Jan. 2017. [Online]. Available:
guarantees with respect to the support of the items and the https://www.sciencedirect.com/science/article/pii/S0307904X16304887
stability of the container. In addition to these guarantees, they [8] M. T. Alonso, R. Alvarez-Valdes, M. Iori, and F. Parreño, ‘‘Mathematical
rely on a combination of strategies that promote the geometric models for multi container loading problems with practical constraints,’’
interlocking of items. The latter has a very high sustainability Comput. Ind. Eng., vol. 127, pp. 722–733, Jan. 2019. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S0360835218305527
impact on many occasions and may mean that the pallet [9] I. Deplano, C. Lersteau, and T. T. Nguyen, ‘‘A mixed-integer linear model
can be transported, under certain conditions, without plastic for the multiple heterogeneous knapsack problem with realistic container
wrapping or other additional supporting and stabilizing aids, loading constraints and bins’ priority,’’ Int. Trans. Oper. Res., vol. 28, no. 6,
pp. 3244–3275, Nov. 2021.
potentially reducing the weight on the pallet and doing away [10] C. Paquay, S. Limbourg, M. Schyns, and J. F. Oliveira, ‘‘MIP-based
with excessive plastic usage. constructive heuristics for the three-dimensional bin packing problem
The proposed algorithm was tested and validated against a with transportation constraints,’’ Int. J. Prod. Res., vol. 56, no. 4,
pp. 1581–1592, Feb. 2018. [Online]. Available: https://www.tandfonline.
very large set of cases and it was demonstrated that solutions com/doi/full/10.1080/00207543.2017.1355577
of good quality can be generated in a timely way, for the [11] T. A. M. Toffolo, E. Esprit, T. Wauters, and G. V. Berghe, ‘‘A two-
majority of the orders. dimensional heuristic decomposition approach to a three-dimensional
multiple container loading problem,’’ Eur. J. Oper. Res., vol. 257, no. 2,
A number of improvements in the quality of the solutions pp. 526–538, Mar. 2017. [Online]. Available: https://www.sciencedirect.
are possible, namely in respect to volume utilization for com/science/article/pii/S0377221716305707
introducing additional load carriers, which is a relatively [12] L. Junqueira, R. Morabito, and D. S. Yamashita, ‘‘Three-
dimensional container loading models with cargo stability and
common practice in the F&B industry. This direction has load bearing constraints,’’ Comput. Oper. Res., vol. 39, no. 1,
not been explored in the current version of the algorithm pp. 74–85, Jan. 2012. [Online]. Available: https://www.sciencedirect.
and is the subject of future work. Also in the scope com/science/article/pii/S0305054810001486
[13] J. Hasan, J. Kaabi, and Y. Harrath, ‘‘Multi-objective 3D bin-packing
of future work, the authors anticipate a set of relevant problem,’’ in Proc. 8th Int. Conf. Model. Simul. Appl. Optim. (ICMSAO),
developments: the evaluation of additional packing strategies Apr. 2019, pp. 1–5.
in the second phase of the algorithm but also the use of [14] O. X. D. Nascimento, T. A. de Queiroz, and L. Junqueira, ‘‘Practical
machine learning based approaches that can consume, in the constraints in the container loading problem: Comprehensive formulations
and exact algorithm,’’ Comput. Oper. Res., vol. 128, Apr. 2021,
learning process, the high quality solutions generated by Art. no. 105186. [Online]. Available: https://www.sciencedirect.com
the current approach. In that respect, the proposed approach /science/article/pii/S0305054820303038
serves a dual purpose: it can be used on its own, establishing [15] H. Zhao, Q. She, C. Zhu, Y. Yang, and K. Xu, ‘‘Online 3D bin packing
with constrained deep reinforcement learning,’’ in Proc. AAAI Conf.
a quality and performance baseline, but it may also be Artif. Intell., May 2021, vol. 35, no. 1, pp. 741–749. [Online]. Available:
used to generate synthetic data for further AI/ML-based https://ojs.aaai.org/index.php/AAAI/article/view/16155

42128 VOLUME 12, 2024


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

[16] D. V. Kurpel, C. T. Scarpin, J. E. P. Junior, C. M. Schenekemberg, [34] W. Zhu and A. Lim, ‘‘A new iterative-doubling Greedy–Lookahead
and L. C. Coelho, ‘‘The exact solutions of several types of container algorithm for the single container loading problem,’’ Eur. J. Oper.
loading problems,’’ Eur. J. Oper. Res., vol. 284, no. 1, pp. 87–107, Res., vol. 222, no. 3, pp. 408–417, Nov. 2012. [Online]. Available:
Jul. 2020. [Online]. Available: https://www.sciencedirect.com/ https://www.sciencedirect.com/science/article/pii/S0377221712003529
science/article/pii/S0377221719310136 [35] M. T. Alonso, R. Alvarez-Valdes, M. Iori, F. Parreño, and J. M. Tamarit,
[17] R. Hu, J. Xu, B. Chen, M. Gong, H. Zhang, and H. Huang, ‘‘TAP- ‘‘Mathematical models for multicontainer loading problems,’’
Net: Transport-and-pack using reinforcement learning,’’ ACM Trans. Omega, vol. 66, pp. 106–117, Jan. 2017. [Online]. Available:
Graph., vol. 39, no. 6, pp. 1–15, Nov. 2020, doi: 10.1145/3414685. https://www.sciencedirect.com/science/article/pii/S0305048316000335
3417796. [36] A. Moura and J. F. Oliveira, ‘‘A GRASP approach to the container-loading
[18] E. F. da Silva, A. A. S. Leão, F. M. B. Toledo, and T. Wauters, problem,’’ IEEE Intell. Syst., vol. 20, no. 4, pp. 50–57, Jul. 2005.
‘‘A matheuristic framework for the three-dimensional single large [37] O. Faroe, D. Pisinger, and M. Zachariasen, ‘‘Guided local search for the
object placement problem with practical constraints,’’ Comput. Oper. three-dimensional bin-packing problem,’’ INFORMS J. Comput., vol. 15,
Res., vol. 124, Dec. 2020, Art. no. 105058. [Online]. Available: no. 3, pp. 267–283, Aug. 2003.
https://www.sciencedirect.com/science/article/pii/S0305054820301751 [38] S. Nishiyama, C. Lee, and T. Mashita, ‘‘Designing a flexible evaluation of
[19] V. E. Ocloo, A. Fügenschuh, and O. M. Pamen, ‘‘A new mathematical container loading using physics simulation,’’ in Proc. 3rd Int. Conf. Optim.
model for a 3D container packing problem,’’ Brandenburgische Technische Learn. Cádiz, Spain: Springer, 2020, pp. 255–268.
Universität Cottbus-Senftenberg, Senftenberg, Germany, Tech. Rep., 2020. [39] R. D. Saraiva, N. Nepomuceno, and P. R. Pinheiro, ‘‘A layer-
[20] J. Olsson, T. Larsson, and N.-H. Quttineh, ‘‘Automating the building algorithm for the three-dimensional multiple bin packing
planning of container loading for atlas copco: Coping with problem: A case study in an automotive company,’’ IFAC-PapersOnLine,
real-life stacking and stability constraints,’’ Eur. J. Oper. Res., vol. 48, no. 3, pp. 490–495, 2015. [Online]. Available: https://www.
vol. 280, no. 3, pp. 1018–1034, Feb. 2020. [Online]. Available: sciencedirect.com/science/article/pii/S2405896315003687
https://www.sciencedirect.com/science/article/pii/S0377221719306368 [40] J.-F. Tsai, P.-C. Wang, and M.-H. Lin, ‘‘A global optimization approach for
[21] F. Gzara, S. Elhedhli, and B. C. Yildiz, ‘‘The pallet loading problem: Three- solving three-dimensional open dimension rectangular packing problems,’’
dimensional bin packing with practical constraints,’’ Eur. J. Oper. Res., Optimization, vol. 64, no. 12, pp. 2601–2618, Dec. 2015.
vol. 287, no. 3, pp. 1062–1074, Dec. 2020. [41] M. Hifi, I. Kacem, S. Nègre, and L. Wu, ‘‘A linear programming
[22] R. R. Júnior, H. H. Yanasse, R. Morabito, and L. Junqueira, ‘‘A hybrid approach for the three-dimensional bin-packing problem,’’ Electron. Notes
approach for a multi-compartment container loading problem,’’ Expert Discrete Math., vol. 36, pp. 993–1000, Aug. 2010. [Online]. Available:
Syst. Appl., vol. 137, pp. 471–492, Dec. 2019. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S1571065310001277
https://www.sciencedirect.com/science/article/pii/S0957417419304993 [42] S. Martello, D. Pisinger, and D. Vigo, ‘‘The three-dimensional bin packing
[23] R. D. Saraiva, N. Nepomuceno, and P. R. Pinheiro, ‘‘A two-phase problem,’’ Operations Res., vol. 48, no. 2, pp. 256–267, Apr. 2000.
approach for single container loading with weakly heterogeneous boxes,’’ [43] O. Kundu, S. Dutta, and S. Kumar, ‘‘Deep-pack: A vision-based 2D online
Algorithms, vol. 12, no. 4, p. 67, Mar. 2019. [Online]. Available: bin packing algorithm with deep reinforcement learning,’’ in Proc. 28th
https://www.mdpi.com/1999-4893/12/4/67 IEEE Int. Conf. Robot Human Interact. Commun. (RO-MAN), Oct. 2019,
[24] F. Wang and K. Hauser, ‘‘Stable bin packing of non-convex 3D objects with pp. 1–7.
a robot manipulator,’’ in Proc. Int. Conf. Robot. Autom. (ICRA), May 2019, [44] L. Duan, H. Hu, Y. Qian, Y. Gong, X. Zhang, Y. Xu, and J. Wei, ‘‘A multi-
pp. 8698–8704. task selected learning approach for solving 3D flexible bin packing
[25] B. Mahvash, A. Awasthi, and S. Chauhan, ‘‘A column generation-based problem,’’ 2018, arXiv:1804.06896.
heuristic for the three-dimensional bin packing problem with rotation,’’ [45] K. Karabulut and M. M. Inceoğlu, ‘‘A hybrid genetic algorithm for
J. Oper. Res. Soc., vol. 69, no. 1, pp. 78–90, Jan. 2018. packing in 3D with deepest bottom left with fill method,’’ in Advances
[26] A. G. Ramos, E. Silva, and J. F. Oliveira, ‘‘A new load balance in Information Systems, T. Yakhno, Ed. Berlin, Germany: Springer, 2004,
methodology for container loading problem in road transportation,’’ Eur. J. pp. 441–450.
Oper. Res., vol. 266, no. 3, pp. 1140–1152, May 2018. [Online]. Available: [46] I. Gimenez-Palacios, M. T. Alonso, R. Alvarez-Valdes, and F. Parreño,
https://www.sciencedirect.com/science/article/pii/S0377221717309633 ‘‘Logistic constraints in container loading problems: The impact of
[27] C. Paquay, S. Limbourg, and M. Schyns, ‘‘A tailored two-phase complete shipment conditions,’’ TOP, vol. 29, no. 1, pp. 177–203,
constructive heuristic for the three-dimensional multiple bin size Apr. 2021, doi: 10.1007/s11750-020-00577-8.
bin packing problem with transportation constraints,’’ Eur. J. Oper. [47] R. Verma, A. Singhal, H. Khadilkar, A. Basumatary, S. Nayak, H. V. Singh,
Res., vol. 267, no. 1, pp. 52–64, May 2018. [Online]. Available: S. Kumar, and R. Sinha, ‘‘A generalized reinforcement learning algorithm
https://www.sciencedirect.com/science/article/pii/S0377221717310214 for online 3D bin-packing,’’ 2020, arXiv:2007.00463.
[28] T. S. Li, C.-Y. Liu, P.-H. Kuo, N.-C. Fang, C.-H. Li, C.-W. Cheng, [48] C. T. Ha, T. T. Nguyen, L. T. Bui, and R. Wang, ‘‘An online packing
C.-Y. Hsieh, L.-F. Wu, J.-J. Liang, and C.-Y. Chen, ‘‘A three-dimensional heuristic for the three-dimensional container loading problem in dynamic
adaptive PSO-based packing algorithm for an IoT-based automated environments and the physical Internet,’’ in Proc. 20th Eur. Conf.
e-fulfillment packaging system,’’ IEEE Access, vol. 5, pp. 9188–9205, Appl. Evol. Comput., Amsterdam, The Netherlands. Cham, Switzerland:
2017. Springer, 2017, pp. 140–155.
[29] J. F. Correcher, M. T. Alonso, F. Parreño, and R. Alvarez-Valdes, ‘‘Solving [49] H. Zhao, Q. She, C. Zhu, Y. Yang, and K. Xu, ‘‘Online 3D bin packing with
a large multicontainer loading problem in the car manufacturing industry,’’ constrained deep reinforcement learning,’’ 2020, arXiv:2006.14978.
Comput. Oper. Res., vol. 82, pp. 139–152, Jun. 2017. [Online]. Available: [50] C. S. Chen, S. M. Lee, and Q. S. Shen, ‘‘An analytical model
https://www.sciencedirect.com/science/article/pii/S0305054817300126 for the container loading problem,’’ Eur. J. Oper. Res., vol. 80,
[30] M. T. Alonso, R. Alvarez-Valdes, F. Parreño, and J. M. Tamarit, no. 1, pp. 68–76, Jan. 1995. [Online]. Available: https://www.
‘‘Algorithms for pallet building and truck loading in an interdepot sciencedirect.com/science/article/pii/037722179400002T
transportation problem,’’ Math. Problems Eng., vol. 2016, pp. 1–11, [51] S. Elhedhli, F. Gzara, and B. Yildiz, ‘‘Three-dimensional bin packing and
Dec. 2016. mixed-case palletization,’’ INFORMS J. Optim., vol. 1, no. 4, pp. 323–352,
[31] M. D. G. Costa and M. E. Captivo, ‘‘Weight distribution in container Oct. 2019, doi: 10.1287/ijoo.2019.0013.
loading: A case study,’’ Int. Trans. Oper. Res., vol. 23, nos. 1–2, [52] A. Galrão Ramos, J. F. Oliveira, J. F. Gonçalves, and M. P. Lopes,
pp. 239–263, Jan. 2016. [Online]. Available: https://onlinelibrary. ‘‘A container loading algorithm with static mechanical equilibrium
wiley.com/doi/abs/10.1111/itor.12145 stability constraints,’’ Transp. Res. B, Methodol., vol. 91, pp. 565–581,
[32] O. C. B. D. Araújo and V. A. Armentano, ‘‘A multi-start random Sep. 2016. [Online]. Available: https://www.sciencedirect.com
constructive heuristic for the container loading problem,’’ Pesquisa /science/article/pii/S0191261515302022
Operacional, vol. 27, no. 2, pp. 311–331, Aug. 2007, doi: 10.1590/s0101- [53] D. Zhang, Y. Peng, and S. C. H. Leung, ‘‘A heuristic block-
74382007000200007. loading algorithm based on multi-layer search for the container load-
[33] D. Pisinger, ‘‘Heuristics for the container loading problem,’’ Eur. J. Oper. ing problem,’’ Comput. Oper. Res., vol. 39, no. 10, pp. 2267–2276,
Res., vol. 141, no. 2, pp. 382–392, Sep. 2002. [Online]. Available: Oct. 2012. [Online]. Available: https://www.sciencedirect.com/science/
https://www.sciencedirect.com/science/article/pii/S0377221702001327 article/pii/S0305054811003078

VOLUME 12, 2024 42129


A. A. Ananno, L. Ribeiro: Multi-Heuristic Algorithm

[54] T. Fanslau and A. Bortfeldt, ‘‘A tree search algorithm for solving the ANAN ASHRABI ANANNO received the B.S.
container loading problem,’’ INFORMS J. Comput., vol. 22, no. 2, degree in mechanical engineering from Rajshahi
pp. 222–235, May 2010, doi: 10.1287/ijoc.1090.0338. University of Engineering & Technology (RUET),
[55] S. Liu, W. Tan, Z. Xu, and X. Liu, ‘‘A tree search algorithm for the Rajshahi, Bangladesh, in 2019, and the M.S.
container loading problem,’’ Comput. Ind. Eng., vol. 75, pp. 20–30, degree in mechanical engineering from Linköping
Sep. 2014. [Online]. Available: https://www.sciencedirect.com/science/ University, Linköping, Sweden, in 2022, where
article/pii/S0360835214001776 he is currently pursuing the Ph.D. degree in
[56] C.-F. Chien and J.-F. Deng, ‘‘A container packing support system industrial engineering. He has (co)authored more
for determining and visualizing container packing patterns,’’ Decis.
than 25 papers and book chapters published in
Support Syst., vol. 37, no. 1, pp. 23–34, Apr. 2004. [Online]. Available:
journals, books, and conference proceedings. His
https://www.sciencedirect.com/science/article/pii/S0167923602001926
[57] X. Zhao, J. A. Bennell, T. Bektağ, and K. Dowsland, ‘‘A compar- research interests include discrete optimization, multi-objective design
ative review of 3D container loading algorithms,’’ Int. Trans. Oper. optimization, industrial cyber-physical systems, and design automation.
Res., vol. 23, nos. 1–2, pp. 287–320, Jan. 2016. [Online]. Available:
https://onlinelibrary.wiley.com/doi/abs/10.1111/itor.12094
[58] T. Tian, W. Zhu, A. Lim, and L. Wei, ‘‘The multiple
container loading problem with preference,’’ Eur. J. Oper. Res.,
vol. 248, no. 1, pp. 84–94, Jan. 2016. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S0377221715006232
[59] C. D. Tarantilis, E. E. Zachariadis, and C. T. Kiranoudis, ‘‘A hybrid
metaheuristic algorithm for the integrated vehicle routing and three-
dimensional container-loading problem,’’ IEEE Trans. Intell. Transp. Syst.,
vol. 10, no. 2, pp. 255–271, Jun. 2009.
[60] H. Hu, X. Zhang, X. Yan, L. Wang, and Y. Xu, ‘‘Solving a new 3D
bin packing problem with deep reinforcement learning method,’’ 2017,
arXiv:1708.05930.
[61] A. Laterre, Y. Fu, M. K. Jabri, A.-S. Cohen, D. Kas, K. Hajjar,
T. S. Dahl, A. Kerkeni, and K. Beguir, ‘‘Ranked reward: Enabling
self-play reinforcement learning for combinatorial optimization,’’ 2018,
arXiv:1807.01672.
[62] E. K. Burke, M. Gendreau, M. Hyde, G. Kendall, G. Ochoa, E. Özcan, and
LUIS RIBEIRO (Senior Member, IEEE) received
R. Qu, ‘‘Hyper-heuristics: A survey of the state of the art,’’ J. Oper. Res. the M.Sc. and Ph.D. degrees in electrical and
Soc., vol. 64, no. 12, pp. 1695–1724, Dec. 2013, doi: 10.1057/jors.2013.71. computer engineering, with specialization in
[63] M. G. Epitropakis and E. K. Burke, Hyper-Heuristics. Cham, Switzerland: robotics and computer integrated manufacturing
Springer, 2018, pp. 1–57, doi: 10.1007/978-3-319-07153-4. from NOVA University Lisbon, Portugal, in
[64] T. G. Crainic, G. Perboli, and R. Tadei, ‘‘Extreme point-based heuristics 2007 and 2012, respectively. He is an Associate
for three-dimensional bin packing,’’ INFORMS J. Comput., vol. 20, no. 3, Professor (Biträdande Professor) in manufacturing
pp. 368–384, Aug. 2008. engineering, with a specialization in industrial
[65] F.-A. Fortin, F.-M. De Rainville, M.-A. G. Gardner, M. Parizeau, and cyber-physical systems, with Linköping Univer-
C. Gagné, ‘‘DEAP: Evolutionary algorithms made easy,’’ J. Mach. Learn. sity, Sweden. His Habilitation (SE Docent) is in
Res., vol. 13, no. 1, pp. 2171–2175, 2012. manufacturing engineering from Linköping University. He has participated
[66] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan, ‘‘A fast and elitist in several national and international research projects in the field of
multiobjective genetic algorithm: NSGA-II,’’ IEEE Trans. Evol. Comput., intelligent and plug and produce production systems and he was a Freelance
vol. 6, no. 2, pp. 182–197, Apr. 2002. Consultant and a Software Engineer in the automotive industry. He has
[67] F. Parreño, R. Alvarez-Valdes, J. F. Oliveira, and J. M. Tamarit, (co)authored more than 80 papers and chapters published in journals, books,
‘‘Neighborhood structures for the container loading problem: A VNS and conference proceedings. He is the author of the book System Design and
implementation,’’ J. Heuristics, vol. 16, no. 1, pp. 1–22, Feb. 2010.
Implementation Principles for Industry 4.0. His research interests include
[68] I. Araya, K. Guerrero, and E. Nuñez, ‘‘VCS: A new heuristic function
the modeling, development, and implementation of intelligent software
for selecting boxes in the single container loading problem,’’ Com-
put. Oper. Res., vol. 82, pp. 27–35, Jun. 2017. [Online]. Available: solutions-based in multi-agent systems, service-oriented architectures, and
https://www.sciencedirect.com/science/article/pii/S0305054817300023 cloud for the fast reconfiguration, execution, and ramp-up of batch-size-one
[69] A. Bortfeldt and H. Gehring, ‘‘A hybrid genetic algorithm for the production systems. He is a member of the Swedish Advisory Production
container loading problem,’’ Eur. J. Oper. Res., vol. 131, no. 1, Council. He is also the Vice-Chair of the IEEE Technical Committee on
pp. 143–161, May 2001. [Online]. Available: https://www.science Industrial Agents.
direct.com/science/article/pii/S0377221700000552

42130 VOLUME 12, 2024

You might also like