Order picking in conventional warehouse environments involves determining a sequence in which to visit the unique locations where each part in the order is stored, and thus is often modeled as a traveling salesman problem. With computer tracking of inventories, parts may now be stored in multiple locations, simplifying replenishment of inventory and eliminating the need to reserve space for each item. In this environment, order picking requires choosing a subset of the locations that store an item to collect the required quantity. Thus, both the assignment of inventory to an order and the associated sequence in which the selected locations are visited affect the cost of satisfying an order. We formulate a model for simultaneously determining the assignment and sequencing decisions, and compare it to previous models for order picking. The complexity of the order picking problem is discussed, and an upper bound on the number of feasible assignments is established. Several extensions of TSP heuristics to the new problem setting and a tabu search algorithm are presented and experimentally tested. (~) 1998 Elsevier Science B.V.
EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ELSEVIER European Journal of Operational Research 105 (1998) 1-17 Theory and Methodology A model for warehouse order picking Richard L Daniels a'*, Jeffrey L Rummel b, Robert Schantz c a School of Management, Georgia Institute of Technology, Atlanta, GA 30332-0520, USA b School of Business Administration, University of Connecticut, Storrs, CT 06269-2041, USA c IBM Corporation, Research Triangle Park, NC 27713, USA Received ! September 1995; accepted September 1996 Abstract Order picking in conventional warehouse environments involves determining a sequence in which to visit the unique locations where each part in the order is stored, and thus is often modeled as a traveling salesman problem With computer tracking of inventories, parts may now be stored in multiple locations, simplifying replenishment of inventory and eliminating the need to reserve space for each item In this environment, order picking requires choosing a subset of the locations that store an item to collect the required quantity Thus, both the assignment of inventory to an order and the associated sequence in which the selected locations are visited affect the cost of satisfying an order We formulate a model for simultaneously determining the assignment and sequencing decisions, and compare it to previous models for order picking The complexity of the order picking problem is discussed, and an upper bound on the number of feasible assignments is established Several extensions of TSP heuristics to the new problem setting and a tabu search algorithm are presented and experimentally tested (~) 1998 Elsevier Science B.V Keywords: Warehouse operations; Traveling salesman Introduction The trend towards just-in-time (JIT) inventory systems removes some warehouse points from the manufacturing chain, especially those used for storage of work-in-process inventories, but the number of warehouse transactions in many firms is still quite large These transactions typically decouple use from replenishment, or take advantage of ordering or transportation economies At the plant level, warehouse operations often assemble kits of parts to supply fabrication and assembly processes on the factory floor In firms such as wholesale distributors, the task of * Corresponding author Tel.: +1-404 894 8713; fax: +1-404 894 6030 processing warehouse orders is at the core of the business Since these transactions occur frequently, small savings on each can result in significant savings for the firm (see, e.g., Matson and White, 1982, Witt, 1987, and Gray et al., 1990) Previous models of the order picking problem assume that all stock of a particular part is stored in one location in the warehouse, since tracking inventory necessitated that space be permanently allocated for each part (see, e.g., Ratliffand Rosenthal, 1983, Goetschalckx and Ratliff, 1988, and Bozer et al., 1990) The problem of picking an order is then one of determining the sequence in which locations should be visited to minimize total cost (or time), which leads to the traveling salesman problem (TSP) This structure allows for implementation of a zone-picking strategy, 0377-2217/98/$19.00 (~) 1998 Elsevier Science B.V All rights reserved PII S 7 - 2 ( ) 0 - X R.L Daniels et aL /European Journal of Operational Research 105 (1998) 1-17 where orders are assembled by multiple pickers, since smaller TSPs are much easier to solve Frequent changes in the set of parts warehoused, along with the enhanced capability of computer systems to track inventories within the warehouse, adds a dimension to the problem such a formulation of warehouse operations does not include As the demand for individual parts grows and shrinks, allocating warehouse space to parts becomes more complex and costly Changes in demand, and the consequent reallocation of warehouse space, often require movement of stock that can cause severe disruptions to warehouse operations, especially when the warehouse is highly utilized Bar coding of stock promotes the maintenance of perpetual inventory records, allowing parts to be stored in any location in the warehouse The assignment of an individual part to multiple locations throughout the warehouse reduces the importance of the stock allocation problem Previous models required only the quantity of each part required, but now we need the set of locations in which each part is stored, and the amount of stock contained at each location The order picking problem now must determine both an assignment of inventory to the current order and the determination of an appropriate picking sequence, Clearly interactions exist between inventory assignment and location sequencing decisions, and this paper presents a model for solving this problem This generalization of the travelling salesman problem constructs TSP tours to visit a subset of the possible locations, such that the selected locations together satisfy a set of portfolio constraints In these constraints, each location has associated with it a weight that reflects the contribution of that location towards satisfying the order requirement for the associated part In this setting, the weights reflect the amount of inventory at each location, but this construction could easily be generalized to other situations, such as where a salesman must sample a territory by calling on a given mix of customers This paper does not address the question of whether storing parts in multiple locations is better than only in one But in order to make the comparison, a method for solving the picking problem is required In many systems that use multiple locations, the computer system prints a list of the locations and the person picking the order must decide where to visit The technology exists for randomly storing inventory and the question answered in this paper is how to use that technology in the most cost effective way With these tools, a further study could be constructed to find the expected benefit of allowing storage of a part in multiple locations The paper is organized as follows The next section presents a formulation of the problem and compares it to previous models for order picking Section discusses problem complexity and our experience generating lower bounds and optimal solutions Section examines several heuristic approaches to the problem, both by extending TSP heuristics to the new problem setting, and by constructing a tabu search algorithm for the problem Section describes a set of experiments conducted to test the computational performance of the heuristics The paper concludes with a summary and suggestions for future research Problem formulation Consider the following warehouse environment When a shipment of an individual part arrives at the warehouse for storage, the part is assigned to an open location in the warehouse Given the ability of the computer system to retain the location, the part can be stored anywhere in the warehouse; over time a particular part type may be stored in more than one location Orders (from customers or from the factory floor) arrive and specify a set of parts and quantities for each The computer system can produce a picking list that shows the requirements of the order and also lists the locations for each part and the quantity stored at each location The problem we formulate is the decision determining how to match the inventory listed with the order requirements Although there are other considerations in choosing which inventory locations to use (e.g., age of the inventory) we consider the problem of minimizing the cost (time) required to meet the order requirements First, we define some notation for the problem M denotes the set of different part types that must be picked for the current order We index the set of parts by k N denotes the set of locations containing inventory We index the set of locations by i and j Dummy locations for the starting and drop-off points of the tour can also be added to the formulation R.L Daniels et al./ European Journal of Operational Research 105 (1998) 1-17 Pk denotes the set of locations containing part type k These sets are assumed to be disjoint and cover N cij denotes the cost of moving from location i to location j These costs can be arbitrary, but in many cases will satisfy the triangle inequality, a property that can be exploited to reduce the size of the solution space qi denotes the amount of inventory stored at location i Ik denotes the total stock of part type k in the warehouse, with: Ik = ~ (2.1) qj qixii q- lkXjj ieP&Ij} >/ Ik rk qj Vk E M, VjEPk, (2.7) {subtour elimination constraints}, (2.8) x/j = 0, Vi, j E N (2.9) The assignment constraints (2.4) and (2.5) require that each location be either part of the tour (xij = ) or excluded from the tour (xii = 1) The portfolio constraints (2.6) and (2.7) ensure that sufficient inventory of each part type is collected Note that since xii indicates whether a location is included in the tour: jEek rt denotes the required quantity of part k in the order Without loss of generality, we can scale the qi and assume that rt = for all k In this case, a feasible stock position for the order implies that It ~> for all k If the total amount of available inventory is insufficient and a partial shipment is desired, a dummy location i with qi = - lk units and zero costs in and out of the location may be added; otherwise, part k should be deleted from the problem xij denotes the decision variable that defines the tour, equalling if location i immediately precedes location j in the tour, and otherwise Although most TSP formulations not use the notation xii, we define: (2.10) (2.4) X~j = gi E N, (2.5) ~-~qi(1 - x i i ) TmAax) The process of generating the neighborhood of the incumbent solution, evaluating each alternative assignment using subprocedure STABU, and advancing the search to the best solution encountered in the current iteration, is repeated until a limit on either the total number of iterations allowed for subprocedure ATABU, [mAax,or the total number of consecutive iterations tolerated without achieving an improvement in global performance, GAma x, is reached While other TSP heuristics (e.g., Lin and Kernighan, 1973) can be used to identify an appropriate picking sequence, subprocedure STABU has proven in our computational experience to be an effective means for obtaining close approximations of the optimal sequence with little computational effort Subprocedure STABU evaluates each element of the neighborhood of incumbent assignment S by employing a tabu-search approach to determine an approximation of the sequence in which the input locations should be visited to satisfy the picking requirement of all part types at minimum cost Given assignment St E NB(S), an initial sequence, ¢r(S~), is constructed using the nearest neighbor heuristic for the associated TSP By totalling the costs implied by this initial sequence, rrrt(S ~) = ¢r(S~), an upper bound, C (S ~, ¢rn(SP)), on the optimal solution is obtained Greedy solution or( S~) represents not only an initial sequence for subprocedure STABU, but also initializes the sequence tabu list T s ~ {¢r(S ~) }, which again prevents the search from cycling back to a previouslyencountered sequence In the interest of computational efficiency, the sequence tabu list only maintains a record of the TSax solutions most recently encountered in the search, with 7~Sax set equal to the number of locations in the warehouse, INI The neighborhood, NB (¢r(S ~)), of incumbent sequence 7r(S t) is defined by the set of all pairwise adjacent interchanges that can be made among the locations in 7r(S~); hence: INB (¢~(8'))I = I S ' l - Each alternative sequence ~r'(S ~) E NB (~r(S')) is evaluated by computing its cost, C (S',~a(S')), provided that 7r(S~) is not contained in the current sequence tabu list The minimum-cost solution encountered in the current iteration of subprocedure STABU is consistently retained, so that at the end of each iteration the minimum cost neighbor, 7r* (S ~), of incumbent sequence ~r(S') can be identified such that: C(S',Tr*(S'))= ~r'( S~)ENB(~r( St) ) {C (¢F(S'))} I f C (S',Tr*(S')) < C (S',rrH(S')), then 7r*(S') is retained as the best sequence thus far encountered in the search, "a'H(s') = ~-*(S~), and the value of C (S',~I(S')) is set equal to C (S',¢r*(S')) The search then moves to sequence 7r*(S ~) by setting rr(S') = ¢r*(S') and T s = T s + {~-*(S')} (with the oldest element of T s dropped from the tabu list if ITSl >/~S~x) The process of generating the neighborhood of the incumbent solution, calculating the cost of each alternative sequence, and advancing the search to the best solution encountered in the current iteration, is repeated until a limit on either the total number of iterations allowed for subprocedure STABU,/mSax, or the total number of consecutive iterations tolerated without achieving an improvement in global performance, GSrn~, is reached The nested-search strategy outlined in this section exploits the problem decomposition to search over the space spanning the sets of locations that together satisfy the picking requirement for all part types, and the possible sequences in which these locations can be 10 R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 visited to minimize total cost The computational performance of the tabu-search heuristic over a series of test problems is discussed in the next section Computational experience To explore the computational behavior of the solution approaches developed in this paper, procedures were coded and implemented on a 486 personal computer As shown in Table 1, the experimental design adopted for this study consisted of test problems involving IN I 10, 12, 20, 30, 40, 60, and 80 locations and IM[ = 3, 6, 9, and 12 part types The minimum number of locations associated with each part type, P = mink IPk], and the amount of inventory, qj, contained at each location j = 1,2 IN[, were also controlled, thus providing insight into the influence of these elements of the environment on problem tractability and solution quality Test problems were constructed by first randomly generating coordinates for the [gl locations on a 100 × 100 grid, with the home location assigned coordinates (0, 0) The first IMI x P locations were used to satisfy the specified lower limit on the number of locations per part type, with locations (k - 1)P + through kP assigned part type k The remaining IN I - ( [MI x P ) locations were then randomly assigned a part type With the requirement for each part type set at rk = 1.0 for k = 1,2 IMI, the amount of inventory contained at location j, j = 1,2 INI, was determined using one of four distinct methods: (i) qj = 1.0, so that any single location can satisfy the entire requirement for the associated part type, (ii) qj = U[0.6, 1.1], implying that either one or two locations containing each part type must be visited in any feasible solution, (iii) qj = 0.5, SO that exactly two locations must be visited for each part type, and (iv) qj = U[0.0,0.5], requiring feasible solutions to visit more than two locations per part type After generating inventory quantities for each location, the total amount of available inventory was calculated for each part type k, k = 1,2 IMI, when methods (ii), (iii), or (iv) were used; if ~jcek qJ < 1.0, the associated quantities were normalized so that ~jsek qJ = 1.0, thus ensuring problem feasibilty Ten replications were generated for each combination of [NI, IMI, and P specified in Table 1, and for each inventory assignment method, resulting in a total of 1520 test problems Table Experimental design: combinations of the number of locations, INI, the number of part types, IMI, and the minimum number of locations per part type, P Number of Number of part types (IM[) locations (IN[) 10 12 20 30 40 60 80 1,2 2,4 4,6 4,6 1,2 1,2 2,4 4,6 12 1,2 1,2 2,4 4,6 I 1,2 1,2 2,4 4, For each test problem, a lower bound on the optimal cost was obtained by generating all combinations of locations whose inventory in total satisfies without oversupplying the picking requirement for all part types, so long as the total number of assignments did not exceed 50 000 For each feasible assignment, a Lagrangean relaxation of the resulting travelling salesman problem was solved, and the lowest cost over all assignments retained The test problems were also solved using the randomized nearest neighbor, randomized shortest arc, and tabu search heuristics described in Section In addition, solutions were obtained for the modified single-pass versions of the nearest neighbor and shortest arc heuristics, as well as for a part-by-part (PBP) method commonly encountered in practice The PBP heuristic first focuses on satisfying the picking requirement of part type by computing the cost, co,j, of travelling between the home location and each location j E P1 containing part type Locations are then sorted in nondecreasing order of co,j, and a solution constructed by selecting locations in this order until the corresponding total amount of inventory exceeds the picking requirement for part type l Repeating the process sequentially for part types 2, IMI yields the final solution The computational results are presented in Tables and Table shows that a lower bound on the optimal cost could be determined for all problems in which INI = 10, 12, and 20, and for all of the 30location problems involving 12 part types For these problems, the average number of feasible assignments is reported, along with the average standardized difference between the cost of solutions generated by R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 each of the six heuristics (as well as the best of the six solutions) and the corresponding lower bound The lower bound was not computed for the remaining combinations of INL, IMI, and P, since at least one associated problem instance required evaluation of more than 50 000 feasible assignments For these problems, solution quality was assessed by comparing the heuristic solutions with the best solution encountered Thus, Table reports average CPU times for the randomized nearest neighbor, randomized shortest arc, and tabu search heuristics, as well as the average standardized difference between the cost of solutions generated by each of the six heuristics and the corresponding best heuristic solution The results in Tables and provide information on problem difficulty and the computational efficiency of the search heuristics The summary statistics indicate clearly that the number of feasible assignments grows rapidly as the total number of locations in the warehouse is increased Similarly, the overall observed effect of increasing the number of part types in the order is to decrease the number of feasible assignments, though we note that the maximum number of assignments is expected when the ratio of the number of locations to the number of part types takes on values intermediate on the range INI/IMI c [ 1, INI], with the maximizing value of INI/IMI a function of the method used to generate the qj CPU times for the randomized nearest neighbor, randomized shortest arc, and tabu search heuristics also increase with INI (though less quickly than the total number of feasible assignments), but remain reasonably low even for the largest problems With few exceptions, the largest and smallest CPU times were obtained from the randomized shortest arc and randomized nearest neighbor heuristics, respectively Insight into the absolute solution quality of the six heuristic procedures can also be gained from the results in Table All of the search heuristics closely approximated the optimal solution, as evidenced by the average deviations from the lower bound (6.1% for the randomized nearest neighbor, 3.4% for the randomized shortest arc, 6.5% for the tabu search, and 2.1% for the best of these heuristics) observed over the 680 test problems Thus, a strategy in which the search heuristics are run in parallel, with the overall best solution consistently retained, is an effective approach for identifying low-cost order picking policies 11 Conversely, the single-pass heuristics consistently yielded less promising results, with average deviations from the lower bound of 15.4% for the nearest neighbor, 23.6% for the shortest arc, and 105.0% for the part-by-part heuristics The randomized shortest arc heuristic consistently generated the highest quality solutions, followed closely by the randomized nearest neighbor heuristic for the 10- and 12-location problems, and by tabu search for the 20- and 30-location problems However, we note that the gap between solutions obtained from the randomized shortest arc and tabu search heuristics decreased considerably as the total number of locations in the warehouse increased This pattern continues in Table 3, which provides additional information on the relative performance of the heuristics For the 880 larger and more difficult problems represented in Table 3, the tabu search heuristic consistently generated the lowest-cost solution, as indicated by the average deviations from the best heuristic solution (8.3% for the randomized nearest neighbor, 9.5% for the randomized shortest arc, and 1.5% for the tabu search heuristic) While the performance of the randomized shortest arc heuristic degraded dramatically with increasing problem size, the relative quality of the tabu search heuristic steadily improved, suggesting that tabu search represents the most effective approach for identifying good order picking policies for larger problems Much poorer solutions were again observed for all of the single-pass heuristics, with average deviations from the best heuristic solution of 23.2% for the nearest neighbor, 51.6% for the shortest arc, and 167.4% for the part-by-part heuristic This evidence indicates that the myopic integration of location assignment and sequencing decisions used by these approaches is insufficient for the order picking environment Conclusions and suggestions for future research This paper has focused on inventory retrieval issues of importance in modern warehouse environments where required parts can be stored in multiple locations throughout the warehouse When the required quantity of any part can be collected by visiting only a subset of the locations storing that part, both the assignment of inventory to an order and the sequence in which selected locations are visited influence system 12 R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 Table Heuristic performance, given as the percentage difference between the heuristic and the lower bound (1gl, [M[,P_P_) Averagenumber of assignments ( 10, 3, 1) ( 10, 3, 2) ( 10, 6, 1) Average 30.3 26.9 4.7 20.6 2.3 2.1 2.4 2.3 ( 12, 3, 2) ( 12, 3, 4) ( 12, 6, 1) (12,6,2) ( 12, 9, 1) Average 92.3 124.5 14.2 16.8 2.9 50.1 (20, 3, 4) (20, 3, 6) ( 20, 6, 1) (20, 6, 2) (20, 9, 1) (20,9,2) (20, 12, 1) Average (30, 12, 1) (30, 12, 2) Average Search heuristics NN SA Single-pass heuristics Best Tabu NN SA 1.0 1.5 1.7 1.4 3.9 3.6 6.6 4.7 10.0 8.7 11.6 10.1 12.3 11.8 12.8 12.3 44.0 41.7 71.6 52.4 0.7 0.7 0.3 0.6 2.7 3.2 2.1 3.7 3.6 3.1 2.8 1.5 1.8 3.0 3.1 2.4 4.3 4.5 5.2 9.1 9.3 6.5 11.9 11.5 10.8 12.1 12.5 11.8 23.9 26.1 14.6 16.6 15.8 19.4 54.3 51.2 86.7 100.1 101.9 78.8 1.1 0.8 0.7 1.7 1.9 1.2 3254 3541 901.9 930.4 187.0 283.1 52.3 1307 3.2 2.9 5.9 6.9 8.1 11.0 9.9 6.8 2.0 3.2 1.8 3.5 3.9 5.2 4.8 3.5 2.0 2.6 4.9 7.1 7.7 10.2 9.9 6.3 12.3 10.4 18.7 17.6 20.1 19.0 19.3 16.8 43.3 44.3 24.0 25.0 22.0 24.7 21.1 29.2 59.1 60.6 107.2 119.6 145.3 161.0 160.0 116.1 0.7 0.9 1.2 2.5 2.8 4.3 3.9 2.3 6737 10739 8738 14.9 18.7 16.8 6.1 10.2 8.2 8.1 12.0 10.1 26.5 28.3 27.4 31.0 32.3 31.7 205.0 215.7 210.4 4.2 8.3 6.3 performance A model that simultaneously determines the location assignment and sequence that minimize the total cost of satisfying order requirements was formulated and compared to previous order picking models The complexity of the order picking problem, along with an upper bound on the number of feasible location assignments, was established Several heuristic approaches to the problem were examined, including single-pass and randomized versions of the nearest neighbor and shortest arc TSP heuristics, and a tabu search algorithm Computational experiments with the procedures indicated the effectiveness of the search heuristics, which efficiently constructed order picking strategies closely approximating the associated optimal solution, and consistently outperformed the single-pass heuristics These search approaches represent useful alternatives for identifying low-cost location assignment and sequencing decisions, especially in large warehouse environments where optimal policies cannot be obtained We consider only the tour costs in our model, but factors other than tour cost often affect the desirability PBP heuristic of using locations containing a given part type For example, inventory age is particularly important when stocks deteriorate rapidly or the risk of obsolescence is high While it might be possible to model this by adjusting the cost matrix, reducing cij and cji as item i remains unused, but more general models might be needed to link inventory assignment and sequencing decisions to these other system objectives Several possible extensions of this work are immediately apparent One question is whether the firm would want to adopt a policy of storing parts in multiple locations at all This paper does not address this issue directly, but in order to compare single versus multiple location strategies, the order picking subproblem for each must be solved Many techniques exist for solving the TSP associated with the single location model and this paper provides heuristics to evaluate the cost of picking where items are stored in multiple locations Warehouse performance is also clearly influenced by the number and proximity of locations that store R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 13 Table Heuristic performance, given as the percentage difference between the heuristic and the best heuristic solution for that problem instance Execution time Search heuristics ( IN[, IM[, P ) NN SA Tabu NN (30, 3, 4) ( 30, 3, ) ( 30, 6, ) ( 30, 6, ) (30, 9, 1) ( 30, 9, ) (30, 12, 1) ( 30, 12, 2) Average 0.3 0.3 0.4 0.4 0.5 0.5 0.6 0.6 0.5 56.8 44.0 90.5 82.5 117.9 126.2 31.9 24.2 71.7 2.5 2.3 6.0 5.0 8.1 8.7 10.0 9.0 6.4 3.1 2.2 6.6 5.7 9.1 8.1 10.3 9.8 6.9 (40, 3, 6) (40,6,4) ( 40, 6, ) (40, 9, 2) ( 40, 9, 4) (40, 12, ) (40, 12, 2) Average 0.3 0.6 0.5 0.8 0.7 0.7 0.8 0.6 62.5 181.5 269.1 218.5 203.6 321.8 285.4 220.3 5.8 19.6 19.8 40.6 30.8 40.2 40.3 28.2 (60, 6, 6) (60, 9, 4) ( 60, 9, ) (60, 12, 2) (60, 12,4) Average 0.7 1.1 1.2 1.1 1.1 1.0 188.8 309.0 254.5 461.3 355.8 313.9 (80, 9,6) (80, 12,4) ( 80, 12, 6) lpt] Average 1.8 1.1 2.1 1.7 248.3 233.1 200.5 227.3 Single-pass heuristics Tabu NN SA PBP 4.1 5.0 2.0 3.0 1.7 1.2 1.9 1.8 2.6 0.9 1.0 1.7 1.6 2.0 3.4 3.6 3.4 2.2 15.0 14.4 16.8 22.6 23.3 19.9 21.5 18.7 19.1 53.2 65.4 35.9 37.8 25.7 28.0 25.9 22.4 36.8 67.4 69.1 124.8 127.4 162.4 168.9 192.0 191.4 137.9 2.3 5.5 5.2 10.0 8.4 11.2 11.5 7.7 16.4 7.8 7.5 5.3 4.3 2.1 3.3 6.7 0.9 0.8 0.6 1.3 2.0 2.1 1.9 1.4 14.2 24.1 24.9 21.2 20 ! 23.6 25.8 22.0 85.2 51.9 49.9 35.9 35.7 26.8 30.1 45.1 73.8 135.7 139.9 180.9 189.7 210.3 196.0 160.9 76.3 196.9 152.0 266.9 248.9 188.2 5.8 10.4 9.9 13.6 11.6 10.3 15.8 16.0 12.6 14.9 11.5 14.2 1.2 0.8 2.2 0.5 1.2 1.2 24.6 28.6 28.8 27.4 25.1 26.9 79.3 56.3 57.9 41.0 45.5 56.0 126.7 186.3 196.3 216.0 223.8 189.8 651.8 804.3 820.5 758.9 7.9 12.2 10.7 10.3 26.1 25.9 27.6 26.5 1.0 0.3 0.7 0.7 31.1 32.5 27.8 30.5 108.2 93.0 96.5 99.2 188.9 244.6 238.3 223.9 individual parts (see, e.g., Graves et al., 1977); thus, further research should focus on integrating stock allocation strategies (which direct the placement of incoming inventory when there is a choice of locations) and order picking policies Finally, since warehouses often simultaneously process multiple orders with unique part and delivery requirements, models that explore the trade-off between warehouse cost and delivery performance should be developed These and other research suggestions highlight the importance of focusing on the inventory retrieval process to improve the performance of modern warehouse operations Appendix A Proof of Proposition First assume all the qj = Q = I~:/n When Ik = 1, then x = n and S = 1, since the only feasible solution is to choose all the locations SA When lk >>- n, then x = and S = n, since the only feasible solutions are to pick each location separately When < Ik < n, the value of x is the number of locations that need to be picked for a feasible solution and (nx) gives the number of combinations Notice that S is maximized when Ik = Now suppose that the qj are all different Let Q÷ denote those locations where qj ~> Q, and Q - those locations where qj < Q Suppose there are r locations of type Q - If r = 0, then all locations j E Q÷ must have qj = Q, thus corresponding to the case considered above For r > 0, there are three types of assignments that will meet the picking requirement: (i) those consisting exclusively of locations in Q+, (ii) those consisting exclusively of locations in Q - , and (iii) those consisting of a combination of locations in Q+ and Q - 14 R.L Daniels et a l / E u r o p e a n Journal o f Operational Research 105 (1998) - qj For case (i), first suppose that is only slightly larger than Q for each j E Q+ Then the number of locations in each feasible assignment is still x, and the number of feasible assignments is given by (n~-r) If some of the locations in Q+ contain inventory much larger than Q, then some assignments will violate (2.7), and thus we have an upper bound on the number of feasible assignments For case (ii), suppose that is only slightly smaller than Q for each j E Q - Then a feasible assignment will require at least x + locations, and the number r If some of feasible assignments is bounded by (x+l)' of the locations in Q - contain inventory much less than Q, then some assignments will violate (2.6), and so again we have an upper bound on the number of feasible assignments Case (iii) requires that an assignment balance some locations from Q+ with some from Q- The number of assignments would be maximum if the balanced sets were of size x The number of such sets is given by qj ~(:)(: :) ~,> In order to prove ( ) we must show: (~:,)÷±(:)(; :) S (:',) ~( )( n-r-I ) , /> + + s=0 (1:,)+ +~(;)(: ;) s=l ,m~> Let r = Then the right hand side of (A.2) becomes: (";1)÷(x;,)÷(n :) ,m~> The middle term is zero, and we know that: (n)=(nxl)+(xn-_]) We now show that the right hand side of (A.2) is monotone decreasing in r by showing that: ;) s=l r+l( +~ ~ X S S (r- /> x + r+l +Z [(;)+ (s-1)l (n-r-l) r (A.7) s ( r ) ~ ~(:)(n-r-1) x+l + s=O x-s +~L~ ( ; ) ( ; - r - i ) s=0 S ->.(:+11) +~.(;)(n _ ],- 1) r+,( r )( n-r-1 ) , +Z s-1 s O S x-s (A.8) (r) ±(:)(n r ,) x+l + s=O r(:) +~ (:;i) X S (r- i) + ±(:)(n r ,) s=O +Z (r)(, s r+| 5"=1 X S r l) x s (A.9) r (r-l) + +1 r ~ 1)( n-r-1 X S s -0 (A.4) (~xr)+(x:,)+±(;)(: (A.6) X S (:) I(n-r-1) + (n-r-i)] r=o /> x + x S s (;) ~(nxr) +(x~l ) (n-r-l) >/ r+l ) , (A.51 (x:,)+~(:)(::: i) ->(: ; 'l) +~ (;) (: : ;) s=0 (A.10) 15 R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 ( r ) (r ll) x+l ~> x + ' r>~r-x- (A.11) (A.12) This completes the proof of the proposition Subprocedure ATABU Input: the set of part types, M, the set of locations, N, the set of locations containing part type k, Pk (for all k E M), the cost of travelling from location i to location j, cij (for all i , j E N, i ~ j ) , the quantity of inventory contained at location i, qi ( f o r all i E N), and the picking requirement for part type k, rk (for all k E M) Specified search limits on the number of assignment iterations, YmAax,the number of iterations ~A without realizing a global improvement in cost, Gmax, and the assignment tabu list length, 7~mAax Output: a set of locations, Sn, and an associated sequence in which the locations should be visited ~rH(SH), yielding a total cost, C (SH,rrn(SH)), that approximates the minimum cost that must be incurred to satisfy the picking requirement Step Compute the minimum and maximum number of locations required to satisfy the picking requirement of part type k Step l(a) Let kt represent the location containing the g-th smallest inventory of part type k For k = 1,2 ]M], compute k= l~>"rk and ~-]gcsk q e + q j , - q j - - q h < rk for all h E Sk (h ~ j ) , then NB1 (S) = NBl ( S ) + S ' Repeat Step 3(b) Step 3(c) k = k+ If k > IM[, set k = and go to Step (d) Else, if [Sk[ = k, repeat Step ( c ) Otherwise, for each j E Sk and jl, j , E Pk Sk, construct neighbor S ~ = S - { j } + { j ' , j " } If~-~t~sk qg+qj,+qj,,-qj >~ rk and ~-]e¢sk qe + qJ' + qJ" - qJ - qh < rk for all h E Sc (h ~ j ) and h = j ' , j " , then NB2(S) = NB2(S) + S' Repeat Step 3(c) Step 3(d) k = k + l Ifk > IMI, set k = and go to Step 3(e) Else, if Iakl = repeat Step 3(d) Otherwise, for each j, j ' E Sc and j " E Pc-Sk, construct neighbor S' = S - { j , j ' } + { j ' } If~~tESk qeq-qj" qj qj' >/ rk and ~e~sk qe + qj', - qj - qj, - qh < rc for all h E Sc (h ~ j , j ' ) and h = j ' , then NB3(S) = NB3(S) ÷ S' Repeat Step 3(c) Step 3(e) NB(S) = NBI(S) U NBz(S) t_JNB3(S) Step Identify the best neighbor of the incumbent assignment Step 4(a) For each SI E NB(S), approximate C (St, 7rH(S t) ) using subprocedure STABU Step 4(b) Identify S* such that: C (S*,TrH(S*))= {C ( S ' , ~ ' H ( s ' ) ) } S'ENB(S) Step Update solution and check for stopping conditions Step 5(a) Set gA = gA + and i A = i A + If C (S*,~Ja(S*)) < C (SH,TrH(SH)), then set SH = s', c (s", s") ) = c (s*, s.) ) , and g" = o Step 5(b) If gA ~> OAmaxor iA /> [mAax, stop Otherwise, R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 16 A set S = S* a n d T A = T A q- {S*} I f t A < T~ax, set Step 3(b) If gS ~> OSax or i s ~>/Smax, stop Otherwise, t A = t A + 1; otherwise, remove the oldest assignment from T A Return to Step set rr(S') = zr*(S t) and T s = T s + {~-*(S') } If t s < TmSa~, set t s = t s + 1; otherwise, remove the oldest assignment from T s Return to Step Subprocedure STABU Input: the set of locations in the current assignment, S t, and the cost of travelling from location i to location j, cij (for all i,j C S t, i ~ j) Specified search limits on the number of sequence iterations,/Smax, the number of iterations without realizing a global improvement in cost, t~Smax,and the sequence tabu list length, 7~Aax Output: a sequence, zra(St), with associated total cost, C (S t, 7rn (S t)), that approximates the minimum cost that must be incurred to visit all of locations contained in S t Step Initialize incumbent sequence Step l(a) Set zra(S t) = ~ and i = Step l(b) Identify location j* such that j* C S t, j* 7rH( S' ) , and ci,j ~ ci.j for all j E St, j ~ ~B ( st ) Set ~I(s') = crH(S ') + {j*} If [zrH(S')t = ]St], go to Step l ( c ) Otherwise, set i = j* and return to Step (b) Step l(c) From sequence rrh(s ,) compute initial total cost C (S',,,rrn(St)) Initialize the incumbent sequence, ~r(S t) = ~'H(S'), sequence tabu list, T s = {~'H(st)}, and counters, gS = and i s = t s = Step Generate and evaluate the neighborhood of the incumbent sequence Step 2(a) Set NB (~r(S')) = ~3and g = Step 2(b) g = g + If g > IS'I, go to Step 2(c) Otherwise, construct neighbor ~ (S t) of the incumbent sequence by interchanging the elements contained in position g - and g in ~'(St) Set NB (rr(S')) = NB (~-(S')) + {~"(St)} and repeat Step 2(b) Step 2(c) For each l r ' ( S ' ) E NB (rr(S')), compute C (S t, ~-t(S')) Identify ~r* (S') such that: C(S',rr*(S'))= man lr'(S') ENB(~r(S')) {C(S',~"(S'))} Step Update solution and check for stopping conditions Step 3(a) Set gS = gS + and is = is + If C (S',,r*(S')) < C (S',rrn(S')), then set 7rn(S ') = "lT* ( St ) , C ( St , TrH ( st ) ) = C ( St, "lT* ( St ) ) , and gS = O References Balas, E., 1989 The prize collecting traveling salesman problem Networks 19, 621-636 Bozer, Y.A., Schorn, E., Sharp, G.P., 1990 Geometric approaches to solve the Chebyshev Traveling Salesman Problem liE Transactions 22, 239-254 Feo, T.A., Venkatraman, E, Bard, J.E, 1991 A GRASP for a difficult single machine scheduling problem Computers in Operations Research 18 (8), 635-643 Garey, M.R., Johnson, D.S., 1979 Computers and Intractability Freeman, San Francisco, CA E Glover, 1989 Tabu Search, Part I ORSA Journal on Computing (3), 190-206 Glover, E, 1990a Tabu Search, Part II ORSA Journal on Computing (1), 4-32 Glover, E, 1990b Tabu search: a tutorial Working Paper, University of Colorado Goetschalckx, M., Ratliff, H.D., 1988 Sequencing picking operations in a man-aboard order picking system Material Flow 4, 255-261 Golden, B.L., Bodin, L.D., Doyle, T., Stewart, W., 1980 Approximate traveling salesman algorithms Operations Research 28, 694-711 Graves, S.C., Hausman, W.H., Schwartz, L.B., 1977 Storage retrieval interleaving in automatic warehousing systems Management Science 23 (9), 935-945 Gray, A.E., Karmarkar, U.S., Seidmann, A., 1990 Warehouse design and operation: models and application CMOM Working Paper, Simon Graduate School of Business Administration, University of Rochester Knox, J., 1989 The application of Tabu Search to the Symmetric Traveling Salesman Problem Ph.D Thesis, Graduate School of Business, University of Colorado Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G., Shmoys D.B., 1985 The Traveling Salesman Problem Wiley, New York Lin, S., Kernighan, B.W., 1973 An effective heuristic algorithm for the Traveling Salesman Problem Operations Research 21, 498-516 Malek, M., Guruswamy, M., Owens, H., Pandya, M., 1989a Serial and parallel search techniques for the Traveling Salesman Problem Annals of OR: Linkages with Artificial Intelligence 158-175 Malek, M., Heap, M., Kapur, R., Mourad, A., 1989b A fault tolerant implementation of the Traveling Salesman Problem Research Report, Department of Electrical and Computer Engineering, University of Texas at Austin Matson, O., White, J.A., 1982 Operational Research and material handling European Journal of Operational Research 11,309319 R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 Noon, C.E., Bean, J.C., 1991 A Lagrangean based approach for the asymmetric generalized Traveling Salesman Problem Operations Research 39 (4), 623-632 Ratliff, H.D., Rosenthal, A.S., 1983 Order-picking in a rectangular warehouse: a solvable case of the Traveling Salesman Problem Operations Research 31 (3), 507-521 Rosenkrantz, D.J., Steams R.E., Lewis, EM., 1977 An analysis of several heuristics for the Traveling Salesman Problem SlAM Journal on Computing 6, 563-581 17 Tang, C.S., Denardo, E.V., 1988 Models arising from a flexible manufacturing machine, Part I: minimization of the number of tool switches Operations Research 36 (5), 767-777 Witt, C., 1987 Auto parts supplier uses consolidation to save distribution dilemma Material Handling Engineering 42 ( 11 ), 83-88 ... European Journal of Operational Research 11,309319 R.L Daniels et al./European Journal of Operational Research 105 (1998) 1-17 Noon, C.E., Bean, J.C., 1991 A Lagrangean based approach for the asymmetric... generalized Traveling Salesman Problem Operations Research 39 (4), 623-632 Ratliff, H.D., Rosenthal, A. S., 1983 Order- picking in a rectangular warehouse: a solvable case of the Traveling Salesman... feasible solutions to visit more than two locations per part type After generating inventory quantities for each location, the total amount of available inventory was calculated for each part