Professional Documents
Culture Documents
A R T I C L E
I N F O
A B S T R A C T
Handling freight at cross docking terminals constitutes a complex planning task which comprises several
executive steps as shipments delivered by inbound trucks are to be unloaded, sorted according to their
designated destinations, moved across the dock and finally loaded onto outbound trucks for an immediate
delivery elsewhere in the distribution system. To enable an efficient synchronization of inbound and
outbound flows, a careful planning of operations, e.g. by computerized scheduling procedures, becomes
indispensable. This work treats a special truck scheduling problem arising in the (zero-inventory) cross
docks of the food industry, where strict cooling requirements forbid an intermediate storage inside the
terminal, so that all products are to be instantaneously loaded onto refrigerated outbound trucks. The
problem is formalized such that different operational objectives, i.e. the flow time, processing time and
tardiness of outbound trucks, are minimized. To solve the resulting truck scheduling problem suited exact
and heuristic solution procedures are presented.
2009 Elsevier Ltd. All rights reserved.
1. Introduction
A cross docking terminal is a distribution center exclusively dedicated to the transshipment of truck loads. In comparison to traditional warehouses, a cross dock carries no or at least a considerably
reduced amount of stock. Whenever an incoming truck arrives at the
yard of a cross dock, it is assigned to a dock door, where inbound
loads are unloaded and scanned to determine their intended destinations. Then, loads are moved across the dock and loaded onto outbound trucks for an immediate delivery elsewhere in the distribution
system. This requires a synchronization of inbound and outbound
loads, so that transport times and temporary inventory at the dock
are kept as low as possible. In addition to that, cross docking allows
a consolidation of differently sized shipments with the same destination to full truck loads, so that economies in transportation costs
can be realized [2]. These advantages make cross docking an important logistics strategy receiving increased attention in today's globalized competition with its ever increasing volume of transported
goods. Success stories on cross docking which resulted to considerable competitive advantages are reported for several industries with
high proportions of distribution costs like retail chains (Wal Mart;
[22]), mailing companies (UPS; [12]), automobile producers (Toyota;
[25]) and less-than-truckload logistics providers [13].
33
Up to now, only McWilliams et al. [18], Yu and Egbelu [26], Boysen et al. [7] as well as Miao et al. [19] treat the problem of truck
scheduling, which is also in the focus of the paper on hand. However,
none of these existing papers cover the requirements of the zeroinventory cross docking terminals of the food industry. McWilliams
et al. [18] treat a different truck scheduling problem arising in a mail
distribution center, where the movement of goods inside the terminal is conducted by a conveyor belt system. The resulting problem
is solved by simulation based optimization. Yu and Egbelu [26] as
well as Boysen et al. [7,8] consider stylized settings where a terminal consists of merely a single inbound and a single outbound door.
Finally, Miao et al. [19] provide scheduling procedures adopted from
gate assignment in airports, where trucks are assumed to have given
service time windows, which are to be maintained as hard constraints. All of these assumptions are quite limiting with regard to
real-world applications. Moreover, the existing truck scheduling approaches rely upon an intermediate storage of goods inside the terminal. Consequently, a novel truck scheduling problem is developed
which covers the requirements of the zero-inventory cross docking
terminals of the food industry as is presented in the following.
3. Detailed problem description
The basic input data of truck scheduling is a set I of inbound trucks
carrying goods, which are to be loaded onto a set O of outbound
trucks serving different destinations. A first noteworthiness in food
industry is, that inbound loads are dedicated to a specific outbound
truck and destination, which means that a substitution of products of
the same kind between different inbound trucks is not allowed. This
results from the fact, that goods are pre-commissioned as ordered
by the customer, because a re-packing inside the uncooled terminal is to be avoided. In order to prevent an unfreezing and decay of
perishable foods, the intermediate storage inside the terminal is further forbidden (zero-inventory policy). Once the first inbound truck
which carries load for a specific outbound destination is docked, the
respective refrigerated outbound trailer o is to be docked as well, so
that the goods can be directly transferred. The outbound truck remains under processing until the last inbound truck carrying load
for o is served.
Inbound trucks I and outbound trucks O are to be assigned to dock
doors, which are assumed to consist of an arbitrary given number
DI of receiving doors and an arbitrary given number DO of shipping
doors. Both door sets are operated in a segregated mode of service,
so that inbound trucks are exclusively unloaded at the predefined set
of receiving doors and outbound trucks are exclusively loaded at the
fixed set of shipping doors. This assumption is in line with common
organizational guidelines, which aim at avoiding mixed assignments
of inbound and outbound trucks per door. Frequently, one side of the
dock is exclusively dedicated to inbound and the other to outbound
operations, in order to ease material handling inside the terminal
(see [4, p. 237] ).
At these dock doors inbound and outbound trucks are to be scheduled according to their chronological succession. In the food industry transported goods are shipped on standardized cargo carriers
(e.g. euro pallets) and trailers of a standard size. Furthermore shipments are typically consolidated to full truckloads. As a consequence,
handling operations (docking, unloading and undocking) of inbound
trucks take a very similar amount of time. In fact if differences in
service times do exist, they can hardly be anticipated upfront, so that
practitioners tend to use approximate average service times over all
trucks for planning purposes.
In the decision problem continuous time space is thus discretized
into periods of a fixed length, e.g. a quarter of an hour, which are sufficiently long to carry out all handling operations required to process
an inbound truck. The whole planning horizon is hence represented
34
iLo
o O
(1)
(2)
To reduce the delay of goods induced by the transshipment operations at a cross docking terminal, different reasonable objectives can
be utilized to operationalize the general claim for synchronized inbound and outbound product flows. Of course, the most natural objective would be to minimize the overall costs associated with the
distribution process. However, several influencing factors are difficult to quantify, i.e. the loss of goodwill, whenever goods arrive late
at their final destinations. Consequently, operational planning and
scheduling often employs surrogate objectives, so that the following
three objectives are to be considered within this paper:
Table 1
Example data.
I
DI
Li
1,2
2,3
1,2,4
DO
DDo
Table 2
Impact of inbound schedules on the objectives of the truck scheduling problem.
t
(t)
(t)
3
2
1
36
24
15
Solution A
{3}
{2, 3, 4}
{1, 2, 4}
13
46
25
Solution B
{1, 2, 3}
{1, 2, 3, 4}
{1, 2, 3, 4}
(i)
(o)
(t)
inbound truck can remain docked at the terminal for more than a
single period. (ii) The products can be intermediately stocked inside
the terminal. However, both reactions were forbidden in our realworld setting of food industry. Consequently, reaction (iii) remains,
which is to resolve infeasibility by opening additional not yet utilized
outbound doors. Section 6 elaborates on this reaction in detail. Thus,
if an additional outbound door is opened and DO is enhanced to 4,
Solution B entails a sum of flow times of F() = 11, a processing time
of P() = 11, and a total tardiness of T() = 3.
With the help of the notation summarized in Table 3 the truck
scheduling problem (TRSP) can be formalized as follows.
Model formulation: Within TRSP a matrix : {1, . . . , T}
{1, . . . , DI } I is to be determined which minimizes one of the
objective functions (3) to (5) subject to constraints (6) and (7):
max{(o)} or
(3)
Minimize F() =
oO
Minimize P() =
|(o)|
or
(4)
oO
Minimize T() =
(5)
oO
subject to
|(i)| = 1
i I
O
|(t)| D
t = 1, . . . , T
(6)
Xtji {0, 1}
4. Algorithms
This section provides suited algorithms for the solution to TRSP.
First, an exact dynamic programming approach is presented (Section
4.1), then, a heuristic simulated annealing procedure (Section 4.2) is
described.
4.1. Dynamic programming approach
The dynamic programming approach is based on an acyclic digraph G = (V, E, r) with a node set V divided into T + 1 stages, a set
E of arcs connecting nodes of adjacent stages and an arc weighting
function r : E N (see [5,8], for related approaches to sequencing mixed-model assembly lines). Each period t is represented by a
i I; t = 0, . . . , T; j Vt
(9)
Obviously, the node set V0 contains only a single node (initial state
(0, 1)) corresponding to the vector X01 = [0, 0, . . . , 0]. Similarly, node
set VT contains a single node (final state (T, 1)) with XT1 =[1, 1, . . . , 1].
The remaining stages have a variable number of nodes depending
on the number of different truck vectors Xtj possible.
Two nodes (t, j) and (t + 1, k) of two consecutive stages t and t + 1
are connected by an arc if the associated vectors Xtj and Xt+1k differ
only in DI elements, i.e., exactly DI inbound truck are additionally
scheduled in position t + 1. This is true if Xtji Xt+1ki holds for all
i I, because both states are feasible according to (8) and (9). The
overall arc set is defined as follows:
E = {((t, j), (t + 1, k))|t = 0, . . . , T 1; j Vt ; k Vt+1
and Xtji Xt+1ki i I}
(10)
Li
(11)
t = 1, . . . , T; j Vt
OStj =
iI|Xtji =1
(7)
Objective functions (3) and (4) minimize the overall flow time and
processing time of outbound trucks, respectively, whereas objective
function (5) minimizes the tardiness of outbound trucks, if due dates
DDo are to be observed. Equalities (6) ensure that each inbound truck
is processed in exactly one period, whereas constraints (7) restrict
the number of outbound trucks actually served during period t to
not exceed the number of outbound doors DO available.
35
Second, the set OPtj covers all outbound trucks, which are completely
loaded when the actual slot passed:
OPtj = {o O|Lo {i I|Xtji = 1}} t = 1, . . . , T; j Vt
(12)
with the help of these two sets all arc weights can be calculated in
dependency of the respective objective function actually considered:
Flow time: To calculate the flow time of outbound trucks, for
each single arc those outbound trucks need to be determined, which
leave the system just after the respective period t + 1 passed. These
outbound trucks simply amount to the relative complement of OPtj in
OPt+1k and need to be weighted with the actual period t + 1, which
equals the flow time of these trucks:
F()
t = 1, . . . , T 1; j Vt ; k Vt+1
(13)
36
t = 1, . . . , T 1; j Vt ; k Vt+1
(14)
r((t,j),(t+1,k)) =
max{0, t + 1 DDo }
o{OPt+1k \OPtj }
t = 1, . . . , T 1; j Vt ; k Vt+1
(15)
Moreover, the node weights dedicated to the processing time objective can directly be applied to decide on the feasibility of arcs
and nodes. If the number of outbound trucks to be actually processed in a slot t exceeds the number DO of outbound doors availP()
able: r((t,j),(t+1,k)) > DO , the use of the arc would, in any case, result
in an infeasible truck schedule. Thus, the arc is to be excluded from
the graph. If all arcs flowing into a node are fathomed, the respective
node is also infeasible and is to be excluded.
With this graph on hand, the optimal solution to our truck
scheduling problem reduces to finding the shortest path from the
unique source node at level 0 to the unique sink node at level T,
where the length of the path is given by the sum of weights of
the arcs contained. The minimum objective value corresponds to
the length of the shortest path. The corresponding truck assignment can be deduced by considering each arc ((t, j), (t + 1, k))
with t = 0, . . . , T 1 on the shortest path SP. The DI inbound trucks
to be assigned at sequence position t + 1 are the ones for which
Xt+1ji Xtki = 1 holds.
Example (cont.): The resulting DP-graph which minimizes the processing time objective along with a (bold-faced) shortest path for our
example is depicted in Fig. 2. This path corresponds to the optimal
solution matrix = {{1, 5}, {2, 4}, {3, 6}} and a minimum processing
time of P() = 7, which is also listed as solution A in Table 2. All arcs
corresponding to infeasible assignments, which exceed the number
of outbound doors available, have been omitted.
Instead of constructing the complete graph before computing the
shortest path, the more efficient DP approach consists of determining
the shortest path from the initial state to each node stage-by-stage
(t = 0, . . . , T 1). For this purpose, only two stages of the graph have
to be stored simultaneously, because the shortest path to a node
LBt,j
(t + R(o, t, j))
t = 1, . . . , T 1; j Vt
(16)
o{O\OPtj }
LBt,j
R(o, t, j)
t = 1, . . . , T 1; j Vt
(17)
oO
37
t + R(o, t, j) with the given due dates DDo with regard to each single
remaining outbound truck:
T()
max{0, t + R(o, t, j) DDo } t = 1, . . . , T 1; j Vt
LBt,j =
o{O\OPtj }
(18)
Remark: A further speed-up can be obtained by joining inbound
trucks, which deliver products for an identical set Li of outbound
trucks, to inbound truck types. Then, inbound trucks of the same type
need not be considered multiple times within the possible inbound
truck occurrences per stage, as an exchange of trucks of the same
type at identical service slots leads to identical outbound schedules
and, thus, objective values. This way, the number of states to be constructed and inspected per stage can be reduced. As the alterations
required are truly straight forward, we skip a further description.
Example (cont.): The reduction achieved by the BDP approach
with regard to the number of nodes to be considered is depicted in
Fig. 3 for our example and the processing time objective. Fathomed
nodes (colored grey) base upon an upper bound of UBP() = 8, which
is assumed to be calculated upfront by some heuristic procedure.
4.2. Simulated annealing
As within our DP and BDP approaches the number of states to be
inspected raises exponentially with the number of inbound trucks
|I|, problem instances of real-world size are barely solvable to optimality. Hence, a simulated annealing approach is presented in the
following. SA is a stochastic local search metaheuristic, which bases
the acceptance of a modified neighboring solution on a probabilistic scheme inspired by thermal processes for obtaining low-energy
states in heat baths (e.g. [14,1]).
Preliminary tests with simple priority rule based start heuristics,
which step-wise fill the solution matrix and actual choices are
guided by a simple priority rule, revealed that those approaches predominantly lead to infeasible solutions. Thus, a metaheuristic seems
much more promising to guide the search into feasible regions of the
solution space. Although other metaheuristics like tabu search are
possible, SA is applied as it is a quite simple yet powerful approach
often applied to real-world problems (e.g. see [11]).
The SA approach directly operates on the solution matrix storing the assignment of inbound trucks to slots. As the neighborhoodfunction we apply a simple swapping move, which means that
inbound trucks at two randomly chosen slots are interchanged. The
initial solution matrix is randomly filled with inbound trucks.
For a given solution matrix the respective objective function
values Z() {F(), P(), T()}, depending on the objective function
T
O
max{|(t)| D ; 0}
Z () = Z() + PV
SA
(19)
t=1
Prob( replacing ) =
1,
exp
Z SA () Z SA (
)
C
if Z SA (
) Z SA ()
,
otherwise
(20)
38
Table 4
Parameters for instance generation.
Symbol
D
T
Description
Number of inbound doors
Number of periods
Table 5
Results for the exact solution procedures.
Values
2, 3, 4, 5
4, 5, 6, 7, 8
Measure
Flow time
Processing time
Tardiness
DP
BDP
DP
BDP
DP
BDP
302
75.5
81.4
321
80.3
70.2
302
75.5
81.2
327
81.8
63.4
300
75.0
85.0
327
81.8
65.8
39
Table 6
Solution performance of exact procedures in relation to the size of test instances for the flow time objective.
T
DI
Avg.
3
4
5
6
7
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.6)
20(< 0.1)/20(0.7)
20(0.4)/20(0.9)
20(3.0)/20(1.9)
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.6)
20(0.5)/20(0.9)
19(83.4)/20(7.2)
3(275.8)/11(228.4)
20(< 0.1)/20(0.5)
20(0.1)/20(0.7)
20(8.1)/20(1.9)
0(300)/10(247.7)
0(300)/0(300)
20(< 0.1)/20(0.5)
20(0.4)/20(0.7)
20(56.0)/20(8.9)
0(300)/0(300)
0(300)/0(300)
100%(< 0.1)/100%(0.5)
100%(0.2)/100%(0.6)
100%(16.0)/100%(3.1)
49%(171.0)/63%(138.9)
29%(219.8)/39%(207.6)
Avg.
100%(0.7)/100%(0.9)
82%(71.9)/91%(47.5)
60%(121.7)/70%(110.2)
60%(131.3)/60%(120.7)
76%(81.4)/80%(70.2)
Table 7
Solution performance of exact procedures in relation to the size of test instances for the processing time objective.
T
DI
Avg.
3
4
5
6
7
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.7)
20(0.3)/20(0.8)
20(2.8)/20(1.3)
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.6)
20(0.5)/20(0.8)
19(80.9)/20(6.2)
3(275.2)/16(137.0)
20(< 0.1)/20(0.5)
20(0.1)/20(0.7)
20(7.6)/20(1.0)
0(300)/11(213.4)
0(300)/0(300)
20(< 0.1)/20(0.6)
20(0.5)/20(0.7)
20(55.7)/20(2.0)
0(300)/0(300)
0(300)/0(300)
100%(< 0.1)/100%(0.5)
100%(0.2)/100%(0.6)
100%(16.0)/100%(1.1)
49%(170.3)/64%(130.1)
29%(219.5)/36%(184.6)
Avg.
100%(0.6)/100%(0.8)
82%(71.3)/96%(29.0)
60%(121.6)/71%(103.1)
60%(131.3)/60%(120.7)
76%(81.2)/82%(63.4)
Table 8
Solution performance of exact procedures in relation to the size of test instances for the tardiness objective.
T
DI
Avg.
3
4
5
6
7
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.7)
20(0.4)/20(0.8)
20(4.4)/20(1.5)
20(< 0.1)/20(0.5)
20(< 0.1)/20(0.6)
20(0.6)/20(0.8)
18(117.0)/20(7.0)
2(287.3)/13(189.1)
20(< 0.1)/20(0.5)
20(0.1)/20(0.7)
20(10.3)/20(1.8)
0(300)/13(212.9)
0(300)/1(290.8)
20(< 0.1)/20(0.5)
20(0.5)/20(0.7)
20(77.9)/20(5.1)
0(300)/0(300)
0(300)/0(300)
100%(< 0.1)/100%(0.5)
100%(0.2)/100%(0.6)
100%(22.2)/100%(2.1)
48%(179.4)/66%(130.2)
28%(223.1)/43%(195.4)
Avg.
100%(1.0)/100%(0.8)
80%(81.0)/96%(39.6)
60%(122.1)/71%(101.3)
60%(135.8)/60%(121.3)
75%(85.0)/82%(65.8)
Table 9
Solution performance of simulated annealing (SA) and lower bound procedures (LB).
Measure
Flow time
Processing time
Tardiness
SA
LB
SA
LB
SA
LB
316
98.4
0.04
6.7
0.01
1
0.8
0
0.0
46.2
60.7
6.93
18
< 0.01
326
99.7
0.03
11.1
0.003
1
0.8
122
37.3
10.3
33.3
1.26
5
< 0.01
324
99.1
0.005
1
0.8
73
22.3
2.44
9
< 0.01
On the other hand, the lower bound procedures deviate considerably from optimal solution values, which is not astounding as
all three procedures are just very basic bounds. An apparent result
listed in Table 9 is the decline in solution quality of the bounds
LB(F) for the flow time objective and LB(T) for the tardiness objective compared to LB(P) for the processing time objective, which also
explains the slight decrease of the BDP approach for these two objectives listed in Table 5. This result can be explained by the following
considerations:
The value of any solution under the processing time objective, constitutes a lower bound on its corresponding flow time
40
7. Conclusions
The paper on hand introduces a novel truck scheduling problem,
which synchronizes inbound and outbound flows of goods at the
zero-inventory cross docking terminals of the food industry. Different objectives (minimization of flow time, processing time and tardiness) are investigated and suited exact (dynamic programming) and
heuristic (simulated annealing) approaches are presented. The computational tests especially indicate the appropriateness of the developed simulated annealing procedure to solve problem instances of
References
[1] Aarts EHL, Korst JHM, van Laarhoven JM. Simulated annealing. In: Aarts EHL,
Lenstra JK, editors. Local search in combinatorial optimization. Chichester; 1997.
p. 91120.
[2] Apte UM, Viswanathan S. Effective cross docking for improving distribution
efficiencies. International Journal of Logistics: Research and Applications
2000;3:291302.
[3] Bartholdi JJ, Gue KR. Reducing labor costs in an LTL cross docking terminal.
Operations Research 2000;48:82332.
[4] Bartholdi JJ, Gue KR. The best shape for a crossdock. Transportation Science
2004;38:23544.
[5] Bautista J, Companys R, Corominas A. Heuristics and exact algorithms for solving
the monden problem. European Journal of Operational Research 1996;88:
10113.
[6] Bermudez R, Cole MH. A genetic algorithm approach to door assignments
in breakbulk terminals. Technical Report MBTC-1102, Mack Blackwell
Transportation Center, University of Arkansas, Fayetteville, Arkansas; 2001.
[7] Boysen N, Fliedner M, Scholl A. Sequencing inbound and outbound trucks at
cross docking terminals. OR Spectrum; 2007, to appear.
[8] Boysen N, Fliedner M, Scholl A. Sequencing mixed-model assembly lines to
minimize part inventory cost. OR Spectrum 2007;30:61130.
[9] Campbell JF. A survey of network hub location. Studies in Locational Analysis
1994;6:3149.
[10] Carraway RL, Schmidt RL. An improved discrete dynamic programming
algorithm for allocating resources among interdependent projects. Management
Science 1991;37:1195200.
[11] Dowsland KA. Simulated annealing. In: Reeves CR, editor. Modern heuristic
techniques for combinatorial problems. London; 1993. p. 2069.
[12] Forger G. UPS starts world's premiere cross-docking operation. Modern Material
Handling; 1995:368.
[13] Gue KR. The effect of trailer scheduling on the layout of freight terminals.
Transportation Science 1999;33:41928.
[14] Kirkpatrick S, Gelatt CD, Vecchi MP. Optimization by simulated annealing.
Science 1983;220:67180.
[15] Klose A, Drexl A. Facility location models for distribution system design.
European Journal of Operational Research 2005;162:429.
[16] Li Y, Lim A, Rodrigues B. CrossdockingJIT scheduling with time windows.
Journal of the Operational Research Society 2004;55:134251.
41
[22] Stalk G, Evans P, Shulman LE. Competing on capabilities: the new role of
corporate strategy. Harvard Business Review 1992;70(2):5769.
[23] Tsui LY, Chang C-H. A microcomputer based decision support tool for assigning
dock doors in freight yards. Computers & Industrial Engineering 1990;19:
30912.
[24] Tsui LY, Chang C-H. An optimal solution to dock door assignment problem.
Computers & Industrial Engineering 1992;23:2836.
[25] Witt CE. Crossdocking: Concepts demand choice. Material Handling Engineering
1998;53(7):449.
[26] Yu W, Egbelu PJ. Scheduling of inbound and outbound trucks in cross docking
systems with temporary storage. European Journal of Operational Research
2006;184:37796.