Upload
lu-chen
View
214
Download
2
Embed Size (px)
Citation preview
Int. J. Production Economics 129 (2011) 147–156
Contents lists available at ScienceDirect
Int. J. Production Economics
0925-52
doi:10.1
n Corr
Tong Un
E-m
(A. Lang1 Te2 Te
journal homepage: www.elsevier.com/locate/ijpe
A tabu search algorithm for the relocation problem in a warehousing system
Lu Chen a,b,n, Andre Langevin b,1, Diane Riopel b,2
a School of Mechanical Engineering, Shanghai Jiao Tong University, Shanghai 200240, Chinab Departement de Mathematiques et de Genie Industriel, Ecole Polytechnique de Montreal and GERAD, Canada H3C 3A7
a r t i c l e i n f o
Article history:
Received 7 July 2008
Accepted 8 September 2010Available online 18 September 2010
Keywords:
Warehousing
Peak load
Relocation
Tabu search
Linear relaxation
73/$ - see front matter & 2010 Elsevier B.V. A
016/j.ijpe.2010.09.012
esponding author at: School of Mechanical
iversity, Shanghai 200240, China. Tel./fax: +
ail addresses: [email protected] (L. Chen), a
evin), [email protected] (D. Riopel).
l.: +1 514 340 4711x4511; fax: +1 514 340 4
l.: +1 514 340 4711x4982; fax: +1 514 340 4
a b s t r a c t
Relocation of items in a warehousing system is usually used when the handling machines become the
bottleneck. This paper addresses the optimization problem of relocation in a warehouse with dynamic
operating policy. An integer linear programming formulation is proposed. A two-stage heuristic method
is developed to generate an initial solution. A tabu search algorithm is proposed to improve the
solution. Two relocation policies are studied and their performances are compared.
& 2010 Elsevier B.V. All rights reserved.
1. Introduction
Warehouse storage assignment policies influence almost allkey performance indicators of a warehouse such as order pickingtime and cost, productivity, shipping and inventory accuracy andstorage density. The storage assignment problem consists inassigning incoming product items to storage locations in order toreduce material handling cost and improve space utilization. In adynamic warehousing environment, the material flow changesdynamically due to factors such as seasonality and short productlife cycles. Therefore, relocation of items may become necessaryto meet the fluctuating handling requirements imposed on thestorage/retrieval (S/R) machines (Gu et al., 2007).
Number of alternative storage assignment policies are used inpractice and are usually classified as dedicated storage, rando-mized storage, class-based dedicated storage and shared storage(Francis et al., 1992). Heskett (1963, 1964) describes the cube-per-order index (COI) policy. The results on COI-based policy andits optimality in different systems are discussed widely byMalmborg and Krishnakumar (1989) and Malmborg and Altassan(1998). Hausman et al. (1976) use continuous representation ofthe traveling distance and the turnover to quantify the reductionin crane travel times of the turnover-based assignment overrandom assignment. Graves et al. (1977) have developed optimal
ll rights reserved.
Engineering, Shanghai Jiao
86 21 34206782.
463
173
policies for turnover-based rules. The results have been extendedby Bozer and White (1984), who present some storage/retrievalmachine travel time models. Francis et al. (1992) show that incomparison to random storage, dedicated storage yields a reducedaverage travel time if equal number of storage locations isassumed. However, randomized storage requires less storagespace than does dedicated storage. Goetschalckx and Ratliff(1990) and Montulet et al. (1997) study the shared storage policybased on the duration-of-stay of each item. While these policiesassume a static warehousing environment, i.e., each item isassigned with a permanent storage location during the entireplanning horizon, they may not meet the throughput require-ments of a fluctuating demand pattern.
In this paper, the relocation problem is addressed in awarehousing system with dynamic storage operating in singlecommand mode. Dynamic storage allows items to be relocatedduring their stay in the warehouse. A relocation is defined as themovement of an item from one storage location to anotherstorage location. Those items to be stored or retrieved during peakperiods may be relocated closer to the input/output (I/O) point,thereby reducing the S/R machines’ travel time during theseperiods. A peak period is defined as an interval of time where thehandling machines have no enough time to process all theretrieval requests for customer orders and/or the storage requestsfor product replenishment. Decisions have to be made to selectthe items to be relocated as well as their destinations ofrelocation. The objective is twofold: (1) to minimize the totaltime of relocation; and (2) to satisfy the machines’ timeavailability for handling operations during each time period.
The paper is organized as follows. In Section 2, we give a briefreview of the previous work on relocation in dynamic storage.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156148
In Section 3, we present an integer programming formulation forthe relocation problem. In Section 4, a two-step constructionheuristic procedure is developed to obtain an initial solution. Atabu search algorithm is proposed and its components aredescribed in detail in Section 5. The results of computationalexperiments are reported in Section 6. Finally, in Section 7 wepresent our conclusions.
i
j
I /O I/O I/O I/O
ci
cj
Fig. 1. A typical layout of a warehouse.
2. Literature review
A comprehensive classification of warehouse managementproblems and a hierarchy of decision problems are provided byvan den Berg and Zijm (1999). Automated storage/retrievalsystems (AS/RS) are widely used in warehouses and distributioncenters. Literature related to the various decision problems inAS/RS design, such as storage assignment, batching, dwell-pointlocation and request scheduling, is reviewed by Roodbergenand Vis (2009). Here, we provide only a brief review of existingstudies related to the relocation problem in warehousemanagement.
When the set of items to be relocated and their destinationsare assumed to be known, Christofides and Colloff (1972) dealwith finding the optimal way of relocating items in a warehouse.A two-stage graphical algorithm is given to route the relocationtour and to minimize the relocation cost. Muralidharan et al.(1995) propose a shuffling procedure with the same assumptionto shift the high demand items nearer the I/O point and the lowdemand items away from the I/O point. A nearest-neighborheuristic algorithm and an insertion heuristic algorithm aredeveloped to identify the shuffling route, i.e., the relocation tour,with the minimum relocation cost. The authors indicate that acombination of advantages of both class-based and randomstorage policies can be achieved by employing shuffling.
Jaikumar and Solomon (1990) consider the optimal relocationstrategy of items in a class-based storage system in order toincrease the warehouse throughput. Relocation is performed onlyfor items that are to be retrieved. The number of relocations to bemade and the items to be relocated need to be determined. Theauthors develop certain conditions that an optimal relocationstrategy should satisfy and design an optimal ranking relocationprocedure.
Observing that the order structure in a warehouse or adistribution center changes frequently, Sadiq et al. (1996) addressthe dynamic storage location assignment problem to relocatesome items as the order structure changes. The objective is tominimize both the relocation time and the order picking time.A cluster-based procedure, which relocates items that are morelikely to appear in the same order into clusters, is developed todetermine the relocation schedule. Kim and Park (2003) considerthe dynamic space allocation problem when the items to bestored arrive irregularly, and cannot be assigned to a fixedlocation upon their arrival. Therefore, an item is assigned with atemporary storage location, and then relocated to its finallocation. The dynamic space allocation problem is formulated asa minimum cost multi-commodity flow problem to minimize thetransportation and inventory handling costs for a given scheduleof arrivals and departures. Moon and Kim (2001) compare therandom and class-based storage policies in an AS/RS with achanging production plan by simulation. The sensitivities of thestorage policies against the production variations are analyzed.Effects of relocation on the performance of different storagepolicies are also studied.
No work has been found dealing with the relocation strategiestaking into account both the relocation time and the handlingavailability of the S/R machines during the planning horizon.
In this paper, we examine the operational optimizationproblem of item relocation arising in a dynamic warehousingsystem.
3. Problem definition
In many practical situations throughput is not uniform in awarehouse. For example, a large number of storage and/orretrieval requests must be satisfied when replenishment and/orcustomer order arrives. However, during off-peak periods, only alimited number of requests must be performed. Therefore,different throughput rates must be established for differentperiods of the horizon.
In this study, the problem of determining an optimal relocationstrategy in a dynamic warehousing environment is considered.Single command mode is assumed, where the S/R machineperforms a single operation (either storage or retrieval) on eachtrip. The storage location assignment is assumed to be determinedbefore applying relocation strategy. Hence, we know the occupa-tion status of each storage location. Fig. 1 illustrates a typicalwarehouse layout. It has a series of storage aisles, each of which isserved by an S/R machine. Each aisle has an input and output (I/O)station accessed by the S/R machine.
There is a traveling time ci for storing/retrieving a unit load in/from location i. This traveling time is independent of which unitload is stored in that location. In a single command, a handlingtime of 2ci (a round trip) is needed for the S/R machine to storage/retrieve the item in/from location i. cij is assumed to be the traveltime between two locations i and j. In a dual command, an S/Rmachine picks up an item from an I/O station, travels to a locationto store it, travels to another location to retrieve an item and thenreturns to the I/O station to deliver it. Thus, a careful decision hasto be made to pair the storage and retrieval requests to reduce thetravel time of the S/R machine (Chen et al., 2010).
In Chen et al. (2009), the storage location assignment problemis studied to minimize the peak load of the S/R machines over theplanning horizon. However, it may still occur that during somepeak periods, the S/R machines become the bottleneck. Also, thewarehouse may be subject to some unexpected changes, such asthe fluctuation of the relative demand for each item or a suddenbreak down of an S/R machine.
To ensure the completion of all the storage/retrieval operationsduring the peak periods, the average time to store or retrieve anitem should be sufficiently small. Therefore, it may becomenecessary to relocate some items during prior off-peak periods.The main focus of relocation optimization considered to date inthe literature is on retrieval requests, i.e., relocations of itemsexpected to be retrieved. Relocating the items with high retrievalrate closer to the I/O point, one may reduce the S/R machines’travel time for retrieval operations during peak periods. Forinstance, relocating the item stored in location i to location j in the
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156 149
warehouse illustrated in Fig. 1 will reduce the travel time forretrieval by 2n(ci–cj). And the relocation time is cij.
It is also observed that further decreases in machine traveltime during peak periods can be achieved if relocation is done forboth storages and retrievals, which means that items to be storedmay also be relocated besides relocating retrieval items. Oper-ationally, some items are temporarily stored closer to the I/Ostation and then relocated to their assigned locations during slackperiods. This procedure reduces the S/R machine travel time usedfor storage requests in peak periods.
In this section, an integer programming model is firstlydeveloped with the assumption that in a planning horizon thereexists only one period in which the work load is greater than themachine’s time availability (maximum allowable handling time ofthe S/R machines). Then, the model is extended in order toschedule the relocations for several peak periods. Some otherassumptions are described as follows:
(1)
Storage/retrieval requests, which include the stored/requireditems and their quantities during each period, are given.(2)
All the items in the system are stored and moved in unit loads.Each unit load requires the same space.(3)
Multiple relocations of an item are not considered. (4) The S/R machine operates in single command cycle mode,which means either a storage or a retrieval is performed oneach round trip.
3.1. Notation
Let L be the set of locations, R be the set of retrieval requestsand S be the set of storage requests during the peak period. Let NR
denote the number of retrievals, and NS denote the number ofstorages, then NR¼9R9, NS¼9S9. We refer to the rack locationwhere a storage (retrieval) is to be performed at the storagelocation (retrieval location). Let LR denote the set of retrievallocations each of which corresponds to retrieval r, rAR; LS denotethe set of storage locations each of which corresponds to storage s,sAS. We assume that a unit load is stored immediately upon itsarrival and must be retrieved before the end of its departureperiod. This prevents a location to be refilled during the sameperiod (e.g., a day) it is emptied. We further define LO as the set ofoccupied locations and LE as the set of empty locations. Note thatLRgLO and LSgLE. Then, the total location set L could be writtenas: L¼LR[LS[LO[LE.
Suppose that C is the time availability of an S/R machine duringa planning horizon. When a total handling time of Z is neededduring the peak period for the S/R machine and Z4C, then the S/Rmachine is unable to finish all the requests during the peakperiod. The objective is to reduce the total handling time Z byperforming minimum relocation to satisfy the throughput duringthe peak period. The following decisions must be made: whichunit load should be relocated? And where should it be relocated?We consider the following two possibilities of relocations:
(1)
to relocate a retrieval unit load to an empty location closer tothe I/O station;(2)
to temporarily store a storage unit load to an empty locationcloser to the I/O station and then relocate it to its assignedlocation.When the work load cannot be reduced sufficiently byrelocating items to empty locations, i.e., no ‘‘better’’ emptylocations are available, we need to free up some ‘‘better’’ occupiedlocations for relocation. Since we want to respect the original
storage assignment plan as much as possible, we assume that thestatus of the location involved in a relocation is recovered in time.This means operationally, a location temporarily occupied by astorage unit load is emptied in time. Also, when an item is movedaway from its assigned location to an empty location it will bemoved back before the empty location is used. Thus, the originalassignment results do not need to be changed.
Decision variables:
xij¼1, if a relocation of a unit load to be stored/retrievedduring the peak period is performed from i to an emptylocation j, 0 otherwise;yij¼1, if the unit load (not to be retrieved during the peakperiod) stored in i is moved to an empty location j to free uplocation i, 0 otherwise;zij¼1, if a relocation of a unit load to be stored/retrieved duringthe peak period is performed from i to a freed location j, 0otherwise.
3.2. Mathematical model
The problem is formulated as an integer linear programming(ILP) model.
Min V ¼X
iA LR[LS
XjA LE
xijcijþXiA LO
XjA LE
2yijcijþX
iA LR[LS
XjALO
zijcij ð1Þ
Subject to:XjA LE
xijþXjA LO
zijr1, iALR [ LS ð2Þ
XiA LR[LS
xijþXiA LO
yijr1, jALE ð3Þ
XjA LE
yijr1, iALO ð4Þ
XiA LR[LS
zij ¼XkALE
yjk, jALO ð5Þ
Z�X
iALR[LS
XjALE
2xijðci�cjÞ�X
iA LR[LS
XjA LO
2zijðci�cjÞrC ð6Þ
xij,yij,zijAf0,1g ð7Þ
The objective function (1) is to minimize the total relocationtime V. The first term is the time to relocate an item to an emptylocation. The second term is the time of a free-up move. Since theitem that is moved out will be moved back to its original location,so the time for a free-up move is multiplied by 2. The third term isthe time to relocate an item to a freed-up location. Constraints (2)ensure that a unit load could be relocated at most once.Constraints (3) ensure that each empty location is associatedwith at most one relocation. Constraints (4) ensure that anoccupied location is associated with at most one free-up move.Constraints (5) guarantee that when location j is freed up arelocation is performed from location i to location j. Constraint (6)ensures that the handling time of the S/R machines during thepeak period, Z, is reduced sufficiently to meet the machines’ timeavailability. The objective of the model is to reduce Z in order tosatisfy the throughput during the peak period by performingminimum relocation. Thus, with Constraint (6), the model willautomatically select nearer locations (ci4cj) to perform arelocation. Constraints (7) specify the binary property of thedecision variables.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156150
3.3. An extension of the mathematical model
The model is extended to take into account several peakperiods. Relocation takes place during an off-peak period (e.g., thenight before), which will permit the throughput for future peakperiods to be satisfied. In a dynamic warehousing environment,the optimization of relocation is a short-term re-assignmentproblem and does not go beyond the planning horizon. Based onthis context, the following notations are introduced:
T: set of time periods in the planning horizon;H: set of peak periods in the planning horizon, HCT;t: index of a time period in H;Zt: machine work load during time period t;Rt: the set of retrieval requests during period t, tAH;St: the set of storage requests during period t, tAH;
LtR: the set of locations each of which corresponds to retrieval
rt, rtARt;
LtS: the set of locations each of which corresponds to storage st,
stAS.t
A matrix W, W¼{wkt9 kAL, tAH}, is defined to indicate the timeperiod when the item in a certain location is to be stored(retrieved). wkt equals 1 if the item in location k is stored(retrieved) in t; 0, otherwise.
The objective is to minimize the relocation time, as well as tosatisfy the machines’ time availability during each peak period t,or, equivalently, meet the constraints on the average time to storeor retrieve a pallet during each time period t, tAH. Constraint (6)in the model must be rewritten as the following to reflect thework load during each peak period:
Zt�X
kA LR[LS
Xk0A LE
2xkk0 ðck�ck0 Þwkt�X
k00A LR[LS
XkA LO
2zk00kðck00�ckÞwk00t rC, tAH
ð8Þ
where LR denotes the set of locations for all the retrievals to beperformed during the peak periods, LR ¼[tAHLt
R; LS denotes theset of storage locations for all the storages to be performed duringthe peak periods, LS ¼[tAHLt
S.Usually a warehouse contains thousands of locations and the
throughput everyday is also of a large amount. Solving the modelto optimality is not practical for large sized problems. Therefore, aheuristic algorithm is applied to solve the relocation problem. Anda tabu search algorithm is developed to improve the solution.
I/O 1(1) 2(2) 3(3) 4(4) 5(5) 6(6) 7(7) 8(8)
10(2)9(2) 11(3) 12(4) 13(5) 14(6) 15(7) 16(8)
18(3)17(3) 19(3) 20(4) 21(5) 22(6) 23(7) 24(8)
26(4)25(4) 27(4) 28(4) 29(5) 30(6) 31(7) 32(8)
34(5)33(5) 35(5) 36(5) 37(5) 38(6) 39(7) 40(8)
Fig. 2. Storage rack layout.
4. A heuristic algorithm
Solving the relocation problem involves not only finding theitems to be relocated, but also determining their destination ofrelocation at the same time. One way to overcome this complexityis a 2-stage procedure in which the first stage is to determine theitems to be relocated and the second stage is to determine thedesired final location of each item to be relocated specified fromthe previous stage. We introduce an efficient heuristic algorithmfor finding the items to be relocated in the first stage. With thechosen items, the relocation problem is reduced to an assignmentproblem and can be optimally solved using the Hungarian method(Kuhn, 1955).
4.1. Determine the items for relocation
The relocations for all the peak periods are scheduled in onetime period (e.g., the night before). Let N be the set of originallocations for the items to be relocated. Let D be the set of
destination locations for the items to be relocated. A location in D
may be an empty location, or an occupied location, in which casean additional free-up move is needed. Obviously, 9N9¼9D9. In thisstage, we try to minimize the number of relocations to beperformed. As every relocation increases the likelihood ofpotentially damage due to material handling, minimizing thenumber of relocations is important. Some conditions that anoptimal relocation plan should satisfy are presented below.
The first optimality condition is that an item should not bemoved to any location farther from the I/O point than the locationwhere it is originally assigned. To justify this condition, relocationfor both retrieval request and storage request is explained. Whena retrieval unit load is relocated from its original location n to acloser location d, nAN, dAD, the work load in the peak period isreduced by 2� (cn–cd). When a storage unit load is temporarilystored in location d’ instead of its assigned location n0, n0AN, d0AD,the work load in the peak period is reduced by 2� (cn0–cd0). Thestorage unit load will be relocated to n0 before it is retrieved.Therefore, for 8nAN, 8dAD, we have cn4cd.
Note that in addition to involving fewer relocations, as traveltimes satisfy the triangle inequality, i.e., relocating a unit loadfrom location i to location k takes less time than if the unit load isrelocated from location i to location j and then to location k; i, j,kAL.
Since closer to the I/O point unit loads are relocated, the largerthe decrease in work load; there exists an optimal relocationpolicy such that each unit load to be relocated will be moved tothe locations closest to the I/O point.
We begin by outlining the rationale behind the algorithm.Firstly, we seek to perform the minimum number of relocations ofthe S/R requests during the peak periods to empty locations sothat the machines’ time availability during each peak period issatisfied. However, when the work loads during the peak periodsare very high, such a solution may not exist. In this case, we needto free up some ‘‘better’’ locations, which are currently occupied.Note that the storage assignment plan does not need to bechanged as long as the items moved away from these locationsare moved back in time.
Recall that LE is the set of empty locations at the beginning ofthe relocation period, and LO is the set of occupied locations. Let LP
be the set of locations for the items to be stored and retrievedduring the peak period, LP¼LS[LR.
An example is given to illustrate the relocation movement.Consider the storage rack shown in Fig. 2. Each storage location isrepresented as a square, in which both the location number andthe time required to travel between the I/O point and the location(in parenthesis) are given. It is assumed that the maximumallowable handling time of the S/R machine is 50, and there isonly one peak period. Shaded squares correspond to occupiedlocations. Blank squares correspond to empty locations. Locationsin LP are denoted by the squares with cross lines. Thus, the workload during the peak period is 2� (1+2+3+4+5+5+6+6)¼64.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156 151
In order to reduce this peak load, relocations are needed. The itemassociated with the farthest location in LP, location 14, is selectedto be relocated. This item could either be relocated to a betterempty location, e.g., location 11, or to an occupied location, e.g.,location 9. In the former case, the total work load is reduced by 6,and in the latter case, the total work load is reduced by 8. The itemassociated with the next farthest location in LP is selected to berelocated, and so on, until the work load is reduced sufficiently.
A heuristic procedure which satisfies the optimality conditionsis now described in the following steps.
Step 1: Initialization:
(a)
get the initial work load {Zt} during each peak period t; (b) N¼Ø, D¼Ø.Step 2: Relocation to empty locations:when LE is not empty and the machines’ time availability is not
satisfied for each period do
(a)
choose a location p with the largest travel time in LP, andchoose a location e with the smallest travel time in LE;(b)
if cp4ce, then:(i) N’N [{p}, D’D [{e};(ii) LP’LP\{p}, LE’LE\{e}, update {Zt}.
otherwise, go to Step 3.Step 3: Relocation to occupied locations:when the machines’ time availability is not satisfied for each
period do
(a)
choose a location p with the largest travel time in LP, andchoose a location o with the smallest travel time in LO;(b)
if cp4co, then:(i) N’N [{p}, D’D [{o};(ii) LP’LP\{p}, LO’LO\{o}, update {Zt};(iii) if such a pair (n,d), nAN, dAD, could be found with cnocd,
then n and d are deleted from N and D, respectively.
otherwise, the algorithm terminates with an infeasible solu-tion.
Step 4: Verification:If 9D9r9E9, then the algorithm terminates with a feasible
solution;If 9D949E9, then the algorithm terminates with an infeasible
solution.Step 5: Post-processing:Divide D into two sub-sets: DE and DO. DE is originally empty
locations, and DO is originally occupied locations.The algorithm tries firstly to relocate the item to be stored or
retrieved in/from the farthest location to the closest emptylocation in Step 2. When the work load cannot be reduced anymore by relocating items to the empty locations, the algorithmtries to relocate the item to currently occupied location in Step 3.When an occupied location is used as the destination of arelocation move, a check in Step 3(d) is necessary in order tosatisfy the first optimality condition, which is cn4cd, 8nAN, 8dAD.Before the algorithm terminates, Step 4 is applied to verifywhether the solution obtained is feasible. The verification can besimply achieved by comparing the total number of locationsneeded for relocation with the number of empty location. If morelocations are needed than the number of currently emptylocations, the algorithm fails to find a feasible solution; otherwise,a feasible solution is obtained. In the last step of the algorithm, setD is divided into two sub-sets, which is a preparation for thefollowing calculation.
4.2. Determine the destination of relocation
In the previous step, the items to be relocated and theirdestinations are determined with a minimum number of reloca-tion. In order to minimize the total relocation time and the totaltime for free-up moves, we still need to know which item isrelocated to which location.
For given N and D, the original relocation problem is thenreduced to an assignment problem to minimize the total assign-ment cost, which, in our case, is the total relocation time. Thereduced assignment problem is formulated as follows:
ukk0 ¼1, if item in location k is relocated to location k0; 0otherwise, kAN, k0AD.vkk0 ¼1, if item in location k is moved to location k0 to emptylocation k; 0 otherwise, kADO, k0ALE\DE.
MinXkAN
Xk0AD
ckkuukkuþX
kADO
XkuA LE\DE
2ckkuvkku
1A
0@ ð9Þ
Subject to:X
k0AD
ukku ¼ 1, kAN ð10Þ
XkAN
ukku ¼ 1, kuAD ð11Þ
XkuALE \DE
vkku ¼ 1, kADO ð12Þ
XkADO
vkku ¼ 1, kuALE\DE ð13Þ
ukku, vkkuAf0,1g ð14Þ
The objective function (9) is to minimize the total relocationtime. The first term is the time to relocate an item to an empty (orfreed-up) location. The second term is the time for the free-upmoves. Constraints (10) guarantee that each item cannot berelocated more than once. Constraints (11) guarantee that eachempty location (or a freed location) is associated with only onerelocation. Constraints (12) guarantee that each occupied locationis emptied only once. Constraints (13) guarantee that an emptylocation is associated with only one free-up move. Constraints(14) specify the binary decision variables. The assignmentproblem can be optimally solved using the Hungarian method.
4.3. Sequential application of the heuristic algorithm
In some environments when peak periods are interspersedwith off-peak periods, the time to undertake relocations maybecome a bottleneck. Therefore, it may not be possible to performall the relocations in one time period, in order to satisfy themachines’ time availability during each time period. A possibleway is to do the relocation separately in the off-peak period priorto each upcoming peak period. Therefore, the heuristic algorithmneeds to be applied several times. The objective is to minimizethe total relocation time to be performed during each off-peakperiod.
Consider a warehousing system operating in a 6-day horizon,T¼{1,2,3,4,5,6}. It is assumed that Day 3 and Day 5 are peakperiods, H¼{3,5}. The maximum handling time of the S/Rmachine is 10 h each day. Some relocations are needed in orderto reduce the work loads on Day 3 and 5. The daily work loaddistribution before and after relocation and the overload andrelocation time are illustrated in Fig. 3. Applying the heuristic
02468
101214
1day
daily
wor
k lo
ad
original planre-plan with relocation
Daily machineavailability
overload overload
relocation reloca-tion
2 3 4 5 6
Fig. 3. Daily work load distribution before and after relocation.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156152
algorithm twice, the relocation for Day 3 and 5 is scheduled onDay 2 and Day 4, respectively. Then, the work load on Day 2 andDay 4 is recalculated adding the relocation time.
5. Tabu search algorithm
Tabu search (TS) is a metaheuristic global optimizationmethod originally developed by Glover (1989, 1990) for largecombinatorial optimization problems and extended to solvemany real-life problems. In this study, we propose a neighbor-hood structure adopted for the relocation problem. Basedon this, a tabu search algorithm is designed and implemented.
5.1. Solution representation
An optimal relocation policy is one which involves theminimum time for relocating some items to be stored/retrievedduring the peak periods in order to satisfy the machines’ timeavailability during each period. Recall that N and D denote,respectively, the original locations and destination locations ofthese items. Let m¼9N9¼9D9, we have N¼{n1, n2,y,nm} andD¼{d1, d2, y, dm}. A complete solution can be constructed bysolving the assignment problem from N to D. The cost of anassignment is the travel time from location n to location d, nAN,dAD, denoted as cnd. The complete solution, represented as p, canbe obtained by applying the Hungarian method to solve theassignment problem.
5.2. Neighborhood structure
Given a feasible solution to the relocation problem, itsneighborhood solutions are obtained by performing the followingthree steps:
(i)
Swap a location n with another location n0, nAN, n0AP, orswap a location d with another location d0, dAD, d0AO[E;(ii)
Detect the feasibility of the intermediate result; (iii) Apply the nearest destination (ND) heuristic algorithm to theintermediate result to find a neighbor solution.
Let us define sw(x, x0) as the operation of swapping location x
with location x0. If the new solution obtained from p by applyingthe swap operation sw(x, x0) is denoted as psw(x,x0), theneighborhood of a solution p, N(p), consists of the solutions psw
obtained by performing swap operation sw(x, x0) from a givenset OP.
OPðpÞ ¼[
xAN
x0AP
swðx,xuÞ
0BBB@
1CCCA [
[xAD
x0AO [ E
swðx,xuÞ
0BBB@
1CCCA ð15Þ
Thus, we get
NðpÞ ¼ fpswðx,xuÞ9swðx,xuÞAOPðpÞg ð16Þ
In order to ensure that the solution meets the machines’ timeavailability constraint, a feasibility detection procedure is exe-cuted to reject the potentially infeasible moves. When anarbitrary swap is being applied to a solution, its feasibility istested by calculating the reduced work loads during the peakperiods. The total work load reduced by the relocation isP
nANcn�P
dADcd. If the move turns out to be feasible, i.e., thework loads during the peak periods are reduced under themachine’s time availability, the ND heuristic algorithm is appliedto build a new solution. If none of the neighbors of the currentsolution turns out to be feasible, the search is terminated.
An exact evaluation of each swap at every step requiresrunning the Hungarian method several times and thus becomesexpensive. The ND heuristic method was introduced to solve theassignment problem given N and D. The ND method is a verysimple procedure by selecting a pair of locations with minimumtravel time between the two locations. The ND heuristic method isdescribed as
Step 1. For 8iAN, select a destination location j, jAD, withminimum travel-between time
Step 2. Perform a relocation, relocating item stored in i tolocation j
Step 3. N¼N\{i}, D¼D\{i}Step 4. If N is not empty, go to Step 1; otherwise, stop.The solution obtained by applying the ND method is used to
evaluate a swap in the tabu search framework.
5.3. Tabu list and search strategy
A tabu list is a short time memory of the last severalmovements. It is applied to have a trace of the evolution of thesearch to prevent cycling. In our case, once a swap between x andx0 is applied, we add both locations x and x’ to the tabu list forsome time. We do not allow a swap operation between x and x’ fora certain number of iterations. Let E¼(E1, E2, y, Emax t) be the tabulist of a fixed length maxt. Et¼(a, b) is a pair of elements, where adenotes one location, and b denotes the other location. Et,
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156 153
1rtrmaxt is added to the tabu list in the following way: eachelement in the tabu list is shifted to the left by one position and Et
is put in position maxt, i.e.,
Et�1 ¼ Et , t¼ 2, :::, maxt,
Emax t ¼ Et ð17Þ
The best-fit strategy is adopted in the search. For each solutionp, the size of N(p) increases rapidly with the total number oflocations. To reduce the searching effort at each iteration, psw(x,x0)
is rather selected in the subset of N(p). Thus, considering the tradeoff between computational burden and the analytical refinement,the number of total storage/retrieval requests in the peak periodis used to determine the maximum number of neighbors exploredin one iteration.
Given a solution p, its neighborhood is searched with thefollowing strategy. A neighbor is randomly selected and evaluateduntil the total number of neighbors explored so far exceeds themaximum number of neighbors, and then the algorithm moves tothe best non-tabu neighbor. That is, the total relocation time V ofeach solution is calculated, and the solution with the smallest V isselected.
5.4. Algorithm
The algorithm starts with an initial solution p and a primaryempty tabu list E. At each iteration, the neighborhood searchstrategy is applied and the set of swap operations OP(p) isdetermined. The best non-tabu move sw0 is selected, whichdetermines the neighborhood p0 ¼psw0. Then, the new tabu list E iscreated. p0 is set to be the starting solution for the next iteration.The best Vn found and the associated solution pn are updated.Counters Iter and NIter trace the number of total iterations and thenumber of iterations performed without improvement, respec-tively. The algorithm terminates if there is no improvement overthe best solution obtained after a certain number of iterations(NonImpIter), or if the total number of iterations reaches apredetermined value MaxIter.
The TS algorithm can be summarized as follows:Step 1. Initialization: pn
¼p, Zn¼Z(pn), E¼|, i¼ Iter¼NIter¼0.
Step 2. Set Iter :¼ Iter+1, NIter :¼ Niter+1. Find the swapoperation sw0AOP(p), the neighborhood p0 ¼psw0 and the modifiedtabu list E. Set p :¼p0.
Step 3. If V(p)oVn, then set pn :¼p, Vn¼V(p), Niter :¼0 and go
to step 2.Step 4. If (IterrMaxIter) & (NIterrNonImpIter) then go to step
2; otherwise STOP.
Fig. 4. Parameter selection for the maximum number of iterations.
6. Experiments
The performance of the relocation algorithms developedearlier was evaluated in this section. For the computationalexperiments, we assumed an AS/RS consisting of several storage/retrieval aisles operating under a single command. Each aisle hastwo identical racks and a single I/O point. Let L be the length andH be the height of the rack, and Vh and Vv the horizontal andvertical travel speeds of the S/R machine, respectively. Then, thetime required to travel the full length and height, respectively, aregiven by th¼L/Vh and tv¼H/Vh. Let Z¼max{th, tv} and b¼min{th/Z,tv/Z}, which are referred to as the maximum travel time and shapefactor, respectively. Z is set to 1 to normalize the rack.
It is assumed that the S/R machine travels simultaneously inthe horizontal and vertical directions, i.e., Tchebychev travel. Eachlocation is associated with a pair of travel time (hi, vi) in
horizontal and vertical directions. Thus, the traveling time ci ofstoring/retrieval a unit load in/from location i, i ¼1,y,K, is
ci ¼maxðhi,viÞ ð18Þ
The travel time cij between two locations i and j: i,j¼1,y,K, is
cij ¼maxð9hi�hj9,9vi�vj9Þ ð19Þ
The following system parameters and operating characteristicsare used in the problem generation and system analysis:
�
The planning horizon T is set as 7. � Numerous values for the number of locations are tried, rangingfrom 50 to 2000. And the number of the S/R requests duringthe peak period is set to be 40% of the total number oflocations.
� Empirical practice suggested that more space is needed when awarehouse is more than 80% full (Tompkins et al., 2003).Therefore, in this experiment, the utilization level of the totallocations in the system is assumed to be 80%, i.e., there are 20%of empty locations.
� The handling time availability of the S/R machine is adjusted toachieve the overload percentage of 10%, 20% and 30%.
� The travel time (hi, vi) associated with each location wasrandomly generated from uniform distributions U(0,1) andU(0,b), respectively.
� The service time of a request is the sum of the time requiredfor traveling to/from the storage location and the transferringtime for the machine to store or retrieve a unit load at the I/Opoint and at the storage location.
� The time of a relocation is the sum of the time requiredtraveling between the two locations and the transferring timefor the machine to load or unload a pallet at the location.
� The probability of a request being a storage or a retrieval is thesame.
We use Visual C++ programming language to code thealgorithms and perform the computational test on a personalcomputer with a Centrino Duo CPU @ 2.0 GHz and 2.0 GB RAM.ILOG OPL 6.3 is used to solve the ILP model, applying CPLEX 12.1.0.
6.1. TS parameters
For determining the values of the search parameters in the TS,some preliminary tests have been done. Trial problems wererandomly generated with various problem settings and weresolved by the TS with different search parameters. Figs. 4 and 5show the performance of the TS under different parameters.
It is observed in Fig. 4 that, when the maximum number ofiterations (MaxIter) is larger than 500, the improvement of the
Fig. 5. Parameter selection for the maximum number of iterations without improvement: (a) CPU time of the TS algorithm and (b) solution quality of the TS algorithm.
Table 1Performance comparison for small sized problems.
K Overload (%) CPLEX Heuristic algorithm Tabu search
CPU #OPT Avg. gap (%) #OPT Avg. gap (%)
50 10 0.2 3 5.54 10 0.00
100 10 0.3 1 9.31 8 0.02
200 10 20.0 0 12.65 8 0.23
500 10 160.0 0 13.57 7 0.12
800 10 550.5 0 12.35 4 0.43
50 20 0.2 5 6.35 10 0.00
100 20 0.4 0 10.26 7 0.49
200 20 35.5 0 11.32 7 0.32
500 20 205.0 0 12.03 8 0.29
800 20 640.2 0 14.71 5 0.36
50 30 0.3 5 8.23 10 0.00
100 30 0.8 0 11.27 6 0.25
200 30 46.8 1 13.58 6 0.38
500 30 550.0 0 14.32 4 0.43
800 30 850.5 0 15.88 3 0.39
Table 2Performance of the TS algorithm for large sized problems.
K Overload(%)
Min.gap (%)
Max.gap (%)
Avg.gap (%)
CPUtime (s)
1000 10 1.80 5.20 3.20 750
1500 10 1.50 5.80 3.35 920
2000 10 1.12 6.85 4.32 1150
1000 20 1.60 4.95 2.80 780
1500 20 1.42 5.66 3.68 980
2000 20 1.85 4.50 3.12 1205
1000 30 0.86 5.15 2.66 820
1500 30 1.18 6.26 3.44 1050
2000 30 1.21 6.62 4.05 1285
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156154
objective function value becomes very limited. Therefore, Max-
Iter¼500 seems a promising parameter for the maximum numberof iterations.
MaxIter is set to be 500 in the selection of the maximumnumber of iterations without improvement (NonImpIter). Asshown in Fig. 5(a), the CPU time increases dramatically whenNonImpIter is larger than 25, especially for large sized problems.In Fig. 5(b), the solution quality of the TS algorithm does notimprove a lot when NonImpIter is larger than 25. Therefore,NonImpIter is set to be 25 in the experiments.
The performance of the TS is not sensitive to the size of thetabu list (maxt). Based on the above results, we chose thefollowing parameter values for the TS algorithm: maxt¼5;MaxIter¼500; NonImpIter¼25.
6.2. Small and medium sized problems
To evaluate the quality of the proposed methods, we comparethe solution values from the algorithms with the optimal solution(found with the ILP formulation of Section 3.2) for small andmedium sized problems.
Table 1 presents the performance of both the constructionheuristic algorithm and the tabu search algorithm. There is onlyone peak period during the whole planning horizon. For eachscenario, 10 instances were randomly generated. Table 1 gives thenumber of times both methods find the optimum out of 10instances (see column ‘#OPT’), and the average relative gap fromthe optimum. The table also shows the average CPU time ofsolving the ILP using CPLEX. From the results, the average gap of
the construction heuristic algorithm ranges from 5.54% to 15.88%,and the average gap of the tabu search algorithm ranges from 0%to 0.42%.
6.3. Large sized problems
Finding the optimal solution for large sized problems becomescomputationally intractable. Thus, linear relaxation was appliedto the ILP model to give a lower bound for the total relocationtime V. Let VTS and VLB be the total relocation time determined bythe TS algorithm and the total relocation time found by solvingthe linear relaxation of the ILP model, respectively. For eachproblem setting, 10 instances were randomly generated. Theaverage gap, calculated as (VTS�VLB)/VTS, is used to evaluate theperformance of the TS algorithm. The results in Table 2 show thatthe performance of the TS is quite robust with respect to theproblem size. For all the test problems considered, the averagegap ranges from 1.5% to 3.1%, the minimum gap ranges from 0.8%to 2.6% and the maximum gap ranges from 3.5% to 6.8%. The CPUtime in seconds of the TS algorithm given in Table 2 indicates thatthe TS algorithm can solve large sized problems within reasonablecomputational time.
6.4. Single peak period
In this section, we consider the relocation problem with onlyone peak period throughout the whole planning horizon. Reloca-tion time is analyzed under various factor settings for large scaleproblems, whose sizes range from 300 locations to 2000 locations.Various test problems are generated by varying the locationutilization levels from 60% to 90%, and the percentage of overload(denoted as a) from 10% to 30%. For each test problem, wecalculate the time for relocation, which is required to sufficientlyreduce the overload to satisfy the machines’ time availability. Forcomparison, the relocation time is represented in the percentageof the S/R machines’ daily handling availability.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156 155
In Fig. 6, the relocation time is plotted against the locationutilization level of the S/R system. Fig. 6 shows that the relocationtime is much larger at higher overload percentage. Averagely, therelocation time is 6.27% of the machines’ time availability with10% overload and is 13.81% of the availability with 20% overload.When the overload goes up to 30%, the relocation time is about25.79% of the machines’ availability. The time for relocationslightly increases as the location utilization level increases,because less ‘‘better’’ empty locations are available at a higherutilization level. The figure shows that the relocation timeincreases dramatically as the location utilization level goesbeyond 80%, and the percentage of overload goes beyond 20%.
6.5. Multiple peak periods
In this section, multiple peak periods are considered in aplanning horizon. For simplicity, the relocation could be under-taken in one time period with the assumption that there isenough time to make the relocations during this time period (e.g.,the night shift). However, in other environments where overtimejob is not preferred, relocations could only be done during someoff-peak periods. Thus, the algorithm presented earlier needs tobe applied several times to provide feasible solutions for makingthe relocations.
We compare the two relocation policies, namely one-timerelocation and separate relocation, for large scale problems underdifferent system characteristics. Without loss of generality, twopeak periods are assumed for all the test problems, and theoverload for each peak period is assumed to be the same.
Fig. 7 compares the performance on the relocation time of thetwo relocation policies. The separate relocation policy results inshorter relocation time than the one-time relocation policy for all
Fig. 6. The relocation time versus location utilization level.
15%
20%
25%
30%
35%
location utilization level
relo
catio
n tim
e
one-time relocation separate relocation
60% 80%70% 90%
Fig. 7. Performance comparison for different relocation policies: (a) Relocation time ve
the instances. Fig. 7(a) illustrates the relocation time as a functionof location utilization level. As the location utilization levelincreases, the relocation time increases for both policies. Withseparate relocation policy, shorter relocation time is needed, andthe difference increases with the location utilization level. Thereason for this is that more ‘‘better’’ empty locations are availablewhen relocations are undertaken separately, and this results inshorter relocation time. Fig. 7(b) illustrates the relocation time asa function of overload percentage. As the overload percentageincreases from 10% to 30%, the relocation time increases at anincreasing rate for both policies.
7. Conclusions
In a warehouse, at some time after the assignment of items tolocations, some situation will arise when the assignment is nolonger acceptable. For example, the demand of some products willfluctuate and this fact will be reflected in greatly increasedtraveling time of the S/R machines. Hence, relocations maybecome necessary to ensure sufficient S/R machines throughputduring periods of high work load. This study addresses theoperational optimization problem of item relocation arising in awarehousing system with dynamic operating policy. The objectiveis to minimize the time of relocation to be performed in order tomeet the handling time availability constraints of the handlingmachines. An integer programming model is provided to solve theproblem optimally. A two-stage heuristic method is derived tofind an initial feasible solution. A tabu search algorithm has beendeveloped to obtain a better solution in a reasonable time. Twodifferent relocation policies, namely one-time relocation policyand separate relocation policy, are compared under varioussystem configurations.
The computational results show a very good performance ofthe TS algorithm with a gap of 0–0.42% from the optimum forsmall and medium sized problems. For large sized problems, theaverage gap of the solution given by the TS algorithm from thelower bound found by solving the linear relaxation of the ILPmodel is 1.5–3.1%.
It is observed that the relocation time increases as the locationutilization level of the warehousing system and the overloadpercentage of the peak periods increase. Separate relocationpolicy outperforms one-time relocation policy in terms of thetotal travel time of the required relocation. The advantagebecomes more apparent with a high location utilization leveland/or a high over load percentage.
In the warehouse system studied in this paper, the number ofstorage/retrieval requests per time period is assumed fixed and
0%
10%
20%
30%
40%
50%
60%
70%
overload percentage
relo
catio
n tim
e
one-time relocation separate relocation
10% 20% 30%
rsus location utilization level and (b) Relocation time versus overload percentage.
L. Chen et al. / Int. J. Production Economics 129 (2011) 147–156156
known. In some situation, knowledge of throughput for futureperiods may not be sufficient. In such cases, a confidence level forbeing able to satisfy the peak throughput needs to be establishedto guide the relocation. Another interesting direction for furtherresearch would be to examine the performance of relocationunder different storage policies.
Acknowledgements
This work was supported by the National Natural ScienceFoundation of China (Project Number: 70802040), the ScientificResearch Foundation for Returned Scholars from the Ministry ofEducation of China and the Natural Science and EngineeringResearch Council of Canada. The authors would like to thank theanonymous referee for his helpful comments.
References
Bozer, Y.A., White, J.A., 1984. Travel time models for automated storage/retrievalsystems. IIE Transaction 16, 329–338.
Chen, L., Langevin, A., Riople, D., 2010. The storage location assignment andinterleaving problem in an automated storage/retrieval system with sharedstorage. International Journal of Production Research 48 (4), 991–1011.
Chen, L., Riopel, D., Langevin, A., 2009. Minimizing the peak load in a sharedstorage system based on the duration-of-stay of unit loads. InternationalJournal of Shipping and Transport Logistics 1 (1), 20–36.
Christofides, N., Colloff, I., 1972. The rearrangement of items in a warehouse.Operations Research 21, 577–589.
Francis, R.L., McGinnis, L.F., White, J.A., 1992. Facility Layout and Location: AnAnalytical Approach. Prentice-Hall, Englewood Cliffs, N.J.
Goetschalckx, M., Ratliff, H.D., 1990. Shared storage policies based on the durationstay of unit loads. Management Science 36 (9), 1120–1132.
Glover, F., 1989. Tabu search, part I. ORSA Journal of Computing 1, 190–206.
Glover, F., 1990. Tabu search, part II. ORSA Journal of Computing 2, 4–32.Graves, S.C., Hausman, W.H., Schwarz, L.B., 1977. Storage/retrieval interleaving in
automatic warehousing systems. Management Science 23 (9), 935–945.Gu, J., Goetschalckx, M., McGinnis, L.F., 2007. Research on warehouse operation: a
comprehensive review. European Jounal of Operational Research 177, 1–21.Hausman, W.H., Schwarz, L.B., Graves, S.C., 1976. Optimal storage assignment in
automatic warehousing systems. Management Science 22 (6), 629–638.Heskett, J.L., 1963. Cube-per-order index—a key to warehouse stock location.
Transport and Distribution Management 3, 27–31.Heskett, J.L., 1964. Putting the cube-per-order index to work in warehouse layout.
Transport and Distribution Management 4, 23–30.Jaikumar, R., Solomon, M.M., 1990. Dynamic operational policies in an automated
warehouse. IIE Transactions 22 (4), 370–376.Kim, K.H., Park, K.T., 2003. Dynamic space allocation for temporary storage.
International Journal of Systems Science 34 (1), 11–20.Kuhn, H.W., 1955. The Hungarian method for the assignment problem. Naval
Research Logistics Quarterly 2, 83–87.Malmborg, C.J., Altassan, K.M., 1998. Analysis of storage assignment policies in less
than unit load warehousing systems. International Journal of ProductionResearch 36 (12), 3459–3475.
Malmborg, C.J., Krishnakumar, B., 1989. Optimal storage assignment policies formultiaddress warehouse systems. IEEE Transactions on Systems, Man, andCybernetics 19 (1), 197–204.
Moon, G., Kim, G.P., 2001. Effects of relocation to AS/RS storage locationpolicy with production quantity variation. Computers & Industrial Engineering40, 1–13.
Montulet, P., Langevin, A., Riopel, D., 1997. Le probl�eme de l�optimisation del�entreposage partage: methodes exacte et heuristique. INFOR 35 (2), 138–153.
Muralidharan, B., Linn, R.J., Pandit, R., 1995. Shuffling heuristics for the storagelocation assignment in an AS/RS. International Journal of Production Research33 (6), 1661–1672.
Roodbergen, K.J., Vis, I.F.A., 2009. A survey of literature on automated storage andretrieval systems. European Journal of Operational Research 194, 343–362.
Sadiq, M., Landers, T.L., Taylor, G.D., 1996. An assignment algorithm for dynamicpicking systems. IIE Transactions 28, 607–616.
Tompkins, J.A., White, J.A., Bozer, Y.A., Tanchoco, J.M.A., 2003. Facilities planningthird Ed. John Wiley & Sons, Inc, Hoboken, N.J.
Van den Berg, J.P., Zijm, W.H.M., 1999. Models for warehouse management:classification and examples. International Journal of Production Economics 59,519–528.