Recent Advances in Multi-DimensionalPackingProblems

The book "New Technologies - Trends, Innovations and Research" presents contributions made by researchers from the entire world and from some modern fields of technology, serving as a valuable tool for scientists, researchers, graduate students and professionals. Some practical applications in particular areas are presented, offering the capability to solve problems resulted from economic needs and to perform specific functions. The book will make possible for scientists and engineers to get familiar with the ideas from researchers from some modern fields of activity. It will provide interesting examples of practical applications of knowledge, assist in the designing process, as well as bring changes to their research areas. A collection of techniques, that combine scientific resources, is provided to make necessary products with the desired quality criteria. Strong mathematical and scientific concepts were used in the applications. They meet the requirements of utility, usability and safety. Technological applications presented in the book have appropriate functions and they may be exploited with competitive advantages. The book has 17 chapters, covering the following subjects: manufacturing technologies, nanotechnologies, robotics, telecommunications, physics, dental medical homes, agriculture management. following:


Introduction
Packing problems have been much studied in the past decades due, in particular, to their wide range of applications in many settings of theoretical and practical interest, including packing/loading, scheduling, and routing. We focus on Multi-Dimensional Packing problems, which present specific methodological challenges while also being of particular interest to transportation and modern supply chains, due to the need to consolidate and optimize flows of freight and vehicles. The rich literature presents a plethora of problem variants, models, and solution methods. Yet, a general overview and synthesis of the field is missing, as we lack a general methodological framework able to efficiently address different problem variants, i.e., obtain good-quality solutions with limited computational efforts. Addressing these issues is the main goal of this chapter.
All Multi-Dimensional Packing problems display an identical structure, defining two sets of elements in one or more (usually two or three) geometric dimensions: 1) a set of large items, often called containers, bins,orknapsacks and 2) a set of small items, usually referred to simply as items. The goal is to select all or some of the items, group them into one or more subsets, and assign each of the resulting subsets to one of the bins, such that the geometric conditions hold, i.e., the group of items of each subset fits completely within the corresponding bin with no overlapping. Problem variants differ by the particular definition of their packing constraints (presence of guillotine cuts, balancing and stability of the packing, possible overlapping of certain items, forbidden rotations of the items, etc.) and objective function, going by the well-known names of Knapsack, Bin Packing, Strip Packing, Variable Sized Bin Packing, Container Packing, to name just a few (see Wäscher et al., 2007 for a tentative taxonomy of multi-dimensional packing problems). We focus in this chapter on orthogonal packings, i.e., items and bins are rectangular in two-dimensions (2D) and boxes in three-dimensions (3D), and items must be placed into bins with their sides parallel to the sides of the respective bin.
The aim of this chapter is twofold. We first survey the different approaches used to represent the packing of items into bins. The issue is common to all problem variants, the packing representation playing a central role in the efficiency of the solution methods. Second, we discuss the different solution approaches proposed for the main Multi-Dimensional Packing considered, i.e., the items are characterized by mass and center of mass, and the center of mass of the overall packing must lie inside a given domain.

Packing rules for Multi-Dimensional Packing
All Multi-Dimensional Packing models present, at different degrees, two main challenges: the large number of variables and the high level of solution degeneracy. In fact, these models can be used only for small-sized instances (20 items in single-bin 3D problems). Rules were therefore introduced to define where to place additional items into a bin already holding some. All these methods deal with two different issues: reduce the computational effort and the data structure complexity needed to use the rule, and the possibility to introduce additional packing constraints, like fixing item positions and introducing guillotine cuts.
An approach often used for 2D-packing building consists in combining procedures designed for mono-dimensional problems, namely shelf (or layer) methods (Berkey & Wang, 1987;Bortfeldt & Winter, 2009;Chung et al., 1982). The items are first sorted and packed into "shelves" with sizes equal to the width of the bin. The problem then reduces to solving a mono-dimensional packing instance. Indeed, a 2D packing can be obtained by placing the shelves into the bin according to the solution of a mono-dimensional packing problem, where the size of the items equals the depth of the shelves and the size of the mono-dimensional bin equals the depth D of the two-dimensional one. The same approach can also be used to build 3D packings. Build first two-dimensional shelves by using any 2D algorithm and, then, arrange them into a three-dimensional bin by solving a mono-dimensional packing problem, where the size of the items equals the height of the shelves and the size of the bin equals the height H. When the 2D shelves are also built according to the shelf approach, the method is known as wall-building (George & Robinson, 1980;Pisinger, 2002). The drawback of the shelf approach is that it introduces guillotine cuts on the depth and height of the two and three-dimensional bins, respectively, leading to their underutilization. Figure 1 illustrates 2D and 3D packings obtained by means of the shelf approach.

Fig. 1. Shelf Packings in 2D and 3D
A graph-theoretical approach for the characterization of Multi-Dimensional Packings was proposed by Fekete & Schepers (1997;. The authors considered the relative positions of the items in a feasible packing and defined a graph describing the item "overlapping" according to the projection of the items on each orthogonal axis. In this way, the authors were able to deal with classes of packings sharing a certain combinatorial structure, instead of having to consider one packing at a time. The packing classes are represented by a series of graphs, one for each axis. The graphs are proven to be interval graphs, i.e., a special and well-studied class of graphs for which elegant and extremely efficient algorithms have been developed. More formally, let G d (V, E d ) be the graph associated to the d th axis. Each vertex of G d (V, E d ) is associated to an item i in the bin and a non-oriented edge (i, j) between two items i and j exists if and only if their projections on axis d overlap (see Figure 2). The authors proved necessary conditions on the interval graphs to define a feasible packing. Combined to good heuristics for dismissing infeasible subsets of items, this characterization was used to develop a two-level tree search. According to computational results, mainly limited to 2D problems, this strategy outperformed previous methods. The method cannot handle additional constraints on the packing, however, such as fixing the position of one or more items. No direct comparison with the Branch & Bound of Martello et al. (2007) was performed. The link between guillotine cuts and interval graphs was analyzed by Perboli (2002). Recently, Joncour et al. (2010) introduced an efficient algorithm to manage the interval-graph structure by means of MPQ-trees, combinatorial structures introduced in Korte & Möhring (1989).

Fig. 2. Packings and Associated Interval Graphs
A similar approach to the one by Fekete & Schepers has been used by Imahori et al. (2003) to give a general representation for packing problems where the costs in the objective function depend on the location of the items. Instead of working on interval graphs, however, the authors directly deal with the sequencing of the items, i.e., which item is to be put before another into the packing. The decoding algorithm is managed by a dynamic programming method with pseudo-polynomial complexity and is used to derive Multi-Start and Iterated Local Search heuristics. As the representation addresses 2D packings, the computational experiments were limited to the Minimum Area Packing Problem, a variant of the 2D Container Loading problem where the minimal boxed envelope of the final packing must be considered (Murata et al., 1996). Martello et al. (2000) defined Corner Points as the non-dominated locations where an item can be placed within an existing packing. In two dimensions, Corner Points are defined where the envelope of the items in the bin changes from vertical to horizontal (the large dots in Figure 3b). Corner Points on the three-dimensional envelope can be found applying the two-dimensional algorithm for each distinct value of the height of the bin defined by the lower and upper terminal lines of each item (large dots in Figure 3a). A Corner Point set can be computed in O(n 2 ). Martello et al. (2000) used this idea to design a Branch & Bound algorithm to verify whether a given set of items can be packed into a bin or not. den Boef et al. (2005) showed that the algorithm to compute the Corner Points presented in Martello et al. (2000) may miss some feasible packings. Martello et al. (2007) Figure 4. In particular, while one cannot use Corner Points to add an item within the space left inside an existing packing, e.g., the dark gray regions in Figure 3b, Extreme Points provide this capability. Thus, for example, item 11 can be accommodated within the dark gray region on top of item 7 in Figure 4b, which is not possible with the Corner Points of Figure 3b. The Extreme Point idea was used by the authors to design new constructive heuristics based on the First Fit Decreasing and the Best Fit Decreasing heuristics for the mono-dimensional problem. Computational results showed that the proposed method outperformed all the other constructive heuristics for both 2D and 3D Bin Packing problems, and that it obtains, in negligible time, results comparable to those of the best existing meta-heuristics.

Multi-Dimensional Packing problems
We now turn to the main packing classes, 2D and 3D Bin Packing, 2D and 3D Knapsack, and 3D Container Loading. For each problem, we give its definition, the classification according to Wäscher et al. (2007), and a brief description of the state-of-the-art solution methods. Finally, a comparison of the computational results obtained with the state-of-the-art methods is presented. For this survey, we focus on meta-heuristic methods, as these methods are the most efficient way to solve real-sized instances while preserving sufficient accuracy.
The results of all the methods are taken from the literature. For the computational times, due to the variability of the different processors used in the computational tests, we adopted a Unified Computational Time (UCT) obtained considering a Pentium4 3000 MHz workstation as the reference machine and scaling the computational times according to the SPEC CPU2006 benchmarks published in SPEC (2006). Notice that, due to the limited amount of memory used by all the methods, this parameter does not effect the overall results.

Multi-dimensional bin packing problems
Given a set of box items i ∈ I, with sizes w i , l i , and h i , and an unlimited number of bins of fixed sizes W, L, and H, the Three-Dimensional Orthogonal Bin Packing problem (3D-BP) consists in orthogonally packing the items into the minimum number of bins. We assume that the items cannot be rotated. According to the classification introduced by Wäscher et al. (2007), the problem is also known as the Three-Dimensional Single Bin-Size Bin Packing Problem (3D-SBSBPP). The Two-Dimensional Orthogonal Bin Packing problem (2D-BP) is the restriction of 3D-BP in two dimensions.
TSPACK is the Tabu Search algorithm for the 2D-BP developed by Lodi et al. (1999). This algorithm uses two simple constructive heuristics to pack items into bins. The Tabu Search only controls the movement of items between bins. Two neighborhoods are considered to try to relocate an item from the weakest bin (i.e., the bin that appears to be the easiest to empty) to another. Since the constructive heuristics produce guillotine packings, so does the overall algorithm. The algorithm is presently the best meta-heuristic for 2D-BP, but it requires a computation effort of the order of 60 CPU seconds per instance to achieve these results.
The same authors presented a shelf-based heuristic for the 2D-BP, called Height first -Area second (HA) (Lodi et al., 2004a). The algorithm chooses the best of two solutions. To obtain the first, items are partitioned into clusters according to their height and a series of layers are obtained from each cluster. The layers are then packed into bins by using the Branch-and-Bound approach by Martello & Toth (1990) for the 1D-BP problem. The second solution is obtained by ordering the items by non-increasing area of their base and new layers are built. As previously, the layers are packed into bins by solving a 1D-BP problem. The method is faster but less accurate than TSPACK.
The first exact method for the 3D-BP was a two-level Branch-and-Bound algorithm proposed by Martello et al. (2000). The first level assigns items to bins. At each node of the first-level tree, a second level Branch-and-Bound is used to verify whether the items assigned to each bin can be packed into it. In the same paper, the authors introduced two constructive heuristics. The first, called S-Pack, is based on a layer-building principle derived from the shelf approach. The second, called MPV-BS, repeatedly fills one bin after the other by means of the Branch-and-Bound algorithm for the single bin presented by the authors in the same paper. The authors also gave the results of their method by limiting its computational effort to 1000 CPU seconds. Faroe et al. (2003) presented a Guided Local Search (GLS) algorithm for the 3D-BP. Starting with an upper bound on the number of bins obtained by a greedy heuristic, the algorithm iteratively decreases the number of bins, each time using GLS to search for a feasible packing. The process terminates when a given time limit has been reached or the upper bound matches a precomputed lower bound. Computational experiments were reported for 2 and 3-dimensional instances with up to 200 items. The results were satisfactory, but required a computational effort of the order of 1000 CPU seconds to be reached. Crainic et al. (2008) defined the Extreme Points (EPs) and combined them to the well-known Best First Decreasing (BFD) heuristic for the 1D-BP, producing the EP-BPH heuristic. Extending the EP-BPH to address the 3D-BP proved far from trivial, however, as the ordering of items in higher dimensions may be affected by more than one attribute (e.g., volume, side area, width, length, and height of the items). Several sorting rules were tested and the best ones were combined into C-EPBFD, a composite heuristic based on EP-BPH. Extensive experimental results showed C-EPBFD requiring negligible computational efforts and outperforming both constructive heuristics for the 3D-BP and more complex methods, e.g., the truncated Branch-and-Bound by Martello et al. (2000). Crainic et al. (2009) proposed TS 2 PACK, a two-level Tabu Search meta-heuristic for the 3D-BP. The first level is a Tabu Search method that changes the assignment of items to bins. For each assignment, the items assigned to a bin are packed by means of the second-level Tabu Search, which makes use of the Interval Graph representation of the packing by Fekete & Schepers (2004a) to reduce the search space. The accuracy of the overall meta-heuristic is enhanced by the k-chain-move procedure, which increases the size of the neighborhoods without increasing the overall complexity of the algorithm. TS 2 PACK currently obtains the best solutions for the 3D-BP. Nevertheless, the method has a rather slow convergence rate, requiring 300 CPU seconds to find the best solution.
Finally, Perboli et al. (2011) introduced GASP -Greedy Adaptive Search Procedure,a meta-heuristic able to efficiently address two and three-dimensional multiple bin packing problems. GASP combines the simplicity of greedy algorithms with learning mechanisms aimed to guide the overall method towards good solutions. Extensive computational results showed that GASP is able to obtain state-of-the-art results for both 2D-BP and 3D-BP in negligible computational times.
We compare the different methods on standard benchmark instances, the results being taken from the literature.
We consider ten classes of instances from Berkey & Wang (1987) (Classes I-VI) and Martello & Vigo (1998) (Classes VII-X) for 2D-BP. Each class is characterized by different distributions of the item sizes and considers a number of items equal to 20, 40, 60, 80, and 100. For each combination of class and instance size, 10 repetitions are considered.
We consider the instances of Martello et al. (2000) for the 3D-BP. The instances are organized in six classes.
The bin size is W = H = D = 100 for Classes I to III, the items belonging to five types, ranging from small to large-sized. The five classes mix the item types in order to test different usage scenarios. Bin and item dimensions in Classes IV to VI vary according to the following rules: The number of items is fixed to 50, 100, 150, and 200 items for each class, and 10 instances are considered for each combination of class and cardinality of the item set. The solution methods used for each problem variant and their experimental settings are: • 2D-BP -TSPACK: coded in C and run on a Silicon Graphics INDY R10000sc (195 MHz) with a time limit of 60 CPU seconds for each instance (Lodi et al., 1999); -GASP: coded in C++, runs were performed on a Pentium4 3 GHz workstation. The time limit was set to 3 seconds . • 3D-BP -GLS: coded in C and run on a Digital workstation with a 500 MHz CPU. A time limit of 1000 CPU seconds was imposed for each instance (Faroe et al., 2003); -MPV: this is the truncated Branch and Bound proposed in Martello et al. (2000). It was coded in C and run on a Pentium4 with 3 GHz CPU with a time limit of 1000 CPU seconds per instance; -TS 2 PACK: coded in C++ and run on a Pentium4 with 2 GHz CPU with a time limit of 300 CPU seconds per instance; -GASP coded in C++, runs were performed on a Pentium4 3 GHz workstation. The time limit was set to 5 seconds.
The results for 2D-BP are summarized in Table 1. The instance type is given in the first column, while Columns 2, 3, and 4 present the results of GASP, TSPACK, and the best known solution taken from the literature (the optimal value in most cases), respectively. Notice that the best known solutions have been generally obtained by means of different exact methods and with a computational effort of several thousands of seconds. Finally, Columns 5 and 6 give the relative percentage gaps of GASP with respect to TSPACK and the best known solutions (a negative value means a better performance of GASP). All the time limits reported in the table are expressed in UCT.
GASP achieves better results than TSPACK, while reducing the computational effort by a factor of about 4. As the code of TSPACK is publicly available, we also run it for 30 UCT seconds but the results did not change. Moreover, GASP achieves results that are less than 1% from the overall optima. The results of 3D-BP are summarized in Table 2. Columns 1-3 give the instance type, bin dimension, and number of items, respectively, Column 4 presents the results of GASP, while Columns 5-8 give the gaps of the solutions obtained by GASP relative to those of MPV, GLS, TS 2 PACK, and the best lower bound available, respectively. The gaps were computed as (mean GASP − mean o )/mean o , where, for a given set of instances, mean GASP and mean o are the mean values obtained by the GASP heuristic and the method compared to, respectively. A negative value means that GASP yields a better mean value. The last row displays the total number of bins used by GASP, computed as the sum of the values in the column, and the average of the mean gaps. As for the 2D-BP, the time limits displayed are given in UCT.
The results indicate that GASP performs better than the truncated Branch & Bound and has a gap of only 0.9% with the best algorithm in the literature, with a negligible computational time: 5 CPU seconds compared to 1000 for GLS and 300 for TS 2 PACK.
To further illustrate this efficiency,

Multi-dimensional knapsack problems
Given a set of rectangular items i = 1, . . . , n with sizes w i and l i and a profit p i , and a bin of fixed dimensions W and L, the Two-Dimensional Orthogonal Knapsack problem (2D-KP) consists in orthogonally packing a subset of the items into the bin to maximize the sum of the profits of the loaded items. Most algorithms present in the literature assume the items cannot be rotated.
The Integer Programming formulations for the 2D-KP were presented by Beasley (1985a), Hadjiconstantinou & Christofides (1995), and Boschetti et al. (2002), among others. Fekete & Schepers (1997; addressed 2D and 3D Knapsack problems using an advanced graph representation within a Branch-and-Bound algorithm, which assigned items to the bin without specifying their position. Pisinger & Sigurd (2007) proposed a Branch-and-Cut approach for the 2D-KP, in which a one-dimensional knapsack problem selects the most profitable items whose overall area does not exceed the area of the bin. A two-dimensional packing problem in decision form is then solved through constraint programming to check the feasibility of loading the selected items. Caprara & Monaci (2004) also proposed a Branch-and-Bound algorithm for the 2D-KP, where items are assigned to the bin without specifying their positions, the feasibility check being performed afterwords through an enumeration scheme.
Many authors presented heuristic procedures for the 2D-KP. Lai & Chan (1997a;b) developed two meta-heuristics based on Simulated Annealing and evolutionary principles. The former proceeds in three steps: splitting the master surface into sub-areas that can be used for packing, placing the items according to a fitting heuristic, and finally a classical search procedure based on moving the items and a cooling scheme. The evolutionary strategy includes hill-climbing and mutation procedures. Both meta-heuristics were tested on randomly generated instances as well as on real world problems with the objective of minimizing the wasted material. Leung et al. (2001) proposed a Genetic Search approach and a Simulated Annealing meta-heuristic. The authors hybridized the Genetic Search with a simple on-line bottom-left heuristic that packed the items as down and as left as possible. An extensive study of different crossover operators is presented but no detailed computational results are given. The meta-heuristics proposed by Lai & Chan (1997a) and Leung et al. (2001) cannot produce all the feasible cutting patterns. Liu & Teng (1999) used a different heuristic, denoted the improved BL-algorithm, to overcome this issue by, first, placing the first item in the bottom left-hand corner of the master surface, and then inserting all the other items starting from the top right-hand corner of the surface and then shifting them alternatively left and down until no further shifting is possible. Unfortunately, no computational results are given for problem instances drawn from the literature, making impossible a direct comparison with other heuristics. Beasley (2004) proposed an innovative population-based meta-heuristic for a new nonlinear formulations of the problem. Boolean variables were used to indicate whether an item is cut from the master surface or not, two other integer variables representing the coordinates of the center of the item cut. This formulation leads to a three-dimensional solution encoding used to create the individuals of the population, which was evolved through crossover and mutation. Infeasible solutions were penalized during the fitness-evaluation step. Computational results were presented for a number of standard problems from the literature, as well as for a number of large randomly generated problems.
These results were improved by Hadjiconstantinou & Iori (2007), who proposed a Genetic Search meta-heuristic hybridized with a greedy procedure, where the items can be placed on the point maximizing the so-called touching perimeter, i.e., the fraction of the perimeter of an item to be added to the bin touching either the edges of the existing packing, or the edges of the surface of the bin. Computational results showed that this method outperformed the algorithm by Beasley (2004) from both the computational and the solution-quality points of view.
In the same year, Alvarez-Valdes et al. (2007) introduced another meta-heuristic that improved the results of Beasley (2004). The algorithm is a Tabu Search meta-heuristic implementing interesting moves able to compact the packing, thus reducing the wasted space. Moreover, the algorithm is able to deal with additional constraints, e.g., the presence of different types of items and lower bounds on the number of items to be loaded for each type.
The best results for 2D-KP are due to Bortfeldt & Winter (2009) who proposed a Genetic Algorithm for guillotine packings. The algorithm is also able to deal with item rotations and was tested on a wide series of instances with and without guillotine cuts. Their results improved both Hadjiconstantinou & Iori (2007) and Alvarez-Valdes et al. (2007), but with a significant computational effort.
The first contribution to 3D Knapsack problems is to be found in Egeblad & Pisinger (2009), where the authors proposed an exact model and heuristics for 2D and 3D Knapsack problems. The model cannot be used to derive both lower and upper bounds, however, whilst the heuristic manages instances up to 60 items for the 3D case.
Finally, Perboli (2011) extended the GASP algorithm  for the Multi-Dimensional Bin Packing problem. The algorithm shares the same structure and packing representation by means of EPs with the original method. Compared to the version for Multi-Dimensional Bin Packing Problem, this variant of the algorithm incorporates a long-term memory mechanism, which adapts the search according to the number of times an item is loaded in a solution considered during the search. The method achieves state-of-the-art results for both 2D-KP and 3D-KP, with or without rotation, within negligible computational times.
A second set contains large-size instances with up to 4000 items from the sets ngcutfs01, ngcutfs02, and ngcutfs03, randomly generated by Beasley (2004) similarly to the procedure of Fekete & Schepers (2004a). All these instances are available from the ORLIB-Library Beasley (1990). The large-size test set works with a bin of size [100, 100] and is composed of instances of Type I, II, and III, according to the criteria used for the random generation of items. For each of the three types, m = 7 item subtypes and Q = 3 items for each item subtype were considered and 10 random instances were built for each combination of m and Q. The complete set is thus made up of 630 instances with up to 4000 items. Both sets refer to the 2D-KP problem with fixed rotation, i.e., items cannot be rotated.
The instances were obtained as follows: • number of items: n ∈ {20, 40, 60} • item generation strategy: t ∈ {C, R}, where: -C alias clustered, because the instance consists of only 20 items, which are duplicated appropriately; -R alias random, because the instance consists of independently generated items • bin size: p ∈ {50, 90}, expressed as a percentage of the total volume of the items • item attributes: size: s i = (w i , d i , h i ), which must belong to one among the following geometric classes (see Egeblad & Pisinger (2009) -GASP coded in C++ and run on a Pentium4 3 GHz workstation. We report only aggregated results for 2D-KP on the small-size instances of the first set. The best results of H B present an average gap of 1.24% from the optimal solutions, while H HI solves all the instances to the optimum, except gcut13 (for which no optimal solution is known in the literature) and gcut02. H AP finds all the known optima (and the best known value for gcut13), while H BW fails only in instance wang20. GASP solves to optimality all instances for which the optimum is available and determines the best known value for gcut13 with a mean computational effort less than 5 seconds.  Table 4, which displays the mean values of the results obtained by the three heuristics by instance type. Columns 1 to 4 report the results of H B , H HI , H AV , and H BW , respectively, while the remaining columns display the the best and average solution values obtained by GASP over the 10 repetitions. We report the percentage gaps from the best known results and the Unified Computational Times. Notice that for the computational times of H BW , the authors provided only the time limit and not the computational times they needed to reach their best results.
According to these results, the best heuristic is still H AP with a mean optimality gap of 0.98%. H B is no longer competitive, while H BW has competitive results, but with a heavy computational effort. We notice that H BW is still the best heuristic for the variant of the problem where only guillotine cuts are considered. GASP performs practically as well as H AP with a much smaller computational effort, actually reducing computing times by up to two orders of magnitude compared to the other methods. GASP also shows high performance stability when the random seeds are varied.
The results of the comparison for 3D-KP are presented in Table 5 aggregated by instance type. We display the mean percentage gaps with respect to the upper bound obtained by solving the mono-dimensional knapsack problem with the items of the 3D-KP instance with item weights equal the their respective volumes and a knapsack maximum weight equal to the volume of the 3D knapsack. This bound is known to be quite poor in quality, but it is the current best for 3D knapsack where items can be rotated. As for 2D-KP, two results are provided for GASP: the best and mean over 10 runs, respectively. Computational times were fixed to 120 seconds for H EP and 10 seconds for GASP.
These results indicate that GASP performs better than H EP , both in quality and computational efficiency, even when the mean GASP value over 10 random runs is considered. The small gap between best and average results also shows that GASP is stable with respect to random repetitions.

Container loading problem
Given a set of box items i = 1, ..., n with sizes w i , l i , and h i and a container of fixed dimensions W, L, and H, the Three-Dimensional Container Loading problem (3D-CLP) consists in orthogonally packing a subset of the items into the container maximizing the used fraction of  Wäscher et al. (2007), the 3D-CLP can be classified as Three-Dimensional Rectangular Single Large Object Placement problem (3D-SLOPP).
The problem arises in important practical cases, particularly in logistics and distribution where containers, trucks, rail cars, etc. must be loaded with freight. It can be seen as a special case of the Three-Dimensional Knapsack Problem, where the profits of the items are their volumes. Yet, due to the large number of items that can be loaded into a container and to the fact that the item profit is linked to the item size, the methods developed for the Multi-Dimensional Knapsack Problem fail in most cases of interest. Consequently, the 3D-CLP has been studied as a separate problem in the literature.
The first heuristic for the 3D-CLP was proposed by George & Robinson (1980). The authors developed a wall-building procedure, which was later improved by several authors, e.g., Bischoff & Marriot (1990) and, more recently, Moura & Oliveira (2005). A different approach, based on column generation, was proposed by Gehring & Bortfeldt (1997), which provided the starting point of a series of meta-heuristics by the same authors: Tabu Search (Bortfeldt & Gehring, 1998), a hybrid algorithm (Bortfeldt & Gehring, 2001), as well as their best algorithm, a parallel hybrid local search combining Simulated Annealing and Tabu Search (Mack et al., 2004). Parreño et al. (2008) presented a reactive GRASP, which uses a constructive-block heuristic similar, for its usage of the space, to the Residual-Space idea of Crainic et al. (2008). The authors improved their GRASP in Parreño et al. (2010). The method implemented the same constructive heuristic presented in Parreño et al. (2008), but introduced five types of neighborhoods, mixed in a VNS-based meta-heuristic, which yielded the best results in the literature. Pisinger (2002) also presented a wall-building approach yielding interesting results, but tested on a different set of instances than the other contributions, making a direct comparisons difficult. Finally, because 3D-CLP is a special case of 3D-KP, any available code for 3D-KP with rotations can be used as well. Consequently, we also consider the GASP version developed for Multi-Dimensional Knapsack problems presented in Perboli (2011).
The experiments were performed using the standard benchmark instances for the 3D-CLP generated by Bischoff & Ratcliff (1995). The whole set of instances is made up of 14 classes, namely BR1 to BR14, of 100 instances each, but only sets BR1 to BR7 were tested on all the algorithms presented previously. The number of box types increases from 3 in BR1 to 20 in BR7, thus covering a wide range of situations. The number of items of each type decreases from an average of 50.2 items per type in BR1 to 5.60 in BR7. For each item type, the maximum number of items available is known. The total volume of the items is on average 99.5% of the capacity of the container.
We compare the results of RG PAO , the Reactive GRASP by Parreño et al. (2008), TS BG , the Tabu Search by Bortfeldt & Gehring (1998), and H MO , the GRASP approach by Moura & Oliveira (2005) truncated after 5000 and 50000 iterations (indicated as 5k and 50k, respectively). Comparative performance results are reported in Table 6 as average values of the solutions obtained on the 100 instances. Column 1 displays the instance set, while Columns 2 to 4 display the results of TS BG , H MO , RG PAO , VNS PAO , and GASP, respectively. The last three rows display the mean used container volume (in %), the mean computational time as reported in the literature, and the mean Unified Computational Time (no ratio is available for the computer used by TS BG ). The results indicate that, without any particular adaptation, GASP compares advantageously in solution quality with previous state-of-the-art algorithms for the 3D-CLP problem, while significantly reducing the computational effort. In particular, GASP is on average more effective than H MO and RG PAO , requiring some 10 times less computational effort than RG PAO , which leads in solution quality by a very narrow margin.

General remarks
Many solution methods were proposed for Multi-Dimensional Packing problems, the two methodological frameworks emerging as the most used being Tabu Search and Genetic Algorithms. The latter needs usually an hybridization with specific optimization procedures managing the peculiarities of each problem setting.
Most methods in the literature generally aim for better solution quality without much care to how general or flexible it is. To evaluate this aspect, we adopt the two additional performance criteria stated by Cordeau et al. (2002) for evaluating Vehicle Routing heuristics, namely simplicity and flexibility. The former relates to ease of understanding and coding of an algorithm, while the latter focuses on the possibility to easily introduce additional constraints.
From the simplicity point of view, TSPACK (Lodi et al., 2004b) and GASP  stand out due to their simple structures and ease of implementation. Notice though, that, similarly to many packing meta-heuristics, TSPACK mixes in the neighborhood structure the issues of packing feasibility, which follows from the packing representation, and its optimality, which relates to the particular problem settings. This greatly reduces the generality of the method. This contrasts with the modular structure of GASP, which let the authors to successfully address different packing problems (Bin Packing, Knapsack, Container Loading, etc.). On the other hand, methods such as TS 2 PACK (Crainic et al., 2009) present an interesting structure, but the quite complicated packing representation given by the interval graphs make them harder to understand and manage.
Evaluating flexibility, we see methods, e.g., TSPACK for the Multi-Dimensional Bin Packing, and H BW (Bortfeldt & Winter, 2009) and H EP (Egeblad & Pisinger, 2009) for the Multi-Dimensional Knapsack Problem, which have been successfully tested on different variants of the same problem, showing a good flexibility at this level. On the other hand, up to now, GASP is the only method that has been satisfactory tested on different packing problem classes.
Turning to the packing representation, the most elegant approach is the interval graph representation by Fekete & Schepers (1997). Unfortunately, it is also the less flexible when one has to deal with additional constraints like items in fixed positions and guillotine cuts (Perboli, 2002). Moreover, its performances strongly depends on the data structures used to update the representation. Corner Points by Martello et al. (2000) are probably the easiest to understand and implement. The Extreme Points by Crainic et al. (2008) offer a better exploitation of the bin volume and represent a good compromise between simplicity and accuracy.
The last point to focus on is the public availability of these methods. For most of them, the code is not public. To our best knowledge, the only methods that are publicly available are TSPACK, the Branch & Bound by Martello et al. (2000) and the heuristic for container loading by Pisinger (2002). All these codes can be downloaded from the web sites of the authors.

Conclusions
In this chapter we presented a detailed and up-to-date survey of solution methods for Multi-Dimensional Packing problems. We first focused on the common issue of packing problems, i.e., the representation of the packing. We then considered the main Multi-Dimensional Packing problems and discussed the efficiency and accuracy of the available solution methods.
We identified for each problem setting the methods that perform best. We also observed that most methods are tailored for one problem setting only. The only method that emerges as a general framework is GASP, which has been successfully applied to different variants of the problems presented in this chapter.

Acknowledgments
While working on this project, T.G. Crainic  The book "New Technologies -Trends, Innovations and Research" presents contributions made by researchers from the entire world and from some modern fields of technology, serving as a valuable tool for scientists, researchers, graduate students and professionals. Some practical applications in particular areas are presented, offering the capability to solve problems resulted from economic needs and to perform specific functions. The book will make possible for scientists and engineers to get familiar with the ideas from researchers from some modern fields of activity. It will provide interesting examples of practical applications of knowledge, assist in the designing process, as well as bring changes to their research areas. A collection of techniques, that combine scientific resources, is provided to make necessary products with the desired quality criteria. Strong mathematical and scientific concepts were used in the applications. They meet the requirements of utility, usability and safety. Technological applications presented in the book have appropriate functions and they may be exploited with competitive advantages. The book has 17 chapters, covering the following subjects: manufacturing technologies, nanotechnologies, robotics, telecommunications, physics, dental medical technologies, smart homes, speech technologies, agriculture technologies and management.