• Keine Ergebnisse gefunden

ContentslistsavailableatScienceDirect

European Journal of Operational Research

journalhomepage:www.elsevier.com/locate/ejor

Production,ManufacturingandLogistics

Solving the pickup and delivery problem with three-dimensional loading constraints and reloading ban

DirkMännel, AndreasBortfeldt

OttovonGuerickeUniversity,Universitätsplatz2,39106Magdeburg,Germany

a rticl e info

Articlehistory:

Received23August2016 Accepted18May2017 Available online 25 May 2017 Keywords:

Transportation Vehiclerouting Packing Pickupanddelivery

a bs tra ct

Inthispaper,weextendtheclassicalPickupandDeliveryProblem(PDP)toanintegratedroutingand three-dimensionalloadingproblem,calledPDPwiththree-dimensionalloadingconstraints(3L-PDP).We aregivenasetofrequestsandahomogeneousfleetofvehicles.Asetofroutesofminimumtotallength hastobedeterminedsuchthateachrequestistransportedfromaloadingsitetothecorresponding unloadingsite.Inthe3L-PDP,eachrequestisgivenassetofrectangularboxesandthevehiclecapacity isreplacedbya3Dloadingspace.

Thispaperisthesecondoneinaseriesofarticleson3L-PDP.Asinthefirstpaperwearedealingwith constraintswhichguaranteethatnoreloadingeffortwilloccur.Herethefocusislaidonthereloading ban,apackingconstraintthatensuresidenticalplacementsofsameboxesindifferentpackingplans.The reloadingbanallowsforbettersolutionsintermsoftraveldistancethanaroutingconstraintthatwas usedinthefirstpapertoprecludeanyreloadingeffort.Toimplementthispackingconstraintanewtype ofpackingprocedureisneededthatiscapabletogenerateaseriesofinterrelatedpackingplansperroute.

Thispackingprocedure,designedastreesearchalgorithm,andthecorrespondingconcept ofpacking checksisthemaincontributionofthepaperathand.Thepackingprocedureandalargeneighborhood searchprocedureforroutingformahybridalgorithmforthe3L-PDP.Computationalexperimentswere performedusing543L-PDPbenchmarkinstances.

© 2017ElsevierB.V.Allrightsreserved.

1.Introduction

Thispaperisthesecondoneinaseriesofpapersonthepickup anddeliveryproblemwith3Dloadingconstraints(3L-PDP).It con-tinuesthepaperbyMännelandBortfeldt(2016),henceforthcalled firstpaper.Weextendthe classicalPDPtoanintegratedrouting and3Dloadingproblem.ThePDPisdefinedinParragh,Doerner, andHartl(2008);averyrecentsurveyonroutingproblemswith loading constraints can be foundin Pollaris et al. (2015). Apart fromthatwereferthereadertotheliteraturereviewgiveninthe firstpaper.

The3L-PDPcanroughlybedescribedasfollows.Wearegiven a setof requestsand ahomogeneous fleet of vehicles.Asetof routes,eachstartingandendingatthesingledepot,hastobe de-terminedsuchthateachrequestistransportedfromaloadingsite tothecorresponding unloadingsiteandthe totaltraveldistance isminimized.Inthe3L-PDP,eachrequestisgivenasasetof3D rectangularitems(boxes)andthe vehiclecapacityisreplacedby

Correspondingauthor.

E-mailaddresses:dirk.maennel@gmx.de(D.Männel),andreas.bortfeldt@ovgu.de (A.Bortfeldt).

a3Dloadingspace.Eachroutehastobecompletedbyaseriesof packingplans,whereapackingplanrepresentsanarrangementof boxesafterhavingvisitedapickupordeliverynode.Besidesbasic geometricalconstraints(e.g.nooverlappingboxes)specificpacking constraintsasusualinVRPwith3Dloadingconstraints(e.g. sup-portcondition)aretobesatisfied.

Ourmainconcernin theproblemformulationof3L-PDPisto guaranteethatin3L-PDPsolutionsanyreloadingeffortcanbe ex-cluded. Thatis, the boxesshouldnotbe moved after theywere loadedandbeforetheyareunloaded.Inthe firstpapernecessary andsufficientconditionstoavoidanyreloadingefforthavebeen discussed.Theresultscanbesummarizedasfollows:

– Itisassumedthatboxesareloadedandunloadedattherearof vehicles.Furthermore,boxeshavetobeloadedandunloadedby puremovementsinlengthdirectionasusual inrouting prob-lemswith3Dloadingconstraints(seeGendreauetal.,2006).

– First,wemustrequiretherequestsequence(RS)constraintat deliveryandpickuppointsofaroute.Atadeliverypoint,the RSconstraintsaysthatbetweenaboxAtobeunloadedandthe rearthereisnoboxBtobeunloadedlater.Moreover,aboxBto beunloadedlatermustnotlieaboveboxA.Atapickuppoint, theRSconstraintrequiresthatbetweenaboxAjustloadedand http://dx.doi.org/10.1016/j.ejor.2017.05.034

0377-2217/© 2017ElsevierB.V.Allrightsreserved.

atadeliveryorpickuppoint,boxescouldnotbeunloadedor loadedby a puremovementin length directionandwithout movingotherboxes.Foradeliverypoint,placementsofother boxeswouldhavetobechangedtemporarilyinordertounload boxeswiththisdestinationbypurelengthshifts.Forapickup point,placementsofotherboxesmustbechangedtemporarily toreachthefinalpositionsfortheloadedboxesbypurelength movements.

– However,theRSconstraintisnotsufficienttoavoidany reload-ingeffort.Inaroutefor3L-PDP,generallyboxesofarequestA aretransportedfor apartoftheroutetogetherwithboxesof arequestBandforanotherparttogetherwithboxesofa re-questC(andnolongerwithboxesofB)etc.Packingplanshave tobeprovidedforallpartsoftherouteinwhichdifferentsets ofboxesaretransported.Ifdifferentpackingplansareprovided fortheboxesofarequestA,becausetheboxesarefirsttobe packedwiththeboxesofrequestBandthenwiththeboxesof requestC,theplacementsoftheboxesofAmaychange.This wouldnotnecessarilyviolaterequiredpackingconstraints.Thus therewouldexistfeasible3L-PDPsolutionsincludingboxesthat aretobereloadedafterloadingandbeforeunloading;an elab-oratedexampleisshowninthefirstpaper.

– Toruleoutanyreloadingeffort,wehave tospecify anextra constraint.Therearetwo optionstodoso,i.e. wecan intro-duceanadditionalroutingconstraintand,alternatively,wecan defineapackingconstraintthatrulesoutanyreloadingeffort.

– The mentionedrouting constraint, called independent partial routes(IPR) constraint, rules outany reloading effort by re-strictingtheshapeoftheroutes,i.e.inanimplicitfashion.This isdonebyso-called3L-PDProutingpatterns,whichensurethat theboxesofanyrequestarenotstoredtogetherwithboxesof differentrequestsindifferentpartsofaroute.

– The additional packing constraint, termed reloading ban, re-quiresthat the placement ofany box,includingthe position ofareferencecorner(orofthegeometricalmidpoint)andthe spatialorientationofthebox,mustnotundergoa(permanent) changeaftertheboxhasbeenloadedandbeforetheboxis un-loaded.The reloadingbanistailoredtothegeneral shapeof 3L-PDProutes:itforbidsexplicitlyachange ofplacements of boxesofarequestAiftheyareloadedtogetherwithboxesof arequestCaftertheyhavebeenloadedtogetherwithboxesof arequestB.

Inthefirstpaperwehaveintroducedaspectrumoffive3L-PDP variants(seeTable1).TheRSconstraintatpickuppoints(denoted by(C1))isalwaysrequired.Thevariantsarespecifiedbymeansof theRSconstraintfordeliverypoints(C2),thereloadingban(C3) andthe IPRconstraint (C4).For eachvariant andconstraintthe entryis“y” iftheconstraintistobemetand“n” ifnot.IftheIPR conditionandtheRSconstraintatpickuppointsarerequired,RS constraintat deliverypointsandreloadingbanareautomatically satisfied;thisismarkedbyentry“a”.

Weconsidervariants4and5asthe main3L-PDPvariants.In bothvariantsanyreloadingeffortisexcludedbydifferentmeans,

Moreover,theproblemvariants1–3mightalsohavesome prac-ticalrelevance.Ifpickupanddeliverytransportsaretobe orga-nized in rural areas with great distances between customers it couldbeadvantageoustoacceptsomereloadingeffortandtosave alargetraveldistanceinreturn(seeXu,Chen,Rajagopal,& Aruna-puram,2003).

The different 3L-PDP variants are illustrated by some (two-dimensional) singleroute examples in Fig. 1. The nodenumber 0denotesthedepot whilePiandDi (i=1,… ,4)standfor the pickupand delivery nodes.For all nodes the stateof the load-ingspace isshownafter the loading/unloadingoperation atthe correspondingnodehastakenplace(viewfromabove).Inall ex-amplesthedriver’scabinisonleftandthe loadingdooronthe rightsideof theloading space.Inthe examplefor variant1for unloadingthe boxI11 atnodeD1 itisnecessary tounloadthe boxI21first;furthermoretheboxI21isreloadedatanother posi-tiontoallowtheloadingoftheboxesI31andI32atthefollowing nodeP3.SoneithertheRSunloadingconstraint(C2)nor Reload-ingbanconstraint(C3)issatisfied here.Intheexamplefor vari-ant2theRSunloadingconstraint(C2)issatisfiedatall delivery nodesbutReloadingbanconstraint(C3)isnotsatisfied because theplacementofboxI12ischangedpermanentlyatP3toallow theloadingofboxI31.Intheexampleforvariant3forunloading theboxI11atnodeD1againitisnecessarytounloadtheboxI21 first(likeinthe firstexample),butnowthe boxI21isreloaded at the same position,so Reloadingbanconstraint (C3) is satis-fiedandonlyRSunloadingconstraint(C2)isunsatisfiedhere.In theexamplefor variant4bothRSunloadingconstraint(C2)and Reloadingbanconstraint(C3)aresatisfied,especiallytheboxesI11 andI12hold thesameplacements atnodes P2andP3 (interre-latedpackingplans). In the lastexample for variant 5the spe-cial structureof a routewhich compliesthe IPR constraint(C4) isshown.Firstsome pickuppointsarevisitedandthenall cor-responding deliverypoints followin inverse order.If one deliv-erynodehasbeenvisitedafurtherpickupisonlyallowedwhen all boxesareunloaded before.In the examplethissituation oc-curswhenthe vehicleleavesnodeD3andgoes topickupnode P4.

Apreciseformulationofthe 3L-PDP(includingallabove vari-ants)withconstraints(C1)–(C10)canbefoundinthefirstpaper.

Forconvenienceashortdescriptionofconstraints(C5)–(C10),not mentionedbefore,isgiveninTable2.

Inthe firstpaperthe focuswas laidonproblemvariants1,2 and5.Inthesecondpaperwedealwithvariants3and4.Invariant 5anyreloadingeffortisexcludedbystronglyrestrictingthe admit-tedroutesandthiswillhaveanegativeimpactontraveldistances.

Inthe3L-PDPvariant4thereisnorestrictionofvehicleroutes. In-steadthereloadingban(C3)isinchargetoprecludeanyreloading effortandbettertraveldistancescanbe expected.Toimplement thispackingconstraintanewtypeofpackingprocedureisneeded thatiscapabletogeneratea seriesof interrelatedpackingplans perroute(seeaboveexample).Thedesignofthispacking proce-dureandthecorrespondingconceptofpackingchecksisthemain contributionofthepaperathand.Inthe3L-PDPvariant3theRS

Fig. 1. Examples for 3L-PDP variants.

Table 2

Further constraints of 3L-PDP.

Constraint Name/shortdescription

(C5) Weightconstraint:stipulatesaweightlimitoftheboxesloaded inavehicle.

(C6) Orientationconstraint:fixestheheightoftheboxes;horizontal 90°turnsareallowed.

(C7) Supportconstraint:stipulatessupportedpercentageofbasearea ofboxes.

(C8) Stackingconstraint:requiresthatfragileboxesmayonlybear otherfragileboxes.

(C9) Route length constraint: specifies a maximum allowed route length.

(C10) Route number constraint: specifies a maximum number of routes.

constraintfordeliverypoints(C2)isnotrequiredandthiswilllead toacertainreloadingeffortbuttoevenbettertraveldistancesthan invariant4.

Therestofthepaperisorganizedasfollows:inSection2,we proposeahybridalgorithmforsolvingthe3L-PDPwithreloading ban.InSection3numericalresultsarepresentedandinSection4 the avoidance of reloading effort is considered from a more generalperspective.ConclusionsaredrawninSection5.

2.Ahybridalgorithmforthe3L-PDPwithreloadingban

Ourhybridalgorithmforthe3L-PDPwithreloadingbanis com-posedofaprocedureforroutingandoneforpacking.Therouting procedureisderivedfromtheadaptivelargeneighborhoodsearch (LNS)heuristicforsolvingthePDPwithtimewindowsbyRopke andPisinger (2006).In fact weuse the sameroutingprocedure asinthefirstpaper.Thetreesearch(TRS)algorithmbyBortfeldt (2012)wasessentiallyfurtherdeveloped(forthispaper)tospecify apackingprocedurethatisabletoobservethereloadingban.

Withineachiterationofthe LNS procedurefor routing,a set ofrequestsisremovedfromthecurrentsolution(scurr)andthen reinserted togetthe nextsolution(snext). Afterwards,itistested whether snext is accepted as new current solution. Otherwise, the previouscurrent solutionscurr iskeptfor the next iteration.

Packing checks are primarily carried out in insertionheuristics by which new solutions are generated but are also performed within acceptance checks.In the followingsections,the concept of packing checks is established and the packing procedure is describedindetail.

2.1. Packingchecks

A3L-PDPsolutionhastoprovidefeasiblepackingplansforeach routeandeachvisitedsiteperroute.Theplanforasitemust in-cludeplacementsofallboxesalreadyloadedandnotyetunloaded aftervisitingthissite.Inordertoreducetheeffortspentfor pack-ingchecks,weapplyasimilarmethodologyasinthefirstpaper tothe3L-PDPvariants3and4withreloadingban.Weproceedin foursteps:

(1)Additional constraints are formulated that are in general strongerthantheRSconstraints(C1)and(C2).Thesearethe cumulative requestsequence constraints for pickup points (CRS-p)andfordeliverypoints(CRS-dj)(j=1,2).

(2)It is shown that feasible packing plans for all sites of a routecanbederivedfromfeasiblepackingplansforselected pickuppointsofthisrouteifthelatterplansmeetthe addi-tional(aswellasoriginal)constraints.Thisisdonebymeans ofthePropositions1and2.Thus,thesearchbecomesless costlyasindependentpackingplansaretobeprovidedonly forfewsitesofaroute.

Fig.2.Packingchecksfor3L-PDPvariants3and4.

(3)Then itwill be discussedunder which circumstances and for whichproblemvariantsthesearch spaceisreducedby theadditionalconstraints.ForthispurposeProposition3is proven.

(4)Finally, somedifferencesbetween3L-PDPvariants3and4 regardingreloadingeffortareexplained.

Wedefineasequence ofopenpickup points(SOPP)asa se-quenceofpickuppointswithinarouteofa3L-PDPsolutionwith followingcharacteristics:(i)thelastpointofthesequenceis fol-lowedbyadeliverypointintheroute;(ii)thesequencecontains exactlyallpickuppointsoftheroutewhosedeliverypointslie be-hindthelastsequencepoint(seeFig.2forexamples).

Letm2(m2≥1)bethenumberofconsecutivepickuppoints ly-ingattheendofthesequence.Letm1(m10)bethenumberof pickuppointsthatareseparatedfromthelastm2pickuppointsby atleastonedeliverypoint.Thenthe SOPPcanbe denotedasPi, i=1,… ,m1,m1+1,… ,m1+m2(i.e.Pm1+m2isthelastpoint).

WesaythatapackingplanforpickuppointPm1+m2 ofaSOPP satisfies the cumulative request sequence constraint for pickup points(CRS-p)ifthe followingconditions hold:(i)thereare no boxesofarequestj(loadedatpickuppointPj)betweenaboxof requesti andthe rearof the vehicle;(ii)there arenoboxes of requestjaboveaboxofrequesti(i,j=1,… ,m1+m2,j<i).As showninthefirstpaperthefollowingpropositionholds.

Proposition1.Let afeasible planfor pickup pointPm1+m2 of a SOPPexistthatmeetstheconstraints(C6)–(C8)andobservesthe CRS-pconstraint.Thenfeasiblepackingplansobservingconstraints (C1)and(C6)–(C8)doalsoexistforpickuppointsPi(i=m1+1, ,m1+m21).

Inthefirstpaper,aroutingconstraintwasintroducedinorder tobeabletoderivefeasiblepackingplansforthedeliverypoints ofaroute.Inthepaperathandthesamepurposeisachievedby thefollowingadditionalpackingconstraints.

LetDibethecorrespondingdeliverypointsofthepickuppoints Pi, i=1, … , m1+m2, of a SOPP. We say that a packing plan forpickuppointPm1+m2satisfiesthecumulativerequestsequence constraintfordeliverypoints(CRS-d1)ifthefollowingconditions hold:(i)ifDiliesbeforeDj,theboxesofrequestjmustnotlie be-tweenaboxofrequestiandthe rearofthevehicle(i,j=1,… , m1+m2);(ii)underthesameassumption,boxesofrequestjmust

notlieaboveaboxofrequest i(i, j=1,… ,m1+m2). The con-straint(CRS-d2)isdefinedsimilarly,butonlythesecondcondition (ii)isrequired.

Proposition2.LetaSOPPandapackingplanforthelastpickup pointPm1+m2begiven.

(i)Ifthe packing planisfeasible,meetsthe constraints (C1), (C6)–(C8) and satisfies the CRS-d1 constraint, then feasi-blepackingplans,observingtheconstraints(C2)and(C6)–

(C8),doexistfortheconsecutivem3deliverypointsbehind Pm1+m2(m31).

(ii)IfconstraintCRS-d2issubstitutedforCRS-d1,thenfeasible packingplans,observingconstraints (C6)–(C8),doexistfor theconsecutivem3deliverypointsbehindPm1+m2(m31).

Proof.(i)DuetoconstraintCRS-d1,theboxesforthe first deliv-erypointbehindPm1+m2,sayDi1,areinunloadingpositioninthe packingplanforPm1+m2.IftheboxesforDi1areremoved,a pack-ingplanforDi1 results.Sincethe planforPm1+m2 observes sup-portconstraint(C7)andtheremovedboxesdonotsupportboxes ofotherrequests,theplanforDi1alsomeets(C7).Constraints(C6) and(C8)aswellasfeasibilityconditions(FP1)–(FP3)hold,asthey weremetinplanPm1+m2.Theboxesfor thenextdelivery point Di2 arein unloadingposition dueto constraintCRS-d1, i.e. the planforDi1alsomeetsconstraint(C2).Forthefollowingdelivery points,packingplanscanbederivedinasimilarmanner.(ii) Feasi-blepackingplans,observingconstraints(C6)–(C8),forconsecutive deliverypointsbehindPm1+m2canbederivedasbefore.In particu-lar,supportconstraint(C7)holdsfortheseplansduetoCRS-d2.

TheconstraintsCRS-dj(j=1,2)areformulatedforalldelivery pointsthatcorrespondtopickuppointsPi,i=1,… ,m1+m2,ofa givenSOPP.However,Proposition2onlyclaimsthatfeasible pack-ingplanscanbederivedfortheconsecutivedeliverypointsbehind Pm1+m2.Nevertheless,feasiblepackingplanscanbederivedforall deliverypointsofarouteifProposition2isappliedtoallSOPPs ofaroute.Thesameholdsforthe pickuppointsofaroutewith regardtoProposition1.

In3L-PDPvariants3and4,thereloadingban(C3)isrequired.

Itforbidsthatdifferentplacementsofsameboxesoccurinpacking plansfordifferentsitesofaroute.Wecanstatethatifthe reload-ingbanholdsforall packingplans forthe lastpointsof SOPPs, thenitholdsforthederivedpackingplansforallotherpickupand

deliverypoints,too.Therefore,theaboveresultsshowthatfor 3L-PDPvariants3and4itissufficienttoconstruct feasiblepacking plans forthe lastpickuppointsof allsequencesof openpickup pointsinagivenroutethatmeetthereloadingban.Feasible pack-ingplansthatobservetheRSconstraints(C1)and(C2)(incaseof variant4)andconstraints (C6)–(C8)aswellasthereloadingban can thenbe derivedfor all other pickuppointsandall delivery pointsofthisroute.Ofcourse,thisclaimholdsonlyif– for vari-ant3– theconstraintsCRS-pandCRS-d2aremetintheplansfor thelastpickuppointsofSOPPs;forvariant4,theconstraintsCRS-p andCRS-d1mustbeobservedintheseplans.

Theprocedureofpackingchecksforaroutein3L-PDPvariants 3and4isillustratedbyanexampleinFig.2.

As said abovewe want todiscussthe questionwhether the additionalconstraintsCRS-pandCRS-dj(j=1,2)willreducethe searchspace,i.e.thesetofallfeasiblesolutions.Forthispurpose thefollowingpropositionisshown.

Proposition3.Let aSOPPwithm1+m2 pointsbegivenandlet thereloadingban(C3)berequired.

(i)LetfeasiblepackingplansexistforallpickuppointsPiofthe SOPP(i=1,… ,m1+m2).Theplansshouldmeetconstraint (C1).ThenthepackingplanforpointPm1+m2observes con-straintCRS-p.

(ii)Let feasible packing plans exist for all delivery pointsDi thatcorrespondtopickuppointsPiofthe SOPP(i=1,… , m1+m2).Theplans shouldmeetconstraint(C2). Thenthe packingplanforpoint Pm1+m2 observes constraintCRS-d1.

Iftheplans forthedeliverypointsobeytheconditionthat anyboxtobeunloadeddoesnotlieunderaboxtobe un-loadedlaterthenthe packingplanfor Pm1+m2 observesat leastconstraintCRS-d2.

Proof.(i) Suppose constraint CRS-p1 is violated in the packing planof lastpickuppoint Pm1+m2. Thentwo requestsand corre-spondingpickuppointsiandj(1j<im1+m2)mustexistso thatthereisaboxofrequestjthatliesbetweenaboxofrequesti andtherearorabovethatbox.Duetothereloadingbantheboxof requestiwouldnotbeinunloadingpositionwithinpackingplan forpickuppointi,contradictorytoconstraint(C1).

(ii)ForalldeliverypointsDi(i=1,… ,m1+m2)the boxesto beunloadedareinunloadingpositiondueto(C2).Thereloading banguaranteesthattheplacementsoftheseboxesarethesamein thepackingplanforpickuppointPm1+m2.Thus,constraintCRS-d1 – beingjustthesumofthe(C2)requirementsformultiple deliv-erypoints– isobservedintheplanforPm1+m2.Thelastassertion resultsinananalogmanner.

Forproblemvariants3and4thereloadingban(C3)isrequired.

Hence,itcanbeconcludedthattheadditionalconstraintsinfact donotreducethesearchspace.Thesameappliesforproblem vari-ant5(dealtwithinthefirstpaperaswellasproblemvariants1 and2)sinceinthisvarianttheIPRconstraint(C4)isrequiredthat impliesthereloadingban.Itcanbeeasilyseenthatthereloading ban(C3)isanindispensableassumptioninProposition3.Hence, for problemvariants1and2the additionalconstraints causein generalareductionofthesearchspacesinceconstraint(C3)isnot assumed.

In3L-PDP variant 4,there isno reloadingeffortat all,while in variant 3some reloadingeffortcan occur atdelivery sites.If a vehiclearrives ata delivery site, all boxesof the correspond-ingrequest,sayA,aretobeunloaded.SinceRSconstraint(C2)is notrequired,someboxesofrequestsB, C, etc.may standinthe way oftheA-boxes.Thesearecalledblockingboxes.Weassume thatblockingboxeshavetobetemporarilyunloaded(andblocking boxesofblockingboxes,etc.).BecauseofconstraintCRS-d2, block-ingboxescannotoccuraboveboxestobeunloaded.Forthis

rea-son,temporarilyunloadedboxescanafterwardsbeloadedagainso thattheytaketheiroriginalplacements.

Thereisnosignificantdifferencebetweenpackingchecks per-formed in insertion heuristics and those performed in accep-tance checks, i.e. in any case for a given route the necessary feasible packingplans for lastpickup pointsofSOPPs aretobe provided.

2.2. Packingprocedure

Thepackingprocedureshouldbeabletoimplementthe reload-ingban(C3).Packingplansthataregeneratedforthelastpickup pointsofSOPPsinarouteneedtobeinterrelatediftheSOPPshave acommonpickuppoint.Thatis,ifthesameboxesarestowedin morethanoneofthesepackingplans,theirplacementsmust co-incide.Toensurethis,thepackingplansforaroutewithmultiple SOPPsaregeneratedatonce,i.e.bymeansofone andthe same depthfirstsearch.

For the depth first search, a route is organized in multiple pickupanddeliverysequences(PDS).APDScontainsthelastm2 (m2 1)consecutivepickuppointsof aSOPP andthe following m3 (m3 1)consecutivedeliverypoints.Arouteconsistsof sev-eralPDSsandapackingplanisneededforeachofthesePDS,i.e.

foritslastpickuppoint.Fig.3showsthePDSrelatedtotheSOPPs inFig.2.

Thedepthfirstsearchiscarriedoutbymeansoftherecursive procedureextend_packing_plan(seeAlgorithm1)andthe subordi-natedprocedureinitialize_packing_state(seeAlgorithm2).

The PDSs areindexedby ipdsandthe set freeBoxes includes theboxesofaPDSthatarestillavailable;ipdsissettozeroand freeBoxesissetemptybeforethefirstcalloftherecursive proce-dure. The setpotentialPlacementscomprises potentialplacements ofboxesinfreeBoxes.ImplementedplacementsforthecurrentPDS arecollectedinthesetPDSPlan,whilethecompletesolutionwith theplacementsofallPDSsisheldinthesettotalPlan.

In procedureextend_packing_plan it ischecked firstwhether the setfreeBoxes isempty, i.e.whether thepackingplanfor the current PDSiscomplete.In thiscase (and ifipds>0)thisplan isincorporatedinthecompletesolutiontotalPlan.Theplacements of boxestobe unloadedatdelivery sitesof thecurrentPDSare markedintotalPlan.

Afterwards index ipds is incremented and procedure initial-ize_packing_stateiscalledforthenewPDS.Thecompletesolution totalPlanisonlyinitializedemptyforipds=1.ThesetfreeBoxesis reinitializedandthenincludestheboxesthatbelongtothePDS.

PotentialplacementsforthewholesetofboxesofcurrentPDSin thelowerleftfrontcorneroftheloadingspaceL×W×H(atthe driver’scabin)aregenerated.

Thenallplacements,alreadyput intotalPlanandnotmarked asunloaded,arereinsertedinthenewPDSsolutionPDSPlan.Each timeanother“old” placementisreinserted,theset potentialPlace-mentsis updatedtakinginto accountall already inserted place-ments.Afterthefor-loopisexecutedthecurrentsolutionPDSPlan is filled withall placements of formerPDSs that remain place-mentsof the presentPDS. As these placements arecopiedit is ensuredthatplacementsofsameboxesindifferentPDScoincide.

AtthesametimethesetpotentialPlacementsattheendcomprises onlysuchplacements whichare compatiblewithall these “old”

placements.

The current instance of procedure extend_packing_plan is abortedifthereisatleastonefreeboxwithoutapotential place-ment,i.e.ifacompletesolutioncannolongerbeachievedonthis search path.Candidates forthe nextplacementfor PDSipdsare selectedfromlistpotentialPlacementsandareprovidedinthelist currentPlacements.Alltheseplacementsarethentriedalternatively.

Foreachplacement,thecurrentPDSsolution,thesetoffreeboxes

Fig.3.ExamplesofPDS.

Algorithm1Packingprocedure1,extend_packing_plan.

extend_packing_plan(inout:ipds,freeBoxes,potentialPlacements,PDSPlan,totalPlan) ifnumberofprocedurecalls > maxApCallsthenabortpackingcheckendif if freeBoxes = then

if ipds > 0 then

totalPlan: = totalPlan PDSPlan

mark all placements in totalPlan as unloaded whose boxes belong to requests with delivery sites in PDS(ipds)

endif

ipds:=ipds+1 //nextPDS

iftotalPlancompletethenabortpackingcheckendif

initialize_packing_state(ipds,freeBoxes,potentialPlacements,PDSPlan,totalPlan) Endif

ifthereisatleastoneboxinfreeBoxes(ipds)withoutplacementinpotentialPlacementsthenreturnendif providelistcurrentPlacementswithpotentialplacementsthatarecurrentlytobetried

fori:=1to|currentPlacements|do

PDSPlan’:=PDSPlan{currentPlacements(i)} //addplacementtoPDS-plan freeBoxes’:=freeBoxes\{currentPlacements(i).box} //updatefreeboxes potentialPlacements’:=update(potentialPlacements) //updatepotentialplacements extend_packing_plan(ipds,PDSPlan’,freeBoxes’,potentialPlacements’,totalPlan) //recursivecall endfor

end.

Algorithm2Packingprocedure2,initialize_packing_state.

initialize_packing_state(in:ipds,out:freeBoxes,potentialPlacements,PDSPlan,inout:totalPlan) if ipds =1 then totalPlan = endif

freeBoxes: = {boxes to be loaded in PDS ipds}

initialize set potentialPlacements for box set freeBoxes and empty loading space PDSPlan: = ∅

for all placements Pl in totalPlan in given loading order not marked as unloaded do PDSPlan: = PDSPlan ∪ {Pl}

potentialPlacements:=update(potentialPlacements) endfor

end.

andthesetofpotentialplacementsareupdatedaccordingly,before procedureextend_packing_planiscalledagain.Toupdatethelist potentialPlacements,allpotentialplacementsareremovedthatcan nolonger be implemented.Additional potentialreference points fornewplacementsaredeterminedasextremepoints(seeCrainic, Perboli,&Tadei,2008).

Theselectionofplacementscurrentlytobetriedamongall po-tentialplacementsisgovernedbytworules.Ontheonehand,itis ensuredthatavehicleisloadedfromthefronttotheback,from bottomtotopwithlowerpriority,andfromlefttorightwith low-estpriority.Hence,placements withsmallerx-coordinatesofthe referencecornerarepreferred,etc.Ontheotherhand,placements ofboxesarepreferredthatbelongtoearlierloadedrequestsand, therefore,havetobe stowednearertothe cabin.Theplacement selectioniscontrolledbythe integer parametersmaxBoxRankDiff andmaxRefPointswherehigherparametervaluesleadtoalarger setofcurrentlytriedplacements(seeBortfeldt,2012).

Potentialplacementsaregeneratedandupdatedinsuchaway thatthepackingplanforaPDS(i.e.forthelastpickuppointofthe correspondingSOPP)isfeasibleandobservesconstraints(C6)–(C8), CRS-pandCRS-d1(variant4)orCRS-d2(variant3).

Thepackingcheckforarouteisterminatedwhenthenumber of recursive callsof procedure extend_packing_plan exceeds the specifiedlimitmaxApCallsortotalPlaniscomplete, i.e.asolution containingplacementsforallboxestobeloadedandunloadedin agivenrouteisreached.

Acacheoftestedrequestsequences(routes)isusedto acceler-atethesearchasdescribedinthefirstpaper.

In the followingexample, givenfor the 2L-PDP,we illustrate howthepackingprocedureischeckingarouteandgenerating in-terrelatedpackingplans.InFig. 4therouteandthe itemstobe loadedandunloaded,theSOPPsandrelatedPDSsareshown.Two interrelatedpackingplansareneededforthelastpickuppointsof theSOPPs,namelyP2andP3.Thefirstpackingplanmustinclude theitemsofrequests1and2,thesecondplanhastocontainthe