Download - 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
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.
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
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.
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)
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.
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
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.
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):
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
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:
)( 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).
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.