IEOR 250 Final Paper - Final Version

13
IEOR 250 Final Paper Model Extensions for The Pickup and Delivery Problem with Time Windows by Minchao Lin December 2014

Transcript of IEOR 250 Final Paper - Final Version

Page 1: IEOR 250 Final Paper - Final Version

IEOR 250 Final Paper

Model Extensions for

The Pickup and Delivery Problem with Time Windows

by

Minchao Lin

December 2014

Page 2: IEOR 250 Final Paper - Final Version

Abstract

The pickup and delivery problem with time windows (PDPTW) is a variant of the vehicle

routing problem (VRP) where a number of transportation requests are served within the time

windows. In the PDPTW, each request consists of a pickup location, a corresponding delivery

location, and the demand to be transported between these two locations. Depending on the

scenarios, the objective functions can be to minimize system costs or to minimize the number of

vehicles under vehicle capacity, time windows, and precedence constraints.

In this paper, formulation for PDPTW with a single central depot is presented first, then an

extension with multiple depots for each vehicle is further explored. With the constructed models,

different variations in constraints and objectives are presented in order to incorporate more

details and account for various situations. At the end of this paper, related solution methods

including exact solution approaches and heuristics are briefly discussed.

Page 3: IEOR 250 Final Paper - Final Version

1 Introduction

In classic vehicle routing problem (VRP), a set of customers with known demands is to be

serviced by a fleet of vehicles from a central depot. Vehicles deliver the goods from the depot to

customers and end their routes at the depot. Such problem is a pure delivery problem. The pickup

and delivery problem with time windows (PDPTW) involves vehicle routing with mixed pickup

and delivery. In the PDPTW, each request consists of a pickup location, a corresponding delivery

location, and the demand to be transported between these two locations. Two time windows are

assigned to each request: a pickup time window that specifies the time interval to pick up the

goods and a delivery time window that defines the time interval to drop off the goods. Time

windows are further classified as hard time windows and soft time windows. Hard time windows

do not allow the vehicle to initiate the service if arriving after the end of the time interval. In this

case, the vehicle is allowed to arrive early but needs to wait until the beginning of the following

time window to start the service. On the other hand, soft time windows can be violated at a cost

which is imposed upon the early and late arrival with a certain time range before and after the

assigned time window, beyond that range the vehicle is not allowed to begin its service. PDPTW

also involves several other sets of constraints which require visiting each pickup and delivery

location exactly once, not exceeding the vehicle capacity, coupling the pickup and corresponding

delivery locations on the same vehicle routes and imposing visit precedence among each pickup

and its associated drop-off location (Desaulniers et al. 2002).

This paper is organized as follows. Section 2 provides the mathematical model of PDPTW with a

central origin depot and a central destination depot. Section 3 extends the previous model to

entail multiple origin and destination depots for each vehicle. In Section 4, additional constraints

and alternative objectives that consider possible real life scenarios are incorporated into the

Page 4: IEOR 250 Final Paper - Final Version

models. Finally, the main solution methods and heuristics developed to solve PDPTW are briefly

discussed in Section 5.

2 Problem Formulation - Single Depot

The following model is based on the PDPTW in Ropke and Cordeau (2009) for its similarity.

The notations and some constraints are imposed in ways other than the original formulation in

the literature for convenient comparison with the extension of model from single depot to

multiple depots presented in the next section. In addition, rather than assuming that all vehicles

have the same capacity, same travel time and same routing cost for each arc as in the literature,

the following formulation incorporates variations in these three parameters among vehicles.

2.1 Notation

Let n denote the number of requests to satisfy. For each request, identify two nodes, i and n + i,

which represents the pickup location and delivery location for the corresponding request

respectively. We define the PDPTW on a directed graph G = ( N, A) with node set N = {0, …, 2n

+ 1} and arc set A. Nodes 0 and 2n + 1 represent the origin and destination depots. We then

define pickup node set P = {1, … , n} and delivery node set D = {n + 1, …, 2n}. Thus,

N = P ∪ D. Note that the nodes in the node set represent requests rather than geographic

locations, which means that different nodes may share common pickup or delivery locations.

Each request i ∈ N is also associated with a load qi required to be transported from i to n + i and

a service time si. Note that qi = -qn+i , Pi and that q0 = q2n+1 = 0 and s0 = s2n+1 = 0 at the

origin and destination depots respectively.

Page 5: IEOR 250 Final Paper - Final Version

Let K denote the set of vehicles. We assume that vehicle k ∈ K has capacity Ck, and its travel

time and routing cost between nodes i, j ∈ N are tijk and cijk. respectively. Next, let [ai, bi] denote

the pickup time window for customer i and let [an+i, bn+i] denote the corresponding delivery time

window. Note that we can have [a0, b0] and [a2n+1, b2n+1] denote the earliest and latest times

respectively for the vehicle to depart from and arrive back at its depot.

2.2 PDPTW formulation

Let xijk be 1 if vehicle k travels directly from node i to node j, 0 otherwise, (i, j) ∈ A, k ∈ K.

Let Tik be the time at which vehicle k begins service at node i. i ∈ N, k ∈ K.

Let Qik be the load of vehicle k after the service at node i, i ∈ N, k ∈ K.

The formulation is as follows:

Min ijk

Kk Ni Nj

ijk xc

(1)

subject to

1 Kk Nj

ijkx Pi (2)

Nj

kinj

Nj

ijk xx 0,, KkPi , (3)

10 Nj

jkx Kk (4)

1,12,

Ni

knix Kk (5)

Ni

jik

Ni

ijk xx 0 j 𝑃 ∪ 𝐷, Kk (6)

Page 6: IEOR 250 Final Paper - Final Version

kinkiniiik TtsT ,,, KkPi , (7)

jkijkiikijk TtsTx )( KkNjNi ,, (8)

iiki bTa KkNi , (9)

jkjikijk QqQx )( KkNjNi ,, (10)

kiki CQq KkPi , (11)

ikkin qCQ ,0 KkPi , (12)

0,120 knk QQ Kk (13)

ijkx {0, 1} KkNjNi ,, (14)

0ikT KkNi , (15)

0ikQ KkNi , (16)

The objective function (1) minimizes the total routing cost. Constraint (2) ensures that each

request is served exactly once. Constraint (3) ensures that the pickups are delivered by the same

vehicle.

Constraints (4) to (6) are route connectivity constraints. Constraints (4) and (5) ensure that each

vehicle starts at its origin depot and ends at its destination depot. Constraint (6) ensures that for

each node between the start and end node, the vehicle must enters and leaves that node.

Constraint (7) is the precedence constraint which guarantees pickup before delivery.

Page 7: IEOR 250 Final Paper - Final Version

Constraints (8) and (9) are time constraints. Constraint (8) ensures the consistency of time so

that if the vehicle goes from i to j, the time to begin service at j must be later than the time to

begin service at i plus the associated service time and the travel time from i to j. Constraint (9) is

the time window constraint.

Constraints (10) to (13) are capacity constraints. Constraint (10) ensures the consistency of

vehicle loads in all routes. Constraints (11) and (12) guarantee sufficient vehicle capacity for the

goods at the pickup and the corresponding delivery nodes. Constraint (13) imposes the initial and

final vehicle load.

Constraints (14) to (16) imposes binary and nonnegative requirements on the variables.

For a large area, it is possible that there are more than one depot to store the vehicles in order to

improve the pickup and delivery service level. Thus it is more realistic if the model could take

into account the situation when each vehicle has its own origin and destination depot. In the next

section, we will extend the previous model to incorporate multiple depots into the formulation.

3 Problem Formulation - Multiple Depots

In this section, some adjustments in notations are made to the previous model in order to

accommodate the change of depots from single to multiple. The complete set of formulation will

not be listed as in the previous section since minor adjustments are made to the formulation

while the majority remain the same. Instead, change in each constraint will be specified and

explained.

3.1 Notation

Page 8: IEOR 250 Final Paper - Final Version

Nodes 0 and 2n + 1 will not represent the central origin and destination depots in this model.

Instead, to distinguish the origin and destination depots for each vehicle, let nodes ok and dk

denote the origin and destination nodes for vehicle k respectively. In this model, the set N =

{1, …, 2n}. For each vehicle the set of nodes it can be routed to is represented as N ∪ {ok, dk},

which means the range where NjNi , will be replaced by ji, N ∪ {ok, dk}. The other

notations remain the same.

3.2 Updates for PDPTW formulation

Same three types of variables are used, which are xijk, Tik, and Qik. We will assume the same

objective. The following are the updates for the objective and constraints in the previous

formulation:

Min ijk

Kk doNi doNj

ijk xckk kk

},{ },{

(1)

1}{

Kk dNj

ijk

k

x Pi (2)

1}{

k

k

dPj

jkox Kk (4)

1}{

,, k

k

oDi

kdix Kk (5)

}{}{

0kk dNi

jik

oNi

ijk xx j 𝑃 ∪ 𝐷, Kk (6)

Note that the formulas have not been changed in the above updates, instead, the available range

for the variables have been updated to incorporate the specific origin and destination depots for

each vehicle.

Page 9: IEOR 250 Final Paper - Final Version

4 Variants of PDPTW

In this section, multiple variants of PDPTW with either single depot or multiple depots are

presented. These variants account for various details added to the original problem as shown in

the change of objective or additional constraints.

4.1 Dependent Routing Cost on Vehicle Loads

The vehicle departs from the origin depot with an empty container and starts to load the

container at the first pickup node. At the end of the route, the vehicle departs from the last

delivery node and arrives at the destination depot with an empty container again. Between the

start and end nodes, the vehicle load is not constant on each arc of its route. Thus, it is reasonable

to include the effect of changing vehicle load in the routing cost. Here we will add a penalty

function )( ikQ to the previous objective. Note that ikQ is the load of vehicle k after the service

at node i. The update to the formulation in section 3 is as follows:

Min ijk

Kk doNi doNj

ijkik xcQkk kk

},{ },{

)( (1)

The rest of the formulation stays the same.

4.2 Driving Regulation Constraints

For each country, different regulations on driving hours are imposed. In the United States, the

Federal Motor Carrier Safety Administration (FMCSA) published the hours of service rule for

truck drivers to be 11-hour daily driving limit and 14-hour work day limit. Based on the

formulation in section 3, we let T denotes the driving limit for a feasible route. An additional

constraint is added to the original formulation (* denotes a new constraint):

Page 10: IEOR 250 Final Paper - Final Version

TTT kokd kk ,, Kk (17)*

The problem of combined vehicle routing and break scheduling is defined as the problem of

finding vehicle routes to service a set of transportation requests such that a cost criterion is

minimized and legal rules on driving and working hours are observed (Meyer et al, 2010).

Savelsbergh and Sol (1998) proposed a model for PDPTW where lunch breaks and night breaks

must be taken within fixed time intervals. Meyer (2011) and Goel (2009) presented the model

and solution methods for the vehicle routing problem with time windows that considers the times

required for driving periods, breaks and rest periods under the regulations of the European

Union.

4.3 Multiple Types of Requests

Because for a multi-commodity supply chain problem, one vehicle might not be able to service

all requests among which some special requirements such as a freezer compartment or an

insulated cabinet is imposed. In addition, there might be orders that cannot be fulfilled by all

vehicles and must be given up. Under this scenario, each vehicle k that satisfy the requirements

for the pickup and delivery nodes has a specific node set Nk = Pk ∪ Dk, where Nk , Pk , and Dk

are subsets of N, P, and D. Based on the formulation in section 3, updates are made to the

variable ranges for each constraint where Pi in constraints (3), (7), (11), and (12) are

replaced by kPi , j 𝑃 ∪ 𝐷 in constraint (6) is replaced by j Nk , NjNi , in

constraints (8), (10) and (14) are replaced by ji, Nk ∪ {ok, dk} and Ni in constraints (9),

(15), (16) are replaced by i Nk ∪ {ok, dk}. For the orders that cannot be served by available

vehicles, we denote an additional binary variable li and let it be 1 if the request i, Pi is lost, 0

Page 11: IEOR 250 Final Paper - Final Version

otherwise. Thus, updates to the formulation in section 3 is shown below (* denotes a new

constraint):

1}{

Kk dNj

iijk

k

lx Pi (2)

il {0, 1} ji, Nk ∪ {ok, dk}, Kk (18)*

Note that a penalty function for the number of lost requests can also be added to the objective.

Define )( il as this penalty function, the objective is updated to be:

Min )()(},{ },{

Pi

iijk

Kk doNi doNj

ijkik lxcQkk kk

(1)

4.4 Soft Time Windows

The previous formulations are constructed under the assumption that the vehicles are forced to

arrive within a hard time window. However, in some circumstances, soft time window can allow

the distribution of vehicle to arrive outside the time window with a cost. Such circumstances can

occur when the delivery node is not represented by an independent customer but a service station

to which a large amount of goods is to be delivered. The following adjustments of time window

constraints are adapted from the time penalty cost in Li and Wang (2013).

Based on the formulation in section 3, we change definition of time window [ai, bi] for customer

i, i Nk ∪ {ok, dk} to be soft time window [ai, bi] during which the vehicle is allowed to begin

its service. The time range [mi, ni] within [ai, bi] is defined to be the range where the vehicle

arrives with no extra cost while service starts before mi or after ni will induce penalty costs. To

summarize, the penalty cost function on vehicle arriving time is defined as follows:

Page 12: IEOR 250 Final Paper - Final Version

)( ikT )( iki Tm , iiki mTa

0 iiki nTm

)( iik nT , iiki bTn

The above penalty cost function is incorporated into the objective which aims at minimizing the

overall cost. The objective is updated to be:

Min

Kk doNi

ik

Pi

iijk

Kk doNi doNj

ijkik

kkkk kk

TlxcQ},{},{ },{

)()()( (1)

5 Solution Methods Introduction

PDPTW arises in a variety of practical situations such as catering delivery between restaurants

and individual customers or fresh grocery delivery between wholesalers and supermarkets. The

PDPTW is a generalization of the vehicle routing problem with time windows (VRPTW). Since

the VRPTW is NP-hard, the PDPTW is also NP-hard (Baldacci, Bartolini, and Mingozzi 2011).

Because of the difficulty of obtaining the optimal solutions for the problem within reasonable

computation time, the development of solution methods has focused on heuristics over the last

few decades. Recent methods include exact algorithms branch-and-price and branch-and-cut

(Ropke and Cordeau 2009) and heuristics such as tabu search heuristic, simulated annealing (SA)

heuristic, variable neighborhood search heuristic, and large neighborhood search heuristic. The

success of these heuristics is dependent on the design of clever search mechanisms. (Golden,

Raghavan, and Wasil 2008).

Page 13: IEOR 250 Final Paper - Final Version

6 Conclusion

In this paper, we have modeled the pickup and delivery problem with time windows (PDPTW)

with single depot and multiple depots. Multiple extensions of the models are included. There is

also room for developing more realistic models such as those considering stochastic and dynamic

aspects. With excellent heuristics developed for the static case, more emphasis will be put on the

dynamic version of the problem in the future (Cordeau and Laporte 2007).

References

Baldacci, Roberto, Enrico Bartolini, and Aristide Mingozzi. 2011. “An Exact Algorithm for the

Pickup and Delivery Problem with Time Windows.” Operations Research 59 (2): 414–

26. doi:10.1287/opre.1100.0881.

Cordeau, Jean-François, and Gilbert Laporte. 2007. “The Dial-a-Ride Problem: Models and

Algorithms.” Annals of Operations Research 153 (1): 29–46. doi:10.1007/s10479-007-

0170-8.

Desaulniers, Guy, Jacques Desrosiers, Andreas Erdmann, Marius M. Solomon, and François

Soumis. 2002. “VRP with Pickup and Delivery.” The Vehicle Routing Problem 9: 225–

42.

Goel, Asvin. 2009. “Vehicle Scheduling and Routing with Drivers’ Working Hours.”

Transportation Science 43 (1): 17–26. doi:10.1287/trsc.1070.0226.

Golden, Bruce L., S. Raghavan, and Edward A. Wasil. 2008. The Vehicle Routing Problem

Latest Advances and New Challenges. New York; London: Springer.

http://public.eblib.com/choice/publicfullrecord.aspx?p=367562.

Meyer, Christoph Manuel. 2011. Vehicle Routing under Consideration of Driving and Working

Hours a Distributed Decision Making Perspective. Wiesbaden: Gabler Verlag.

http://public.eblib.com/choice/publicfullrecord.aspx?p=752904.

Meyer CM, Kopfer H, Kok AL, Schuten JMJ (2010) Distributed decision making in combined

vehicle routing and break scheduling. In: Proceedings of Log Dynamics International

Conference 2009, Springer, Berlin, Heidelberg, New York

Ropke, Stefan, and Jean-François Cordeau. 2009. “Branch and Cut and Price for the Pickup and

Delivery Problem with Time Windows.” Transportation Science 43 (3): 267–86.

Savelsbergh, M. W. P., M. Sol. 1998. DRIVE: Dynamic routing of independent vehicles. Oper.

Res. 46 474–490.