robust vehicle routing under uncertainty via branch-price
TRANSCRIPT
Robust Vehicle Routing under Uncertainty via
Branch-Price-and-Cut
Akang Wang1,2, Anirudh Subramanyam1,2,3, and Chrysanthos E. Gounaris∗1,2
1Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PA 15213
2Center for Advanced Process Decision-making, Carnegie Mellon University, Pittsburgh, PA 15213
3Mathematics and Computer Science Division, Argonne National Laboratory, Lemont, IL 60439
Abstract
This paper contemplates how branch-price-and-cut solvers can be employed along with the
robust optimization paradigm to address parametric uncertainty in the context of vehicle routing
problems. In this setting, given postulated uncertainty sets for customer demands and vehicle
travel times, one aims to identify a set of cost-effective routes for vehicles to traverse, such that
the vehicle capacities and customer time window constraints are respected under any antici-
pated demand and travel time realization, respectively. To tackle such problems, we propose a
novel approach that combines cutting-plane techniques with an advanced branch-price-and-cut
algorithm. Specifically, we use deterministic pricing procedures to generate “partially robust”
vehicle routes and then utilize robust versions of rounded capacity inequalities and infeasible
path elimination constraints to guarantee complete robust feasibility of routing designs against
demand and travel time uncertainty. In contrast to recent approaches that modify the pric-
ing algorithm, our approach is both modular and versatile. It permits the use of advanced
branch-price-and-cut technologies without significant modification, while it can admit a variety
of uncertainty sets that are commonly used in robust optimization but could not be previously
employed in a branch-price-and-cut setting.
Keywords: vehicle routing, demand uncertainty, travel time uncertainty, robust optimiza-
tion, branch-price-and-cut, robust rounded capacity inequalities, infeasible path elimination
constraints
∗Corresponding author: [email protected]
1
1 Introduction
The vehicle routing problem (VRP) is one of the most highly studied combinatorial optimization
problems in the areas of supply chains and distribution logistics. The classic setting is the one
where, given a distribution center, a fleet of vehicles and a group of customers to be served, we aim
to identify a set of minimum-cost routes for vehicles to traverse, such that customer demands are
satisfied and applicable system constraints, including vehicle capacities, delivery time windows, and
route duration limits, among others, are respected. For the past a few decades, many researchers
have dedicated their efforts towards the development of exact and heuristic approaches for solving
VRPs [51]. For the larger part, these studies assume that all the information necessary to instantiate
the corresponding routing problems is known and readily available at the time of decision making. In
practice, however, this assumption does not usually hold due to the uncertainty around the problem
parameters. For example, vehicle travel times can vary due to unexpected events, such as vehicle
breakdowns, or due to factors incuding traffic congestion and bad weather, which sometimes might
be hard to accurately forecast. Making routing decisions while ignoring parameter variability can
potentially cause either cost-prohibitive routing designs or failure to satisfy service commitments.
Hence, it is of great importance for the distributor to take uncertainty into account at the route
planning stage.
The work of [19] identified three types of uncertainty sources that are commonly found in
VRP applications: customer demands, travel/service times, and customer orders. The customer
demand uncertainty applies in a situation where the amount of product that is delivered (or picked
up) at customers are random. The travel/service times are subject to change due to unpredicted
events, e.g., weather conditions, and hence are often not known with precision at the moment
the distributor is designing routes. Finally, customer order uncertainty reflects settings when the
distributor may receive unanticipated orders from customers, which have to be incorporated in
the delivery plan after the original routes have been committed upon. For a treatment of how to
incorporate customer order uncertainty in the context of a robust multi-period routing setting in
which customers might call-in to place orders after the routes have been designed, we refer to [47].
In this work, we focus on customer demand and vehicle travel time uncertainty, which are the two
types of parametric uncertainty most often contemplated in the context of branch-price-and-cut
algorithms.
2
Most contributions for tackling VRPs with uncertainty in demands and travel times employ the
stochastic programming [12] paradigm. The latter considers customer demands and/or vehicle travel
times as random variables that follow a given probability distribution. The work of [19] surveyed
existing research efforts using stochastic programming and classified them into three main modeling
frameworks. The most common one is to model the routing problem under uncertainty as a two-
stage optimization problem: routing decisions are made a priori in the first stage, while in the
second stage, uncertainty is gradually revealed and recourse actions are taken so as to fulfill service
commitments that otherwise would not have been met; hence, this approach is usually referred to
as a priori optimization. The second framework is the re-optimization approach. Its key feature is
that routing decisions are made dynamically in order to benefit from the fact that the information
related to uncertain parameters is revealed over time. The third one is the chance-constrained
approach, which ensures that the feasibility of a routing design is achieved above a prespecified
probability threshold. We refer interested readers to [19] for a comprehensive discussion on these
approaches.
The stochastic programming paradigm is a natural choice when dealing with uncertainty, but
it might suffer from two main shortcomings, namely information availability and tractability. The
former refers to cases where the probability distribution governing the uncertain parameters is
either not available or not known precisely at the decision-making moment. At the same time,
tractability might become an issue when there is a large number of random variables, making
the task of optimization coupled with numerical integration (i.e., many scenarios) prohibitive to
carry out. An alternative paradigm is that of robust optimization (RO) [9], which might be a
promising approach for treating uncertainty in some VRP applications. This approach only assumes
that uncertain parameters are random variables falling into a postulated set, and it seeks for the
optimal routing design that is immunized against all anticipated parameter realizations from that
set. Usually, this uncertainty set can be constructed with probabilistic confidence using historical
data. Within the realm of RO, there are many settings in which the computational tractability
is preserved compared with their deterministic counterparts [9]. In this work, we opt for the RO
paradigm to a priori design cost-effective routes that are immunized against infeasibility caused by
variability in customer demands and vehicle travel times. For convenience, we refer to the routing
problems of our interest as robust vehicle routing problems.
3
In recent years, there has been a growing focus in tackling robust VRPs exactly. The work of [50]
considered an RO approach for the capacitated vehicle routing problem (CVRP) with uncertainty
in demand, anticipating however that each customer’s demand may attain its maximum value
simultaneously, leading to an overly conservative formulation. In the work of [22], the authors
considered the robust CVRP with customer demands being supported on a generic polyhedron, and
they derived and compared robust counterparts of several deterministic CVRP formulations. The
computational studies showed that embedding their proposed robust rounded capacity inequalities
into the classic vehicle flow formulation [28] is the most effective method to address the robust
CVRP under demand uncertainty. To deal with travel time uncertainty, the work of [1] applied the
classic dualization technique for RO. This initial work yielded a large formulation that was difficult
to solve for instances with more than 20 customers. Prominent contributions were later made
by [2], in which the authors proposed two novel techniques to handle travel time variability, the
column-and-constraint generation [52] and the cutting-plane method. The former method initially
only considers a subset of anticipated scenarios and then gradually selects and introduces some
neglected extreme scenarios via appending both variables and constraints. This process iterates
until the returned route design is robust feasible with respect to all anticipated scenarios. The
cutting-plane method ensures the immunity of a routing solution by dynamically separating and
enforcing infeasible path elimination constraints. The computational studies in [2] showed that
these two techniques have comparable performance in terms of solving robust VRPs with time
windows. The column-and-constraint generation approach was also employed in the work of [3] for
the treatment of travel time uncertainty in a maritime inventory routing application.
All the aforementioned works are utilizing the popular arc-based formulation, which includes
polynomially many binary variables and is thus solved by the branch-and-cut method. In the
realm of deterministic problems, the route-based formulation (a.k.a. set-partitioning formulation)
is becoming more and more popular due to its tight linear programming (LP) relaxation. This
formulation has exponentially many binary variables, each representing the selection of a feasible
vehicle route. The resulting LP relaxation at each branch-and-bound node is thus solved by column
generation [32], which simply starts with a subset of feasible vehicle routes and entails the solution of
pricing subproblems to dynamically introduce any neglected feasible routes that have the potential
to reduce the objective value. The pricing subproblem is commonly modeled as a shortest path
4
problem with resource constraints (SPPRC) and can be solved efficiently via dynamic programming.
For details, we refer the reader to [24]. Strengthening constraints are usually incorporated to tighten
the LP relaxation, and hence the solution approach for route-based formulations is referred to as a
branch-price-and-cut (BPC) method. For the past decade, considerable progress has been made in
the development of BPC algorithms [14], and today the BPC algorithm has emerged as the state-
of-the-art exact approach for addressing deterministic VRPs [51]. In this work, we aim to explore
and compare the different applicable avenues for extending the state-of-the-art deterministic BPC
framework to solve robust VRPs.
Whereas lots of literature has been devoted on how to address deterministic VRPs via BPC
algorithms, there have been only a few works combining RO with BPC to tackle VRPs under
uncertainty. To the best of our knowledge, the first attempt was made in [29]. The authors focused
on the robust VRP with deadlines under demand and travel time uncertainty and proposed a novel
approach that is able to directly encapsulate demand and/or travel time variability into pricing
subproblems. This approach was recently revisited and improved by [33] for solving the robust
VRP with time windows under demand and/or travel time uncertainty. In both works, the pricing
subproblem is formulated as a robust shortest path problem with resource constraints (RSPPRC) [4],
for generating routes that are robust feasible with respect to demand and/or travel time variability.
The authors of the above works demonstrated that the resulting RSPPRC could be efficiently
solved when uncertain parameters are supported on the commonly used cardinality-constrained
uncertainty set [11]. To handle robust VRPs with demand uncertainty, another approach was
proposed in [31] and [38], where the authors transformed a RSPPRC into polynomially many
deterministic SPPRCs, avoiding the burden of solving the RSPPRC directly. The latter work
showed that the transformation could be achieved for two popular polyhedral uncertainty sets from
the RO literature, namely the cardinality-constrained set and the budget set.
Although the above two literature approaches exhibit promising computational tractability,
they heavily exploit the structures of uncertainty sets and hence can not be generalized to many
uncertainty sets commonly used in the RO literature (e.g., ellipsoidal sets). Therefore, it is of great
necessity to develop a new approach that can work for solving robust VRPs under various, general
types of uncertainty sets. [22] and [2] proposed the cutting-plane idea to enforce robust feasibility
and embedded it into a branch-and-cut framework for addressing robust VRPs with uncertainty
5
in demands and travel times, respectively, while the authors of [20] adopted a similar approach
for solving the distributionally robust chance-constrained vehicle routing problem. These works
have demonstrated the versatility of cutting planes in handling several classes of uncertainty sets.
Recently, the work of [15] integrated the cutting-plane idea into a BPC framework for solving the
chanced-constrained vehicle routing problem with stochastic demands. This motivates us to develop
a generic approach of combining cutting-plane techniques with the deterministic BPC algorithm,
so as to address robust VRPs under a variety of uncertainty sets.
The distinct contributions of our work can be summarized as follows.
• We propose a novel BPC algorithm to address robust VRPs under demand and travel time
uncertainty. Our algorithm embeds cutting-plane techniques into the deterministic BPC
framework. In particular, we utilize deterministic pricing routines to generate partially ro-
bust feasible routes, and then dynamically separate robust rounded capacity inequalities and
infeasible path elimination constraints to guarantee the immunity of a routing design against
infeasibility due to variability in demands and travel times, respectively. We demonstrate
that separating these inequalities can be done efficiently for all classes of uncertainty sets
that have been introduced in the literature to-date.
• We provide an overview of existing methods from the literature that have demonstrated
success in extending BPC algorithms for the solution of robust VRPs. We then compare these
literature approaches with our own approach in terms of (i) which uncertain parameters and
uncertainty sets they can accommodate, (ii) the time complexity of their underlying pricing
subproblems, and (iii) the tightness of their LP relaxations, demonstrating the applicability
and limitations of each approach.
• We derive tight upper bounds on the number of non-dominated extreme points of the cardinality-
constrained and factor model uncertainty sets. Their relatively small value justify the tractabil-
ity of tailored approaches for these sets that implicitly enumerate these points.
• We evaluate our algorithm on instances of robust VRPs with uncertainty in customer de-
mands and vehicle travel times, both separately and jointly, over five classes of uncertainty
sets, namely cardinality-constrained sets, budget sets, factor models, ellipsoids, and discrete
sets. Our computational studies illustrate that the proposed approach is versatile and compet-
6
itive against current state-of-the-art approaches. In particular, for previously open literature
instances, we are able to certifiably close the gap in 56 cases and improve upon 8 best-known
solutions.
The remainder of the paper is organized as follows. In Section 2, we give a formal problem
definition, while in Section 3, we present the various uncertainty sets we utilize in this study. In
Section 4, we study several polyhedral uncertainty sets from a geometric perspective, reducing
them to equivalent discrete sets. A brief overview of the BPC algorithm for solving deterministic
VRPs is given in Section 5. In Section 6, we summarize the existing approaches from the literature
and propose a new one for adapting BPC algorithms to address robust VRPs. Section 7 presents
computational results on the BPC algorithm’s performance. Finally, we conclude our work in
Section 8.
2 Problem Definition
The robust vehicle routing problem with time windows (RVRPTW) is defined on a directed graph
G = (V,A), where V := Vc ∪ 0, n + 1 denotes the set of nodes, which is composed of a set
of customers Vc := 1, 2, . . . , n, the origin depot 0 and the destination depot n + 1, while A :=
(i, j) ∈ V × V : i 6= j, i 6= n+ 1, j 6= 0 \ (0, n + 1) is the set of arcs. We consider a fleet of K
identical vehicles of capacity Q ∈ R>0, initially located at the origin depot. Every used vehicle
can only leave the origin depot after time 0 and has to return to the destination depot by time
H. Customer i ∈ Vc has a demand qi ∈ R>0 that has to be delivered during a given time window
indicated by [ei, `i]. A vehicle is allowed to wait, if it arrives at customer i before ei, while arriving
after `i is prohibited. For convenience, each depot node i ∈ 0, n + 1 is also associated with a
time window such that ei = 0 and `i = H. Service at customer i ∈ Vc must start during the
corresponding time window and takes time of si ∈ R≥0. Let cij ∈ R≥0 and tij ∈ R≥0 represent
the cost and time, respectively, for a vehicle to traverse arc (i, j) ∈ A. In this work, we consider
the demand vector q and/or the travel time vector t as uncertain. They may independently take
any value from postulated uncertainty sets Q and T , respectively. A feasible vehicle route, r =
(0, v1, v2, . . . , vp, n+ 1), starts from the origin depot and ends at the destination depot such that:
(C1) each customer is visited at most once (i.e., an elementary route);
7
(C2) the vehicle capacity constraint is respected under any customer demand realization q ∈ Q,
that is,p∑i=1
qvi ≤ Q for all q ∈ Q; and
(C3) the time window constraints are satisfied under any travel time realization t ∈ T , that is,
ai(t) ≤ `i for all i ∈ v1, v2, . . . , vp, n + 1 and for all t ∈ T , where ai(t) denotes the earliest
service start time at node i under scenario t.
We refer to (C2) and (C3) as the robust capacity feasibility and the robust time window feasibility
conditions, respectively. The objective is to determine the cost-effective feasible routes for vehicles
to traverse, such that each customer is visited exactly once and no more than K vehicles are used.
The above defined problem can be reduced to the well-studied deterministic vehicle routing
problem with time windows (VRPTW), if Q and T are both singleton sets. Additionally, it an be
reduced to the robust capacitated vehicle routing problem (RCVRP), if the time window constraints
(C3) are neglected.
3 Uncertainty Sets
In this section, we review uncertainty sets that are commonly used in the RO literature to model
demand and travel time uncertainty in VRP applications. In particular, we consider five demand
uncertainty sets and two travel time time uncertainty sets. These sets can be categorized into five
groups: cardinality-constraint sets, budget sets, factor models, ellipsoidal sets and discrete sets.
3.1 Cardinality-Constrained Sets
The first set we consider for modeling demand uncertainty is the cardinality-constrained set, as
shown in Equation (1).
QG :=
q ∈ Rn : qi = q0
i + qi ξi ∀i ∈ 1, 2, . . . , n ,n∑i=1
ξi ≤ Γq, ξ ∈ [0, 1]n
(1)
Here, q0 ∈ Rn>0, q ∈ Rn≥0 and Γq ∈ [0, n] are parameters that need to be specified by the modeler.
This uncertainty set stipulates that each customer demand qi can deviate upwards by up to qi from
its nominal value, q0i , and that the sum of the relative deviations of all customers is bounded from
above by Γq. In particular, at most bΓqc of these demands may achieve their maximum deviations.
This uncertainty set was originally proposed in [11] and is also often referred to as a “budgeted” or
8
“gamma” uncertainty set. This set has been used widely to model customer demand uncertainty
in the VRP literature [29, 33, 38, 48].
The cardinality-constrained set is also often used to model travel time uncertainty, as shown in
Equation (2).
TG :=
t ∈ R|V |×|V | : tij = t0ij + tij ξij ∀(i, j) ∈ A,∑
(i,j)∈A
ξij ≤ Γt, ξij ∈ [0, 1]|V |×|V |
(2)
Here, t0ij ∈ R≥0 and tij ∈ R≥0, for all arcs (i, j) ∈ A, as well as Γt ∈ [0, |A|] are parameters that need
to be specified by the modeler. This set stipulates that the time tij for traversing arc (i, j) ∈ A can
deviate upwards by up to tij from its nominal value, t0ij , and that the sum of relative deviations of
all arcs is bounded from above by Γt. In particular, at most bΓtc of these travel times may achieve
their maximum deviations. This set has also been widely used for VRP aplications [3, 29, 33].
3.2 Budget Sets
Consider the demand uncertainty set of the following form (3).
QB :=
q ∈ Rn : qi≤ q ≤ qi ∀i ∈ 1, 2, . . . , n ,
∑i∈B`
qi ≤ b` ∀` ∈ 1, 2, . . . , L
(3)
Here, q ∈ Rn>0, q ∈ Rn>0, B` ⊆ Vc and b` ∈ R>0 for ` ∈ 1, 2, . . . , L are parameters chosen by the
modeler such that (i) the customer subsets B` are pairwise disjoint, i.e., B` ∩B`′ = ∅ for all ` 6= `′;
(ii) b` ≤∑
i∈B`qi for ` ∈ 1, 2, . . . , L; and (iii) QB 6= ∅. The uncertainty set (3) stipulates that
a customer demand qi can deviate within an interval [qi, qi] and that the total demand in every
customer set B` is bounded from above by b`. This uncertainty set was originally proposed in the
work of [22] to model demand uncertainty and was subsequently also used in [21, 38, 48].
3.3 Factor Model Sets
Consider the demand uncertainty set of the following form (4).
QF :=
q ∈ Rn : q = q0 + Ψξ, −βF ≤F∑f=1
ξf ≤ +βF, ξ ∈ [−1, 1]F
(4)
Here, q0 ∈ Rn≥0, F ∈ N,Ψ ∈ Rn×F≥0 and β ∈ [0, 1] are parameters that need to be specified by the
modeler. The uncertainty set (4) stipulates that the customer demand vector q results from adding
9
a disturbance of Ψξ to the nominal demand vector q0. This disturbance is a linear combination
of independent factors, ξ1, ξ2, . . . , ξF , which reside in an F -dimensional polytope. This set was
originally proposed in the work of [22] to model demand uncertainty, and was later also considered
in [21, 48].
3.4 Ellipsoidal Sets
Consider the demand uncertainty set of the following form (5).
QE :=q ∈ Rn :
(q − q0
)>Σ−1
(q − q0
)≤ 1. (5)
In the above set, q0 ∈ Rn≥0 and Σ ∈ Sn++ are the parameters that need to be specified by the modeler;
here, we use Sn++ to represent the set of positive definite matrices. The uncertainty set (5) stipulates
that the customer demand vector q can only attain values in an ellipsoid centered at the nominal
demand vector q0. This set was originally proposed by [48] to model customer demand uncertainty
in the context of routing a heterogeneous fleet. We emphasize that QE is not a polyhedral set,
representing a feasible region dictated by nonlinear constraints.
3.5 Discrete Sets
Consider the demand uncertainty set of the following form (6).
QD := conv(qd : d = 1, 2, . . . , Dq
), (6)
where conv(·) denotes the convex hull of a finite set of points. Here, q1, q2, . . . , qDq ∈ Rn≥0 are a
total of Dq ∈ N modeler-specified scenarios for the uncertain customer demands. The uncertainty
set (6) stipulates that the customer demand vector may realize to any value corresponding to a
convex combination of the specified demand scenarios. This set was originally proposed in the work
of [48] to model uncertain customer demands in the context of routing a heterogeneous fleet.
We can also define a discrete set for the travel time vector t, as shown in (7).
TD := conv(td : d = 1, 2, . . . , Dt
). (7)
Here, t1, t2, . . . , tDt ∈ R|A|≥0 are Dt ∈ N distinct scenarios of the uncertain travel times that need to
be specified by the modeler. The uncertainty set (7) was originally proposed in [45].
10
4 Polyhedral Studies
In this section, we study the extreme points of polyhedral sets QG and QF and then reduce each
set to an equivalent discrete set of the form QD. We do not consider the polyhedral set QB because
the resulting discrete set can be of exponential size. Before proceeding, we first present some
observations and a definition.
Observation 1. If the demand uncertainty set Q is compact and convex, then we can equivalently
replace Q by Ext(Q) in condition (C2), where Ext(Q) denotes the set of extreme points of Q.
Proof. Clearly, Ext(Q) ⊆ Q. We only need to show that, for any route r = (0, v1, v2, . . . , vp, n+ 1)
such thatp∑i=1
qvi ≤ Q for all q ∈ Ext(Q), it also holds thatp∑i=1
q′vi ≤ Q for all q′ ∈ Q. This
is true, owing to the fact that any point q′ ∈ Q can be expressed as a convex combination of
points q ∈ Ext(Q), and hence, the former inequalities collectively imply any inequality of the latter
form.
Observation 1 simply implies that the demand uncertainty set Q can be reduced to the set of
its extreme points, Ext(Q). Note that, if Q is a polytope, Ext(Q) is a finite set. Furthermore, if Q
has a favorable structure, one may be able to precisely characterize Ext (Q).
Definition 1. A demand vector q ∈ Q is said to dominate another vector q′ ∈ Q \ q ifp∑i=1
qvi ≥p∑i=1
q′vi, for every route r := (0, v1, v2, . . . , vp, n+ 1) satisfying (C1), (C2) and (C3). Conversely,
a vector q′ is said to be non-dominated if there is no q ∈ Q \ q′ for which this condition holds.
The immediate implication from Definition 1 is that, if the vehicle capacity constraint along
a route r is respected under demand scenario q, then it is also respected under any scenarios
dominated by q. It is obvious that q ≥ q′ (element-wise) is a sufficient condition for this dominance
relationship to hold.
Observation 2. If the demand uncertainty set Q is compact and convex, then we can equivalently
replace Q by Ext(Q) in condition (C2), where Ext(Q) ⊆ Ext(Q) denotes the set of non-dominated
points of Ext(Q).
Proof. This deduces readily by combining Observation 1 with Definition 1.
11
One may also replace the travel time uncertainty set T by the set of its extreme points, Ext (T ),
and define a similar dominance relationship. In the following, we derive upper bounds on∣∣Ext(QG)
∣∣and
∣∣Ext(QF )∣∣, noting that a similar result could also be obtained for the case of set TG. We use
the following well-known result on extreme points of knapsack polytopes.
Lemma 1 (Proposition 10 in [23]). Suppose a ∈ Rm>0 and b ∈ R satisfy ai ≤ b, for i ∈ 1, 2, . . . ,m,
and a1 +a2 + . . .+am > b. Then, x is an extreme point of P :=x ∈ [0, 1]m : a>x ≤ b
if and only
if there exist index sets I0, I1 ⊆ 1, 2, . . . ,m such that I0 ∩ I1 = ∅, |I0 ∪ I1| ≥ m − 1,∑i∈I1
ai ≤ b,
aj > b−∑i∈I1
ai for j ∈ 1, 2, . . . ,m \ (I0 ∪ I1), and
xj =
0, if j ∈ I0,
1, if j ∈ I1,(b−
∑i∈I1
ai
)/aj if j /∈ I0 ∪ I1.
Proposition 1 (Non-dominated points of cardinality-constrained sets).
∣∣Ext(QG)∣∣ ≤
(nΓq
)if Γq ∈ N,
(n− bΓqc)(nbΓqc)
otherwise.
(8)
Proof. For the cardinality-constrained set QG, the demand vector q results from an affine trans-
formation of ξ ∈ ΞG; that is, q = q0 + diag (q1, . . . , qn) ξ, where diag (·) denotes a diagonal matrix,
and ΞG is the following polyhedral set:
ΞG :=
ξ ∈ [0, 1]n :
n∑i=1
ξi ≤ Γq
.
Therefore, each ξ ∈ Ext(ΞG) maps to an extreme point q = q0 +diag (q1, . . . , qn) ξ such that q ∈
Ext(QG). If Γq = n, QG is a hyper-box; hence, Ext(QG) becomes a singleton (i.e.,∣∣Ext(QG)
∣∣ = 1)
and the stated bound holds. Otherwise, the set Ext(ΞG) can be characterized by applying Lemma 1
with m = n, ai = 1, b = Γq, and P = ΞG. |Ext(ΞG)| is then precisely the number of index sets
I0, I1 ⊆ 1, 2, . . . , n satisfying the conditions of the Lemma. Among these, we only need to count
those which satisfy |I1| = bbc = bΓqc since other choices would result in extreme points of ΞG that
map to dominated points of QG. Indeed, if I1 defining some ξ ∈ Ext(ΞG) satisfies∣∣I1
∣∣ < bΓqc, then
the extreme point ξ∗ ∈ Ext(ΞG) defined by I∗1 = I1 ∪ j for some arbitrary j ∈ 1, . . . , n \ I1
12
satisfies ξ∗j = 1 > ξj ; that is, ξ∗ ≥ ξ leading to a dominant point q∗ ≥ q since all qi are non-negative.
If Γq is integral, then by the same reasoning, we only need to count those index sets I0, I1 such that
|I0|+|I1| = n; otherwise, we must have |I0|+|I1| = n−1 with exactly one fractional component that
must be chosen among n− bΓqc components. This leads to the statement of the proposition.
Proposition 2 (Non-dominated points of factor model sets).
∣∣Ext(QF )∣∣ ≤
(F
(F+βF )/2
)if βF ∈ N and F + βF is an even number,
F−bβF c2
(F
(F+bβF c)/2)
if βF /∈ N and F + bβF c is an even number,
F−bβF c+12
(F
(F+bβF c−1)/2
)if F + bβF c is an odd number.
(9)
Proof. For the factor model set QF , the demand vector q results from an affine transformation of
ξ ∈ ΞF ; that is, q = q0 −Ψe + 2Ψξ, where e ∈ RF is a vector of ones, and ΞF is the polytope:
ΞF :=
ξ ∈ [0, 1]F : (F − βF )/2 ≤F∑f=1
ξf ≤ (F + βF )/2
.
Therefore, each ξ ∈ Ext(ΞF ) maps to an extreme point q = q0−Ψe+2Ψξ such that q ∈ Ext(QF ). To
characterize Ext(ΞF ), note that for β = 1, ΞF is a hyper-box; hence, Ext(QF ) becomes a singleton
(i.e.,∣∣Ext(QF )
∣∣ = 1) and the stated bound holds. Otherwise, for any extreme point ξ ∈ Ext(ΞF ):
(i) exactly one of the inequalities bounding∑F
f=1 ξf is active at ξ, and (ii) ξj < 1 for at least one
j ∈ 1, . . . , F. Therefore, for any extreme point ξ ∈ Ext(ΞF ) at which the lower inequality is
active,∑F
f=1 ξf = (F − βF )/2, we can construct ξ∗ ∈ ΞF such that the upper inequality is active,
and for which ξ∗j > ξj ; that is, ξ∗ ≥ ξ leading to a corresponding dominant point q∗ ≥ q since
Ψ ∈ Rn≥0.
In other words, we can follow precisely the same reasoning as in Proposition 1, to characterize
Ext(ΞF ) by applying Lemma 1 with m = F , ai = 1, b = (F + βF )/2, and P = ξ ∈ [0, 1]F :∑Ff=1 ξf ≤ (F + βF )/2. This leads to the following bound, analogous to (8):
∣∣Ext(QF )∣∣ ≤
(
F(F+βF )/2
)if (F + βF )/2 ∈ N,
(F − b(F + βF )/2c)(
Fb(F+βF )/2c
)otherwise.
Note that (F + βF )/2 ∈ N if and only if βF ∈ N and F + βF is an even number, leading to the
first case of (9). Otherwise, if (F + βF )/2 /∈ N, then note that b(F + βF )/2c = b(F + bβF c)/2c.
13
Furthermore, if F + bβF c is an even number, then the latter becomes (F + bβF c)/2, while we also
have that (F −b(F +βF )/2c) = (F −bβF c)/2, leading to the second case of (9); if F + bβF c is an
odd number, then b(F +bβF c)/2c = (F +bβF c−1)/2 and (F −b(F +βF )/2c) = (F −bβF c+1)/2,
leading to the third case of (9).
These results imply that, in theory, QG and QF can be reduced to equivalent discrete sets of
the form QD. In the case of QG, Proposition 1 indicates that the size of the resulting set grows
polynomially with the number of customers n (Γq being fixed). Nevertheless, this size can still
become impractical even for moderate values of n that may be encountered in practice. In contrast,
Proposition 2 indicates that the equivalent discrete set for QF has a size that is independent of n,
and it depends only on the number of factors F which is typically much smaller than n. In such
cases, the equivalent set QD could be of manageable size and one might be able to convert a robust
VRP with the demand uncertainty set QF to the one with an equivalent discrete set QD.
5 Branch-Price-and-Cut
Before we present the solution approaches to the RVRPTW, we will first discuss the use of BPC
for solving its deterministic counterpart, the VRPTW. We remark that, over recent years, the
BPC method has been gradually accepted as the most efficient exact approach for solving the
VRPTW and its variants. In this section, we only highlight the most important ingredients of
the BPC algorithm, referring readers to [35, 37] for many of the details behind the state-of-the-art
implementations.
5.1 Set-Partitioning Model
Let R denote the set of feasible routes for a VRPTW, and let cr denote the cost of traversing route
r ∈ R by each of K homogeneous vehicles. Let the parameter δir denote the number of times
customer i ∈ Vc is covered in route r ∈ R. Let λr be a binary variable indicating whether route
r ∈ R is selected or not in the optimal solution. The VRPTW can be formulated as the following
14
set-partitioning model (10)–(13).
minλr
∑r∈R
crλr (10)
s.t.∑r∈R
δirλr = 1 ∀i ∈ Vc (11)
∑r∈R
λr ≤ K (12)
λr ∈ 0, 1 ∀r ∈ R (13)
The objective function (10) calls for minimizing the cumulative cost of all selected routes. The
degree constraints (11) guarantee that every customer is served exactly once, while the fleet size
constraint (12) enforces that no more than the available vehicles are used. Finally, constraints (13)
simply enforce the binarity of the route selection variables.
It is well-known that, without sacrificing optimality, we may relax the feasible space of the
above set-partitioning model by including in R non-elementary vehicle routes (i.e., by relaxing
condition C1). In particular, we replaceR with the set of so-called ng-routes that are not necessarily
elementary [8]. In the remainder of this paper, we use R to denote the set of ng-feasible routes.
We emphasize that both capacity feasibility and time window feasibility are ensured implicitly by
including only feasible routes in the set R.
Since there exist exponentially many feasible routes, the formulation (10)–(13) is a mixed-integer
linear programming model with a huge number of binary variables. To address this issue, the LP
relaxations at each node of the branch-and-bound tree are tackled via column generation [32].
Furthermore, valid inequalities can be dynamically separated and added to strengthen the LP
relaxations, yielding a BPC algorithm for addressing the set-partitioning model. In the following
subsection, we discuss the specifics of such an algorithm.
5.2 Algorithm Overview
In the BPC algorithm, we first replace the binarity constraints (13) in the set-partitioning model by
non-negativity constraints and obtain the LP relaxation, which is usually referred to as the master
problem. However, as generating all of the ng-feasible routes to explicitly define the master problem
is obviously impractical, we work with a restricted master problem (RMP) defined by a subset of
ng-routes R ⊆ R, and we resort to column generation. More specifically, after optimizing the RMP,
15
columns with negative reduced costs are appended to R and the resulting RMP is reoptimized.1
This procedure iterates until no such columns exist. In that case, column generation has converged
and the master problem has achieved its optimality. If the solution to the master problem is
fractional, we then proceed by adding valid inequalities or by branching. In particular, rounded
capacity inequalities [28] and limited-memory subset row cuts [26, 34, 35] are often considered to
tighten the LP relaxations. In terms of branching, doing so on the number of used vehicles (left-
hand side of 12) is usually prioritized over branching on edges [17, 42].
5.3 Pricing Subproblems
After the RMP is solved, we check whether it is necessary to enlarge R by including some ne-
glected ng-feasible routes that may potentially improve the RMP’s objective value. This entails
identifying columns with negative reduced costs, which is achieved by solving a pricing subproblem.
In our context, the pricing subproblem can be modeled as a shortest path problem with resource
constraints (SPPRC) [39]. The SPPRC is defined on a directed graph G = (V,A). We associate
demand qi, capacity Q and a time window [ei, `i] with vertex i ∈ V . Note that qi = 0, if vertex i
denotes a depot. Associated with each arc (i, j) ∈ A are a travel time tij and a cost cij . This cost is
obtained by properly modifying cij , in order to account for the contribution from current dual values
to constraints (11) and (12). While arc (i, j) ∈ A is traversed by a path, time resource (si + tij) and
capacity resource qj are consumed, and the paths should be constructed such that the accumulated
consumptions of each and every resource do not exceed their corresponding limits. The goal of the
SPPRC is to determine the minimum-cost path among all such paths that start from the vertex 0
and end at the vertex n+ 1. It is well-known that the SPPRC is weakly NP-hard [16]. The most
successful solution approach is the labeling algorithm, a dynamic programming method that has a
pseudo-polynomial time complexity [39]. The labeling algorithm works as follows. We associate an
ng-feasible partial path P with a label L(P ) := (pred(P ), c(P ), v(P ),Π(P ), d(P ), a(P )) that stores
a pointer to its predecessor label, reduced cost, end vertex, a set of forbidden vertices, total vehicle
load, and earliest time to start servicing. We initialize the labeling algorithm by storing the first
label (null, 0, 0, ∅, 0, 0) into a pool. Choosing a label L(P ) from the pool, we attempt to extend it
to vertex j ∈ V \ Π(P ) with (v(P ), j) ∈ A, in order to generate a new label P ′. To achieve this
1In our context, columns denote ng-feasible routes, and the two terms are used interchangeably.
16
extension, we use the following procedure (14)–(19).
pred(P ′)← L(P ), (14)
c(P ′)← c(P ) + cv(P )j , (15)
v(P ′)← j, (16)
Π(P ′)← Π(P ) ∩NG(j) ∪ j , (17)
d(P ′)← d(P ) + qj , (18)
a(P ′)← maxej , a(P ) + sv(P ) + tv(P )j
, (19)
where NG(j) ⊆ Vc denote the ng-set for node j. Usually, the ng-set is chosen to be the set of
nearest neighbors as suggested by [8]. Before storing label L(P ′) to the pool, we check whether this
is a feasible extension in terms of respecting the resource consumption constraints; that is, whether
d(P ′) ≤ Q and a(P ′) ≤ `j . If that is the case, we obtain a new ng-feasible label and store it in the
pool; otherwise, we proceed with other applicable label extensions. When no more label extensions
can be made, we collect all paths that end at vertex n+ 1 and return those with negative reduced
costs.
To accelerate the labeling algorithm, it is crucial to utilize dominance relationships to avoid
non-interesting label extensions. To that end, before storing a new ng-feasible label, we first check
whether it dominates (or is dominated by) existing labels stored in the pool. We say that a label
L(P1) dominates another label L(P2) if, for any feasible path extended from L(P2), we can always
find a feasible path extension from L(P1) and this extended path is no more costly. Sufficient
conditions for this are given by (20)–(24).
c(P1) ≤ c(P2), (20)
v(P1) = v(P2), (21)
Π(P1) ⊆ Π(P2), (22)
d(P1) ≤ d(P2), (23)
a(P1) ≤ a(P2). (24)
A newly generated ng-feasible label, L(P ), is saved only if it is not dominated. Furthermore, when
L(P ) is saved, any existing labels that are dominated by it are removed from the pool. Since
checking for a dominance relationship can be computationally expensive, it is important to not
17
perform this too aggressively. Usually, labels of proximity in resource consumption levels are saved
into a bucket and dominance is checked only among labels residing in the same (or neighboring)
buckets [35, 43].
As long as the pricing subproblem is solved exactly, one can obtain a Lagrangian dual bound [32].
When the primal-dual gap becomes small, it is advisable to apply a route enumeration step [7, 13],
in which one may identify all elementary columns with reduced costs less than the primal-dual gap,
since only these columns may contribute to a solution better than the incumbent. This step works in
a similar fashion as the aforementioned labeling algorithm, with only a couple of notable exceptions:
(i) the extension rule (17) is updated to Π(P ′)← Π(P ) ∪ j, so as to produce elementary routes;
(ii) sufficient conditions (20) and (22) are replaced by (25) and (26), respectively.
c(P1) ≤ c(P2), (25)
Π(P1) = Π(P2), (26)
where c(P ) denote the actual monetary cost for traversing path P .
In order to further expedite the labeling algorithm, various advanced pricing techniques, such
as heuristic pricing [18], bidirectional labeling [40], and variable fixing [25], among others, have
also been proposed. Furthermore, if strengthening inequalities are incorporated to the RMP, then
proper modifications have to be made when solving the SPPRC [35]. Finally, we remark that
various techniques, including primal heuristics [44], stabilized column generation [36], dynamic ng-
set [41], and strong branching [43] have also been considered to improve overall performance. We
refer readers to [37] for details on these techniques.
6 Incorporating Uncertainty in Branch-Price-and-Cut
In this section, we first review two existing approaches in the literature for adapting the BPC
algorithm to solve robust VRPs under uncertainty. Both of these approaches can be categorized as
robust pricing approaches, aiming to ensure the robust feasibility of routing designs in the pricing
subproblems. We then introduce the intrisically different robust cutting-plane approach, which
seeks robust feasibility via dynamically enforcing necessary constraints in the master problems.
Notably, our new approach can tackle VRPs under all types of uncertainty sets we discussed in
Section 3. For notational convenience, let R denote the set of robust ng-feasible routes with respect
18
to any realization (q, t) ∈ Q × T ; that is, for any route r ∈ R, the robust feasibility conditions
(C2) and (C3) are satisfied.
6.1 Robust Pricing Approach
The robust pricing approach is based on the set-partitioning model (10)–(13) but replaces the set of
deterministic ng-feasible routes R with that of the robust ng-feasible routes R. The BPC algorithm
remains largely the same, the only exception being that the resulting pricing subproblem becomes a
robust shortest path problem with resource constraints (RSPPRC), in order to dynamically introduce
robust ng-feasible routes. Thus, the robust feasibility of the optimal routes is ensured when these
routes were first generated via pricing subproblems. We remark that the RSPPRC under resource
uncertainty is strongly NP-hard for arbitrary uncertainty sets [4]. In the following, however,
we review two literature methods that have demonstrated success in solving the RSPPRC under
specific uncertainty sets from Section 3.
6.1.1 Direct Pricing
We first focus on cardinality-constrained uncertainty sets QG and TG. To tackle the RVRPTW
in which the uncertain demand vector q and uncertain travel time vector t fall into respective
cardinality-constrained sets, QG and TG, the authors of [33] proposed a modified labeling algorithm
to directly solve the resulting RSPPRC, leading us to refer to this approach as direct pricing. We
remark that the approach of [33] considered only the case of integral Γq and Γt, but below we
present it in the context of the more general case. Their proposed labeling procedure is similar to
the deterministic counterpart we discussed in Section 5.3 but with the following three modifications:
(i) for a given path P , the labeling notation is redefined as L(P ) :=(pred(P ), c(P ), v(P ),
Π(P ), d0(P ), d1(P ), . . ., ddΓqe(P ), a0(P ), a1(P ), . . ., adΓte(P )), where the first four labels
retain the same meanings as before, while for the remaining ones we have: dγ(P ) (where
γ ∈ 0, 1, . . . , dΓqe − 1) denotes the maximum total vehicle load along path P when up
to γ customer demands attain their maximum values; ddΓqe (P ) denotes the maximum total
vehicle load when the cumulative relative deviation does not exceed Γq; aγ(P ) (where γ ∈0, 1, . . . , dΓte − 1
) denotes the worst-case earliest time to start servicing node i, considering
that up to γ travel times attain their maximum values; and adΓte (P ) denotes the worst-case
19
earliest time when the cumulative relative deviation does not exceed Γt;
(ii) when extending a path P to some node j, creating a new path P ′, the extension procedures
(18)–(19) are replaced by (27)–(32),
d0(P ′)← d0(P ) + q0j , (27)
dγ(P ′)← max dγ(P ), dγ−1(P ) + qj+ q0j ∀γ ∈ 1, 2, ..., dΓqe − 1 , (28)
ddΓqe(P′)← max
ddΓqe(P ), ddΓqe−1(P ) + (Γq − dΓqe+ 1) qj
+ q0
j , (29)
a0(P ′)← maxej , a0(P ) + sv(P ) + t0v(P )j
, (30)
aγ(P ′)← maxej ,max
aγ(P ), aγ−1(P ) + tv(P )j
+ sv(P ) + t0v(P )j
∀γ ∈
1, 2, ..., dΓte − 1
,
(31)
adΓte(P′)← max
ej ,max
adΓte(P ), adΓte−1(P ) +
(Γt − dΓte+ 1
)tv(P )j
+ sv(P ) + t0v(P )j
,
(32)
and hence, the resulting label P ′ can be accepted as a feasible extension only if ddΓqe(P′) ≤ Q
and adΓte(P′) ≤ `j ; and
(iii) sufficient conditions (23) and (24) for checking dominance should be respectively replaced by
conditions (33) and (34),
dγ(P1) ≤ dγ(P2) ∀γ ∈ 0, 1, . . . , dΓqe, (33)
aγ(P1) ≤ aγ(P2) ∀γ ∈ 0, 1, . . . , dΓte. (34)
The direct pricing method could effectively solve the RSPPRC due to the fact that, for demand
uncertainty set QG and/or travel time uncertainty set TG, one can efficiently compute the maximum
vehicle load and/or worst-case earliest service start time along a path by introducing(dΓqe+ dΓte
)extra relevant resources into a deterministic SPPRC and keeping track of their consumption. In
particular, every path-extending operation can be achieved in O(dΓqe+ dΓte
)time. The immediate
implication from the dominance rules (33) and (34) is that, when compared with the deterministic
case, path P1 is “less likely” to dominate path P2 due to more restrictive sufficient conditions. As
a result, more labels will be kept and processed in the modified labeling algorithm, on average,
causing an increase in its time complexity.
20
We also remark that the direct pricing idea can be readily applied when the demand and/or
travel time vector are assumed to attain realizations from the discrete sets QD × TD. Correspond-
ingly, the pricing subproblem entails the enforcement of(Dq +Dt
)resource constraints. Similarly,
the path-extending operation could be achieved in O(Dq +Dt
)time. Meanwhile, as also pointed
out above, one would expect a time complexity increase of the modified labeling algorithm. This
implies that, for a discrete set QD × TD that consists of a large number of scenarios (in either the
demand or travel time side), solving the corresponding RSPPRC via a direct pricing method will
become prohibitive.
6.1.2 Transformed Pricing
In this section, we consider that the travel time vector t is constant (i.e., set T is a singleton) and
that the customer demand vector q can take any value from a non-empty knapsack set, QK , given
by
QK :=
q ∈
[q, q]
:∑i∈Vc
a`iqi ≤ b`,∀` ∈ 1, 2, . . . , L
, (35)
where a`i ≥ 0, for i ∈ Vc, and ` ∈ 1, 2, . . . , L. Note that this knapsack set is a more general
uncertainty set and can be reduced to (i) QG, when q = q0, q = q0 + q, L = 1, a1i = 1/qi, and
b1 = Γq +∑
i∈Vc q0i /qi; (ii) QB, when a`i = 1i∈B`.
The work of [38] focused on how to solve a robust VRP with knapsack uncertainty of the
form (35) via the BPC approach. For this setting, the authors presented an important proposition,
which we reframe below to aid readers understand how the robust feasibility of the generated routes
is ensured in the transformed pricing approach.
Proposition 3 (Equivalent to Theorem 1 in [38]). If Q := QK and T is a singleton, then solving
the RSPPRC is equivalent to solving at mostL∑=0
(L`
)(nL−`)
deterministic SPPRCs.
Proof. For an elementary route r ∈ R, the robust capacity feasibility condition (C2) is satisfied,
as shown by (36).
maxq∈QK
∑i∈Vc
δirqi ≤ Q (36)
Considering the definition of set QK and replacing q by q+η, where 0 ≤ η ≤ q−q, we can represent
21
the left-hand side of inequality (36) as the LP problem (37).
maxη≥0
∑i∈Vc
δir
(qi+ ηi
)s.t. ηi ≤ qi − qi ∀i ∈ Vc∑
i∈Vc
a`iηi ≤ b` −∑i∈Vc
a`iqi ∀` ∈ 1, 2, . . . , L
(37)
Since QK is a non-empty and bounded set, strong duality holds for problem (37). Introducing dual
variables z ∈ Rn≥0 and ϑ ∈ RL≥0, we obtain its dual as the LP problem (38).
minz≥0,ϑ≥0
∑i∈Vc
δirqi +∑i∈Vc
(qi − qi
)zi +
L∑`=1
(b` −
∑i∈Vc
a`iqi
)ϑ`
s.t. zi +L∑`=1
a`iϑ` ≥ δir ∀i ∈ Vc
(38)
Clearly, for the minimizer (z∗, ϑ∗) of the above problem, we have that
z∗i = max
0, δir −
L∑`=1
a`iϑ∗`
= max
0, 1−
L∑`=1
a`iϑ∗`
δir, (39)
where the last equality holds because δir ∈ 0, 1 and a`i ≥ 0.
Using the expression (38), we can eliminate variables z from problem (38) and obtain the
equivalent problem (40).
minϑ≥0
∑i∈Vc
(qi+(qi − qi
)max
0, 1−
L∑`=1
a`iϑ`
)δir +
L∑`=1
(b` −
∑i∈Vc
a`iqi
)ϑ`
(40)
Let f(ϑ; r) denote the objective function of problem (40). A key observation is that f(ϑ; r) is a con-
vex piecewise linear function along the domain RL≥0, while since by construction b`−∑
i∈Vc a`iqi ≥ 0,
we have that limϑ`→+∞
f(ϑ; r) = +∞ for all ` ∈ 1, 2, . . . L; thus, f(ϑ; r) achieves its minimum at
some breaking point ϑ′ ∈ RL≥0. Let Θ ⊆ RL≥0 denote the set of breaking points, each of which can
be identified as a solution to a subsystem of L linearly independent equations among the following
L+ n equations:
ϑ` = 0 ∀` ∈ 1, 2, . . . , L ,
1−L∑`=1
a`iϑ` = 0 ∀i ∈ Vc.
Note that |Θ| ≤L∑=0
(L`
)(nL−`).
22
For a ϑ ∈ Θ, let Rϑ denote the set of routes such that, for any route r ∈ Rϑ, we have (i) ng-
feasibility is satisfied;2 (ii) the time window constraints are respected along this route; (iii) f(ϑ; r) ≤
Q.3 The robust feasibility of a route r ∈ R implies that f(ϑ∗; r) ≤ Q for some ϑ∗ ∈ Θ. As a
result, we have that r ∈ Rϑ∗ , and thus, R ⊆⋃ϑ∈Θ
Rϑ. Conversely, given a route r ∈⋃ϑ∈Θ
Rϑ, let
ϑ∗ := argminϑ∈Θ
f(ϑ; r). Then, ϑ∗ is the the optimal solution of the linear program (40). As a result,
we have that r ∈ R, and thus,⋃ϑ∈Θ
Rϑ ⊆ R. Therefore, we conclude that R =⋃ϑ∈Θ
Rϑ, leading to
at most |Θ| deterministic SPPRCs that have to be solved.
Proposition 3 indicates that solving an RSPPRC can be transformed into solving polynomially
many deterministic SPPRCs.4 Hence, we refer to this approach as transformed pricing. At this
point, we provide the following remarks:
1. The resulting SPPRC has roughly the same time complexity as the one we discussed in
Section 5.3, since condition (iii) for the definition of Rϑ is enforced exactly like a capacity
constraint.
2. The number of transformed SPPRCs increases polynomially, but not mildly, with the number
of customers n. In particular, if the demand vector q is supported on a general knapsack
support QK , solving the RSPPRC via the transformed approach will still be impractical for
relatively large n values.
3. For QK := QG, we have |Θ| ≤ n,5 while for QK := QB, we have |Θ| ≤ 2L. This indicates that
the RSPPRC under uncertainty sets of the form QG or QB is weakly NP-hard and that one
can efficiently solve the relevant RSPPRC via the transformed pricing method, as succesfully
done in [31] and [38].
2Relaxing the elementary condition (C1) is again permitted due to the degree constraints (11).3f(ϑ; r) ≤ Q can be properly mapped as a capacity constraint in the resulting SPPRC defined by ϑ. More
specifically, a demand of
(qi
+(qi − q
i
)max
0, 1−
L∑=1
a`iϑ`
)is assigned to customer i ∈ Vc and the vehicle
capacity becomes Q−L∑=1
(b` −
∑i∈Vc
a`iqi
)ϑ`.
4The number of deterministic SPPRCs that have to be solved might be reduced if, for example, one can deduce
that Rϑ′= ∅ for some ϑ′ ∈ Θ. Readers are referred to [38] for details.
5This bound can be further tightened to⌈(n− Γq) /2
⌉+ 1, when Γq is integral (see [30]).
23
6.2 Robust Cutting-Plane Approach
Another avenue to ensure robust feasibility of routing designs is through cutting planes. Let Q ⊆ Q
and T ⊆ T denote finite sets, and let R denote the set of ng-feasible routes with respect to any
realization (q, t) ∈ Q × T ; that is, for route r = 0, v1, v2, . . . , vp, n+ 1 ∈ R:
p∑i=1
qvi ≤ Q for all q ∈ Q, and
ai(t) ≤ `i for all i ∈ v1, v2, . . . , vp, n+ 1 and for all t ∈ T ,
where ai(t) denotes the earliest service start time at node i under scenario t. Based on this
definition, we observe the following: (i) R ⊆ R, that is, all robust feasible routes are included
within R; (ii) since capacity feasibility and time window feasibility are only ensured against a
subset of anticipated scenarios, robust feasibility conditions (C2) and (C3) are not guaranteed
yet. In order to forbid the selection of routes r ∈ R \ R in the optimal solution, we rely on
the enforcement of necessary constraints in the master problem. In particular, we utilize robust
rounded capacity inequalities (robust RCI) and infeasible path elimination constraints (IPEC) to
ensure robust capacity feasibility and robust time window feasibility, respectively. Since the number
of necessary constraints is exponentially many, these constraints are separated and introduced
dynamically at every node of the branch-and-price process. Hence, we refer to this as a robust
cutting-plane approach. We emphasize that adding these necessary constraints to an RMP will
not complicate the solution of pricing subproblems, because their corresponding dual values can be
properly accommodated into the modified arc cost in the SPPRC.
To summarize, our BPC algorithm starts with a subset of vehicle routes (not necessarily robust
feasible) and iteratively introduces some neglected routes via solving the deterministic SPPRC
under finitely many resource constraints, each corresponding to an element from Q or T . When
column generation converges, IPEC and robust RCI are separated and added to the RMP to prohibit
solutions that are not robust feasible. Next, we will discuss two key aspects of our cutting-plane
approach, namely how to construct sets Q and T , as well as how to separate IPEC and robust RCI.
24
6.2.1 Constructing Q and T
Since both Q and T are compact and convex sets, we can replace them by Ext (Q) and Ext (T ),
respectively.6 Thus, our goal is to construct Q and T such that Q ⊆ Ext (Q) and T ⊆ Ext (T ),
respectively. When Q and T contain more scenarios, routes generated in pricing subproblems are
“more likely” to be robust feasible, and consequently, less effort will be made to separate nec-
essary constraints. However, pricing subproblems correspondingly become computationally more
expensive, since the time complexity of an SPPRC generally increases with the number of resource
constraints that are enforced. Next, we encapsulate a proper number of selected demand and travel
time scenarios (denoted by NSq and NSt) into Q and T , respectively, so as to balance the efforts of
solving pricing subproblems and separating necessary constraints.
• QG. We use the k-means clustering method to partition the customer set Vc into NSq clusters
based on their coordinates. We can now focus on a given cluster and generate an ordered list of
customers such that they are sorted by their worst-case demands in descending order. In case
the cluster contains fewer than dΓqe elements, we augment the list by inserting (in sorted
order) customers from other clusters, starting with those exhibiting the largest worst-case
demand in their cluster, and continuing with those exhibiting the second largest worst-case
demand, and so on, until the list contains a total of dΓqe elements. Once the final ordered
list is obtained, we assign ξi = 1 to the first bΓqc customers in this sorted list, ξi = Γq − bΓqc
to its last customer (only when Γq not an integer), and ξi = 0 to all other customers, yielding
a demand scenario q∗. Clearly, q∗ ∈ Ext (QE). By repeating this procedure focusing on a
different cluster each time, we can obtain up to NSq different extreme demand scenarios. Let
Q be the set of these scenarios.
• QB. We sort customers from each partitioned set B` by their worst-case demands in de-
scending order. We fix the demands for higher-ranking and lower-ranking customers at their
upper and lower bounds, respectively, and allow exactly one customer demand to take a value
within its bounds, such that the the budget constraint is active. This yields a scenario q∗.
One can easily show that q∗ ∈ Ext (QB). Taking the reverse direction, we fix the demands for
6One may be only interested in Q ⊆ Ext (Q)[T ⊆ Ext (T )
]. However, given an extreme point q ∈ Ext (Q)
[t ∈ Ext (T )], it is generally not convenient to determine whether q [t] is dominated or not by any other scenario from
Ext (Q) [Ext (T )].
25
lower-ranking and higher-ranking customers at their upper and lower bounds, respectively.
Considering all possible combinations among different customer subsets B`, we have in total
2L scenarios. We sort them, in descending order, by the number of customer demands that
have achieved their upper bounds. Let Q be the set of the first NSq scenarios.
• QF . In the proof of Proposition 2, we have identified the set Ext (QF ). We sort the elements
of Ext (QF ) in descending order according to their cumulative customer demands. Let Q be
the set of the first NSq scenarios.
• QE . We consider the maximization of a weighted sum of customer demands qi that is subject
to q ∈ QE ∩q ∈ Rn : q ≥ q0
. For this, we choose 1/q0
i to be the weight corresponding to
each qi. Optimizing this problem will yield an extreme demand vector q∗ that dominates q0.
To obtain additional extreme scenarios, the randomly shuffled list
1/q0j
j∈Vc
is used as the
ordered list of weights and the resulting problem is re-optimized. In total, we generate NSq
scenarios. Let Q be the set of those.
• QD. We first eliminate from QD any scenarios that are either dominated or are not extreme
points (e.g., by checking each one via solving a linear program) and then sort the remaining
scenarios by the total customer demands in descending order. Let Q be the set of the first
NSq scenarios. Clearly, Q ⊆ Ext (QD).
• TG. We begin by ranking all feasible arcs (i, j) ∈ A based on the following ordered criteria:
(i) whether the arc is connecting to the depot, i.e., being an arc of the type (0, j); (ii) the
traversal cost cij . Then, we assign ξij = 1 to the first bΓtc arcs, ξij = Γt − bΓc to the next
one in the list, and ξij = 0, to any remaining arcs, yielding a travel time scenario t∗. Clearly,
t∗ ∈ Ext (TG). Replacing the depot by some customer node in criterion (i) above, we may
repeat the same procedure to obtain a new extreme travel time scenario. In total, we generate
NSt scenarios. Let T be the set of those.
• TD. We first eliminate from TD any scenarios that are either dominated7 or are not extreme
points and then sort the remaining scenarios by the total arc traversal time in descending
order. Let T be a set of the first NSt scenarios. Clearly, T ⊆ Ext (TD).
7We use the fact that t dominates t′, if t ≥ t′.
26
We can now empirically adjust the time complexity of pricing subproblems by simply controlling
NSq and NSt, the number of resource constraints that have to be enforced in the pricing step.
6.2.2 Robust Rounded Capacity Inequalities
For notational convenience, we introduce arc-based variables xij , for each (i, j) ∈ A, and relate it
to route-based variables λr, as shown by (41).
xij =∑r∈R
τijrλr ∀(i, j) ∈ A (41)
To ensure the robust feasibility of selected routes against demand uncertainty, the authors of [22]
and [48] proposed to enforce robust RCI (42) in a branch-and-cut framework.
∑i/∈S
∑j∈S
xij ≥
⌈1
Qmaxq∈Q
∑i∈S
qi
⌉∀S ⊆ Vc (42)
In this work, we adopt the same idea but enforce it in the context of BPC. We now focus on the
RCI separation routine. Let xij be the arc variable values corresponding to the optimal routes
of an RMP solution. When all xij values are integral, one can simply loop through all vehicle
routes and check whether robust capacity feasibility is satisfied or not. In contrast, the exact
separation of robust RCI at a fractional solution is an NP-complete problem, since separating its
deterministic counterpart is itself NP-complete [6]. Hence, solving the separation problem exactly
is computationally prohibitive, and we resort to heuristic methods.
The work of [22] proposed a tabu search algorithm to identify violated robust RCI whenQ := QB
or Q := QF . The authors of [48] extended this to every demand uncertainty set presented in
Section 3, and here we adopt the separation routines from that work. In particular, the separation
procedure starts with a randomly selected customer set S ⊆ Vc and then iteratively perturbs this set
through a sequence of operations in which individual customers are added or removed. For this, we
maintain tabu lists of customers that have recently been added or removed to avoid cycling and to
escape local optima. At each iteration, the separation algorithm greedily chooses a customer whose
inclusion or removal maximizes the slack of the robust RCI (42). Computing this slack requires the
computation of the right-hand side, which in turn, requires the efficient evaluation of the worst-
case demand over the current candidate set of customers S, i.e., maxq∈Q
∑i∈S
qi. Generally speaking,
maximizing a linear objective over a convex set has a polynomial-time complexity [10]. Fortunately,
27
for those convex uncertainty sets of our interest, this problem can be optimized analytically in
roughly linear time by exploiting the structure of the given uncertainty set. Furthermore, since
the set S results from perturbing another set S′ by adding or removing only a single customer,
we can apply quick incremental or decremental updates and obtain the worst-case demand for S′
from its counterpart for S, which is more efficient than computing it from scratch. For the exact
closed-form expressions, time and storage complexities, as well for implementation details of how
to compute the worst-case demand of a given customer set S under each of the demand uncertainty
sets presented in Section 3, the readers are referred to [48].
We remark that, when the travel time vector t is deterministic, i.e., T is a singleton, sufficient
conditions (21) and (23)–(26) for claiming dominance of a path P1 over path P2 during route
enumeration are still valid.8 Their certification comes from the fact that, if P1 dominates P2, then
both paths cover exactly the same customer set (condition 26), and hence, the vehicle loads are
equal under any demand realization q ∈ Q. After route enumeration, only those routes that are
robust feasible are kept for consideration.
6.2.3 Infeasible Path Elimination Constraints
In applications of routing with time windows, infeasible path elimination constraints [27] are often
introduced to forbid routes along which time window conditions are violated. Let a sequence of
vertices P = (v1, v2, . . . , vp) denote an elementary path, and let AP ⊆ A denote the set of arcs
that are traversed along path P . Note that path P does not necessarily start or end at a depot.
Furthermore, let P denote the set of paths that are deemed infeasible with respect to time window
constraints. One can simply forbid these paths via enforcing IPEC given by (43).
∑(i,j)∈AP
xij ≤ |AP | − 1 ∀P ∈ P (43)
It is well-known that, due to the degree constraints (11), one can further lift IPEC to tournament
inequalities [5]. In particular, we replace the subscript of the summation with (i, j) ∈ tr.cl.(P ),
where tr.cl.(P ) denotes the transitive closure of path P . This so-called tournament form of the
inequality is stronger than the version presented above, hence we always do so in the remainder
8This was also pointed out in [37], in which capacity inequalities were enforced as necessary constraints when
solving the VRPTW via a BPC algorithm.
28
of our paper. To tackle the RVRPTW, the work of [2] applied IPEC within the branch-and-cut
framework to forbid those routes along which time window constraints are violated. In this work,
we adopt the same idea, enforcing them in the BPC framework.
In regards to IPEC separation, we note that it is trivial at any integral solution, while at a
fractional solution, it can be shown that there are polynomially many paths P for which inequal-
ities (43) are violated [5]. These paths can be easily detected by a simple enumeration procedure
for the case of an uncertainty set of the form TG. In particular, the algorithm starts with choosing
i ∈ V as a root node and then runs a depth-first search for extending paths. If a violated tour-
nament inequality is found for some path P ′, we then check whether time window feasibility is
respected (i.e., P ′ ∈ P) under any travel time realization t ∈ TG. This can be achieved in O(dΓte
)time, using proper data structures similar to the ones in Section 6.1.1. In our implementation, we
use the enumeration procedure to identify all violated infeasible paths and only forbid those if they
are minimal infeasible.9
One can simply extend the above separation routine to the case of a discrete support TD. Using
proper data structures, checking the time window feasibility along a path takes O(Dt) time. We
emphasize that, if travel times are variable, sufficient conditions (21) and (23)–(26) for claiming
dominance are no longer valid,10 since they cannot suffice the dominance relationship between P1
and P2 for some realization t ∈ T \ T . Thus, route enumeration is turned off in this case.
6.3 Approach Comparison
We have discussed two distinct approaches for adapting the BPC algorithm to solve robust VRPs
under demand and travel time uncertainty. The robust pricing approach guarantees robust fea-
sibility of routing designs in pricing subproblems, while the robust cutting-plane approach seeks
for robust feasibility via dynamically enforcing necessary constraints in master problems. To solve
the resulting pricing subproblem in the former, we have synopsized two existing methods from
the literature, the direct pricing method and the transformed pricing method. To apply cutting
planes dynamically in the latter, we have discussed efficient separation routines. In this section, we
9An infeasible path P = (v1, v2, . . . , vp) is said to be minimal infeasible if the truncated subpaths defined by
AP \ (v1, v2) and AP \ (vp−1, vp) are feasible [27].10Our previous work [49] also pointed this out in a similar situation where path inequalities were dynamically
enforced as necessary constraints in the context of solving the VRPTW variant via a BPC algorithm.
29
compare these two approaches in a number of important aspects.
• Uncertainty sources. Both approaches can deal with robust VRPs with uncertainty in
demands and travel times. We note that for both uncertainty sources, ensuring robust feasi-
bility of a routing design can be decomposed into ensuring the same for every single route.
Stated differently, if every vehicle route in the returned solution is robust feasible, so is the
whole routing design. However, for other types of uncertainty sources, such as the customer
order uncertainty we mentioned in Section 1, one may not be able to encapsulate the robust
feasibility condition into the pricing subproblems and instead has to enforce it explicitly in
the master problems (e.g., see [47]). In such a case, the robust cutting-plane approach might
become the only choice.
• Uncertainty sets. Compared with the robust pricing approach, the robust cutting-plane
approach is applicable to more general types of uncertainty sets. We synopsize in Table 1 the
applicability of each BPC algorithm to different types of uncertainty sets. A check mark “3”
indicates that the specific approach has been demonstrated to be applicable in the context of a
given uncertainty set, while a cross mark “7” denotes a case where this approach is not fit. To
the best of our knowledge, our robust cutting-plane approach can handle all popular classes of
uncertainty sets listed in Table 1, while the robust pricing approach has limited applicability.
Specifically, the transformed pricing method only works for two types of demand uncertainty
sets, while the direct pricing method is limited to three types of demand uncertainty sets. The
work of [15] has showed that the RSPPRC with an ellipsoidal set QE for demand uncertainty
is strongly NP-hard, and hence, the robust pricing approach is not suitable. As we have
pointed out, the direct pricing method will quickly become computationally prohibitive in
practice when the parameters Γq and Γt in QG and TG, or the number of scenarios Dq and
Dt in QD and TD, increase.
• Time complexity of pricing subproblems. The robust pricing approach always has to
solve instances of the RSPPRC as the pricing subproblems via either the direct or transformed
method. The former solves the RSPPRC directly in each pricing iteration, while the latter
transforms the RSPPRC into polynomially many deterministic SPPRCs. In either case, the
RSPPRC has a larger time complexity than the deterministic SPPRC. In contrast, the robust
30
Table 1. Applicability of different BPC algorithms under different uncertainty sets.
ApproachQ T
QG QB QF QE QD TG TD
Direct pricing 3 3 7 3 3 3
Transformed pricing 3 3 7
Robust cutting-plane 3 3 3 3 3 3 3
cutting-plane approach always solves a deterministic SPPRC of a controlled time complexity.
Specifically, one can choose a proper number of demand and/or travel time scenarios to define
the SPPRC so as to generate partially robust feasible routes.
• Tightness of LP relaxations. One can also apply robust RCI and IPEC as strengthening
constraints in the robust pricing approach. From this perspective, both approaches can be
viewed as using exactly the same formulation (i.e., the backbone set-partitioning model (10)–
(13) augmented with robust RCI and IPEC) noting that they are based on different route
sets, namely R and R. Given that R ⊆ R, the LP relaxation in the robust pricing approach
is always stronger. This implies that the robust pricing approach might solve a robust VRP
more effectively on the condition that the RSPPRC could be solved efficiently.
To summarize, our robust cutting-plane algorithm only entails the solution of deterministic
pricing subproblems to generate vehicle routes and relies on the enforcement of necessary constraints
in master problems to ensure robust feasibility of routing designs. Compared with the robust
pricing algorithm, our proposed approach has two distinctive advantages. Firstly, it is more widely
applicable, as it can readily deal with parameter variability related to customer demands and/or
vehicle travel times under any known type of uncertainty set, as shown in Table 1. Secondly, it is
more versatile, allowing us to proactively balance the effort between generating robust routes and
separating robustifying cuts. In particular, one is allowed to consider only a manageable number
of scenarios in the pricing step, adjusting its computational burden. This feature becomes crucial
when the resulting RSPPRC is strongly NP-hard (e.g., in the case of set QE), when the robust
pricing method is not practically viable.
31
7 Computational Studies
In this section, we test our proposed BPC algorithm on RCVRP and RVRPTW benchmark in-
stances and compare it against the existing methods from the literature. Our algorithm relies
on a deterministic BPC engine to generate vehicle routes and a cut generation routine to enforce
necessary constraints. In particular, we utilize VRPSolver 0.3 [37] as our BPC engine via its Julia
interface, in which all subordinate linear and mixed-integer linear programs were solved using the
IBM ILOG CPLEX Optimizer 12.9.0. The separation routines for IPEC and robust RCI were
implemented in C++ and compiled into a C library for use in Julia. The VRPSolver provides a
callback function for users to separate and add necessary constraints. The experiments were run
on an Intel Xeon E5-2689 v4 server running at 3.10 GHz with 128 GB of available RAM that was
shared among 10 copies of the algorithm running in parallel on the server. Each instance was solved
by one copy of the algorithm using a single thread. We compare our proposed algorithm against
the transformed pricing approach from [38] for solving RCVRP instances, as well as against the
direct pricing approach from [33] for solving RVRPTW instances. The authors of [38] ran their
experiments on an Intel Core i7-3770 3.40 GHz system, while [33] did so on an Intel Xeon E5-
2680 2.70 GHz system. According to https://www.cpubenchmark.net/singleThread.html, our
machine runs approximately 2.1 times faster than the former and 1.5 times faster than the latter.
7.1 Computational Results on RCVRP Instances
In this section, we evaluate our proposed algorithm on solving RCVRP instances under demand
uncertainty. We adapt the classic CVRP benchmark instances for generating RCVRP instances in
which the customer demands are supported on the various demand uncertainty sets from Section 3.
We consider five classes of CVRP instances, namely A, B, E, F, M, and P. These benchmark
instances are available at http://vrp.galgos.inf.puc-rio.br/index.php/en/. To be consistent
with the literature, when Q := QB or Q := QF , we consider 26 instances from class A, 23 instances
from B, 11 instances from E, 3 instances from F, 3 instances from M, and 24 instances from P, as [22]
did, while when Q := QG, we consider one extra instance from class A and two extra instances
from E, discarding one instance from P and two large-size instances from F and M, as [38] did. For
the cases of Q := QE and Q := QD, since no RCVRP benchmarks were available in the literature,
we considered the same instances from [22]. For each uncertainty set, there are 90 benchmarks
32
in total, with the number of customers ranging from 13 to 150. Following the convention in the
literature, every entry of the travel cost matrix is calculated from coordinates and then rounded
to the nearest integer. The customer demands specified in the original datasets are regarded to
be the nominal values q0. As [22] did, we partition the customer set Vc into four geographic
quadrants, NE, NW, SW, and SE, based on the customer coordinates reported in the datasets.
For each deterministic CVRP instance, we construct the following five types of uncertainty sets, as
described in the following.
(a) Cardinality-constrained set (originally proposed in [29])
QG :=
q ∈ Rn : qi = q0
i + αq0i ξi, ξi ∈ [0, 1] ∀i ∈ Vc,
∑i∈Vc
ξi ≤ Γq
.
This set stipulates that each customer’s demand can deviate upward from the nominal value
by at most α · 100%. As [38] did, we choose α = 0.3, Γq =⌊0.75n/K
⌋and modify the vehicle
capacities to be Q =⌊0.3Cmax + 0.7Cmin
⌋, where Cmax and Cmin are values available in the
appendix of [38].
(b) Budget sets (originally proposed in [22])
QB :=
q ∈
[(1− α)q0, (1 + α)q0
]:∑i∈Ω
qi ≤ (1 + αβ)∑i∈Ω
q0i ∀Ω ∈ NE,NW,SW,SE
.
This set stipulates that each customer’s demand can deviate from the nominal value by at
most α ·100%, but the cumulative demand of each quadrant may not exceed its nominal value
by αβ · 100%. As [22] did, we chose α = 0.1 and β = 0.5, while also increasing the vehicle
capacities by 20%.
(c) Factor models (originally proposed in [22])
QF :=
q ∈ Rn : q = q0 + Ψξ, ξ ∈ [−1, 1]4 ,
∣∣∣∣∣∣4∑
f=1
ξf
∣∣∣∣∣∣ ≤ 4β
.
Here, the disturbance term Ψξ is a linear combination of 4 factors, with each entry of the
matrix Ψ depending on the relative proximity of the corresponding customer to corresponding
quadrant’s centroid. More specifically, let Ψif = αq0i ψif/
∑4f ′=1 ψif ′ , where ψif denotes the
inverse distance between customer i and the centroid of quadrant f ∈ 1, 2, 3, 4. As [22] did,
we chose α = 0.1 and β = 0.5, while also increasing the vehicle capacities by 20%.
33
Using the reduction procedure described in the proof of Proposition 2, one can represent
Ext (QF ) as a discrete set with only 4 demand scenarios. In particular, these correspond to
(1, 1, 1, 0), (1, 1, 0, 1), (1, 0, 1, 1), (0, 1, 1, 1) ∈ Ext(ΞF ). Since the number of these scenarios is
small, we consider Q := Ext (QF ), which leads all routes generated from pricing subproblems
to be robust feasible, i.e., R = R. We remark that, in this case, our approach can be viewed
as an application of the direct pricing approach strengthened via cutting planes that are valid
in the robust setting.
(d) Ellipsoidal sets (originally proposed in [48])
QE :=q ∈ Rn :
(q − q0
)>Σ−1
(q − q0
)≤ 1.
Here, Σ = (1 − β)ΨΨ> + βdiag(αq0
1, αq02, . . . , αq
0n
), where Ψ is the same matrix as the one
defined above for set QF , while diag (·) denotes a diagonal matrix. We chose α = 0.1 and
β = 0.5, while increasing the vehicle capacities by 10%.
(e) Discrete sets (originally proposed in [48])
QD := conv(q0∪qd : d = 1, 2, . . . ,nint (βn)
).
Here, nint (βn) denotes the nearest integer to βn. The points qd are generated as uniform sam-
ples of the[(1− α)q0, (1 + α)q0
]hyper-rectangle. We choose α = 0.1, β = 0.2 and increase
the vehicle capacity by 10%.
To be consistent with the literature [21, 22, 38], the number of used vehicles is fixed to be the
fleet size K for the cases of sets QG, QB and QF , while the number of used vehicles should not
exceed K for the cases of sets QE and QD. In other words, we enforce equality for constraint (12) in
the former cases and a “less than” inequality in the latter. In what follows, we present synopsized
computational results of our proposed BPC algorithm for addressing RCVRP instances. The
detailed results are presented in the Appendix.
7.1.1 Set QG
For a fair comparison, we obtain from [38] the heuristic solution cost to each benchmark and use
it as an initial upper bound in our BPC algorithm. In our experiments, NSq was chosen to be
34
the fleet size K. We imposed a time limit of 2 hours for each instance and report in Table 2 the
consolidated results of our robust cutting-plane algorithm, comparing those against the reported
performance of the transformed pricing method from [38] (PPSV21). The column “Class” reports
the instance class, while the column “# inst.” reports the number of instances in this class. In
columns “# opt.”, “Avg. t (sec)” and “Avg. gap (%)”, we respectively report the number of
instances that were solved to optimality, the geometric mean solution time (rounded to the nearest
integer) for those solved instances, and the average residual gap for those instances for which the
algorithm was terminated due to the time limit but with valid lower and upper bounds identified.
Out of 90 RCVRP instances, our robust cutting-plane approach solved 37 of them to optimality
within an average solution time of 79 seconds, resulting in an average residual gap of 4.26% in the
remaining ones; the transformed pricing approach performed significantly better than our approach,
solving to optimality all but three instances. We remark that the superior performance of PPSV21
was expected in this case, since the robust pricing approach can transform the RSPPRC into a
small number (around 20 on average) of deterministic SPPRCs and thus efficiently generate robust
feasible routes in pricing subproblems.
Table 2. Computational results for our BPC algorithm on RCVRP instances under uncertainty set QG and
comparison with literature.
Class # inst.PPSV21 This work
# opt.Avg. t
(sec)
Avg. gap
(%)# opt.
Avg. t
(sec)
Avg. gap
(%)
A 27 27 19 – 11 262 4.79
B 23 20 70 1.65 5 278 4.81
E 13 13 28 – 7 11 4.03
F 2 2 223 – 2 101 –
M 2 2 108 – 0 – 2.44
P 23 23 11 – 12 53 3.05
All 90 87 26 1.65 37 79 4.26
35
7.1.2 Set QB
For a fair comparison, we obtain from [38] the heuristic solution cost to each benchmark and use
it as an initial upper bound in our BPC algorithm. In our experiments, NSq is chosen to be 2.
We imposed a time limit of 2 hours for each instance and report in Table 3 the consolidated
results of our robust cutting-plane algorithm, comparing those against the reported performance
of the transformed pricing method from [38] (PPSV21). Out of 90 RCVRP instances, our robust
cutting-plane approach solved 80 of them to optimality within an average solution time of 36
seconds, resulting in an average residual gap of 1.96% in the remaining ones; the transformed
pricing approach performed slightly better, solving 89 instance to optimality. Compared with the
branch-and-cut algorithm from [21, 22], our BPC algorithm solved 37 more instances to optimality,
which results from the fact that the route-based formulation (e.g., the set-partitioning model) has
a tighter LP relaxation than the arc-based formulation used in those previous studies.
Table 3. Computational results for our BPC algorithm on RCVRP instances under uncertainty set QB and
comparison with literature.
Class # inst.PPSV21 This work
# opt.Avg. t
(sec)
Avg. gap
(%)# opt.
Avg. t
(sec)
Avg. gap
(%)
A 26 26 3 – 23 50 1.48
B 23 23 6 – 20 75 2.06
E 11 11 11 – 10 38 0.76
F 3 2 833 0.89 2 36 4.81
M 3 3 154 – 1 32 1.72
P 24 24 1 – 24 14 –
All 90 89 5 0.89 80 36 1.96
7.1.3 Sets QF ,QE and QD
When Q := QF , we obtain from [21] the heuristic solution cost to each instance and use it as an
initial upper bound in the BPC algorithm, while for the cases of Q := QE and Q := QD, we run the
heuristics code from [48] with a time limit of 2 seconds and utilize the returned heuristic solution
36
value as an initial upper bound. For each instance, we chose NSq to be 4, 1 and 6 when Q := QF ,
QE and QD, respectively. We imposed a time limit of 2 hours for each instance and report the
consolidated computational results in Table 4. We remark that we do not present any comparisons
in this case, as no literature BPC approaches had been previously applied on these datasets.
Among the three sets, our robust cutting-plane algorithm performs the best under the factor
model set, QF , solving 85 out of 90 instances to optimality. This can be attributed to the fact that
every generated route in this case is guaranteed to be robust feasible, since we enforce Q := Ext (QF )
when defining pricing subproblems. As a consequence, the LP relaxation of the set-partitioning
model is tighter and our algorithm could solve RCVRP instances more efficiently in this case.
As expected, the BPC framework outperforms the branch-and-cut implementation from [21, 22],
solving 33 more instances to optimality. Our proposed algorithm performs roughly the same on
solving RCVRP instances when Q := QE and Q := QD, solving 76 and 72 instances, while resulting
in average residual gaps 3.69% and 3.35%, respectively.
Table 4. Computational results for our BPC algorithm on RCVRP instances under uncertainty sets QF ,
QE and QD.
Class # inst.QF QE QD
# opt.Avg. t
(sec)
Avg.
gap (%)# opt.
Avg. t
(sec)
Avg.
gap (%)# opt.
Avg. t
(sec)
Avg.
gap (%)
A 26 26 11 – 23 53 3.23 23 71 3.01
B 23 21 19 1.58 16 46 2.97 15 52 3.70
E 11 11 21 – 9 39 6.22 9 38 3.00
F 3 2 68 1.47 2 18 5.29 2 74 5.16
M 3 1 1,573 1.46 2 1,508 3.44 0 – 3.14
P 24 24 6 – 24 11 – 23 20 1.01
All 90 85 13 1.51 76 32 3.69 72 41 3.35
Through the above experiments on RCVRP instances, we can make the following observations:
1. The approach of embedding robust RCI into a deterministic BPC algorithm to address the
RCVRP is versatile and efficient for various types of demand uncertainty sets, including sets
QE and QD, for which existing approaches based on robust pricing are not applicable.
37
2. The transformed pricing approach demonstrated superior performance for RCVRP instances
when demands are realized from sets of the form QG and QB.
3. Embedding robust RCI into a BPC framework yields significantly better performance than
the case of branch-and-cut.
7.2 Computational Results on RVRPTW Instances
We now evaluate our proposed algorithm on solving RVRPTW instances under demand and/or
travel time uncertainty. We follow the same procedure from [33] to adapt Solomon datasets [46]
for generating RVRPTW instances, in which the customer demands and vehicle travel times are
considered uncertain and are postulated to realize from cardinality-constrained sets QG and TG,
respectively. The Solomon datasets include 100 customers and are classified according to the
spatial distribution of the latter into classes “C1” and “C2”, which correspond to clustered distri-
butions, classes “R1” and “R2”, which correspond to random distributions, as well as classes “RC1”
and “RC2”, which correspond to mixed distributions. In addition, datasets from C2, R2, and RC2
have wider time windows and larger vehicle capacities than their “1” counterparts. The Solomon
datasets are available at http://neo.lcc.uma.es/vrp/. We apply the convention that travel times
and costs are calculated from coordinates and then truncated with one decimal place. The customer
demands specified in the original datasets, as well as the calculated travel times, are regarded to
be the nominal values q0 and t0, respectively. The maximum allowable deviations in cardinality-
constrained sets (1) and (2) are qi = trunc(αq × q0
i
)and tij = 0.1× trunc
(αt × 10× t0ij
), respec-
tively. Thus, each customer demand can deviate upward from its nominal value by about αq ·100%,
while each arc traversal time can deviate upward from its nominal value by about αt ·100%. In our
experiments, we chose αq = αt = 0.1, and Γq = Γt = 5, as used in [33].
For each RVRPTW instance, we consider three cases: (i) only demand uncertainty, (ii) only
travel time uncertainty, and (iii) both demand and travel time uncertainty. Since we did not have at
hand sophisticated heuristics for solving the RVRPTW, we chose to use as the initial upper bound
the best known value of each instance, modified upwards by an offset of 0.1. Correspondingly,
our BPC algorithm always has to locate by itself a feasible solution with a value better than the
initial upper bound provided. As [34] pointed out, for VRPTW instances from classes C2, R2, and
RC2, the capacity constraints are not really binding. Therefore, to ease the solution of the pricing
38
subproblem, we do not include these constraints (i.e., Q := ∅) but enforce them in master problems
through capacity inequalities whenever needed. Also, as already mentioned, route enumeration has
to be deactivated whenever travel time uncertainty applies. In what follows, we present synopsized
computational results for RVRPTW instances. The detailed results are presented in the Appendix.
7.2.1 Set QG
In these experiments, NSq was chosen to be 10. We imposed a time limit of 1 hour for each instance
and report in Table 5 the consolidated results of our proposed robust cutting-plane algorithm, com-
paring those against the reported performance of the direct pricing approach from [33] (MMVAGM19).
The column names have the same meanings as before, adding an additional column “# no LB” to
denote the number of instances for which no lower bounds were reported in the literature paper.
Out of 56 RCVRP instances, our robust cutting-plane approach solved 51 of them to optimal-
ity within an average solution time of 42 seconds, resulting in an average residual gap of 2.92%
in the remaining ones. In comparison, the direct pricing approach was only able to solve 34 in-
stances, noting that it did not idenify any valid lower bound for 7 of the unsolved ones. These
results indicate that solving pricing subproblems exactly via the direct pricing approach is compu-
tationally prohibitive for these instances, confirming our earlier hypothesis that that solving the
resulting RSPPRC subproblems directly comes with increased time complexity and might become
intractable. Compared with the direct pricing method, our robust cutting-plane algorithm also
performs better in terms of both the average solution time and the average residual gap.
7.2.2 Set TG
In these experiments, NSt was chosen to be 1. We imposed a time limit of 1 hour for each instance
and report in Table 6 the consolidated results of our proposed robust cutting-plane algorithm, com-
paring those against the reported performance of the direct pricing approach from [33] (MMVAGM19).
Out of 56 RCVRP instances, our robust cutting-plane approach solved 35 of them to optimality
within an average solution time of less than 181 seconds, resulting in an average residual gap of
2.05% in the remaining ones. In comparison, the direct pricing approach was able to solve a total of
40 instances, noting that it did not idenify any valid lower bound for 7 of the unsolved ones. Upon
closer inspection of these results, we note that the direct pricing approach solved more instances
39
Table 5. Computational results for our BPC algorithm on RVRPTW instances under uncertainty set QG
and comparison with literature.
Class # inst.MMVAGM19 This work
# opt.# no
LB
Avg. t
(sec)
Avg.
gap† (%)# opt.
Avg. t
(sec)
Avg. gap
(%)
C1 9 3 0 881 9.94 5 158 2.32
R1 12 9 0 62 2.30 12 18 –
RC1 8 6 0 94 4.67 8 62 –
C2 8 7 1 196 – 8 18 –
R2 11 4 4 598 1.28 10 96 5.36
RC2 8 5 2 283 1.62 8 37 –
All 56 34 7 175 5.44 51 42 2.92
†Not including “no LB” instances.
from classes C1, R1 and RC1, while our algorithm performed better for instances from classes C2,
R2 and RC2. This could be explained by the fact that instances from the “1” classes have tighter
time windows, and hence, there only exists a relatively small number of robust feasible routes in the
RSPPRC, such that the direct pricing method turns out to be computationally cheap. In contrast,
instances from the “2” classes have wider time windows, and hence, small perturbations on the
travel time vector will not deprive most routes of their feasibility, such that solving the SPPRC
defined by T rather than the RSPPRC defined by T to generate routes bears less burden.
7.2.3 Set QG × TG
In these experiments, NSq and NSt were chosen to be 10 and 1, respectively. We imposed a time
limit of 1 hour for each instance and report in Table 7 the consolidated results of our proposed
robust cutting-plane algorithm, comparing those against the reported performance of the direct
pricing approach from [33] (MMVAGM19). Out of 56 RCVRP instances, our robust cutting-plane
approach solved 30 of them to optimality within an average solution time of less than 287 seconds,
resulting in an average residual gap of 2.35% in the remaining ones. In comparison, the direct
pricing approach was able to solve a total of 32 instances, noting that it did not idenify any valid
40
Table 6. Computational results for our BPC algorithm on RVRPTW instances under uncertainty set TGand comparison with literature.
Class # inst.MMVAGM19 This work
# opt.# no
LB
Avg. t
(sec)
Avg.
gap† (%)# opt.
Avg. t
(sec)
Avg. gap
(%)
C1 9 8 0 154 2.55 8 67 0.34
R1 12 10 0 156 2.37 3 57 1.29
RC1 8 7 0 148 5.16 0 – 2.04
C2 8 6 1 796 1.29 8 1,093 –
R2 11 4 4 482 2.24 8 165 4.95
RC2 8 5 2 241 1.44 8 134 –
All 56 40 7 233 2.43 35 181 2.05
†Not including “no LB” instances.
lower bound for 7 of the unsolved ones. Again, our robust cutting-plane algorithm performs better
for instances with wider time windows, while the direct pricing method did better for instances
with tighter time windows.
Through the above experiments on RVRPTW instances, we can make the following observations:
1. Enforcing IPEC as necessary constraints in a BPC framework is a viable strategy to address
travel time uncertainty, irrespectively of whether demand uncertainty also applies or not.
2. The direct pricing approach should be preferred when the time windows are tight, while the
robust cutting-plane approach should be preferred when the time windows are wide.
8 Conclusions
This work focused on robust vehicle routing problems, where customer demands and vehicle travel
times were assumed to be random variables that can take any values from their respective uncer-
tainty sets. To that end, we considered five popular classes of uncertainty sets, namely cardinality-
constrained sets, budget sets, factor models, ellipsoidal sets and discrete sets, and we explored
different avenues for how BPC algorithms can be employed to address this setting. More specif-
41
Table 7. Computational results for our BPC algorithm on RVRPTW instances under uncertainty set
QG × TG and comparison with literature.
Class # inst.MMVAGM19 This work
# opt.# no
LB
Avg. t
(sec)
Avg.
gap†# opt.
Avg. t
(sec)
Avg. gap
(%)
C1 9 3 0 1,860 9.73 3 969 2.02
R1 12 10 0 180 2.31 3 74 1.29
RC1 8 5 0 126 4.38 0 – 2.13
C2 8 5 1 850 1.65 8 1,076 –
R2 11 4 4 621 4.39 8 173 6.75
RC2 8 5 2 343 1.44 8 133 –
All 56 32 7 349 5.53 30 287 2.35
†Not including “no LB” instances.
ically, we synposized the literature approaches and argued how they fall into the robust pricing
family of approaches, in which the full robust feasibility of routes is ensured during their generation
in pricing subproblems. We then proposed a fundamentally different BPC algorithm that combines
robust cutting-plane techniques with the advances currently present in deterministic BPC solvers.
In particular, our proposed approach calls for the utilization of a deterministic pricing engine to
generate partially robust feasible routes and enforces IPEC and robust RCI as necessary constraints
to complete the guarantee of robust feasibility of the routing designs. We also conducted extensive
computational studies using RCVRP and RVRPTW instances under all classes of uncertainty sets
mentioned above. Our computational results demonstrated the versatility, flexibility, and efficiency
of our robust cutting-plane approach, while it elucidated settings (e.g., specific unceratinty sets
and/or specific data regimes) in which the new robust cutting-plance approach should be preferred
over the existing robust pricing approaches.
Acknowledgments
The authors gratefully acknowledge financial support from the Center for Advanced Process Decision-
making at Carnegie Mellon University, as well as support for Akang Wang from the James C.
42
Meade Graduate Fellowship and the H. William and Ruth Hamilton Prengle Graduate Fellowship
at Carnegie Mellon University. We also gratefully acknowledge the VRPSolver developers for their
generosity to provide academic use of the software.
43
References
[1] Agostinho Agra, Marielle Christiansen, Rosa Figueiredo, Lars Magnus Hvattum, Michael
Poss, and Cristina Requejo. Layered formulation for the robust vehicle routing problem with
time windows. In International Symposium on Combinatorial Optimization, pages 249–260.
Springer, 2012.
[2] Agostinho Agra, Marielle Christiansen, Rosa Figueiredo, Lars Magnus Hvattum, Michael Poss,
and Cristina Requejo. The robust vehicle routing problem with time windows. Computers &
operations research, 40(3):856–866, 2013.
[3] Agostinho Agra, Marielle Christiansen, Lars Magnus Hvattum, and Filipe Rodrigues. Robust
optimization for a maritime inventory routing problem. Transportation Science, 52(3):509–525,
2018.
[4] Artur Alves Pessoa, Luigi Di Puglia Pugliese, Francesca Guerriero, and Michael Poss. Robust
constrained shortest path problems under budgeted uncertainty. Networks, 66(2):98–111, 2015.
[5] Norbert Ascheuer, Matteo Fischetti, and Martin Grotschel. Solving the asymmetric travel-
ling salesman problem with time windows by branch-and-cut. Mathematical Programming,
90(3):475–506, 2001.
[6] Ph Augerat, Jose Manuel Belenguer, Enrique Benavent, A Corberan, D Naddef, and G Rinaldi.
Computational results with a branch and cut code for the capacitated vehicle routing problem.
IMAG, 1995.
[7] Roberto Baldacci, Nicos Christofides, and Aristide Mingozzi. An exact algorithm for the vehicle
routing problem based on the set partitioning formulation with additional cuts. Mathematical
Programming, 115(2):351–385, 2008.
[8] Roberto Baldacci, Aristide Mingozzi, and Roberto Roberti. New route relaxation and pricing
strategies for the vehicle routing problem. Operations research, 59(5):1269–1283, 2011.
[9] Aharon Ben-Tal, Laurent El Ghaoui, and Arkadi Nemirovski. Robust optimization, volume 28.
Princeton University Press, 2009.
44
[10] Aharon Ben-Tal and Arkadi Nemirovski. Lectures on modern convex optimization: analysis,
algorithms, and engineering applications, volume 2. Siam, 2001.
[11] Dimitris Bertsimas and Melvyn Sim. The price of robustness. Operations research, 52(1):35–53,
2004.
[12] John R Birge and Francois Louveaux. Introduction to stochastic programming. Springer Science
& Business Media, 2011.
[13] Claudio Contardo and Rafael Martinelli. A new exact algorithm for the multi-depot vehicle
routing problem under capacity and route length constraints. Discrete Optimization, 12:129–
146, 2014.
[14] Luciano Costa, Claudio Contardo, and Guy Desaulniers. Exact branch-price-and-cut algo-
rithms for vehicle routing. Transportation Science, 53(4):946–985, 2019.
[15] Thai Dinh, Ricardo Fukasawa, and James Luedtke. Exact algorithms for the chance-
constrained vehicle routing problem. Mathematical Programming, 172(1-2):105–138, 2018.
[16] Moshe Dror. Note on the complexity of the shortest path models for column generation in
vrptw. Operations Research, 42(5):977–978, 1994.
[17] Dominique Feillet. A tutorial on column generation and branch-and-price for vehicle routing
problems. 4or, 8(4):407–424, 2010.
[18] Ricardo Fukasawa, Humberto Longo, Jens Lysgaard, Marcus Poggi de Aragao, Marcelo Reis,
Eduardo Uchoa, and Renato F Werneck. Robust branch-and-cut-and-price for the capacitated
vehicle routing problem. Mathematical programming, 106(3):491–511, 2006.
[19] Michel Gendreau, Ola Jabali, and Walter Rei. Chapter 8: Stochastic vehicle routing problems.
In Vehicle Routing: Problems, Methods, and Applications, Second Edition, pages 213–239.
SIAM, 2014.
[20] Shubhechyya Ghosal and Wolfram Wiesemann. The distributionally robust chance-constrained
vehicle routing problem. Operations Research, 68(3):716–732, 2020.
45
[21] Chrysanthos E Gounaris, Panagiotis P Repoussis, Christos D Tarantilis, Wolfram Wiesemann,
and Christodoulos A Floudas. An adaptive memory programming framework for the robust
capacitated vehicle routing problem. Transportation Science, 50(4):1239–1260, 2014.
[22] Chrysanthos E Gounaris, Wolfram Wiesemann, and Christodoulos A Floudas. The robust ca-
pacitated vehicle routing problem under demand uncertainty. Operations Research, 61(3):677–
693, 2013.
[23] Christopher Hojny, Tristan Gally, Oliver Habeck, Hendrik Luthen, Frederic Matter, Marc E
Pfetsch, and Andreas Schmitt. Knapsack polytopes: a survey. Annals of Operations Research,
292:469–517, 2020.
[24] Stefan Irnich and Guy Desaulniers. Shortest path problems with resource constraints. In
Column generation, pages 33–65. Springer, 2005.
[25] Stefan Irnich, Guy Desaulniers, Jacques Desrosiers, and Ahmed Hadjar. Path-reduced costs for
eliminating arcs in routing and scheduling. INFORMS Journal on Computing, 22(2):297–313,
2010.
[26] Mads Jepsen, Bjørn Petersen, Simon Spoorendonk, and David Pisinger. Subset-row inequalities
applied to the vehicle-routing problem with time windows. Operations Research, 56(2):497–511,
2008.
[27] Brian Kallehauge, Natashia Boland, and Oli BG Madsen. Path inequalities for the vehicle
routing problem with time windows. Networks: An International Journal, 49(4):273–293,
2007.
[28] Gilbert Laporte and Yves Nobert. A branch and bound algorithm for the capacitated vehicle
routing problem. Operations-Research-Spektrum, 5(2):77–85, 1983.
[29] Chungmok Lee, Kyungsik Lee, and Sungsoo Park. Robust vehicle routing problem with
deadlines and travel time/demand uncertainty. Journal of the Operational Research Society,
63(9):1294–1306, 2012.
[30] Taehan Lee and Changhyun Kwon. A short note on the robust combinatorial optimization
problems with cardinality constrained uncertainty. 4OR, 12(4):373–378, 2014.
46
[31] Da Lu and Fatma Gzara. The robust vehicle routing problem with time windows: Solution by
branch and price and cut. European Journal of Operational Research, 275(3):925–938, 2019.
[32] Marco E Lubbecke and Jacques Desrosiers. Selected topics in column generation. Operations
research, 53(6):1007–1023, 2005.
[33] Pedro Munari, Alfredo Moreno, Jonathan De La Vega, Douglas Alem, Jacek Gondzio, and
Reinaldo Morabito. The robust vehicle routing problem with time windows: compact formu-
lation and branch-price-and-cut method. Transportation Science, 53(4):1043–1066, 2019.
[34] Diego Pecin, Claudio Contardo, Guy Desaulniers, and Eduardo Uchoa. New enhancements for
the exact solution of the vehicle routing problem with time windows. INFORMS Journal on
Computing, 29(3):489–502, 2017.
[35] Diego Pecin, Artur Pessoa, Marcus Poggi, and Eduardo Uchoa. Improved branch-cut-and-price
for capacitated vehicle routing. Mathematical Programming Computation, 9(1):61–100, 2017.
[36] Artur Pessoa, Ruslan Sadykov, Eduardo Uchoa, and Francois Vanderbeck. Automation and
combination of linear-programming based stabilization techniques in column generation. IN-
FORMS Journal on Computing, 30(2):339–360, 2018.
[37] Artur Pessoa, Ruslan Sadykov, Eduardo Uchoa, and Francois Vanderbeck. A generic exact
solver for vehicle routing and related problems. Mathematical Programming, 183(1):483–523,
2020.
[38] Artur Alves Pessoa, Michael Poss, Ruslan Sadykov, and Francois Vanderbeck. Branch-cut-and-
price for the robust capacitated vehicle routing problem with knapsack uncertainty. Operations
Research, 2021.
[39] Luigi Di Puglia Pugliese and Francesca Guerriero. A survey of resource constrained shortest
path problems: Exact solution approaches. Networks, 62(3):183–200, 2013.
[40] Giovanni Righini and Matteo Salani. Symmetry helps: Bounded bi-directional dynamic pro-
gramming for the elementary shortest path problem with resource constraints. Discrete Opti-
mization, 3(3):255–273, 2006.
47
[41] Roberto Roberti and Aristide Mingozzi. Dynamic ng-path relaxation for the delivery man
problem. Transportation Science, 48(3):413–424, 2014.
[42] Stefan Røpke. Branching decisions in branch-and-cut-and-price algorithms for vehicle routing
problems. Presentation in Column Generation, 2012.
[43] Ruslan Sadykov, Eduardo Uchoa, and Artur Pessoa. A bucket graph–based labeling algorithm
with application to vehicle routing. Transportation Science, 55(1):4–28, 2021.
[44] Ruslan Sadykov, Francois Vanderbeck, Artur Pessoa, Issam Tahiri, and Eduardo Uchoa. Pri-
mal heuristics for branch and price: The assets of diving methods. INFORMS Journal on
Computing, 31(2):251–267, 2019.
[45] Elyn Solano-Charris, Christian Prins, and Andrea Cynthia Santos. Local search based meta-
heuristics for the robust vehicle routing problem with discrete scenarios. Applied Soft Com-
puting, 32:518–531, 2015.
[46] Marius M Solomon. Algorithms for the vehicle routing and scheduling problems with time
window constraints. Operations research, 35(2):254–265, 1987.
[47] Anirudh Subramanyam, Frank Mufalli, Jose M Laınez-Aguirre, Jose M Pinto, and Chrysan-
thos E Gounaris. Robust multiperiod vehicle routing under customer order uncertainty. Op-
erations Research, 69(1):30–60, 2021.
[48] Anirudh Subramanyam, Panagiotis P Repoussis, and Chrysanthos E Gounaris. Robust opti-
mization of a broad class of heterogeneous vehicle routing problems under demand uncertainty.
INFORMS Journal on Computing, 32(3):661–681, 2020.
[49] Anirudh Subramanyam, Akang Wang, and Chrysanthos E Gounaris. A scenario decomposition
algorithm for strategic time window assignment vehicle routing problems. Transportation
Research Part B: Methodological, 117:296–317, 2018.
[50] Ilgaz Sungur, Fernando Ordonez, and Maged Dessouky. A robust optimization approach for the
capacitated vehicle routing problem with demand uncertainty. IIE Transactions, 40(5):509–
523, 2008.
48
[51] Paolo Toth and Daniele Vigo. Vehicle routing: problems, methods, and applications. SIAM,
2014.
[52] Bo Zeng and Long Zhao. Solving two-stage robust optimization problems using a column-and-
constraint generation method. Operations Research Letters, 41(5):457–461, 2013.
49
Appendix
In this Appendix, we present the detailed computational results for RCVRP and RVRPTW in-
stances in Tables 8–11 and Tables 12–13, respectively. As a reference, we also present the com-
putational results for solving deterministic CVRP and VRPTW instances (with the optimal value
provided as an upper bound for each instance) via the VRPSolver. In each table, the column
“Instance” lists the instance name, the column “Opt [UB]” reports the corresponding optimal ob-
jective value, while the column “t (sec) [LB]” provides the time to solve the instance to optimality;
if an instance could not be solved within the allotted time limit, these columns report (in brackets)
the best upper and lower bounds found within this time limit. A total of 56 instances that had
not been solved to optimality in the literature but were solved in this work for the first time are
indicated with an asterisk (*), while a total of 8 new best-known solutions found are indicated in
boldface.
50
Tab
le8.
Det
ail
edre
sult
sfo
rou
rB
PC
alg
ori
thm
on
RC
VR
Pin
stan
ces
A.
Inst
ance
q0QG
QB
QF
QE
QD
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
A-n
32-k
578
42
857
119
748
274
82
755
475
55
A-n
33-k
566
12
675
3064
213
631
265
22
652
14
A-n
33-k
674
22
758
215
717
371
02
733
273
03
A-n
34-k
577
85
776
4,22
671
53
702
274
756
743
252
A-n
36-k
579
93
[823
][8
06]
755
376
68
783
1376
94
A-n
37-k
566
92
706
292
650
464
83
667
566
528
A-n
37-k
694
94
[948
][9
05]
892
1489
26
907
290
76
A-n
38-k
573
04
714
2270
411
693
370
93
709
5
A-n
39-k
582
24
[818
][7
89]
777
4877
25
806
3280
362
A-n
39-k
683
13
850
230
787
278
62
813
1380
914
A-n
44-k
693
72
930
5990
930
289
22
928
3191
916
A-n
45-k
694
42
918
278
896
889
14
923
1192
110
A-n
45-k
71,
146
5[1
,163
][1
,121
]–
––
––
––
–
A-n
46-k
791
42
988
3,35
388
831
883
790
613
790
255
A-n
48-k
71,
073
3[1
,129
][1
,067
]1,
033
293
1,03
3*41
1,06
01,
014
1,04
219
4
A-n
53-k
71,
010
5[1
,019
][9
83]
974
287
967
6598
719
984
11
A-n
54-k
71,
167
8[1
,169
][1
,110
]1,
106
738
1,09
7*42
1,14
53,
358
1,14
41,
228
A-n
55-k
91,
073
21,
107
1,49
41,
030
391,
007
41,
055
391,
055
157
A-n
60-k
91,
354
10
[1,4
08]
[1,3
11]
[1,2
80]
[1,2
62]
1,26
4*42
1,29
215
01,
290
345
A-n
61-k
91,
034
7[1
,022
][9
84]
983
419
974*
191,
010
133
1,00
311
8
A-n
62-k
81,
288
16
[1,3
39]
[1,2
60]
[1,2
17]
[1,1
97]
1,20
1*67
1,24
53,
128
1,23
26,
058
A-n
63-k
91,
616
17
[1,6
20]
[1,5
01]
1,50
54,
754
1,49
8*19
31,
571
3,34
3[1
,575
][1
,533
]
A-n
63-k
101,3
1410
[1,3
48]
[1,2
81]
1,23
358
61,
222*
191,
257
482
1,24
91,
611
A-n
64-k
91,
401
18
[1,4
17]
[1,3
38]
1,32
51,
017
1,31
4*97
[1,3
85]
[1,3
43]
[1,3
80]
[1,3
35]
A-n
65-k
91,
174
6[1
,184
][1
,120
]1,
106
188
1,09
45
1,16
41,
582
1,14
43,
572
A-n
69-k
91,
159
10
[1,1
77]
[1,1
36]
1,10
995
31,
096*
18[1
,149
][1
,114
]1,
122
5,29
5
A-n
80-k
101,7
6316
[1,8
03]
[1,7
02]
[1,6
62]
[1,6
39]
1,6
44
*1,
253
[1,7
43]
[1,6
80]
[1,7
15]
[1,6
62]
#op
t.27
1123
2623
23
51
Tab
le9.
Det
ail
edre
sult
sfo
rou
rB
PC
alg
ori
thm
on
RC
VR
Pin
stan
ces
B.
Inst
ance
q0QG
QB
QF
QE
QD
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
B-n
31-k
5672
369
45,
842
651
265
12
604
260
24
B-n
34-k
5788
678
91,
565
768
1,09
574
810
782
264
769
151
B-n
35-k
5955
5[9
86]
[952
]88
34
883
3[9
46]
[921
]92
125
4
B-n
38-k
6805
482
333
729
472
93
705
6968
83
B-n
39-k
5549
456
176
532
2352
917
534
953
442
B-n
41-k
6829
3[8
38]
[797
]79
645
679
126
800
480
110
B-n
43-k
6742
8[7
79]
[734
]68
116
768
034
683
268
322
B-n
44-k
7909
5[9
43]
[912
]83
510
835
1085
69
855
95
B-n
45-k
5751
7[7
39]
[717
]70
142
168
013
708
1670
237
B-n
45-k
6678
6[6
68]
[631
]66
011
657
967
025
668
2,27
1
B-n
50-k
7741
1075
874
679
369
98
732
1,02
171
788
B-n
50-k
81,
312
17[1
,330
][1
,286
][1
,224
][1
,208
][1
,217
][1
,202
][1
,251
][1
,215
][1
,226
][1
,206
]
B-n
51-k
71,
032
15[1
,027
][9
44]
961
238
928
6[9
99]
[988
][9
96]
[973
]
B-n
52-k
7747
4[7
75]
[750
]67
530
670
1466
711
662
15
B-n
56-k
7707
4[7
40]
[730
]62
38
623
2761
48
612
11
B-n
57-k
71,
153
12[1
,132
][1
,054
]1,
055
778
1,05
2*62
[1,1
36]
[1,0
94]
[1,1
26]
[1,0
71]
B-n
57-k
91,
598
5[1
,656
][1
,594
]1,
540
221,
539
22[1
,520
][1
,488
][1
,490
][1
,474
]
B-n
63-k
101,
496
8[1
,588
][1
,471
]1,
407
6,80
91,
405*
392
[1,5
07]
[1,4
59]
[1,4
97]
[1,4
31]
B-n
64-k
9861
6[8
65]
[839
]80
366
803
3080
519
804
41
B-n
66-k
91,
316
21[1
,319
][1
,209
][1
,251
][1
,217
]1,
210
331,
269
2,57
1[1
,266
][1
,215
]
B-n
67-k
101,
032
11
[1,0
86]
[1,0
48]
1,00
77,
030
1,00
1*24
81,
012
1,12
91,
001
2,65
8
B-n
68-k
91,
272
40[1
,298
][1
,247
][1
,205
][1
,179
][1
,197
][1
,174
][1
,255
][1
,190
][1
,245
][1
,167
]
B-n
78-k
101,
221
10
[1,2
61]
[1,1
61]
1,13
11,
697
1,13
0*81
1,16
26,
256
[1,2
00]
[1,1
40]
#op
t.23
520
2116
15
52
Tab
le10.
Det
aile
dre
sult
sfo
rou
rB
PC
alg
ori
thm
on
RC
VR
Pin
stan
ces
E,
Fan
dM
.
Inst
ance
q0QG
QB
QF
QE
QD
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
E-n
13-
k4
247
127
72
––
––
––
––
E-n
22-
k4
375
137
31
373
237
31
373
137
32
E-n
23-
k3
569
257
02
563
254
42
564
256
92
E-n
30-
k3
534
1049
56
475
349
27
495
349
54
E-n
31-
k7
379
237
911
––
––
––
––
E-n
33-
k4
835
283
634
381
412
581
442
828
5682
19
E-n
51-
k5
521
251
910
151
628
516
2451
95
518
27
E-n
76-
k7
682
27[6
99]
[681
]66
190
661*
283
665
294
661
76
E-n
76-
k8
735
19[7
36]
[715
]70
931
470
0*26
721
511
714
199
E-n
76-k
10
830
15[8
30]
[796
]79
61,
580
782*
1080
920
280
741
0
E-n
76-k
14
1,02
17
[1,0
22]
[963
]95
241
952*
2998
73,
198
982
7,08
2
E-n
101-
k8
815
61[8
26]
[802
][7
89]
[783
]78
3*13
9[8
58]
[790
][8
08]
[784
]
E-n
101-k
14
1,0
6731
[1,1
21]
[1,0
54]
1,01
186
1,00
9*77
[1,0
85]
[1,0
36]
[1,0
57]
[1,0
25]
F-n
45-k
472
410
736
6571
837
714
121
721
972
171
F-n
72-k
423
724
236
156
232
3523
238
235
3523
477
F-n
135
-k7
1,16
23,0
58–
–[1
,122
][1
,068
][1
,086
][1
,070
][1
,171
][1
,109
][1
,162
][1
,102
]
M-n
101
-k10
820
4[9
18]
[907
]80
932
804
1,57
381
158
5[8
27]
[795
]
M-n
121-k
71,
034
44[1
,030
][9
92]
[994
][9
80]
[987
][9
80]
1,00
43,
892
[999
][9
84]
M-n
151
-k12
1,01
5119
––
[987
][9
67]
[991
][9
69]
[1,0
18]
[983
][1
,010
][9
69]
#op
t.19
913
1413
11
53
Tab
le11.
Det
ail
edre
sult
sfo
rou
rB
PC
alg
ori
thm
on
RC
VR
Pin
stan
ces
P.
Inst
ance
q0QG
QB
QF
QE
QD
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
Op
t
[UB
]
t(s
ec)
[LB
]
P-n
16-
k8
450
1–
–43
91
439
145
02
448
2
P-n
19-
k2
212
219
51
195
219
51
195
119
51
P-n
20-
k2
216
220
82
208
120
81
209
120
91
P-n
21-
k2
211
120
82
208
220
81
211
221
11
P-n
22-
k2
216
221
32
213
221
32
216
221
52
P-n
22-
k8
603
160
12
537
155
71
592
258
72
P-n
23-
k8
529
152
74
504
250
3*1
524
252
42
P-n
40-
k5
458
246
814
447
344
72
456
345
513
P-n
45-
k5
510
351
238
501
4149
43
503
350
39
P-n
50-
k7
554
356
325
853
99
537*
454
640
541
114
P-n
50-
k8
631
4[6
14]
[591
]59
26
588*
660
55
605
13
P-n
50-k
10
696
269
51,
093
656
265
6*2
676
1067
07
P-n
51-k
10
741
273
615
470
729
698*
272
23
721
10
P-n
55-
k7
568
458
32,
083
549
5154
414
550
8954
211
P-n
55-
k8
588
9[6
24]
[604
]57
212
656
8*4
570
2457
068
2
P-n
55-k
10
694
3[7
18]
[691
]67
018
565
7*8
669
866
951
P-n
55-k
15
989
2[9
45]
[908
]88
94
877*
293
011
923
5
P-n
60-k
10
744
2[7
55]
[727
]71
223
705*
672
626
726
246
P-n
60-k
15
968
2[1
,020
][9
68]
931
1191
6*3
950
994
950
P-n
65-k
10
792
4[8
09]
[780
]76
510
576
1*13
781
1,14
676
611
1
P-n
70-k
10
827
10[8
24]
[794
]78
520
783*
680
938
780
11,
038
P-n
76-
k4
593
28[5
90]
[585
]59
038
459
032
159
038
[595
][5
89]
P-n
76-
k5
627
33[6
21]
[612
]61
697
061
5*1,
462
621
5061
621
9
P-n
101-
k4
681
144
[681
][6
77]
673
852
673
6,34
767
377
673
3,93
2
#op
t.24
1224
2424
23
54
Table 12. Detailed results for our BPC algorithm on RVRPTW instances (C1, R1 and RC1)
Instance
q0×t0
QG ×t0
q0× TG QG × TG
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
C101 827.3 2 981.3 15 848.0 5 994.5 366
C102 827.3 4 975.2* 280 846.2 207 976.6* 3,248
C103 826.3 9 [972.6] [950.8] 838.8 161 [974.5] [952.1]
C104 822.9 13 [953.3] [934.4] [834.0] [831.2] [961.2] [933.7]
C105 827.3 3 981.3 218 848.0 27 [984.2] [977.7]
C106 827.3 3 981.3 45 848.0 132 984.1 765
C107 827.3 3 981.3* 2,423 842.8 18 [982.9] [969.7]
C108 827.3 4 [974.7] [948.9] 842.8 136 [973.9] [949.0]
C109 827.3 5 [966.1] [943.0] 842.8 315 [966.1] [943.0]
R101 1,637.7 2 1,637.7 3 1,692.1 9 1,692.1 19
R102 1,466.6 2 1,466.6 3 1,505.3 17 1,505.3 16
R103 1,208.7 4 1,208.7 6 1,235.3 1,230 1,235.3 1,363
R104 971.5 27 975.8* 165 [999.5] [981.6] [999.5] [982.9]
R105 1,355.3 3 1,355.3 4 [1,391.7] [1,368.9] [1,391.7] [1,365.9]
R106 1,234.6 5 1,234.6 7 [1,265.5] [1,244.0] [1,265.5] [1,244.0]
R107 1,064.6 13 1,064.6 18 [1,081.3] [1,074.4] [1,082.3] [1,071.4]
R108 932.1 41 938.6* 124 [951.8] [934.9] [953.7] [938.0]
R109 1,146.9 13 1,147.2 19 [1,169.2] [1,161.9] [1,169.4] [1,166.0]
R110 1,068.0 12 1,068.0 15 [1,097.0] [1,076.8] [1,097.0] [1,076.7]
R111 1,048.7 33 1,048.7 44 [1,071.0] [1,065.8] [1,070.9] [1,064.5]
R112 948.6 62 950.9* 164 [961.4] [950.3] [961.3] [951.5]
RC101 1,619.8 4 1,619.8 6 [1,674.8] [1,651.4] [1,677.5] [1,651.1]
RC102 1,457.4 20 1,472.7 32 [1,500.9] [1,476.2] [1,512.6] [1,493.5]
RC103 1,258.0 22 1,264.6 32 [1,331.0] [1,265.7] [1,341.3] [1,273.5]
RC104 1,132.3 48 1,156.7* 2,371 [1,154.4] [1,138.6] [1,179.7] [1,155.6]
RC105 1,513.7 16 1,513.7 16 [1,563.0] [1,545.2] [1,565.4] [1,546.2]
RC106 1,372.7 35 1,388.8 69 [1,400.4] [1,377.8] [1,413.0] [1,391.7]
RC107 1,207.8 14 1,236.7 63 [1,244.0] [1,214.8] [1,279.7] [1,242.4]
RC108 1,114.2 51 1,155.0* 228 [1,141.4] [1,119.8] [1,161.2] [1,143.9]
# opt. 29 25 11 6
55
Table 13. Detailed results for our BPC algorithm on RVRPTW instances (C2, R2 and RC2)
Instance
q0×t0
QG ×t0
q0× TG QG × TG
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
Opt
[UB]
t (sec)
[LB]
C201 589.1 9 589.1 10 605.4 488 605.4 557
C202 589.1 15 589.1 20 605.2 1,990 605.2* 1,832
C203 588.7 35 588.7 24 597.7* 1,130 597.7* 1,069
C204 588.1 40 588.1* 43 594.0* 536 594.0* 510
C205 586.4 14 586.4 12 598.9 965 598.9 910
C206 586.0 14 586.0 16 598.9 1,414 598.9 1,688
C207 585.8 20 585.8 17 598.3 1,074 598.3 1,097
C208 585.8 14 585.8 15 598.3 2,369 598.3 1,923
R201 1,143.2 11 1,143.2 12 1,143.2 11 1,143.2 12
R202 1,029.6 80 1,029.6 93 1,032.6 174 1,032.6 204
R203 870.8 87 870.8 70 873.3 113 873.3 120
R204 731.3 195 731.3* 180 731.3* 203 731.3* 219
R205 949.8 87 949.8 86 949.8 406 949.8 365
R206 875.9 137 875.9* 149 875.9* 137 875.9* 149
R207 794.0 96 794.0* 114 794.1* 149 794.1* 151
R208 701.0 3,296 [737.4] [697.9] [741.7] [698.4] [772.2] [698.3]
R209 854.8 129 854.8* 134 858.4* 1,460 858.4* 1,513
R210 900.5 168 900.5* 159 [931.7] [907.6] [913.2] [906.1]
R211 746.7 146 746.7* 149 [799.1] [747.8] [830.2] [747.9]
RC201 1,261.8 8 1,261.8 10 1,263.0 21 1,263.0 21
RC202 1,092.3 21 1,092.3 15 1,095.6 37 1,095.6 29
RC203 923.7 28 923.7 28 933.0 387 933.0 524
RC204 783.5 66 783.5* 67 787.5* 520 787.5* 491
RC205 1,154.0 17 1,154.0 15 1,154.0 36 1,154.0 33
RC206 1,051.1 55 1,051.1 53 1,051.1 92 1,051.1 95
RC207 962.9 83 962.9* 112 963.3* 375 963.3* 341
RC208 776.1 80 776.1* 140 778.4* 558 778.4* 580
# opt. 27 26 24 24
56