truck scheduling at zero inventory cross docking terminals (1)

Upload: sanjapet

Post on 25-Feb-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    1/10

    Computers & Operations Research 37 (2010) 32 -- 41

    Contents lists available at ScienceDirect

    Computers & Operations Research

    jo ur na l ho me pa ge: w w w . e l s e v i e r . c o m / l o c a t e / c o r

    Truck scheduling at zero-inventory cross docking terminals

    Nils Boysen

    Friedrich-Schiller-Universitat Jena, Lehrstuhl fur Allgemeine Betriebswirtschaftslehre/Operations Management, Carl-Zei-Strae 3, D-07743 Jena, Germany

    A R T I C L E I N F O A B S T R A C T

    Available online 26 March 2009

    Keywords:

    LogisticsFood industry

    Cross docking

    Truck scheduling

    Dynamic programming

    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 immediatedelivery 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 ded-

    icated to the transshipment of truck loads. In comparison to tradi-

    tional 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 desti-

    nations. Then, loads are moved across the dock and loaded onto out-

    bound 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 desti-

    nation to full truck loads, so that economies in transportation costscan be realized[2].These advantages make cross docking an impor-

    tant logistics strategy receiving increased attention in today's glob-

    alized competition with its ever increasing volume of transported

    goods. Success stories on cross docking which resulted to consider-

    able 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].

    E-mail address: [email protected].

    0305-0548/$- see front matter 2009 Elsevier Ltd. All rights reserved.

    doi:10.1016/j.cor.2009.03.010

    A schematic representation of the material handling operationscarried out at cross docking terminals is depicted in Fig. 1. Incom-

    ing trucks which arrive at the yard of the cross dock are either di-

    rectly assigned to a receiving door or have to wait in a queue on the

    yard until assignment. Once docked, goods, i.e. pallets, packages or

    boxes, of the inbound trailer are unloaded and scanned to identify

    their respective destinations. Then, goods are taken over by some

    material handling device, such as a worker operating a fork lift, e.g.

    in retail industries[13],or some kind of conveyor belt system, e.g.

    in mail distribution centers[18].The goods are hence forwarded to

    the designated shipping door, where they are loaded onto an out-

    bound truck, which serves the dedicated destination. Once an out-

    bound (inbound) truck is completely loaded (unloaded) the trailer is

    removed from the dock, replaced by another trailer and the course

    of action repeats.The paper on hand deals with the truck scheduling problem,

    which generally comprises the assignment of trucks to dock doors

    and the determination of an overall docking schedule for all trucks

    and doors. Thus, the respective dispatcher needs to take two inter-

    related decisions: where and when trucks should be processed at

    the terminal. The specific constraints for this scheduling task vary

    considerably between different branches of industries: In the distri-

    bution networks of retail chains there exist cross docks (or separated

    parts of larger terminals) especially dedicated to frozen foods and

    dairy products, which typically require special arrangements as it is

    to be made sure thatthe cooling chain is not broken. Such cross docks

    do not differ from any other cross dock (except for the size, which is

    http://www.sciencedirect.com/science/journal/corhttp://www.elsevier.com/locate/cormailto:[email protected]:[email protected]:[email protected]://www.elsevier.com/locate/corhttp://www.sciencedirect.com/science/journal/cor
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    2/10

    N. Boysen / Computers & Operations Research 37 (2010) 32 -- 41 33

    Fig. 1. Material handling in cross docking terminals.

    comparatively small to reduce transportation times of frozen goods

    inside the uncooled terminal), but require a special kind of trans-

    shipment policy: Perishable goods are not allowed to be interme-

    diately stored inside the terminal. Once a frozen good is unloaded

    from its refrigerated inbound trailer it must be directly moved and

    loaded onto its designated refrigerated outbound trailer. Otherwise

    a defrost and decay of comestible goods threatens. This structural

    property distinguishes the resulting truck scheduling problem from

    existing research on this topic provided by McWilliams et al.[18], Yu

    and Egbelu[26],Boysen et al. [7] and Miao et al. [19],who all con-

    sider different intermediate storage settings. The paper on hand for-

    malizes the novel truck scheduling problem in these zero-inventory

    cross docks to enable a synchronized flow of goods across the dock.

    For this purpose, three different operational objectives are consid-

    ered: minimization of flow time, processing time and tardiness.

    Although our study is inspired by a single real-world case at a

    major German retail chain, the underlying problem setting is highly

    relevant in practice as the zero-inventory policy is often applied not

    only for refrigerated foods but for any kind of good, i.e., flowers,

    cosmetics or medicine, which require special treatment provided

    only by particular trailers. Moreover, the zero-inventory policy is

    often voluntarily applied to avoid obstacles for material handlingdevices inside a terminal.

    The paper is structured as follows. After a brief literature review

    in Section 2, Section 3 provides a detailed problem description and

    its mathematical formalization. Suited exact (dynamic programming,

    DP) and heuristic (simulated annealing, SA) procedures for its solu-

    tion are presented in Section 4. The results of an extensive compu-

    tational study are summarized in Section 5. Section 6 explains the

    integration of the static truck scheduling problem in a rolling plan-

    ning horizon and, finally, Section 7 concludes the paper.

    2. Literature review

    Previous research on cross docking mainly investigates one of the

    following decision problems: (i) location of cross docks and otherkinds of intermediate warehouses (e.g. see the summaries about

    hub location problems provided by [9,15], (ii) layout of the dock

    (see [4]), (iii) assignment of outbound destinations to dock doors

    [23,24,13,3,6,21].

    Only very few research papers deal with the short-term schedul-

    ing problems which continuously arise during the daily operations

    of cross docking terminals. Li et al. [16]consider material handling

    inside the terminal for a given truck schedule. Once a set of inbound

    and outbound trucks has been docked, all handling operations need

    to be assigned to resources, i.e. workers and material handling de-

    vices, e.g. fork lifts, in such a way that all unloading, sorting and

    loading operations are carried out as efficiently as possible. Li et al.

    [16]model this task as a machine scheduling problem and present

    a metaheuristic for its solution.

    Up to now, only McWilliams et al. [18],Yu and Egbelu[26],Boy-

    sen 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 zero-

    inventory 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 termi-

    nal is conducted by a conveyor belt system. The resulting problem

    is solved by simulation based optimization. Yu and Egbelu [26] aswell as Boysen et al. [7,8]consider stylized settings where a termi-

    nal 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 con-

    straints. All of these assumptions are quite limiting with regard to

    real-world applications. Moreover, the existing truck scheduling ap-

    proaches rely upon an intermediate storage of goods inside the ter-

    minal. 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 dataof truck schedulingis a set Iof 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 termi-

    nal is to be avoided. In order to prevent an unfreezing and decay of

    perishable foods, the intermediate storage inside the terminal is fur-

    ther forbidden (zero-inventory policy). Once the first inbound truck

    which carries load for a specific outbound destination is docked, the

    respective refrigerated outbound trailero is to be docked as well, so

    that the goods can be directly transferred. The outbound truck re-mains under processing until the last inbound truck carrying load

    foro is served.

    Inbound trucks Iand outbound trucks O are to be assigned todock

    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 andoutboundtrucks areto be sched-

    uled according to their chronological succession. In the food indus-

    try transported goods are shipped on standardized cargo carriers

    (e.g. euro pallets) and trailers of a standard size. Furthermore ship-

    ments 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 suf-

    ficiently long to carry out all handling operations required to process

    an inbound truck. The whole planning horizon is hence represented

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    3/10

    34 N. Boysen / Computers & Operations Research 37 (2010) 32--41

    by the total number of periodst=1 , . . . , Tavailable. As inbound doors

    can be served simultaneously each period further contains DI service

    slots to which inbound trucks can be assigned.

    To reduce the delay of goods induced by the transshipment and to

    rapidly empty out trucks for succeeding shipping orders, dispatchers

    aim at processing all inbound trucks as soon as possible. With a given

    numberD I of inbound doors available, at the earliest, a number | I|

    of inbound trucks can be processed in T= |I|/DI periods. Tis thus

    the minimum makespan of the inbound schedule and bounds thenumber of periods available for truck handling within our model. To

    avoid unassigned slots in a solution and to ease the presentation, the

    set Ican be filled with virtual inbound trucks carrying no goods.

    Thus, without loss of generality, it is assumed that: |I| = DI T, so that

    the decision problem of inbound scheduling reduces to assigning the

    setIof inbound trucks to the T DI slots available, which is stored in

    solution matrix : {1 , . . . , T} {1 , . . . , DI} I.The time requirements for moving goods inside the terminal gen-

    erally depend on the relative distance between the dock doors to

    which the respective inbound and outbound trucks have been as-

    signed. In the considered case of the food industry, cross docks tend

    to be held comparatively small. Typically, only a small subset of ad-

    jacent doors of a larger cross dock is especially dedicated to frozen

    foods in order to reduce distances and movement times and thus thethreat of defrost and decay. This justifies a further simplification of

    the truck scheduling problem, as movement times of goods inside

    the cross dock either become negligible or at least hardly vary from

    one truck to another. If movement times are assumed to be constant,

    they can be omitted in the decision problem as any retrieved solu-

    tion can be turned into an appropriate schedule by simply reindexing

    the time periods shifted by the respective movement time. Further

    details on how to apply our truck scheduling model in a real-world

    rolling horizon setting are discussed in Section 6.

    The aforementioned premises allow for the following formaliza-

    tion of the truck scheduling problem. For each inbound truck i the

    set L i is known, which comprises all outbound trucks for which in-

    bound trucki carries a load. Hence, we can also directly deduce the

    inverted setsLo of inbound trucks carrying loads for outbound trucko:Lo= {i I|{o} Li}o O. The zero-inventory policy requires that,

    as soon as the first inbound truck i Lo is scheduled at a slot t, also

    outbound truck o has to be docked at an outbound door to receive

    the carried load and remains there until all trucks i Lo have been

    processed. We can thus derive the set(o) of periods outbound truckohas to stay docked as follows:

    (o) =

    t= 1 , . . . , T| min

    iLo{(i)} t max

    iLo{(i)}

    o O (1)

    where(i) denotes the period to which inbound truck iis assigned toin solution matrix. At the same time, such an outbound schedulehas to regard the scarce numberDO of outbound doors available. The

    cardinality of the set (t) of outbound trucks actually processed in

    periodtmay therefore not exceed the given number DO of outbounddoors. The set(t) can be calculated as follows:

    (t) = {o O|{t} (o)} t= 1 , . . . , T (2)

    To reduce the delay of goods induced by the transshipment opera-

    tions at a cross docking terminal, different reasonable objectives can

    be utilized to operationalize the general claim for synchronized in-

    bound and outbound product flows. Of course, the most natural ob-

    jective would be to minimize the overall costs associated with the

    distribution process. However, several influencing factors are diffi-

    cult 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 1 2 3 4 5 6 DI

    Li 1,2 2,3 3 4 1,2,4 2

    O 1 2 3 4 DO

    DDo 1 2 3 2 3

    Table 2

    Impact of inbound schedules on the objectives of the truck scheduling problem.

    t (t) (t)

    3 3 6 {3} 1 3 {1,2,3}

    2 2 4 {2,3,4} 4 6 {1,2,3,4}

    1 1 5 {1,2,4} 2 5 {1,2,3,4}

    Solution A Solution B

    Flow time: To reduce the delay of goods, it is recommendable to

    schedule outbound trucks in such a way, that they leave the cross

    dock at the earliest point in time possible. The whole time span from

    the first period (t= 1) up to the departure of an outbound truck o

    is defined as the flow time of truck o . The flow time per outbound

    trucko is represented by the biggest element (period) of set(o), sothat the overall flow time is equal to: F() =

    oOmax{(o)}.

    Processing time: Another operational objective is to reduce the

    time span outbound trucks remain under processing (docked) at

    the terminal. By minimizing the processing time of outbound trucks,

    the average number of vehicles simultaneously processed per period

    is reduced as well, so that the scarce number of outbound doors are

    less utilized, which, i.e., increases flexibility whenever rush orders

    need to be additionally scheduled. The processing time of each single

    outbound truck can be computed by acquiring the cardinality of set

    |(o)|and the overall processing time amounts to:P() =

    oO|(o)|.Tardiness: Often, shipments are bound to due dates negotiated

    with the customers. If the remaining transportation time of an out-

    bound truck once it has left the cross dock is (or can be reasonablyapproximated as being) a given constant, then a terminal-specific

    due date DDo can be derived, which determines the latest point in

    time outbound truckohas to leave the cross dock to ensure on time

    deliveries. Whenever such due dates exist, e.g. to avoid contractual

    penalties or losses of goodwill, the tardiness of outbound trucks is

    to be minimized. The total tardiness T() summarized over all out-bound trucks amounts to:T() =

    oOmax{0,max{(o)} DDo}.

    Example: The dependency of these objectives on the schedule of

    inbound trucks shall be clarified by an example with the data given in

    Table 1. Five inbound trucks i=1, .. . , 5 are given, whichcarry loads for

    o=1, .. . , 4 outbound trucks. As there are assumed to be DI=2 inbound

    doors available, T=|I|/DI= 52 =3 periods are required to process all

    inbound trucks. To avoid empty slot assignments, the set of inbound

    trucksIis extended by one additional empty virtual inbound truck(T DI |I| = 3 2 5 = 1). The sets Li specify the outbound trucks

    inbound trucks i=1, .. . , 6 carry load for. Additionally, parameters DDorecord the due dates of outbound trucks, which are to be process at

    DO =3 outbound doors available. The used notation is summarized

    inTable 3.

    Table 2displays two alternative solutions matrices along withthe resulting outbound truck sets(t) actually processed in period t.Solution A results to a feasible solution with an overall flow time of

    F()=8, a processing time ofP()=7, and a total tardiness ofT()=0.Solution B is infeasible (in periods 1 and 2 four outbound trucks

    need to be processed). Note that for some instances, e.g., inbound

    truck 5 delivers products for all four outbound trucks: L5 = {1,2,3,4},

    no feasible solution exists. In general, there are some alternative

    reactions to ensure feasible cross docking in such a setting: (i) An

  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    4/10

    N. Boysen / Computers & Operations Research 37 (2010) 32 -- 41 35

    Table 3

    Notation.

    I Set of inbound trucks (indexi )

    O Set of outbound trucks (indexo)

    T Number of periods for (un-)loading trucks (indext)

    Lo Set of inbound trucks carrying items for outbound trucko

    Li Set of outbound trucks inbound trucki carries items for

    DI Number of inbound doors

    DO Number of outbound doors

    DDo Due date for the departure of outbound truck o to ensure on timedelivery

    {1 , . . . , T} {1 , . . . , DI}-matrix of inbound trucks assigned to slots(i) Set of periods inbound truck i is assigned to within matrix

    (o) Set of periods outbound truck o remains at the dock: {t =

    1 , . . . , T|miniLo {(i)} tmaxiLo {(i)}}

    (t) Set of outbound trucks actually processed at the dock in periodt:

    {o O|{t} (o)}

    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 real-

    world 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 ofF() = 11, a processing timeofP() = 11, and a total tardiness ofT() = 3.

    With the help of the notation summarized inTable 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):

    MinimizeF() =oO

    max{(o)} or (3)

    MinimizeP() =oO

    |(o)| or (4)

    MinimizeT() =oO

    max{0, max{(o)} DDo} (5)

    subject to

    |(i)| = 1 i I (6)

    |(t)|DO t= 1 , . . . , T (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

    DDoare 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.

    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 di-

    graph G =(V, E, r) with a node set Vdivided 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 sequenc-

    ing mixed-model assembly lines). Each period tis represented by a

    stage which contains a subsetVt Vof nodes representingstatesof

    the partial truck schedule up to sequence position t. Additionally, a

    start levelt= 0 is introduced. Each index j Vtidentifies a state (t,j)

    defined by the vector Xtj of quantities Xtji of all inbound trucks i I

    already scheduled up to sequence position t. It is sufficient to store

    the quantities of trucks instead of their exact partial slot assignment,

    because the set of outbound trucks actually served at decision point

    t+ 1 only depends on the trucks scheduled before Xtji irrespective

    of their exact order and the truck scheduled in t+ 1.The following conditions define all feasible states to be repre-

    sented as nodes of the graph:iI

    Xtji= tDI t= 0 , . . . , T; j Vt (8)

    Xtji {0, 1} 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 vectorX01= [0,0, .. . , 0]. Similarly, node

    setVTcontains a single node (final state ( T, 1)) withXT1 = [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 tandt+ 1

    are connected by an arc if the associated vectorsXtj and Xt+1k differonly in DI elements, i.e., exactly DI inbound truck are additionally

    scheduled in position t+ 1. This is true ifXtjiXt+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

    andXtjiXt+1kii I} (10)

    Finally, arc weights r((t,i),(t+1,k)) assign the contribution to the overall

    objective value to each arc (and the scheduling decision represented

    by the arc). For this purpose, two different kinds of information,

    which can be easily deduced from the scheduled inbound trucks

    represented by a state, are to be stored with each node. First, the set

    OS

    tj

    contains all outbound trucks, which are actually processed at the

    dock or already completely loaded within preceding slots, induced

    by the respective occurrence of inbound trucks:

    OStj=

    iI|Xtji =1

    Li

    t= 1 , . . . , T; j Vt (11)

    Second, the setOPtj

    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 ofOPtj

    in

    OPt+1k

    and need to be weighted with the actual period t+ 1, which

    equals the flow time of these trucks:

    rF()((t,j),(t+1,k))

    = |OPt+1k\OPtj| (t+ 1) t= 1 , . . . , T 1; j Vt; k Vt+1

    (13)

    Processing time: If the overall objective is to minimize the sum

    of processing times, then the number of outbound trucks actually

    processed during slott+ 1 needs to be derived as the arc weight. It

    simply amounts to the cardinality of the relative complement ofOPtj

    in OSt+1k, because all outbound trucks under processing with regard

    http://-/?-http://-/?-http://-/?-
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    5/10

    36 N. Boysen / Computers & Operations Research 37 (2010) 32--41

    Fig. 2. Example graph of the dynamic programming procedure.

    to the successor node of stage t+ 1, which have not been already

    completely loaded with regard to the predecessor node of stage t,

    remain under processing during t+ 1 and contribute to the overall

    processing time:

    rP()((t,j),(t+1,k))

    = |OSt+1k\O

    Ptj| t= 1 , . . . , T 1; j Vt; k Vt+1 (14)

    Tardiness: If due dates DDo need to be observed per outbound

    truck, the flow time of all outbound trucks leaving the dock can be

    directly utilized, because it equals the respective departure time of

    the truck. Whenever this departure time exceeds the given due date,

    a tardiness occurs, which is to be stored as the arc weight:

    rT()((t,j),(t+1,k))

    =

    o{OPt+1k

    \OPtj

    }

    max{0, t+ 1 DDo}

    t= 1 , . . . , T 1; j Vt; k Vt+1 (15)

    Moreover, the node weights dedicated to the processing time ob-

    jective can directly be applied to decide on the feasibility of arcsand nodes. If the number of outbound trucks to be actually pro-

    cessed in a slot texceeds the number DO of outbound doors avail-

    able: rP()((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 assign-

    ment 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 trucksto be assigned at sequence position t+ 1 are the ones for which

    Xt+1jiXtki= 1 holds.

    Example (cont.): Theresulting DP-graph which minimizes thepro-

    cessing time objective along with a (bold-faced) shortest path for our

    example is depicted inFig. 2.This path corresponds to the optimal

    solution matrix = {{1, 5}, {2, 4}, {3, 6}} and a minimum processingtime ofP() = 7, which is also listed as solution A inTable 2. All arcscorresponding 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, themore efficientDP 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

    (t+ 1, k) in stage t+ 1 is composed of a shortest path to a node

    (t,j) in stage t (already determined and stored) and the connecting

    arc ((t,j), (t+ 1, k)). Among all predecessor states of (t+ 1, k) the one

    with minimal arc weight is to be selected and stored. After reaching

    the final state (T,1) in stage T, the optimal path can be retrieved

    in backward direction stage-by-stage using the stored predecessor

    nodes.

    Although compared to a full enumeration of all possible solution

    matricesthe computational effort is already considerably reduced,a further speed-up is obtained by employing the idea of bounded

    dynamic programming(BDP) (e.g.[17,20,10,5,8]). BDP extends the DP

    approach explained above by additionally computing node specific

    lower bounds LBt,j on the remaining path length to the sink node.

    Furthermore, a global upper bound UB is determined upfront by

    some heuristic procedure(s). Whenever LBt,j plus the shortest path

    to the respective node is equal to or exceeds the upper bound UB,

    the node (t,j) can be fathomed as it cannot be part of a solution with

    a better objective value than the incumbent solution.

    Simple lower bounds for our three objectives are based on therelaxation of the coherency between inbound trucks and outbound

    loads. Under this prerequisite a separate inbound schedule is deter-

    mined separately for each outbound truck, where it is assumed that

    all remaining inbound trucks carrying load for the respective out-

    bound truck are assigned as soon as possible. To calculate the lower

    bounds per node (t,j) the value R(o, t,j) represents the least num-

    ber of remaining periods to complete outbound truck o : R(o, t,j)=

    |Lo\{i I|Xtji = 1}|/DIo O; t= 1, . . . , T 1; j Vt. With the help

    of this number all objective function specific lower bounds LBt,j can

    be derived for any node (t,j):

    Flow time: If the flow time of outbound trucks is to be minimized,

    then all remaining outbound trucks, which have not already been

    completely loaded with goods of the inbound bound trucks actually

    scheduled, can (at the earliest) leave the system after R(o, t,j) addi-tional periods:

    LBF()t,j

    =

    o{O\OPtj

    }

    (t+R(o, t,j)) t= 1 , . . . , T 1; j Vt (16)

    Processing time: The minimum remaining processing time of any

    outbound truck equals the value R(o, t,j), so that these values just

    need to be summarized over all outbound trucks:

    LBP()t,j

    =oO

    R(o, t,j) t= 1 , . . . , T 1; j Vt (17)

    Tardiness: To determine a lower bound on the tardiness of

    outbound trucks, we simply have to compare the departure time

    http://-/?-http://-/?-
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    6/10

    N. Boysen / Computers & Operations Research 37 (2010) 32 -- 41 37

    Fig. 3. Example graph of the bounded dynamic programming procedure.

    t+R(o, t,j) with the given due datesDDo with regard to each single

    remaining outbound truck:

    LBT()t,j

    = o{O\OP

    tj}

    max{0, t+R(o, t,j) DDo} t= 1 , . . . , T 1; j Vt

    (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 con-

    structed 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. 3for our example and the processing time objective. Fathomednodes (colored grey) base upon an upper bound ofUBP() = 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 opti-

    mality. 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 probabilis-

    tic 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 areguided by a simple priority rule, revealed that those approaches pre-

    dominantly 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 stor-ing the assignment of inbound trucks to slots. As the neighborhood-

    function 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

    valuesZ() {F(), P(), T()}, depending on the objective function

    actually chosen, can be easily determined according to Eqs. (1)

    and (3)(5). However, if the acceptance decision for a solution in

    the neighborhood is taken on the basis of the original objective value

    Z() only, the procedure might return infeasible solutions. As simplerepair mechanisms are not on hand, we apply the idea of penalty

    costs to penalize solutions, which violate the number of outbound

    doors available in proportion to the degree of violation. Thus, a

    modified objective functionZSA() is applied to guide the acceptanceof neighborhood solutions on the basis of a given penalty value PV:

    ZSA() =Z() +PV

    T

    t=1

    max{|(t)| DO; 0}

    (19)

    This modified objective value weights each occupied outbound

    door exceeding the number DO of outbound doors available with

    penalty costs PV per excess unit. The number of occupied doors

    |(t)|per periodtinduced by a solutionis calculated in accordance

    with Eq. (2).A proper determination of the penalty valuePVturns out to be a

    very critical task with regard to the performance of the SA. On the

    one hand, it is to be avoided that the SA gets stuck in less promis-

    ing regions of the solution space (feasible solutions with poor ob-

    jective values or even infeasible solutions surrounded by solutions

    violating even more outbound door constraints), which cannot be

    left due to only marginal acceptance probabilities of infeasible solu-

    tions. On the other hand, local optima might be missed if the search

    enters infeasible regions of the solution space too readily. It thus

    seems recommendable to employ variable penalty values in terms

    of a diversification-intensification strategy. For this purpose, penalty

    valuePVis initialized withPVstart=Z()start/10, whereZ()start is theobjective value of the first random solution (be it feasible or not).

    Then, with each improvement of the modified objective value ZSA()the search towards a local optimum is intensified by increasing the

    penalty value PV := PV 1.5. If within the last 30 swap moves (in

    direct succession) no improvement of ZSA() is obtained, PV is re-duced by:PV:=PV 0.5 to direct the search into other regions of the

    solution space (diversification).

    A neighborhood solution obtained by a swap move is acceptedto replace the actual solution as the starting point for the nextiteration on the basis of the following traditional probability scheme

    (e.g.[1]):

    Prob(replacing) =

    1, if ZSA()ZSA()

    exp

    ZSA() ZSA()

    C

    , otherwise

    (20)

    http://-/?-http://-/?-
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    7/10

    38 N. Boysen / Computers & Operations Research 37 (2010) 32--41

    Table 4

    Parameters for instance generation.

    Symbol Description Values

    DI Number of inbound doors 2, 3, 4, 5

    T Number of periods 4, 5, 6, 7, 8

    Our SA is guided by a simple static cooling schedule (see[14]). Theinitial value for control parameter C= PVstart 2 is chosen, which is

    continuously decreased in thecourse of theprocedure by multiplying

    it with factor 0.995 in each iteration. If the penalty value PV falls

    below PVstart/200 , the procedure is restarted with a new random

    solution matrix and a re-initialized control parameter C. A total of

    100,000 neighboring solutions are evaluated by our SA approach

    and the feasible solution (if obtained) with the minimum objective

    function valueZ() is returned. Within our computational study, weonly report results for the values of the control parameters described

    above, as preliminary studies indicated these parameter values to be

    most promising.

    5. Computational study

    Thus far, there is no established test-bed available for the truck

    scheduling problem treated in this paper. Therefore, we first elabo-

    rate on the instances that are used in our computational study. Then,

    numerical results on the performance of the proposed algorithms

    are discussed.

    5.1. Instance generation

    To derive the test instances the input parameters listed inTable 4

    are used to produce the sets Liof outbound trucks served by inbound

    trucki and the number DO of outbound doors (and due datesDDo if

    required) defining a TRSP instance.

    These parameters are combined in a full-factorial design and ineach case instance generation is repeated 20 times, so that 4 5 20 =

    400 different instances were obtained. On the basis of a given set of

    parameters each single instance is generated as follows:

    (1) Determine the number |I| of inbound trucks, the number |O|

    of outbound trucks, and the number DO of outbound doors by:

    |I| = DI T, |O| = Tand DO = |O|/2.

    (2) Initialize solution matrix with inbound trucks according toincreasing truck number: ts = (t 1) DI +s t= 1, . . . , T; s=1 , . . . , DI. For each inbound truck i Iinitialize the set Liof served

    outbound trucks with a single truck by: Li= (i).(3) Randomly choose an outbound truck by drawing an equally dis-

    tributed integer number out of interval [1; |O|].

    (4) Randomly choose a slot by drawing two equally distributed in-teger numbers out of the intervals [1; T] and [1; DI].

    (5) Expand the setLi of the inbound truck assigned at the randomly

    chosen slot with the randomly determined outbound truck, if

    the instance remains feasible, i.e.|(t)|DO holds for any periodt. If the last 100 attempts to expand a set L i failed, then go to

    step (6), otherwise proceed with step (3).

    (6) The additional due dates DDo, which are required for the tar-

    diness objective, are derived by drawing an equally distributed

    random number out of the interval[1; T] for each single out-

    bound trucko.

    This procedure guarantees that a feasible TRSP solutions exists for

    each single instance. All generated instances can be downloaded

    from the internet(www.ibl-unihh.de\tea_boy.htm).

    Table 5

    Results for the exact solution procedures.

    Measure Flow time Processing time Tardiness

    DP BDP DP BDP DP BDP

    Number of optimal solutions 302 321 302 327 300 327

    Fraction of so lve d ins tance s i n % 75.5 80.3 75.5 81. 8 75.0 81. 8

    Average CPU-seconds 81.4 70.2 81.2 63.4 85.0 65.8

    5.2. Computational results

    The methods described above have been implemented in C# (Vi-

    sual Studio 2003) and run on a Pentium IV, 1800MHz PC, with

    512 MB of memory. First, the performance of the exact solutions

    procedures, dynamic programming and bounded dynamic program-

    ming, is to be investigated. Table 5compares the number of opti-

    mal solutions and the computational time for all three considered

    objective functions. Within the BDP approach, the solution obtained

    by the simulated annealing procedure serves as the upper bound

    solution. As the results show, the performance of both exact solu-

    tion procedures seems widely uninfluenced by the objective func-

    tion considered, because all results remain in a comparable order of

    magnitude. This result is not astounding, as only the calculation of

    the arc weights is adopted to account for a specific objective func-

    tion, whereas the structure of the graph remains unaltered. BDP is

    able to solve about 5% more test instances compared to DP, if solu-

    tion times are restricted to 300 CPU-s. Moreover, BDP outperforms

    DP with regard to the average CPU-s required. However, the latter

    result does not hold for each single instance, as the overhead for

    computing upper and lower bounds is only justified for larger test

    instances.

    To evaluate this trade-off and to determine the size of instances

    up to which the exact solution procedures can be reasonably applied,

    Tables 68 relate the solution performance to the size of the test

    instances. Again, it is to be stated, that only minor differences in the

    solution performance are caused by the objective function applied. Asingle break-even point with regardto the number of inbound trucks,

    at which the pruning of the graph by the BDP approach surmounts

    the additional efforts for bound computations, cannot be determined

    as it varies depending on the number Tof periods and the number

    DI of inbound doors. These varying break-even points are marked

    within theTables 68by the underlined values.

    The size of instances, up to which DP and BDP can be reasonably

    applied, seems comparable and ranges between 20 and 25 inbound

    trucks. However, the instances of the cases T =7 and DI =3 (21

    inbound trucks) as well as T= 6 andDI = 4 (24 inbound trucks) can

    be additionally solved to optimality by applying the BDP approach.

    Then, the performance of the heuristic simulated annealing ap-

    proach and the lower bound procedures is reported.Table 9lists the

    results for these procedures averaged over all instances, for whichoptimal solution values could be obtained. By aggregating the opti-

    mal solutions over all three objectives, we receive 975 test cases for

    both approaches.

    For all of these instances SA was able to find a feasible solution

    with regard to the scarce number of outbound doors and, moreover,

    only 8 of these instances (less then 1%) are not solved to optimal-

    ity with an average time consumption of less than 1 CPU-s. (Notice,

    that the relative deviation from optimum per instance is determined

    by:Z(SA) Z(BDP)/Z(BDP), whereZ(SA) andZ(BDP) represent the ob-

    jective values of SA and BDP, respectively. This measure cannot be

    reported for the tardiness objective, as optimal objective values can

    be zero.) This solution quality obtained by only moderate computa-

    tional effort promises the SA being an appropriate choice, whenever

    bigger problem instances of real-world size need to be solved.

    http://www.ibl-unihh.de/tea-boy.htmhttp://www.ibl-unihh.de/tea-boy.htmhttp://www.ibl-unihh.de/tea-boy.htmhttp://www.ibl-unihh.de/tea-boy.htmhttp://-/?-http://-/?-http://-/?-http://-/?-http://www.ibl-unihh.de/tea-boy.htm
  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    8/10

    N. Boysen / Computers & Operations Research 37 (2010) 32 -- 41 39

    Table 6

    Solution performance of exact procedures in relation to the size of test instances for the flow time objective.

    T DI Avg.

    2 3 4 5

    3 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 100%(< 0.1)/100%(0.5)4 20(< 0.1)/20(0.6) 20(< 0.1)/20(0.6) 20(0.1)/20(0.7) 20(0.4)/20(0.7) 100%(0.2)/100%(0.6)5 20(< 0.1)/20(0.7) 20(0.5)/20(0.9) 20(8.1)/20(1.9) 20(56.0)/20(8.9) 100%(16.0)/100%(3.1)6 20(0.4)/20(0.9) 19(83.4)/20(7.2) 0(300)/10(247.7) 0(300)/0(300) 49%(171.0)/63%(138.9)

    7 20(3.0)/20(1.9) 3(275.8)/11(228.4) 0(300)/0(300) 0(300)/0(300) 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)

    Notes: # optimal solutions (average CPU-s) reported for DP/BDP.

    Table 7

    Solution performance of exact procedures in relation to the size of test instances for the processing time objective.

    T DI Avg.

    2 3 4 5

    3 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.6) 100%(< 0.1)/100%(0.5)4 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.6) 20(0.1)/20(0.7) 20(0.5)/20(0.7) 100%(0.2)/100%(0.6)5 20(< 0.1)/20(0.7) 20(0.5)/20(0.8) 20(7.6)/20(1.0) 20(55.7)/20(2.0) 100%(16.0)/100%(1.1)6 20(0.3)/20(0.8) 19(80.9)/20(6.2) 0(300)/11(213.4) 0(300)/0(300) 49%(170.3)/64%(130.1)

    7 20(2.8)/20(1.3) 3(275.2)/16(137.0) 0(300)/0(300) 0(300)/0(300) 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)

    Notes: # optimal solutions (average CPU-s) reported for DP/BDP.

    Table 8

    Solution performance of exact procedures in relation to the size of test instances for the tardiness objective.

    T DI Avg.

    2 3 4 5

    3 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.5) 100%(< 0.1)/100%(0.5)4 20(< 0.1)/20(0.5) 20(< 0.1)/20(0.6) 20(0.1)/20(0.7) 20(0.5)/20(0.7) 100%(0.2)/100%(0.6)5 20(< 0.1)/20(0.7) 20(0.6)/20(0.8) 20(10.3)/20(1.8) 20(77.9)/20(5.1) 100%(22.2)/100%(2.1)6 20(0.4)/20(0.8) 18(117.0)/20(7.0) 0(300)/13(212.9) 0(300)/0(300) 48%(179.4)/66%(130.2)

    7 20(4.4)/20(1.5) 2(287.3)/13(189.1) 0(300)/1(290.8) 0(300)/0(300) 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)

    Notes: # optimal solutions (average CPU-s) reported for DP/BDP.

    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

    Number of optimal solutions (objective values) 316 0 326 122 324 73

    Percentage of optimal solutions (objective values) 98.4 0.0 99.7 37.3 99.1 22.3

    Average relative deviation from optimum in % 0.04 46.2 0.03 10.3

    Maximum relative deviation from optimum in % 6.7 60.7 11.1 33.3

    Average absolute deviation from optimum 0.01 6.93 0.003 1.26 0.005 2.44

    Maximum absolute deviation from optimum 1 18 1 5 1 9

    Average CPU-s 0.8 < 0.01 0.8 < 0.01 0.8 < 0.01

    On the other hand, the lower bound procedures deviate con-

    siderably 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 objec-

    tive compared toLB(P) for the processing time objective, which also

    explains the slight decrease of the BDP approach for these two objec-

    tives listed inTable 5.This result can be explained by the following

    considerations:

    The value of any solution under the processing time objec-

    tive, constitutes a lower bound on its corresponding flow time

    objective value, as the flow time objective additionally considers

    waiting times of outbound trucks until their processing starts. As

    further the lower bound values at the source node (stage t= 0,

    see Eqs. (16) and (17) are identical for both problems, this lower

    bound value will need to be considerably tighter for the processing

    time objective as compared to the flow time objective.

    For the calculation of the outbound trucks' tardiness, the flow

    time, which equals the departure time of outbound trucks, is

    an essential input, as well, so that the same consideration holds

    for the comparison of LB(P) (processing time) and LB(T) (tardi-

    ness objective). The 73 optimal solution values contributed by

    the lower boundLB(T) predominantly stem from the 67 instances

  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    9/10

    40 N. Boysen / Computers & Operations Research 37 (2010) 32--41

    resulting in an optimal solution with zero tardiness (T() = 0),for which the lower bound value results to zero in any case,

    as well.

    Notice, that the relative deviation from optimum per instance is

    determined by: (Z(BDP)LB)/Z(BDP), where LB represent the value

    of respective lower bounding procedure actually applied. Again, this

    measure cannot be reported for the tardiness objective.

    6. Integration of TRSP in a rolling horizon

    The presented decision problem treats the static case, where all

    inbound and outbound trucks to be scheduled are known in advance.

    In the real world, new inbound and outbound trucks constantly ar-

    rive at the dock, while a once determined schedule is processed. Un-

    fortunately, the uncertainties with regard to arrival times of trucks

    makes a planning on estimated arrival times only meaningful up to

    a certain extent. For many practical implementations it might thus

    be recommendable to employ the model as part of a rolling horizons

    approach as is explained in the following:

    Once an inbound truck is completely unloaded and frees a re-

    ceiving door, the TRSP is solved with all inbound trucks actuallywaiting on the yard (whereas expected inbound trucks are not con-

    sidered). This requires an adoption of the basic TRSP, as all in-

    bound trucks still under processing need to be fixed in the first

    period of TRSP, so that only a single slot of period t= 1 is avail-

    able for assignment. Just as well, outbound trucks already docked

    need to be considered in TRSP. To avoid disproportionately high

    waiting times of unattractive inbound trucks a maximum waiting

    time is additionally introduced. As all alterations are truly straight

    forward, we skip a detailed adoption of algorithms. The inbound

    truck assigned to the single free slot of period t= 1 in the solu-

    tion to TRSP is called up to occupy the unassigned receiving door.

    This procedure is repeated as soon as the next inbound door is

    freed.

    In a practical implementation, the dispatcher also needs to react

    on infeasible plans. The strict zero-inventory policy might make a

    simultaneous processing of the required number of outbound trucks

    impossible. Fortunately in real world cross docks, the number of

    doors is seldom a bottleneck. As investment costs raise subpro-

    portional with increasing dock doors, cross docks are often over-

    dimensioned at least with regard to the doors available. Instead,

    the number of served doors is a political variable, which tends to

    be kept low in order to reduce transportation times within the

    dock for the given workforce on duty. This is especially true for

    the food industry, as frozen food is predominantly transshipped in

    a separate area of a larger terminal, so that additional doors can

    be withdrawn from the remaining terminal if necessary. If TRSP re-

    turns an infeasible solution, an additional outbound door can thus

    be temporarily opened and the TRSP is solved with the modified

    input data, until a feasible solution is retrieved. Once an outboundtruck leaves the terminal, the respective outbound door is closed

    again.

    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. Differ-

    ent objectives (minimization of flow time, processing time and tardi-

    ness) are investigated and suited exact (dynamic programming) and

    heuristic (simulated annealing) approaches are presented. The com-

    putational tests especially indicate the appropriateness of the devel-

    oped simulated annealing procedure to solve problem instances of

    real-world size. However, there remains some future research to be

    done:

    Other procedures and further algorithmic developments might be

    able to enhance the performance of solving the truck scheduling

    model. Especially, the runtime of the bounded dynamic program-

    ming approach can be considerably reduced by developing more

    sophisticated lower bound procedures.

    Although the author considers the NP-hardness of the problem tobe very likely, the complexity of the problem remains open.

    In other branches than the food industry modified truck schedul-

    ing problem might occur, so that further operational charac-

    teristics need to be considered. For instance, a look-ahead of

    inbound trucks arriving at the yard in the near future might be

    reasonable. If trucks do not arrive simultaneously but shifted

    in time, an additional arrival date needs to be assigned to each

    inbound truck. Such inbound truck specific arrival times can be

    easily incorporated in the model and the algorithms alike. In

    the dynamic programming approach arrival times simply lead to

    infeasible arcs, which would otherwise induce a scheduling of

    inbound trucks ahead of their arrival. Other operational charac-

    teristics like a movement time of goods which depends on the

    distance between the respective inbound and outbound doors ortruck specific processing times require some more alterations,

    but can, at least, quite easily be incorporated in the simulated

    annealing approach.

    Although the truck scheduling problem presented is dedicated to a

    specific real-world case in the food industry, themodelis of sufficient

    generality to serve as a base model, which can be adopted to cover

    several further extensions of real-world truck scheduling problems,

    alike.

    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 distributionefficiencies. International Journal of Logistics: Research and Applications2000;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 Science2004;38:23544.

    [5] Bautista J, Companys R, Corominas A. Heuristics and exact algorithms for solvingthe monden problem. European Journal of Operational Research 1996;88:10113.

    [6] Bermudez R, Cole MH. A genetic algorithm approach to door assignmentsin breakbulk terminals. Technical Report MBTC-1102, Mack BlackwellTransportation Center, University of Arkansas, Fayetteville, Arkansas; 2001.

    [7] Boysen N, Fliedner M, Scholl A. Sequencing inbound and outbound trucks atcross docking terminals. OR Spectrum; 2007, to appear.

    [8] Boysen N, Fliedner M, Scholl A. Sequencing mixed-model assembly lines tominimize part inventory cost. OR Spectrum 2007;30:61130.

    [9] Campbell JF. A survey of network hub location. Studies in Locational Analysis1994;6:3149.

    [10] Carraway RL, Schmidt RL. An improved discrete dynamic programmingalgorithm for allocating resources among interdependent projects. ManagementScience 1991;37:1195200.

    [11] Dowsland KA. Simulated annealing. In: Reeves CR, editor. Modern heuristictechniques for combinatorial problems. London; 1993. p. 2069.

    [12] Forger G. UPS starts world's premiere cross-docking operation. Modern MaterialHandling; 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.

  • 7/25/2019 Truck Scheduling at Zero Inventory Cross Docking Terminals (1)

    10/10

    N. Boysen / Computers & Operations Research 37 (2010) 32 -- 41 41

    [17] Marsten RE, Morin TL. A hybrid approach to discrete mathematicalprogramming. Mathematical Programming 1978;14:2140.

    [18] McWilliams DL, Stanfield PM, Geiger CD. The parcel hub scheduling problem:a simulation-based solution approach. Computers & Industrial Engineering2005;49:393412.

    [19] Miao Z, Lim A, Ma H. Truck dock assignment with operational time constraintwithin crossdocks. European Journal of Operational Research 2009;192:10515.

    [20] Morin TL, Marsten RE. Branch-and-bound strategies for dynamic programming.Operations Research 1976;24:61127.

    [21] Oh Y, Hwang H, Cha CN, Lee S. A dock-door assignment problem for the

    Korean mail distribution center. Computers & Industrial Engineering 2006;51:28896.

    [22] Stalk G, Evans P, Shulman LE. Competing on capabilities: the new role ofcorporate strategy. Harvard Business Review 1992;70(2):5769.

    [23] Tsui LY, Chang C-H. A microcomputer based decision support tool for assigningdock 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 Engineering1998;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 Research2006;184:37796.