12
Research Article Algorithms for Pallet Building and Truck Loading in an Interdepot Transportation Problem Maria Teresa Alonso, 1 Ramon Alvarez-Valdes, 2 Francisco Parreño, 1 and Jose Manuel Tamarit 2 1 Department of Mathematics, University of Castilla-La Mancha, Avenida de Espa˜ na, 02071 Albacete, Spain 2 Department of Statistics and Operations Research, University of Valencia, Doctor Moliner 50, Burjassot, 46100 Valencia, Spain Correspondence should be addressed to Ramon Alvarez-Valdes; [email protected] Received 15 December 2015; Accepted 15 March 2016 Academic Editor: Paolo Maria Mariano Copyright © 2016 Maria Teresa Alonso et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. is paper deals with the problem of a logistics company that has to serve its customers by first putting the products on pallets and then loading the pallets into trucks. Besides the standard geometric constraints of products not overlapping each other and not exceeding the dimensions of pallets and trucks, in this real problem, there are many other constraints, related to the total weight of the load, the maximum weight supported by each axle, and the distribution of the load inside the truck. Although the problem can be decomposed into two phases, pallet loading and truck loading, we have taken a combined approach, building and placing pallets at the same time. For each position in the truck, a pallet is built and tailored for that position according to the constraints of height and weight. We have developed a GRASP algorithm, in which the constructive algorithm is randomized and an improvement phase is added to obtain high-quality solutions. e algorithm has been tested on two sets of real instances with different characteristics, involving up to 44 trucks. e results show that solutions with an optimal or near optimal number of trucks are obtained in very short computing times. 1. Introduction A distribution company has a main depot and a set of regional depots spread around the country and every week it has to solve an interdepot transportation problem to fill the orders that each regional depot sends to the main depot for the days of the next week. e company has to decide first how to put the products into pallets and then how to distribute the pallets among trucks in order to deliver the right products to the right place at the right time, while minimizing the number of trucks used. In this paper, we will take the characteristics and the data of a large distribution company as a reference, but the problem is common to many other logistics companies around the world. e companies require a solution procedure that produces high-quality solutions in short computing times, to be able to react to last-minute changes. Good solutions, minimizing the number of trucks, will result in reductions in the transportation costs for the companies as well as in greenhouse gas emissions. e loading problem faced by the company consists of two interrelated phases. In the pallet building phase, all the products have to be put on pallets. In the truck loading phase, all the pallets have to be placed into trucks. e means of transport, in this case trucks, introduces some constraints which have to be respected for safety reasons. ere is a maximum weight of the load that cannot be exceeded. ere are also limits on the maximum weight each axle can support. Moreover, the load has to be well distributed in the truck to prevent movements during the journey. is means that the center of gravity of the load always has to be placed between the axles and as near as possible to the geometric center of the truck. In order to produce fast and high-quality solutions, we have developed a GRASP algorithm, composed of a constructive algorithm, designed to satisfy all the safety and logistic constraints of the problem, a randomization procedure to achieve diversity in the iterative process, and some improvement moves to refine the solutions obtained Hindawi Publishing Corporation Mathematical Problems in Engineering Volume 2016, Article ID 3264214, 11 pages http://dx.doi.org/10.1155/2016/3264214

Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Research ArticleAlgorithms for Pallet Building and Truck Loading inan Interdepot Transportation Problem

Maria Teresa Alonso1 Ramon Alvarez-Valdes2

Francisco Parrentildeo1 and Jose Manuel Tamarit2

1Department of Mathematics University of Castilla-La Mancha Avenida de Espana 02071 Albacete Spain2Department of Statistics and Operations Research University of Valencia Doctor Moliner 50 Burjassot 46100 Valencia Spain

Correspondence should be addressed to Ramon Alvarez-Valdes ramonalvarezuves

Received 15 December 2015 Accepted 15 March 2016

Academic Editor Paolo Maria Mariano

Copyright copy 2016 Maria Teresa Alonso et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

This paper deals with the problem of a logistics company that has to serve its customers by first putting the products on pallets andthen loading the pallets into trucks Besides the standard geometric constraints of products not overlapping each other and notexceeding the dimensions of pallets and trucks in this real problem there are many other constraints related to the total weight ofthe load the maximum weight supported by each axle and the distribution of the load inside the truck Although the problem canbe decomposed into two phases pallet loading and truck loading we have taken a combined approach building and placing palletsat the same time For each position in the truck a pallet is built and tailored for that position according to the constraints of heightand weightWe have developed a GRASP algorithm in which the constructive algorithm is randomized and an improvement phaseis added to obtain high-quality solutions The algorithm has been tested on two sets of real instances with different characteristicsinvolving up to 44 trucks The results show that solutions with an optimal or near optimal number of trucks are obtained in veryshort computing times

1 Introduction

Adistribution company has amain depot and a set of regionaldepots spread around the country and every week it has tosolve an interdepot transportation problem to fill the ordersthat each regional depot sends to the main depot for the daysof the next week The company has to decide first how toput the products into pallets and then how to distribute thepallets among trucks in order to deliver the right productsto the right place at the right time while minimizing thenumber of trucks used In this paper we will take thecharacteristics and the data of a large distribution companyas a reference but the problem is common to many otherlogistics companies around the worldThe companies requirea solution procedure that produces high-quality solutions inshort computing times to be able to react to last-minutechanges Good solutions minimizing the number of truckswill result in reductions in the transportation costs for thecompanies as well as in greenhouse gas emissions

The loading problem faced by the company consists oftwo interrelated phases In the pallet building phase all theproducts have to be put on pallets In the truck loading phaseall the pallets have to be placed into trucks The means oftransport in this case trucks introduces some constraintswhich have to be respected for safety reasons There is amaximum weight of the load that cannot be exceeded Thereare also limits on themaximumweight each axle can supportMoreover the load has to be well distributed in the truck toprevent movements during the journey This means that thecenter of gravity of the load always has to be placed betweenthe axles and as near as possible to the geometric center of thetruck

In order to produce fast and high-quality solutionswe have developed a GRASP algorithm composed of aconstructive algorithm designed to satisfy all the safetyand logistic constraints of the problem a randomizationprocedure to achieve diversity in the iterative process andsome improvement moves to refine the solutions obtained

Hindawi Publishing CorporationMathematical Problems in EngineeringVolume 2016 Article ID 3264214 11 pageshttpdxdoiorg10115520163264214

2 Mathematical Problems in Engineering

by the randomized constructive algorithm A novel featureof the proposed algorithm is that it solves the two phases ofthe problem simultaneously instead of decomposing it intotwo separate subproblems

Although the algorithm provides solutions for the ordersof all the days in the planning horizon the company sendsthe trucks with the products for the first day and adjusts itsdata for the next days taking into account last-minute ordersor cancelations solving the problem again for the remainingdays Nevertheless solving the whole problem together ismuch better than solving each day separately because if thereis some space left in the trucks carrying the products for thefirst day it can be used to load products for the second dayuntil the trucks are completely filled because products canbe sent before their delivery date but not later By solving thewhole problem the trucks are more efficiently used

The remainder of the paper is organized as follows Anoverviewof the related existingwork is presented in Section 2In Section 3 the problem is formally described and all theconstraints related to the pallet building and the truck loadingare discussed In Section 4 the different components of theGRASP algorithm are introduced Section 5 contains thedescription of the test instances used which come froma large distribution company and the results obtained bythe algorithm The comparison with simple lower boundsdeveloped for the problem shows that the proposed proce-dure obtains high-quality solutions for medium and largeinstances involving up to 44 trucks Section 6 contains theconclusions

2 Literature Review

There are notmany papers addressing the issues studied hereconsidering pallet and truck loading together and multipletrucks Morabito et al [1] deal with the same problem butin two dimensions because the products cannot be stackedBoth problems pallet and truck loading are solved by usingthe 5-block algorithmproposed byMorabito andMorales [2]Takahara [3] deals with the problem of loading a set of itemson a set of containers and pallets The sequences for loadingthe items and for selecting the bins are controlled by heuristicprocedures Haessler and Talbot [4] propose a heuristic fordeveloping load patterns for trucks and rail shipments Theproducts have low density and the approach is based onloading by volume rather than by weight To deal with axleweight constraints stacks are sequenced by alternating theheaviest and lightest stacksMoura and Bortfeldt [5] deal withthe same problem in two steps In the first step boxes arepacked onto pallets while in the second step these pallets areloaded into trucks For packing boxes onto palletsMoura andBortfeldt use the algorithm proposed by Moura and Oliveira[6] and they deal with the problem of loading pallets intotrucks as a one-dimensional bin packing problem whichis solved by a tree search procedure Zachariadis et al [7]address a vehicle routing problem in which the products arefirst packed onto pallets and then loaded into the vehicles andpropose local searchmetaheuristic strategies Alonso et al [8]consider a simplified version of the problem studied here anddevelop integer linear models starting from a basic loading

model and progressively addingmore realistic conditions andobjectives such as the use of one or two pallets per positionthe position of the center of gravity and the minimization ofthe number of pallets

The Single Container Loading Problem (SCLP) in con-trast is a well-studied problem and in recent years therehas been an increasing number of papers introducing realconstraints (see the survey by Bortfeldt and Wascher [9])Gehring and Bortfeldt [10] Bortfeldt et al [11] Terno et al[12] and Egeblad et al [13] are some of the authors whoinclude weight limit constraints in their studies In factwhen the cargo is heavy weight becomes a very restrictiveconstraint more than the volume or the space occupied

Weight distribution constraints require the weight of thecargo to be distributed across the container floor to balancethe load To achieve a good weight distribution the center ofgravity of the load should be at the geometrical midpoint ofthe container floor as in Bischoff and Marriott [14] or at apoint not exceeding a certain distance from it as in Bortfeldtand Gehring [15] and Gehring and Bortfeldt [10]

Axle weight is a constraint imposed by the means oftransport and it has not been widely studied Lim et al [16]deal with a particular SCLP with axle weight constraintsThey first apply a customized wall-building heuristic basedon the GRASP by Moura and Oliveira [6] including specialconsiderations for box weight and density They then use anintegrated approach to handle the weight requirements If thecontainer load limit is exceeded they unload the necessarynumber of boxes by iteratively solving an ILP model to meetthe requirement If the axle weight limit is exceeded theytake two steps iteratively until the limit is satisfied the firststep consists in reversing the positions of the walls created bythe customized heuristic whereas the second step involvessolving an ILP model to unload boxes and applying the firststep oncemore to improve the balance of the container as wellas to force a feasible weight distribution

Stackability or load-bearing constraints are introduced toavoid damaging the items at the bottom of the stacks Theycan bemeasured by the number of boxes a box can bear aboveit (Bischoff and Ratcliff [17]) or by prohibiting a particulartype of box being placed on top of another type (Terno et al[18]) or by the maximum weight that can be applied to a boxper unit area (Junqueira et al [19] Alonso et al [20])

Other constraints are related to the stability of the loadVertical or static stability prevents items from falling whenthe vehicle is not moving (Ramos et al [21]) A box must besupported from below at a given percentage of the surface ofits base If this percentage is 100 we speak of full support(De Araujo and Armentano [22] Fanslau and Bortfeldt [23])In the case of lower percentages we speak of partial support(Junqueira et al [19]) Horizontal or dynamic stability assuresthat items do not move while the container is being movedThis constraint deals with the capacity of the items to supportthe inertia of their bodies (Ramos et al [24])

Weight constraints cargo stability and other practicalconstraints also appear in recent studies combining loadingand routing such as Iori et al [25] Bortfeldt [26] Junqueira etal [27] Ceschia et al [28] Tao andWang [29] and Junqueiraand Morabito [30] Doerner et al [31] deal with a particular

Mathematical Problems in Engineering 3

vehicle routing problem in which the items are placed onpallets and stacked one on top of the other producingpiles They propose two metaheuristic algorithms a TabuSearch and an ACO algorithm Pollaris et al [32] combinea capacitated vehicle routing problem with the loadingof homogeneous pallets inside the vehicle They considersequence-based pallet loading and axle weight constraintsand propose a mixed ILP formulation for the problem Theirmodel tries to minimize the transportation cost respectingthe axle weight constraint along the delivery route Recentsurveys on loading and routing problemshave beenpresentedby Iori and Martello [33 34] and Pollaris et al [35]

3 Description of the Problem

The problem begins when a depot sends a set of orders forthe upcoming days 119889 isin 1 119863 For each day 119889 the orderconsists of a list of products 119895 119895 isin 1 119869 with theirrequired number of items for this day 119886119895119889 The products haveto be served that day or before but not later Each productis defined by its dimensions (119909119895 119910119895 119911119895) its weight 119908119895 andits possible rotations (119903119909119895 119903119910119895 119903119911119895) where 119903119909119895 = 1 if thedimension 119909119895 of the product can be upward

All the products have a predefined placement in layersA layer is an arrangement of items of the same product 119895

in rows and columns forming a rectangle defined by itsdimensions (119897119895 119908119895 ℎ119895) its weight 119902119895 and the number of itemsin the layer 119897119906119895 The composition of the layers is previouslydetermined by the company For each type of product thecompany has defined the items by row and by column theirorientation and their placement A layer covers the palletbase in horizontal directions guaranteeing sufficient supportfor other layers that can be placed on top of it to make up thepallet

The quantity of layers per product and day is 119899119889119895 =

lfloor119886119895119889119897119906119895rfloor whereas the total quantity of layers of a productis 119899119895 = sum119889isin119863 119899119889119895 The demand for each type of product isa number of layers If there are some remaining items of aproduct not included in a layer these itemswill form a specialpallet

The loading problem consists of two interrelated phases(i) Pallet Building Phase All layers have to be placed on

pallets(ii) Truck Loading Phase All pallets have to placed in one

of the trucks

31 Pallet Building In this phase we have to place the layerson pallets A pallet has a base made of wood metal orplastic with dimensions (119897

119901 119908119901 ℎ119901) and weight 119902

119901 and itcan be rotated horizontally A pallet provides a loading spaceabove its base Typically the space in horizontal directionsis limited by the horizontal dimensions of the pallet thoughsome overhang in both directions can be allowed In thevertical direction the height of the loaded pallet is limited tohalf the height of the truck so that two pallets can be placedone on top of the other

A pallet is thus composed of a flat base and a set oflayers placed one on top of the other Two types of pallets

can be built stock pallets where all the layers are of thesame product and case pallets formed by layers of differentproducts The company wants to make as many stock palletsas possible Only when not all the layers of a product fitonto stock pallets are the remaining layers used to form casepallets A third type of pallet the rest pallet appears when thedemand for some product 119886119895119889 is not a multiple of 119897119906119895 andthere are some remaining items not included in any layer Allthese remaining items are put together on one or more restpallets

Apart from pallet composition other constraints shouldbe considered in this phase

(i) Orientation Constraint Layers can be rotated but allplacements must be parallel to the sides of the pallet

(ii) Support Constraint A certain minimum percentage of alayer 75 to be precise must be supported by the pallet baseor by the layer on which it rests

(iii) Priority Constraint A pallet can contain only items oforders for the same day

(iv) Stackability Constraint The number of layers that canbe stacked is limited to avoid product damage It dependson their weight with lighter layers being placed on top ofheavier ones and on the fragility of the products For eachtype of product the maximum number of layers that can bestacked 119897119904119895 is defined by the company and the stock palletsare composed of this number of layers However when webuild case pallets with different types of layers in the samepallet we have to take their stackability into account Eachproduct belongs to a stackability group which is identified bya value id119904119895 isin 1 119878119866 linked to the density of the productwith the densest products having an identification of 1 andthe least dense having the maximum value 119878119866 One layer canbe placed on top of another if the product in the layer belowhas a stackability identification smaller than or equal to thatof the product in the layer above

32 Truck Loading Once the pallets are prepared they haveto be placed in the trucks We have a set of trucks 119896 isin

1 119870 all of the same type with two axles and withunlimited availabilityMore precisely for each truckwe knowits dimensions (119871119882119867) and the maximumweight or weightcapacity 119876 that it is allowed to load Moreover there arerestrictions on the maximum weights the axles can supportThe truck has two axles which carry the load with the frontaxle at position 1205751 and the rear axle at position 1205752 where 1205751and 1205752 are measured from the front of the loading space ofthe truck Figure 1 shows a truck with its dimensions and axledistances

For security reasons the load has to be well spread outover the truck andmust be distributed between the two axlesnot exceeding the maximum weight they can bear If Cog119909 isthe 119909-coordinate of the center of gravity of the load Cog119909 =

sum119901 119909119901119882119901119892 where 119909119901 is the position of a pallet and 119882119901 isits weight and 119892 is the total weight of the load the weights

4 Mathematical Problems in Engineering

L

W

H

1205751

1205752

Figure 1 A truck with the positions of the axles

supported by the front axle (1198921) and the rear axle (1198922) aredetermined by

1198921 =119892 (Cog119909 minus 1205751)

1205752 minus 1205751

1198922 =119892 (1205752 minus Cog119909)

1205752 minus 1205751

(1)

Each axle can bear a maximum weight denoted by 1198761and 1198762 Usually 1198761 + 1198762 ge 119876 Therefore we impose theconditions 1198921 le 1198761 and 1198922 le 1198762 as well as 1205751 le Cog119909 le 1205752ensuring that the center of gravity is always between the axles

The expressions of the weight supported by the axlesprovided by the company are based on the total weightbeing put on the truck and the center of gravity of the loadAlthough they are nonlinear they can be easily computedin the constructive process developed in this study Analternative linear formulation based on the contribution ofeach item to the weight supported by the axles has been usedin [8] with the information contained in [36]

In this phase of truck loading some other constraintsrelated to how to place the pallets should be considered

(i) Priority Constraint The delivery days of the orders mustbe respected meaning that each day the trucks being sentto the depot must contain all the products required for thatday although some of them may have been sent before Eachday 119889 only trucks containing products for that day are sentTrucks in the solution that are completely filled with productsfor days 119889 + 1 119889 + 2 are not sent on day 119889 However if theitems for day 119889 do not completely fill a truck the items forday 119889 + 1 can be used to fill up the truck If after adding theseitems the truck is not still completely filled then items for day119889 + 2 can be used and so on until the truck is filled or thereare no items left

This strategy could result in some products being sentseveral days before their due date in some cases However no

constraints or penalties are considered to limit this situationOn the one hand in practice it affects very few products formore than one day or two On the other hand the companygives higher priority to minimizing the number of trucks

(ii) Stability Constraint For stability reasons the pallets haveto be placed touching at least one side of the truck

(iii) Stackability ConstraintThe pallet height is limited to halfthe truck height Therefore at most two pallets can be placedin each stack However one cannot place any two pallets inthe same stack it depends on their weight with lighter palletsbeing placed on top of heavier pallets Each pallet belongs toa stackability group identified by a value id119904119895 isin 1 119878119866The stackability identification of a pallet id119904119895 is the minimumstackability identification of the products that compose thepallet One pallet can be placed on top of another if the palletbelow has a stackability identification smaller than or equalto that of the pallet above

33 Objective When preparing the transportation plan forthe next few days the available data are usually not completeexcept for the next day orders may be canceled or moreprobably increased with new products for the upcomingdays Consequently the distribution company will not shipthe goods for all the days but only the first trucks containingthe next dayrsquos orders and possibly some orders for thefollowing day(s)

Nevertheless the company wants the problem solvedfor all the orders of all the days in the planning horizonbecause the orders for the later days might influence thechoices made for the first days For this reason our mainobjective is to minimize the total number of trucks neededfor all the orders and for solutions with the same numberof trucks one is better than the other if the last truck isless full leaving more room for new orders The inclusionof this secondary objective of leaving the last truck as empty

Mathematical Problems in Engineering 5

as possible for future use makes the problem similar tocutting stock problemswith usable leftovers which have beenextensively studied in one and two dimensions due to theirmany practical applications (Arenales et al [37] Andrade etal [38])

We are tackling a problem with two parts to be solvedsimultaneously putting products onto pallets and pallets intotrucks but they have similar characteristics The type ofassignment is input minimization whereby a set of smallitems is to be assigned to a set of large objects whose quantityis large enough to accommodate all the small items Theassortment of the small items is weakly heterogeneous thesmall items can be grouped in relatively few classes comparedwith the total number of items The assortment of the largeobjects is that there is only one large object type with fixeddimensions pallet and truck and the shape of the small itemsis regular According to the typology for cutting and packingproblems introduced byWascher et al [39] the truck loadingpart can be classified as a Three-Dimensional Single StockSize Cutting Stock Problem (3D-SSSCSP) while the palletbuilding part is one-dimensional (1D-SSSCSP) except for therest pallet problem which is three-dimensional

4 Approach to the Problem

We can consider the problem as two subproblems The firstsubproblem is building the pallets where the input is the listof all the orders for all the days in the planning horizon andthe output is a pallet list with all the products to send Thesecond problem is how to load the pallets onto the truckswhere the input is the list of pallets provided by the firstsubproblem and the output is the number of trucks neededto load the whole list of pallets from the first subproblem

The disadvantage of this approach is that the two sub-problems are independent and one does not take into accountthe features and constraints of the other In particular in thefirst subproblem the pallets are built without any informationabout the trucks Therefore a good solution for the palletloading phase is not necessarily a good starting point for thetruck loading phase

Our proposal is to keep a constant flow of informa-tion between the two subproblems taking into account theconstraints and the features of both In the truck loadingphase we gather information about the features of the palletwhereas in the pallet building phase we collect informationabout the placement of the pallet in the truck With both setsof information we build the best pallet for a specific positionin the truck using the remaining products

To solve this problem we propose a GRASP algorithmwith a constructive phase in which a solution is built byadding a pallet at each step according to the informationcollected from the truck a randomization strategy to obtaindiverse solutions in an iterative process and an improvementphase In the following sections the elements of the algorithmare described in detail

41 Constructive Phase The constructive algorithm builds asolution by means of an iterative process in two steps the

first of which consists of finding a space in the truck to placethe pallet and the second consists of building the pallet andplacing it into the truck

Step 1 (selecting a place) The first step is to select a positionin the truck to place the next pallet If there were nooversize layers forming oversize pallets each pallet wouldhave a predefined position in the truck because all the palletswould have the same dimensions But if there are someoversize pallets in which some layers are larger than the basethe position of the pallet cannot be predefined because itdepends on the pallet dimensions That is why we have toselect a place to put the pallet at each step

Other constraints that have to be taken into account whenselecting the place are the center of gravity and the weight oneach axle because the position of the pallet affects the weightthat each axle will bear and may move the center of gravityaway from the geometric center of the truck

Since theweight has to be balanced between the two axleswe have decided to divide the truck into two parts front andrear starting from the center By placing pallets alternately ineach part we can control the balance of the weight and keepthe center of gravity approximately in the center of the truck

The center of gravity and the weight each axle will bearare calculated by the expressions described in Section 32 Ifthe weight that axle 1 can still bear 1198761 minus 1198921 is greater thanthat of axle 2 1198762 minus 1198922 the next space is selected at the frontotherwise it is chosen at the back

Starting at the center of the truck and going in thechosen direction towards the front or the back we look fora space big enough to place a pallet We search the floorof the truck first and if there is no space left we look atthe top of the pallets already loaded When the space isfound its features are extracted its dimensions (119878119909 119878119910 119878119911)the maximum weight that can be put into this position 119882119904and the stackability identification of the lower pallet id119904119904 ifthe space is above another pallet

Having determined these features of the chosen space wemove on to the next step

Step 2 (building a pallet for the selected space) In this stepwe build a pallet that is tailored to the selected space Whenbuilding a pallet we always use the predefined layers exceptfor the special case of rest pallets

The layers are ordered by day first days first and bydensity the denser ones first We take the first layer on the listand check whether there are enough layers of this product tobuild a stock pallet If this is the case we build it Otherwisethese layers are added to the pallet and we continue searchingfor layers that cannot form a stock pallet by themselves andadd them to the pallet building a case pallet with layers ofdifferent products

A layer is selected if it satisfies several conditions First itfits into the selected space and is supported in at least 75 ofits area by the layer below it Second the weight of the palletincluding this layer does not exceed the maximum weightallowed for this space and keeps the center of gravity betweenthe axles Third the height of the pallet does not exceed halfthe height of the truck if it is placed on the floor If it is placed

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 2: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

2 Mathematical Problems in Engineering

by the randomized constructive algorithm A novel featureof the proposed algorithm is that it solves the two phases ofthe problem simultaneously instead of decomposing it intotwo separate subproblems

Although the algorithm provides solutions for the ordersof all the days in the planning horizon the company sendsthe trucks with the products for the first day and adjusts itsdata for the next days taking into account last-minute ordersor cancelations solving the problem again for the remainingdays Nevertheless solving the whole problem together ismuch better than solving each day separately because if thereis some space left in the trucks carrying the products for thefirst day it can be used to load products for the second dayuntil the trucks are completely filled because products canbe sent before their delivery date but not later By solving thewhole problem the trucks are more efficiently used

The remainder of the paper is organized as follows Anoverviewof the related existingwork is presented in Section 2In Section 3 the problem is formally described and all theconstraints related to the pallet building and the truck loadingare discussed In Section 4 the different components of theGRASP algorithm are introduced Section 5 contains thedescription of the test instances used which come froma large distribution company and the results obtained bythe algorithm The comparison with simple lower boundsdeveloped for the problem shows that the proposed proce-dure obtains high-quality solutions for medium and largeinstances involving up to 44 trucks Section 6 contains theconclusions

2 Literature Review

There are notmany papers addressing the issues studied hereconsidering pallet and truck loading together and multipletrucks Morabito et al [1] deal with the same problem butin two dimensions because the products cannot be stackedBoth problems pallet and truck loading are solved by usingthe 5-block algorithmproposed byMorabito andMorales [2]Takahara [3] deals with the problem of loading a set of itemson a set of containers and pallets The sequences for loadingthe items and for selecting the bins are controlled by heuristicprocedures Haessler and Talbot [4] propose a heuristic fordeveloping load patterns for trucks and rail shipments Theproducts have low density and the approach is based onloading by volume rather than by weight To deal with axleweight constraints stacks are sequenced by alternating theheaviest and lightest stacksMoura and Bortfeldt [5] deal withthe same problem in two steps In the first step boxes arepacked onto pallets while in the second step these pallets areloaded into trucks For packing boxes onto palletsMoura andBortfeldt use the algorithm proposed by Moura and Oliveira[6] and they deal with the problem of loading pallets intotrucks as a one-dimensional bin packing problem whichis solved by a tree search procedure Zachariadis et al [7]address a vehicle routing problem in which the products arefirst packed onto pallets and then loaded into the vehicles andpropose local searchmetaheuristic strategies Alonso et al [8]consider a simplified version of the problem studied here anddevelop integer linear models starting from a basic loading

model and progressively addingmore realistic conditions andobjectives such as the use of one or two pallets per positionthe position of the center of gravity and the minimization ofthe number of pallets

The Single Container Loading Problem (SCLP) in con-trast is a well-studied problem and in recent years therehas been an increasing number of papers introducing realconstraints (see the survey by Bortfeldt and Wascher [9])Gehring and Bortfeldt [10] Bortfeldt et al [11] Terno et al[12] and Egeblad et al [13] are some of the authors whoinclude weight limit constraints in their studies In factwhen the cargo is heavy weight becomes a very restrictiveconstraint more than the volume or the space occupied

Weight distribution constraints require the weight of thecargo to be distributed across the container floor to balancethe load To achieve a good weight distribution the center ofgravity of the load should be at the geometrical midpoint ofthe container floor as in Bischoff and Marriott [14] or at apoint not exceeding a certain distance from it as in Bortfeldtand Gehring [15] and Gehring and Bortfeldt [10]

Axle weight is a constraint imposed by the means oftransport and it has not been widely studied Lim et al [16]deal with a particular SCLP with axle weight constraintsThey first apply a customized wall-building heuristic basedon the GRASP by Moura and Oliveira [6] including specialconsiderations for box weight and density They then use anintegrated approach to handle the weight requirements If thecontainer load limit is exceeded they unload the necessarynumber of boxes by iteratively solving an ILP model to meetthe requirement If the axle weight limit is exceeded theytake two steps iteratively until the limit is satisfied the firststep consists in reversing the positions of the walls created bythe customized heuristic whereas the second step involvessolving an ILP model to unload boxes and applying the firststep oncemore to improve the balance of the container as wellas to force a feasible weight distribution

Stackability or load-bearing constraints are introduced toavoid damaging the items at the bottom of the stacks Theycan bemeasured by the number of boxes a box can bear aboveit (Bischoff and Ratcliff [17]) or by prohibiting a particulartype of box being placed on top of another type (Terno et al[18]) or by the maximum weight that can be applied to a boxper unit area (Junqueira et al [19] Alonso et al [20])

Other constraints are related to the stability of the loadVertical or static stability prevents items from falling whenthe vehicle is not moving (Ramos et al [21]) A box must besupported from below at a given percentage of the surface ofits base If this percentage is 100 we speak of full support(De Araujo and Armentano [22] Fanslau and Bortfeldt [23])In the case of lower percentages we speak of partial support(Junqueira et al [19]) Horizontal or dynamic stability assuresthat items do not move while the container is being movedThis constraint deals with the capacity of the items to supportthe inertia of their bodies (Ramos et al [24])

Weight constraints cargo stability and other practicalconstraints also appear in recent studies combining loadingand routing such as Iori et al [25] Bortfeldt [26] Junqueira etal [27] Ceschia et al [28] Tao andWang [29] and Junqueiraand Morabito [30] Doerner et al [31] deal with a particular

Mathematical Problems in Engineering 3

vehicle routing problem in which the items are placed onpallets and stacked one on top of the other producingpiles They propose two metaheuristic algorithms a TabuSearch and an ACO algorithm Pollaris et al [32] combinea capacitated vehicle routing problem with the loadingof homogeneous pallets inside the vehicle They considersequence-based pallet loading and axle weight constraintsand propose a mixed ILP formulation for the problem Theirmodel tries to minimize the transportation cost respectingthe axle weight constraint along the delivery route Recentsurveys on loading and routing problemshave beenpresentedby Iori and Martello [33 34] and Pollaris et al [35]

3 Description of the Problem

The problem begins when a depot sends a set of orders forthe upcoming days 119889 isin 1 119863 For each day 119889 the orderconsists of a list of products 119895 119895 isin 1 119869 with theirrequired number of items for this day 119886119895119889 The products haveto be served that day or before but not later Each productis defined by its dimensions (119909119895 119910119895 119911119895) its weight 119908119895 andits possible rotations (119903119909119895 119903119910119895 119903119911119895) where 119903119909119895 = 1 if thedimension 119909119895 of the product can be upward

All the products have a predefined placement in layersA layer is an arrangement of items of the same product 119895

in rows and columns forming a rectangle defined by itsdimensions (119897119895 119908119895 ℎ119895) its weight 119902119895 and the number of itemsin the layer 119897119906119895 The composition of the layers is previouslydetermined by the company For each type of product thecompany has defined the items by row and by column theirorientation and their placement A layer covers the palletbase in horizontal directions guaranteeing sufficient supportfor other layers that can be placed on top of it to make up thepallet

The quantity of layers per product and day is 119899119889119895 =

lfloor119886119895119889119897119906119895rfloor whereas the total quantity of layers of a productis 119899119895 = sum119889isin119863 119899119889119895 The demand for each type of product isa number of layers If there are some remaining items of aproduct not included in a layer these itemswill form a specialpallet

The loading problem consists of two interrelated phases(i) Pallet Building Phase All layers have to be placed on

pallets(ii) Truck Loading Phase All pallets have to placed in one

of the trucks

31 Pallet Building In this phase we have to place the layerson pallets A pallet has a base made of wood metal orplastic with dimensions (119897

119901 119908119901 ℎ119901) and weight 119902

119901 and itcan be rotated horizontally A pallet provides a loading spaceabove its base Typically the space in horizontal directionsis limited by the horizontal dimensions of the pallet thoughsome overhang in both directions can be allowed In thevertical direction the height of the loaded pallet is limited tohalf the height of the truck so that two pallets can be placedone on top of the other

A pallet is thus composed of a flat base and a set oflayers placed one on top of the other Two types of pallets

can be built stock pallets where all the layers are of thesame product and case pallets formed by layers of differentproducts The company wants to make as many stock palletsas possible Only when not all the layers of a product fitonto stock pallets are the remaining layers used to form casepallets A third type of pallet the rest pallet appears when thedemand for some product 119886119895119889 is not a multiple of 119897119906119895 andthere are some remaining items not included in any layer Allthese remaining items are put together on one or more restpallets

Apart from pallet composition other constraints shouldbe considered in this phase

(i) Orientation Constraint Layers can be rotated but allplacements must be parallel to the sides of the pallet

(ii) Support Constraint A certain minimum percentage of alayer 75 to be precise must be supported by the pallet baseor by the layer on which it rests

(iii) Priority Constraint A pallet can contain only items oforders for the same day

(iv) Stackability Constraint The number of layers that canbe stacked is limited to avoid product damage It dependson their weight with lighter layers being placed on top ofheavier ones and on the fragility of the products For eachtype of product the maximum number of layers that can bestacked 119897119904119895 is defined by the company and the stock palletsare composed of this number of layers However when webuild case pallets with different types of layers in the samepallet we have to take their stackability into account Eachproduct belongs to a stackability group which is identified bya value id119904119895 isin 1 119878119866 linked to the density of the productwith the densest products having an identification of 1 andthe least dense having the maximum value 119878119866 One layer canbe placed on top of another if the product in the layer belowhas a stackability identification smaller than or equal to thatof the product in the layer above

32 Truck Loading Once the pallets are prepared they haveto be placed in the trucks We have a set of trucks 119896 isin

1 119870 all of the same type with two axles and withunlimited availabilityMore precisely for each truckwe knowits dimensions (119871119882119867) and the maximumweight or weightcapacity 119876 that it is allowed to load Moreover there arerestrictions on the maximum weights the axles can supportThe truck has two axles which carry the load with the frontaxle at position 1205751 and the rear axle at position 1205752 where 1205751and 1205752 are measured from the front of the loading space ofthe truck Figure 1 shows a truck with its dimensions and axledistances

For security reasons the load has to be well spread outover the truck andmust be distributed between the two axlesnot exceeding the maximum weight they can bear If Cog119909 isthe 119909-coordinate of the center of gravity of the load Cog119909 =

sum119901 119909119901119882119901119892 where 119909119901 is the position of a pallet and 119882119901 isits weight and 119892 is the total weight of the load the weights

4 Mathematical Problems in Engineering

L

W

H

1205751

1205752

Figure 1 A truck with the positions of the axles

supported by the front axle (1198921) and the rear axle (1198922) aredetermined by

1198921 =119892 (Cog119909 minus 1205751)

1205752 minus 1205751

1198922 =119892 (1205752 minus Cog119909)

1205752 minus 1205751

(1)

Each axle can bear a maximum weight denoted by 1198761and 1198762 Usually 1198761 + 1198762 ge 119876 Therefore we impose theconditions 1198921 le 1198761 and 1198922 le 1198762 as well as 1205751 le Cog119909 le 1205752ensuring that the center of gravity is always between the axles

The expressions of the weight supported by the axlesprovided by the company are based on the total weightbeing put on the truck and the center of gravity of the loadAlthough they are nonlinear they can be easily computedin the constructive process developed in this study Analternative linear formulation based on the contribution ofeach item to the weight supported by the axles has been usedin [8] with the information contained in [36]

In this phase of truck loading some other constraintsrelated to how to place the pallets should be considered

(i) Priority Constraint The delivery days of the orders mustbe respected meaning that each day the trucks being sentto the depot must contain all the products required for thatday although some of them may have been sent before Eachday 119889 only trucks containing products for that day are sentTrucks in the solution that are completely filled with productsfor days 119889 + 1 119889 + 2 are not sent on day 119889 However if theitems for day 119889 do not completely fill a truck the items forday 119889 + 1 can be used to fill up the truck If after adding theseitems the truck is not still completely filled then items for day119889 + 2 can be used and so on until the truck is filled or thereare no items left

This strategy could result in some products being sentseveral days before their due date in some cases However no

constraints or penalties are considered to limit this situationOn the one hand in practice it affects very few products formore than one day or two On the other hand the companygives higher priority to minimizing the number of trucks

(ii) Stability Constraint For stability reasons the pallets haveto be placed touching at least one side of the truck

(iii) Stackability ConstraintThe pallet height is limited to halfthe truck height Therefore at most two pallets can be placedin each stack However one cannot place any two pallets inthe same stack it depends on their weight with lighter palletsbeing placed on top of heavier pallets Each pallet belongs toa stackability group identified by a value id119904119895 isin 1 119878119866The stackability identification of a pallet id119904119895 is the minimumstackability identification of the products that compose thepallet One pallet can be placed on top of another if the palletbelow has a stackability identification smaller than or equalto that of the pallet above

33 Objective When preparing the transportation plan forthe next few days the available data are usually not completeexcept for the next day orders may be canceled or moreprobably increased with new products for the upcomingdays Consequently the distribution company will not shipthe goods for all the days but only the first trucks containingthe next dayrsquos orders and possibly some orders for thefollowing day(s)

Nevertheless the company wants the problem solvedfor all the orders of all the days in the planning horizonbecause the orders for the later days might influence thechoices made for the first days For this reason our mainobjective is to minimize the total number of trucks neededfor all the orders and for solutions with the same numberof trucks one is better than the other if the last truck isless full leaving more room for new orders The inclusionof this secondary objective of leaving the last truck as empty

Mathematical Problems in Engineering 5

as possible for future use makes the problem similar tocutting stock problemswith usable leftovers which have beenextensively studied in one and two dimensions due to theirmany practical applications (Arenales et al [37] Andrade etal [38])

We are tackling a problem with two parts to be solvedsimultaneously putting products onto pallets and pallets intotrucks but they have similar characteristics The type ofassignment is input minimization whereby a set of smallitems is to be assigned to a set of large objects whose quantityis large enough to accommodate all the small items Theassortment of the small items is weakly heterogeneous thesmall items can be grouped in relatively few classes comparedwith the total number of items The assortment of the largeobjects is that there is only one large object type with fixeddimensions pallet and truck and the shape of the small itemsis regular According to the typology for cutting and packingproblems introduced byWascher et al [39] the truck loadingpart can be classified as a Three-Dimensional Single StockSize Cutting Stock Problem (3D-SSSCSP) while the palletbuilding part is one-dimensional (1D-SSSCSP) except for therest pallet problem which is three-dimensional

4 Approach to the Problem

We can consider the problem as two subproblems The firstsubproblem is building the pallets where the input is the listof all the orders for all the days in the planning horizon andthe output is a pallet list with all the products to send Thesecond problem is how to load the pallets onto the truckswhere the input is the list of pallets provided by the firstsubproblem and the output is the number of trucks neededto load the whole list of pallets from the first subproblem

The disadvantage of this approach is that the two sub-problems are independent and one does not take into accountthe features and constraints of the other In particular in thefirst subproblem the pallets are built without any informationabout the trucks Therefore a good solution for the palletloading phase is not necessarily a good starting point for thetruck loading phase

Our proposal is to keep a constant flow of informa-tion between the two subproblems taking into account theconstraints and the features of both In the truck loadingphase we gather information about the features of the palletwhereas in the pallet building phase we collect informationabout the placement of the pallet in the truck With both setsof information we build the best pallet for a specific positionin the truck using the remaining products

To solve this problem we propose a GRASP algorithmwith a constructive phase in which a solution is built byadding a pallet at each step according to the informationcollected from the truck a randomization strategy to obtaindiverse solutions in an iterative process and an improvementphase In the following sections the elements of the algorithmare described in detail

41 Constructive Phase The constructive algorithm builds asolution by means of an iterative process in two steps the

first of which consists of finding a space in the truck to placethe pallet and the second consists of building the pallet andplacing it into the truck

Step 1 (selecting a place) The first step is to select a positionin the truck to place the next pallet If there were nooversize layers forming oversize pallets each pallet wouldhave a predefined position in the truck because all the palletswould have the same dimensions But if there are someoversize pallets in which some layers are larger than the basethe position of the pallet cannot be predefined because itdepends on the pallet dimensions That is why we have toselect a place to put the pallet at each step

Other constraints that have to be taken into account whenselecting the place are the center of gravity and the weight oneach axle because the position of the pallet affects the weightthat each axle will bear and may move the center of gravityaway from the geometric center of the truck

Since theweight has to be balanced between the two axleswe have decided to divide the truck into two parts front andrear starting from the center By placing pallets alternately ineach part we can control the balance of the weight and keepthe center of gravity approximately in the center of the truck

The center of gravity and the weight each axle will bearare calculated by the expressions described in Section 32 Ifthe weight that axle 1 can still bear 1198761 minus 1198921 is greater thanthat of axle 2 1198762 minus 1198922 the next space is selected at the frontotherwise it is chosen at the back

Starting at the center of the truck and going in thechosen direction towards the front or the back we look fora space big enough to place a pallet We search the floorof the truck first and if there is no space left we look atthe top of the pallets already loaded When the space isfound its features are extracted its dimensions (119878119909 119878119910 119878119911)the maximum weight that can be put into this position 119882119904and the stackability identification of the lower pallet id119904119904 ifthe space is above another pallet

Having determined these features of the chosen space wemove on to the next step

Step 2 (building a pallet for the selected space) In this stepwe build a pallet that is tailored to the selected space Whenbuilding a pallet we always use the predefined layers exceptfor the special case of rest pallets

The layers are ordered by day first days first and bydensity the denser ones first We take the first layer on the listand check whether there are enough layers of this product tobuild a stock pallet If this is the case we build it Otherwisethese layers are added to the pallet and we continue searchingfor layers that cannot form a stock pallet by themselves andadd them to the pallet building a case pallet with layers ofdifferent products

A layer is selected if it satisfies several conditions First itfits into the selected space and is supported in at least 75 ofits area by the layer below it Second the weight of the palletincluding this layer does not exceed the maximum weightallowed for this space and keeps the center of gravity betweenthe axles Third the height of the pallet does not exceed halfthe height of the truck if it is placed on the floor If it is placed

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 3: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Mathematical Problems in Engineering 3

vehicle routing problem in which the items are placed onpallets and stacked one on top of the other producingpiles They propose two metaheuristic algorithms a TabuSearch and an ACO algorithm Pollaris et al [32] combinea capacitated vehicle routing problem with the loadingof homogeneous pallets inside the vehicle They considersequence-based pallet loading and axle weight constraintsand propose a mixed ILP formulation for the problem Theirmodel tries to minimize the transportation cost respectingthe axle weight constraint along the delivery route Recentsurveys on loading and routing problemshave beenpresentedby Iori and Martello [33 34] and Pollaris et al [35]

3 Description of the Problem

The problem begins when a depot sends a set of orders forthe upcoming days 119889 isin 1 119863 For each day 119889 the orderconsists of a list of products 119895 119895 isin 1 119869 with theirrequired number of items for this day 119886119895119889 The products haveto be served that day or before but not later Each productis defined by its dimensions (119909119895 119910119895 119911119895) its weight 119908119895 andits possible rotations (119903119909119895 119903119910119895 119903119911119895) where 119903119909119895 = 1 if thedimension 119909119895 of the product can be upward

All the products have a predefined placement in layersA layer is an arrangement of items of the same product 119895

in rows and columns forming a rectangle defined by itsdimensions (119897119895 119908119895 ℎ119895) its weight 119902119895 and the number of itemsin the layer 119897119906119895 The composition of the layers is previouslydetermined by the company For each type of product thecompany has defined the items by row and by column theirorientation and their placement A layer covers the palletbase in horizontal directions guaranteeing sufficient supportfor other layers that can be placed on top of it to make up thepallet

The quantity of layers per product and day is 119899119889119895 =

lfloor119886119895119889119897119906119895rfloor whereas the total quantity of layers of a productis 119899119895 = sum119889isin119863 119899119889119895 The demand for each type of product isa number of layers If there are some remaining items of aproduct not included in a layer these itemswill form a specialpallet

The loading problem consists of two interrelated phases(i) Pallet Building Phase All layers have to be placed on

pallets(ii) Truck Loading Phase All pallets have to placed in one

of the trucks

31 Pallet Building In this phase we have to place the layerson pallets A pallet has a base made of wood metal orplastic with dimensions (119897

119901 119908119901 ℎ119901) and weight 119902

119901 and itcan be rotated horizontally A pallet provides a loading spaceabove its base Typically the space in horizontal directionsis limited by the horizontal dimensions of the pallet thoughsome overhang in both directions can be allowed In thevertical direction the height of the loaded pallet is limited tohalf the height of the truck so that two pallets can be placedone on top of the other

A pallet is thus composed of a flat base and a set oflayers placed one on top of the other Two types of pallets

can be built stock pallets where all the layers are of thesame product and case pallets formed by layers of differentproducts The company wants to make as many stock palletsas possible Only when not all the layers of a product fitonto stock pallets are the remaining layers used to form casepallets A third type of pallet the rest pallet appears when thedemand for some product 119886119895119889 is not a multiple of 119897119906119895 andthere are some remaining items not included in any layer Allthese remaining items are put together on one or more restpallets

Apart from pallet composition other constraints shouldbe considered in this phase

(i) Orientation Constraint Layers can be rotated but allplacements must be parallel to the sides of the pallet

(ii) Support Constraint A certain minimum percentage of alayer 75 to be precise must be supported by the pallet baseor by the layer on which it rests

(iii) Priority Constraint A pallet can contain only items oforders for the same day

(iv) Stackability Constraint The number of layers that canbe stacked is limited to avoid product damage It dependson their weight with lighter layers being placed on top ofheavier ones and on the fragility of the products For eachtype of product the maximum number of layers that can bestacked 119897119904119895 is defined by the company and the stock palletsare composed of this number of layers However when webuild case pallets with different types of layers in the samepallet we have to take their stackability into account Eachproduct belongs to a stackability group which is identified bya value id119904119895 isin 1 119878119866 linked to the density of the productwith the densest products having an identification of 1 andthe least dense having the maximum value 119878119866 One layer canbe placed on top of another if the product in the layer belowhas a stackability identification smaller than or equal to thatof the product in the layer above

32 Truck Loading Once the pallets are prepared they haveto be placed in the trucks We have a set of trucks 119896 isin

1 119870 all of the same type with two axles and withunlimited availabilityMore precisely for each truckwe knowits dimensions (119871119882119867) and the maximumweight or weightcapacity 119876 that it is allowed to load Moreover there arerestrictions on the maximum weights the axles can supportThe truck has two axles which carry the load with the frontaxle at position 1205751 and the rear axle at position 1205752 where 1205751and 1205752 are measured from the front of the loading space ofthe truck Figure 1 shows a truck with its dimensions and axledistances

For security reasons the load has to be well spread outover the truck andmust be distributed between the two axlesnot exceeding the maximum weight they can bear If Cog119909 isthe 119909-coordinate of the center of gravity of the load Cog119909 =

sum119901 119909119901119882119901119892 where 119909119901 is the position of a pallet and 119882119901 isits weight and 119892 is the total weight of the load the weights

4 Mathematical Problems in Engineering

L

W

H

1205751

1205752

Figure 1 A truck with the positions of the axles

supported by the front axle (1198921) and the rear axle (1198922) aredetermined by

1198921 =119892 (Cog119909 minus 1205751)

1205752 minus 1205751

1198922 =119892 (1205752 minus Cog119909)

1205752 minus 1205751

(1)

Each axle can bear a maximum weight denoted by 1198761and 1198762 Usually 1198761 + 1198762 ge 119876 Therefore we impose theconditions 1198921 le 1198761 and 1198922 le 1198762 as well as 1205751 le Cog119909 le 1205752ensuring that the center of gravity is always between the axles

The expressions of the weight supported by the axlesprovided by the company are based on the total weightbeing put on the truck and the center of gravity of the loadAlthough they are nonlinear they can be easily computedin the constructive process developed in this study Analternative linear formulation based on the contribution ofeach item to the weight supported by the axles has been usedin [8] with the information contained in [36]

In this phase of truck loading some other constraintsrelated to how to place the pallets should be considered

(i) Priority Constraint The delivery days of the orders mustbe respected meaning that each day the trucks being sentto the depot must contain all the products required for thatday although some of them may have been sent before Eachday 119889 only trucks containing products for that day are sentTrucks in the solution that are completely filled with productsfor days 119889 + 1 119889 + 2 are not sent on day 119889 However if theitems for day 119889 do not completely fill a truck the items forday 119889 + 1 can be used to fill up the truck If after adding theseitems the truck is not still completely filled then items for day119889 + 2 can be used and so on until the truck is filled or thereare no items left

This strategy could result in some products being sentseveral days before their due date in some cases However no

constraints or penalties are considered to limit this situationOn the one hand in practice it affects very few products formore than one day or two On the other hand the companygives higher priority to minimizing the number of trucks

(ii) Stability Constraint For stability reasons the pallets haveto be placed touching at least one side of the truck

(iii) Stackability ConstraintThe pallet height is limited to halfthe truck height Therefore at most two pallets can be placedin each stack However one cannot place any two pallets inthe same stack it depends on their weight with lighter palletsbeing placed on top of heavier pallets Each pallet belongs toa stackability group identified by a value id119904119895 isin 1 119878119866The stackability identification of a pallet id119904119895 is the minimumstackability identification of the products that compose thepallet One pallet can be placed on top of another if the palletbelow has a stackability identification smaller than or equalto that of the pallet above

33 Objective When preparing the transportation plan forthe next few days the available data are usually not completeexcept for the next day orders may be canceled or moreprobably increased with new products for the upcomingdays Consequently the distribution company will not shipthe goods for all the days but only the first trucks containingthe next dayrsquos orders and possibly some orders for thefollowing day(s)

Nevertheless the company wants the problem solvedfor all the orders of all the days in the planning horizonbecause the orders for the later days might influence thechoices made for the first days For this reason our mainobjective is to minimize the total number of trucks neededfor all the orders and for solutions with the same numberof trucks one is better than the other if the last truck isless full leaving more room for new orders The inclusionof this secondary objective of leaving the last truck as empty

Mathematical Problems in Engineering 5

as possible for future use makes the problem similar tocutting stock problemswith usable leftovers which have beenextensively studied in one and two dimensions due to theirmany practical applications (Arenales et al [37] Andrade etal [38])

We are tackling a problem with two parts to be solvedsimultaneously putting products onto pallets and pallets intotrucks but they have similar characteristics The type ofassignment is input minimization whereby a set of smallitems is to be assigned to a set of large objects whose quantityis large enough to accommodate all the small items Theassortment of the small items is weakly heterogeneous thesmall items can be grouped in relatively few classes comparedwith the total number of items The assortment of the largeobjects is that there is only one large object type with fixeddimensions pallet and truck and the shape of the small itemsis regular According to the typology for cutting and packingproblems introduced byWascher et al [39] the truck loadingpart can be classified as a Three-Dimensional Single StockSize Cutting Stock Problem (3D-SSSCSP) while the palletbuilding part is one-dimensional (1D-SSSCSP) except for therest pallet problem which is three-dimensional

4 Approach to the Problem

We can consider the problem as two subproblems The firstsubproblem is building the pallets where the input is the listof all the orders for all the days in the planning horizon andthe output is a pallet list with all the products to send Thesecond problem is how to load the pallets onto the truckswhere the input is the list of pallets provided by the firstsubproblem and the output is the number of trucks neededto load the whole list of pallets from the first subproblem

The disadvantage of this approach is that the two sub-problems are independent and one does not take into accountthe features and constraints of the other In particular in thefirst subproblem the pallets are built without any informationabout the trucks Therefore a good solution for the palletloading phase is not necessarily a good starting point for thetruck loading phase

Our proposal is to keep a constant flow of informa-tion between the two subproblems taking into account theconstraints and the features of both In the truck loadingphase we gather information about the features of the palletwhereas in the pallet building phase we collect informationabout the placement of the pallet in the truck With both setsof information we build the best pallet for a specific positionin the truck using the remaining products

To solve this problem we propose a GRASP algorithmwith a constructive phase in which a solution is built byadding a pallet at each step according to the informationcollected from the truck a randomization strategy to obtaindiverse solutions in an iterative process and an improvementphase In the following sections the elements of the algorithmare described in detail

41 Constructive Phase The constructive algorithm builds asolution by means of an iterative process in two steps the

first of which consists of finding a space in the truck to placethe pallet and the second consists of building the pallet andplacing it into the truck

Step 1 (selecting a place) The first step is to select a positionin the truck to place the next pallet If there were nooversize layers forming oversize pallets each pallet wouldhave a predefined position in the truck because all the palletswould have the same dimensions But if there are someoversize pallets in which some layers are larger than the basethe position of the pallet cannot be predefined because itdepends on the pallet dimensions That is why we have toselect a place to put the pallet at each step

Other constraints that have to be taken into account whenselecting the place are the center of gravity and the weight oneach axle because the position of the pallet affects the weightthat each axle will bear and may move the center of gravityaway from the geometric center of the truck

Since theweight has to be balanced between the two axleswe have decided to divide the truck into two parts front andrear starting from the center By placing pallets alternately ineach part we can control the balance of the weight and keepthe center of gravity approximately in the center of the truck

The center of gravity and the weight each axle will bearare calculated by the expressions described in Section 32 Ifthe weight that axle 1 can still bear 1198761 minus 1198921 is greater thanthat of axle 2 1198762 minus 1198922 the next space is selected at the frontotherwise it is chosen at the back

Starting at the center of the truck and going in thechosen direction towards the front or the back we look fora space big enough to place a pallet We search the floorof the truck first and if there is no space left we look atthe top of the pallets already loaded When the space isfound its features are extracted its dimensions (119878119909 119878119910 119878119911)the maximum weight that can be put into this position 119882119904and the stackability identification of the lower pallet id119904119904 ifthe space is above another pallet

Having determined these features of the chosen space wemove on to the next step

Step 2 (building a pallet for the selected space) In this stepwe build a pallet that is tailored to the selected space Whenbuilding a pallet we always use the predefined layers exceptfor the special case of rest pallets

The layers are ordered by day first days first and bydensity the denser ones first We take the first layer on the listand check whether there are enough layers of this product tobuild a stock pallet If this is the case we build it Otherwisethese layers are added to the pallet and we continue searchingfor layers that cannot form a stock pallet by themselves andadd them to the pallet building a case pallet with layers ofdifferent products

A layer is selected if it satisfies several conditions First itfits into the selected space and is supported in at least 75 ofits area by the layer below it Second the weight of the palletincluding this layer does not exceed the maximum weightallowed for this space and keeps the center of gravity betweenthe axles Third the height of the pallet does not exceed halfthe height of the truck if it is placed on the floor If it is placed

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 4: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

4 Mathematical Problems in Engineering

L

W

H

1205751

1205752

Figure 1 A truck with the positions of the axles

supported by the front axle (1198921) and the rear axle (1198922) aredetermined by

1198921 =119892 (Cog119909 minus 1205751)

1205752 minus 1205751

1198922 =119892 (1205752 minus Cog119909)

1205752 minus 1205751

(1)

Each axle can bear a maximum weight denoted by 1198761and 1198762 Usually 1198761 + 1198762 ge 119876 Therefore we impose theconditions 1198921 le 1198761 and 1198922 le 1198762 as well as 1205751 le Cog119909 le 1205752ensuring that the center of gravity is always between the axles

The expressions of the weight supported by the axlesprovided by the company are based on the total weightbeing put on the truck and the center of gravity of the loadAlthough they are nonlinear they can be easily computedin the constructive process developed in this study Analternative linear formulation based on the contribution ofeach item to the weight supported by the axles has been usedin [8] with the information contained in [36]

In this phase of truck loading some other constraintsrelated to how to place the pallets should be considered

(i) Priority Constraint The delivery days of the orders mustbe respected meaning that each day the trucks being sentto the depot must contain all the products required for thatday although some of them may have been sent before Eachday 119889 only trucks containing products for that day are sentTrucks in the solution that are completely filled with productsfor days 119889 + 1 119889 + 2 are not sent on day 119889 However if theitems for day 119889 do not completely fill a truck the items forday 119889 + 1 can be used to fill up the truck If after adding theseitems the truck is not still completely filled then items for day119889 + 2 can be used and so on until the truck is filled or thereare no items left

This strategy could result in some products being sentseveral days before their due date in some cases However no

constraints or penalties are considered to limit this situationOn the one hand in practice it affects very few products formore than one day or two On the other hand the companygives higher priority to minimizing the number of trucks

(ii) Stability Constraint For stability reasons the pallets haveto be placed touching at least one side of the truck

(iii) Stackability ConstraintThe pallet height is limited to halfthe truck height Therefore at most two pallets can be placedin each stack However one cannot place any two pallets inthe same stack it depends on their weight with lighter palletsbeing placed on top of heavier pallets Each pallet belongs toa stackability group identified by a value id119904119895 isin 1 119878119866The stackability identification of a pallet id119904119895 is the minimumstackability identification of the products that compose thepallet One pallet can be placed on top of another if the palletbelow has a stackability identification smaller than or equalto that of the pallet above

33 Objective When preparing the transportation plan forthe next few days the available data are usually not completeexcept for the next day orders may be canceled or moreprobably increased with new products for the upcomingdays Consequently the distribution company will not shipthe goods for all the days but only the first trucks containingthe next dayrsquos orders and possibly some orders for thefollowing day(s)

Nevertheless the company wants the problem solvedfor all the orders of all the days in the planning horizonbecause the orders for the later days might influence thechoices made for the first days For this reason our mainobjective is to minimize the total number of trucks neededfor all the orders and for solutions with the same numberof trucks one is better than the other if the last truck isless full leaving more room for new orders The inclusionof this secondary objective of leaving the last truck as empty

Mathematical Problems in Engineering 5

as possible for future use makes the problem similar tocutting stock problemswith usable leftovers which have beenextensively studied in one and two dimensions due to theirmany practical applications (Arenales et al [37] Andrade etal [38])

We are tackling a problem with two parts to be solvedsimultaneously putting products onto pallets and pallets intotrucks but they have similar characteristics The type ofassignment is input minimization whereby a set of smallitems is to be assigned to a set of large objects whose quantityis large enough to accommodate all the small items Theassortment of the small items is weakly heterogeneous thesmall items can be grouped in relatively few classes comparedwith the total number of items The assortment of the largeobjects is that there is only one large object type with fixeddimensions pallet and truck and the shape of the small itemsis regular According to the typology for cutting and packingproblems introduced byWascher et al [39] the truck loadingpart can be classified as a Three-Dimensional Single StockSize Cutting Stock Problem (3D-SSSCSP) while the palletbuilding part is one-dimensional (1D-SSSCSP) except for therest pallet problem which is three-dimensional

4 Approach to the Problem

We can consider the problem as two subproblems The firstsubproblem is building the pallets where the input is the listof all the orders for all the days in the planning horizon andthe output is a pallet list with all the products to send Thesecond problem is how to load the pallets onto the truckswhere the input is the list of pallets provided by the firstsubproblem and the output is the number of trucks neededto load the whole list of pallets from the first subproblem

The disadvantage of this approach is that the two sub-problems are independent and one does not take into accountthe features and constraints of the other In particular in thefirst subproblem the pallets are built without any informationabout the trucks Therefore a good solution for the palletloading phase is not necessarily a good starting point for thetruck loading phase

Our proposal is to keep a constant flow of informa-tion between the two subproblems taking into account theconstraints and the features of both In the truck loadingphase we gather information about the features of the palletwhereas in the pallet building phase we collect informationabout the placement of the pallet in the truck With both setsof information we build the best pallet for a specific positionin the truck using the remaining products

To solve this problem we propose a GRASP algorithmwith a constructive phase in which a solution is built byadding a pallet at each step according to the informationcollected from the truck a randomization strategy to obtaindiverse solutions in an iterative process and an improvementphase In the following sections the elements of the algorithmare described in detail

41 Constructive Phase The constructive algorithm builds asolution by means of an iterative process in two steps the

first of which consists of finding a space in the truck to placethe pallet and the second consists of building the pallet andplacing it into the truck

Step 1 (selecting a place) The first step is to select a positionin the truck to place the next pallet If there were nooversize layers forming oversize pallets each pallet wouldhave a predefined position in the truck because all the palletswould have the same dimensions But if there are someoversize pallets in which some layers are larger than the basethe position of the pallet cannot be predefined because itdepends on the pallet dimensions That is why we have toselect a place to put the pallet at each step

Other constraints that have to be taken into account whenselecting the place are the center of gravity and the weight oneach axle because the position of the pallet affects the weightthat each axle will bear and may move the center of gravityaway from the geometric center of the truck

Since theweight has to be balanced between the two axleswe have decided to divide the truck into two parts front andrear starting from the center By placing pallets alternately ineach part we can control the balance of the weight and keepthe center of gravity approximately in the center of the truck

The center of gravity and the weight each axle will bearare calculated by the expressions described in Section 32 Ifthe weight that axle 1 can still bear 1198761 minus 1198921 is greater thanthat of axle 2 1198762 minus 1198922 the next space is selected at the frontotherwise it is chosen at the back

Starting at the center of the truck and going in thechosen direction towards the front or the back we look fora space big enough to place a pallet We search the floorof the truck first and if there is no space left we look atthe top of the pallets already loaded When the space isfound its features are extracted its dimensions (119878119909 119878119910 119878119911)the maximum weight that can be put into this position 119882119904and the stackability identification of the lower pallet id119904119904 ifthe space is above another pallet

Having determined these features of the chosen space wemove on to the next step

Step 2 (building a pallet for the selected space) In this stepwe build a pallet that is tailored to the selected space Whenbuilding a pallet we always use the predefined layers exceptfor the special case of rest pallets

The layers are ordered by day first days first and bydensity the denser ones first We take the first layer on the listand check whether there are enough layers of this product tobuild a stock pallet If this is the case we build it Otherwisethese layers are added to the pallet and we continue searchingfor layers that cannot form a stock pallet by themselves andadd them to the pallet building a case pallet with layers ofdifferent products

A layer is selected if it satisfies several conditions First itfits into the selected space and is supported in at least 75 ofits area by the layer below it Second the weight of the palletincluding this layer does not exceed the maximum weightallowed for this space and keeps the center of gravity betweenthe axles Third the height of the pallet does not exceed halfthe height of the truck if it is placed on the floor If it is placed

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 5: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Mathematical Problems in Engineering 5

as possible for future use makes the problem similar tocutting stock problemswith usable leftovers which have beenextensively studied in one and two dimensions due to theirmany practical applications (Arenales et al [37] Andrade etal [38])

We are tackling a problem with two parts to be solvedsimultaneously putting products onto pallets and pallets intotrucks but they have similar characteristics The type ofassignment is input minimization whereby a set of smallitems is to be assigned to a set of large objects whose quantityis large enough to accommodate all the small items Theassortment of the small items is weakly heterogeneous thesmall items can be grouped in relatively few classes comparedwith the total number of items The assortment of the largeobjects is that there is only one large object type with fixeddimensions pallet and truck and the shape of the small itemsis regular According to the typology for cutting and packingproblems introduced byWascher et al [39] the truck loadingpart can be classified as a Three-Dimensional Single StockSize Cutting Stock Problem (3D-SSSCSP) while the palletbuilding part is one-dimensional (1D-SSSCSP) except for therest pallet problem which is three-dimensional

4 Approach to the Problem

We can consider the problem as two subproblems The firstsubproblem is building the pallets where the input is the listof all the orders for all the days in the planning horizon andthe output is a pallet list with all the products to send Thesecond problem is how to load the pallets onto the truckswhere the input is the list of pallets provided by the firstsubproblem and the output is the number of trucks neededto load the whole list of pallets from the first subproblem

The disadvantage of this approach is that the two sub-problems are independent and one does not take into accountthe features and constraints of the other In particular in thefirst subproblem the pallets are built without any informationabout the trucks Therefore a good solution for the palletloading phase is not necessarily a good starting point for thetruck loading phase

Our proposal is to keep a constant flow of informa-tion between the two subproblems taking into account theconstraints and the features of both In the truck loadingphase we gather information about the features of the palletwhereas in the pallet building phase we collect informationabout the placement of the pallet in the truck With both setsof information we build the best pallet for a specific positionin the truck using the remaining products

To solve this problem we propose a GRASP algorithmwith a constructive phase in which a solution is built byadding a pallet at each step according to the informationcollected from the truck a randomization strategy to obtaindiverse solutions in an iterative process and an improvementphase In the following sections the elements of the algorithmare described in detail

41 Constructive Phase The constructive algorithm builds asolution by means of an iterative process in two steps the

first of which consists of finding a space in the truck to placethe pallet and the second consists of building the pallet andplacing it into the truck

Step 1 (selecting a place) The first step is to select a positionin the truck to place the next pallet If there were nooversize layers forming oversize pallets each pallet wouldhave a predefined position in the truck because all the palletswould have the same dimensions But if there are someoversize pallets in which some layers are larger than the basethe position of the pallet cannot be predefined because itdepends on the pallet dimensions That is why we have toselect a place to put the pallet at each step

Other constraints that have to be taken into account whenselecting the place are the center of gravity and the weight oneach axle because the position of the pallet affects the weightthat each axle will bear and may move the center of gravityaway from the geometric center of the truck

Since theweight has to be balanced between the two axleswe have decided to divide the truck into two parts front andrear starting from the center By placing pallets alternately ineach part we can control the balance of the weight and keepthe center of gravity approximately in the center of the truck

The center of gravity and the weight each axle will bearare calculated by the expressions described in Section 32 Ifthe weight that axle 1 can still bear 1198761 minus 1198921 is greater thanthat of axle 2 1198762 minus 1198922 the next space is selected at the frontotherwise it is chosen at the back

Starting at the center of the truck and going in thechosen direction towards the front or the back we look fora space big enough to place a pallet We search the floorof the truck first and if there is no space left we look atthe top of the pallets already loaded When the space isfound its features are extracted its dimensions (119878119909 119878119910 119878119911)the maximum weight that can be put into this position 119882119904and the stackability identification of the lower pallet id119904119904 ifthe space is above another pallet

Having determined these features of the chosen space wemove on to the next step

Step 2 (building a pallet for the selected space) In this stepwe build a pallet that is tailored to the selected space Whenbuilding a pallet we always use the predefined layers exceptfor the special case of rest pallets

The layers are ordered by day first days first and bydensity the denser ones first We take the first layer on the listand check whether there are enough layers of this product tobuild a stock pallet If this is the case we build it Otherwisethese layers are added to the pallet and we continue searchingfor layers that cannot form a stock pallet by themselves andadd them to the pallet building a case pallet with layers ofdifferent products

A layer is selected if it satisfies several conditions First itfits into the selected space and is supported in at least 75 ofits area by the layer below it Second the weight of the palletincluding this layer does not exceed the maximum weightallowed for this space and keeps the center of gravity betweenthe axles Third the height of the pallet does not exceed halfthe height of the truck if it is placed on the floor If it is placed

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 6: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

6 Mathematical Problems in Engineering

Figure 2 Arrangement of the first level

Figure 3 Pallets arranged on the second level

above another pallet the sum of the pallets heights cannotexceed the truck height

The pallet built in this way is defined by its dimension(119897119901 119908119901 ℎ119901) the number of layers 119899119897

119901 the total weight 119902119901

and the stackability identification which is the maximumidentification of all the layers making up the pallet

The pallet is placed in the selected space touching thenearest wall of the truck in such a way that the gap if any isleft in the middle of the truck where it can be used by palletson the other side and also by pallets on top always satisfyinga 75 area of support as can be seen in Figures 2 and 3

When the pallet is inserted into the solution a newcycle begins calculating the new center of gravity the loadsupported by the axles and the direction to be chosen andupdating the list of layers

When the first level on the floor of the truck is completeall the pallets are pushed to the front of the truck The

placement of the pallets starting from the center may leavetwo gaps one at the front and another at the back of thetruck as can be seen in Figure 2 By pushing the pallets tothe front of the truck we merge the gaps at the end with thepossibility of placing another pallet in that gap This processis performed before starting the placement on the secondlevel but it takes place only if the modified location of thepallets is feasible If it is not the containers are kept wherethey are and we go to the second level In the many instancesstudied this movement of the pallets on the first level hasnearly always been possible In the very few cases in whichit was not it was due to the presence of very heavy palletsalmost reaching the total weight limit or the limits on theaxles In these cases moving the existing pallets would nothave allowed the placement of another pallet

The constructive phase continues until all the layers havebeen placed or until no more pallets can be placed in thetruck because one of the constraints limiting the volume theweight or the number of pallets has been reached If there arestill pallets to be sent a new truck is opened and the processcontinues

42 Randomized Constructive Algorithm In the constructionphase the solution is built step by step by adding one elementto a partial solution In order to select the element to adda greedy randomized strategy Sample plus Constructionis used to add diversity to the process When the spaceis selected we consider all the layers that satisfy all theconditions for being placed in that position and take arandom sample of these layers The number of layers on thelist is controlled by a parameter 120574 (0 le 120574 le 1) as proposedby Resende and Werneck [40] Each layer in the sample isevaluated and the densest layer is chosen Then we followthe process explained previously to complete the pallet Thediversity of the process is managed by the value of parameter120574 If 120574 is equal to 1 all the layers are selected for the sampleand the densest of all the layers is always chosen makingthe selection deterministic If on the contrary 120574 is near 0the number of selected candidates is smaller the densestlayers have less probability of being selected and another lessgood candidate could be chosen making the selection morerandom

It is difficult to determine the value of 120574 the fraction ofelements composing the list that gives the best overall resultsWe follow a reactive greedy adaptive search procedureproposed by Prais and Ribeiro [41] in which the value ofthe parameter 120574 is self-tuned according to the quality of theresults The parameter 120574 is initially taken at random froma set of discrete values Γ = 01 02 09 and at eachiteration 120574 takes a random value from this set After a certainnumber of iterations 500 in the current implementationthe relative quality of the solutions obtained with eachvalue of 120574 is evaluated The probability of the selection ofeach value is recalculated according to the quality of thesolutions increasing the probability of the values producingbetter solutions and decreasing the others In this way therandomization procedure of GRASP reacts to the results

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 7: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Mathematical Problems in Engineering 7

obtained in the iterative process tuning the parameter to themost suitable values for each instance

43 Improvement Phase A solution of the randomizedconstructive phase consists of a list of pallets packed oneach truck with their contents and positions and somecharacteristics of each truck in particular the weight on eachaxle There are two reasons for closing a truck one is that themaximumweight an axle can support is reached because thepallets are heavy and the other is because all the positions areoccupied One solution can combine trucks closed by weightand others closed by positions

In order to improve the solutions three movements havebeen developed taking into account the reasons for closing atruck and they are applied according to the features of thesolution trying to improve it In the next subsections themovements are described

Nevertheless not all the solutions go into the improve-ment phase We only consider promising ones that is thosewhich are below a certain threshold At the beginningthe threshold takes the value of the first solution of theconstructive algorithm Then if at an iteration the solutionvalue is lower than the threshold we update this thresholdand go to the improvement phase If the solution value isgreater than the threshold the solution is rejected and thereject counter is increased When the number of rejectedsolutions is greater than a value maxFilter the threshold isincreased according to the expression threshold = threshold+ 120582(1 + threshold) where 120582 is set at 02 and maxFilter = 5 asin Marti and Moreno-Vega [42]

431 Improvement 1 Filling a Percentage of the Trucks Thefirst improvement move consists of eliminating a percentageof the last trucks in the solution and refilling these trucksusing another strategy

In our implementation a percentage of the trucksselected at random from the interval (50 80) is elim-inated The partial solution is then completed using threedifferent strategies

(i) Deterministic by Volume The list of the remaining layersis ordered by day and by volume and the deterministicconstructive algorithm is applied

(ii) Randomized by Volume The randomized constructivealgorithm described in Section 42 is applied to fill the truckagain but ordering the products first by day and then byvolume instead of ordering them by density

(iii) Deterministic by Weight The list of the remaining layersis ordered by day and by weight and the deterministicconstructive algorithm is applied

The best solution for the next truck provided by the threestrategies is added to the solution and the process continueswith the next truck until all the products are packed At theend of this process if the solution obtained is better than theinitial one we keep it Otherwise we keep the initial solution

This move is applied to all trucks regardless of the closingcondition

432 Improvement 2 Swapping and Insertion This improve-ment move is only for those trucks that have been closedbecause an axle has reached its maximum weight we try toobtain better results by swapping pallets between consecutivetrucks The idea is to move heavy pallets from the first truckA to the next truck B so that the axles of truck A carry lessweight allowing us to loadmore pallets In this way we try toput as many pallets as possible in the first trucks extractingthem from the following ones Consequently if we are ableto empty the final truck we save a truck in the completesolution

This swapping movement must be followed by an inser-tion in order to increase the number of pallets in truck AFirst each pallet in truck A and all the pallets in truck Bare examined in order to find candidates for swapping Twopallets are swapped if the pallet in truck B can fit into theplace of the pallet in truck A and it is lighter Then we tryto take advantage of the difference in weight by loading morepallets If we find candidates for swapping we evaluate theremaining pallets in truck B to check whether one of themcan be inserted into a gap in truck A We only considerthis improvement if we find successful candidates for bothmovements swapping and insertion

As a consequence of this movement some empty spacescan appear inside truckB because twopallets aremoved fromB to A and only one pallet is moved from A to B The nextmovement in B consists of inserting pallets from the nexttruck C refilling the empty spaces The algorithm looks forcandidates among the pallets of C that can fit into this gap inB in such away that when theweight of the candidate is addedto the weight in B the total weight does not exceed the weightcapacity of the truck and the maximum weight that can besupported by the axles Once these previous restrictions aresatisfied the candidate can be placed into the empty space intruck B If this empty space is on the second level of the truckthe pallet is put there if its stackability identification is largerthan or equal to that of the pallet below Otherwise the newpallet is put on the first level and the other pallet is put on topof it

The idea is to try to move pallets from the later trucks tothe previous ones in order to reduce the number of pallets inthe last truck as much as possible even reducing the solutionby one truck if all the pallets in the last truck are moved toother trucks

A pseudocode of the complete algorithm appears inAlgorithm 1 Since two objectives are considered the value ofsolution is the total volume used119881 = 119871lowast119882lowast119867lowast(trucksminus1)

+ volume of the pallets in the last truck

5 Computational Results

The algorithm was coded in C++ and run on an Intel Corei7-4790 360GHz with 16GB of RAM In this section wedescribe first the instances used then the lower boundsdeveloped to assess the performance of the algorithm andfinally the results obtained

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 8: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

8 Mathematical Problems in Engineering

Require Γ = 01 02 09 set of values for 120574(1) 119881best = infin 119881worst = 0 119881 = 0

(2) 119899Γlowast120574

= 0 number of iterations with each 120574 value(3) SumΓlowast

120574

= 0 sum of the volumes of the solutions obtained using 120574

(4) 119875(Γ120574 = Γlowast120574 ) = 119875Γlowast

120574

= 1|Γ| forallΓlowast120574 isin Γ probability of using value 120574

(5) numIter = 0 niter = 0

(6) 119876 = infin quality threshold(7) while numIter lt maxIter do(8) Choose a 120574 value Γ120574 = Γ

lowast120574 with probability 119875Γlowast

120574

(9) 119899Γlowast120574

= 119899Γlowast120574

+ 1

(10) numIter = numIter + 1

(11) 119881 = Randomized Constructive Algorithm(120574)(12) if 119881 lt 119876 then(13) 119876 = 119881

(14) 119881 = Improvement Phase(119881)

(15) else(16) niter + +

(17) if niter gt maxFilter then(18) 119876 = 119876 + 02(1 + 119876)

(19) niter = 0

(20) end if(21) end if(22) if 119881 lt 119881best then 119881best = 119881 end if(23) if 119881 gt 119881worst then 119881worst = 119881 end if(24) SumΓlowast

120574

= SumΓlowast120574

+ 119881

(25) meanΓlowast120574

= SumΓlowast120574

119899Γlowast120574

(26) if mod(numIter 500) == 0 then

(27) evalΓlowast120574

= (

119881worst minus meanΓlowast120574

119881worst minus 119881best)

120572

forallΓlowast120574 isin Γ

(28) 119875(Γlowast120574 ) =

evalΓlowast120574

sumΓ1205741015840isin119863

(evalΓ1015840119894

) forallΓ

lowast120574 isin Γ

(29) end if(30) end while

Algorithm 1 ReactiveGRASP

51 Description of the Datasets We have two sets oftest instances with different characteristics They are realinstances derived from the everyday transportation activityof a large distribution company The instances have beenprovided to us by ORTEC [43] a company that developsplanning and optimization solutions and services for logisticscompanies

(i) Set I Comprising 77 Instances The orders correspond tothree upcoming days Only stock pallets and case pallets areconsidered because the demand for the products is alwaysgiven as an integer number of layers Each product hasa stackability identification ranging from 1 to 4 All theinstances use one type of pallet the ISO pallet (1016mm1209mm) and one type of truck with two axles

(ii) Set II Comprising 111 Instances The orders correspond toonly one day Only case pallets are considered There are nostackability identifications and therefore any pallet (layer) can

be put on top of any other pallet (layer)Thedimensions of thepallets and trucks vary among the instances but each instanceuses one type of pallet and one type of truck with twoaxles

52 Lower Bound We can calculate some simple lowerbounds on the number of trucks required for each instanceaccording to the weight the volume and the number ofpositions in a truck The bound based on the weight is thesum of the weights of all the required products divided bythe weight capacity of the truck The bound based on thevolume is calculated in the same way using the volume ofthe products If we define the maximum number of positionsin a truck 119868 = lfloor(119871min119897119901 119908119901) lowast 4rfloor that is the maximumnumber of pallets that can be put along the length of thetruck multiplied by 4 (two rows two levels) then the boundbased on the number of positions is calculated by dividingthe sum of the heights of the layers by the truck height andby the number of positions in a truckThemaximum of these

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 9: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Mathematical Problems in Engineering 9

Table 1 Results of the deterministic constructive algorithm

Sum of LB Trucks Pallets Av timeSet I 511 581 23525 004Set II 1113 1194 38367 003

Table 2 Distance to the bound of the solutions of the deterministicconstructive algorithm

Distance to bound0 1 2 3

Set I 23 38 16 0Set II 41 60 9 1

three bounds 119871 init given by (2) is a valid lower bound on thenumber of trucks required for each instance

119871 init = maxlceilsum119895isin119869 119902119895 lowast 119899119895

119876rceil

lceilsum119895isin119869 119897119895 lowast 119908119895 lowast ℎ119895 lowast 119899119895

119871 lowast 119882 lowast 119867rceil lceil

sum119895isin119869 ℎ119895 lowast 119899119895

119867 lowast 119868rceil

(2)

53 Computational Results Table 1 shows the results ofthe constructive deterministic algorithm For each set ofinstances the table contains the sum of the lower boundson the required trucks the total number of trucks used thetotal number of pallets built and the average running timeper instance in seconds The sum of the lower bounds for theinstances in Set I is 511 and for the instances in Set II it is 1113Therefore the sum of the solutions exceeds the sum of thelower bounds by 70 trucks for Set I and by 81 trucks for SetII less than one truck per instance on average Table 2 showsthe distribution of the distance from the solution to the lowerbound for each instance

The distances observed in Table 2 are due to two factorsOn the one hand the lower bound does not take into accountsome of the characteristics of the problem such as thestructure of the demand by days the stackability conditionsand the limits on the weight supported by the axles Onthe other hand the constructive algorithm uses a simplecriterion based on the product density to select the layerscomposing the pallets For instances with heavy productsthis criterion may produce a solution in which the first truckis closed because some limit on the weight is reached butthere is plenty of unused space while in other later trucksthe weight limits are not reached but the trucks are closedbecause all the positions are used The randomization of theconstructive algorithm and the improvement moves havebeen designed to correct these undesirable situations

In Table 3 we can see the results of the randomizedconstructive algorithm with a stopping criterion of 1500iterationsThe algorithmhas also been run for larger numbersof iterations (3000 5000) but the improvements are smalland they are not worth the increase in running times

For Set I we observe an overall reduction of 19 trucksThe reduction is smaller for Set II only 8 trucks Table 4

Table 3 Results of the randomized constructive algorithm

Trucks Pallets Av time

Set I Deterministic 581 23525 004Randomized 562 24446 57

Set II Deterministic 1194 38367 003Randomized 1186 38960 42

Table 4 Distance to the bound of the solutions of the randomizedconstructive algorithm

Distance to bound Pallets in last truck0 1 2 3

Set I Deterministic 23 38 16 0 1328Randomized 30 43 4 0 1069

Set II Deterministic 41 60 9 1 1993Randomized 46 58 6 1 1784

Table 5 Results of the GRASP algorithm

Trucks Pallets Av time Pallets in lasttruck

Set IDeterministic 581 23525 004 1328Randomized 562 24446 57 1069

GRASP 562 24449 127 812

Set IIDeterministic 1194 38367 003 1993Randomized 1186 38960 42 1784

GRASP 1186 38936 116 1774

completes the comparison between the deterministic and therandomized versions of the constructive algorithm As wellas the distances to the bounds for the two algorithms thelast column shows the number of pallets in the last truckfor the instances in which both algorithms obtain the samenumber of trucks As stated in Section 33 for solutions withthe same number of trucks a solution with fewer palletsin the last truck is preferable because it has more emptyspace for accommodating last-minute orders If the numberof pallets in the last truck is very low the planner may decideto use a smaller vehicle or even not to send it and wait forfuture orders to fill the truck Table 4 shows that the overallreduction is 259 pallets for the instances in Set I and 209pallets for the instances in Set II

The results obtained by the GRASP algorithm when theimprovement phase described in Section 43 is added to therandomized constructive algorithm are shown in Table 5 Itcan be observed that the improvement moves are not able toreduce the number of trucks required Nevertheless there isa reduction in the number of pallets in the last truck muchmore significant in Set I (257 pallets) than in Set II (10 pallets)As Table 4 showed the numbers of trucks obtained by therandomized constructive algorithm are close to the values ofthe lower bounds leaving little room for improvement butreducing the number of pallets in the last truck is also ofinterest in the daily operation of the company

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 10: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

10 Mathematical Problems in Engineering

6 Conclusions

The combined problem of putting products onto pallets andloading the pallets into trucks has received less attention inthe literature than the standard Container Loading Problembut it is a real problem faced by many distribution companiesin their daily operations In this study we have taken thecharacteristics of the problemof a large logistics company as areference but it is common tomany other companies All theconstraints defining the problem especially those related toweight limits and weight distribution inside the trucks havebeen considered

Our approach has been to tackle the problem as a wholewithout decomposing it into two different phases for palletbuilding and truck loading The pallets are built taking intoaccount the characteristics of the positions in which theywill be loaded in the truck horizontal dimensions heightand weight looking for maximum utilization of the trucksAs the problem has many specific constraints we havedeveloped a constructive algorithm tailored to the problemwhich provides quite good solutions in very short computingtimes Nevertheless as a simple constructive procedure isunable to obtain high-quality solutions for all the instanceswe have developed a complete GRASP algorithm including arandomization strategy for the constructive process and someimprovement moves

The results obtained by the GRASP algorithm have beencompared with those obtained by some simple lower boundson two sets of real instances involving up to 44 trucksFor more than 90 of the instances the number of trucksobtained by the GRASP algorithm was the same as orincluded just onemore truck than the lower boundThis indi-cates that the GRASP algorithm produces solutions that areoptimal or very near to optimality for most of the instancesconsidered in the study with different characteristics

In our future work we plan to extend this study toother distribution companies to assess the suitability of theproposed algorithm for other related problems possibly withsome other specific constraints Another interesting line ofresearch would be to extend our algorithm to problemsinvolving pallets and trucks of different types

Competing Interests

The authors declare that they have no competing interests

Acknowledgments

This study has been partially supported by the Span-ish Ministry of Science and Technology DPI2011-24977and DPI2014-53665-P by Project PPII-2014-011-A Conse-jeria de Educacion y Ciencia Junta de Comunidades deCastilla-La Mancha and by Generalitat Valenciana PROM-ETEO2013049

References

[1] R Morabito S R Morales and J A Widmer ldquoLoadingoptimization of palletized products on trucksrdquo Transportation

Research Part E Logistics and Transportation Review vol 36 no4 pp 285ndash296 2000

[2] R Morabito and S Morales ldquoA simple and effective recursiveprocedure for the manufacturerrsquos pallet loading problemrdquo Jour-nal of the Operational Research Society vol 49 no 8 pp 819ndash828 1998

[3] S Takahara ldquoLoading problem in multiple containers andpallets using strategic searchmethodrdquo inModeling Decisions forArtificial Intelligence V Torra Y Narukawa and S MiyamotoEds vol 3558 of Lecture Notes in Computer Science pp 448ndash456 Springer 2005

[4] R W Haessler and F B Talbot ldquoLoad planning for shipmentsof low density productsrdquo European Journal of OperationalResearch vol 44 no 2 pp 289ndash299 1990

[5] A Moura and A Bortfeldt ldquoA two-stage packing problemprocedurerdquo International Transactions in Operational Research2016

[6] A Moura and J F Oliveira ldquoA GRASP approach to thecontainer-loading problemrdquo IEEE Intelligent Systems vol 20no 4 pp 50ndash57 2005

[7] E E Zachariadis C D Tarantilis and C T Kiranoudis ldquoThepallet-packing vehicle routing problemrdquoTransportation Sciencevol 46 no 3 pp 341ndash358 2012

[8] MAlonso R Alvarez-ValdesM Iori F Parreno and J TamaritldquoMathematical models for multi container loading problemsrdquoOmega 2016

[9] A Bortfeldt and G Wascher ldquoConstraints in containerloadingmdasha state-of-the-art reviewrdquo European Journal of Oper-ational Research vol 229 no 1 pp 1ndash20 2013

[10] H Gehring and A Bortfeldt ldquoA genetic algorithm for solvingthe container loading problemrdquo International Transactions inOperational Research vol 4 no 5-6 pp 401ndash418 1997

[11] A Bortfeldt H Gehring and D Mack ldquoA parallel tabu searchalgorithm for solving the container loading problemrdquo ParallelComputing vol 29 no 5 pp 641ndash662 2003

[12] J Terno G Scheithauer U Sommerweiszlig and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[13] J Egeblad C Garavelli S Lisi and D Pisinger ldquoHeuristics forcontainer loading of furniturerdquo European Journal of OperationalResearch vol 200 no 3 pp 881ndash892 2010

[14] E E Bischoff and M D Marriott ldquoA comparative evaluationof heuristics for container loadingrdquo European Journal of Opera-tional Research vol 44 no 2 pp 267ndash276 1990

[15] A Bortfeldt andHGehring ldquoAhybrid genetic algorithm for thecontainer loading problemrdquo European Journal of OperationalResearch vol 131 no 1 pp 143ndash161 2001

[16] A Lim H Ma C Qiu and W Zhu ldquoThe single containerloading problem with axle weight constraintsrdquo InternationalJournal of Production Economics vol 144 no 1 pp 358ndash3692013

[17] E E Bischoff and M S W Ratcliff ldquoIssues in the developmentof approaches to container loadingrdquo Omega vol 23 no 4 pp377ndash390 1995

[18] J Terno G Scheithauer U Sommerweiss and J RiehmeldquoAn efficient approach for the multi-pallet loading problemrdquoEuropean Journal of Operational Research vol 123 no 2 pp372ndash381 2000

[19] L Junqueira R Morabito and D Sato Yamashita ldquoThree-dimensional container loading models with cargo stability and

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 11: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Mathematical Problems in Engineering 11

load bearing constraintsrdquo Computers and Operations Researchvol 39 no 1 pp 74ndash85 2012

[20] M T Alonso R Alvarez-Valdes J M Tamarit and F ParrenoldquoA reactive GRASP algorithm for the container loading problemwith load-bearing constraintsrdquo European Journal of IndustrialEngineering vol 8 no 5 pp 669ndash694 2014

[21] A Ramos J F Oliveira and M P Lopes ldquoA physical packingsequence algorithm for the container loading problem withstatic mechanical equilibrium conditionsrdquo International Trans-actions in Operational Research vol 23 no 1-2 pp 215ndash2382016

[22] O C B De Araujo and V A Armentano ldquoA multi-start ran-dom constructive heuristic for the container loading problemrdquoPesquisa Operacional vol 27 no 2 pp 311ndash331 2007

[23] T Fanslau and A Bortfeldt ldquoA tree search algorithm forsolving the container loading problemrdquo INFORMS Journal onComputing vol 22 no 2 pp 222ndash235 2010

[24] A G Ramos J F Oliveira J F Goncalves and M P LopesldquoDynamic stability metrics for the container loading problemrdquoTransportation Research Part C Emerging Technologies vol 60pp 480ndash497 2015

[25] M Iori J-J Salazar-Gonzalez and D Vigo ldquoAn exact approachfor the vehicle routing problem with two-dimensional loadingconstraintsrdquo Transportation Science vol 41 no 2 pp 253ndash2642007

[26] A Bortfeldt ldquoA hybrid algorithm for the capacitated vehiclerouting problem with three-dimensional loading constraintsrdquoComputers and Operations Research vol 39 no 9 pp 2248ndash2257 2012

[27] L Junqueira J F Oliveira M A Carravilla and R MorabitoldquoAn optimization model for the vehicle routing problem withpractical three-dimensional loading constraintsrdquo InternationalTransactions inOperational Research vol 20 no 5 pp 645ndash6662013

[28] S Ceschia A Schaerf and T Stutzle ldquoLocal search techniquesfor a routing-packing problemrdquo Computers and IndustrialEngineering vol 66 no 4 pp 1138ndash1149 2013

[29] Y Tao and F Wang ldquoAn effective tabu search approach withimproved loading algorithms for the 3L-CVRPrdquo Computers ampOperations Research vol 55 pp 127ndash140 2015

[30] L Junqueira and RMorabito ldquoHeuristic algorithms for a three-dimensional loading capacitated vehicle routing problem in acarrierrdquo Computers and Industrial Engineering vol 88 pp 110ndash130 2015

[31] K F Doerner G Fuellerer R F Hartl M Gronalt and M IorildquoMetaheuristics for the vehicle routing problem with loadingconstraintsrdquo Networks vol 49 no 4 pp 294ndash307 2007

[32] H Pollaris K Braekers A Caris G Janssens and S LimbourgldquoCapacitated vehicle routing problem with sequence-basedpallet loading and axle weight constraintsrdquo EURO Journal onTransportation and Logistics 2014

[33] M Iori and S Martello ldquoRouting problems with loadingconstraintsrdquo TOP vol 18 no 1 pp 4ndash27 2010

[34] M Iori and S Martello ldquoAn annotated bibliography of com-bined routing and loading problemsrdquo Yugoslav Journal ofOperations Research vol 23 no 3 pp 311ndash326 2013

[35] H Pollaris K Braekers A Caris G K Janssens and SLimbourg ldquoVehicle routing problems with loading constraintsstate-of-the-art and future directionsrdquoOR Spectrum vol 37 no2 pp 297ndash330 2015

[36] SCANIAApril 2016 httpsbodybuilderhomepagescaniacom

[37] M N Arenales A C Cherri D N Nascimento and A ViannaldquoA new mathematical model for the cutting stockleftoverproblemrdquoPesquisaOperacional vol 35 no 3 pp 509ndash522 2015

[38] R Andrade E G Birgin and R Morabito ldquoTwo-stage two-dimensional guillotine cutting stock problems with usableleftoverrdquo International Transactions in Operational Researchvol 23 no 1-2 pp 121ndash145 2016

[39] G Wascher H Hauszligner and H Schumann ldquoAn improvedtypology of cutting and packing problemsrdquo European Journalof Operational Research vol 183 no 3 pp 1109ndash1130 2007

[40] M G C Resende and R F Werneck ldquoA hybrid heuristic for thep-median problemrdquo Journal of Heuristics vol 10 no 1 pp 59ndash88 2004

[41] M Prais and C C Ribeiro ldquoReactive grasp an application toa matrix decomposition problem in tdma traffic assignmentrdquoINFORMS Journal on Computing vol 12 no 3 pp 164ndash1762000

[42] R Marti and J Moreno-Vega ldquoMetodos multiarranquerdquoInteligencia Artificial vol 19 no 2 pp 49ndash60 2003

[43] ORTEC February 2016 httporteccom

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 12: Research Article Algorithms for Pallet Building and Truck ...downloads.hindawi.com/journals/mpe/2016/3264214.pdf · pallet. e quantity of layers per product and day is = / , whereas

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of