Planning and Scheduling in Intermodal Transport

Planning and Scheduling in Intermodal Transport

7th IFAC Conference on Manufacturing Modelling, Management, and Control International Federation of Automatic Control June 19-21, 2013. Saint Petersbu...

318KB Sizes 2 Downloads 102 Views

7th IFAC Conference on Manufacturing Modelling, Management, and Control International Federation of Automatic Control June 19-21, 2013. Saint Petersburg, Russia

Planning and Scheduling in Intermodal Transport Jenny Nossack ∗ Erwin Pesch ∗ ∗

Department of Management Information Science, Universit¨ at Siegen, H¨ olderlinstraße 3, 57068 Siegen, Germany (e-mail: {jenny.nossack,erwin.pesch}@uni-siegen.de).

Abstract: We consider a problem that arises in intermodal transport and which addresses the scheduling of transportation requests that involve container movements from customers (shippers or receivers) to terminals and vice versa. The transportation requests are handled by a trucking company which operates several depots and a fleet of homogeneous trucks that must be routed and scheduled to minimize the total truck operating time under hard time window constraints. Empty containers are considered as transportation resources. They are provided to the customers and are repositioned after usage. For the problem at hand, we present a model formulation based on a full-truckload pickup-and-delivery problem with time windows and propose a two-stage heuristic solution approach. Keywords: intermodal transport, pickup and delivery, time windows, heuristic, ejection chain 1. INTRODUCTION

full (IF), inbound empty (IE), outbound full (OF), and outbound empty (OE).

In this research, we address a truck scheduling problem that arises in intermodal transport. Macharis and Bontekoning (2004) define intermodal transport as the movement of goods in standardized loading units (e.g., containers) by at least two transportation modes (rail, maritime, and road). The change of transportation modes is performed at specially designed terminals by transferring the loading units without handling the freight itself. A trucking company (also called carrier ) operates a fleet of homogeneous trucks to handle transportation requests that involve container movements from customers (shippers or receivers) to terminals and vice versa. Associated with each request is a hard time window for service. Furthermore, containers are regarded as transportation resources and are provided to the customers for freight delivery and are repositioned after freight receiving. The carrier’s objective is to minimize the total traveling cost which is proportional to the total operating time of all trucks in use.

Inbound/outbound full requests are induced by customers and imply the movements of fully-loaded containers from terminals to customers and vice versa. Inbound/outbound empty requests, on the contrary, are initiated by the carrier and are due to empty container trade imbalances. In detail, to accommodate the demand of empty containers in an export-dominant region, empty containers have to be imported from import-dominant areas. An illustration of the different types of transportation requests is given in Figure 1. Each transportation request defines an origin and/or destination, as well as further activities which are listed below in chronological order of their execution. The activities are categorized into empty container activities (E-activities) written in italic font and other activities (O-activities) written in normal font. (1) Inbound Full Request (Origin: Terminal, Destination: Receiver customer): The fully-loaded container is picked up at the defined terminal and is delivered to the specified receiver customer. The container is dropped off, unpacked, and the remaining empty container is picked up. The empty container is either delivered to a shipper customer or terminal that requires an empty container for freight transportation or it is delivered to one of the depots. (2) Inbound Empty Request (Origin: Terminal, Destination: Unknown): The empty container is picked up at the defined terminal. The container is either transported to a shipper customer or terminal that requires an empty container for freight transportation or it is delivered to one of the depots. (3) Outbound Full Request (Origin: Shipper customer, Destination: Terminal): An empty container is delivered either from a depot, a terminal, or a receiver cus-

We address a problem setting with multiple terminals and multiple depots. The depots are operated by the carrier and serve as truck parking space and empty container storage. We furthermore assume that the depots have a sufficient number of empty containers available and enough space to store empty containers and to park trucks. The considered transportation requests either originate from or end up at a terminal. To distinguish between these types of transportation requests the terminology inbound request and outbound request is used. An inbound request starts and an outbound request ends at a terminal. This classification is extended by differentiating between the container loading states, full and empty. Full requests denote the movement of fully-loaded containers and empty requests refer to the movement of empty containers. Hence, four types of transportation requests are considered: inbound 978-3-902823-35-9/2013 © IFAC

27

10.3182/20130619-3-RU-3018.00640

2013 IFAC MIM June 19-21, 2013. Saint Petersburg, Russia

OUTBOUND FULL

Origin

Destination

Origin

Terminal

Terminal

Outbound Full Request (OF) Shipper Customer

EMPTY

INBOUND

Destination Outbound Empty Request (OE)

Destination Inbound Full Request (IF) Receiver Customer

Origin Inbound Empty Request (IE) Terminal

Terminal

Fig. 1. Types of Transportation Requests tomer to the specified shipper customer. The empty container is dropped off, packed with freight at the shipper customer, and the fully-loaded container is picked up. The fully-loaded container is transported to the defined terminal and the container is dropped off. (4) Outbound Empty Request (Origin: Unknown, Destination: Terminal): An empty container is transported either from a depot, a terminal, or a receiver customer to the defined terminal. The empty container is dropped off at the terminal.

quality and the computational time on the parameter settings of the time windows. We model the same truck scheduling problem as a full-truckload pickup-and-delivery problem with time windows (FTPDPTW) and propose a two-stage heuristic solution approach. Several additional papers have been published that consider variants of this scheduling problem in the context of intermodal transport. The following research, however, neglects the repositioning of equipments (e.g, empty containers or trailers). Imai et al. (2007) address a truck routing problem with a full container load that involves the transportation of containers from and to a single intermodal terminal. The authors call this problem Vehicle Routing Problem with Full Containers (VRPFC). This problem is solved by a subgradient heuristic based on a Lagrangian relaxation. Caris and Janssens (2009) extend the VRPFC by imposing time windows on the customer locations and on the depot. An initial solution is obtained by a two-phase insertion method and is improved by a local search heuristic. The same authors propose a deterministic annealing algorithm for the identical problem in Caris and Janssens (2010). Jula et al. (2005) consider a truck scheduling problem where time constraints are imposed on the terminals and on the customer locations. The authors formulate the truck scheduling problem as am-TSPTW by combining pickup and delivery locations. They propose an exact two-phase solution algorithm based on dynamic programming and two heuristics, a hybrid genetic algorithm and an insertion method.

Observe that each transportation request induces Eactivities. This is due to the fact that the containers are provided for freight delivery and are repositioned after freight receiving. It is part of the optimization to decide where to deliver the empty containers released after inbound full/empty requests and where to pick up empty containers for outbound full/empty requests. Furthermore, transportation requests need to respect side constraints that are time related. Each transportation request has to respect a hard time window constraint that denotes the time interval in which the O-activities have to start. Moreover, service times are defined for the O-activities of each transportation request. Note that Oactivities are fixed and are not part of any optimization. Summing up, the problem at hand evaluates in which order and by which truck the transportation requests are carried out in order to minimize the total truck operating time under hard time window constraints. Additionally, it is determined, where to deliver the empty containers available after inbound full/empty requests and where to pick up the empty containers required for outbound full/empty requests. Furthermore, the truck scheduling problem is based on the following assumptions: The tours of the operating trucks start and end at a predefined and an arbitrary depot, respectively. Each truck serves a single container at a time and all transported containers and trucks are homogeneous. The transportation requests are directly processed, i.e., without any interruptions. The traveling time between any two locations is known in advance and given as a constant.

Truck routing and scheduling problems in intermodal transport that integrate the repositioning of equipments to facilitate fully-loaded requests have been addressed in the following research. Coslovich et al. (2006) consider a truck routing problem which minimizes routing costs, resource assignment costs, and container repositioning costs. An integrated programming model is presented and solved with means of Lagrangian relaxation. Another related problem is the Multi-Resource Routing Problem (MRRP) with well-defined and flexible tasks. A well-defined task specifies the origin and destination of a truck movement, whereas a flexible task either defines the origin or the destination, but not both. Smilowitz (2006) address the MRRP with well-defined and flexible tasks where loaded and empty trailers are transshipped between terminals, shippers, receivers, and a depot. This problem is solved by a branch-and-bound framework that embeds column generation. Francis et al. (2007) improve this solution approach and suggest a new solution method that uses randomized route generation. Ileri et al. (2006) consider a truck scheduling problem that involves the movement of loaded and empty trailers between shippers, receivers,

2. LITERATURE REVIEW This outlined truck scheduling problem has already been discussed by Zhang et al. (2010). The authors formulate the truck scheduling problem as multiple traveling salesmen problem with time windows (m-TSPTW) and solve it by a modified version of the window partitioning heuristic presented by Wang et al. (2002). A drawback of this solution method is the strong dependence of the solution 28

2013 IFAC MIM June 19-21, 2013. Saint Petersburg, Russia

The origin location of each request i ∈ R is denoted by Oi and the destination location by Pi . Due to the fact that inbound empty requests solely define an origin location, the unknown destination location is initially set to the origin, to ease the formulation (Pi := Oi ). Analogously, the undefined origin location of each outbound empty request is set to the destination location (Oi := Pi ). The time windows and service times of the O-activities of each transportation request i ∈ R are given by [ai , bi ] and τi , respectively. We denote the union of inbound full/empty requests by pickup requests RP := {R1 , . . . , Rn1 } and the union of outbound full/empty requests by delivery requests RD := {Rn1 +1 , . . . , Rn }. Based on the property that each depot is assumed to have a sufficient number of empty containers available and enough space to store empty containers, a depot can be considered as pickup and as delivery depot. Thus, we define for each depot Dj ∈ D (j = 1, . . . , m) a pickup depot set DjP := P P { Dj1 , . . . , DjK } containing KDj depot duplicates and D

rail ramps, and depots with a heterogeneous truck fleet. The problem is formulated as a set partitioning model and is solved by a column generation-based approach. Zhang et al. (2009) investigate a truck scheduling problem that handles fully-loaded and empty transportation requests between shippers, receivers, a single terminal, and multiple depots. Time windows are defined at the terminal and at the customer locations. The problem is formulated as am-TSPTW with multiple depots and is solved by a reactive tabu search algorithm (Battiti and Tecchiolli (1994)). This problem setting is extended by Zhang et al. (2010) to multiple terminals, is formulated as am-TSPTW with multiple depots, and is solved by a modified windowpartitioning heuristic presented by Wang et al. (2002). Wang et al. (2002) propose a solution method for the amTSPTW based on a time window discretization. Compared to Zhang et al. (2010), Braekers et al. (2013) address a similar scheduling problem. Here, the truck does not have to wait at the receiver customer until the freight is unloaded and may leave to carry out other requests. The empty container that is released at the receiver customer may be picked up by any other truck. Braekers et al. (2013) propose two model formulations, a sequential and an integrated approach, both based on an am-TSPTW formulation. For both formulations, they propose a singleand a two-phase deterministic annealing algorithm.

j

D D , . . . , Dj|R a delivery depot set DjD := { Dj1 P | } containing P |R | depot duplicates. It is further explained in the text, why multiple depot duplicates are required. The location Hk of each pickup depot k ∈ DjP and each delivery depot k ∈ DjD is equivalent to the location HDj of the underlying depot Dj ∈ D. Let theSunion of the sets of pickup depots m be denoted by DP := j=1 DjP and the union of the sets Sm of delivery depots by DD := j=1 DjD . Moreover, the union of the sets of pickup requests and pickup depots ˆ P := is represented by the set of pickup requests/depots R P P R ∪ D and the union of the sets of delivery requests and delivery depots by the set of delivery requests/depots ˆ D := RD ∪ DD . The traveling time between any two R locations is given by function t : (•, •) → R+ and the time to pick up or drop off a container is given by parameter υ.

3. MATHEMATICAL FORMULATION To model the truck scheduling problem as FTPDPTW, the introduced transportation requests are reclassified into pickup and delivery requests. This distinction is made in dependency of the requests’ supply and demand of empty containers. After an inbound full/empty request has been processed, an empty container is released. Hence, in terms of the FTPDPTW formulation, inbound full/empty requests are considered as (empty container) pickup requests. Outbound full/empty requests, on the contrary, require an empty container to carry out the transportation and are thus regarded as (empty container) delivery requests. Since depots may provide and receive empty containers, depots are considered as both, pickup and delivery.

3.2 Mathematical Model The FTPDPTW model can be defined on a directed graph G = (V, A) where V represents the vertex set and A the arc set. V consists of the depot set D, the set of pickup reˆ P , and the set of delivery requests/depots quests/depots R ˆ D . Motivated by a graph visualization presented by AsR bach et al. (2009), an illustration of digraph G is depicted in Figure 2 and a detailed description of the vertex and arc set is given next. Due to the assumption that the transportation requests are carried out without interruption, each pickup and each delivery request i ∈ RP ∪ RD can be represented by a single vertex, i.e., a vertex represents the O-activities. We furthermore include a vertex for each depot, as well as for each pickup and delivery depot. The service time τj for each pickup and delivery depot j ∈ DP ∪ DD is set to υ, since an empty container is picked up at a pickup depot and is dropped off at a delivery depot. The time window [aj , bj ] is set to [−∞, ∞]. Note that service times and time windows are not defined for the depots.

3.1 Notation The following notation is used to describe the FTPDPTW model formulation. Let D := {D1 , . . . , Dm } denote the set of depots. The initial number of trucks located at depot j ∈ D is defined by Kj and the location of depot j ∈ D is given by parameter Hj . Let R := {R1 , . . . , Rn } represent the set of transportation requests. Without loss of generality, we assume that R1 , . . . , Rn1 denote inbound full/empty requests and Rn1 +1 , . . . , Rn outbound full/empty requests. Table 1. Arc Weights for the FTPDPTW Formulation Tij i∈D i ∈ DP i ∈ RP i ∈ DD i ∈ RD

j∈D j ∈ DP ∞ t(Hi , Hj ) ∞ ∞ ∞ ∞ t(Hi , Hj ) ∞ t(Pi , Hj ) t(Pi , Hj )

j ∈ RP j ∈ DD j ∈ RD t(Hi , Oj ) ∞ ∞ ∞ ∞ t(Hi , Oj ) ∞ t(Pi , Hj ) t(Pi , Oj ) t(Hi , Oj ) ∞ ∞ t(Pi , Oj ) ∞ ∞

An arc (i, j) ∈ A in G illustrates a possible truck movement from vertex i ∈ V to vertex j ∈ V with two possible loading states: unloaded and loaded with an empty container. Arcs (i, j) ∈ A from pickup to delivery reˆP , j ∈ R ˆ D , symbolize loaded quests/depots, i.e., i ∈ R 29

2013 IFAC MIM June 19-21, 2013. Saint Petersburg, Russia

Depots D

Pickup Requests/Depots RP

Delivery Requests/Depots RD

Pickup Requests RP

Delivery Requests RD

R1

Rn1+1

Rn1

Rn

D1

Dm

Pickup Depots DP P D11

P D1KD1

P

DmKDm

Dm1

P

Delivery Depots DD D

D11

D

D1|RP|

D

Dm|RP|

Dm1

D

Fig. 2. Graph Representation G truck moves whereas all the other arcs denote unloaded moves.

X

xij ≤ Ki , ∀i ∈ D (1)

ˆP j∈R

Arcs and arc weights are reported in Table 1 and are visualized in Figure 2. The arc weight, denoted by Tij , incorporates the truck traveling time that is required to get from the (destination) location of vertex i ∈ V to the (origin) location of vertex j ∈ V . Arcs that correspond to infeasible truck movements have arc weight ∞, are further referred to as infeasible arcs, and are listed below. Note that infeasible arcs are not visualized in Figure 2.

X

xij = 1, ∀i ∈ RP (2)

ˆD j∈R

X

xij = 1, ∀j ∈ RD (3)

ˆP i∈R

X

xji −

ˆD j∈D∪R

• Pickup and delivery requests have to respect precedence constraints, i.e., arcs among pickup requests/ depots and among delivery requests/depots are infeasible. • Arcs between pickup and delivery depots are infeasible. • Arcs (i, j) and (j, i) between pickup requests/depots ˆ P and delivery requests/depots j ∈ R ˆ D are i ∈ R infeasible, if the corresponding time windows [ai , bi ] and [aj , bj ] are in conflict, i.e., arcs are infeasible, if ai + Tij + τi − bj ≥ 0 for arc (i, j) and if aj + Tji + τj − bi ≥ 0 for the reverse arc (j, i).

X ˆP j∈R

xji −

X

ˆ P (4) xij = 0, ∀i ∈ R

ˆD j∈R

X

ˆ D (5) xij = 0, ∀i ∈ R

ˆP j∈D∪R

ˆP ∪ R ˆ D (6) ai ≤ zi ≤ bi , ∀i ∈ R ˆP ∪ R ˆ D (7) zi + Tij + τi − zj ≤ (1 − xij ) · Mij , ∀i, j ∈ R xij ∈ {0, 1} , ∀(i, j) ∈ A (8) ˆP ∪ R ˆ D (9) zi ∈ R, ∀i ∈ R The total truck operating time is to be minimized in the objective function. The total operating time is determined by subtracting the sum of the start times from the sum of the end times. The start and end times refer to the times when a truck leaves the initial depot and returns to the end depot, respectively. Constraints (1) enforce that no more than the predefined number of trucks leave the initial depots. Equalities (2) and (3) ensure that each pickup and each delivery request is visited exactly once, respectively. Flow conservation is enforced by constraints (4) and (5). Expressions (6) ensure that the time windows are respected. Constraints (7) connect variables x and z by enforcing a time increase of zj (compared to zi ), if xij = 1. Parameter Mij can be defined as a big number or can be replaced by max {bi + Tij + τi − aj , 0} for each ˆP ∪ R ˆD . i, j ∈ R

Now, feasible truck routes correspond to paths in G starting from the depots, visiting each pickup and delivery request exactly once and each pickup and delivery depot maximal once, and returning to the depots. Multiple depot duplicates are required to synthesize that Kj trucks may start at depot j ∈ D and that each truck has the possibility to return to any depot.

The following mixed integer programming problem is based on digraph G and formalizes the truck scheduling problem. We associate with each arc (i, j) ∈ A a binary decision variable xij ∈ {0, 1} to indicate whether (xij = 1) or not (xij = 0) the arc is traversed by a truck. Moreover, we define for each pickup and each delivery request/depot ˆP ∪ R ˆ D a time variable zi ∈ R to identify the time i∈R 4. SOLUTION APPROACH when the first activity starts. X X X X min (zi + Tij + τi )·xij − (zj − Tij )·xij test The considered truck scheduling problem is a generalization of the m-TSPTW, which is known to be NP-hard i∈D j∈R ˆ D j∈D ˆP i∈R (Lenstra and Rinnooy Kan, 1981). Since the truck schedulsubject to ing problem includes the m-TSPTW as a special case, we 30

2013 IFAC MIM June 19-21, 2013. Saint Petersburg, Russia

denote the associated set of pickup and delivery pairs. For further calculation, we define a new start Ok := Oi and end Pk := Pj location for each pickup and delivery pair k := (i, j) ∈ C (also denoted by pd-pair ), as well as a service time τk and a time window [ak , bk ]:  P D  min {max {ai , aj − Tij − τi } , bi } if i ∈ R , j ∈ R ak = ai if i ∈ RP , j ∈ DD  aj − Tij − τi if i ∈ DP , j ∈ RD  if i ∈ RP , j ∈ RD  min {bi , bj − Tij − τi } bk = bi if i ∈ RP , j ∈ DD  bj − Tij − τi if i ∈ DP , j ∈ RD  if i ∈ RP , j ∈ RD  max {aj − bi , Tij + τi } + τj τk = Tij + τi + τj if i ∈ RP , j ∈ DD  Tij + τi + τj if i ∈ DP , j ∈ RD

can follow that the truck scheduling problem is NP-hard as well. In order to solve problem instances of real-world size, a two-stage heuristic solution approach has been developed. In the first stage of the algorithm, an initial solution is constructed and which is further improved by an ejection chain heuristic in a second stage. 4.1 Stage 1: Route Construction Heuristic The construction heuristic determines a feasible solution to the truck scheduling problem and is carried out in four phases: In the first phase, pickup and delivery requests/depots are paired in order to determine empty container pickup and delivery locations for outbound full/empty and inbound full/empty requests, respectively. These constructed pairs are clustered to sequences and are assigned to trucks in a second phase. In the third and forth phase, start and end depots, as well as start and end times are assigned to those sequences.

2. Phase: Sequencing Pickup and Delivery Pairs In the second phase, pd-pairs are clustered to sequences. Sequencing is conducted by selecting two distinct elements (k ∗ , l∗ ) ∈ C × C which are feasible in terms of the defined time windows and which minimize the traveling time between them. A detailed description of the algorithm is presented below.

1. Phase: Pairing Pickup and Delivery Requests/Depots After a pickup request has been conducted, an empty container is released at the destination location and is either transported to a delivery depot or to the origin location of a delivery request. Thus, each pickup request has to be followed by a delivery request/depot. Similarly, each delivery request requires an empty container at the origin location and either receives an empty container from a pickup depot or a pickup request, i.e., a pickup request/depot has to precede a delivery request. This empty container assignment problem is solved in the first phase of the heuristic by constructing pickup and delivery pairings such that each pickup and delivery request is paired exactly once and each pairing is feasible related to the time windows. The objective aims at minimizing the sum of the traveling time between pairs of pickup and delivery requests/depots.

Algorithm: Sequencing pd-pairs 1. Initialization: Initial solution C. 2. Iteration: Determine (k ∗ , l∗ ) ∈ C × C: (k ∗ , l∗ ) := argmin t(Pk , Ol ) {(k,l)∈C×C|ak +t(Pk ,Ol )+τk −bl ≤0∧(Pk ∈RD ∨Ol ∈RP )} ∗ ∗

i. If there is no such (k , l ), no feasible solution is constructed. ii. Otherwise, construct a pair λ := (k ∗ , l∗ ) and update time window [aλ , bλ ], service time τλ , start location Oλ , and end location Pλ accordingly. Set C = C \ {k ∗ , l∗ } and C = C ∪ {λ}. Go P to 2). 3. Termination: The algorithm terminates, if |C| ≤ Kj .

In mathematical terms, the following subproblem is solved in the first phase of the heuristic. The binary decision variable yij ∈ {0, 1} denotes whether (yij = 1) or not ˆ P precedes delivery (yij = 0) pickup request/depot i ∈ R ˆD . request/depot j ∈ R X X Tij · yij min

j∈D

3. Phase: Assignment of Start and End Depots to Sequences After the pd-pair sequences have been generated, it has to be ensured that each sequence starts and ends at a depot. To ease the formulation, we will further refer to a pd-pair sequence k ∈ C as an alternating sequence of pickup and delivery requests/depots, ˆ P if j odd and k j ∈ R ˆ D if k := (k 1 , . . . , k n(k) ) with k j ∈ R j even.

ˆD ˆ P j∈R i∈R

subject to X

yij = 1, ∀i ∈ RP

(10)

yij = 1, ∀j ∈ RD

(11)

yij · (ai + Tij + τi − bj ) ≤ 0, ∀i ∈ RP , j ∈ RD ˆP , j ∈ R ˆD yij ∈ {0, 1} , ∀i ∈ R

(12)

ˆD j∈R

X

A start depot is assigned to each sequence k ∈ C, denoted by k 0 , by solving a classical assignment problem. A new binary decision variable wjk ∈ {0, 1} is introduced, indicating whether (wjk = 1) or not (wjk = 0) depot j ∈ D is assigned to sequence k ∈ C. XX min wjk Tjk1 test

ˆP i∈R

(13)

j∈D k∈C

This subproblem can easily be transformed into a classical assignment problem and can thus be solved to optimality in polynomial time, e.g., by the Hungarian method (Kuhn, 1955).

subject to X

wjk ≤ Kj , ∀j ∈ D

(14)

k∈C ∗ ˆP , j ∈ R ˆ D , denote an optimal solution to this Let yij ,i ∈ R ∗ ˆP , j ∈ R ˆD } subproblem and let C := {(i, j)|yij = 1, i ∈ R

X j∈D

31

wjk = 1, ∀k ∈ C

(15)

2013 IFAC MIM June 19-21, 2013. Saint Petersburg, Russia

wjk ∈ {0, 1} , ∀j ∈ D, k ∈ C

Braekers, K., Caris, A., and Janssens, G.K. (2013). Integrated planning of loaded and empty container movements. OR Spectrum, 35, 457–478. Caris, A. and Janssens, G.K. (2009). A local search heuristic for the pre- and end-haulage of intermodal container terminals. Computers & Operations Research, 36, 2763–2772. Caris, A. and Janssens, G.K. (2010). A deterministic annealing algorithm for the pre- and end-haulage of intermodal container terminals. International Journal of Computer Aided Engineering and Technology, 2, 340– 355. Coslovich, L., Pesenti, R., and Ukovich, W. (2006). Minimizing fleet operating costs for a container transportation company. European Journal of Operational Research, 171, 776–786. Dantzig, G.B. (1963). Linear Programming and Extensions. Princeton University Press, Princeton. Francis, P., Zhang, G., and Smilowitz, K. (2007). Improved modeling and solution methods for the multi-resource routing problem. European Journal of Operational Research, 180, 1045–1059. Ileri, Y., Bazaraa, M., Gifford, T., Nemhauser, G., Sokol, J., and Wikum, E. (2006). An optimization approach for planning daily drayage operations. Central European Journal of Operations Research, 14, 141–156. Imai, A., Nishimura, E., and Current, J. (2007). A Lagrangian relaxation-based heuristic for the vehicle routing with full container load. European Journal of Operational Research, 176, 87–105. Jula, H., Dessouky, M., Ioannou, P., and Chassiakos, A. (2005). Container movement by trucks in metropolitan networks: Modeling and optimization. Transportation Research Part E: Logistics and Transportation Review, 41, 235–259. Kuhn, H.W. (1955). The Hungarian method for the assignment problem. Naval Research Logistics Quarterly, 2, 83–97. Lenstra, J.K. and Rinnooy Kan, A.H.G. (1981). Complexity of vehicle routing and scheduling problems. Networks, 11, 221–227. Macharis, C. and Bontekoning, Y.M. (2004). Opportunities for OR in intermodal freight transport research: A review. European Journal of Operational Research, 153, 400–416. Pesch, E. and Glover, F. (1997). TSP ejection chains. Discrete Applied Mathematics, 76, 165–181. Smilowitz, K. (2006). Multi-resource routing with flexible tasks: An application in drayage operations. IIE Transactions, 38, 577–590. Wang, X., Regan, A.C., and Xu, Z. (2002). Local truckload pickup and delivery with hard time window constraints. Transportation Research Part B: Methodological, 36, 97– 112. Zhang, R., Yun, W.Y., and Kopfer, H. (2010). Heuristicbased truck scheduling for inland container transportation. OR Spectrum, 32, 787–808. Zhang, R., Yun, W.Y., and Moon, I.K. (2009). A reactive tabu search algorithm for the multi-depot container truck transportation problem. Transportation Research Part E: Logistics and Transportation Review, 45, 904– 914.

(16)

This subproblem can also be transformed into a classical assignment problem and can be solved to optimality, e.g., by the Hungarian method. An end depot, denoted by k n(k)+1 , is assigned to each sequence k ∈ C by choosing the nearest depot to n(k) the last element in the sequence, i.e., k n(k)+1 := k argmin Tkn(k) j . j∈D

4. Phase: Assignment of Start and End Times to Sequences The following linear subproblem determines the optimal start and end times of each sequence k ∈ C and is solved by the simplex algorithm (Dantzig, 1963). We introduce a decision variable vki ∈ R which denotes the time when the first activity starts at request/depot k i of sequence k ∈ C. The problem of assigning start and end times can mathematically be formulated as: min (vkn(k) + Tkn(k) kn(k)+1 + τkn(k) − (vk1 − Tk0 k1 )) subject to aki ≤ vki ≤ bki , i = 1, . . . , n(k)(17) vki + Tki ki+1 + τki − vki+1 ≤ 0, i = 1, . . . , n(k) − 1(18) vki ∈ R, i = 1, . . . , n(k)(19) 4.2 Stage 2: Route Improvement Heuristic The obtained initial solution C is further improved by an ejection chain heuristic. We implemented three neighborhood search operators for the ejection chain procedure: single point insertion, tail exchange, and depot exchange operator. In the single point insertion, a request is selected from a sequence and is inserted into another one. The tail exchange and depot exchange operator perform a swap on the tails and on the start depots of two sequences, respectively. We control the neighborhood search for a specific neighborhood operator by an ejection chain procedure (refer, e.g., to Pesch and Glover (1997)). 5. CONCLUSION The paper at hand addresses the scheduling of container movements between customers and terminals and the repositioning of empty containers. We model this truck scheduling problem as full-truckload pickup-and-delivery problem and develop a two-stage heuristic solution approach. We conducted a first computational study and preliminary computational results indicate that our two-stage heuristic is – in comparison to the window partitioning approach of Zhang et al. (2010) – indifferent to changes in the parameter settings and outperforms the window partitioning method in terms of the solution quality. REFERENCES Asbach, L., Dorndorf, U., and Pesch, E. (2009). Analysis, modeling and solution of the concrete delivery problem. European Journal of Operational Research, 193, 820– 835. Battiti, R. and Tecchiolli, G. (1994). The reactive tabu search. ORSA Journal on Computing, 6, 126–140. 32