Research Paper

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 25

This article was downloaded by: [14.139.108.

35] On: 11 July 2023, At: 22:27


Publisher: Institute for Operations Research and the Management Sciences
(INFORMS) INFORMS is located in Maryland, USA

INFORMS Journal on Computing


Publication details, including instructions for authors and subscription
information: http://pubsonline.informs.org

Formulations and Branch-and-Cut Algorithms for


Multivehicle Production and Inventory Routing
Problems
Yossiri Adulyasak, Jean-François Cordeau, Raf Jans

To cite this article:


Yossiri Adulyasak, Jean-François Cordeau, Raf Jans (2014) Formulations and Branch-and-Cut Algorithms for
Multivehicle Production and Inventory Routing Problems. INFORMS Journal on Computing 26(1):103-120.
https://doi.org/10.1287/ ijoc.2013.0550

Full terms and conditions of use: https://pubsonline.informs.org/Publications/Librarians-Portal/PubsOnLine-Terms-


and- Conditions
This article may be used only for the purposes of research, teaching, and/or private study. Commercial
use or systematic downloading (by robots or other automatic processes) is prohibited without explicit
Publisher approval, unless otherwise noted. For more information, contact permissions@informs.org.
The Publisher does not warrant or guarantee the article’s accuracy, completeness, merchantability,
fitness for a particular purpose, or non-infringement. Descriptions of, or references to, products or
publications, or inclusion of an advertisement in this article, neither constitutes nor implies a guarantee,
endorsement, or support of claims made of that product, publication, or service.
Copyright © 2014, INFORMS

Please scroll down for article—it is on subsequent pages

With 12,500 members from nearly 90 countries, INFORMS is the largest international association of operations research
(O.R.) and analytics professionals and students. INFORMS provides unique networking and learning opportunities for
individual professionals, and organizations of all types and sizes, to better understand and use O.R. and analytics tools and
methods to transform strategic visions and achieve better outcomes.
For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org
INFORMS Journal on Computing
Vol. 26, No. 1, Winter 2014, pp. 103–120
ISSN 1091-9856 (print) | ISSN 1526-5528 (online)
http://dx.doi.org/10.1287/ijoc.2013.0550
© 2014 INFORMS

Formulations and Branch-and-Cut Algorithms


for Multivehicle Production and Inventory
Routing Problems
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Yossiri Adulyasak, Jean-François Cordeau


HEC Montréal and CIRRELT, Montré al, H3T 2A7, Canada
{yossiri.adulyasak@hec.ca, jean-francois.cordeau@hec.ca}

Raf Jans
HEC Montré al and GERAD, Montré al, H3T 2A7, Canada, raf.jans@hec.ca

T he inventory routing problem (IRP) and the production routing problem (PRP) are two difficult problems
arising in the planning of integrated supply chains. These problems are solved in an attempt to jointly
optimize production, inventory, distribution, and routing decisions. Although several studies have proposed
exact algorithms to solve the single-vehicle problems, the multivehicle aspect is often neglected because of its
complexity. We introduce multivehicle PRP and IRP formulations, with and without a vehicle index, to solve
the problems under both the maximum level (ML) and order-up-to level (OU) inventory replenishment
policies. The vehicle index formulations are further improved using symmetry breaking constraints; the
nonvehicle index formulations are strengthened by several cuts. A heuristic based on an adaptive large
neighborhood search technique is also developed to determine initial solutions, and branch-and-cut
algorithms are proposed to solve the different formulations. The results show that the vehicle index
formulations are superior in finding optimal solutions, whereas the nonvehicle index formulations are
generally better at providing good lower bounds on larger instances. IRP and PRP instances with up to 35
customers, three periods, and three vehicles can be solved to optimality within two hours for the ML policy.
By using parallel computing, the algorithms could solve the instances for the same policy with up to 45 and
50 customers, three periods, and three vehicles for the IRP and PRP, respectively. For the more difficult IRP
(PRP) under the OU policy, the algorithms could handle instances with up to 30 customers, three (six)
periods, and three vehicles on a single core machine, and up to 45 (35)
customers, three (six) periods, and three vehicles on a multicore machine.
Key words: integrated supply chain planning; inventory routing; production routing; multivehicle; symmetry
breaking; branch-and-cut
History : Accepted by Karen Aardal, Area Editor for Design and Analysis of Algorithms; received April 2012;
revised October 2012; accepted January 2013. Published online in Articles in Advance June 14, 2013.

1. Introduction to jointly optimize total inventory and routing costs.


In a typical retail supply chain that consists of sequen- When production lot-sizing decisions are incorpo-
tial activities of production, storage, and distribution, rated in the IRP, the problem becomes the
each individual process is often planned and opti- production routing problem (PRP).
mized using predetermined decisions from its previ- In this study, we consider both the IRP and PRP
ous activity. For example, a production planner makes with a discrete and finite time horizon. We sum-
production lot-sizing decisions to minimize produc- marize here the literature on exact methods in a
tion and inventory costs at the production facility. The retailer supply chain. To represent instance sizes, we
planned lot-sizing decisions are then used as inputs use the notation ac/bp/cv where a, b, and c are the
in subsequent steps of distribution planning. Because number of customers, periods, and vehicles, respec-
the decisions are limited by the plan of the former tively. We refer to Andersson et al. (2010) for a
process, the benefits of coordination in the planning recent review on the IRP. As mentioned in that
process have been left behind. This induces the need article, few exact algorithms have been proposed to
for integrated supply chain planning systems that solve the IRP because of its complexity. Archetti et al.
treat the system as a whole at the tactical and oper- (2007) devel- oped a branch-and-cut approach for
ational levels. The inventory routing problem (IRP) the IRP with a single vehicle and analyzed three
is an integrated planning problem that has received different replenish- ment policies for the customers.
much attention in the last decade. It considers the In the first policy, order-up-to level (OU), a visited
integration of replenishment and routing decisions customer receives the exact amount that brings its
inventory up to a
103
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP

predefined target stock level (TSL). The second pol- up to 10c/2p/5v were solved to optimality within 30
icy, maximum level (ML), allows delivery quantities minutes. The emphasis of the study was instead on a
to be any positive value, but the inventory at each heuristic procedure using the branch-and-price frame-
customer cannot exceed its maximum stock level. work. Archetti et al. (2011) adapted the branch-and-
The third policy is similar to the ML policy, but cut approach of Archetti et al. (2007) for the PRP-ML
there is no maximum stock level imposed at the with uncapacitated production and a single vehicle.
customers. Archetti et al. (2007) used different Several valid inequalities were also used to strengthen
inequalities to strengthen the formulation for each the formulation. However, computational testing was
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

policy and could solve instances up to 45c/3p/1v only performed on 14c/6p/1v instances, and not all
and 30c/6p/1v to optimality within two hours for instances were solved to optimality within two hours.
the IRP with the OU and ML policy, respectively. Table 1 presents a summary of the exact algorithms
Solyalı and Sü ral (2011) proposed a stronger for the PRP and IRP in the literature. We classify the
formulation for the single-vehicle IRP-OU using a problems along three dimensions: IRP versus PRP, the
shortest path network representa- tion of the OU replenishment policy (ML versus OU), and the num-
policy at each customer, and used a similar ber of vehicles (single versus multiple). The size of
branch-and-cut approach as Archetti et al. (2007). the problems that can be solved to optimality and the
They could solve instances up to 60c/3p/1v and computing time limit (in hours) are shown in brack-
15c/12p/1v to optimality within four hours. ets. Table 1 clearly shows an important gap in the
A closely related problem, the PRP, has also existing literature. The only exact algorithm for the
received increased attention in the last few years. The multiple-vehicle PRP is that of Bard and Nananukul
benefits of coordination in the PRP were first dis- (2010), which only solved relatively small instances to
cussed by Chandra and Fisher (1994). As for the IRP, optimality, compared with the results on the single-
most of the previous studies employed heuristic pro- vehicle case.
cedures to solve the problem (see Adulyasak et al. In this paper, we consider a single product and
2012 for a recent review of heuristic procedures for the a production-distribution network that consists of a
PRP). Few studies have introduced exact algorithms production plant and multiple customers that have
or even methods to compute strong lower bounds their own storage area. At the beginning of the plan-
for the PRP. Fumero and Vercellis (1999) developed ning horizon, the production plant and the customers
a Lagrangian relaxation approach to obtain lower may have initial inventory. In each period, each cus-
bounds and heuristic solutions for a variant of the tomer must have sufficient inventory to satisfy its
PRP, where unit transportation costs are assumed and demand. In the case of the PRP, the plant must decide
the routing decisions can be determined by solv- whether to produce the product and the quantity to
ing a minimum cost flow (MCF) problem. Instances be produced. If production takes place, fixed setup
with up to 12 customers, 8 periods, and 10 products and unit production costs are incurred. The
were tested, and the algorithm could obtain solutions produced quantities can be transported by a limited
with an average optimality gap of 5.5%. A similar number of capacitated vehicles to the customers’
Lagrangian relaxation approach was used by Solyalı area, and rout- ing costs are paid. The product can
and Sü ral (2009) to solve the PRP-OU. However, the also be stored at the plant or at the customers’ area,
lower bounds obtained by this approach were weak. and unit inven- tory holding costs are incurred. We
In the instances with 8c/5p/1v, the lower bound pro- consider the cases where the customer
duced by the Lagrangian relaxation has an average replenishment is based on the ML and OU policies.
deviation of 33.16% from the optimal value. Solyalı The hypotheses we adopt are generally in line with
and Sü ral also tested the performance of the formula- Chandra and Fisher (1994) and Fumero and Vercellis
tion based on the multicommodity fixed charge net- (1999) for the ML policy and Solyalı and Sü ral
work flow problem using the same instances, and (2009) for the OU policy. There is a slight
the longest computing time was approximately 20 difference with respect to the imposed max- imum
hours to obtain the optimal solution. Ruokokoski et al. inventory in this paper compared to Archetti et al.
(2010) explored the performance of different lot-sizing (2011). To be well aligned with the concept of the OU
reformulation schemes for the PRP-ML with unca- policy, we set the delivery quantity to each customer
pacitated production and a single uncapacitated vehi- equal to the difference between its current stock
cle and further employed a branch-and-cut approach level and its TSL before demand consumption. In
similar to that of Archetti et al. (2007) to solve the contrast, the TSL is imposed after demand con-
problem. Bard and Nananukul (2010) introduced a sumption (which typically is not known in advance
branch-and-price procedure for the PRP-ML with in practice) in Archetti et al. (2011). This also applies
multiple vehicles. Because their subtour elimination to the ML policy, where the maximum inventory level
constraints are in the form of the Miller-Tucker- at the customers’ area is imposed before demand
Zemlin inequalities (Miller et al. 1960), they obtained con- sumption. It should also be noted that the
rather weak lower bounds, and only the instances replenish- ment practice in our PRP and the noted
literature is
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

Table 1 Summary of Exact Algorithms for the Deterministic PRP and IRP with Single Product, Single Plant,
and Multiple Retailers

Maximum level Order-up-to level

Problem Single vehicle Multiple vehicles Single vehicle Multiple vehicles


IRP Archetti et al. (2007) — Archetti et al. (2007) —
[45c/3p/1v-2h], [45c/3p/1v-2h],
[30c/6p/1v-2h] [30c/6p/1v-2h]
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Solyalı and Süral (2011)


[60c/3p/1v-4h],
[15c/12p/1v-4h]
PRP Ruokokoski et al. (2010)a Bard and Nananukul (2010) — —
Archetti et al. (2011) [10c/2p/5v-0.5h]
[14c/6p/1v-2h]b
a
Tests were performed only on the uncapacitated single vehicle case.
b
Some instances were not solved to optimality.

slightly different from the IRP presented in Archetti discussion of computational experiments in §6 and
et al. (2007) and Solyalı and Sü ral (2011). In the lat- conclusions in §7.
ter studies, the delivery to the customers must take
place before the distribution facility is replenished in
each period, whereas in our PRP, the quantity pro- 2. MVPRP Formulations
duced in period t can be delivered to customers to This section presents the main notation and mathe-
satisfy their demand in the same period. These two matical formulations of the MVPRP with the ML and
practices, however, can be converted into each other, OU policies.
as we show in the online supplement (available as
supplemental material at http://dx.doi.org/10.1287/ 2.1. Notation
ijoc.2013.0550). Because the PRP is a generalization of The PRP can be defined on a complete undirected
the IRP, we prefer to use the name PRP in the graph G = (N, E) with the following notation.
remain- der of this paper to represent both the IRP Sets:
and PRP unless stated otherwise. Note that MVPRP
is used to represent the PRP with the multivehicle T Set of time periods, indexed by t∈ {1,. . . , l}
(MV) aspect. The main contributions of our study are N Set of plant and customers, indexed by i ∈
fourfold. First, we present strong formulations and {0,. . . , n}, where the plant is represented by
exact algo- rithms for both the IRP and PRP with node 0 and Nc = N \ {0} is the subset of n
multiple vehi- cles, thereby filling several important customers
gaps in the literature, as shown in Table 1. Several E Set of edges, E= {(i, j): i, j∈ N, i < j}
formulations are presented and branch-and-cut K Set of identical vehicles, indexed by k ∈
algorithms are pro- posed to solve the problems {1,. . . , m}
under both the OU and ML policy. Second, we E(S) Set of edges (i, j) ∈E such that i, j ∈S, where
propose several valid inequal- ities and symmetry S ⊆ N is a given set of nodes
breaking constraints to strengthen the formulations (S) Set of edges incident to a node set S, (S) =
and test the effect of these inequal- ities. Third, we {(i, j) ∈E: i ∈S, j ØS or i ØS, j ∈S} (for simplic-
use an adaptive large neighborhood search (ALNS) ity, we write (i) to represent the set of edges
procedure that was previously devel- oped for the incident to node i).
MVPRP-ML (Adulyasak et al. 2012) and extend it
to the MVPRP-OU, MVIRP-ML, and MVIRP-OU. Decision variables:
Fourth, we provide extensive computa- tional
pt Production quantity in period t
results of the new formulations and further explore
Iit Inventory at node i at the end of period t
the performance of the algorithm on a multi-
core machine. yt Equal to 1 if there is production at the plant in
period t, 0 otherwise
The rest of the paper is organized as follows. Sec-
tion 2 presents different formulations of the MVPRP. zikt Equal to 1 if node i is visited by vehicle k in
period t, 0 otherwise
Section 3 describes the valid inequalities that are
applied to the formulations. The details of the xijkt If vehicle k travels directly between node i and
node j in period t, 0 otherwise
branch- and-cut approaches are discussed in §4, and
the details of the heuristic algorithm to calculate qikt Quantity delivered to customer i with vehicle k
upper bounds are presented in §5. This is followed in period t.
by the
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP

Parameters: ∀ (i, j) ∈ E: i /= 0, ∀ k ∈ K, ∀ t ∈ T , (14)


u Unit production cost x0jkt ∈ {0,1,2} ∀ j ∈ Nc, ∀ k ∈ K, ∀ t ∈ T . (15)
f Fixed production setup cost
hi Unit inventory holding cost at node i The objective function (1) minimizes the total pro-
cij Transportation cost between nodes i and j duction, setup, inventory, and routing costs. Con-
dit Demand at customer i in period t straints (2) and (3) ensure the inventory flow balance
C Production capacity at the plant and at the customers’ area, respectively.
Q Vehicle capacity Constraints (4) are the setup forcing and produc-
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Li Maximum or target inventory level at node i tion capacity constraints at the plant: they force the
Ii0 Initial inventory available at node i. setup variable to be 1 if production takes place and
limit the production quantity to the minimum of
2.2. Multivehicle Formulations for the ML Policy the production capacity and the total demand in the
In this section, we introduce two formulations for remaining periods. The inventory quantity at the
the MVPRP-ML: one with and one without a vehicle pro- duction facility at the end of each period is
index. limited by constraints (5) and the inventory quantities
2.2.1. Formulation With a Vehicle Index for the at the cus- tomers’ area after delivery cannot exceed
ML Policy. To formulate the MVPRP-ML with a vehi- their inven- tory capacities (6). The total quantity
cle index, we extend the single-vehicle PRP formula- loaded in each vehicle can be at most the vehicle
tion used by Archetti et al. (2007, 2011), as follows: capacity as specified by (7). Constraints (8) allow
each customer to be vis-
Σ Σ Σ Σ
min upt + fyt + hiIit + cijxijkt (1) ited at most once in each period. Constraints (9) allow
t∈T i∈N (i, j)∈E k∈K a positive delivery quantity from vehicle k to node i
in period t only if this node is visited by the vehi-
s.t.
Σ cle in period t. In the ML policy, there always exists
I0, t−1 + pt = Σ qikt + I0t ∀ t ∈ T , (2) an optimal solution with 0 ending inventory, because
i∈Nc k∈K
Σ it is never beneficial to carry inventory at the end of
Ii, t−1 + qikt = dit + Iit ∀ i ∈ Nc, ∀ t ∈ T , (3) the planning horizon if the holding costs are nonneg-
k∈K ative.
limitedTherefore, the delivery
by the minimum quantity
value among tothe
a customer is
inventory
Σ l }
pt ≤ min C, Σ di capacity at the customer, the vehicle capacity, and the
i∈Nc j=t
yt ∀t ∈T, (4) total demand of the customer in the remaining peri-
j

I0t ≤ L0 ∀t ∈T, (5) ods. Constraints (10) are the degree constraints; they
Σ require the number of edges incident to node i to be
Ii, t−1 + qikt ≤ Li ∀ i ∈ Nc, ∀ t ∈ T , (6) 2 if it is visited. Constraints (11) eliminate subtours
k∈K
Σ for each vehicle.
qikt ≤ Qz0kt ∀ k ∈ K, ∀ t ∈ T , (7) Archetti et al. (2007, 2011) also strengthen the for-
i∈Nc
mulation using several valid inequalities. We present
Σ
zikt ≤ 1 ∀ i ∈ Nc, ∀ t ∈ T , (8) here the inequalities that are valid for the PRP
k∈K with capacitated production and extend them to the
}
qikt ≤ min Σ multivehicle case. Denote by tr and trr the earliest
Li, l di zikt
period when the plant must produce and the ear-
Q, j liest period when at least one customer must be
j=t
∀ i ∈ Nc, ∀ k ∈ K, ∀ t ∈ T , (9) replenished to prevent a stockout, respectively; i.e.,
Σ Σ ij
Σ tr = arg min 1≤t≤l { i∈N max{0, t d — } − I00 > 0}, rr
xjjr kt = 2zikt and rr c
j=1
ij
Ii0 Σ{t
r j )∈ (i) t = min i∈N t , iwhere t =i arg min 1≤t≤l
rr rr d −
(j, c j=1
Σ
∀ i ∈ N, ∀ k ∈ K, ∀ t ∈ T , (10) i.e., w = i∈Nc max{0, d — Ii0 }. First, two inequal-
Σtrrthe minimum
Ii0 > 0}. Let w be
ij
shipping quantity in t ;
Σ Σ j=1

xijkt ≤ zikt − zekt ities are used to prevent stockouts:


(i, j )∈E(S)
i∈S

∀ S ⊆ Nc, |S|≥ 2, ∀ e ∈ S, ∀ k ∈ K, ∀ t ∈ T , (11) Σ


tr
yt ≥ 1, (16)
t=1
pt, Iit, qikt ≥ 0 ∀ i ∈ N, ∀ k ∈ K, ∀ t ∈ T , (12)
trr , ,
y t, z ikt∈ {0,1} ∀ i ∈ N, ∀ k ∈ K, ∀ t ∈ T , (13) Σ w
Σ z0kt ≥ . (17)
Q
xijkt ∈ {0, 1} k∈K t=1
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

Second, the following inequalities are imposed to Constraints (22)–(26) are equivalent to (2)–(3), (6),
strengthen the customer replenishments: and (9)–(10), respectively. Constraints (27) limit the
s Σ s number of vehicles leaving the production facility to
Ii, t−s−1 ≥ di, t−j zik,t−j the number of available vehicles in each period. Con-
Σj=0 1− k ∈K straints (28) are the subtour elimination and vehicle
Σ

j=0
capacity constraints. If one divides the inequalities
∀ i ∈ Nc, ∀ t ∈ T , s = 0, 1,. . . , t − 1. (18) by Q, these constraints have a form similar to the
Finally, the following inequalities are imposed for the generalized fractional subtour elimination constraints
routing part: (GFSECs) for the vehicle routing problem (VRP)
(Toth and Vigo 2002). Unlike GFSECs in the VRP,
zikt ≤ z0kt ∀ i ∈ Nc, ∀ k ∈ K, ∀ t ∈ T , (19)
how- ever, we cannot round up the value of the term
xijkt ≤ zikt and xijkt ≤ zjkt qit/Q because it contains the qit variable, and
∀ (i, j) ∈ E(Nc), ∀ k ∈ K, ∀ t ∈ T . (20) therefore they do not provide strong linear
programming (LP) relax- ation bounds. We prefer to
The formulation (1)–(20) will be referred to as
use the form (28), because preliminary tests have
F (ML) | k. indicated that the original form of GFSECs is
2.2.2. Formulation Without a Vehicle Index for numerically unstable because of the frac- tional
the ML Policy. The previous formulation has the right-hand side.
drawback that the number of variables grows in pro- We can also rewrite inequalities (17)–(20) for the
portion to the number of vehicles. Alternatively, one nonvehicle index formulation as follows:
can express the routing constraints with variables that , ,
do not comprise a vehicle index. The formulation is Σtrr
w ,
z0j ≥ Q (34)
j=1
s
written using the variables q, z, and x with the same s
notation as in the previous section, but the vehicle Ii, t−s−1 ≥ Σ
di, t−j zi, t−j
index k is dropped. The only exception is the variable Σj=0
1−
j=0
z0t , which is changed to be an integer variable rep- ∀ i ∈ Nc, ∀ t ∈ T , s = 0, 1,. . . , t − 1, (35)
resenting the number of vehicles leaving the plant in
z ≤ z0t ∀ i ∈ Nc, ∀ t ∈ T ,
it
(36)
period t. The formulation without the vehicle index
can be stated as follows: xijt ≤ zit and xijt ≤ zjt ∀ (i, j) ∈ E(Nc), ∀ t ∈ T . (37)
Σ Σ Σ
min upt + fyt + hiIit + cijxijt (21) The nonvehicle index formulation, together with
t∈T i∈N (i, j)∈E the inequalities (34)–(37) in this section and (16), will
s.t. (4)–(5) and be referred to as F (ML) nk.
|
Σ We also remark here on reformulation schemes for
I0, t−1 + pt = qit + I0t ∀t ∈T, (22) the PRP-ML. We have tested the facility location refor-
i∈Nc mulation, called four-index facility location (FIFL),
Ii, t−1 + qit = dit + Iit ∀ i ∈ Nc, ∀ t ∈ T , (23) proposed by Ruokokoski et al. (2010). The prelimi-
nary results show that, in our case, where produc-
Ii, t−1 + qit ≤ Li ∀ i ∈ Nc, ∀ t ∈ T , (24) tion, inventory, and vehicle capacities are imposed,
Σ
l }
qit ≤ min the facility location reformulation is slightly inferior
Li, di zit ∀ i ∈ Nc, ∀ t ∈ T , (25) in terms of computing times to the basic formula-
Q, j tion with the inequalities used in Archetti et al. (2007,

j=t
Σ
xjjr t = 2zit ∀ i ∈ N, ∀ t ∈ T , (26) 2011). The main reasons are, first, that the inequalities
(j, j r )∈ (i) (18) already substantially strengthen the formulation,
and second, that the FIFL formulation has a much
z 0t ≤ m ∀ t ∈ T , (27) larger number of variables than the basic formulation.
Σ Σ
Q xijt ≤ (Qzit − qit)
(i, j)∈E(S) 2.3. Multivehicle Formulations for the OU Policy
i∈S
This section presents two formulations for the
∀ S ⊆ Nc, |S| ≥ 2, ∀ t ∈ T , (28) MVPRP-OU: one with and one without a vehicle
ptt, Iitit, qit ≥ 0 ∀ i ∈ N, c∀ t ∈ T , (29) y , z ∈ {0, 1} ∀ i ∈ N , ∀ t ∈ T , (30)
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP
index. 2.3.1. Formulation With a Vehicle Index for the
OU Policy. In the OU policy, when a customer is vis-
z0t ∈ A+ ∀t ∈T, (31) ited, the inventory before demand consumption must
be replenished to reach its TSL. Archetti et al. (2007,
xijt ∈ {0, 1} ∀ (i, j) ∈ E: i /= 0, ∀ t ∈ T , (32) 2011) added constraints to the formulation F (ML) | k
x0jt ∈ {0, 1, 2} ∀ j ∈ N c, ∀ t ∈ T . (33) to solve the single-vehicle IRP with the OU policy.
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1
However, it has been shown by Solyalı and Sü ral and givt > Li. The strong formulation, referred to as
(2011) that a stronger version of the IRP-OU can be
F (OU) | k, is as follows:
obtained by using a shortest path network represen-
Σ Σ Σ
tation for the customer inventory replenishment part. min upt + fyt + h0I0t + cijxijkt
This reformulation scheme exploits the characteristic t∈T
}k∈K
(i, j)∈E
of the OU policy that the delivery quantity for a cus- Σ
t−1
Σ Σ eivthikvt
tomer i visited in period t is equal to the total +
Σ (38)
demand

consumption in the interval between t 1 and the i∈Nc k∈K t∈T r v=v(i, t)
pre-
vious visit in period v < t. In our preliminary test, we s.t. (5), (10)–(15) and
have also observed that this reformulation is far supe-
rior to the formulations of Archetti et al. (2007, 2011) Σ Σ Σ
t−1

for multiple vehicles. As a consequence, we adopt the I0, t−1 + pt = givthikvt + I0t ∀t ∈T, (39)
reformulation presented in Solyalı and Sü ral (2011) i∈Nc k∈K v=v(i, t)
and extend it using a vehicle index. We define di0 =
di, l+1 = 0, T r = T ∪ {l + 1} and use the following addi- pt ≤ Cyt ∀t ∈T, (40)
t−1
Σ
tional notation:
givthikvt ≤ Qz0kt ∀ k ∈ K, ∀ t ∈ T , (41)
Σc v=v(i, t)
i∈N
hikvt Binary variable, equal to 1 if node i is visited t−1
Σ
by vehicle k in period t and the previous visit hikvt = zikt ∀ i ∈ Nc, ∀ k ∈ K, ∀ t ∈ T , (42)
is in period v; 0 otherwise v= v(

Σ
i, t)

givt Total delivery quantity when customer i is k µ(i, 0)


visited in period t and the previous visit is in Σ hik0t = 1 ∀ i ∈ Nc, (43)
period v t=1

Σ Σ
∈K
eivt Total inventory holding cost when customer t−1 Σ µ(i, t)
hikvt − Σ
i is visited in period t and the previous visit hiktv = 0 ∀ i ∈ Nc, ∀ t ∈ T , (44)
is in period v k∈K v=v(i, t) k∈K v=t+1
µ(i, t) The latest period after period t when l
Σ
customer i can be replenished next with-
out having a stockout; i.e., µ(i, t) = Σ hikt, l+1 = 1 ∀ i ∈ Nc, (45)
arg maxt<v≤l+1{givt Li} k∈K t=v(i, l+1)

v(i, t) The earliest period ≤before period t when cus- hikvt ∈ {0, 1} ∀ i ∈ Nc, ∀ k ∈ K, ∀ v, t ∈ T r. (46)
tomer i can be replenished without having a
stockout; i.e., v(i, t) = arg min0≤v<t{givt ≤ Li}. The objective function (38) and constraints (39)–(41)
are equivalent to (1), (2), (4), and (7), respectively.
The parameters givt and eivt can be calculated as Constraints (42) provide the link between the hikvt
follows:
and zikt variables. Constraints (43)–(45) represent the

short- est path network of the OU policy at each
Σ
t−1
customer.
As in the formulation presented by Solyalı and
Sü ral (2011), the inequalities (19) and (20) are also
dij + (Li − Ii0) if v = 0, added to strengthen the routing part of the formu-
 j=1
lation. We further add (16) and (17) to reinforce the
 t−1 production part.
givt = Σ
 dij if 0 < v < t ≤ l, 2.3.2. Formulation Without a Vehicle Index for

j=v
 the OU Policy. The nonvehicle index formulation for
0 if t = l + 1, the OU policy can be written using the same notation
j |
Σ
t−1
eivt =  j=1
Ii −
 0
i
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP
Σ j dir i 0 a e formulation F (ML) nk, using the variable h
 s as in the previous section but without the vehicle
f = t index k. The formulation, referred to as F (OU) | nk, is
r =1 h as follows: Σ
t−1
hi Σ Li − r dir if 0 < v < t ≤ l + min Σ upt + fyt + h0I0t + cijxijt
j=v Σ (i, j
1. t∈T

Σ Σ
=v
+ Σ )∈E

}
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Preprocessing can be used to eliminate variables t−1


associated with infeasible delivery quantities givt
> i∈Nc t∈T r v=v(i, t)

eivthivt (47)
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

s.t. (5), (40), (26)–(27), (29)–(33) and each dispatched vehicle. These two types of symme-
try are present in each period, and hence there can be
m m m
Σ Σ
t−1
[ m¯ m¯ 1 !][m¯ m¯ 2 !] ·m· · [l m¯ !] equivalent solutions. For
I0, t−1 + pt =
¯l
givthivt + I0t ∀t ∈T, (48) 1 2
example, for an instance with three periods and three
i∈Nc v=v(i, t)
t−1 vehicles, if two vehicles are used in each period,
Σ hivt = zit ∀ i ∈ Nc, ∀ t ∈ T , (49) there are3 [ 3 2!] = 216 equivalent
2
v=v(i, t) solutions that can
be obtained by re-indexing the vehicles. Such symme-
µ(i, 0)
Σ try issues typically slow down the branch-and-bound
process because of the duplications in the search pro-
hi0t = 1 ∀ i ∈ Nc, (50) cess (Sherali and Smith 2001).
t=1
To break the first type of symmetry, we can use

+
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP
µ(i, t)
Σ
t−1
hivt − Σ h = 0 ∀i∈N, ∀t ∈T, (51) the following symmetry breaking constraints (SBCs)
itv c
v=t+1
to allow vehicle k 1 to be dispatched only if vehicle k
v=v(i, t)
is also dispatched:
l
Σ (SBC0) z0kt ≥ z0, k+1, t 1 ≤ k ≤ m − 1, ∀ t ∈ T . (55)
hit, l+1 = 1 ∀ i ∈ Nc, (52)
To address the second symmetry issue, we can use
t=v (i,
l+1)
Σ
Q xijt ≤ Σ Qzit − Σ
t−1 different sets of SBCs. These sets cannot be imposed
givthivt
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

(i, j)∈E(S) v=v(i, t)


together, but each can be used in conjunction with
i∈ SBC0. The first set breaks the symmetry of the routes

∀ S ⊆ Nc, |S| ≥ 2, ∀ t ∈ T , (53) by ordering them according to their total route costs:
Σ cx Σ
hivt ∈ {0, 1} ∀ i ∈ Nc, ∀ v, t ∈ T r. (54) (SBC1) ij ijkt ≥ cijxij, k+1, t
(i, j)∈E (i, j)∈E
Constraints (48)–(52) are equivalent to (39) and 1 ≤ k ≤ m − 1, ∀ t ∈ T .
(42)–(45), respectively. Constraints (53) are equivalent
to (28). Note that inequalities (16), (34), and (36)–(37) Alternatively, one can impose that the vehicles be
are also added a priori in our implementation to make ordered according to their total delivery quantity:
a fair comparison with the other formulations. Σ Σ
(SBC2) qikt ≥ i, +1, t
k
q
2.4. Formulations for the MVIRP i∈Nc i∈Nc

All prior formulations can be easily modified to solve 1 ≤ k ≤ m − 1, ∀ t ∈ T for F (ML) | k


t−1
the MVIRP by disregarding the production part (i.e., t−1
Σ Σ Σ Σ
production setup and quantity decisions). First, the or givthikvt ≥ givthi, k+1, vt
production setup variable yt is set to 1; i.e., yt = y¯t = 1, i∈Nc v=v(i, t) i∈Nc v=v(i, t)

∀ t∈ T . Second, denote by Bt the production quan- 1 ≤ k ≤ m − 1, ∀ t ∈ T for F (OU) | k.


tity made available in each period, constraints (4)
and We also use the lexicographic ordering constraints
pt = Bt y¯t ∀ t ∈
(40) are replacedΣlwith T , , and parame- (Sherali and Smith 2001, Degraeve et al. 2002, Jans
ters min{Li , Q, j=t di } in constraints (9) and (25) 2009) to assign a unique number to each possible set
are j
replaced with min{Li, Q}. The rest of the of customers for a route and order the vehicles accord-
formulations ing to their assigned number. The lexicographic order-
remain unchanged. ing constraints can be imposed first with respect to
customer one only, next with respect to customers one
and two, and so on:
3. Valid Inequalities
In this section, we introduce two groups of new valid
inequalities: one for the vehicle index and the other j j

for the nonvehicle index formulation. Σ Σ


(SBC3)
2(j−i) zikt ≥ 2(j−i) zi, k+1, t
i=1
3.1. Valid Symmetry Breaking Inequalities for the i=1

Vehicle Index Formulations ∀ j ∈ Nc, 1 ≤ k ≤ m − 1, ∀ t ∈ T .


In each period t there are two main symmetry issues We can also use only the final constraint of SBC3,
that stem from the presence of identical vehicles. including all the customers to impose a unique order-
Denote by m¯ t the number of dispatched vehicles ing in each period:
in
period t. options
possible First, intovehicle
select dispatching,
m¯ there are m (SBC4) Σn Σn
m̄t 2(n−i)z ikt ≥ 2(n−i)z
t vehicles from the fleet. i=1 i=1
i, k+1, t
Second, among the selected vehicles, there are still
1 ≤ k ≤ m − 1, ∀ t ∈ T .
m¯ t ! options to swap the routes that are assigned
to
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

3.2. Valid Inequalities for the Nonvehicle root node lower bound, as can be seen in the compu-
Index Formulations
tational experiments.
To strengthen the nonvehicle index formulations, we Denote by p(S, r) the minimum number of vehi-
add the following inequalities a priori. cles that must be dispatched to carry the demands in
customer set S during periods 1 to r, calculated as
Σ Σr
Qz0t ≥ qit ∀ t ∈ T for F (ML) | nk or (56) p(S, r) = i∈S max{0,
dit − Ii0 }/Q . The following
i∈N t=1
Σ

Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

t−1
c
inequalities are also imposed:
Σ Σ Σr Σ
Qz0t ≥ givt h ∀ t ∈ T for F (OU) | nk. (57) xijt ≥ 2p(S,r) ∀ S ⊆ Nc, |S|≥ 2, r ∈ T . (61)
ivt
i∈Nc v=v(i, t) t=1 (i, j)∈ (S)

Constraints (56) and (57) require the number of These constraints ensure that the total number of
vehi- cles leaving the production facility to be vehicles entering and leaving the set of customers S
sufficient to carry delivery quantities to all from period 1 to period r must be sufficient to carry
customers in each period. the demands during these periods.
Because GFSECs (28) and (53) are generally weak,
we further strengthen the nonvehicle index formu-
lations by adding the following subtour elimination
4. Branch-and-Cut Approaches
Because all the formulations contain an exponentially
constraints
Σ (SECs): large number of subtour elimination constraints, a
x ≤ Σz − zijt it et natural way to solve the problems is to use a branch-
(i, j )∈E(S)
i∈S and-cut technique. In this process, the subtour elimina-
tion constraints, i.e., constraints (11) for the F (ML) | k
∀ S ⊆ Nc, |S| ≥ 2, e ∈ S, ∀ t ∈ T . (58) and F (OU) | k and GFSECs for the F (ML) | nk and
These cuts are used to prevent subtours in each F (OU) nk, are dropped from the formulations and
period, but they do not take into account the vehi- | iteratively when they are violated at each
are added
cle capacity. Therefore, they have to be used together node of the branch-and-bound tree. In this section
with GFSEC (28) or (53) to generate feasible multi- we provide the details of our branch-and-cut
vehicle routes. approaches for both types of formulations. For the
To take into account the periodic routing decisions variable selec- tion, we first branch on the y
of the MVPRP, we also add another set of constraints variables, next on the z variables, and finally on the x
to the formulation, called multiperiod generalized variables. Among the variables with the same
fractional subtour elimination constraints (MGFSECs), priority, we use the default settings in CPLEX 12.3 to
as follows: select a specific variable to branch on. The remaining
parameters are set to their
default values.
QΣ ΣΣ
t∈R (i, j)∈E(S)
xijt ≤ (Qzit − qit)
Σ t∈R i∈S 4.1. Branch-and-Cut for the Vehicle
Index Formulations
∀ S ⊆ Nc, |S| ≥ 2, ∀ R ⊆ T or (59) To solve the vehicle index formulations F (ML) | k and
Σ Σ ΣΣ
t−1
Σ F (OU) | k, we use an exact separation algorithm that
Q xijt ≤ givthivt solves a minimum s − t cut problem to detect vio-
Qzit −
t∈R (i, j)∈E(S) t∈R i∈S v=v(i, t) lated subtour elimination constraints for each vehicle
∀ S ⊆ Nc, |S| ≥ 2, ∀ R ⊆ T . (60) improvements in the

Similar to GFSECs (28) and (53), constraints MGF-


SECs (59) (for F (ML)| nk) and (60) (for F (OU)| nk)
prevent subtours and ensure that the number of
vehi- cles is sufficient to carry the delivery quantity
to the set of customers S during the time period set R.
These constraints are an aggregated version of the
GFSECs and equivalent to GFSECs | | = when R 1.
Although inequalities MGFSECs are in fact weaker
than their disaggregate counterpart GFSECs, adding a
single cut instead of one per period avoids making
the problem grow too quickly. Furthermore, we have
developed a specialized separation procedure for
MGFSECs, and their inclusion often leads to
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP
in each period. This is valid because vehicle tours are
distinguished by the vehicle index. At each node
of the branch-and-bound tree denote by z¯ikt and
x¯ijkt the current values of variables zikt and xijkt . A
graph for vehicle k in period t is constructed
from the set of nodes where z¯ikt > 0 and the
weights of the edges in the graph are set to the
value xijkt , i, j N . Then, a series of minimum s ¯ ∀ ∈
t cut problems is solved by −
setting the plant node as the source node and each
customer i Nc zikt > 0 as the sink node. A violated ∈
SEC is identified if the value of the minimum
cut is ¯
less than 2 zikt . If a subtour on a set of nodes s is
found for vehicle k in period t, we add the
inequalities (11) with e arg maxi N {zikt} to the =
formulation. We have implemented the separation ¯∈
algorithm described in c
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

Ruokokoski et al. (2010) and use the minimum s t stored in an ordered list. Then an empty set of cus-

cut algorithm of the Concorde callable library (Apple- tomers S and an empty set of violated sets ((S) are
gate et al. 2011). Although this separation algorithm created. The separation algorithm starts by adding
is different from that used by Archetti et al. (2007, the first customer in the ordered list to S and checks
2011) and Solyalı and Sü ral (2011), it has proven to be
whether the MGFSEC of the set S is violated. The
efficient in our branch-and-cut algorithm.
next customer is then added to S and the algorithm
We have also tested different options for adding
checks for the MGFSEC again, and so on. The violated
the subtour elimination constraints to the formula-
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

MGFSECs are stored in ((S). If a violated MGFSEC


tion. The first option is to use constraints (11) and
is found or all the customers in the ordered list have
when a subtour is detected, add the cut only for the
been added to S, the set is emptied and the first cus-
specific vehicle for which it was violated. The sec-
tomer in the ordered list is removed. The algorithm
ond option is to add this cut for all vehicles in the
then starts again by adding the new first customer in
same period. The third option is to use an aggregated
the ordered list to S. This process is repeated until
version of constraints (11), which is also equivalent
the ordered list is empty or n violated cuts are found.
to (58):
Σ Σ Σ Σ Σ In our implementation, we consider the subset R of
xijkt ≤ zikt − zekt all two and three consecutive periods in T .
The previous separation algorithm can also be used
k∈K (i, j)∈E(S) k∈K i∈S k∈K to generate the cuts (61). We first set R = {t: 1 ≤ t ≤ r},
∀ S ⊆ Nc, |S| ≥ 2, ∀ e ∈ S, ∀ t ∈ T . (62) ∀ r ∈T , i.e., the set from time period 1 to r∈ T , and
use the demand dit in place of the delivery quantity
The results indicate that the first option was the best q¯it in the calculation of si. The algorithm is then set to
strategy; the second option was slightly worse, and detect the cuts (61) instead of MGFSECs.
the third option was far worse than the other two. Because it is very time consuming to solve all
separation problems at every node of the branch-
4.2. Branch-and-Cut for the Nonvehicle and-bound tree, we use the following cut generation
Index Formulation strategy: At the root node, all separation algorithms
The three different subtour elimination constraints, are called to generate the GFSECs, SECs, MGFSECs,
GFSECs (28) and (53), SECs (58), and MGFSECs (59) and (61). At each further node of the tree, only the
and (60), are used for the formulations without vehi- GFSECs and SECs are considered in the following
cle index. To detect SECs, we use the same separa- sequence: (1) the separation algorithm for the SECs
tion algorithm as for the vehicle index formulations is called, (2) if there is no violated SEC, the separa-
described earlier to find and generate the cuts for each tion algorithms for the GFSECs are called. The pro-
period t. For the GFSECs, we use the four heuris- cess can significantly improve the performance of the
tic separation algorithms described by Lysgaard et al. algorithm because using GFSECs alone is inefficient
(2004) for the VRP. One of these heuristics is in fact an because of the fractional coefficients. Using the SECs
exact separation procedure when all xijt variables are can efficiently eliminate subtours (even though the
integer. To generate the cuts, we call the separation vehicle capacity can still be violated), whereas
algorithms for each period t. Denote by z¯it , x¯ijt ,
q¯it , and h¯ ivt the current values of variables zit , xijt , adding GFSECs and MGFSECs can eliminate the
qit , and routes with exceeded vehicle capacity. The
hivt, respectively, in the branch-and-bound tree. The computational results in §6.2.2 show a significant
VRP solution for the separation routine in period t performance improve- ment using the three cuts
can together compared to using GFSECs alone.
be constructed as follows: First, we consider only the
nodes for which z¯it > 0. Then the weight of edge (i, 5. Optimization-Based Adaptive
j)
is set to x¯ijt and the delivery quantity for customer i
Σt−1
is set to givt iv for
for F (ML) | nk and to v=v(i, t) t
Large Neighborhood Search
q¯it h¯
|
F (OU) nk. Note that the maximum number of sub-
sets produced by the separation algorithms for each
Heuristic
In this section we present a heuristic to compute
period t is limited to n per call.
upper bounds used in the branch-and-cut algorithms.
For the MGFSECs, we developed a greedy heuristic
This heuristic is based on the ALNS framework that
separation algorithm. For each subset R ⊆ T , we con-
was proposed by Ropke and Pisinger (2006) for the
sider the set of customers with Σ ¯「z 0 and VRP. The basic idea of the ALNS is to repeatedly
Σ Σ
>itt∈R 「z¯ destroy and repair a solution using several heuristic
Σ Σt−1 the value si =
calculate t∈R q¯it / t∈R it (or
v=v(i, t) g h¯
sresenting
= /
i t∈R ivt ivt 「 ¯ for F (OU) | nk),
the Σaverage delivery quantity per visit to
it rep-
customer i during the period z set R. Customers are ranked in descending order of the value of si and
t∈R
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 to seek improvement. These operators are MVPRP
operators
probabilistically selected based on empirical scores
related to their success in terms of finding
improved
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1
solutions. The ALNS heuristic to handle the MVPRP- The best version of the SBCs from §3.1 is also added
ML, called an optimization-based adaptive large to improve the performance of the formulation. Note
neighborhood search (Op-ALNS), was introduced by thatΣthe delivery quantity variable qikt is calculated
Adulyasak et al. (2012). The procedure consists of as q v=v(i, t) givthikvt. This problem is solved in
t−1

two main phases: initialization and improvement. an attempt to approximately take transportation costs
The initialization phase is used to generate a number into account, without explicitly modeling the routing
of initial solutions with different production setup decisions. Then the routes for the vehicles are deter-
con- figurations. These solutions are created by an mined by solving the traveling salesman problem
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

embed- ded enumeration scheme using inequalities (TSP) for each vehicle individually. We construct the
inspired from local branching (Fischetti and Lodi TSP tours using the GENIUS procedure (Gendreau
2003). In the improvement phase, the generated et al. 1992) and improve them using the three-opt
initial solu- tions are further improved by the pro- cedure (Lin 1965). Additionally, to solve the
ALNS operators. In this process, the customer visit MCF for the OU policy, we set the inventory level of a
and routing vari- ables are handled by two types of visited customer i in period =t as− Iit Li dit . The
operators, selection remainder of the Op-ALNS algorithm for the OU
and transformation; the remaining continuous vari- policy is the same as for the ML policy.
ables associated with production, inventory, and
ship- ment quantities are set by solving a network 5.2. Adaptation of the Op-ALNS for the MVIRP
flow model. The computational experiments Because production setups are irrelevant for the IRP,
reported by Adulyasak et al. (2012) show that the we generate initial solutions with different customer
visit decisions. Denote by s the
¯it value of the cus-
Op-ALNS outperformed existing heuristics on small
tomer visit variable zit in solution
z s. The original local
to very large instances. We provide more details on
branching inequality used in the initialization phase
the Op- ALNS in the online supplement, and explain
is replaced with the following inequality to generate
how this algorithm is adapted for the MVPRP-OU and an initial solution s¯:
the MVIRP (both ML and OU) in §§5.1 and 5.2, , ,
respec- tively. Note that only the initialization Σ ΣΣ
¯≥
phase of the
original Op-ALNS is modified in these adaptations. Σ (1 − zit ) + s
zit 0.25 z it
it zit | z¯its i∈Nc t∈T
5.1. Adaptation of the Op-ALNS for the zit |
=0 s = 1,. . . , s¯ − 1. (64)
MVPRP-OU z¯s =1
In the original Op-ALNS, infeasible routes are
The inequality (64) forces at least 25% of the total cus-
allowed when generating initial solutions because
tomer visits over the horizon to change. The maxi-
the selection and transformation operators can han-
mum number of initial solutions in the pool is set to
dle such routes effectively by repeatedly reallocating
10 for the MVIRP, and the other parts of the
delivery quantities. However, it is much more difficult algorithm remain the same.
to remove and reinsert node candidates from infeasi-
ble routes in the OU policy because the delivery quan-
tity is defined by the difference between the inventory 6. Computational Experiments
level and the TSL. Therefore, it is easier to start from The branch-and-cut algorithms were coded in C# on
initial solutions with feasible routes. To ensure that MonoDevelop 2.2 using CPLEX 12.3 under Scientific
feasible solutions are obtained at the end of the ini- Linux 6.1. The experiments were performed on a
tialization process, we take the capacity restriction of workstation with an Intel Xeon 2.67 GHz processor
each vehicle into account in the first subproblem. We and 24 GB of RAM. A multiple core processor, with
denote this by σi = min{2c0i , minj, k∈N , j/=k (cij +cik )}, i.e., each core having the same specifications, was also
the minimum value between the cost of making a used for the parallel computing experiments in §6.4.
round trip from the production facility and the cost The Op-ALNS heuristic, adapted from Adulyasak
to the two nearest neighbors of customer i. The first et al. (2012), was coded in C# using Microsoft Visual
sub- problem in the initialization phase for the Studio 2008 and executed on a workstation with a 2.10
MVPRP-OU is as follows: GHz CPU and 2 GB of RAM under Windows XP.
Σ Σ Σ In Tables 2 and 5–7, we report the average CPU
min upt + fyt + h0I0t + σizikt times in seconds and the average number of nodes
t∈T
i∈Nc k∈K in the columns CPU and Nodes, respectively. Column
}
t−1 %LB shows the final lower bound as a percentage of
+ Σ Σ Σ e h the best upper bound found by all approaches. Bold-
Σ
ivt ikvt (63)
face letters are used to indicate the best results. In
i∈Nc k∈K t∈T r v=v(i, t)
all tables, if all instances of a given problem size are
subject to (4), (8), (12)–(13), (39)–(46). solved to optimality, we put boldface letters on the
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP

Table 3 Summary of the Time Reduction Factors with Different

1,367
8,564
2,567

1,208
7,893
1,765

98.9 4,954
3 94.9 3,438.3 45,567
98.4 1,033.7 52,474 104 99.3 617.310,737 103 99.1 655.5 11,723

98.9 1,460 100 100.0 104.6 1,518


6 95.3 3,025.4 24,768
718.4 6,048 98 98.2 824.7 8,009 106 99.2 579.3 5,097 106 99.2 591.4 5,393
Node
Symmetry Breaking Constraints on Instances Solved to
Optimality

42 99.7 588.1

43 100.0 193.5

43 99.8 477.4
40 100.0 147.2
2 98.1 2,792.7

0 97.8 3,600.0
SBC0 + 4

Problem Value SBC0 SBC0 + 1 SBC0 + 2 SBC0 + 3 SBC0 + 4


CPU

MVPRP-ML Min 1.16 1.62 1.29 1.65 1.48


Max 4.42 6.45 5.76 11.65 9.26

88.4 4,568 100 100.0


%LB

Avg 2.11 3.25 2.38 4.53 4.15


MVPRP-OU Min 0.93 0.91 0.76 0.98 0.99
#O
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Max 1.47 6.13 2.14 5.20 5.31


Avg 1.14 1.72 1.15 2.03 1.94
44 100.0 118.0 786
1 98.2 3,564.7 9,041
45 99.9 405.2 1,474
40 100.0 161.6 1,473
2 98.1 2,794.0 8,121
42 99.7 600.4 2,581

4 95.6 3,261.541,581

6 95.4 2,981.223,282
Node

MVIRP-ML Min 0.94 1.24 1.12 1.39 1.59


Max 3.87 16.55 3.49 42.50 40.64
SBC0 + 3

Avg 1.87 4.89 1.99 9.70 9.09


CPU

MVIRP-OU Min 0.80 0.62 0.43 1.50 1.36


Max 2.15 3.35 1.89 7.92 6.51
99.9 520.4 55,501 100 100.0

142.1 1,977 98 100.0 269.6 3,733 100 100.0


%LB

Avg 1.19 1.49 1.08 3.13 3.02


#O

smallest total computing time; otherwise, boldface let-


2,664
8,425
3,624

1,662
7,991
2,189

91.1 3,600.0 37,335

3,600.0 26,404 0 89.4 3,600.0 29,394


Node

ters are used for the best average percentage of


lower bounds. To compare the performance of
1,374 38 100.0 332.2

2,363 40 99.6 771.3

903 42 100.0 232.6

1,492 42 99.7 513.2


7,307 2 97.9 2,966.8

7,974 0 97.3 3,600.0


SBC0 + 2

different for- mulations, we summarize the average


#O %LB CPU

results for the instance sizes where all instances


were solved to opti- mality by one of the
formulations in the row Opti- mal, the average
results for the remaining instances in the row Not
173.2 7,751 94

744.3 12,195 94
3,600.0 34,414 0

optimal, and the average results for all instances in


Average Results with Different Symmetry Breaking Constraints on the MVPRP and MVIRP Instances

Node

the row Total. Column “#” indicates the number of


instances in each group, and column “#O” shows the
216.2

650.0

134.5

423.3
2,818.9

3,600.0

number of instances solved to optimality.


SBC0 + 1
CPU

6.1. Details of the Instances


We created two test sets—MVPRP and MVIRP—
2 98.1
41 99.7
39 100.0

44 100.0
0 97.7
44 99.8

99.9 607.9 66,896 100 100.0


0 92.0
98.3 1,106.6 61,775 100 98.7

99.9 288.6 3,803 100 100.0


0 90.7
98.3 840.5 8,394 100 98.4
%LB

from the instances available in the literature. For the


MVPRP instances, we used a subset of the Archetti
#O

et al. (2011) data set, which was designed for testing


a heuristic, to create our own test set. It consists of
3,574
9,386
4,543

1,802
8,978
2,400

90.3 3,600.0 36,170

90.2 3,600.0 31,349


Node

instances with n =10 to 50, to 40, and to 30 customers


for time horizons with l=3, 6, and 9 periods, respec-
99.9 659.9 6,128 37 100.0 417.1

99.5 1,078.8 6,965 39 99.6 845.6

2,124 42 100.0 240.8

2,648 42 99.8 520.7


97.8 3,173.2 11,151 2 97.9 2,987.9

8,421 0 97.5 3,600.0

tively. The number of vehicles is set to m= 2 or 3 for


CPU
SBC0

the instances with n≤ 25 and to m=3 or 4 for the


instances with 25 < n≤ 50. For the MVIRP instances,
#O %LB

we adapted the IRP instances for the single vehicle


case presented in Archetti et al. (2007). Our test set
99.6 807.4 82,297 93

97.9 1,272.8 74,648 93

99.9 369.6 5,518 97

98.1 908.0 9,575 97


89.3 3,600.0 36,402 0

88.8 3,600.0 29,863 0

consists of the instances with 5 to 50 and to 25 cus-


Node

tomers for time horizons with = l 3 and 6 periods,


respectively. The number of vehicles is set using the
44 43 100.0 244.3

48 43 99.8 524.0
4 0 97.6 3,600.0

same method as for the MVPRP instances. There are


CPU
None

336 MVPRP instances and 600 MVIRP instances for


both the ML and OU policies. The details of the
# #O %LB

instances are provided in the online supplement.


40 34

48 36

100 86

120 86

100 96

120 96
8 2

20 0

20 0

6.2. Effect of the Valid Inequalities


This section presents the analysis of the inequalities
introduced in §3. These experiments were conducted
Not optimal

Not optimal
Not optimal

Not optimal
MVPRP-OU
MVPRP-ML

MVIRP-ML
Optimal

Optimal

Optimal

Optimal

on the instances with n≤ 15, and the computing time


MVIRP-OU
Problem

Total

Total

Total
Table 2

Total

limit was set to one hour. The detailed results are pro-
vided in the online supplement.
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1

Table 4 Effects of the Valid Inequalities for the Nonvehicle Index Formulations on
Average Lower Bounds at the Root Node for the MVPRP and MVIRP Instances

Maximum level (ML) Order-up-to level (OU)

Problem None (56) (58) (59) (61) All None (57) (58) (60) (61) All

MVPRP 93.3 93.3 94.7 93.5 93.7 95.2 94.0 94.6 94.5 94.4 94.1 95.2
MVIRP 83.5 83.6 85.4 84.8 87.4 89.0 85.7 86.1 88.3 87.1 87.4 89.7
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

6.2.1. Effect of Vehicle Symmetry Breaking Con- for the MVPRP-ML, MVPRP-OU, MVIRP-ML, and
straints on the Vehicle Index Formulations. We ana- MVIRP-OU instances, respectively. By adding SBC0 +
lyze the effect of symmetry breaking constraints SBC0 SBC3 to the F (ML) k| and F (OU) k | formulations,
alone and SBC0 together with one of the other con- the algorithm could also solve 36 instances that
straints SBC1–SBC4 for the formulations F (ML) k could not be solved to optimality within one hour
and F (OU) k. The average results on the MVPRP and |
| using the formulations without these inequalities.
MVIRP instances are shown in Table 2. In our tests, We further evaluated the performance of the
we used the default settings of CPLEX that allow the different SBCs on instances with a larger number of
solver to detect and generate its own symmetry break- customers, i.e., the first instance in each group with
ing constraints. 25–50 customers and three periods. The +
Table 3 provides a summary of the time reduction formulations with SBC0 SBC3 provided the
factors for each approach, calculated as the average best results with 36 (of 84) instances solved to
computing time spent to solve an instance size with- optimality, compared with only 24 instances without
out using any of our SBCs, divided by the average these SBCs. For the instances not solved to
computing time of using each cut strategy. A time fac- optimality in one hour, the + average lower bound for
tor equal to 2 means the algorithm spent, on average, the formulations with SBC0 SBC3 is 92.4%; the aver-
only half the time by using the SBC strategy com- age lower bound is 90.2% when these SBCs are not |
pared to using no additional SBCs. added. We thus consider the
| + formulations F (ML) k
The results clearly show the benefits of using the and F (OU) k with SBC0 SBC3 in the remaining
SBCs, compared to relying only on those generated computational experiments.
by CPLEX. The original formulation without any addi- 6.2.2. Effect of Valid Inequalities for the Non-
tional SBC provides the worst results; adding SBC0 vehicle Index Formulations. In this section we
could generally improve the computing times and analyze the effect of the valid inequalities that
reduce the number of nodes in the branch-and- we implemented for the formulations F (ML)| nk
bound tree. The combination of SBC0 together and F (OU) |nk. First, we evaluate the effects of
with one of the other SBCs could further speed up the valid inequalities on the lower bounds at the
the solu- tion process, except for SBC2, where some root node of the branch-and-bound tree. To avoid
results are worse than using the CPLEX cuts alone. misinterpretation caused by the impact of the CPLEX
The cut strategies + SBC0 SBC3 and SBC0 + SBC4 cuts, we conducted the experiments without these
pro- vide good results, but+SBC0 SBC3 is slightly cuts. The average lower bounds are shown in Table
better overall. The average time factor reductions 4. The numbers presented are equal to the average
obtained using+ SBC0 SBC3 within the maximum lower bounds at the root node compared to the
computing time limit of one hour are 4.53, 2.03, optimal solutions or the best upper bounds if the
9.70, and 3.13 instances were not solved to optimality. Each
column shows

Table 5 Effects of the Valid Inequalities for the Nonvehicle Index Formulations on the Branch-and-Cut Algorithm for the MVPRP and MVIRP Instances
Maximum level (ML) Order-up-to level (OU)
F (ML) | nk F (ML) | nk+ F (OU) | nk F (OU) | nk+
Problem # #O %LB CPU Nodes #O %LB CPU Nodes # #O %LB CPU Nodes #O %LB CPU Nodes

MVPRP 32 29 100.0 397.3 28,639 32 100.0 161.3 10,337 40 40 100.0 109.7 7,325 40 100.0 69.6 5,105
Optimal
Not optimal 16 0 98.9 3,600.0 83,703 3 99.3 2,954.0 47,366 8 1 98.8 3,530.5 65,816 2 98.9 3,255.2 43,935
Total 48 29 99.6 1,464.9 46,994 35 99.8 1,092.2 22,680 48 41 99.8 679.8 17,073 42 99.8 600.6 11,576
MVIRP
Optimal 80 78 99.9 215.8 36,379 80 100.0 130.9 23,356 80 80 100.0 66.1 5,573 80 100.0 14.0 1,215
Not optimal 40 8 95.4 3,039.4 154,296 8 96.5 3,077.9 124,501 40 9 95.0 3,105.8 155,052 10 96.5 3,014.3 113,077
Total 120 86 98.4 1,157.0 75,685 88 98.8 1,113.2 57,071 120 89 98.3 1,079.4 55,399 90 98.8 1,014.1 38,502
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the


1 MVPRP

INFORMS Journal on Computing 26(1), pp. 103–120,


Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the MVPRP
Table 6 Average Results on MVPRP Instances
MVPRP-ML MVPRP-OU
F (ML) | k F (ML) | nk F (OU) | k F (OU) | nk
n l m %LB CPU %RLB RCPU %LB CPU %RLB RCPU %LB CPU %RLB RCPU %LB CPU %RLB RCPU

10 3 2 100.0 0.2 98.4 0.1 100.0 0.1 98.4 0.1 100.0 0.4 98.1 0.2 100.0 0.1 98.6 0.1
10 3 3 100.0 0.6 98.4 0.2 100.0 0.3 98.9 0.1 100.0 0.6 98.2 0.2 100.0 0.2 98.8 0.1
15 3 2 100.0 2.5 98.0 0.4 100.0 8.6 98.4 0.4 100.0 17.6 93.4 0.9 100.0 54.2 93.4 0.8
15 3 3 100.0 26.6 96.6 1.6 100.0 35.4 97.9 0.7 100.0 17.6 93.1 1.2 100.0 234.4 93.8 0.6
20 3 2 100.0 2.6 99.0 0.7 100.0 4.0 99.1 0.4 100.0 59.6 98.3 1.2 100.0 91.5 98.6 0.9
20 3 3 100.0 51.1 98.3 3.9 100.0 70.9 99.0 1.2 100.0 692.5 97.1 1.9 100.0 1,193.7 97.7 1.2
25 3 2 100.0 3.9 99.5 1.0 100.0 9.5 99.2 0.3 100.0 2,854.8 95.4 2.9 99.5(4) 7,200.0 95.5 1.9
25 3 3 100.0 85.8 98.2 8.1 100.0 589.5 98.7 2.3 98.4(4) 7,200.0 94.6 4.7 98.8(4) 7,200.0 94.8 3.3 ©
30 3 3 100.0 194.2 98.8 32.4 99.9(1) 1,954.5 99.2 7.2 97.8(4) 7,200.0 93.6 19.6 98.0(4) 7,200.0 93.8 8.8

2014 INFORMS
30 3 4 100.0 2,027.8 97.9 62.5 99.8(2) 4,463.3 98.6 6.7 96.3(4) 7,200.0 92.3 28.0 97.1(4) 7,200.0 92.7 9.8
35 3 3 100.0 1,221.2 98.5 52.7 99.5(2) 4,279.9 98.7 13.2 95.6(4) 7,200.0 94.6 25.4 96.0(4) 7,200.0 94.8 11.6
35 3 4 99.0(3) 6,515.4 97.5 70.0 99.0(4) 7,200.0 98.2 12.6 94.6(4) 7,200.0 93.6 36.8 95.4(4) 7,200.0 93.9 11.5
40 3 3 99.7(1) 4,097.6 98.3 100.1 99.4(4) 7,200.0 98.7 35.8 97.6(4) 7,200.0 95.0 88.6 97.8(4) 7,200.0 95.1 16.6
40 3 4 98.3(3) 5,970.7 97.4 168.9 98.9(4) 7,200.0 97.9 35.7 95.3(4) 7,200.0 93.1 100.0 95.8(4) 7,200.0 93.3 27.1
45 3 3 99.1(3) 5,647.0 98.2 324.6 99.4(4) 7,200.0 98.7 50.3 96.7(4) 7,200.0 95.2 84.3 97.0(4) 7,200.0 95.4 36.2
45 3 4 97.2(4) 7,200.0 96.4 482.6 97.8(4) 7,200.0 97.2 71.3 95.0(4) 7,200.0 93.8 129.5 95.7(4) 7,200.0 94.1 48.4
50 3 3 99.3(2) 5,243.6 98.6 215.1 99.3(4) 7,200.0 98.8 51.8 96.2(4) 7,200.0 94.8 315.6 96.5(4) 7,200.0 94.7 57.5
50 3 4 98.3(3) 7,058.4 97.7 407.0 98.5(4) 7,200.0 97.9 64.7 94.5(4) 7,200.0 93.1 597.5 95.1(4) 7,200.0 93.2 93.6
10 6 2 100.0 1.9 97.4 0.5 100.0 0.6 97.6 0.3 100.0 0.5 96.3 0.3 100.0 0.3 96.9 0.2
10 6 3 100.0 12.5 96.6 1.2 100.0 15.1 96.5 0.5 100.0 1.3 96.4 0.5 100.0 0.2 98.4 0.2
15 6 2 100.0 97.5 96.8 3.6 99.8(1) 1,940.9 97.3 2.3 100.0 8.6 96.4 0.8 100.0 35.3 97.2 0.9
15 6 3 100.0 1,105.8 95.6 8.6 99.5(4) 7,200.0 96.5 2.7 100.0 73.8 95.4 3.0 100.0 146.8 96.7 1.1
20 6 2 100.0 84.9 97.4 11.0 99.8(1) 2,501.2 98.1 4.2 100.0 23.7 96.8 1.9 100.0 281.6 97.6 2.3
20 6 3 100.0 806.5 96.9 29.8 99.5(2) 3,608.5 97.6 5.3 100.0 269.7 95.8 4.5 100.0 297.2 97.0 2.5
25 6 2 100.0 170.6 97.8 45.3 99.9(2) 3,663.4 98.5 15.1 100.0 328.8 96.4 5.5 100.0 1,552.4 96.4 3.7
25 6 3 99.9(1) 2,811.0 97.2 54.2 99.4(2) 4,150.6 98.0 14.2 99.3(4) 7,200.0 95.4 12.4 99.4(4) 7,200.0 95.6 3.7
30 6 3 99.4(2) 4,347.1 97.1 301.3 99.3(4) 7,200.0 98.1 41.7 100.0 1,634.9 97.5 24.3 99.7(2) 4,002.2 97.7 8.7
30 6 4 97.9(4) 7,200.0 95.9 527.5 98.8(4) 7,200.0 97.4 39.2 98.9(4) 7,200.0 96.8 83.1 99.2(4) 7,200.0 96.9 9.1
10 9 2 100.0 20.5 98.4 1.5 100.0 30.2 98.7 1.1 100.0 15.3 98.0 1.0 100.0 4.5 98.2 0.8
10 9 3 100.0 405.2 97.6 2.5 100.0 1,095.9 98.4 1.2 100.0 75.3 97.0 1.7 100.0 35.5 97.4 0.7
15 9 2 99.6(2) 3,797.7 96.8 8.2 99.5(4) 7,200.0 97.5 5.2 100.0 887.1 96.9 3.5 99.4(2) 5,143.6 97.1 2.4
15 9 3 97.4(4) 7,200.0 95.0 18.5 98.7(4) 7,200.0 96.3 7.0 98.6(2) 5,612.0 95.5 9.4 98.9(4) 7,200.0 96.2 3.7
20 9 2 100.0 1,480.0 98.1 43.2 99.6(2) 5,859.9 98.6 10.4 100.0 590.9 97.1 6.4 99.7(2) 4,081.3 97.5 4.8
20 9 3 98.9(2) 4,546.3 97.3 50.2 99.2(4) 7,200.0 97.7 13.5 99.2(3) 6,430.5 96.1 12.9 99.3(3) 5,737.2 96.8 6.9
Optimal 100.0 371.5 97.8 14.8 99.9 1,777.7 98.3 3.6 100.0 397.5 96.5 3.3 99.9 1,281.8 97.1 1.8
Not optimal 98.8 5,510.4 97.2 209.9 99.0 6,965.4 97.9 34.1 96.9 7,042.8 94.5 103.2 97.3 7,102.5 94.8 23.2
Total 99.5 2,336.4 97.6 89.4 99.6 3,761.2 98.1 15.2 98.6 3,329.3 95.6 47.3 98.8 3,849.8 96.0 11.2
(−)
Indicates the number of instances (out of 4) that were not solved to optimality.

115
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

116
Table 7 Average Results on MVIRP Instances
MVIRP-ML MVIRP-OU
F (ML) | k F (ML) | nk F (OU) | k F (OU) | nk
n l m hi %LB CPU %RLB RCPU %LB CPU %RLB RCPU %LB CPU %RLB RCPU %LB CPU %RLB RCPU

5 3 2 L 100.0 0.1 90.7 0.1 100.0 0.1 93.2 0.0 100.0 0.0 99.7 0.0 100.0 0.1 99.4 0.1
5 3 3 L 100.0 0.3 88.4 0.1 100.0 0.2 94.3 0.0 100.0 0.0 99.5 0.0 100.0 0.1 97.3 0.0
10 3 2 L 100.0 1.3 87.4 0.3 100.0 3.3 92.4 0.2 100.0 2.0 85.5 0.5 100.0 3.0 88.9 0.4
10 3 3 L 100.0 8.3 79.5 0.5 100.0 19.2 89.7 0.2 100.0 4.8 86.0 1.0 100.0 4.4 90.8 0.3
15 3 2 L 100.0 4.4 90.1 0.8 100.0 26.7 92.6 0.5 100.0 5.4 87.7 1.2 100.0 26.7 87.4 0.9
15 3 3 L 100.0 38.5 85.0 1.7 100.0 1,701.0 89.3 0.6 100.0 19.1 87.2 2.1 100.0 83.3 87.6 1.0
20 3 2 L 100.0 31.2 89.5 2.4 100.0 1,054.5 92.5 1.2 100.0 67.1 85.3 3.7 99.8(1) 1,791.9 87.2 2.8
20 3 3 L 100.0 386.8 83.0 4.0 96.9(3) 4,540.2 89.5 2.0 100.0 509.0 81.9 5.7 98.4(2) 4,400.1 87.2 3.3
25 3 2 L 100.0 71.0 92.5 3.6 99.1(1) 1,837.9 94.6 2.8 100.0 127.8 90.2 5.8 100.0 503.6 90.7 5.4
25 3 3 L 100.0 978.3 86.8 6.4 96.2(5) 7,200.0 91.1 4.0 100.0 1,035.3 85.6 11.0 98.7(3) 5,764.7 86.0 4.9
30 3 3 L 100.0 1,962.3 87.5 16.7 94.5(4) 6,091.3 91.3 8.0 100.0 3,054.1 85.6 34.0 97.1(4) 6,593.6 86.8 10.2
30 3 4 L 93.4(4) 6,203.8 82.1 26.1 92.8(5) 7,200.0 89.6 11.2 91.8(4) 6,586.0 82.0 39.7 94.4(5) 7,200.0 85.0 10.8

Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the MVPRP
35 3 3 L 100.0 4,124.9 87.9 26.8 94.1(5) 7,200.0 91.6 12.1 96.4(3) 5,262.4 86.4 56.1 96.1(5) 7,200.0 88.3 25.2
35 3 4 L 90.4(5) 7,200.0 83.0 51.8 91.5(5) 7,200.0 89.3 13.4 86.9(5) 7,200.0 81.3 81.5 91.5(5) 7,200.0 84.1 27.6
40 3 3 L 97.3(3) 5,699.9 89.0 37.5 94.1(5) 7,200.0 92.2 17.8 97.1(4) 7,078.1 87.7 89.4 95.9(4) 7,200.0 87.8 32.1
40 3 4 L 86.7(5) 7,200.0 82.7 66.2 90.3(5) 7,200.0 88.2 27.7 83.9(5) 7,200.0 80.7 184.8 89.5(5) 7,200.0 81.8 30.8
5 6 2 L 100.0 4.0 86.4 0.2 100.0 15.6 92.8 0.1 100.0 1.5 95.2 0.8 100.0 4.6 90.0 0.2
5 6 3 L 100.0 140.9 80.8 0.2 100.0 273.3 92.9 0.1 100.0 0.2 99.6 0.1 100.0 3.6 94.1 0.1

INFORMS Journal on Computing 26(1), pp. 103–120,


10 6 2 L 100.0 168.2 85.8 1.2 98.5(2) 3,017.7 90.0 0.5 100.0 219.6 82.7 1.4 99.3(1) 2,295.7 87.0 0.9
10 6 3 L 96.7(2) 4,877.0 80.4 1.7 96.4(4) 6,083.8 88.8 0.8 99.1(1) 3,704.9 80.3 2.9 97.4(2) 5,449.0 84.5 1.2
15 6 2 L 100.0 950.5 89.2 3.6 96.3(4) 7,200.0 90.8 2.0 100.0 736.1 86.5 3.9 96.4(4) 7,200.0 87.5 2.6
15 6 3 L 96.1(5) 7,200.0 83.0 5.6 92.9(5) 7,200.0 87.1 2.8 93.5(5) 7,200.0 80.0 7.5 92.3(5) 7,200.0 81.9 2.6
5 3 2 H 100.0 0.1 94.0 0.1 100.0 0.1 95.7 0.0 100.0 0.1 95.3 0.0 100.0 0.1 98.2 0.0
5 3 3 H 100.0 0.3 92.5 0.1 100.0 0.1 95.2 0.0 100.0 0.0 99.6 0.0 100.0 0.1 98.0 0.0
10 3 2 H 100.0 1.5 93.3 0.3 100.0 6.1 96.4 0.1 100.0 2.1 92.2 0.5 100.0 3.0 93.5 0.3
10 3 3 H 100.0 9.8 89.1 0.4 100.0 29.7 94.7 0.2 100.0 4.9 92.1 0.8 100.0 5.7 95.3 0.2
15 3 2 H 100.0 4.4 96.1 0.7 100.0 42.0 96.7 0.4 100.0 6.3 94.1 0.9 100.0 37.5 93.7 0.7
15 3 3 H 100.0 33.6 92.8 1.3 100.0 980.9 94.7 0.5 100.0 16.5 93.5 1.6 100.0 39.1 93.7 0.8
20 3 2 H 100.0 30.5 95.6 1.4 100.0 1,586.6 96.6 1.1 100.0 63.0 93.6 3.3 100.0 1,766.1 94.4 2.3
20 3 3 H 100.0 373.7 92.5 3.8 98.6(3) 4,746.9 95.3 1.6 100.0 570.5 91.4 5.2 99.3(1) 4,099.1 93.7 2.2
25 3 2 H 100.0 56.6 97.4 3.1 99.7(1) 1,800.1 98.1 2.1 100.0 122.5 96.1 6.0 100.0 1,620.8 96.3 3.9
25 3 3 H 100.0 896.5 94.7 6.4 98.7(5) 7,200.0 96.6 2.8 100.0 1,121.3 93.9 9.5 99.4(3) 5,350.0 94.5 4.5
30 3 3 H 100.0 1,565.4 95.7 15.2 98.4(4) 6,042.0 97.1 6.9 100.0 3,052.5 94.8 28.6 98.6(4) 6,826.9 95.3 9.0
30 3 4 H 98.0(3) 5,967.8 93.5 25.6 97.4(5) 7,200.0 96.2 8.1 96.7(4) 6,182.1 93.1 37.6 97.9(5) 7,200.0 94.1 8.0
35 3 3 H 100.0 2,624.5 96.0 29.4 98.1(5) 7,200.0 97.3 17.4 99.0(3) 5,498.3 95.0 48.1 98.6(5) 7,200.0 95.7 20.8 ©
35 3 4 H 96.7(5) 7,200.0 93.9 52.5 97.0(5) 7,200.0 96.3 17.2 94.4(5) 7,200.0 92.0 76.2 96.0(5) 7,200.0 92.9 21.6

2014 INFORMS
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1
the results of using each cut presented in §3.2, where

RCPU

0.2
0.1
0.8
1.0
2.3
2.8
2.0

6.9
29.3
30.2

17.4
the columns None and All present the results without
using any additional cuts (i.e., only GFSECs (28) and

%RLB
(53) are applied) and with all cuts together, respec-

95.8
92.8
93.7
96.8
91.8
89.5
93.2
90.1
92.3
88.9
91.2
tively. The results show that adding all the cuts
together generally provides the best lower bounds,

4.4
4.0
6,567.8
7,200.0

2,428.4
5,298.3
7,200.0
7,200.0
1,935.4
6,893.9
3,513.1
and it has more effect on larger instances. We also
CPU

observe that the inequalities have more effect on the


Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

lower bound at the root node for the MVIRP than for
F (OU) | nk

the MVPRP.
98.7(4)

99.8(1)
97.9(3)
98.0(5)
95.6(5)
95.8(5)
%LB

95.5
98.3
100.0
100.0

99.5
In Table 5 we report the average results of using all
MVIRP-OU

these cuts with our exact algorithms. The results of


the branch-and-cut without and with the additional
RCPU

0.7
0.1
1.3
2.5
3.8
7.2
4.4
64.6
23.6
102.9
167.4

valid inequalities from §3.2 are shown in columns


F (ML) | nk, F (OU) | nk and in columns F (ML) | nk+,
F (OU) nk+, respectively. We see that applying all the
%RLB

|
inequalities of §3.2 could provide significant
95.7
92.4
96.9
99.9
89.4
87.1
93.0
88.9
91.8
87.3
90.4
improve-
ments in the branch-and-cut procedure for both for-
6,700.1
7,200.0
1.4
0.2
272.4
3,561.8
763.1
7,200.0
392.6
6,269.5
2,262.6

mulations F (ML) |nk and F (OU) |nk in terms of


CPU

lower bounds (both at the root node and final lower


bounds), computing times, and the number of nodes
F (OU) | k

in the branch-and-bound tree. Similar results were


93.7(5)
99.2(3)

99.3(1)

96.4(5)
%LB

98.3
100.0
100.0
100.0

100.0

100.0
94.8

obtained on instances with 25–50 customers and three


periods. The formulations with all the inequalities
could solve 21 (of 84) instances, whereas the formu-
RCPU

0.1
0.1
0.5
0.7
1.9
2.9
2.2

5.4
27.5
35.6

13.8

lations without these inequalities could solve only


14. For the remaining instances not solved to
optimality in one hour, the average lower bound
%RLB

97.4
95.7
95.2
95.3
94.6
93.2
95.0
92.1
93.9
92.2
93.4

provided by the formulations with all the


inequalities is 94.8%, com-
pared to 92.2% without the inequalities. We thus used
the formulations F (ML) nk+ and F (OU) nk+ in the
15.6
182.0
7,200.0
7,200.0

3,013.5
5,668.3
7,200.0
7,200.0
2,507.1
6,979.3
3,726.8

|
further computational experiments. |
CPU
F (ML) | nk

6.3. Comparison of the Vehicle Index and


Indicates the number of instances (out of 5) that were not solved to optimality.
98.2(5)

99.1(2)
97.7(3)
98.3(4)
96.2(5)
96.6(5)

Nonvehicle Index Formulations


%LB

100.0
100.0

99.0
95.1
97.9
MVIRP-ML

In this section we compare the performance of the


vehicle index formulations F (ML) | k and F (OU) | k
0.1
0.2
1.2
1.5
3.1
4.9
4.2
57.1
79.4

34.2
12.4
RCPU

and the nonvehicle index formulations F (ML)| nk and


F (OU) nk
| using the full test sets. The Op-ALNS pro-
cedure as described in §5 is used to calculate the
%RLB

96.4
93.8
91.3
87.1
91.4
87.3
94.4
90.6
90.1
88.0
89.6

initial upper bounds, and these bounds are given to


Average Results on MVIRP Instances (cont’d)

CPLEX before the branch-and-cut algorithm starts.


The computing time limit for the branch-and-cut
5,400.6
7,200.0
3.2
81.1
113.5
4,669.7
717.2
7,200.0
480.7
6,334.9
2,077.3

approaches was set to two hours in these experi-


CPU

ments. The results are provided in Tables 6 and 7.


The column hi in Table 7 indicates the group of the
F (ML) | k

MVIRP instances, i.e., low or high inventory costs.


95.0(5)
99.0(3)

97.9(2)

98.1(5)
%LB

95.5
98.8
100.0
100.0
100.0

100.0

100.0

We report the average root lower bounds percentage


ratios and the average corresponding CPU times in
columns %RLB and RCPU, respectively.
hi

H
H
H
H
H
H
H
H

The results in Tables 6 and 7 clearly indicate the


performance of the two formulation schemes. The
m

vehicle index formulations F (ML)| k and F (OU)| k


3
4
2
3
2
3
2
3

Not Optimal

outperform the nonvehicle index formulations in


Optimal
3
3
6
6
6
6
6
6
l
Table 7

finding the optimal solution. The nonvehicle index


Total
(−)
40
40

10
10
15
15
5
5

formulations F (ML) | nk and F (OU) | nk, however,


n
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP

could generally provide better lower bounds at the known production quantity is made available in each
root node and also better overall gaps (%LB) on the period, the algorithm has to be modified to put more
instances that were not solved to optimality within emphasis on the inventory and distribution part.
two hours, except for the MVIRP-ML instances. The We also found that by expanding the neighborhood
average %LB of the nonvehicle index formulations (i.e., the number of customer-period combinations) by
after two hours is slightly better than for the vehicle 15%–30%, the average solution quality can be further
index formulations on the MVPRP instances, whereas improved by approximately 1%–2% but with double
the lower bounds produced by the vehicle index the average computing time. However, the current
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

formulation are better on the MVIRP-ML instances setting is preferable because it has been shown in
and as good as the nonvehicle index formulation Adulyasak et al. (2012) that the Op-ALNS procedure
on the MVIRP-OU. The computing times on the could handle small to very large PRP instances effec-
MVIRP instances increase in a greater ratio when tively. It is worth noting that the Op-ALNS is much
the number of periods increases, compared to the faster than the MVIRP heuristic presented by Coelho
MVPRP instances. The largest instance sizes that can et al. (2012), which had an average computing time
be solved to optimality are 35c/3p/3v for MVPRP- of 2,000 seconds for the instances with three periods
ML and MVIRP-ML, 30c/3p/3v for MVIRP-OU, and and 8,000 seconds for the instances with six periods.
25c/3p/2v for the MVPRP-OU. In Table 8, we also We also remark that, on the instances with n≤ 15 that
report some statistics for the best found solutions. were solved to optimality, setting the initial upper
Note that the solutions of the MVPRP-OU instances bounds in CPLEX leads to an average improvement
with l 3 have on average more setups than l 6 of 11.8% and 6.2% in computing time on the MVPRP
because= they have lower initial inventory levels,=as and MVIRP instances, respectively.
described in the online supplement.
We further remark the performance of the heuris- 6.4. Performance of the Branch-and-Cut
tic used to set the initial upper bounds for the Algorithm on Multicore Processors
branch-and-cut algorithms. The Op-ALNS could gen- Nowadays, most computers have multiple core pro-
erally provide high quality solutions on the MVPRP cessors, and modern solvers like CPLEX have the
instances, where the deviations from the optimal capability to perform parallel optimization. In this
solutions or best upper bounds for the MVPRP-ML section, we report the results of experiments per-
and MVPRP-OU are 1.2% and 0.8%, respectively, and formed on an eight-core processor. We first show
the corresponding CPU times are 30.4 and 31.0 sec- the comparison of the average results using single
onds, respectively. The results on the MVIRP are not and multiple core processors on the instances that
as good as for the MVPRP, where gaps of the best were solved to optimality by the single core machine
upper bound for the MVIRP-ML and MVIRP-OU are in the previous section (see Table 9). In the results
3.5% and 4.8%, respectively, and the corresponding for the eight-core processor, columns CPU and WC
CPU times are 17.4 and 19.8 seconds, respectively. show the average total aggregate CPU time of all
Note that the details on the quality of the initial cores and average wall clock time, respectively.
upper bounds obtained by the Op-ALNS procedure Because we did not run other tasks when running the
can be found in the online supplement. algorithm, the wall clock time is a good
Because the Op-ALNS was originally developed for approximation of the max- imum CPU time spent
the PRP—where it has to take the production and set- on all cores. We also calcu- late the ratio of the
up costs into account—the operators mainly attempt aggregate CPU time and wall clock time (CPU/WC)
to find a solution where production and distribution in column C/W to show the benefit of parallel
costs are minimized. In the IRP, however, because a computing on multicore processors. Because the
main purpose of the experiments is to

Table 8 Details of the Best Solutions

MVPRP MVIRP

ML OU ML OU

Values l=3 l=6 l=9 l=3 l=6 l=9 l=3 l=6 l=3 l=6

Average number of setups 1.10 2.00 3.00 2.71 2.00 3.08 n/a n/a n/a n/a
Average number of visits per customer 1.23 1.71 3.08 1.00 1.31 2.07 1.08 2.68 1.12 2.73
Average number of dispatched vehicles
Instances with 2 vehicles 1.38 1.41 1.63 2.00 1.51 1.62 1.59 1.69 1.40 1.53
Instances with 3 vehicles 1.75 1.81 1.84 2.82 2.08 2.18 2.14 2.29 1.95 2.32
Instances with 4 vehicles 2.27 2.33 n/a 3.65 2.83 n/a 2.57 n/a 2.43 n/a
Average vehicle usage (%) 76.50 83.40 84.20 89.20 76.80 73.70 86.80 90.00 82.40 82.40
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1
Table 9 Average Results Using Single and Multicore Processors on MVPRP and MVIRP Instances Solved to Optimality

1 core 8 cores % change

Problem CPU Nodes CPU WC C/W Nodes CPU Nodes


MVPRP-ML 371.5 1,078 353.2 216.1 1.5 1,171 −4.9 8.6
MVPRP-OU 397.5 2,159 488.8 324.4 1.3 2,564 18.8
23.0
MVIRP-ML 480.7 3,795 548.1 302.9 1.6 3,924 14.0 3.4
MVIRP-OU 392.6 1,476 446.4 212.9 1.7 1,714 13.7 16.1
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

explore the largest instances that could be solved to


optimality using multicore processors, the formula-
tions with a vehicle index are used, as they are better letter in parentheses indicates whether the solution
at finding optimal solutions. The maximum comput- was produced by the vehicle index formulations (k)
ing time was set to 12 hours of wall clock time. or the nonvehicle index formulations (nk) (only for
We can see that using multiple cores could reduce the single core, as only the vehicle index
the elapsed time spent to solve the problems, but the formulations were solved on multiple cores). We
aggregate CPU times and number of nodes gener- report the largest size for which all instances of that
ally increased compared to the results on the single size or smaller were solved to optimality. For
core machine. The detailed results of using multi- example, the instance size 20c/9p/2v on the MVPRP-
core processors on all instances can be found in ML solved by the single core processor is not
the online supplement. By using parallel comput- considered the largest, because some of the
ing, the algorithm could solve the instances up to instances of size 15c/9p/2v were not solved to
50c/3p/3v for the MVPRP-ML, 35c/6p/3v for the optimality.
MVPRP-OU, and 45c/3p/3v for the MVIRP-ML and
MVIRP-OU, and the average computing time was 6.5. Results on Single-Vehicle Instances
2.1, 0.8, 4.5, and 5.6 hours, respectively. The algo- We also tested the performance of the algorithms
rithm, however, still could not solve the MVPRP-OU using the two formulation schemes on the single-
instances with three periods larger than 25c/3p/2v. vehicle instances; the results are presented in the
These instances appear to be more difficult to solve online supplement. We observe that the single vehi-
than the instances with six periods because they cle case is much easier to solve than the multiple
have lower initial inventory levels at the customers. vehicle case. Most instances were solved to optimal-
There- fore, larger quantities must be delivered to ity within a few seconds, and the algorithms spent
customers during initial periods in the planning less than two minutes on average. We also
horizon to sat- isfy the OU policy. The multicore performed the experiments on the PRP instances
processors have more impact on the MVIRP with 14c/6p/1v and uncapacitated production used
instances, where the aver- age CPU/WC ratio is 2.2 in Archetti et al. (2011). All instances were now
compared to 1.6 for the MVPRP, and the maximum solved to optimality in a few seconds.
CPU/WC ratio of 4.1 could be achieved. Table 10
shows the summary of the largest instances that 7. Conclusions
were solved to optimality using single and multiple This paper studied the multivehicle variant of the
core processors. We also report the largest instance PRP and the IRP. Two strong formulations, one with
sizes for which the algo- rithm could obtain a a vehicle index and one without, were introduced.
solution within 2% of optimality for the results We proposed several valid inequalities, including
produced by a single core machine. The sym- metry breaking constraints to strengthen the
formu- lations, and developed branch-and-cut
approaches to solve the problems.We also adapted
the previously

Table 10 Summary of the Largest Instances Solved to Optimality Using Single and Multiple Core Processors

Maximum level (ML) Order-up-to level (OU)

1 core (2h) 8 cores (12h) 1 core (2h) 8 cores (12h)

Problem Optimal ≤ 2% Optimal Optimal ≤ 2% Optimal

MVIRP 35c/3p/3v (k) Same 45c/3p/3v 30c/3p/3v (k) Same 45c/3p/3v


15c/6p/2v (k) Same 25c/6p/2v 15c/6p/2v (k) Same 15c/6p/3v
MVPRP 35c/3p/3v (k) 50c/3p/4v (nk) 50c/3p/3v 25c/3p/2v (k, nk) 30c/3p/3v (nk) 25c/3p/2v
25c/6p/2v (k) 30c/6p/4v (nk) 30c/6p/3v 30c/6p/3v (k, nk) 30c/6p/4v (k, nk) 35c/6p/3v
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
1 MVPRP
10c/9p/3v (k, nk) 20c/9p/3v (k, nk) 20c/9p/2v 20c/9p/2v (k) 20c/9p/3v (k, nk) 25c/9p/2v
Adulyasak, Cordeau, and Jans: Formulations and Branch-and-Cut for the
MVPRP 1
developed Op-ALNS heuristic for the PRP-ML to the Archetti C, Bertazzi L, Hertz A, Speranza MG (2012) A hybrid
PRP-OU and IRP (both ML and OU) to determine heuristic for an inventory routing problem. INFORMS J.
the initial upper bounds for our branch-and-cut algo- Comput. 24:101–116.
rithms. The Op-ALNS could generally provide high- Archetti C, Bertazzi L, Laporte G, Speranza MG (2007) A branch-
and-cut algorithm for a vendor-managed inventory-routing
quality solutions, especially for the PRP instances, problem. Transportation Sci. 41:382–391.
within a few seconds. The results show that the vehi- Archetti C, Bertazzi L, Paletta G, Speranza MG (2011) Analysis of
cle index formulations are superior in finding the maximum level policy in a production-distribution system.
optimal solutions, whereas the nonvehicle index Comput. Oper. Res. 38:1731–1746.
Downloaded from informs.org by [14.139.108.35] on 11 July 2023, at 22:27 . For personal use only, all rights reserved.

Bard JF, Nananukul N (2010) A branch-and-price algorithm for an


formulations could generally provide better lower integrated production and inventory routing problem. Comput.
bounds on larger instances that were not solved to Oper. Res. 37:2202–2217.
optimality within two hours. Finally, we could solve Chandra P, Fisher ML (1994) Coordination of production and dis-
tribution planning. Eur. J. Oper. Res. 72:503–517.
the instances with up to 35 customers, three periods, Coelho LC, Cordeau J-F, Laporte G (2012) Consistency in multi-
and three vehicles to optimality for the IRP and PRP vehicle inventory-routing. Transport. Res. C-Emer. 24:270–287.
with the ML policy, and 30 (respectively, 25) Degraeve Z, Gochet W, Jans R (2002) Alternative formulations for
customers, three periods, and three vehicles for the a layout problem in the fashion industry. Eur. J. Oper. Res.
143:80–93.
IRP (respectively, PRP) with the OU policy within Fischetti M, Lodi A (2003) Local branching. Math. Programming
two hours. By using multicore pro- cessors, we could 98:23–47.
further solve the instances with up to 45 and 50 Fumero F, Vercellis C (1999) Synchronized development of
produc- tion, inventory, and distribution schedules.
customers, three periods, and three vehi- cles for the
Transportation Sci. 33:330–340.
IRP (both ML and OU) and PRP with the ML Gendreau M, Hertz A, Laporte G (1992) New insertion and postop-
policy, respectively; the instances with 35 cus- timization procedures for the traveling salesman problem.
tomers, six periods, and three vehicles are also Oper. Res. 40:1086–1094.
Jans R (2009) Solving lot-sizing problems on parallel identical
solved for the PRP with the OU policy. We have thus
machines using symmetry-breaking constraints. INFORMS J.
filled important gaps in the literature concerning the Comput. 21:123–136.
exact solution of the IRP and PRP with multiple Lin S (1965) Computer solutions of the traveling salesman problem.
vehicles. Bell Syst. Tech. J. 44:2245–2269.
Lysgaard J, Letchford AN, Eglese RW (2004) A new branch-and-cut
algorithm for the capacitated vehicle routing problem. Math.
Supplemental Material Programming 100:423–445.
Supplemental material to this paper is available at Miller CE, Tucker AW, Zemlin RA (1960) Integer programming
http://dx formulation of traveling salesman problems. J. Assoc. Comput.
Mach. 7:326–329.
.doi.org/10.1287/ijoc.2013.0550.
Ropke S, Pisinger D (2006) An adaptive large neighborhood search
heuristic for the pickup and delivery problem with time win-
Acknowledgments dows. Transportation Sci. 40:455–472.
The authors thank the anonymous referees for their valu- Ruokokoski M, Solyalı O, Cordeau J-F, Jans R, Sü ral H (2010)
able comments and the RQCHP for providing computing Efficient formulations and a branch-and-cut algorithm for a
production-routing problem. GERAD Technical Report G-
facilities for the experiments. This work was supported by
2010- 66, HEC Montréal, Canada.
the Natural Sciences and Engineering Research Council of Sherali HD, Smith JC (2001) Improving discrete model rep-
Canada [227837-09 and 342182-09]. This support is grate- resentations via symmetry considerations. Management Sci.
fully acknowledged. 47:1396–1407.
Solyalı O, Sü ral H (2009) A relaxation based solution approach for
the inventory control and vehicle routing problem in vendor
managed systems. Neogy SK, Das SK, Bapat RB, eds. Model-
References ing, Computation and Optimization (World Scientific, Singapore),
Adulyasak Y, Cordeau J-F, Jans R (2012) Optimization-based adap- 171–189.
tive large neighborhood search for the production routing Solyalı O, Sü ral H (2011) A branch-and-cut algorithm using a
problem. Transportation Sci., ePub ahead of print December 13, strong formulation and an a priori tour-based heuristic for an
http://dx.doi.org/10.1287/trsc.1120.0443. inventory-routing problem. Transportation Sci. 45:335–345.
Andersson H, Hoff A, Christiansen M, Hasle G, Løkketangen A Toth P, Vigo D (2002) An overview of vehicle routing prob-
(2010) Industrial aspects and literature survey: Combined lems. Toth P, Vigo D, eds. The Vehicle Routing Problem (SIAM
inventory management and routing. Comput. Oper. Res. Monographs on Discrete Mathematics and Applications,
37:1515–1536. Philadelphia), 1–26.
Applegate D, Bixby R, Chvá tal V, Cook W (2011) Con-
corde TSP solver. Accessed April 15, 2012, http://www.tsp
.gatech.edu/concorde.html.

You might also like