GENERALIZED DISAGGREGATION ALGORITHM FOR THE
VEHICLE ROUTING PROBLEM WITH TIME WINDOWS AND
MULTIPLE ROUTES
Rita Macedo
1
, Sa
¨
ıd Hanafi
1
, Franc¸ois Clautiaux
2
, Cl
´
audio Alves
3
and J. M. Val
´
erio de Carvalho
3
1
LAMIH-SIADE, UMR 8530, Universit
´
e de Valenciennes et du Hainaut-Cambr
´
esis
Le Mont Houy, 59313 Valenciennes Cedex 9, France
2
Universit
´
e des Sciences et Technologies de Lille, LIFL UMR CNRS 8022, INRIA B
ˆ
atiment INRIA
Parc de la Haute Borne, 59655 Villeneuve dAscq, France
3
Centro de Investigac¸
˜
ao Algoritmi da Universidade do Minho, Escola de Engenharia, Universidade do Minho
4710-057 Braga, Portugal
Keywords:
Integer programming, Combinatorial optimization, Vehicle Routing, Network flow model.
Abstract:
In this paper, we address the VRP with multiple routes and time windows. For this variant of the VRP, there is
a time interval within which every customer must be visited. In addition, every vehicle is allowed to perform
more than one route within the same planning period. Here, we propose a general disaggregation algorithm
that improves the exact approach described in (Macedo et al., 2011). We describe a novel rounding rule
and a new node disaggregation scheme based on different discretization units. We describe a new integer
programming model for the problem, which can be used, with a slight modification, to exactly assess whether
a given solution is feasible or not. Finally, we report some computational experiments performed on a set of
instances from the literature.
1 INTRODUCTION
The vehicle routing problem (VRP) is a combinato-
rial optimization problem that was first addressed in
(Dantzig and Ramser, 1959), as a generalization of
the traveling salesman problem. It generally consists
of scheduling vehicles to visit and deliver goods to a
set of customers. Its application area is very wide, and
there are many variants of this problem in the litera-
ture. General surveys on the VRP and its variants are
provided in (Toth and Vigo, 2002; Cordeau et al., ;
Laporte, 2009). According to (Baldacci et al., 2010),
the most effective exact approaches currently avail-
able for the classical version of the VRP are the ones
proposed in (Lysgaard et al., 2004; Fukasawa et al.,
2006; Baldacci et al., 2008).
We address the VRP with multiple routes and time
windows (MVRPTW). For this variant of the VRP,
there is a time interval within which every customer
must be visited. In addition, every vehicle is allowed
to perform more than one route within the same plan-
ning period. There are two different exact approaches
for this variant described in the literature. In (Azi
et al., 2010), the authors propose a branch-and-price
algorithm for this problem and in (Macedo et al.,
2011), a network flow model embedded in an itera-
tive algorithm is described.
In this paper, we improve the algorithm proposed
in (Macedo et al., 2011). We consider a different
rounding rule and a different disaggregation of nodes.
We also generalize the previous approach and con-
sider different discretization units. Finally, we de-
scribe a new integer programming model for this
problem, which can be used, with a slight modifica-
tion, to exactly assess whether a given solution is fea-
sible or not.
1.1 Problem Definition
The problem can be defined in a complete graph
G = (V, A), being V its set of nodes and A = {(i, j) :
i, j V } its set of arcs. We consider that there is an
homogenous fleet of k capacitated vehicles that begin
and end their routes in a single depot o. Each vehi-
cle i K = {1, . . . , k} has a capacity of Q units and
is allowed to perform more than one single route dur-
305
Macedo R., Hanafi S., Clautiaux F., Alves C. and M. Valério de Carvalho J..
GENERALIZED DISAGGREGATION ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS AND MULTIPLE ROUTES.
DOI: 10.5220/0003755003050312
In Proceedings of the 1st International Conference on Operations Research and Enterprise Systems (ICORES-2012), pages 305-312
ISBN: 978-989-8425-97-3
Copyright
c
2012 SCITEPRESS (Science and Technology Publications, Lda.)
ing the planning period. This means that a vehicle
can perform a route, reload at the depot and perform
another route, until the end of the planning period,
which has a duration equal to W . The sequence of
routes and waiting times allocated to one vehicle is
defined as its workday. The duration of one work-
day is, therefore, also equal to W , and the interval
[0,W ] can be seen as the depot’s opening time. This
means that vehicles can start loading from instant 0
of their workday, and that they can not arrive at the
depot after instant W. Furthermore, the maximum du-
ration between the beginning of a route and the mo-
ment that the vehicle starts to service the last customer
of that route can not be greater than t
max
. This vari-
ant specially applies to situations where vehicles per-
form short trips and are, therefore, available to per-
form more than one route per planning period. This
is, for example, the case of the delivery or collection
of perishable goods, which can not be subjected to
long trips.
For every customer i N = {1, . . . , n}, we define
q
i
, g
i
, s
i
and [a
i
, b
i
] as its demand, revenue, service
time and time window, respectively. For every arc
(i, j) A, with i, j V = N {o}, there is an asso-
ciated distance d
i j
and a traveling time t
i j
. We de-
fine N
r
N as the subset of customers visited in route
r R, R being the set of all feasible routes. Route
r is defined by a sequence of all customers in N
r
. It
is considered to be feasible if
iN
r
q
i
Q and if all
customers are visited within their time windows. For
every route r R, there is a setup time defined by
β
iN
r
s
i
, with β R
+
. It represents the amount of
time to be spent by the vehicle, at the depot, before it
begins the route. It is not mandatory to visit all cus-
tomers, but the number of visited customers must be
maximized.
1.2 Integer Programming Models
In what concerns integer programming models for the
MVPTW, we briefly describe three models from the
literature, and propose a new one.
1.2.1 A Compact Model
In (Azi et al., 2010), the authors describe a compact
model for the MRPTW. Let x
r
i j
and y
r
i
be the binary
variables that determine if arc (i, j) and customer i
belong to route r R, respectively. Variable t
r
i
repre-
sents the instant at which customer i begins to be ser-
viced, in route r. The beginning and ending instants
of r are represented by t
r
0
and t
0r
o
, respectively. The
constant α is a parameter that must be large enough in
order to ensure that the number of visited customers
is maximized. Let M be a sufficiently large number.
Finally, binary variable z
rs
determine whether routes r
and s are consecutively performed by a same vehicle
(r < s).
min
rR
(i, j)A
d
i j
x
r
i j
α
rR
iN
g
i
y
r
i
(1)
s.t.
jV
x
r
i j
= y
r
i
, i N, r R, (2)
rR
y
r
i
1, i N, (3)
iV
x
r
ih
jV
x
r
h j
= 0, h N, r R, (4)
iN
x
r
oi
= 1, r R, (5)
iN
x
r
io
= 1, r R, (6)
iN
q
i
y
r
i
Q, r R, (7)
t
r
i
+ s
i
+t
i j
M(1 x
r
i j
) t
r
j
, (i, j) A,
r R, (8)
a
i
y
r
i
t
r
i
b
i
y
r
i
, i N, r R, (9)
t
r
o
β
iN
s
i
y
r
i
, r R, (10)
t
r
i
t
r
o
+t
max
, i N, r R, (11)
t
s
o
+ M(1 z
rs
) t
0r
o
+ β
iN
s
i
y
s
i
,
r, s R, r < s, (12)
rR
sR|r<s
z
rs
|R| k, (13)
x
r
i j
{0, 1}, (i, j) A, r R, (14)
y
r
i
{0, 1}, i N, r R, (15)
z
rs
{0, 1}, r, s R, r < s, (16)
t
r
i
0, i N, r R, (17)
t
r
o
,t
0r
o
0, r R. (18)
The objective function (1) translates the objective of
maximizing the customers’ revenues, whilst minimiz-
ing the traveled distances. Customer i is visited at
most once (3) by one vehicle (2). Constraints (4) are
flow conservation constraints. Every route r begins
and ends at the depot (5)-(6) and the sum of the de-
mands of all the customers in N
r
can not exceed the
vehicle’s capacity Q (7). All time constraints, includ-
ing traveling times (8), time windows (9), setup times
(10), (12) and maximum route durations (11), must
be respected. Finally, constraint (13) ensures that the
number of workdays does not exceed the number of
available vehicles k.
ICORES 2012 - 1st International Conference on Operations Research and Enterprise Systems
306
1.2.2 A New MIP Model
We define a new MIP model for this problem. The
set of all feasible routes R is assumed to be known.
The duration of route r is represented by σ
r
. Let µ
k
r
,
k K, r R, be the binary variable that defines
whether route r is performed by vehicle k or not, and
t
r
be the beginning instant of route r. Variable ε
rr
0
de-
fines if route r
0
is performed after route r. Let M be
a sufficiently large number. For each feasible route
r R, there is a time interval T
beg
r
= [T
r
, T
+
r
] that
represents the instants from which route r can begin,
in order to be feasible and to have the minimum pos-
sible duration (see section 2.2). The model states as
follows.
min
rR
kK
d
r
α
iN
r
g
i
!
µ
k
r
(19)
s.t.
m
k=1
µ
k
r
1, r R (20)
t
r
+ σ
r
t
r
0
+ M(2 µ
k
r
0
µ
k
r
) + M(1 ε
rr
0
),
r, r
0
R, (21)
t
r
0
+ σ
r
0
t
r
+ M(2 µ
k
r
0
µ
k
r
) + M(1 ε
r
0
r
),
r, r
0
R, (22)
ε
rr
0
+ ε
r
0
r
= 1, r, r
0
R, (23)
µ
k
r
{0, 1}, r R, k K, (24)
ε
rr
0
{0, 1}, r, r
0
R, (25)
t
r
[T
r
, T
+
r
]. (26)
The objective function (19) is equivalent to the one
defined in (1)-(18). Constraints (20) ensure that any
route is allocated to at most one vehicle. In order to
have a feasible solution, for every route r performed
by one vehicle, the interval ]t
r
,t
r
+ σ
r
[ must be dis-
joint of any other interval ]t
r
0
,t
r
0
+ σ
r
0
[ related to any
other route r
0
performed by that same vehicle. Hence,
constraints (21)-(22) ensure that ]t
r
,t
r
+ σ
r
[]t
r
0
,t
r
0
+
σ
r
0
[=
/
0.
1.2.3 A Column Generation Model
In (Azi et al., 2010), the authors propose a branch-
and-price algorithm to solve exactly the MVRPTW.
Each column of the master problem represents one
possible workday. The set of all feasible workdays is
represented by . For every workday w , d
w
and
g
w
represent its cost and revenue, respectively. Binary
variable x
w
, w define whether or not workday w
belongs to the solution and constant a
iw
is equal to
1 if customer i is visited in workday w. The master
problem states as follows.
min
w
(d
w
αg
w
)x
w
(27)
s.t.
w
a
iw
x
w
1, i N, (28)
w
x
w
k, (29)
x
w
{0, 1}, w . (30)
The pricing subproblems are elementary shortest path
problems with resource constraints, which can be de-
fined in a graph whose nodes correspond to feasible
routes and whose arcs define the sequencing of those
routes. They use the algorithm described in (Feillet
et al., 2004) to solve it.
1.2.4 Network Flow Model
In (Macedo et al., 2011), the authors propose
a pseudo-polynomial network flow model for the
MVRPTW, which can be described as follows. Let
U be the unit discretization of the continuous inter-
val [0,W ] (see section 2.2). We define a directed
graph Π = (, Ψ), with = {0,U, 2U, . . . ,W } as its
set of nodes and Ψ = {(u,v)
r
: 0 u < v W, u
T
beg
r
, r R}
S
{(u, v)
0
: u and v are consecutive
nodes of }
S
{(W, 0)} as its set of arcs. Each path
of this graph corresponds to a workday to be sched-
ule to one of the available vehicles. Each node of this
graph corresponds to one time instant of the planning
period. In the flow model, variables λ
r
uv
represent the
flow that goes through arc (u, v)
r
Ψ, and d
r
stands
for the the total cost of route r R. The total flow go-
ing through
equals z and represents the exact num-
ber of assigned vehicles, or equivalently, the number
of defined workdays in the solution. The model states
as follows.
min
(u,v)
r
Ψ
d
r
α
iN
r
g
i
!
λ
r
uv
(31)
s.t.
(u,v)
r
Ψ|iN
r
λ
r
uv
1, i N, (32)
(u,v)
r
Ψ
λ
r
uv
(v,y)
s
Ψ
λ
s
vy
=
z , if v = 0
0 , if v = U, . . . ,W U,
z , if v = W
(33)
z k, (34)
λ
r
uv
0 and integer, (u, v)
r
Ψ, (35)
z 0 and integer. (36)
The objective function (31) is equivalent to the ones of
the previous models. Constraints (32) ensure that any
GENERALIZED DISAGGREGATION ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME
WINDOWS AND MULTIPLE ROUTES
307
customer is visited at most once and constraints (33)
are flow conservation constraints. Finally, constraint
(34) ensures that the total flow going trough the graph
does not exceed k, which means that no more than k
workdays are defined and, therefore no more than k
vehicles are used.
2 IMPROVED ITERATIVE
ALGORITHM
An iterative algorithm based on model (31)-(36) has
been proposed in (Macedo et al., 2011). In this pa-
per, we investigate several improvements of this con-
vergent iterative algorithm. In (Macedo et al., 2011)
the discretization unit is constant (i.e. U = 1). We
propose a generalization by considering different dis-
cretization units for the set of nodes . We also con-
sider a different rounding rule and a different disag-
gregation of nodes, and propose a new integer model
to assess exactly whether a given solution is feasible
or not. In this section, we describe these different
steps of the global algorithm.
2.1 Rounding Procedure and Possible
Infeasibilities
In (Macedo et al., 2011), the rounding strategy to
transform values u and v of every arc (u, v)
r
Ψ into
the discrete values belonging to the set of vertices
= {0, . . . ,W } of graph Π consisted of considering
u = due and v = bvc. This rounding strategy leads to
a relaxation of the problem and, therefore, its solution
represents a lower bound, which means that it may
be infeasible. In this case, infeasibities may occur
whenever there are two routes r
1
and r
2
in the solu-
tion, represented by arcs (u
1
, v
1
)
r
1
and (u
2
, v
2
)
r
2
, such
that (considering v
1
u
2
, without loss of generality)
v
1
= u
2
or v
1
= u
2
1.
For our new algorithm, we use a different round-
ing strategy. We consider every value u as u =
u
U
×
U. This rounding procedure also leads to a relax-
ation of the problem, but it only eventually originates
one of the previous infeasibilities, for the cases where
v
1
= u
2
.
For every route r R, the arcs to consider are
arcs (u, v)
r
such that u (T
beg
r
T
)
S
nj
T
r
U
k
×U
o
and v =
b
u + σ
r
c
. Figure 1 illustrates the arcs to
be considered for route r. In this case, given that
p
1
< T
r
< p
2
and p
4
< T
+
r
< p
5
(and considering
that bp
1
+ σ
r
c = p
6
), the arcs that represent route r
would be (p
1
, p
6
)
r
, (p
2
, p
7
)
r
, (p
3
, p
8
)
r
and (p
4
, p
9
)
r
.
2.2 Variable Discretization
For each feasible route r R, there is a time in-
terval T
beg
r
= [T
r
, T
+
r
] that represents the instants
at which route r can begin, in order to be feasible
and to have the minimum possible duration. Val-
ues T
r
and T
+
r
,r R, can be recursively calcu-
lated (Macedo et al., 2011). Route r beginning
at instant t is represented by r
t
. As explained
in (Macedo et al., 2011), route r
t
such that t 6∈
T
beg
r
is either infeasible or it is dominated by route
r
T
r
. The number of considered routes is there-
fore equal to
rR
(T
+
r
(T
+
r
mod U))(T
r
(T
r
mod U))
U
+
1 . In (Macedo et al., 2011), U = 1. We now gener-
alize this concept and consider that U can take differ-
ent values. It is clear that considering U = u
1
rather
than U = u
2
, with u
1
> u
2
, implies having a smaller
model, with less variables and constraints. On the
other hand, given that with U = u
1
we have a coarser
rounding, the number of iterations of the algorithm
may be larger, as there is a higher probability of ob-
taining an infeasible solution. In section 3, we test,
for each instance, different values of U.
2.3 New Disaggregation Method
When the model finds a solution that is infeasible,
all nodes that are simultaneously the beginning and
the end of at least two arcs in the solution, are dis-
aggregated. To disaggregate a node p that belongs
to the original set of nodes
0
and has not yet been
disaggregated means to consider additional nodes be-
tween p and p + U. The number of new nodes to
add depends on the chosen unit ε. Disaggregating
point p implies adding the (ε 1) equidistant nodes
p +
U
ε
, . . . , p +U
U
ε

to the graph. Whenever
there is such a node, p
, that does not belong to
0
or has already been disaggregated in a previous itera-
tion, the node to be disaggregated is the highest node
p
0
0
, such that p
0
p
. Let ε
be the distance be-
tween any two consecutive nodes in [p
0
, p
0
+U]. The
set of (aε
1) equidistant nodes to be added to the
original graph is
p
0
+
U
aε
, . . . , p
0
+U
U
aε

.
When nodes are added to the graph, there are ad-
ditional arcs to be considered. Figure 2 illustrates the
disaggregation of node p, and the modifications that
occur in what concerns arcs representing routes r
1
and
r
2
.
2.4 Exact Feasibility Model
A solution given by model (31)-(36) is represented by
a set of arcs. Given a set of arcs, it may be possible to
find different solutions, as illustrated in figure (3).
ICORES 2012 - 1st International Conference on Operations Research and Enterprise Systems
308
... ...
p
1
p
2
p
3
p
4
p
5
p
6
p
7
p
8
p
9
,
Figure 1: Arcs representing route r.
... ...
p
1
p
2
p
3
p
4
p
5
p
6
...
...
p p + U
p p + U
p - Up - U
p - U
Figure 2: Disaggregation of node p, with ε = 7.
p
1
p
2
p
3
p
4
0 W
r s
q
t
Figure 3: Arcs in a solution given by model (31)-(36).
For this solution, there are four routes to be performed
by two vehicles. But we can have a vehicle k
1
per-
forming route r
p
1
and then route s
p
3
and a vehicle v
2
performing route t
p
2
followed by route q
p
4
, or we can
allocate routes r
p
1
and q
p
4
to vehicle v
1
and routes
t
p
2
and s
p
3
to vehicle v
2
. Although the first solution
is guaranteed to be feasible, the second solution may
not be, as node p
3
is simultaneously the beginning
and ending node of two routes performed by the same
vehicle.
We use model (19)-(26), with a slight modifica-
tion, to assesses exactly whether it is possible or not
to build a feasible solution with the arcs of the solu-
tion, instead of only checking if one possible solution
is feasible or not.
Let R
0
R be the set of routes associated to
the arcs that compose the optimal solution given by
model (31)-(36). The model states as follows.
GENERALIZED DISAGGREGATION ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME
WINDOWS AND MULTIPLE ROUTES
309
min C (37)
s.t.
m
k=1
µ
k
r
= 1, r R
0
, (38)
t
r
+ σ
r
t
r
0
+ M(2 µ
k
r
0
µ
k
r
) + M(1 ε
rr
0
),
r, r
0
R
0
, (39)
t
r
0
+ σ
r
0
t
r
+ M(2 µ
k
r
0
µ
k
r
) + M(1 ε
r
0
r
),
r, r
0
R
0
, (40)
ε
rr
0
+ ε
r
0
r
= 1, r, r
0
R
0
, (41)
µ
k
r
{0, 1}, r R
0
, k K, (42)
ε
rr
0
{0, 1}, r, r
0
R
0
, (43)
t
r
[T
r
, T
+
r
], r R
0
. (44)
The differences between model (19)-(26) and (37)-
(44) rely on constraints (38). As an input, there are
only the routes that are present in the solution given
by model (31)-(36). With this model, we want to as-
sess whether it is possible or not to build a feasible
solution with those chosen routes. That is the reason
for the equality in the constraints, as opposed to the
inequality in (19). Moreover, the objective function
(37) is not relevant, and thus we can just set it to a
constant value C. The solution found by model (31)-
(36) is feasible if and only if model (37)-(44) finds a
feasible solution for set R
0
.
2.5 Generalized Algorithm
We propose a generalization of the method described
in (Macedo et al., 2011), with some further modifica-
tions. Algorithm 1) summarizes this method.
All feasible routes are implicitly generated. Graph
= (, Ψ) is then built using the new rounding and
discretization rules described in sections 2.2 and 2.1.
We then apply all the arc reduction criteria defined in
(Macedo et al., 2011), in order to increase the model’s
efficiency. Model (31)-(36) is solved and its solution’s
feasibility is checked by solving the exact feasibility
model (37)-(44). Whenever there is an infeasibility,
we proceed to some local node disaggregations, as de-
scribed in section 2.3, and repeat the process.
3 COMPUTATIONAL RESULTS
To investigate the effects of considering different val-
ues for the discretization unit, we conducted a set of
computational experiments on benchmark instances
from the literature. The considered instances are the
same ones described in (Azi et al., 2010; Macedo
et al., 2011).
The algorithm was implemented in C++ and the
Algorithm 1: Iterative Disaggregation Algorithm.
Input: Instance I of the MVRPTW, U, ε and a
Output: Optimal solution x
Build Π = (, Ψ);
optimal=False;
while optimal=False do
Apply arc reduction;
Solve I with model (31)–(36), obtaining
solution x
0
;
Check if x
0
is feasible by solving model
(37)–(44);
if x
0
is feasible then
x
= x
0
, optimal=True
else
Apply disaggregation obtaining
Π
0
= (
0
, Ψ
0
);
Π = Π
0
;
network flow model was solved with ILOG CPLEX
12.2. The computational tests were run on a PC with
Intel Core i7, CPU with 2.00GHz and 4GB of RAM.
The cost of a route is considered to be equal
to its traveled distance. The used parameters, de-
fined in the previous sections, were set to k = 2,
α = 2max
(i, j)A
d
i j
+ 1, β = 0.2, g
i
= 1, i N, ε = 4
and a = 2.
Table 1 reports the computational results obtained
for some of these instances, and for some different
values of U within each of the instances. We consider
values of U smaller than the minimum duration of all
routes. Columns Inst, n and t
max
refer, respectively,
to the instance’s name, the number of customers and
the value of the maximum route duration. The num-
ber of different routes is represented by |R|, and the
percentage of visited customers and optimal solution
are represented by %Cust and z
. All of the values
previously described are equal for a same instance.
We then report, for each value of U, the number of
all routes, for all their beginning instances, |R
total
|,
the number of iterations of the algorithm, n
it
, and
the computational time, t, in seconds. The two last
columns, %|R
total
| and %t, report the percentage of
the values of |R
total
| and t when compared to the ones
obtained with U = 1.
When the value of U increases, the total number
of routes decreases in an approximate proportion. In
what concerns the computational times, this decrease
is even more expressive, except for some cases where
the number of iterations increases considerably.
All instances are solved within the first two iter-
ations when U = 1. For most of them, the problem
is even solved in the first one. This had been already
observed in (Macedo et al., 2011). When the value
ICORES 2012 - 1st International Conference on Operations Research and Enterprise Systems
310
Table 1: Computational results for different values of U .
Inst n t
max
|R| %Cust z
U |R
total
| n
it
t (s) %|R
total
| %t
RC201 25 75 92 100 988.20 1 6237 1 1.55 100.00% 100.00%
20 401 1 0.14 6.43% 9.03%
40 248 2 0.11 3.98% 7.10%
60 190 2 0.14 3.05% 9.03%
R204 25 75 922 100 579.75 1 325871 1 310.45 100.00% 100.00%
7 47163 1 4.64 14.47% 1.49%
14 23933 1 1.30 7.34% 0.42%
20 17045 1 1.16 5.23% 0.37%
C202 25 220 467 100 653.50 1 166767 1 754.30 100.00% 100.00%
7 24193 1 2.57 14.51% 0.34%
14 12300 1 0.84 7.38% 0.11%
20 8742 1 2.54 5.24% 0.34%
RC202 40 75 425 92.5 1458.09 1 67063 1 15.28 100.00% 100.00%
20 3734 5 10.72 5.57% 70.16%
40 2069 8 50.95 3.09% 333.44%
60 1498 8 42.28 2.23% 276.70%
R209 40 75 2330 100 935.95 1 284468 1 434.38 100.00% 100.00%
4 72855 3 125.88 25.61% 28.98%
7 42543 1 14.48 14.96% 3.33%
10 30604 5 68.04 10.76% 15.66%
C208 40 220 772 100 1072.22 1 258795 1 84.66 100.00% 100.00%
7 37556 1 4.22 14.51% 4.98%
14 19108 1 2.42 7.38% 2.86%
20 13609 1 1.18 3.38% 1.39%
RC207 25 100 4515 100 514.90 1 320345 1 65.30 100.00% 100.00%
20 20192 6 14.46 6.30% 22.14%
40 12326 6 13.31 3.85% 20.38%
60 9536 5 10.33 2.98% 15.82%
R202 25 100 2909 100 617.60 1 286897 1 50.98 100.00% 100.00%
7 43376 1 6.26 15.12% 12.28%
14 23102 1 3.28 8.05% 6.43%
20 17056 1 2.66 5.94% 5.22%
C207 25 250 1685 100 525.57 1 577576 1 79.39 100.00% 100.00%
7 83904 1 4.38 14.53% 5.52%
14 42847 1 2.54 7.42% 3.06%
20 30479 1 2.03 5.28% 2.33%
RC201 40 100 457 85 1157.65 1 21966 1 3.33 100.00% 100.00%
20 1542 4 1.61 7.02% 48.35%
40 997 5 1.91 4.54% 57.36%
60 818 6 4.01 3.72% 120.42%
RC205 40 100 2209 95 1195.51 1 134050 1 42.09 100.00% 100.00%
20 8786 3 3.60 6.55% 8.55%
40 5514 3 1.87 4.11% 4.44%
60 4400 3 2.09 3.28% 4.97%
C205 40 250 1153 100 921.37 1 137358 2 619.48 100.00% 100.00%
7 20518 2 4.42 14.94% 0.71%
14 10789 1 2.43 7.85% 0.39%
20 7952 1 1.85 5.79% 0.30%
GENERALIZED DISAGGREGATION ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME
WINDOWS AND MULTIPLE ROUTES
311
of U increases, the rounding becomes coarser. This
translates into a greater number of iterations for some
of the instances, although it is not always the case.
4 CONCLUSIONS
In this paper, we address a variant of the vehicle rout-
ing problem with time windows and multiple use of
vehicles. We propose an improvement of the algo-
rithm described in (Macedo et al., 2011). It mainly
consists of considering variable discretization units
for the time interval represented by the set of nodes
of the underlying graph. We also propose new round-
ing and disaggregation rules. This new algorithm was
tested with the set of instances proposed in (Azi et al.,
2010; Macedo et al., 2011). The results show consid-
erable improvements of the computational times for
most of the instances, when we increase the value of
the discretization unit.
REFERENCES
Azi, N., Gendreau, M., and Potvin, J.-Y. (2010). An ex-
act algorithm for a vehicle routing problem with time
windows and multiple use of vehicles. European Jour-
nal of Operational Research, 202(3):756 – 763.
Baldacci, R., Christofides, N., and Mingozzi, A. (2008).
An exact algorithm for the vehicle routing problem
based on the set partitioning formulation with addi-
tional cuts. Mathematical Programming, 115(2):351–
385.
Baldacci, R., Toth, P., and Vigo, D. (2010). Exact
algorithms for routing problems under vehicle ca-
pacity constraints. Annals of Operations Research,
175(1):213–245.
Cordeau, J.-F., Laporte, G., Savelsbergh, M., and Vigo, D.
Vehicle routing. In Barnhart, C. and Laporte, G., ed-
itors, Transportation, Handbooks in Operations Re-
search and Management Science, volume 14. Elsevier,
Amsterdam.
Dantzig, G. and Ramser, J. (1959). The truck dispatching
problem. Management Science, 6(1):80–91.
Feillet, D., Dejax, P., Gendreau, M., and Gueguen, C.
(2004). An exact algorithm for the elementary shortest
path problem with resource constraints: Application
to some vehicle routing problems. Networks, 44:216–
229.
Fukasawa, R., Longo, H., Lysgaard, J., de Arag
˜
ao, M. P.,
Reis, M., Uchoa, E., and Werneck, R. (2006). Ro-
bust branch-and-cut-and-price for the capacitated ve-
hicle routing problem. Mathematical Programming,
106(3):491–511.
Laporte, G. (2009). Fifty years of vehicle routing. Trans-
portation Science, 43(4):408–416.
Lysgaard, J., Letchford, A., and Eglese, R. (2004). A
new branch-and-cut algorithm for the capacitated ve-
hicle routing problem. Mathematical Programming,
100(2):423–445.
Macedo, R., Alves, C., Val
´
erio de Carvalho, J., Clautiaux,
F., and Hanafi, S. (2011). Solving the vehicle rout-
ing problem with time windows and multiple routes
exactly using a pseudo-polynomial model. European
Journal of Operational Research, 214(3):536 –545.
Toth, P. and Vigo, D. (2002). The Vehicle Routing Problem.
SIAM Monographs on Discrete Mathematics and Ap-
plications, Philadelphia.
ICORES 2012 - 1st International Conference on Operations Research and Enterprise Systems
312