Professional Documents
Culture Documents
SSRN-id4120102
SSRN-id4120102
net/publication/360877750
CITATIONS READS
0 191
4 authors, including:
All content following this page was uploaded by Juan Pablo Mesa on 26 May 2022.
Abstract
Multi-Start metaheuristics (MSM) are commonly used to solve vehicle
routing problems (VRPs). These methods create different initial solutions and
improve them through local-search. The goal of these methods is to deliver
the best solution found. We introduce initial-solution classification (ISC)
to predict if a local-search algorithm should be applied to initial solutions
in MSM. This leads to a faster convergence of MSM and to higher-quality
solutions when the amount of computation time is limited. In this work,
we extract known features of a capacitated VRP (CVRP) solution and we
introduce additional features. With these features and a machine-learning
classifier (random forest), we show how ISC –significantly– improves the
performance of greedy randomized adaptive search procedure (GRASP),
over benchmark instances from the CVRP literature. With the objective
of evaluating ISC’s performance with different local-search algorithms, we
implemented a local-search composed of classical neighborhoods from the
literature and another local-search with only a variation of Ruin-and-Recreate.
In both cases, ISC significantly improves the quality of the solutions found in
almost all the evaluated instances.
∗
Corresponding author
Email addresses: jmesalo@eafit.edu.co (Juan Pablo Mesa),
jmonto36@eafit.edu.co (Alejandro Montoya), raul.ramos@udea.edu.co (Raúl
Ramos-Pollan), mtorobe@eafit.edu.co (Mauricio Toro)
1. Introduction
In vehicle routing problems (VRPs), recent research [1], [2] has demon-
strated that structural properties of VRP solutions can be extracted to obtain
valuable information. These features have been used differently in heuristics
for VRP: from developing state-of-the-art metaheuristics –such as the Knowl-
edge Guided local-search (KGLS) of Arnold and Sörensen [3]– to discovering
patterns in high-quality solutions [4]. In this paper, we investigate how these
features can be used to improve the performance of multi-start metaheuristics
(MSM) for VRP. We focus, in particular, on the capacitated VRP (CVRP).
CVRP is a variant of VRP and has been studied for more than six decades
(since it was first proposed by Dantzig and Ramser [5]) and it is still a relevant
problem. The objective of CVRP is to find a set of routes that minimizes
the total cost travelled by a fleet of vehicles, which serves a set of customers,
starting and ending their routes at a single depot. The capacity of the
vehicles is limited, homogeneous, and cannot be exceeded. Each customer has
a known demand, must be visited once, and the distance among customers is
Euclidean.
CVRP is an NP-Hard problem, which limits the ability of state-of-the-art
exact algorithms to optimally solve instances of CVRP in a reasonable com-
puting time [6]. Therefore, metaheuristics are used to solve large instances of
CVRP because they can deliver high-quality solutions: High-quality solutions
are solutions with a low total-route cost, computing them in a reasonable
amount of time, at the expense of not guaranteeing optimality.
In recent years, there has been a trend to solve CVRP directly with
Artificial Intelligence (AI) such as the works of Nazari et al. [7] and Kool
et al. [8], or combining metaheuristics with machine learning (ML) or deep
learning [9]. This is possible because a large amount of data can be generated
during the execution of different heuristics while solving the problem. This
data can be used in ML algorithms. ML may be employed with different
objectives within the metaheuristics, such as: (1) to improve the quality of
the solutions, (2) to guide local-search and (3) to reduce the computing time.
Of the different types of metaheuristics used to solve CVRP, MSM have
a potential to easily integrate ML into them. MSM typically operate in the
1.1. Contributions
The contributions of our work are the following:
• A new method, ISC, that learns to predict which initial solutions will
lead to high-quality solutions after local-search. To the best of our
knowledge, there are no studies that evaluate initial solutions for MSM.
The objective of this work is not to propose a method that competes with
the state-of-the-art metaheuristics for CVRP; instead, we introduce a method
that enables the improvement of existent MSM for CVRP.
2. Literature review
We divide this section into two parts. First, we give a brief explanation of
the state-of-the-art metaheuristics for CVRP. We then review the methods
that combine CVRP metaheuristics with ML and highlight the differences
with our work. The methods that use only ML to solve routing problems –such
3. Method
In this section, we describe ISC and how to integrate it within MSM.
In the following sections, we make use of the notation in Table 1 for easy
reference throughout the algorithms.
Standard
Average Minimum Maximum
deviation
Standard deviation
Average number of
of the number of
intersections per
intersections per
customer (A)
customer
Average longest Standard deviation Minimum value Maximum value
distance between of the longest among the longest among the longest
two connected distance between distance between distance between
customers, per route two connected two connected two connected
(A) customers, per route customers, per route customers, per route
Standard deviation Minimum value Maximum value
Average shortest
of the shortest among the shortest among the shortest
distance between
distance between distance between distance between
two connected
two connected two connected two connected
customers, per route
customers, per route customers, per route customers, per route
Average distance Shortest distance Longest distance
between depot to between depot to between depot to
directly-connected directly-connected directly-connected
customers (A) customers customers
Average distance
between routes
(their centers of
gravity) (A)
Standard deviation Minimum value Maximum value
Average width per
of the width of each among the width of among the width of
route (A)
route (L) each route each route
Standard deviation Minimum value Maximum value
Average span in
of the span in among the span in among the span in
radians per route
radians of each radians of each radians of each
(A)
route (L) route route
Minimum value Maximum value
Average
among the among the
compactness per
compactness per compactness per
route, measured by
route, measured by route, measured by
width (A)
width width
Minimum value Maximum value
Average
among the among the
compactness per
compactness per compactness per
route, measured in
route, measured in route, measured in
radians (A)
radians radians
Standard deviation Minimum value Maximum value
Average depth per
of the depth of each among the depth of among the depth of
route (A)
route (L) each route each route
10
In what follows, we describe the two phases that comprise ISC: (1) the
training phase and (2) the classification phase. We also explain how to
integrate ISC into an MSM to solve CVRP.
11
12
13
14
1 Dsol = ∅, Dtrain = ∅
2 cost best ← ∞
3 while τ ≤ θ do
4 So ← randomized construction()
5 Dsol ← extract features(So )
6 S ′ ← A(So )
7 Dsol ← store cost(S ′ )
8 if cost(S’) ≤ cost best then
9 cost best ← cost(S ′ )
10 S∗ ← S′
11 Dtrain ← label solutions(Dsol )
12 B ← train classifier(B, Dtrain )
13 Ψ=Γ−θ
14 while τ ≤ Ψ do
15 So ← randomized construction()
16 F ← extract features (So )
17 L ← classify(B, F )
18 if L is P then
19 S ′ ← A(So )
20 if cost(S’) ≤ cost best then
21 cost best ← cost(S ′ )
22 S∗ ← S′
23 return S ∗
In the GRASP algorithm for CVRP, we constructed the initial solutions
using a randomized variation of the well-known parallel savings algorithm by
Clarke and Wright [31]. The Clarke and Wright algorithm (C-W) is a purely
greedy and deterministic algorithm; therefore, we introduced a randomization
15
16
17
18
19
Training
10 Use the features F and the rules of each decision tree e ∈ B to predict
the class
11 Calculate the number of votes for each predicted class
12 Consider the highest voted predicted class as the final prediction L
13 return L
20
4. Computational Experiments
Computational experiments evaluate the benefits of ISC when it is in-
tegrated into an MSM, and how different instance characteristics affect its
performance. To this end, we evaluated the algorithms on the X dataset
proposed by Uchoa et al. [35]. This dataset contains 100 benchmark instances,
with a varying number of customers ranging from 100 to 1000 (small if less
than 250, medium if from 250 to 500, and large if 500 or more), different cus-
tomer positioning (C=clustered, R=random, and RC=mixed), and different
depot locations (C=central, E=eccentric, and R=random).
The metaheuristics GRASP-VND (G-VND), GRASP-FILO0 (G-FILO0),
along with their respective variants GRASP-VND-ISC (G-VND-ISC) and
GRASP-FILO0-ISC (G-FILO0-ISC) are specified in section 3. G-VND is a
GRASP to solve CVRP that uses VND and G-FILO0 is a GRASP to solve
CVRP that uses FILO0. Variant G-VND-ISC is the integration of ISC to
G-VND and G-FILO0-ISC is the integration of ISC to G-FILO0.
All algorithms 1 were coded in C++ and compiled using Intel oneAPI
DPC++/C++ Compiler, Boost 1.78 library [36], and Twigy library [37]. The
experiments were run on an Intel Xeon Gold 6130 CPU, running at 2.10
GHz, with 64 GB of RAM, on a Rocky Linux 8.5 Operating System. The
experiments for G-VND and G-VND-ISC were run on four parallel cores.
The experiments for G-FILO0 and G-FILO0-ISC were run on a single core.
Because of the randomized nature of the GRASP algorithm, we executed
each experiment 10 times, with a different random seed, and reported the
average gap (GAP) of the solution found, with respect to the best-known
solution (BKS), as shown below.
1
All algorithms are available at https://github.com/mesax1/ISC-CVRP
21
GRASP
N Number of customers of the instance.
Γ Execution time limit for GRASP in seconds.
|RCL| = 10 Size of the restricted candidate list.
FILO0
∆f = 100 ∗ C Number of core optimization iterations of FILO0.
T0 , Tf Initial and final simulated annealing temperature.
ωbase = |ln|C|| Initial shaking intensity of ruin procedure.
ILB = 0.375 Lower bound of the shaking factors.
IU B = 0.85 Upper bound of the shaking factors.
ISC
θ = 0.25 ∗ Γ Training time limit in seconds.
λp = 15% Percentage of the solutions with the lowest cv to be labeled as promising solutions.
λu = 50% Percentage of the solutions with the highest cv to be labeled as unpromising solutions.
Random Forest
slmin = 1 Minimum number of samples at a leaf node.
dmax = 3 Maximum depth to which a tree is grown.
ssmin = 2 Minimum number of samples for a node to be split.
fmax = 8 Maximum number of randomly selected features to be considered at each split.
ismin = 0.00 Minimal impurity value for a node to be considered for another split.
ne = 100 Number of decision tree estimators to use as classifiers.
4.1. Parameters
The parameters used in the different algorithms of this work are sum-
marized in Table 3. The values of some of them were selected from the
algorithms found on the literature (i.e., FILO0), while others were tuned
when considering the performance on the small instances of dataset X. For
ease of notation, N represents the number of customers of each instance.
22
|Dtrain |
promising weight =
(2 ∗ |promising solutions|)
and
|Dtrain |
unpromising weight =
(2 ∗ |unpromising solutions|)
23
4.2. Results
Figure 1: Comparison of the performance of MSM using VND local-search with and without
ISC.
24
25
26
27
6. Conflicts of Interest
The authors declare that there are no conflicts of interest regarding the
publication of this paper.
7. Acknowledgments
The authors acknowledge supercomputing resources made available by
the Universidad EAFIT scientific computing center (APOLO) to conduct
the research reported in this work, and for its support for the computational
experiments. The authors would like to thank Luca Accorsi for providing
access to FILO code, and guidance in how to turn it into the simplified FILO0
variant. Additionally, the authors would like to thank Alejandro Guzmán
and Sebastián Pérez for their help during the early stages of the heuristics
implementation. Finally, the first author is grateful to Universidad EAFIT
for the PhD Grant from project 974-000005.
References
[1] F. Arnold, K. Sörensen, What makes a vrp solution good?
the generation of problem-specific knowledge for heuris-
tics, Computers & Operations Research 106 (2019) 280–288.
doi:https://doi.org/10.1016/j.cor.2018.02.007.
URL https://www.sciencedirect.com/science/article/pii/
S0305054818300315
[2] F. Lucas, R. Billot, M. Sevaux, K. Sörensen, Reducing space search in
combinatorial optimization using machine learning tools, in: International
Conference on Learning and Intelligent Optimization, Springer, 2020, pp.
143–150. doi:https://doi.org/10.1007/978-3-030-53552-0_15.
[3] F. Arnold, K. Sörensen, Knowledge-guided local search for the vehicle
routing problem, Computers & Operations Research 105 (2019) 32–46.
doi:https://doi.org/10.1016/j.cor.2019.01.002.
URL https://www.sciencedirect.com/science/article/pii/
S0305054819300024
28
[8] W. Kool, H. van Hoof, J. Gromicho, M. Welling, Deep policy dynamic pro-
gramming for vehicle routing problems, arXiv preprint arXiv:2102.11756
(2021). doi:https://doi.org/10.48550/arXiv.2102.11756.
[9] E.-G. Talbi, Machine learning into metaheuristics: A survey and taxon-
omy, ACM Computing Surveys (CSUR) 54 (6) (2021) 1–32. doi:https:
//doi.org/10.1145/3459664.
29
[13] L. Breiman, Random forests, Machine learning 45 (1) (2001) 5–32. doi:
https://doi.org/10.1023/A:1010933404324.
30
31
[28] A. Hottung, K. Tierney, Neural large neighborhood search for the ca-
pacitated vehicle routing problem, in: 24th European Conference on
Artificial Intelligence (ECAI 2020), 2020.
[30] P. H. Swain, H. Hauska, The decision tree classifier: Design and potential,
IEEE Transactions on Geoscience Electronics 15 (3) (1977) 142–147.
doi:10.1109/TGE.1977.6498972.
32
33
34
X-n172-k51 45607 0.363 0.361 2.85 1.725 1.675 2.85
X-n176-k26 47812 1.952 2.072 2.92 3.245 3.129 2.92
X-n181-k23 25569 0.084 0.079 3.00 1.162 1.079 3.00
X-n186-k15 24145 0.212 0.139 3.08 1.214 1.187 3.08
X-n190-k8 16980 0.358 0.346 3.15 2.151 2.047 3.15
X-n195-k51 44225 0.402 0.373 3.23 1.994 1.974 3.23
X-n200-k36 58578 0.775 0.775 3.32 2.803 2.770 3.32
X-n204-k19 19565 0.492 0.480 3.38 2.717 2.659 3.38
X-n209-k16 30656 0.312 0.256 3.47 2.287 2.260 3.47
X-n214-k11 10856 1.138 1.099 3.55 2.917 2.777 3.55
X-n219-k73 117595 0.100 0.090 3.63 0.126 0.113 3.63
35
X-n331-k15 31102 0.492 0.416 11.00 3.324 3.132 16.50
X-n336-k84 139111 0.938 0.923 11.17 2.326 2.255 16.75
X-n344-k43 42050 0.976 0.912 11.43 2.944 2.888 17.15
X-n351-k40 25896 1.113 1.014 11.67 2.560 2.512 17.50
X-n359-k29 51505 0.860 0.795 11.93 2.318 2.284 17.90
X-n367-k17 22814 0.768 0.750 12.20 3.527 3.385 18.30
X-n376-k94 147713 0.063 0.058 12.50 0.342 0.339 18.75
X-n384-k52 65940 0.823 0.804 12.77 2.319 2.244 19.15
X-n393-k38 38260 0.749 0.737 13.07 2.486 2.376 19.60
X-n401-k29 66154 0.622 0.605 13.33 1.855 1.763 20.00
X-n411-k19 19712 1.141 1.157 13.67 3.759 3.579 20.50
36
X-n701-k44 81 923 1.061 1.031 35 2.208 2.189 116.67
X-n716-k35 43 373 1.583 1.534 35.75 2.777 2.693 119.17
X-n733-k159 136 187 0.777 0.775 36.6 1.602 1.592 122.00
X-n749-k98 77 269 1.417 1.401 37.4 2.146 2.121 124.67
X-n766-k71 114 417 0.936 0.893 38.25 2.629 2.518 127.50
X-n783-k48 72 386 1.356 1.312 39.1 3.256 3.216 130.33
X-n801-k40 73 311 0.621 0.605 40 2.921 2.878 133.33
X-n819-k171 158 121 1.303 1.307 40.9 3.915 3.906 136.33
X-n837-k142 193 737 0.990 0.994 41.8 2.730 2.714 139.33
X-n856-k95 88 965 0.466 0.466 42.75 2.196 2.184 142.50
X-n876-k59 99 299 1.151 1.136 43.75 1.791 1.784 145.83