Sunteți pe pagina 1din 17

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/245330612

Clustering-based order-picking sequence algorithm for an


automated warehouse

Article  in  International Journal of Production Research · October 2003


DOI: 10.1080/0020754031000120005

CITATIONS READS
26 589

4 authors, including:

Byung-In Kim Sunderesh S. Heragu


Pohang University of Science and Technology Oklahoma State University - Stillwater
71 PUBLICATIONS   1,376 CITATIONS    160 PUBLICATIONS   4,080 CITATIONS   

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Byung-In Kim on 06 February 2015.

The user has requested enhancement of the downloaded file.


int. j. prod. res., 2003, vol. 41, no. 15, 3445–3460

Clustering-based order-picking sequence algorithm for an automated


warehouse

BYUNG-IN KIMy, SUNDERESH S. HERAGUz*,


ROBERT J. GRAVESz and ART ST. ONGE}

This paper addresses the order picking sequence problem in an automated ware-
house where parts of an order picker’s travelling tour are fixed, the length of the
layout is significantly longer than the width, and the picker can hold only one item
at a given time. The problem is to find an optimal sequence with given vertical
paths and so it is a special type of travelling salesman problem. A simple sorting-
based heuristic and an efficient clustering-based algorithm are developed for this
problem. In order to use the gantry robots more efficiently, a flexible drop buffer
assignment is considered and the proposed algorithms are modified for the new
operating condition. Experimental results indicate the efficiency of the proposed
algorithms.

1. Introduction
Warehousing functions include receiving, storing, and order fulfilment.
Assignment of products to storage locations, order batching or sequencing, assign-
ment of picking tasks to order pickers, and sequencing of picks (routing) are impor-
tant planning and operational decisions in the warehousing problem (Rouwenhorst
et al. 2000, Van den Berg 1999). The warehouse functions are at the core of the
business in firms such as wholesale distributors and customer-driven companies
(Daniels et al. 1998). Surveys have shown that order picking consumes more than
50% of the activities in a warehouse (Tompkins et al. 1996). It is therefore not
surprising that order picking is the single largest expense in warehouse operations
(Heragu 1997).
This paper addresses the order picking sequence problem in an automated ware-
house based on an actual industrial problem. The warehouse consists of 16 pick
zones. More than 0.4 million products can be stored in the warehouse and 0.1 million
products are typically picked every day. The pick zones are arranged in a serial
order, and there is a common conveyor between them so each order tray passes
by pick zone 1 through pick zone 16 in order. A pick zone has a gantry picking
robot and contains 85 drop buffers where products picked by the gantry robot are
placed and wait for their order trays. The length of the pick zone is significantly
longer than the width. The gantry robot can hold only one item at a given time. Since
the gantry robot must place a product at the nearest drop buffer after picking the

Revision received February 2003.


yIndustrial and Systems Engineering, University of Memphis, Memphis, TN 38152, USA.
zDepartment of Decision Sciences and Engineering Systems, Rensselaer Polytechnic
Institute, Troy, NY 12180, USA.
}St. Onge Company, York, PA 17402, USA.

International Journal of Production Research ISSN 0020–7543 print/ISSN 1366–588X online # 2003 Taylor & Francis Ltd
http://www.tandf.co.uk/journals
DOI: 10.1080/0020754031000120005
3446 B.-I. Kim et al.

product, the paths between pick locations and drop buffers can be assumed to be
fixed. Thus, the order picking sequence problem is to find an optimal sequence with
given vertical paths, making it a special type of travelling salesman problem (TSP).
The objective is to minimize the travelling time of the gantry robot. A simple sorting
based heuristic and an efficient clustering based algorithm are developed for this
problem and experimental results indicate their efficiency. In order to use the
gantry robots more efficiently, a flexible drop buffer assignment is considered and
the proposed algorithms are modified for the new operating condition.
This paper is organized as follows. After we briefly review the literature in
section 2, details of the actual industrial warehousing problem (to which our pro-
posed order-picking sequencing algorithms are applied), are presented in section 3.
A simple sorting-based heuristic, an efficient clustering-based algorithm, and their
modification for a different operating condition are presented in section 4.
Experimental results and conclusions follow in sections 5 and 6.

2. Literature review
A brief review on warehouse planning and control is provided in this section.
Ratliff and Rosenthal (1983) develop a graph-based algorithm for optimally solving
the order picking problem in a rectangular warehouse, in which there are parallel
aisles between storage areas, and a picker can change the storage areas only at the
ends of the aisles. They assume that the picker picks items for only one order at a
time and the number of items in an order is within the capacity of the picker.
Roodbergen and de Koster (2001) extend the work of Ratliff and Rosenthal
(1983). They consider the order picking problem in a parallel aisle warehouse, in
which order pickers can cross over the aisles at the ends of the aisles as well as at a
middle cross aisle. They develop a dynamic programming algorithm to solve the
problem. Van den Berg and Gademann (1999) develop a transportation problem
(TP) model for a block sequencing in an automated storage and retrieval system
(AS/RS) with dedicated storage and a single-load machine. They prove that the
optimal solution of the TP problem is the optimal sequence of the machine to
minimize the travelling time. Han et al. (1987) consider an AS/RS in which the
device executes dual command cycles. They provide methods for improving the
throughput of the device and a lower bound on the dual command cycle time.
Hwang et al. (1988) present clustering-based heuristic algorithms for the batching
of orders for order picking in a single-aisle AS/RS. To minimize the total travel
distance of an order-picking device, several orders are combined into a batch and
picked in one trip. Defining similarity coefficients in terms of attribute vectors,
Hwang and Lee (1988) present heuristics that batch a given set of orders so that
the total travel time of the storage/retrieval device is minimized. Liu (1999) applies a
clustering technique to solve stock location and order picking problems in a distri-
bution centre that has gravity-flow racks. Product items and customers are clustered
based on their similarities, which are measured using proposed metrics. He formu-
lates the clustering problem as an integer programming model and proposes a
primal-dual algorithm to solve it. Daniels et al. (1998) consider the warehouse prob-
lem in which goods are stored at multiple locations and the pick location of a part
can be selected dynamically. They present a model that simultaneously determines
the location assignment and picking sequence. They point out that the formulated
model is NP-complete and present several heuristics to solve it along with experi-
mental results. The order-picking problem has previously been modelled as a
Sequence algorithm for an automated warehouse 3447

Tchebychev travelling salesman problem (TTSP) and various algorithms for TTSP
have been developed. Among them are Bozer et al. (1990), Heragu et al. (1994), and
Goetschalckx (1983).
Ashyeri and Gelders (1985) review the existing literature on warehouse design
methods after classifying the methods as analytical, simulation, and heuristic
approaches. Van den Berg (1999) and Rouwenhorst et al. (2000) survey literature
on warehouse planning and control. Planning includes the storage location assign-
ment problem, and the control of a warehousing system includes routing, sequenc-
ing, scheduling, dwell-point selection, and order batching. Goetschalckx and Wei
(1994) present a bibliography on order-picking systems for 1985 through to 1992.

3. The order-picking sequence problem


In this section, we provide details of the actual industrial warehousing problem to
which our proposed order-picking sequencing algorithms are applied. The ware-
house receives cosmetic products from several plants in the US and overseas loca-
tions. Its functions are primarily twofold. The first is to receive the products 
several thousand products in various quantities from the plants and store them in
the warehouse. The second is to receive customer orders and fill them directly from
the products stored in the warehouse. Both activities occur daily. The focus of this
paper is on the order-picking sequencing problem. Intelligent agent-based algorithms
for picking (resource assignment) and replenishment operations are introduced in
other publications (see Kim et al. 2002, 2003a, 2003b).
The warehouse is fully automated, and has 16 pick zones. The pick zones are
arranged in a serial order, and there is a common conveyor between them so each
order tray passes by pick zone 1 through pick zone 16 in order. Each pick zone has a
gantry picking robot and 19 pick totes (see figure 1). Each pick tote has 48 compart-
ments, each of which stores only one product type at a given time and has a capacity
of 30 products. While a typical product is contained in only one pick zone, some
popular products may be spread over more than one pick zone and are distributed
across the pick zones. A pick zone also contains 85 drop buffers where products
picked by gantry robots are placed and wait for their order trays. Each drop buffer
can contain only one product at a given time. The conveyor speed indexes at a
constant interval as each order tray progresses through the system allowing the
drop buffer to deposit its contents on any designated order tray. The gantry robot

Gantry Robot
Compartment
Pick tote

Drop buffer
Conveyor
Figure 1. Gantry pick zone layout.
3448 B.-I. Kim et al.

must not only pick the items for the current order in its zone, but must also place
them in drop buffers prior to the order tray entering its zone. If the item is deposited
in a drop buffer after the tray designated to receive it has passed that buffer, a pick
error occurs. Each order tray will contain one customer’s order and can accommo-
date multiple line items. Each order’s line item is a single unit of a product.
In order to use gantry robots efficiently, 80 trays are logically formed into a
‘train’ (figure 2). The first of the 80 trays is called the ‘locomotive’ and the remaining
79 form the train pulled by the locomotive. Each line item of orders in the order train
contains information about the product to be picked, as well as the compartment in
which the product resides. When the locomotive of an order train reaches a desig-
nated point (called trigger point) for a pick zone’s gantry, all 80 order trays in the
train are scanned to see what items, if any, must be picked from the zone. The trigger
point for a zone is a downstream point, which is three zone lengths away from the
starting point of that zone. The small highlighted rectangles in figure 2 correspond to
the items that must be picked. A work queue for the order train is then made and
filled in a batch by the gantry robot. The robot can handle only one item at a given
time. Thus, after the robot picks an item, it must place the item in a drop buffer prior
to picking another item. To find an optimal or a near optimal picking sequence for
the work queue is the order-picking sequence problem, and it is this problem that we
attempt to solve in this paper. The optimal sequence is the one that requires the least
gantry travelling time.
Generally, the order-picking sequence problem can be modelled as a travelling
salesman problem (see Heragu, 1997). In this industrial application, the gantry robot
deposits a product at the nearest drop buffer after picking it, i.e. the one vertically
below it, making the robot sequencing problem a special type of travelling salesman
problem (see figure 3).
With an artificial pick location P0, which will be the virtual starting and ending
position for the problem (see figure 4), the problem can be modelled as the travelling
salesman problem (TSP). The travelling times between the artificial location and the
other locations are set to be zero. Since the gantry robot has two independent motors
that allow movement in both the horizontal and vertical directions simultaneously,
the time it takes to travel from one point to another depends on the maximum of the

Enlarged View Trigger Point

Enlarged View
Locomotive
Order train = 80 order trays

Figure 2. Order train and trigger point.

P2 P3 Pick P5 P6 P8
P1 Locations P4 P7
Drop buffers
Figure 3. Order-picking sequence problem.
Sequence algorithm for an automated warehouse 3449

Virtual starting and ending position

p2 p3 p5 p6
p1 p0 p8
p4 p7

Figure 4. Order-picking sequence problem with an artificial location.

horizontal and vertical movement times between the two points. Once again, because
the gantry robot must place a product at a drop buffer after picking the product, its
movement time from a pick location to another consists of movement time from the
pick location to the drop buffer plus the movement time from the drop buffer to the
next pick location. Thus, the order picking sequence problem can be formulated as
following a mathematical model (see Heragu 1997).
It is assumed in this model that there are n pick locations and the artificial pick
location is indexed as 0. The decision variable wij takes on binary values, 0 or 1,
depending on whether or not pick location i is visited immediately after location j in
the order picking sequence. The objective function minimizes the total travelling time
for the gantry robot to fulfil the orders. The first two constraints ensure that there is
only one arrival and one departure from a pick location. The third set of constraints
are not to have any subtours in the optimal solution. The fourth set of equations
relate to the travelling time between any two pick locations.
X
n X
n
Minimize dij wij
i¼0 j¼0,j6¼i
X
n
Subject to wij ¼ 1 for each j
i¼0,i6¼j
X
n
wij ¼ 1 for each i
j¼0,j6¼i

ui  uj þ ðn þ 1Þwij n for 1 i 6¼ j n
8
< movement time from location i to a nearest drop buffer
>
dij ¼ þ movement time from the drop buffer to location j, for 1 i 6¼ j n
>
:
0 for 0 i 6¼ j n, either i or j ¼ 0
wij ¼ 0 or 1 for each i,j,i 6¼ j
ui are arbitary real numbers for each i
In order to solve this problem in a near real time, a simple sorting-based heuristic
and an efficient clustering-based algorithm are developed and presented in the next
section.

4. Algorithms for the order picking sequence problem


4.1. X-coordinate based heuristic
Under the assumption that a gantry robot must deposit the item in the drop
buffer nearest the location of the picked item, the sequencing of pick locations based
3450 B.-I. Kim et al.

Figure 5. x-coordinate based heuristic.

Minimum horizontal moving time

(h1,v1) p2 (h3,v3) (h4,v4)


p1 p4 p5 (h6,v6)
p7
(h2,v2)
p3 (h5,v5) p6

* pi: pick location


* (hi, vi): horizontal and vertical moving time from the
drop buffer for pi to location i+1
Figure 6. Case when an optimal solution is guaranteed by the x-coordinate based sequencing.

on their x-coordinates, i.e. simple left-to-right or right-to-left sequencing heuristics,


gives an optimal solution in many instances, because the length of a pick zone is
significantly longer than the width (see figure 5). Specifically, when the pick locations
are sparse enough such that the horizontal movement time of the gantry robot
between any two possible locations (one is the drop buffer for the previous location
and the other is the next location) is always longer than the vertical movement time,
the x-coordinate based sequencing method generates an optimal solution (figure 6).
Because the gantry robot has two independent motors, one permitting movement in
the horizontal direction and the other in the vertical direction, the movement time
between two locations depends on the longer of the horizontal and vertical moving
times.
Thus, when the pick locations are sparse enough such that the horizontal move-
ment time between any two locations of the gantry robot is always longer than the
vertical movement time, the gantry moving time depends only on the horizontal
movements. Note that the vertical movement from a pick location to a drop
buffer is the same for any item picking sequence. The x-coordinate based sequencing
method generates an optimal solution since the sum of the movement times
between two consecutive locations equals the movement time between the start
(far west) location and the end (far east) location, which is the minimum possible
time (figure 6).
However, when the sparsity condition for the pick locations is not met, as in
figure 7, the x-coordinate based sequencing method cannot guarantee optimality.
The numbers next to the arrows in figure 7(a) correspond to vertical or horizontal
movement times between various locations. While the x-coordinate based heuristic
generates a sequence with 47 travelling time seconds in figure 7(b), a better sequence
can be generated as in figure 7(c). A clustering based algorithm is developed and
presented in the next section.
Sequence algorithm for an automated warehouse 3451

10
5 5
1

10 1 6
(a) Problem

(b) Moving time=47 (c) Moving time=40


=5+10+1+10+10+6+5 =5+11+10+1+1+7+5
Figure 7. Case when the x-coordinate based sequencing is not an optimum.

4.2. Clustering-based sequencing algorithm


Our clustering-based sequencing algorithm has three steps: clustering locations
based on their horizontal positions, solving each cluster individually, and combining
the subtours. First, locations are clustered such that moving time between any
two locations from different clusters is dominated by horizontal travelling time.
A clustering algorithm is developed for this purpose as follows.
Clustering algorithm
Step 0. Sort locations in increasing order of x-coordinates.
Step 1. Set current_cluster_index ¼ 1. Select a location that has the smallest
x-coordinate and place it into the current cluster.
Step 2. If there is a location from the remaining unselected locations such that the
horizontal movement time between that location and any other from the
current cluster is less than the vertical movement times of the locations,
place the location into the current cluster. Repeat step 2 until there are no
more such locations.
Step 3. If there are no more locations remaining to select, stop.
Otherwise, set current_cluster_index ¼ current_cluster_index þ 1 and put
the next right location from the previous location selected into the current
cluster. Go to step 1.
Figure 8 shows an example of clustering. While the movement time between P5
and P6 is dominated by the horizontal movement time, since the movement time
between P4 and P6 is dominated by the vertical movement time, P6 belongs to the
second cluster.
Consider the sparsity condition introduced in the previous subsection. Since the
horizontal movement dominates the movement time between clusters, the left to
right order is the (near) optimal cluster sequence to minimize the gantry movement
time if we assume the current gantry robot is located on the left. Although the
optimality has not been proven mathematically, experimental results show that the
clustering-based method produces optimal results for all the test examples presented
3452 B.-I. Kim et al.

Cluster 2
Cluster 1 Cluster 4
P4 Cluster 3
P3
P1 P8 P9
10 P5 P7 P10
P2 5 P6
5 7
1 2 2 4 5 3

4 6 4 3 3 5 5 3 6
Figure 8. Clustering.

Any final position from


the optimal sequence
C2
St for C1
C1 P4 C4
C3
P P3 P8 P9
1 P5 P7 P10
P2 P6

End for C1 St for C2 St for C3 St for C4


End for C2 End for C4
Last position of robot End for C3
for previous order train
* St: Virtual starting position
End: Virtual ending position for cluster
Figure 9. Virtual starting and ending positions for cluster.

in the next section. Since each cluster has a small number of locations, enumeration
methods or other optimization methods can be used to find an optimal or near
optimal sequence more easily for each cluster.
However, we do not know what locations will be the starting and ending loca-
tions in the final sequence. For example, in figure 7(a), the first location itself forms
the first cluster and the remaining locations form the second cluster according to our
clustering algorithm. In the example, the optimal starting location for the second
cluster is the second location rather than the first in the cluster. In order to resolve
this problem, i.e. set the starting and ending locations in the sequencing problem
within a cluster, we use the concept of virtual starting and ending positions. The
virtual starting point of a cluster is set to the drop buffer position of the last location
in the previous cluster (see figure 9). The virtual ending point of a cluster is set to the
drop buffer position of the last location in the current cluster. For the first cluster,
the virtual starting position may be set either to the last position of the gantry robot
for the previous order train or to the leftmost location for the current work queue.
For the last cluster, the virtual ending position may be set to either the rightmost
location in the cluster or any other position (see figure 9). In our experiments in the
next section, the leftmost location for the current work queue is used for the virtual
starting point of the first cluster, and any position can be chosen as the virtual ending
position of the last cluster.
Sequence algorithm for an automated warehouse 3453

A tour for a cluster should start at the virtual start position and end at the virtual
ending position. Thus, when the total gantry moving time is calculated, the move-
ment time from the virtual starting position to the actual starting location and the
movement time from the actual ending location to the virtual ending position should
be considered. For example, if the final location of the tour for cluster 2 is the drop
buffer for the location P5, the total time for the tour should include the horizontal
moving time between the drop buffer to location P6’s drop buffer. Since the virtual
starting position for cluster 3 is P6’s drop buffer, if the actual ending position for
cluster 2 is P5’s drop buffer, the moving time between the two drop buffers should be
included in the total gantry moving time calculation.
Discordance between the actual ending location and the virtual ending position
does not affect the optimal sequence since horizontal movement dominates the
movement time between clusters. With the virtual starting and ending positions,
enumeration or other optimization techniques such as a linear programming model
can generate a (near) optimal sequence within a cluster. In our experiments, we use
the full enumeration method for clusters that have ten or fewer items and 2-Opt
algorithm (see Heragu 1997) for clusters that have a larger number of items to find
a near-optimal sequence within a cluster. A combined sequence of optimal sequences
for all clusters is an (near) optimal sequence for the gantry robot. While there is no
benefit with this algorithm in the worst case, in which there is only one cluster, this
algorithm is very efficient in many others. For example, when there are 12 items to
pick from a pick zone, while the complete enumeration method requires 479 million
(12!) iterations to find an optimal solution, this algorithm requires only 72 (3
4!)
iterations to find a near-optimal solution (assuming there are 3 clusters of 4 locations).
This algorithm quickly generates near-optimal solutions for the industrial problem as
demonstrated by the experimental results presented in the next section.

4.3. Flexible drop buffer locations for picked items


If the operating conditions are changed so that the drop buffer locations for
picked items need not be directly below the location where the item is picked,
other drop buffer locations can be selected to minimize the total gantry travelling
time. The sequence shown in figure 10(a), for example, still follows the principle of
the x-coordinate based heuristic, and generates a better solution than the one shown
in figure 7(b). As shown in figure 10(b), it is possible to generate an even better
solution in which there is some backtracking.
The optimal drop buffer location to minimize the movement time between any
two locations can be selected easily. The minimum gantry movement time from
locations i to j, i.e. movement time from location i to a drop buffer plus time

(a) Moving time=41 (b) Moving time=38


=5+5+1+10+10+5+5 =5+10+10+1+1+6+5
Figure 10. Case with flexible drop buffer selection condition.
3454 B.-I. Kim et al.

Pj Pi Pj
Pi Optimal drop buffer location Optimal drop buffer location
vj vj
vi vi

vi vj vi vj
hij hij
(a) vi + vj < hij (b) vi,vj < hij ≤ vi +
vj

vj
vj vj vi
vi vi

vi vi vi
vj vj vj
hij hij hij
(c) vj < hij ≤ vi (d) vi < hij ≤ vj (e) hij ≤ vi ,vj
Figure 11. Optimal drop buffer locations.

from the buffer to location j, is max(vi þ vj, hij), where hij is horizontal movement
time between locations Pi and Pj, and vi, vj are vertical movement times between drop
buffers and the locations. Thus, any drop buffers that make the movement time
max(vi þ vj, hij) are optimal drop buffers to minimize the movement time between
locations Pi and Pj (see figure 11). An optimal drop buffer among them can be found
easily as follows. Select a drop buffer located vi horizontal units from location Pi
toward Pj. When the selected drop buffer’s horizontal position is beyond Pj’s, select a
drop buffer that is located right under Pj. The asterisks in figure 11 show the selected
drop buffers in different situations.
With the new operating conditions, the clustering method as well as the virtual
start and end positions should be changed. Step 2 in the clustering algorithm should
therefore be changed as follows.
Step 2 for new operating conditions. If there is a location from the remaining
unselected locations such that the horizontal movement time between that
location and any other from the current cluster is smaller than the sum of the
two vertical movement times, or stated mathematically as max(vi þ vj,
hij) ¼ vi þ vj, place the location into the current cluster. Repeat step 2
until there are no more such locations.
With the new clustering method, there is a large horizontal gap between clusters.
The virtual end position for each cluster is determined as follows. Xi þ vi/k is calcu-
lated for each pick location Pi in the cluster under consideration and the largest of
these values determines the x-coordinate of the virtual end position for this cluster.
Xi is the x- coordinate of pick location Pi and vi is the vertical movement time from
the pick location Pi to a drop buffer and k is the (constant) horizontal velocity of the
gantry robot (see figure 12). Since the units of vi and k are time and speed, the unit of
vi/k is distance. Notice that the virtual end position for one cluster is the start
position for the next (see figure 12).
Sequence algorithm for an automated warehouse 3455

C2
C1 P4 C3
P1
P3 P5
v1 P6 P7
P2
v2
v2/k End for C2
v1/k End for C1 St for C3
St for C2
* St: Virtual starting position
End: Virtual ending position for cluster
Figure 12. Virtual starting and ending positions with new operating conditions.

5. Experimental results
Table 1 shows the experimental results of several order-picking sequencing
algorithms. The first column shows the number of line items to be picked by the
gantry robot for an order train. The second column shows the gantry movement time
for a sequence generated by the x-coordinate based heuristic used by the company in
the industrial application. The third column shows the number of clusters generated
by the proposed clustering algorithm. The average number of line items for each
cluster can be shown to be 1.61. Thus, in most cases, the full enumeration method
can be used to find an optimal sequence within a cluster. In contrast, full enumera-
tion of sequences without clustering takes more than half an hour on a 350 MHz
Pentium Pro machine with 128 MB RAM when the number of line items to be
picked by the gantry robot for an order train is 11.
The fourth column presents the gantry movement time for a sequence generated
by the proposed clustering based algorithm. The fifth column shows the optimal
gantry movement time found by a full enumeration method without clustering. The
sixth column shows the gantry movement time difference between the optimal
sequence and the sequence generated by the proposed clustering based sequencing
algorithm. Note that the proposed algorithm generates an optimal sequence for all
the test cases. The seventh column shows the difference between the optimal
sequence and the sequence generated by the x-coordinate based sequencing heuristic.
From the 48 test cases, the x-coordinate based heuristic generates optimal sequences
for 32 cases, and the differences between the generated and optimal sequences in the
remaining 16 cases are small.
The eighth through the last columns show the results for the flexible drop buffer
selection operating condition. The flexible drop buffer selection operation signifi-
cantly reduces the gantry travelling time. Among the 48 test cases, the x-coordinate
based heuristic generates optimal sequences for 39 cases and the clustering based
algorithm for all the cases.
In order to investigate the efficiency of the proposed algorithm, we increase the
size of order trains such that each of them has 160 order trains. The numbers of line
items for each order train increase correspondingly. Table 2 shows the experimental
results of the x-coordinate based heuristic and the clustering based algorithm. Since
full enumeration without clustering for an order train that has more than 15 line
items takes too much time, the experiments of full enumeration without clustering
are not conducted. The numbers of line items in each order train are in the first
column. They are approximately twice the values in the previous experiment. The
3456
Fixed drop buffer Flexible drop buffer

x-coord Clustering Optimal x-coord Clustering Optimal


Diff. Diff. Diff. Diff.
No. of Time No. of Time Time x-coord cluster. Time No. of Time Time x-coord cluster.
items (sec) cluster (sec) (sec) -opt. -opt. (sec) cluster (sec) (sec) -opt. -opt.

9 33.65 5 33.31 33.31 0.34 0 29.07 4 29.07 29.07 0 0


10 35.84 7 35.49 35.49 0.35 0 29.41 4 29.41 29.41 0 0

B.-I. Kim et al.


8 33.08 4 33.08 33.08 0 0 29.28 4 29.25 29.25 0.03 0
8 32.04 5 32.04 32.04 0 0 27.05 5 27.05 27.05 0 0
9 32.04 5 32.04 32.04 0 0 28.01 4 28.01 28.01 0 0
9 36.91 8 36.79 36.79 0.12 0 29.40 6 29.40 29.40 0 0
8 31.92 7 31.92 31.92 0 0 25.93 5 25.93 25.93 0 0
9 31.81 6 31.81 31.81 0 0 26.43 4 26.43 26.43 0 0
9 29.95 5 29.95 29.95 0 0 25.89 4 25.89 25.89 0 0
11 42.98 6 42.62 42.62 0.36 0 38.09 5 37.73 37.73 0.36 0
8 30.41 5 30.41 30.41 0 0 25.23 5 25.23 25.23 0 0
7 32.53 5 32.33 32.33 0.2 0 27.00 5 27.00 27.00 0 0
8 30.26 6 30.26 30.26 0 0 24.60 6 24.60 24.60 0 0
11 41.83 5 41.83 41.83 0 0 36.89 5 36.89 36.89 0 0
9 37.79 7 37.79 37.79 0 0 31.17 6 31.17 31.17 0 0
11 35.73 8 35.73 35.73 0 0 28.88 4 28.88 28.88 0 0
8 35.46 7 35.46 35.46 0 0 28.14 4 28.14 28.14 0 0
8 30.72 8 30.72 30.72 0 0 24.08 5 24.08 24.08 0 0
9 33.76 8 33.76 33.76 0 0 27.25 5 27.25 27.25 0 0
9 37.96 7 37.96 37.96 0 0 31.65 5 31.65 31.65 0 0
9 34.53 6 34.53 34.53 0 0 29.52 5 29.52 29.52 0 0
10 37.03 6 36.47 36.47 0.56 0 31.78 4 31.78 31.78 0 0
9 37.59 6 37.59 37.59 0 0 31.56 6 31.56 31.56 0 0
8 33.43 5 33.43 33.43 0 0 28.33 5 28.33 28.33 0 0
10 38.99 7 38.99 38.99 0 0 32.18 5 32.18 32.18 0 0
9 34.70 7 34.58 34.58 0.12 0 29.17 5 29.05 29.05 0.12 0
9 33.75 3 33.44 33.44 0.31 0 31.19 3 30.89 30.89 0.3 0
9 27.00 4 27.00 27.00 0 0 24.16 2 24.16 24.16 0 0
9 36.46 7 36.28 36.28 0.18 0 29.70 6 29.70 29.70 0 0
8 27.50 6 27.50 27.50 0 0 21.90 6 21.90 21.90 0 0

Sequence algorithm for an automated warehouse


8 30.30 4 30.17 30.17 0.13 0 26.32 4 26.32 26.32 0 0
9 31.89 4 31.59 31.59 0.3 0 28.12 3 27.93 27.93 0.19 0
7 33.02 7 33.02 33.02 0 0 26.86 5 26.86 26.86 0 0
9 34.60 7 34.60 34.60 0 0 29.47 4 29.47 29.47 0 0
11 38.36 7 38.32 38.32 0.04 0 31.78 4 31.78 31.78 0 0
7 29.36 5 29.36 29.36 0 0 24.63 5 24.63 24.63 0 0
9 32.00 7 31.80 31.80 0.2 0 26.70 4 26.65 26.65 0.05 0
10 40.74 5 40.62 40.62 0.12 0 35.93 5 35.81 35.81 0.12 0
11 36.35 7 36.35 36.35 0 0 29.20 4 29.20 29.20 0 0
9 32.80 6 32.70 32.70 0.1 0 27.70 5 27.60 27.60 0.1 0
9 36.87 9 36.87 36.87 0 0 28.07 6 28.07 28.07 0 0
8 33.46 6 33.46 33.46 0 0 28.71 4 28.71 28.71 0 0
11 39.89 8 39.89 39.89 0 0 31.04 8 31.04 31.04 0 0
8 34.32 6 34.32 34.32 0 0 27.77 5 27.77 27.77 0 0
6 31.13 5 31.13 31.13 0 0 27.50 2 27.50 27.50 0 0
11 42.86 6 42.52 42.52 0.34 0 37.62 5 37.37 37.37 0.25 0
10 37.57 7 37.57 37.57 0 0 30.83 7 30.83 30.83 0 0
7 26.39 4 26.39 26.39 0 0 22.47 4 22.47 22.47 0 0

Table 1. Experimental results for order picking sequencing.

3457
3458 B.-I. Kim et al.

Fixed drop buffer Flexible drop buffer

x-coord Clustering x-coord Clustering


Diff. Diff.
No. of Time No. of Time x-coord Time No. of Time x-coord
Items sec cluster sec -cluster sec cluster sec -cluster

17 54.84 10 54.50 0.34 46.76 4 46.76 0


18 53.83 9 53.48 0.35 46.19 4 45.93 0.26
17 51.35 8 51.35 0 45.52 4 45.52 0
17 53.79 9 53.79 0 47.02 5 47.02 0
18 54.96 9 54.96 0 48.30 6 48.30 0
19 58.03 8 57.84 0.19 51.02 4 51.02 0
17 54.07 10 54.07 0 45.27 5 45.27 0
17 52.40 7 52.40 0 46.16 4 46.13 0.03
19 57.41 7 57.41 0 50.20 4 50.20 0
20 60.39 11 59.82 0.57 51.62 7 51.05 0.57
17 50.41 5 50.41 0 45.73 4 45.73 0
16 50.33 7 50.13 0.2 43.55 5 43.35 0.2
17 49.59 11 49.42 0.17 40.89 6 40.89 0
19 56.78 9 56.34 0.44 49.24 6 48.80 0.44
17 53.77 8 53.64 0.13 46.74 6 46.74 0
20 55.95 7 55.95 0 49.50 3 49.50 0
16 50.95 10 50.61 0.34 42.77 5 42.67 0.1
17 53.71 10 53.70 0.01 45.97 4 45.97 0
22 63.25 9 63.03 0.22 57.08 3 57.08 0
16 48.08 9 47.95 0.13 40.47 4 40.47 0
17 53.54 9 53.25 0.29 45.50 5 45.35 0.15
17 55.53 6 55.53 0 49.99 5 49.99 0
22 62.91 10 62.91 0 53.69 3 53.69 0
17 51.58 7 51.30 0.28 45.62 4 45.54 0.08
18 54.45 11 54.45 0 44.96 5 44.96 0
16 50.44 8 50.37 0.07 43.34 5 43.34 0
21 61.73 8 61.73 0 53.78 5 53.78 0
17 54.33 7 54.33 0 46.91 5 46.91 0
16 52.08 6 51.92 0.16 47.46 3 47.46 0
18 56.64 8 56.37 0.27 50.31 6 50.04 0.27
20 58.30 10 58.30 0 48.93 7 48.93 0
17 51.16 9 51.16 0 42.49 6 42.49 0
18 52.26 11 52.08 0.18 43.04 6 42.86 0.18
19 57.97 9 57.97 0 49.52 6 49.52 0
18 56.99 8 56.91 0.08 49.49 6 49.46 0.03
18 54.37 9 54.37 0 46.39 5 46.39 0
15 46.84 10 46.66 0.18 39.18 5 39.18 0
18 56.58 10 56.58 0 49.02 3 49.02 0
18 54.64 8 54.49 0.15 48.44 5 48.29 0.15
14 39.50 3 39.44 0.06 37.00 3 36.94 0.06
19 53.11 7 52.99 0.12 47.48 4 47.47 0.01
18 57.29 9 56.58 0.71 49.30 6 48.95 0.35
19 57.13 8 57.05 0.08 48.50 7 48.50 0
18 58.14 8 57.60 0.54 49.53 6 49.19 0.34
18 52.90 12 52.46 0.44 43.42 6 43.24 0.18
18 52.42 8 51.94 0.48 46.54 4 46.26 0.28
19 59.00 10 58.93 0.07 50.82 7 50.74 0.08
19 54.56 10 54.56 0 47.47 4 47.47 0

Table 2. Experimental results for order-picking sequencing, heavily loaded.


Sequence algorithm for an automated warehouse 3459

fifth column shows the difference between the sequence generated by the clustering-
based algorithm and the sequence generated by the x-coordinate based sequencing
heuristic. In this case, the x-coordinate based heuristic generates inferior picking
sequences for 29 cases compared with the clustering based algorithm.
With the flexible drop buffer operating condition, the x-coordinate based
heuristic generates inferior picking sequences for 16 cases compared with the
clustering-based algorithm. Thus, the optimality of the x-coordinate based heuristic
deteriorates as the number of line items increases in an order train. However, the
travelling time differences between the x-coordinate based sequencing and the
clustering based algorithm are rather small.
To summarize, the x-coordinate based heuristic generates near optimal sequences
and the clustering-based algorithm generates optimal sequences in near real time for
all of the test cases. The flexible drop buffer selection operation significantly reduces
the gantry travelling time.

6. Conclusions
This paper addresses the order picking sequence problem in an automated ware-
house, in which parts of an order picker’s travelling tour are fixed, the length of the
layout is significantly longer than the width, and the picker can hold only one item at
a given time. The problem is to find an optimal sequence with given vertical paths,
and so it is a special type of travelling salesman problem. A simple x-coordinate
based heuristic and an efficient clustering based algorithm are presented for this
problem. Experimental results indicate their efficiency. Because of the special
layout structure, the x-coordinate based heuristic generates good solutions for the
test cases. The proposed clustering-based order picking sequence algorithm generates
optimal solutions for all of the test cases. In order to use the gantry robots more
efficiently, a flexible drop buffer assignment is also considered and the proposed
algorithms are modified for the new operating condition.

Acknowledgement
This research is supported by grant number DMI 9900039 from National Science
Foundation.

References
ASHYERI, J. and GELDERS, L. F., 1985, Warehouse design optimization. European Journal of
Operational Research, 21, 285–294.
BOZER, Y. A., SCHORN, E. C. and SHARP, G. P., 1990, Geometric approaches to solve the
Tchevychev traveling salesman problem. IIE Transactions, 22, 238–254.
DANIELS, R. L., RUMMEL, J. L. and SCHANTZ, R., 1998, A model for warehouse order picking.
European Journal of Operational Research, 105, 1–17.
GOETSCHALCKX, M. P., 1983, Storage and retrieval policies for efficient order picking.
Unpublished PhD dissertation, Georgia Institute of Technology, USA.
GOETSCHALCKX, M. and WEI, R., 1994, Bibliography on order picking systems, Vol. 1: 1985–
1992, available at http://www.isye.gatech.edu/people/faculty/Marc_Goetschalckx/
research.html
HAN, M., MCGINNIS, L. F., SHIEH, J. S. and WHITE, J. A., 1987, On sequencing retrievals in an
automated storage/retrieval system. IIE Transactions, 19(1), 56–66.
HERAGU, S. S., 1997, Facilities Design (Boston, MA: PWS Publishing Company).
HERAGU, S. S., MAZACIOGLU, B. and FUERST, K. D., 1994, Meta-heuristic algorithms for the
order picking problem. International Journal of Industrial Engineering, 1(1), 67–76.
3460 B.-I. Kim et al.

HWANG, H. and LEE, M., 1988, Order batching algorithms for a man-on-board automated
storage and retrieval system. Engineering Costs and Production Economics, 13, 285–294.
HWANG, H., BAEK, W. and LEE, M., 1988, Clustering algorithms for order picking in an
automated storage and retrieval system. International Journal of Production Research,
26(2), 189–201.
KIM, B., GRAVES, R. J., HERAGU, S. S. and ST. ONGE, A., 2002, Intelligent agent modeling of an
industrial warehousing problem. IIE Transactions, 34(7), 601–612.
KIM, B., HERAGU, S. S., GRAVES, R. J. and ST. ONGE, A., 2003a, Realization of a short cycle
time in warehouse replenishment and order picking. International Journal of Production
Research, 41(2), 349–364.
KIM, B., HERAGU, S. S., GRAVES, R. J. and ST. ONGE, A., 2003b, A hybrid scheduling and
control system for warehouse management. To appear in IEEE Transactions on
Robotics and Automation.
LIU, C., 1999, Clustering techniques for stock location and order-picking in a distribution
center. Computers & Operations Research, 26, 989–1002.
RATLIFF, H. D. and ROSENTHAL, A. S., 1983, Order-picking in a rectangular warehouse: a
solvable case of the traveling salesman problem. Operations Research, 31(3), 507–521.
ROODBERGEN, K. J. and DE KOSTER, R., 2001. Routing order pickers in a warehouse with a
middle aisle. European Journal of Operational Research, 133, 32–43.
ROUWENHORST, B., REUTER, B., STOCKEAHM, V., VAN HOUTUM, G. J., MANTEL, R. J. and ZIJM,
W. H. M., 2000, Warehouse design and control: framework and literature review.
European Journal of Operational Research, 122, 515–533.
TOMPKINS, J. A., WHITE, J. A., BOZER, Y. A., FRAZELLE, E. H., TANCHONO, J. M. A. and
TRAVINO, J., 1996, Facilities Planning, 2nd edn (New York: Wiley).
VAN DEN BERG, J. P., 1999, A literature survey on planning and control of warehousing
systems. IIE Transactions, 31, 751–762.
VAN DEN BERG, J. P. and GADEMANN, A. J. R. M., 1999, Optimal routing in an automated
storage/retrieval system with dedicated storage. IIE Transactions, 31, 407–415.

View publication stats