A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle
Routing Problem with Time Windows
Mirko Cavecchia
1 a
, Thiago Alves de Queiroz
2 b
, Riccardo Lancellotti
3 c
, Giorgio Zucchi
4 d
and
Manuel Iori
1 e
1
Department of Sciences and Methods for Engineering, University of Modena and Reggio Emilia,
42122, Reggio Emilia, Italy
2
Institute of Mathematics and Technology, Federal University of Catal ˜ao, 75704-020, Catal ˜ao-GO, Brazil
3
Department of Engineering “Enzo Ferrari”, University of Modena and Reggio Emilia, 41125, Modena, Italy
4
R&D Department, Coopservice S.coop.p.a, 42122, Reggio Emilia, Italy
Keywords:
Vehicle Routing Problem, Multiple Depots, Multiple Periods, Multiple Trips, Variable Neighbourhood
Search, Mixed Integer Linear Programming.
Abstract:
Rich vehicle routing problems frequently arise in real-world applications. The related literature is trying to ef-
fectively address many of them, considering all their constraints and the need to solve large practical instances.
In this paper, we handle a rich vehicle routing problem that emerges from an Italian service provider company
operating in the delivery of pharmaceutical products. This problem is characterized by constraints that include
multiple depots, periods, and trips, as well as specific time windows, customer-vehicle incompatibilities, and
restrictions on vehicle working hours. To solve this problem, we propose a two-phase decomposition approach.
In the first phase, we generate a set of trips that satisfy all problem constraints for a single period. Then, in
the second phase, three algorithms based, respectively, on a greedy heuristic, a variable neighbourhood search
metaheuristic, and a mixed integer linear programming model are tested to combine the generated trips into
routes for the overall set of periods. Computational results on real-world instances show that the model hits
the one-hour time limit for cases with more than 150 trips. The metaheuristic algorithm performs better in
terms of objective function value. The greedy algorithm is faster but is outperformed by the other methods in
terms of solution quality.
1 INTRODUCTION
The logistics industry has experienced rapid growth
in recent years, with the COVID-19 pandemic fur-
ther highlighting the need for accurate and timely
decision-making. In 2020, the global logistics indus-
try was valued at approximately USD 5.73 trillion,
and this figure is projected to nearly triple by 2028
(Gosain, 2023). Today, one of the main challenges
concerns the development of solution methods that
closely reflect real-world scenarios, in which different
factors, such as constraints related to daily operations
a
https://orcid.org/0000-0002-4129-9876
b
https://orcid.org/0000-0003-2674-3366
c
https://orcid.org/0000-0002-9470-8784
d
https://orcid.org/0000-0002-5459-7290
e
https://orcid.org/0000-0003-2097-6572
and unforeseen events, must be considered. The goals
are to reduce operational costs, address environmental
concerns, and improve labour efficiency.
This study addresses a real-world vehicle routing
problem (VRP) faced by an Italian service provider
company that delivers pharmaceutical products to
hospitals and medical facilities. The problem involves
a set of customers, each with a specific time window,
who must be served by a heterogeneous fleet of vehi-
cles. Each customer can demand products in differ-
ent periods, and the products have to be delivered in
the periods in which they have been demanded. Vehi-
cles are allowed to perform multiple trips within each
given period. The vehicles are associated with differ-
ent depots, and each vehicle is required to begin and
conclude its route at the same depot. The objective
is to minimize the overall cost associated with the ve-
hicle usage. This is computed by considering a first
112
Cavecchia, M., Alves de Queiroz, T., Lancellotti, R., Zucchi, G. and Iori, M.
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows.
DOI: 10.5220/0013153100003893
Paper published under CC license (CC BY-NC-ND 4.0)
In Proceedings of the 14th International Conference on Operations Research and Enterprise Systems (ICORES 2025), pages 112-122
ISBN: 978-989-758-732-0; ISSN: 2184-4372
Proceedings Copyright © 2025 by SCITEPRESS Science and Technology Publications, Lda.
cost if a vehicle is used at least once in the set of pe-
riods, and a second cost incurred each time a vehicle
is used. Due to geographical constraints, some cus-
tomers cannot be served by larger vehicles, thus im-
posing incompatibilities between customers and ve-
hicles. The resulting problem is a challenging variant
of a multi-trip vehicle routing problem with time win-
dows (MTVRPTW).
The main contributions of this work are (i) the
study of a challenging MTVRPTW originating from a
real-world company, (ii) the proposal of a number of
solution algorithms, among which a variable neigh-
bourhood search (VNS) based heuristic (Hansen and
Mladenovi
´
c, 2001), and (iii) the execution of exten-
sive computational tests on real-world instances.
To solve the problem, we generalize the two-phase
decomposition approach by (Cavecchia et al., 2024),
originally developed to solve the single-period vari-
ant of the problem. In this paper, we extend it to
deal with a multi-depot, multi-period, and multi-trip
vehicle routing problem with time windows (MM-
MVRPTW). In the first phase of the decomposition
approach, we generate a set of trips that start and end
at the same depot. In the second phase, we assign
these trips to the set of available vehicles, creating
routes with multiple trips. The aim is to minimize the
costs associated with the usage of the vehicles. We
use this decomposition approach in multiple ways.
First of all, we present a mixed integer linear pro-
gramming (MILP) model that attempts to optimally
combine, in phase two, the trips created in phase one.
We then propose a constructive heuristic, which we
call bounded starting time greedy (BSTG) algorithm,
which assigns the generated trips to the available ve-
hicles according to increasing values of their starting
times. We finally develop a novel VNS-based heuris-
tic that attempts several assignments of the generated
trips by invoking mechanisms of perturbation and lo-
cal search.
The remainder of this paper is organized as fol-
lows. Section 2 reviews recent contributions related
to the problem that we tackle, including surveys and
seminal studies. Section 3 provides a formal prob-
lem description, outlining its objective function and
constraints. Section 4 presents the details of the two-
phase approach, detailing each developed algorithm.
Section 5 describes the instances that we solved and
the computational results that we obtained from all
the algorithms, contrasting them in terms of objec-
tive function values, computing times, and numbers
of vehicles used. Section 6 offers some concluding
remarks and potential directions for future research.
2 LITERATURE REVIEW
The VRP is a well-known NP-hard problem that
arises in various logistics scenarios. Researchers have
progressively incorporated additional constraints to
better reflect real-world conditions, such as time win-
dows, multiple depots, heterogeneous vehicle fleets,
multiple trips, and multi-period planning, among oth-
ers (Toth and Vigo, 2014). When a VRP includes
multiple constraints, it is usually referred to as a rich
VRP (Lahyani et al., 2015). The literature has de-
veloped a large variety of algorithms to address rich
VRPs, ranging from exact methods to advanced meta-
heuristics (Elshaer and Awad, 2020).
Time windows are a common constraint in VRPs,
restricting vehicles to serve each customer within a
specified time period. Time windows can be either
soft or hard. The former ones are flexible and may
be violated, although this causes a penalty cost. The
latter ones must be strictly observed and a viola-
tion makes the problem solution infeasible. Surveys
on the VRP with time windows (VRPTW) can be
found in (Br
¨
aysy and Gendreau, 2005a) and (Br
¨
aysy
and Gendreau, 2005b). These authors reviewed key
problem components and various heuristic and meta-
heuristic solution methods developed in the litera-
ture. Recently, (Pan et al., 2021) addressed a vari-
ant of the VRPTW involving time-dependent travel
times. They proposed a hybrid heuristic using an
adaptive large neighbourhood search (ALNS) and a
tabu search, successfully improving results from pre-
vious studies. Similarly, (Zhou et al., 2022) devel-
oped a MILP formulation and a hybrid heuristic com-
bining VNS with tabu search to solve a variant of
the VRPTW, which incorporates two-echelon logis-
tics and pickup and delivery constraints. Other stud-
ies involving the VRPTW were recently surveyed by
(Zhang et al., 2022). Besides defining and presenting
the problem mathematical formulation, the authors
discussed the recent progress made by the literature
on this problem.
The VRPTW has also been investigated with ad-
ditional features, such as the presence of multiple de-
pots and periods, besides the opportunity to use mul-
tiple trips per period. Concerning the variant with
multiple trips, (Brand
˜
ao and Mercer, 1998) handled a
real-world problem related to the food industry. They
proposed a tabu search algorithm where the initial so-
lution is generated by combining nearest-neighbour
and insertion movements. The tabu search was com-
pared with prior literature and produced solutions
that balanced daily tours more effectively. (Despaux
and Basterrech, 2016) introduced a hybrid algorithm
merging simulated annealing and local search tech-
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows
113
niques, generating new solutions by moving cus-
tomers from their routes as well as assigning vehi-
cles to different routes. (Cattaruzza et al., 2016) intro-
duced a new VRPTW variant arising from a real-case
scenario concerning a two-level mutualized distribu-
tion in cities. This variant requires that the vehicle
routes satisfy multiple trips and release dates. The au-
thors proposed a hybrid genetic algorithm incorporat-
ing a local search procedure to refine solutions after
the crossover operation. (Huang et al., 2024) tack-
led a problem originating from waste collection oper-
ations. The authors proposed an arc flow model and
a branch-price-and-cut algorithm based on a set parti-
tioning model. A column generation algorithm and a
surrogate relaxation strategy were combined together
to generate trips. Their algorithm proved to be effi-
cient in comparison with the previous literature.
Regarding the multiple depot VRPTW variants,
(Li et al., 2016) studied the case in which vehicles
can start and end their routes in different depots. They
proposed a hybrid genetic algorithm with an adaptive
local search mechanism. The computational results
they obtained showed that changing depot may lead
to an interesting 2% reduction in the traveling costs.
(Bae and Moon, 2016) examined the multiple depot
VRPTW with additional constraints involving the de-
livery and installation of electronic components. They
developed a MILP model and two heuristics. The
first heuristic assigns customers to their nearest de-
pot and builds routes using a nearest-neighbor-based
algorithm. The second heuristic is a genetic algo-
rithm making use of penalty and fitness functions,
as well as crossover operators. Recently, (Su et al.,
2024) combined a genetic algorithm with a VNS to
address a multiple depot VRPTW variant involving
green requirements and customer satisfaction, with
the genetic algorithm serving as the upper layer and
the VNS as the local search mechanism. Computa-
tional results on instances of different sizes demon-
strated the good performance of their approach.
With respect to VRP variants with multiple peri-
ods, (Wen et al., 2010) solved a dynamic, real-world
problem for a large Swedish distributor. They pro-
posed a MILP model and a three-phase rolling hori-
zon heuristic. In the first phase, customers are se-
lected to be visited. In the next phase, the selected
customers are arranged in routes by observing a plan-
ning problem, and, in the last phase, a tabu search is
used to improve the routes. (Mancini, 2016) intro-
duced a MILP model and an ALNS to solve a rich
VRP with multiple periods. Their ALNS considered
four destroy operators based on randomly selecting
customers and reallocating them to different routes.
More recently, (Zhang et al., 2024) tackled a real-
world application in the drug distribution system for
epidemic situations. To solve large instances, the au-
thors proposed a hybrid tabu search algorithm. It in-
cludes intra- and inter-route operators, as well as de-
stroy and repair mechanisms to improve efficiency.
In this work, we address a very general VRPTW
variant that combines multiple periods, multiple de-
pots, and multiple trips. To the best of our knowl-
edge, the literature on this rich problem is scarce.
As cited above, most of the works considered these
constraints separately, but none with all of them to-
gether. When solving similar problems, the literature
has mostly focused on developing metaheuristic algo-
rithms, especially when dealing with large and real-
world instances. Similar to the literature, we also aim
to propose an effective metaheuristic. Our aim is in-
deed to tackle a real-world problem and solve real-
world instances using such an approach.
3 PROBLEM DESCRIPTION
The optimization problem that we face is defined on
a directed graph G = (N, A), where N represents the
set of nodes, consisting of a set D of depots and a
set C of customers. The set A of arcs is defined as
{(i, j) : i, j N, i ̸= j}, where each arc (i, j) is associ-
ated with a non-negative travel time t
i j
. The problem
spans over a time horizon divided into a set P of peri-
ods. In each period, each vehicle is constrained by a
limit T on the maximum number of hours it can work.
For each customer i C and for each period p P, we
are given a demand q
ip
, a service time s
ip
, and a hard
time window [e
ip
, l
ip
], where e
ip
is the earliest pos-
sible arrival time and l
ip
is the latest possible arrival
time. A vehicle is allowed to arrive in i before e
ip
,
but in such a case it will have to wait until e
ip
. Arriv-
ing after l
ip
is, instead, not allowed. A heterogeneous
vehicle fleet, divided into a set V of vehicle types, is
available at each single depot. Each vehicle type v V
consists of a set K
v
of different vehicles. Each vehi-
cle k K
v
, for v V , has a loading capacity Q
k
. The
sum of the loaded demands cannot exceed the vehi-
cle capacity at any moment during the execution of a
route.
The MMMVRPTW is subject to the following
constraints: each route can consist of one or more
trips, and each trip must start and end at the same de-
pot; the load on each trip must not exceed the vehi-
cle capacity; and, each route may not last longer than
the maximum number T of working hours. When
computing the total time of a route, a fixed time
for loading/unloading operations is imposed between
two consecutive trips performed by the same vehi-
ICORES 2025 - 14th International Conference on Operations Research and Enterprise Systems
114
cle. Each customer is assigned to a unique trip and
must be visited exactly once. Each visit should be
performed during the customer time window, and the
customer’s demand must be entirely fulfilled during
that visit. Furthermore, the problem incorporates in-
compatibilities between vehicles and customers. In
other words, only specific vehicle types can serve cer-
tain customers due to geographical location and de-
mand (e.g. on a mountainous territory only a small
vehicle can perform the delivery).
The objective of the problem is to find an optimal
solution that satisfies all the problem constraints while
minimizing the total cost of vehicle usage. Specifi-
cally, the overall cost includes two components. The
first is a fixed cost, A
v
, which depends on the vehicle
type v V and is incurred if a vehicle of this type is
used at least once across the set of periods. The sec-
ond is a variable cost, B
v
, which applies each time a
vehicle of type v is used for a route in a period. The
resulting problem is not only NP-hard (as it general-
izes the VRP) but also very difficult in practice.
4 PROPOSED APPROACH
As anticipated, in this paper, we propose a two-phase
approach. In the first phase, we generate a set of trips
that respect all the problem constraints. However,
since a vehicle can perform multiple trips within a sin-
gle period (multi-trip) and be reused across different
periods (multi-period), the second phase focuses on
combining these trips to minimize the cost associated
with the usage of the vehicles for all periods.
Figure 1: Trips calculated with the ILS metaheuristic in
(Kramer et al., 2019).
In the first phase, we apply the metaheuristic pro-
posed by (Kramer et al., 2019). The goal is to gen-
erate a set of trips while respecting the problem con-
straints outlined in Section 3. Specifically, the authors
developed an iterated local search (ILS) metaheuris-
tic, which includes a restart mechanism after a speci-
fied number of iterations. The ILS consists of a con-
structive heuristic, a local search, and a perturbation
procedure. The local search uses seven neighbour-
hood structures based on simple movements (e.g.,
swaps, relocations, and 2-opt exchanges). The per-
turbation step introduces randomness by performing
swaps and relocations. We refer the reader to the
original publication for further details. Figure 1 illus-
trates an example of the trips obtained with the ILS, in
which the blue points are customers, the orange points
are depots, and trips are depicted in red.
The trips obtained in the first phase are then used
and combined in the second phase to create the fi-
nal routes. In order to do that, we propose a VNS-
based heuristic, where the initial solution is generated
using a constructive heuristic. This solution is sub-
sequently refined through a shaking procedure and
a local search. In the proposed algorithm, we de-
fine a stopping criterion based on two conditions: the
number of consecutive iterations without improve-
ment and a maximum time limit. Further details are
provided in the following section. Additionally, we
adapt the MILP model and the BSTG heuristic pro-
posed by (Cavecchia et al., 2024) in order to accom-
modate multiple periods and the more general cost
function. All these algorithms are applied to solve
a number of real-world instances, and computational
results demonstrate their competitiveness.
4.1 Adapted Methods
In (Cavecchia et al., 2024), a single period VRPTW
variant with multiple depots and multiple trips was
solved by means of a MILP model, two greedy
heuristics and an ILS. The authors employed the
forward-time slack procedure proposed by (Savels-
bergh, 1992) in order to define the earliest and lat-
est starting times of each trip. The idea behind this
procedure is to allow a vehicle to depart as early as
possible without generating infeasible trips. It calcu-
lates the forward time slack, which indicates how far
the departure time of each customer can be shifted
forward.
As in (Cavecchia et al., 2024), we first generate
the trips R
p
for each period p P using the meta-
heuristic proposed by (Kramer et al., 2019). Next, we
apply the forward-time slack procedure to determine
the earliest starting time ¯e
r
and the latest starting time
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows
115
¯
l
r
for each trip r R
p
. These parameters are then used
by the MILP model described below. The model also
receives in input the duration T
r
of each generated trip
r R
p
.
As in (Cavecchia et al., 2024), the model includes
four sets of binary decision variables and three sets
of continuous decision variables. However, now the
decision variables have an additional index p repre-
senting the period they refer to. To correctly assess
the new cost function, we introduce an additional bi-
nary decision variable w
p
kv
.
x
p
rkv
: binary variable that takes the value 1 if trip
r R
p
is assigned to vehicle k K
v
of type v V
on period p P; otherwise it takes the value 0;
y
kv
: binary variable that takes the value 1 if vehi-
cle k K
v
of type v V is used; otherwise it takes
the value 0;
w
p
kv
: binary variable that takes the value 1 if vehi-
cle k K
v
of type v V is used on period p P;
otherwise it takes the value 0;
z
p
rskv
: binary variable that takes the value 1 if trip
r R
p
precedes trip s R
p
, both assigned to vehi-
cle k K
v
of type v V on period p P; otherwise
it takes the value 0;
α
p
kv
: continuous variable that represents the start-
ing time of vehicle k K
v
of type v V on period
p P;
β
p
kv
: continuous variable that represents the end-
ing time of vehicle k K
v
of type v V on period
p P;
t
p
rkv
: continuous variable that represents the start-
ing time of trip r R
p
assigned to vehicle k K
v
of type v V on period p P.
The MILP model has the objective function (1)
that accounts for minimizing the total fixed cost asso-
ciated with the different vehicles used across all pe-
riods (A
v
), as well as the daily cost encountered by
considering the vehicles used in every single period
(B
v
). The model constraints are given by equations
(2)-(21) and are direct extensions of those in (Cavec-
chia et al., 2024). The model is solved independently
for each depot d D, as the trips in R
p
have already
been associated with a depot d and are independent of
one another. In other words, each depot corresponds
to an instance of the problem.
Constraints (2)-(4) ensure that if a vehicle k is
used during period p, then it must be considered in
the solution cost through variables y and w. Con-
straints (5) impose that each trip r on period p must
be assigned to exactly one vehicle k. Precedence con-
straints are ensured in (6) and (7) for any two trips
assigned to the same vehicle. Constraints (8) ensure
that trips assigned to the same vehicle have different
starting times, i.e., one must start after the other fin-
ishes, considering the total duration T
r
and the fixed
loading time between the consecutive trips r and s.
Constraints (9) require each trip to respect its earliest
¯e
r
and latest
¯
l
r
starting times. Constraints (10), (11),
and (12) guarantee that each vehicle performs a set of
trips that respects the working hours limit T . In (13),
valid inequalities are applied to ensure that the work-
ing hours of each vehicle are respected. Constraints
(14) stipulate that vehicles can only perform trips ac-
cording to the customer’s geographical location and
demand, thus taking care of the vehicle-customer in-
compatibilities. Formally, set I contains those gener-
ated trips r R
p
that a vehicle of type v cannot per-
form due to geographical restrictions. Finally, con-
straints (15)-(21) define the domain of the variables.
In addition to the MILP model, we adapt the
bounded starting time greedy (i.e., BSTG) algorithm
developed by (Cavecchia et al., 2024). This heuris-
tic considers a variable σ to track the vehicles from
each depot and type used in each period. First, the
trips r R
p
are sorted in a non-decreasing order of
the earliest starting time ¯e
r
. In case of ties, trips with
longer duration are given priority. Trips are then as-
signed to vehicles, considering their working hours
and type. Algorithm 1 in (Cavecchia et al., 2024) pro-
vides the pseudocode for the BSTG algorithm. Differ-
ently from the original algorithm, we give preference
to vehicles in σ that have already been used in pre-
vious periods. If no such vehicle is available, a new
one is created and added to σ. Priority is given to ve-
hicle types with the lowest associated costs. We take
advantage of previously used vehicles and try to first
assign trips to used vehicles of minimum cost, follow-
ing their costs.
4.2 VNS-Based Heuristic
The VNS is a metaheuristic that has been applied
to solve many hard combinatorial optimization prob-
lems. We can find relevant VNS applications in
problems like vehicle routing, cutting, packing, fa-
cility location, scheduling, lot sizing, and many oth-
ers (Hansen and Mladenovi
´
c, 2001). Recently, (Lan
et al., 2021) surveyed healthcare problems that were
solved by VNS-based heuristics. Besides classify-
ing the works in the literature into ve classes, the
authors detailed the main VNS phases, e.g., shaking
and local search, developed by the literature to obtain
high-quality solutions. They also commented on the
efficiency of classical operators based on swap, ex-
change, insertion, and move, among others, to define
neighbourhood structures.
ICORES 2025 - 14th International Conference on Operations Research and Enterprise Systems
116
min Z =
vV
kK
v
A
v
y
kv
+
pP
vV
kK
v
B
v
w
p
kv
(1)
s.t. x
p
rkv
w
p
kv
, p P, r R
p
, v V, k K
v
(2)
y
kv
w
p
kv
, p P, v V, k K
v
(3)
x
p
rkv
y
kv
, p P, r R
p
, v V, k K
v
(4)
vV
kK
v
x
p
rkv
= 1, p P, r R
p
(5)
z
p
rskv
+ z
p
srkv
x
p
rkv
+ x
p
skv
1, p P, v V, k K
v
, r, s R
p
: r ̸= s (6)
z
p
rskv
+ z
p
srkv
1, p P, v V, k K
v
, r, s R
p
: r ̸= s (7)
t
p
rkv
+ (T
r
+ ) t
p
skv
+ M(1 z
p
rskv
), p P, v V, k K
v
, r, s R
p
: r ̸= s (8)
¯e
r
t
p
rkv
¯
l
r
, p P, r R
p
, v V, k K
v
(9)
α
p
kv
t
p
rkv
+ M(1 x
p
rkv
), p P, r R
p
, v V, k K
v
(10)
β
p
kv
t
p
rkv
+ (T
r
+ ) M(1 x
p
rkv
), p P, r R
p
, v V, k K
v
(11)
β
p
kv
α
p
kv
(T + )y
kv
, p P, v V, k K
v
(12)
rR
p
(T
r
+ )x
p
rkv
(T + )y
kv
, p P, r R
p
, v V, k K
v
(13)
x
p
rkv
= 0, p P, (r, v) I , k K
v
: q
r
> Q
k
(14)
x
p
rkv
{0, 1}, p P, r R
p
, v V, k K
v
(15)
y
kv
{0, 1}, v V, k K
v
(16)
w
p
kv
{0, 1}, p P, v V, k K
v
(17)
z
p
rskv
{0, 1}, p P, v V, k K
v
, r, s R
p
: r ̸= s (18)
t
p
rkv
0, p P, r R
p
, v V, k K
v
(19)
α
p
kv
0, p P, v V, k K
v
(20)
β
p
kv
0, p P, v V, k K
v
(21)
According to (Hansen et al., 2019), the VNS starts
with an initial (random) solution and iterates over a
given set of neighbourhood structures in order to ob-
tain a solution that is globally optimal concerning all
structures. At each iteration, a new neighbour solu-
tion is generated in the shaking phase. Depending on
the VNS version, this neighbour solution is improved
through a local search phase. The resulting solution is
then evaluated and accepted if it is better than the pre-
vious one. In such a case, the search restarts from the
first neighbourhood structure. Otherwise, the search
continues over the next neighbourhood.
In this work, we propose a heuristic based on the
VNS framework, as outlined in Algorithm 1. The al-
gorithm receives in input the routes R
p
generated in
the first phase and the set of periods P. As output, it
returns the best solution found, x, which consists of
the routes performed by each vehicle over P. In line
1, we apply the adapted BSTG algorithm to obtain an
initial solution. The BSTG algorithm assigns vehicles
to trips following the order of the periods given in P.
This means that a different order of the periods may
imply a different (and hopefully better) solution. In
the first while loop (line 2), we use as stopping crite-
ria the maximum number of iterations without an im-
provement or a maximum time limit. This first loop
starts by imposing the search over the first neighbour-
hood. Next, we enter a second inner loop that iterates
through all the neighbourhood structures (line 4). We
develop K
max
= 3 structures that all work on the set
of periods, namely: (i) swap two periods in the order,
(ii) insert one period before another one in the order,
and (iii) swap three periods. The idea is to generate
different orders for the periods, thus leading to good
diversification of the search.
The shake phase in line 5 uses the neighbourhood
structures to generate a new order P
to the periods in
P. Next, we modified the adapted BSTG algorithm
in order to receive the current solution x and P
. This
modification consists of using the trips as they have
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows
117
Algorithm 1: VNS-based heuristic.
Data: R
p
, P
Result: x
1 x BSTG(R
p
, P);
2 while not reaching one of the stopping
criteria do
3 k 1;
4 while k K
max
do
5 P
SHAKE(x, P, k);
6 x
BSTG(x, P
);
7 x
′′
LOCALSEARCH(x
);
8 if COST(x
′′
) < COST(x) then
9 x x
′′
;
10 k 1;
11 else
12 k k + 1;
13 end
14 end
15 end
been assigned in the solution. Then, these trips are
reassigned in accordance with the order of the periods
in P
. After that, we try to improve the neighbour
solution x
with the local search phase, resulting in
a solution x
′′
. In line 8, we compare the costs of x
and x
′′
, updating x in case x
′′
is better and making the
search restart from the first neighbourhood. In case
no improvement is obtained, we continue the search
with the next neighbourhood (line 12).
Our implementation of the local search consists of
three steps. In the first step, we perform all possible
swaps of two routes, stopping when a movement can
improve the solution (i.e., we use a truncated local
search, with the aim of keeping a low computational
effort). This improved solution is then used in the sec-
ond step, where all possible insertions between two
routes are performed. Similarly, we stop in the first
insertion movement able to improve the input solu-
tion. Finally, in the third step, we select one vehicle
from a period and a type in order to reassign all its
trips to other vehicles in that period that are able to
accommodate them. The vehicle we attempt to empty
is taken from the period and vehicle type that is most
used among all ones. In fact, we try to empty all ve-
hicles of that type, until reaching one in which this is
possible. If no vehicle can be emptied, we return the
solution given as output by the previous local search
operator.
5 COMPUTATIONAL RESULTS
The two-phase approach was implemented in the fol-
lowing way: for the first phase we invoked the algo-
rithm by (Kramer et al., 2019), which was coded in
C++; we then coded all the algorithms used in the
second phase in Python. The computer used to run
the experiments is an Intel(R) Xeon(R) E3-1245 3.50
GHz CPU, 32 GB of RAM, running under Ubuntu
22.04 LTS.
The MILP model (1)-(21) was solved with Gurobi
Optimizer version 11. We set the maximum number
of consecutive iterations without improvement of the
VNS-based heuristic equal to the number of neigh-
bourhood structures (i.e., equal to three). In compli-
ance with the real-world case study, we set the fixed
loading/unloading time to = 30 minutes, and the
limit on the maximum number of working hours to
T = 480 minutes. Each algorithm of the second phase
was executed five times. Each execution was limited
to 3600 seconds. In the objective function, the val-
ues of A
v
= {160, 140, 120, 100, 80, 60} are assigned
to vehicle types v V , ordered in descending capac-
ity. Additionally, B
v
is set to 1 uniformly across all
vehicle types, regardless of their specific characteris-
tics. For each algorithm, the tables below report the
average results regarding objective function value and
computing time considering the five executions per
instance. The term TL stands for time limit and is
used when all executions reach 3600 seconds.
The two-phase approach was applied to solve real-
istic instances from an Italian service company. They
are based on three regions in Italy: Emilia Romagna,
Sardinia, and Tuscany. We have been provided with
three instances from Emilia Romagna, two from Sar-
dinia, and one from Tuscany. Table 1 contains some
details about these instances, including the name, the
number of depots, the number of vehicle types, the
number of customers, the number of trips obtained
with the algorithm of (Kramer et al., 2019) in the
first phase of our decomposition approach, the aver-
age number of customers that a vehicle could service
in a single trip (#CT ), and the average number of pe-
riods in which a customer requires products (#PC).
Moreover, the maximum number of periods is six.
Table 2 presents the results obtained with all the
algorithms of the second phase, applied for each de-
pot. We present the objective function Z, computed
according to (1), and the computing time t(s) in sec-
onds, for each algorithm. For the MILP model, we
also include the lower bound Z
LB
and the percent-
age gap, GAP(%), whose values are both directly re-
turned by the solver. For each instance, the best ob-
jective values are highlighted in bold. In general, we
ICORES 2025 - 14th International Conference on Operations Research and Enterprise Systems
118
Table 1: Main characteristics of the instances.
Instance |D| |V | |C| |R
p
| #CT #PC
West Emilia
1 1 206 119 2.6 1.5
Romagna
Central Emilia
2 1 210 194 3.0 3.2
Romagna
East Emilia
1 1 201 177 3.0 3.1
Romagna
North Sardinia 3 2 152 48 8.4 1.5
South Sardinia 1 2 154 58 7.3 1.6
Tuscany 2 6 155 101 5.1 2.3
observe that the VNS-based heuristic is able to pro-
duce better objective function values, although it may
spend large computing times. The MILP model also
presents competitive results. However, it reaches the
time limit of one hour for those instances having the
largest number of trips. The adapted BSTG algorithm
is fast but does not perform so well compared to the
other approaches.
Observing the results in Table 2, the VNS-based
heuristic has the best objective value for the Central
Emilia Romagna (depot 1) instance. Moreover, in
comparison with the adapted BSTG algorithm, it is
still superior for the instances West Emilia Romagna
and Tuscany (depot 1). Similarly, it performs better
than the MILP model also for the East Emilia Ro-
magna instance. The best improvement obtained with
the VNS-based heuristic over the adapted BSTG algo-
rithm is for the Tuscany (depot 1) instance, reaching
a percentage decrease of 10.66%. With respect to the
MILP model, it reaches an improvement of 4.02% for
the East Emilia Romagna instance. Concerning the
comparison between the MILP model and the adapted
BSTG algorithm, the former is better for the instances
West Emilia Romagna and Tuscany (depot 1), while
the latter is superior for the instances Central Emilia
Romagna (depot 1) and East Emilia Romagna.
In terms of computing time, the results in Table
2 indicate the best performance of the adapted BSTG
algorithm. It presents an average computing time of
0.14 seconds. On the other hand, the VNS-based
heuristic has an average computing time of 1281.57
seconds, reaching the imposed time limit for the in-
stances Central Emilia Romagna (depot 1) and East
Emilia Romagna. The large computing times reported
by the VNS-based heuristic are justified by its local
search phase. Similarly, the MILP model reaches the
time limit for the same instances, with an overall av-
erage computing time of 725.87 seconds. For these
instances, the model GAPs are 7.63% and 15.58%, re-
spectively. From a scalability point of view, the model
struggles as the size of the instances grows, reaching
the time limit and increasing the GAP. In this way,
the BSTG algorithm and the VNS-based heuristic are
effective alternatives to the model.
In Table 3 we present the number of vehicles used
over the set of periods, considering the final solution
obtained with the algorithms for the second phase.
The results are shown for each depot and vehicle type
that uses at least one vehicle. All the algorithms return
the same amount of vehicles, except for the instances
East Emilia Romagna and Tuscany (depot 1, vehicle
type 2). In these specific cases, the MILP model re-
quires one more vehicle and the adapted BSTG al-
gorithm requires one more vehicle with respect to the
other algorithms, respectively. Despite the same num-
ber of vehicles required in the final solution by the al-
gorithms, the objective function values may be differ-
ent as previously shown in Table 2, because it refers
to the fixed cost of the vehicles plus the number of
times that each vehicle is used over the periods.
Figure 2 presents the graphical output generated
by the VNS-based heuristic for the Tuscany (depot 1)
instance. The chart displays the assignment of trips to
vehicles over the considered set of periods. Each col-
ored bar represents a trip, with bars of the same color
corresponding to trips assigned to the same vehicle.
The horizontal axis indicates the time, while the ver-
tical axis shows the vehicles and the created routes,
which consist of multiple trips.
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows
119
Table 2: Computational results on the ten real-world instances.
Instance Depot
BSTG VNS MILP Model
Z t(s) Z t(s) Z Z
LB
GAP(%) t(s)
West Emilia Romagna 1 3949 0.28 3947 3393.38 3947 3947 0.00% 7.94
Central Emilia Romagna
1 2450 0.25 2449 TL 2451 2264 7.63% TL
2 980 0.05 980 113.57 980 980 0.00% 34.56
East Emilia Romagna 1 3919 0.48 3919 TL 4083 3447 15.58% TL
North Sardinia
1 742 0.03 742 8.16 742 742 0.00% 0.15
2 430 0.01 430 0.22 430 430 0.00% 0.02
3 433 0.01 433 0.47 433 433 0.00% 0.03
South Sardinia 1 1632 0.08 1632 172.60 1632 1632 0.00% 1.29
Tuscany
1 1342 0.20 1199 1926.93 1199 1199 0.00% 14.65
2 208 0.01 208 0.39 208 208 0.00% 0.05
Table 3: Number of vehicles used in the solutions found.
Instance Depot Vehicle Type BSTG VNS MILP Model
West Emilia Romagna 1 1 24 24 24
Central Emilia Romagna
1 1 15 15 15
2 1 6 6 6
East Emilia Romagna 1 1 24 24 25
North Sardinia
1
1 1 1 1
2 4 4 4
2 2 3 3 3
3 2 3 3 3
South Sardinia 1
1 2 2 2
2 9 9 9
Tuscany
1
1 1 1 1
2 2 1 1
3 2 2 2
4 1 1 1
5 1 1 1
6 7 7 7
2
2 1 1 1
6 1 1 1
6 CONCLUDING REMARKS
The rich VRP handled in this work originates from a
real-world case study. It contains many different con-
straints and thus is solved by a two-phase approach.
The first phase is concerned with obtaining a set of
trips that respect the problem’s constraints. The sec-
ond phase aggregates these trips into routes in order
to minimize the costs associated with the usage of
the vehicles and the number of times each vehicle
is used over a set of periods. The trips are calcu-
lated with a metaheuristic from the literature and the
routes may be defined by three different algorithms:
an adapted BSTG algorithm, a VNS-based one, and a
MILP model.
Considering experiments on realistic instances,
ICORES 2025 - 14th International Conference on Operations Research and Enterprise Systems
120
Figure 2: Final solution for Tuscany instance generated by the VNS-based heuristic.
the proposed algorithms are effective in returning so-
lutions close to each other. Differences are observed
with the VNS-based heuristic, which can improve
some of the solutions computed by the others, e.g.,
reaching improvements superior to 10% compared to
the adapted BSTG algorithm. On the other hand, it
has the largest computing times. The MILP model
works well for small-size instances, but it is not able
to achieve optimal solutions for the larger instances
within 3600 seconds.
After all, we note there is room for improve-
ment. A sensitivity analysis (e.g., varying the vehi-
cle capacity and the customers’ time windows) could
help the company in deciding about the fleet of ve-
hicles. On the other hand, the VNS-based heuris-
tic is time-consuming due to its local search phase.
One direction could be to explore other VNS vari-
ants that do not have the local search phase. An-
other interesting research avenue lies in the proposal
of different heuristics and metaheuristics (e.g., col-
umn generation-based heuristics, genetic algorithms,
and tabu search) to compare with the methods pro-
posed in this paper. One could extend the proposed
algorithms to handle the entire problem instead of first
calculating the trips and then aggregating them, as
well as other rich VRP variants. We are also interested
in studying robust/stochastic problems, where the to-
tal duration of the trips is not deterministically deter-
mined but may assume uncertain values taken from
intervals (in case of robust optimization) or scenarios
(in case of stochastic programming).
ACKNOWLEDGEMENTS
This paper was partially financed by the Na-
tional Council for Scientific and Technological De-
velopment (CNPq) [grant numbers 405369/2021-
2, 408722/2023-1, and 315555/2023-8], the State
of Goi
´
as Research Foundation (FAPEG), the Na-
tional Recovery and Resilience Plan (NRRP), Mis-
sion 04 Component 2 Investment 1.5–NextGenera-
tionEU, Call for tender n. 3277 dated 30/12/2021,
Award Number: 0001052 dated 23/06/2022, and
Coopservice Soc.coop.p.A. Their support is gratefully
acknowledged.
REFERENCES
Bae, H. and Moon, I. (2016). Multi-depot vehicle rout-
ing problem with time windows considering delivery
and installation vehicles. Applied Mathematical Mod-
elling, 40(13):6536–6549.
Brand
˜
ao, J. C. S. and Mercer, A. (1998). The multi-trip
vehicle routing problem. Journal of the Operational
Research Society, 49(8):799–805.
Br
¨
aysy, O. and Gendreau, M. (2005a). Vehicle routing prob-
lem with time windows, part I: Route construction
A Real-World Multi-Depot, Multi-Period, and Multi-Trip Vehicle Routing Problem with Time Windows
121
and local search algorithms. Transportation Science,
39(1):104–118.
Br
¨
aysy, O. and Gendreau, M. (2005b). Vehicle routing
problem with time windows, part II: Metaheuristics.
Transportation Science, 39(1):119–139.
Cattaruzza, D., Absi, N., and Feillet, D. (2016). The
Multi-Trip Vehicle Routing Problem with Time Win-
dows and Release Dates. Transportation Science,
50(2):676–693. Publisher: INFORMS.
Cavecchia, M., Alves de Queiroz, T., Iori, M., Lancellotti,
R., and Zucchi, G. (2024). An optimization-based
decision support system for multi-trip vehicle routing
problems. SN Computer Science, 5(2):225.
Despaux, F. and Basterrech, S. (2016). Multi-trip vehi-
cle routing problem with time windows and hetero-
geneous fleet. International Journal of Computer In-
formation Systems and Industrial Management Appli-
cations, 8:9.
Elshaer, R. and Awad, H. (2020). A taxonomic review of
metaheuristic algorithms for solving the vehicle rout-
ing problem and its variants. Computers & Industrial
Engineering, 140:106242.
Gosain, S. (2023). The vital role of logistics in business
to business (B2B) success. https://insights.worldref.
co/logistics-in-business-to-business-b2b/ [Accessed:
2024-08-30].
Hansen, P. and Mladenovi
´
c, N. (2001). Variable neighbor-
hood search: Principles and applications. European
Journal of Operational Research, 130(3):449–467.
Hansen, P., Mladenovi
´
c, N., Brimberg, J., and P
´
erez, J.
A. M. (2019). Variable Neighborhood Search. In
Gendreau, M. and Potvin, J.-Y., editors, Handbook of
Metaheuristics, pages 57–97. Springer International
Publishing, Cham.
Huang, N., Qin, H., Xu, G., and Wan, F. (2024). An en-
hanced exact algorithm for the multi-trip vehicle rout-
ing problem with time windows and capacitated un-
loading station. Computers & Operations Research,
168:106688.
Kramer, R., Cordeau, J.-F., and Iori, M. (2019). Rich vehi-
cle routing with auxiliary depots and anticipated deliv-
eries: An application to pharmaceutical distribution.
Transportation Research Part E: Logistics and Trans-
portation Review, 129:162–174.
Lahyani, R., Khemakhem, M., and Semet, F. (2015). Rich
vehicle routing problems: From a taxonomy to a def-
inition. European Journal of Operational Research,
241(1):1–14.
Lan, S., Fan, W., Yang, S., Pardalos, P. M., and Mladenovic,
N. (2021). A survey on the applications of variable
neighborhood search algorithm in healthcare manage-
ment. Annals of Mathematics and Artificial Intelli-
gence, 89(8):741–775.
Li, J., Li, Y., and Pardalos, P. M. (2016). Multi-depot vehi-
cle routing problem with time windows under shared
depot resources. Journal of Combinatorial Optimiza-
tion, 31(2):515–532.
Mancini, S. (2016). A real-life Multi Depot Multi Pe-
riod Vehicle Routing Problem with a Heterogeneous
Fleet: Formulation and Adaptive Large Neighborhood
Search based Matheuristic. Transportation Research
Part C: Emerging Technologies, 70:100–112.
Pan, B., Zhang, Z., and Lim, A. (2021). A hybrid al-
gorithm for time-dependent vehicle routing problem
with time windows. Computers & Operations Re-
search, 128:105193.
Savelsbergh, M. W. P. (1992). The Vehicle Routing Prob-
lem with Time Windows: Minimizing Route Dura-
tion. ORSA Journal on Computing, 4(2):146–154.
Su, Y., Zhang, S., and Zhang, C. (2024). A lightweight ge-
netic algorithm with variable neighborhood search for
multi-depot vehicle routing problem with time win-
dows. Applied Soft Computing, 161:111789.
Toth, P. and Vigo, D. (2014). Vehicle routing: Problems,
methods, and applications. Society for Industrial and
Applied Mathematics (SIAM), Philadelphia, PA.
Wen, M., Cordeau, J.-F., Laporte, G., and Larsen, J.
(2010). The dynamic multi-period vehicle rout-
ing problem. Computers & Operations Research,
37(9):1615–1623.
Zhang, H., Ge, H., Yang, J., and Tong, Y. (2022). Review of
vehicle routing problems: Models, classification and
solving algorithms. Archives of Computational Meth-
ods in Engineering, 29(1):195–221.
Zhang, J., Li, Y., and Lu, Z. (2024). Multi-period vehicle
routing problem with time windows for drug distri-
bution in the epidemic situation. Transportation Re-
search Part C: Emerging Technologies, 160:104484.
Zhou, H., Qin, H., Zhang, Z., and Li, J. (2022). Two-
echelon vehicle routing problem with time windows
and simultaneous pickup and delivery. Soft Comput-
ing, 26(7):3345–3360.
ICORES 2025 - 14th International Conference on Operations Research and Enterprise Systems
122