A Sampling-Based Matheuristic For The Continuous-Time Stochastic Inventoryrouting Problem With Time-Windows
A Sampling-Based Matheuristic For The Continuous-Time Stochastic Inventoryrouting Problem With Time-Windows
Keywords: This article considers a continuous-time variant of the stochastic inventory routing problem. In most of the
Stochastic inventory routing problem articles present in the literature related to inventory routing, customers reveal their demands at the end of each
Adaptive large neighborhood search period, which is when the inventory level is calculated. In the variant of the problem at hand, the demand that
Consistency
each customer experiences on each period, results in a continuous decrease of the inventory for the customer
Matheuristics
during the period. This characteristic strongly affects the quantities that can be delivered to each customer and,
if the deliveries are not sufficient or arrive too late, they can cause some stock-out situations within the periods.
In the inventory routing problem, the vendor manages all the replenishment decisions of the vendees and,
therefore, creates delivery plans for a planning horizon, aiming to reduce the routing, consistency, inventory
and lost-sales costs. We formulate the problem as a two-stage mathematical program. Customers experience a
continuous stochastic demand within each period and present information about inventory level and capacity at
each period, as well as the time windows in which deliveries can take place. To solve this problem, we develop
a matheuristic solution approach based on an adaptive large neighborhood search algorithm. In addition, we
evaluate the impact of applying recourse actions to deal with expected lost sales during the planning horizon.
We compare the performance of the algorithm with adapted variants of the multiple scenario approach and
the branch and regret algorithms from the literature. Samples based on the stochastic demands are considered
in the algorithms, to find robust solutions that can minimize the objective function. We evaluate the solutions
by means of a sample average estimator procedure, and we compare the efficiency of the algorithms as well
as the impact of different levels of stochasticity.
1. Introduction consider a stochastic variant of the problem but with one product
type. We present the continuous-time stochastic IRP with time windows
In practice, multiple logistic optimization problems cannot be solved (CTSIRPTW), wherein, a new characteristic of the problem is that the
efficiently. The logistics related to the inventory and routing are spe- system evolves continuously over time. This means that, along each
cially challenging. Consider a supply chain wherein the objective is to period, the product is consumed continuously from the inventory of the
minimize the long-term cost of a distribution network that consists of customers. The continuous-time product consumption is a characteristic
a set of stores served from a central facility. The coordination of both recently introduced in the IRP literature (see Lagos et al., 2020),
inventory and routing decisions is crucial for the correct functioning however, it is not a new characteristic in articles about inventory man-
and allocation of resources for these companies. To deal with this agement. The continuous-time inventory depletion resembles the more
situation, many companies adopt a vendor managed inventory system
prevalent real world situations, and, thanks to the growing application
to centrally create and manage all the replenishment and distribution
of sensors to measure the real-time inventory levels, the problem is
plans. This system should be largely used because the application of
becoming of increasing relevance. As a consequence of considering a
a vendor managed inventory can substantially reduce overall logistics
continuous-time consumption rate, delivery times must be scheduled
costs (Lee and Whang, 2008).
carefully, and the quantities delivered strongly affect the overall costs
In this paper, we consider such a system, and model it as the
Inventory Routing Problem (IRP) for a single product, which was first of the supply chain. This is an important difference with respect to the
introduced in the seminal paper (Bell et al., 1983). In most real-life majority of the IRP literature, in which, even if the planning horizon is
situations, demand experienced at stores is uncertain; therefore, we divided into a set of periods, the product consumption at the retailers
∗ Corresponding author.
E-mail addresses: [email protected] (E.J. Alarcon Ortega), [email protected] (K.F. Doerner).
https://doi.org/10.1016/j.cor.2022.106129
Received 2 November 2021; Received in revised form 23 November 2022; Accepted 21 December 2022
Available online 2 January 2023
0305-0548/© 2023 The Authors. Published by Elsevier Ltd. This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/4.0/).
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
takes place at the end of the period and it is an instantaneous action. We adapt this set by considering different levels of stochasticity on the
In the paper at hand, we aim to efficiently plan the delivery times and customers’ demands. The set of instances will be made available when
quantities, to avoid the possible stock-out situations that the continuous published.1
consumption of the product can originate.
The CTSIRPTW is motivated by the IRP faced by companies in 2. Literature review
the beverage industry. These companies must create efficient delivery
plans for the planning horizon, in order to satisfy the multiple requests The CTSIRPTW belongs to the group of the IRPs whose origins goes
from customers. The target customers of such companies experience back to Bell et al. (1983), where the objective was to automatize the
demands that are sensitive to external factors (weather, holidays, week- delivery process of liquid gases for the company Air Product. After
ends, . . . ), and central planning efforts must be conducted to reduce the seminal paper was published, the interest for the IRP significantly
the overall logistics costs. At the beginning of the planning horizon, increased and new variants related to its different parameters have
companies that belong to this industry create delivery plans that take been presented. Extensive reviews of the IRP literature are available
into account the different nature of the customers (bars, restaurants in Bertazzi and Speranza (2008), Coelho et al. (2014), and in Andersson
and retailers), their opening hours, and delivery time windows. This
et al. (2010). As the purpose of this article is not to provide an exhaus-
delivery plan facilitates the communication between the distributor
tive review of the IRP literature, we provide a review of the IRP works
and the retailers, allowing them to know when the deliveries will take
that share some of the most challenging and similar characteristics to
place and be prepared for such deliveries. Lastly, customers require
the article at hand.
consistency in the delivery times, which are requested to be performed
The newest characteristic of the problem is the continuous-time
at the same time of the day, and allow them to be prepared to receive
commodity consumption. This characteristic was first introduced in La-
the goods. At the beginning of the planning horizon, the central com-
gos et al. (2020). In this article, the authors consider a continuous-time
pany creates delivery plans for the subsequent periods to minimize the
variant of the IRP where the maximum quantities that can be delivered
routing costs, as well as the inventory and stock-out expected costs at
to each customer depends on the customer’s inventory level at the
the customers. At the end of the planning horizon, the real demands
moment that the deliveries take place. To solve the continuous-time
faced by each customer are disclosed, and the total calculation of the
variant of the IRP, the authors use a dynamic discovery algorithm to
inventory and lost sales costs is performed. In addition to the above
discretize the planning horizon and solve a small sequence of integer
mentioned delivery plan, in this article we propose and evaluate the
programs. However, unlike the problem we present in this article, the
impact of recourse actions that, in case a customer is expected to
demands at the customers are considered deterministic, the planning
experience a stock shortage at a certain period, additional visits to the
horizon is one single period, and the possibilities of stock-out situations
customers are introduced.
are not considered. A continuous-time deterministic IRP is extended
The remainder of this paper is organized as follows. In Section 2, we
perform a review of the related works existing in the literature. In Sec- to a multi-period planning horizon, and the stock-out situations and
tion 3, we present the new formulation for the CTSIRPTW, that includes time windows are considered in the problem that was first presented
all previously mentioned characteristics. In Section 4, we introduce at the OR conference in 2017 (Alarcon et al., 2018), and recently pub-
the different solution approaches, based on the idea of the adaptive lished in Alarcon et al. (2020). Furthermore, the series of approaches
large neighborhood search algorithm(ALNS), and we adapt the branch proposed to solve the ROADEFF/EURO Challenge 2016 are especially
and regret heuristic and multiple scenario approach algorithm to solve remarkable. This collection of articles (Andre et al., 2020; Kheiri, 2020;
the CTSIRPTW. A computational study is presented and analyzed in Absi et al., 2020; Su et al., 2020; He et al., 2020) describe the model
Section 5, where we compare the results obtained by means of the of the IRP of Air Liquide related to the distribution of bulk gases
sample average estimator. Lastly, Section 6 summarizes the content and and propose different heuristic algorithms to solve the problem. They
findings of this article, and we propose additional research directions aim at solving the deterministic IRP, where customers present time
characteristics related to the CTIRPTW. windows inside of the periods; therefore, time considerations are at the
The contribution of this paper is threefold: (1) We present a math- base of the proposed algorithm when constructing the delivery routes.
ematical formulation for the new problem named CTSIRPTW. In this However, the problem of the ROADEFF/EURO Challenge 2016 is that
problem, a central distributor located at a central warehouse creates the customers face demands at the end of the periods.
a delivery plan to minimize the overall costs. Each customer faces Several approaches have been presented to solve the deterministic
stochastic demands during a set of periods that form the planning variant of the problem. Exact solution methods for IRPs are considered
horizon, the product is being consumed continuously at the customers’ in Adulyasak et al. (2013), Desaulniers et al. (2015), Coelho and
locations, consistency in the delivery times is required, and opening Laporte (2014), Archetti et al. (2017b). On the other hand, many
times differ between customers. (2) We present three versions of an heuristic methods have been proposed to solve larger instances of
algorithm to solve the CTSIRPTW. These methods use the idea of an the different IRP variants. A decomposition approach for the IRP was
ALNS, introduced in Alarcon et al. (2020) for the deterministic consis- proposed in Campbell and Savelsbergh (2004), where authors first
tent IRP with time windows and split deliveries scenario, and include create a delivery schedule for the customers and, in a second step,
different stochasticity levels of demand uncertainty during the process. the set of delivery routes is created. In Hemmelmayr et al. (2009), the
Furthermore, we include the solution of a reduced version of the authors present an IRP that deals with the blood inventory and supply
mathematical formulation of the CTSIRPTW, when we find promising problems, and propose a variable neighborhood search to solve it. A
solutions within the search process. (3) We evaluate the performance general ALNS algorithm is presented in Coelho et al. (2012), and aims
of the presented algorithms. In addition to the proposed algorithms, we at solving different interpretations of consistent multi-vehicle IRPs.
adapt two algorithms present in the literature which were developed for In Alarcon et al. (2020), we present a matheuristic solution approach
a single period stochastic vehicle routing problem (SVRP), the branch that combines an ALNS with the optimal solution of a mathematical
and regret heuristic first introduced in Hvattum et al. (2007), and subproblem, where the possibility of losing sales is also considered.
the multiple scenario approach proposed in Song et al. (2020). To In recent years, additional solution methods for IRPs have been intro-
create a fair comparison between the presented and the introduced duced in the literature, an assign-and-route matheuristic is presented
methods, we use the sample average estimator technique presented
in Gutjahr (2004). We solve a set of instances presented in Alar-
con et al. (2020), where authors present a continuous-time IRP for 1
https://bda.univie.ac.at/research/data-and-instances/vehicle-routing-
a multi-period planning horizon, and consider deterministic demands. problems
2
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
in Touzout et al. (2021), in Archetti et al. (2017a) the authors in- Table 1
Notation.
clude a matheuristic solution approach, and a variable neighborhood
search (Popovic et al., 2012). 𝑉 set of nodes
𝑉′ set of customers
With respect to the stochastic variant of the problem, and, more Data sets
𝐾 set of vehicles
specifically, in the literature related to the IRP with stochastic demands, 𝑃 set of periods
in recent years we have found an increasing research interest. In the 𝑐𝑖𝑗 travel cost for arc (𝑖, 𝑗)
work that we present, customers experience a stochastic demand every 𝑡𝑖𝑗 travel time for arc (𝑖, 𝑗)
period, and the vendor must incorporate this information to create 𝑎𝑝𝑖 , 𝑏𝑝𝑖 time windows of customer 𝑖 in period 𝑝
efficient delivery plans that reduce the overall costs. In Juan et al. 𝐶𝑖 inventory capacity of customer 𝑖
Data and 𝐼𝑖0 initial inventory level of customer 𝑖 in dummy
(2014), Gruler et al. (2020), the authors introduced two simheuris-
parameters period 0
tic approaches for the stochastic IRP, with stock-outs, for single and 𝑠𝑖 service time of customer 𝑖
multiple periods respectively. These simheuristic solution approaches 𝑄 vehicle capacity
combine a heuristic method with simulation on the stochastic demands 𝑇 duration the period
to solve the considered problems. In Liu and Lee (2011), a stochastic 𝐿 penalty per unit of sales lost and inventory
decrease
variant of the IRP with time windows is considered, and a two-stage
𝜉(𝑖, 𝑝) stochastic distribution of commodity
heuristic is applied to solve the problem. In Minkoff (1993), authors
consumption of customer 𝑖 in period 𝑝
formulated the stochastic IRP (SIRP) as an infinite horizon Markov Stochastic 𝑑(𝑖, 𝑝) sample demand realization of customer 𝑖 in
decision process, and proposed a heuristic to reduce its complexity. data period 𝑝 given by the stochastic distribution
In Kleywegt et al. (2002), authors allowed only direct deliveries in their 𝜉(𝑖, 𝑝)
Markov decision process formulation for the SIRP. Then, they extended 𝑥𝑘𝑝
𝑖𝑗 use of arc (𝑖, 𝑗) by vehicle 𝑘 in period 𝑝
this formulation to allow visiting a maximum of three retailers per route 𝑥 set of all decision variables 𝑥𝑘𝑝
𝑖𝑗
𝑘𝑝
in Kleywegt et al. (2004), while in Adelman (2004), the author limited 𝑦𝑖 visit to customer 𝑖 in period 𝑝
𝐼𝑖𝑝 inventory level of customer 𝑖 at the end of
the route duration instead. In recent years, new efficient algorithms
period 𝑝
have been presented, as in Crama et al. (2018), where authors have Decision 𝑡𝑘𝑝 arrival time of vehicle 𝑘 to customer 𝑖 in
𝑖
proposed several approaches to solve the stochastic IRP for perishable variables period 𝑝
products and compared them empirically, in terms of different aspects 𝑡𝑖 , 𝑡𝑖 earliest and latest arrival times to customer 𝑖
of the problem as average profit, product freshness, and service level. 𝑡, 𝑡 sets of all decision variables 𝑡𝑖 , 𝑡𝑖 respectively
In Brinkmann et al. (2018), a dynamic lookahead policy is proposed 𝛥𝑖 final inventory decrease of customer 𝑖
𝛥 set of all decision variables 𝛥𝑖
to deal with the IRP related to bike-sharing systems. However, the
𝑞𝑖𝑘𝑝 quantity delivered to customer 𝑖 by vehicle 𝑘
continuous consumption of products, combined with other aspects of in period 𝑝
the problem we present as consistency and time windows has not 𝑜𝑝𝑖 quantity lost due to stock-outs of customer 𝑖 in
been considered previously in the literature related to the SIRP. For period 𝑝
a more exhaustive review of the literature of SIRP approaches we refer 𝑜 set of all decision variables 𝑜𝑝𝑖
to Roldan et al. (2017).
3. Problem description
of each customer 𝑖 at the end of each period 𝑝. Third, 𝛥𝑖 represents
the difference between the initial and the ending inventory level of
Consider a finite planning horizon, with 𝑝 ∈ 𝑃 periods of length
each customer 𝑖, if the initial inventory is higher than the ending
𝑇 , and a complete, directed graph 𝐺 = (𝑉 , 𝐴), with 𝑉 = 0, 1, … , 𝑛,
inventory. We use 𝛥𝑖 to create a pseudo-rolling horizon and avoid
where node 0 denotes the depot, 𝑉 ′ = 1, … , 𝑛 the set of customers, empty ending inventories. Whenever the difference between the ending
and 𝐴 the set of all arcs. Each arc (𝑖, 𝑗) ∈ 𝐴 has an associated cost 𝑐𝑖𝑗 and the initial inventory levels is negative, we penalize this difference
and time 𝑡𝑖𝑗 , both non-negative values. Each customer location 𝑖 ∈ 𝑉 ′ , as lost sales in the objective function. This objective helps the central
is characterized by a set of time windows 𝑎𝑝𝑖 , 𝑏𝑝𝑖 , that represents the supplier to create a pseudo-rolling horizon and avoids customers to
start and end times when the customer can be served on each period have empty inventories at the end of the planning horizon. Fourth, 𝑜𝑝𝑖
𝑝, an initial inventory level 𝐼𝑖0 and inventory capacity 𝐶𝑖 , a service represents the amount of lost sales at customer 𝑖 in period 𝑝, due to
time 𝑠𝑖 and a set of random demands 𝜉(𝑖, 𝑝) which follows known stock-out situations. The notation used in the mathematical formulation
stochastic distributions for each period 𝑝. We consider the demands at is summarized in Table 1.
the customers to be continuously consumed during the periods. Finally, Using the above notation, we can formulate the CTSIRPTW. The
a finite and homogeneous fleet of vehicles is considered, 𝑘 ∈ 𝐾, with problem is formulated as a two stage optimization problem where the
capacity 𝑄. objective is to minimize the fixed and expected costs that are incurred
The CTSIRPTW is an NP-hard problem, as it is an stochastic exten- when considering stochastic demands (1).
sion of the VRP with time windows, when we consider a single period
(the VRPTW is an NP-hard problem Savelsbergh, 1985). In Eqs. (1)– ̃ 𝑠 , 𝑡𝑠 , 𝜉)|
min 𝑓 (𝑥, 𝑡, 𝑡) + 𝐸|𝐺(𝑦 ̃ (1)
(27), we present a mathematical formulation for the problem. The The function 𝑓 (𝑥, 𝑡, 𝑡) evaluates the costs for the first stage of the
mathematical formulation uses different groups of decision variables. decisions. The total routing cost incurred by servicing the customers,
Each binary variable 𝑥𝑘𝑝
𝑖𝑗 is set to 1 if and only if edge (𝑖, 𝑗) is being tra- and the penalty imposed according to the difference between the
versed by vehicle 𝑘 in period 𝑝, and each binary variable 𝑦𝑘𝑝𝑖 indicates earliest and latest delivery to a customer are calculated in this first
if customer 𝑖 is visited by vehicle 𝑘 in period 𝑝. Continuous variables step, creating a fixed delivery plan for the planning horizon. We define
𝑡𝑘𝑝
𝑖 , 𝑡𝑖 , and 𝑡𝑖 , are related to the time management of the problem. 𝑓 (𝑥, 𝑡, 𝑡) as follows:
The first set of variables represent the arrival time of each vehicle ∑∑ ∑ ∑ ∑
𝑘 to a customer 𝑖 in period 𝑝. The second and third sets, relate the 𝑓 (𝑥, 𝑡, 𝑡) = 𝑐𝑖𝑗 𝑥𝑘𝑝
𝑖𝑗 + 𝛼 (𝑡𝑖 − 𝑡𝑖 ) (2)
𝑖∈𝑉 𝑗∈𝑉 𝑘∈𝐾 𝑝∈𝑃 𝑖∈𝑉 ′
earliest and latest arrival time to each customer 𝑖 respectively. Finally,
we have four additional groups of continuous decision variables that ̃ 𝑠 , 𝑡𝑠 , 𝜉̃𝑠 ) is the optimal value of the second stage problem
Then, 𝐺(𝑦
model the commodity flow of the problem. The first group of variables when the real demands at the customers are revealed.
𝑞𝑖𝑘𝑝 gives the amount of commodity delivered by each vehicle 𝑘 in The first stage problem is subject to several sets of constraints
period 𝑝 to each customer 𝑖. Second, 𝐼𝑖𝑝 shows the inventory levels that are ensuring a correct time, routing, and commodity flow. Some
3
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
constraints are common to all demand sample realizations and estab- inventory capacity of the customer. With constraints (20) and (21), we
lished a correct time and routing flow. The constraints (3) to (13), calculate the difference between the initial and the ending inventory of
serve this purpose, ensuring a fix routing and delivery schedule for each customer when the difference is positive.
all demand realizations. Constraints (3) to (4) guarantee that every
customer can be visited by at most one vehicle in each period, and ∑
each vehicle can visit each customer in every period. Constraints (5) 𝑞𝑖𝑘𝑝 ⩽ 𝑄 ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (15)
𝑖∈𝑉 ′
to (7) are flow conservation constraints that describe each individual
route. Constraints (8) to (13) ensure the feasibility of the time schedule. 𝑞𝑖𝑘𝑝 ⩽ 𝑦̃𝑘𝑝
𝑖 𝑀3 ∀𝑖 ∈ 𝑉 ′ , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (16)
Constraints (9) force 𝑡𝑘𝑝 ∑
𝑖 to be 0, if customer 𝑖 is not served by vehicle 𝐼𝑖𝑝 − 𝐼𝑖(𝑝−1) = 𝑞𝑖𝑘𝑝 − 𝑑(𝑖, 𝑝) + 𝑜𝑝𝑖 ′
∀𝑖 ∈ 𝑉 , ∀𝑝 ∈ 𝑃 (17)
𝑘 in period 𝑝. We include two Big-M parameters(𝑀1 and 𝑀2 ), related 𝑘∈𝐾
to the time management of the problem set, equal to the period length.
𝐼𝑖𝑝 ⩾ 0 ∀𝑖 ∈ 𝑉 , ∀𝑝 ∈ 𝑃 (18)
Constraints (11) ensure that every vehicle must return to the depot
before or at the moment the current period ends. Constraints (12) and 𝐼𝑖𝑝 ⩽ 𝐶𝑖 ′
∀𝑖 ∈ 𝑉 , ∀𝑝 ∈ 𝑃 (19)
(13) define the earliest and latest arrival times of each vehicle 𝑘 at each |𝑃 |
𝐼𝑖0 − 𝐼𝑖 ⩾ 𝛥𝑖 ∀𝑖 ∈ 𝑉 ′
(20)
customer 𝑖, along all periods 𝑝.
′
𝛥𝑖 ⩾ 0 ∀𝑖 ∈ 𝑉 (21)
∑
𝑥𝑘𝑝
𝑗𝑖 = 𝑦𝑘𝑝𝑟
𝑖
′
∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (3) The second group of constraints of the second stage problem, (22)
𝑗∈𝑉 and (23), deal with the continuous-time commodity consumption at
∑
𝑦𝑘𝑝
𝑖 ⩽1 ∀𝑖 ∈ 𝑉 ′ , ∀𝑝 ∈ 𝑃 (4) the customers end. For each demand realization, we create some con-
𝑘∈𝐾 straints to avoid excessive stock at the customers at any time. In
∑
𝑥𝑘𝑝 ⩽1 ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (5) constraints (22) and (23), we also account for the possible stock-outs
0𝑖
𝑖∈𝑉 ′ that occur at any time within the time periods. Constraints (22) ensure
∑ ∑ that at the arrival time of any vehicle to a customer, the inventory
𝑥𝑘𝑝
0𝑖
− 𝑥𝑘𝑝
𝑖(𝑛+1)
=0 ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (6)
𝑖∈𝑉 ′ 𝑖∈𝑉 ′ level is non-negative. Whenever a stock-out occurs, the out-of-stock
∑ ∑ amount is calculated. Constraints (23) act in the opposite way, to avoid
𝑥𝑘𝑝
𝑖ℎ
− 𝑥𝑘𝑝
ℎ𝑗
=0 ∀ℎ ∈ 𝑉 ′ , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (7)
𝑖∈𝑉 ′ 𝑗∈𝑉 ′
excessive inventory levels.
𝑡𝑘𝑝 𝑘𝑝 𝑘𝑝
𝑖 + 𝑠𝑖 + 𝑡𝑖𝑗 − 𝑀1 (1 − 𝑥𝑖𝑗 ) ⩽ 𝑡𝑗 ∀𝑖, 𝑗 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (8)
𝐼𝑖(𝑝−1) − 𝑑(𝑖, 𝑝)𝑡̃𝑘𝑝 𝑝
𝑖 ∕𝑇 + 𝑜𝑖 ⩾ 0 ∀𝑖 ∈ 𝑉 ′ , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (22)
𝑎𝑝𝑖 𝑦𝑘𝑝 𝑘𝑝 𝑝 𝑘𝑝
𝑖 ⩽ 𝑡𝑖 ⩽ 𝑏𝑖 𝑦𝑖 ∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (9)
𝑞𝑖𝑘𝑝 + 𝐼𝑖(𝑝−1) − 𝑑(𝑖, 𝑝)𝑡̃𝑘𝑝
𝑖 ∕𝑇 + 𝑜𝑝𝑖 ⩽ 𝐶𝑖 ′
∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (23)
𝑡𝑘𝑝
0
⩾0 ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (10)
𝑘𝑝
𝑡𝑖 ⩽ 𝑇 ∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (11) Finally, in constraints (24) to (27), we define the domain of each
variable of the problem.
𝑡𝑖 ⩾ 𝑡𝑘𝑝 𝑘𝑝
𝑖 − 𝑀2 (1 − 𝑦𝑖 ) ∀𝑖 ∈ 𝑉 ′ , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (12)
𝑡𝑖 ⩽ 𝑡𝑖 + 𝑀2 (1 − 𝑦𝑘𝑝
𝑘𝑝
𝑖 ) ∀𝑖 ∈ 𝑉 ′ , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (13)
𝑥𝑘𝑝
𝑖𝑗 ∈ {0, 1} ∀𝑖, 𝑗 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (24)
Given the first stage decisions 𝑦̃𝑠 , 𝑡̃𝑠 that establish which customer
𝑦𝑘𝑝
𝑖 ∈ {0, 1}
′
∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (25)
must be visited at each period and the time of these visits, the demand
𝑘𝑝
realizations 𝜉̃ result in an inventory problem with stock-outs. We calcu- 𝑡𝑖 ⩾ 0 ∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (26)
late the other cost factors, such as ones caused by stock-out situations,
𝑞𝑖𝑘𝑝 ⩾ 0 ′
∀𝑖 ∈ 𝑉 , ∀𝑘 ∈ 𝐾, ∀𝑝 ∈ 𝑃 (27)
and the difference between the initial and ending inventory levels at
each customer; when this difference is positive. The objective of the For further understanding of the inventory management of the
second stage optimization problem is then defined as: problem, in Fig. 1, we represent the inventory flow of an example
∑ ∑ 𝑝 ∑ customer in a random realization of the demands. In this figure we
̃ 𝑦̃𝑠 , 𝑡̃𝑠 , 𝜉̃𝑠 ) = min
𝐺( 𝐿𝑜𝑖 + 𝐿𝛥𝑖 (14)
𝑖∈𝑉 ′ 𝑝∈𝑃 𝑖∈𝑉 ′
can see how, for a specific customer and a planning horizon of three
periods, the customer has a given initial inventory level. Then, at each
The first group of constraints of the second stage problem deals with
period, the demand that this customer experiences is consumed con-
commodity and inventory management for the demand realizations.
tinuously during the periods (1). Customers must be delivered within
The realization of the demands is a stochastic event that occurs in the
a certain time window (2) and, if a delivery takes place when the
second stage of the two-stage mathematical formulation. The demands
inventory is empty, the lost sales are calculated and penalized in the
are disclosed at the end of the planning horizon. Then, when we obtain
objective function (3). Furthermore, at the end of the planning horizon
these demands, the complete calculation of inventory and lost sales is
calculated, considering the consumption of demands to be linear within we compare the difference between the initial and the final inventory
the time periods. Constraints (15) ensure that the maximum vehicle level (4). If the initial inventory level is higher than the final one, the
capacity is respected, while constraints (16) indicate that a customer difference between inventory levels is calculated and penalized in the
cannot receive any amount by a vehicle if it is not visited by that objective function as sales lost.
vehicle in a period. The Big-M parameter(𝑀3 ) in these constraints is In the second stage of the problem, random demands for each period
equal to the vehicle capacity. Constraints (17) define the inventory and customer is generated. This demand is assumed to be linear and
levels of every customer at the end of each period for a sample continuous along the periods. Therefore, whenever a customer does not
demand realization, calculated as the sum of the previous inventory have the sufficient amount of stock to satisfy the amount of demand
level plus the amount of commodity received in the current period and in a period, we calculate this amount and penalize it in the objective
the amount that the customer is not able to serve due to stock-outs function. This penalization aims at representing the real-life context
∑
𝐼𝑖𝑝 − 𝐼𝑖(𝑝−1) = 𝑘∈𝐾 𝑞𝑖𝑘𝑝 − 𝜉(𝑖, 𝑝) + 𝑜𝑝𝑖 ∀𝑖 ∈ 𝑉 ′ , ∀𝑝 ∈ 𝑃 . This value is further and helps in obtaining a robust solution that can minimize the total
decreased by the commodity consumption of the customer, given by the expected costs. In addition to the proposed mathematical formulation,
realization of the customer’s demand in the current period. Constraints we evaluate the impact of considering recourse actions to reduce costs
(18) and (19) forbid inventory levels to be negative or exceed the related to sales lost and final inventory levels.
4
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
4. Solution approaches customers we just created. Then, we insert the customers requiring the
largest possible quantity. When we cannot insert any more customers
In this section, we present different methods to solve the CT- in the route, due to capacity constraints of trucks or the time windows
SIRPTW. We propose a new population based matheuristic solution of the remaining customers, we initialize a new route in the same way.
approach based on the idea of the ALNS algorithm (Pisinger and Ropke, We iterate until no more insertions are possible. We then apply a local
2007), which is proven to be an efficient algorithm to solve IRPs, search operator to improve the quality of the initial solution and solve a
and we adapt different solution approaches existing in the literature. mathematical subproblem to determine the optimal timing and delivery
We present three variants of the matheuristic algorithm that combines quantities. Note that this can also lead to waiting times when necessary.
an ALNS with a mathematical subproblem solution. We propose a The local search that we apply is the well-known 2-opt algorithm with
population based ALNS algorithm and two simpler versions where dif- a maximum length of four customers. To ensure feasibility, we do not
ferent stochastic demand samples are generated within the algorithms. allow any changes that may violate the time windows of the customers.
After we present the proposed solution approaches, we describe two
Thus, we search for better sequences of customers, that satisfy the other
additional recourse actions that the central supplier could apply to
constraints of the problem.
reduce the overall logistic costs. We also introduce the mathematical
When we obtain an initial solution 𝑠𝑖𝑛𝑖𝑡𝑖𝑎𝑙 with cost 𝑐𝑖𝑛𝑖𝑡𝑖𝑎𝑙 via the
subproblem that is optimally solved in the core of all the presented
construction heuristic, we apply the ALNS to improve it. During this
methods. Furthermore, the methods we adapt as a comparison are
procedure, we save the information of the best solution found 𝑠𝑏𝑒𝑠𝑡
based on the branch and regret heuristic presented in Hvattum et al.
(2007), and in the idea of a multiple scenario approach presented and its cost 𝑐𝑏𝑒𝑠𝑡 , and the information of the incumbent solution that
in Song et al. (2020), and first introduced in Bent and Hentenryck we use at each iteration 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 and 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 to compare with the
(2004), respectively. new solution. We propose three different variants of the algorithm. The
methods integrate several operators to iteratively destroy and repair the
4.1. Adaptive large neighborhood search population based algorithm current solution, and use different demand samples to simulate possible
scenarios. In Algorithm 1 we show how, at each iteration of the ALNS,
The first group of solution approaches that we present in this we generate a new solution by applying one destroy and one repair
article are different variations of a matheuristic solution approach operator to a demand sample 𝑞. In the first variant we present, this
that integrates the mathematical subproblem described in Section 4.2. demand sample 𝑞 considers the expected demands for each customer
and the ALNS procedure. The first two variants resemble the solution and period, whereas for the second and third variations presented, at
approach presented in Alarcon et al. (2020), whereas the third variant, each iteration of the ALNS procedure, a random sample of demands is
the multi-solution stochastic ALNS, is based on a population based generated from the stochastic demand distributions of the customers.
matheuristic algorithm. In general, the three algorithms we present The selection of these operators relies on a roulette-wheel selection
consider different levels of sample generation and evaluation within the operator based on past performance. The selection and prioritization
algorithms. The common structure of the approaches is represented in of destroy and repair operators are pairwise, rather than separate.
Algorithm 1.
To generate an initial solution for the ALNS algorithm, we apply a
4.1.1. Deterministic ALNS
constructive heuristic. The initial solution is generated using the cheap-
est insertion heuristic, presented in Solomon (1987). For each period of The first version of the matheuristic solution approach that we
the planning horizon, we decide which customers must be visited. We propose, considers the deterministic variant of the problem. At each it-
create a priority list containing all customers whose inventory levels at eration, we apply the repair and destroy operator, considering expected
the beginning of the period is not sufficient to survive without a stock- demands at the customers.
out, before the next possible delivery time window. When we obtain Weights 𝜌𝑑𝑟 related to each pair of destroy and repair operators are
the list of customers to be served in the current period, we insert them initially set to the same initial value; when we find a new best solution
using the cheapest insertion algorithm. We first initialize a route by or better incumbent solution, we update the weights of the operators,
inserting the customer farthest away from the depot from the list of increasing them by 𝛾 and 𝜎, respectively, then we resume the procedure
5
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Algorithm 1 ALNS incumbent or best known solution, we proceed in two different ways. If
Require: Input Data the total time since the last improvement is lower than a timelimit, we
1: for 𝑝 = 1 : |𝑃 | do
use the previous incumbent solution as the starting solution for the next
ALNS iteration. If the total time since the last improvement exceeds
2: Obtain the set of customers to be replenished in the current
that time limit, we accept the new solution as the incumbent solution,
period
and therefore, as the input for the next iteration of the ALNS. Then,
3: Create a delivery plan for the current period for the customers in
we reset the time of the last improvement found to zero. We accept
the list
this new solution to avoid strong local optima that prevent the method
4: Local search 1: delete single customer routes
from continuing to improve the quality of the solutions. The stopping
5: Local search 2: 2-opt
criterion for the ALNS is an overall limit on runtime.
6: end for
7: Solve exact subproblem 4.1.2. Stochastic ALNS
8: Start ALNS algorithm using the initial solution 𝑠𝑖𝑛𝑖𝑡𝑖𝑎𝑙 with the The second version of the matheuristic algorithm resembles the
corresponding costs 𝑐𝑖𝑛𝑖𝑡𝑖𝑎𝑙 from constructive heuristic deterministic variant. However, in this approach, at each iteration of
9: 𝑠𝑏𝑒𝑠𝑡 , 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑖𝑛𝑖𝑡𝑖𝑎𝑙 the algorithm, we generate a random sample using the Monte-Carlo
10: 𝑐𝑏𝑒𝑠𝑡 , 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑖𝑛𝑖𝑡𝑖𝑎𝑙 sampling technique, and we apply the correspondent operators to a
11: 𝑡, 𝑡𝑙𝑎𝑠𝑡 ← 0 Start time and time of last improvement stochastic scenario. This version causes both positive and negative
12: while time 𝑡 <MAXTIME do situations. On the one hand, it is possible that certain samples show
13: Generate new sample 𝑞 low commodity consumption at the retailers and, as a result, the related
14: 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 = 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 inventory and stock-out costs are relatively low. However, on the
15: Select a pair of destroy and repair operators 𝑑 and 𝑟 other hand, considering stochastic scenarios at each iteration allows
16: Apply destroy and repair operators to 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 using demands in the learning procedure of the algorithm to account for all possible
sample 𝑞 situations that may occur during the planning horizon. In this case,
17: 2-opt local search to be able to evaluate a higher range of solutions found during the
18: Evaluate cost 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 of the new solution obtained 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 solution approach and, to include in the later evaluation solutions
19: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 1.5 ⋅ 𝑐𝑏𝑒𝑠𝑡 ) then with high commodity consumption, we increase the range of solutions
20: Generate a pool of samples 𝑅 that are evaluated. If the expected costs of the new solution are, at
21: Evaluate solution and update cost 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 using samples in set maximum, twice the costs of the best solution found, we generate a
𝑅 pool of samples, as in the first version of the algorithm, and solve the
mathematical subproblem using all samples in the generated set. Then,
22: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 𝑐𝑏𝑒𝑠𝑡 ) then
we apply the adaptive procedure and update the operator weights, as
23: 𝑠𝑏𝑒𝑠𝑡 , 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡
in the previous version.
24: 𝑐𝑏𝑒𝑠𝑡 , 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡
25: Update weight 𝜌𝑑𝑟 of operators 𝑑 and 𝑟 4.1.3. Multi-solution stochastic ALNS
26: else Finally, the third version of the algorithm is the population based
27: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ) then matheuristic algorithm, which includes one of the most important
28: 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 aspects of the multiple scenario approach algorithm. In this case, the
29: 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 iterative procedure is similar to the second version of the algorithm.
30: else However, in this approach, we do not consider the best solution found
31: if (𝑡 − 𝑡𝑙𝑎𝑠𝑡 > 𝑡𝑖𝑚𝑒𝑙𝑖𝑚𝑖𝑡) then during the algorithm, but a set of good solutions 𝑆. At each iteration,
32: 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 by means of Monte-Carlo sampling technique, we randomly generate
33: 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 a demand scenario for all customers. Then, we apply the destroy and
34: end if repair operators to the generated sample. When we obtain a new
35: end if solution, we then compare the expected costs of the solution to the
36: end if rest of the solutions in the set 𝑆. If the costs of the new solution are
37: end if not worse than 75% of the worst solution in the set, we generate a
38: end while new pool of samples and apply an evaluation procedure to obtain the
39: return 𝑠𝑏𝑒𝑠𝑡 & 𝑐𝑏𝑒𝑠𝑡 average costs of the solution. In this case, if the new solution improves
one of the existing solutions in the set 𝑆, we insert this new solution in
the set and discard the worst solution stored. In this algorithm, we also
vary the adaptive procedure of the algorithm in the following manner:
of updating the operator weights as follows:
⎧ 𝜌 +𝛾 ⎧
if new best solution found. ⎪ 𝜌(𝑖−1)𝑑𝑟 + 𝛾 if new best solution found.
⎪ 𝑑𝑟 ⎪
𝜌𝑑𝑟 = ⎨ 𝜌𝑑𝑟 + 𝜎 if new better incumbent solution found. (28) 𝜌(𝑖−1)𝑑𝑟 + 𝜃 if new accepted solution in set 𝑆.
𝜌𝑖𝑑𝑟 =⎨ (29)
⎪ 𝜌𝑑𝑟 if no better solution found. ⎪ 𝜌(𝑖−1)𝑑𝑟 + 𝜎 if new better incumbent solution found.
⎩
⎪ 𝜌(𝑖−1)𝑑𝑟 if no better solution found.
After applying the destroy and repair operators, if the new solution ⎩
𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 has a cost 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 not more than 50% worse than the best As a common framework for the three variants of the matheuristic
known solution, we generate 𝑟 samples and solve the reduced variant solution approach, we propose six destroy operators and seven destroy
of the mathematical problem formulation. We consider a maximum operators. The repair operators are described as follows:
50% decrease in the quality of the solution, as it is applied in Alarcon
• Remove worst insertions: Given a solution 𝑠, we define the cost
et al. (2020). Finally, we have a new solution with optimal costs for of the detour caused by the insertion of customer 𝑖 as 𝑐𝑜𝑠𝑡 =
these route sequences. If the new solution improves the average costs 𝑐𝑘𝑖 + 𝑐𝑖𝑗 − 𝑐𝑘𝑗 , where 𝑘 and 𝑗 are the preceding and succeeding
of the incumbent solution 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 , we update the incumbent solution customers in the route, respectively. Then, the operator calculates
and the weights for the destroy and repair operators used in this the detour cost caused by every insertion, selects the 𝑝 worst
iteration. We do the same with the best known solution 𝑠𝑏𝑒𝑠𝑡 if the new insertions with respect to these costs, and removes them from the
solution improves it. However, if the new solution does not improve the solution.
6
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
• Remove random insertions: This operator selects 𝑝 different inser- The factor 𝜌𝑖,𝑗 represents the observed score of each operator pair 𝑖 in
tions from random periods, and routes, and removes them from time segment 𝑗. At the end of each time segment, 𝑎𝑖 accounts for the
the solution. number of times each operator has been used in the time segments,
• Remove vehicle: This operator selects a vehicle at random and and the reaction factor 𝛼 is set to 0.5. This weight helps the algorithm
removes all deliveries performed by this vehicle, in every period. take into account equally the scores of the most recent segment and the
• Remove customer: This operator selects 𝑝 customers at random scores of the previous time segments.
and removes all their deliveries.
• Remove customer and closest: This operator selects 𝑝 customers 4.2. Mathematical subproblem
at random and removes all deliveries to these customers and their
In our considered CTSIRPTW, it is possible to determine the delivery
closest customers in terms of distance.
quantities, the delivery times, and evaluate the quality of the solutions
• Remove similar inventory customers: This operator selects 𝑝 cus-
that are iteratively generated within the solution approaches. At each
tomers at random and, for each, selects one other customer with
step of the algorithms, we obtain feasible solutions. However, these
a similar percentage of initial inventory level. Then, it removes solutions may not be optimal for this route sequence, the delivery
all deliveries to all selected customers. quantities and delivery times can be reoptimized to reduce the con-
sistency costs, and the expected inventory and stock-out costs. This
Then, after applying a destroy operator, we select one of the follow-
mathematical subproblem is embodied within the algorithms. When-
ing repair operators:
ever we have a set of routes that define the delivery plan for a range of
• Best insertion in destroy order: This operator inserts customers in periods, we can obtain the cost of the current solution for an instance
sample as well as the different delivery quantities and delivery times
the same order in which they were removed from the previous
necessary. To obtain the optimal delivery quantities and times as well
solution. To reinsert these customers into the existing routes, we
as calculate the correct inventory levels for each customer, we solve
create a list of possible insertions for the period a stock-out occurs
a reduced problem based on the problem formulation. The reduced
as well as all the preceding periods. The possible insertions are
problem contains all constraints of the original problem formulation by
sorted by the total distance of the detour caused by them. We then
using the maximum level policy. This policy allows the central supplier
randomly select one of the three best possible insertion positions to deliver any amount, up to the inventory capacity of the customer.
and perform the insertion. If, after evaluating the new inventory However, the customer visits 𝑦𝑘𝑝 𝑘𝑝
𝑖 , and route sequences 𝑥𝑖𝑗 are no longer
flow of the customer, there are still stock-out situations in the variables and, instead, function as parameters. As a result of the fixation
later periods, we repeat the process between the new stock-out of the integer and binary variables, the mathematical problems that we
period and the last insertion period. solve are linear and the solving times are lower than seconds for the
• Best insertion in random order: This operator works in the same bigger instances that we present.
way as the previous operator, except that we randomly select the
next customer to be reinserted into the solution. 4.3. Recourse strategies
• Random insertion in destroy order: This operator creates a list
of possible insertions, just like the best insertion in destroy order The problem presented in this article is a stochastic variant of the
operator, but then randomly selects one of all possible insertions IRP. However, in practice, companies could apply recourse strategies
from the entire list. to reduce the expected costs during the planning horizon. In this
• Random insertion in random order: This operator creates a list subsection, we present two additional recourse strategies in addition
of possible insertions just as the previous operator, and then to the stock-out penalty applied whenever a customer experiences lost
randomly selects one of them from the entire list. We repeat the sales.
process until a feasible solution is reached. The first recourse strategy we consider creates additional routes for
each period to restock customers that may experience a shortage in
• Consistent insertion in destroy order: This operator inserts cus-
their inventory at a given period. In this setting, at the beginning of
tomers such that the difference between the earliest and the latest
each period 𝑝, the initial inventory of each customer 𝑛 is compared to
arrival times to this customer is minimized.
the expected demand during that period. For those customers which
• Consistent insertion in random order: This operator inserts cus-
may incur into a stock-out situation, and are not planned to be visited
tomers in the same way as the previous operator but, in this case,
in the current period, we create additional routes to replenish their
the customer to be inserted is selected randomly and not in the
inventory. In this recourse strategy, we consider the earliest and latest
destroy order. arrival times calculated in the first stage of the algorithm and we
• Distance-related insertion: This operator can be considered as an deliver to these customers within these time-slots to not increase the
extension of the best insertion in destroy order operator. It selects consistency costs. The amount delivered to each customer considered is
customers in the same order as they were removed from the equal to the expected lost sales from the period 𝑝 until the next delivery
solution, and we calculate the best possible insertions in terms of takes place. Furthermore, in the last period of the planning horizon,
the detour they cause. When we insert the selected customer, we we calculate the expected final inventory level of each customer, and
search for and identify the closest customer, in terms of distance, compare its initial inventory level. If the expected final inventory level
from the list of customers to be reinserted. We then insert this new is lower than the initial, and the customer is not replenished in the final
customer next to the previous customer if it is possible. If we can period, we create an additional delivery to this customer using the same
reduce the lost sales by inserting this customer, we remove both strategy previously mentioned.
customers from the list(not just the first). The second recourse strategy evaluates the customers for each
period 𝑝 in the same manner as the first recourse strategy. However,
Furthermore, the three variants of the ALNS presented include an in this strategy we try to redesign the delivery plans by creating new
additional adjustment mechanism for the operator weights. The scores visits to the customers at hand, and inserting the respective deliveries
are updated after a certain time segment 𝑗 as follows: into already existing routes. This recourse strategy tries to insert the
𝜌𝑖,𝑗 deliveries to the additional customers in the existing routes, neverthe-
𝜌𝑖,𝑗+1 = 𝛼 + (1 − 𝛼)𝜌𝑖,𝑗 (30) less, postponing deliveries to customers that already have a scheduled
𝑎𝑖
visit could create additional stock out situations. For this reason, the
This procedure calculates smoothened scores after each time segment additional deliveries must not create delays in the scheduled arrivals
𝑗 that, in the proposed algorithms, correspond to every 30 s of the total to the already introduced customers, and the vehicle capacity of the
ALNS time (10 min of running time in our computational experiments). vehicles must be respected.
7
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
4.4. Adapted algorithms each iteration, we create a delivery plan for each sample, forcing all
customers in 𝑆𝑖𝑛 to be served in the current period and forbidding
To obtain an initial solution for the CTSIRPTW and compare the 𝑆𝑜𝑢𝑡 to be visited in the same, while in the first iteration, no customer
results obtained with the new proposed algorithm, we adapt two algo- is forced or forbidden into the solution. We create delivery routes
rithms present in the literature to solve the problem. These methods by means of the cheapest insertion algorithm described in Solomon
solve different variants of the dynamic and stochastic VRP which, (1987) and a local search based on the 2-opt algorithm. After we obtain
through the artificial division of the planning horizon into different the delivery routes for each sample, we identify the customer 𝑐 most
periods, are able to readjust the initial solution. In this sense, this commonly replenished in the solutions corresponding to each generated
artificial division of the planning horizon resembles the IRP structure. sample. Using this information, at each iteration, we solve again the
The algorithms we adapt are iterative procedures that evaluate the problem and create two delivery plans for each sample generated, with
efficiency of the solutions by considering different scenarios. These customer 𝑐 being included in set 𝑆𝑖𝑛 and set 𝑆𝑜𝑢𝑡 . When we create the
methods were originally proposed to solve the stochastic dynamic delivery plans for each sample we evaluate the impact of delivering
vehicle routing. We extend these methods to a multiperiod scenario customer 𝑐 in the current period, or in subsequent ones, and select
and use the stochastic information to create different demand samples the option that provides the better results. We then add customer 𝑐
to optimize the problem along the planning horizon. to the set that provides the best average cost and repeat the iterative
procedure until all customers present in the solutions of the samples are
4.4.1. Branch and regret algorithm evaluated. When this iterative procedure ends, we terminate the inner
The first algorithm we adapt is based on the branch and regret procedure with a delivery plan for the current period.
heuristic, first introduced in Hvattum et al. (2007). In this article, the Algorithm 3 Inner procedure branch and regret algorithm
authors dealt with a stochastic VRP motivated by a real-world problem
for Each sample generated do
faced by a major transporter in Norway. In the original method, the
Create 𝑆𝑖𝑛 and 𝑆𝑜𝑢𝑡 initially empty
proposed heuristic artificially divides the planning horizon into differ-
Solve a mathematical subproblem to obtain the optimal delivery
ent subperiods related to the different events that may occur during this
plan for the previous periods
horizon. In this way, whenever a customer is visited, or new customers
Decide which customers must be replenished for the current
that need to be visited appear, the algorithm recalculates the given
sample and period
routes to consider the new information. For a better understanding of
Generate the routes using the list of customers that need to be
the algorithm, we show the pseudo-code presented in the original work
replenished
in Appendix.
end for
We adapt this algorithm to solve the CTSIRPTW by taking the
𝑆𝑡𝑜𝑝 → 𝐹 𝐴𝐿𝑆𝐸
beginning of each period as the recalculating point. In this way, the
while 𝑆𝑡𝑜𝑝 = 𝐹 𝐴𝐿𝑆𝐸 do
division of the planning horizon occurs naturally and corresponds to
Find the customer 𝑐 ∈ 𝑁∖(𝑆𝑖𝑛 ∪ 𝑆𝑜𝑢𝑡 ) most frequently visited
the different periods presented in the problem. This solution approach
if No further customer 𝑐 ∈ 𝑁∖(𝑆𝑖𝑛 ∪ 𝑆𝑜𝑢𝑡 ) is visited in the scenarios
applies two main loops and, in addition, also integrates the creation of
then
different sample scenarios, using the probability distributions of each
𝑆𝑡𝑜𝑝 → 𝑇 𝑅𝑈 𝐸
customer demand.
else
Given that each period is considered separately in the planning hori-
Solve the samples for the current and subsequent periods adding
zon 𝐼1 , 𝐼2 , … , 𝐼𝑝 , the algorithm can be described as having two parts;
customer 𝑐 to 𝑆𝑖𝑛 and 𝑆𝑜𝑢𝑡 respectively
an outer and an inner iterative procedure. In Algorithm 2, we show
Add customer 𝑐 to whichever set that is evaluated as the best
the outer procedure. At each period, the routes previously calculated
choice
are fixed and new demand samples using Monte-Carlo sampling are
end if
generated. Then, using the previous information and the generated
end while
samples, we apply the inner procedure to obtain the plan for the current
Terminate with a plan for the current period
period.
Algorithm 2 Outer procedure branch and regret algorithm
4.4.2. Multiple scenario approach
for Each period 𝐼1 , 𝐼2 , ..., 𝐼𝑝 do
The second algorithm adapted from the literature is the multiple
Take the solution from the previous interval and fix the plan up to
scenario approach, which was first introduced in Bent and Hentenryck
the current period.
(2004). In this work, the authors solve a dynamic multi-vehicle routing
Generate 𝑟 demand samples using the probability distributions
problem with time windows, wherein customer’s appearance is con-
Find plans for the current period using the inner procedure sidered to be stochastic. The multiple scenario approach continuously
(Algorithm 3). generate routing plans for scenarios including both known and stochas-
Evaluate the solution. tic future requests. In recent years, the multiple scenario approach has
end for been adapted to solve a wide range of problems. We find in Song et al.
Return obtained solution (2020) an adaptation of the multiple scenario approach for the two
The idea of the inner procedure of the branch and regret heuris- stage problem related to the stochastic team-orienteering problem with
tic follows the same concept as in the original paper. This iterative consistency constraints.
procedure aims at evaluating the impact of visiting customers in the We adapt the algorithm presented in Song et al. (2020) to solve
current period, or in subsequent ones. In Algorithm 3, we report the the problem we introduce in this paper. In this algorithm we create
pseudo code of the procedure. The inputs for this algorithm are the a pool of different solutions that are proposed for different demand
solution constructed until the current period and the set of samples scenarios. In the first step of the algorithm, we generate different
generated in the outer procedure. In this step, to initially obtain the demand samples providing a deterministic demand realization for each
inventory levels and the optimal delivery amounts for each sample, customer and period. Then for each demand sample, we solve an
we solve the mathematical subproblem described in Section 4.2. Then, independent inventory routing problem with deterministic demands.
when we have the current inventory state of each customer, after In the second step of the proposed algorithm, we propose a consensus
which we initialize two sets, 𝑆𝑖𝑛 and 𝑆𝑜𝑢𝑡 , initially empty, and we function to use the information obtained from each individual solution
apply an iterative procedure to evaluate different delivery plans. At and we propose a solution for the CTSIRPTW.
8
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
In order to obtain a solution for the deterministic inventory routing algorithm. Then, in a second step of the algorithm, we apply a con-
problems related to each demand sample, we apply the deterministic sensus function to select a solution from the set of generated solutions
version of the algorithm described in Section 4.1. We first generate an 𝑁. The consensus function we apply follows the idea of the proposed
initial solution by means of the cheapest insertion heuristic. In this consensus function in Song et al. (2020). We evaluate the quality
heuristic, we decide which customers must be replenished on each of each solution by defining a function that measures the difference
period using the demand samples generated, instead of the expected between the visit variables 𝑦𝑛 and 𝑦′𝑛′ corresponding to two different
demand as in the algorithm previously described. We then apply the demand samples n and n’. This consensus function is based on the
well-known 2-opt algorithm with a maximum length of four customers Hamming distance, which measures the difference between matrices by
to improve the quality of initial solutions generated. To ensure feasibil- comparing individual entries. Therefore, we can evaluate the difference
ity, we do not allow any changes that may violate the time windows of between two solutions related to two demand samples by evaluating
the customers. Thus, we search for better sequences of customers, that if each customer is being replenished in the same periods in both
satisfy the other constraints of the problem. solutions. The Hamming distance between two solution is calculated
After we obtain an initial solution for a demand realization, we as follows:
apply the deterministic version of the ALNS, described in Section 4.1.1. ∑ ∑
𝐻(𝑦𝑛 , 𝑦′𝑛′ ) ∶= |(𝑦𝑛 )𝑝𝑖 − (𝑦′𝑛′ )𝑝𝑖 | (31)
However, at each iteration of the ALNS algorithm, we do not generate
𝑖∈𝑉 ′ 𝑝∈𝑃
additional demand samples but, on the other hand, we calculate costs
related to the solutions using the information of the demand sample Then, the solution selected is the solution that is closest to the
at hand. In Algorithm 4, we present the pseudocode of the proposed other solutions for the other demand samples in terms of the Hamming
algorithm. distance defined.
∑
Algorithm 4 Multiple scenario approach 𝑛 ∈ arg min 𝐻(𝑦𝑛 , 𝑦′𝑛′ ) (32)
𝑛∈𝑁 𝑛′ ∈𝑁,𝑛′ ≠𝑛
1: Generate 𝑛 demand samples using the probability distributions
2: for each sample 𝑛 do
5. Computational experiments
3: for 𝑝 = 1 : |𝑃 | do
4: Obtain the set of customers to be replenished in the current
The continuous-time version of the IRP, and especially the stochastic
period and sample 𝑛
version, is a relatively new problem in the literature. To gain insights
5: Create a delivery plan for the current period for the customers
into the problem properties, we performed computational experiments
in the list
on sets of instances, adapted from a benchmark set. Other sets of
6: Local search 1: delete single customer routes
instances have been proposed to solve other variants of IRPs, but the
7: Local search 2: 2-opt
time window characteristic and the continuous commodity consump-
8: end for
tion considered in our problem makes it rather difficult to adapt these
9: Solve exact subproblem
instances to our problem setting.
10: Start ALNS algorithm using the initial solution 𝑠𝑖𝑛𝑖𝑡𝑖𝑎𝑙 with the
The algorithm we propose was coded in C++, and all computational
corresponding costs 𝑐𝑖𝑛𝑖𝑡𝑖𝑎𝑙 from constructive heuristic
experiments were performed on a Linux system, equipped with two
11: 𝑠𝑏𝑒𝑠𝑡 , 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑖𝑛𝑖𝑡𝑖𝑎𝑙
Intel Xeon E5-2650(2.6 GHz) processors and 64 GB RAM. IBM CPLEX
12: 𝑐𝑏𝑒𝑠𝑡 , 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑖𝑛𝑖𝑡𝑖𝑎𝑙
12.7 was used as a MIP solver, with a maximum computation solving
13: 𝑡, 𝑡𝑙𝑎𝑠𝑡 ← 0 Start time and time of last improvement
time of 10 h.
14: while time 𝑡 <MAXTIME do
15: 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 = 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡
5.1. Test instances
16: Select a pair of destroy and repair operators 𝑑 and 𝑟
17: Apply destroy and repair operators to 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡 using demands in
In Lagos et al. (2020), the authors introduce the continuous-time
sample 𝑛
variant of the problem and present results for a set of instances of
18: 2-opt local search
maximum 15 customers, considering a planning horizon of one pe-
19: Evaluate cost 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 of the new solution obtained 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡
riod. However, authors do not consider the possibility of stock-out
20: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 1.5 ⋅ 𝑐𝑏𝑒𝑠𝑡 ) then
situations, and a customer can be visited multiple times in the same
21: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 𝑐𝑏𝑒𝑠𝑡 ) then
period. To evaluate the effectiveness of the presented methods, we
22: 𝑠𝑏𝑒𝑠𝑡 , 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡
use a set of instances introduced in Alarcon et al. (2020). This sets of
23: 𝑐𝑏𝑒𝑠𝑡 , 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡
instances was initially adapted from a benchmark set (Cordeau et al.,
24: Update weight 𝜌𝑑𝑟 of operators 𝑑 and 𝑟
2001) that pertains to the periodic vehicle routing problem with time
25: else
windows(PVRPTW).
26: if (𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡 < 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ) then
These instances include information of different number of cus-
27: 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡
tomers (5, 10, 15, 20, and 48 customers), and a planning horizon of four
28: 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡
and eight periods. The instances use the customer information related
29: else
to coordinates and time windows from the instances of size 48 in the
30: if (𝑡 − 𝑡𝑙𝑎𝑠𝑡 > 𝑡𝑖𝑚𝑒𝑙𝑖𝑚𝑖𝑡) then
benchmark set. Vehicle capacity is set to 2,000 units, and the fleet size
31: 𝑠𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑠𝑐𝑢𝑟𝑟𝑒𝑛𝑡
is such that it can deliver, within a single period, twice the average
32: 𝑐𝑖𝑛𝑐𝑢𝑚𝑏𝑒𝑛𝑡 ← 𝑐𝑐𝑢𝑟𝑟𝑒𝑛𝑡
commodity consumption per period. Furthermore, we set the penalty
33: end if
cost 𝐿 = 3 for each unit of demand that customers are not able to
34: end if
satisfy, or unit of difference between the initial and ending inventory
35: end if
level and the consistency cost weight 𝛼 = 1. We select 𝛼 = 1 because
36: end if
the benchmark instances (Cordeau et al., 2001) consider time windows
37: end while
that depend on the routing distances, so both routing and consistency
38: return 𝑠𝑏𝑒𝑠𝑡
costs are measured using the same unit. We also set the penalty cost
39: end for
𝐿 = 3 to balance the possible stock-out and inventory costs, relative to
When the iterative procedure ends, we have generated a solution the rest of the costs considered in the problem. For further information
for each demand sample 𝑛 ∈ 𝑁 generated at the beginning of the about the instances, we refer to Alarcon et al. (2020).
9
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Table 2
Characteristics of instances for the CTSIRPTW.
Group Size Periods Vehicles Std. dev Group Size Periods Vehicles Std. dev
4p1a 5 4 1 Low 8p1a 5 8 1 Low
4p1b 5 4 1 Medium 8p1b 5 8 1 Medium
4p1c 5 4 1 High 8p1c 5 8 1 High
4p2a 10 4 2 Low 8p2a 10 8 2 Low
4p2b 10 4 2 Medium 8p2b 10 8 2 Medium
4p2c 10 4 2 High 8p2c 10 8 2 High
4p3a 15 4 2 Low 8p3a 15 8 2 Low
4p3b 15 4 2 Medium 8p3b 15 8 2 Medium
4p3c 15 4 2 High 8p3c 15 8 2 High
4p4a 20 4 3 Low 8p4a 20 8 3 Low
4p4b 20 4 3 Medium 8p4b 20 8 3 Medium
4p4c 20 4 3 High 8p4c 20 8 3 High
4p5a 48 4 6 Low 8p5a 48 8 6 Low
4p5b 48 4 6 Medium 8p5b 48 8 6 Medium
4p5c 48 4 6 High 8p5c 48 8 6 High
For each instance size, we generate three groups of 10 instances. the first of the presented methods, the branch and regret heuristic.
Demands that each customer experiences follow a normal distribution Furthermore, for the branch and regret heuristic we report the average
𝜉(𝑖, 𝑝), and demands are considered independent across customers. The running times in seconds, whereas the maximum running time for the
main difference between the three groups of instances is the stochastic ALNS algorithms is set to 10 min and for the adapted MSA we generate
factor. In the first group of each instance size, the standard deviation 𝑁 = 30 samples and a running time each respective ALNS of 1 min. In
of each demand is randomly set between 10% and 20%, in the second this table, we can see how the multi-solution stochastic ALNS provides
group, this deviation is randomly set between 20% and 30%, and in the best overall results. In general, the branch and regret heuristic
the last group it is set between 40% and 50%. The characteristics of provides the worst results for all set of instances. This situation is due
the proposed instances are summarized in Table 2. to the lack of flexibility that the algorithm considers when dealing with
different demand scenarios. It is also remarkable that, on average, the
5.2. Evaluation mechanism multi-solution stochastic ALNS solution approach and the deterministic
variant of the ALNS and provide the best results (up to 42%, and 40%
To create a fair comparison between the presented methods, we ap- improvement respectively, for the bigger instance size). Furthermore,
ply the sample average estimator used in Gutjahr (2004). For this eval- the multiple scenario approach reports good results when solving the
uation procedure, we use as input the different solutions found using instances with bigger size (42%). In the multiple scenario approach,
the proposed algorithms. The pseudocode of the evaluation procedure
and multi-solution stochastic ALNS, the methods do not consider one
is shown in Algorithm 5.
possible solution but a pool of good solutions. This aspect allows the
Algorithm 5 Sample Average Estimator algorithms to, in a last step, evaluate the solutions over a bigger
Request as input a solution 𝑠 found by one of the solution approaches amount of scenarios, and therefore select the best solution of the set of
good solutions. On the other hand, the stochastic variant of the ALNS
Generate a pool of samples 𝑅 performs worse in general than the before mentioned strategies, as the
𝐶𝑜𝑠𝑡𝑡𝑜𝑡𝑎𝑙 ← 0 approach only considers one possible solution after each iteration, and
for Each sample 𝑟 ∈ 𝑅 do the solution quality can be biased by the samples generated during the
Solve the mathematical subproblem using solution 𝑠 and sample 𝑟. algorithm.
Obtain 𝐶𝑜𝑠𝑡𝑟𝑠 In Tables 4 and 5, we show the results obtained when solving the
𝐶𝑜𝑠𝑡𝑡𝑜𝑡𝑎𝑙 + = 𝐶𝑜𝑠𝑡𝑟𝑠 problem using the proposed algorithms for the given set of instances
end for with medium and high standard deviations. These tables are structured
𝐴𝑣𝑒𝑟𝑎𝑔𝑒𝐶𝑜𝑠𝑡 ← 𝐶𝑜𝑠𝑡𝑡𝑜𝑡𝑎𝑙 ∕|𝑅| in the same way as the previous one for low standard deviations. The
return 𝐴𝑣𝑒𝑟𝑎𝑔𝑒𝐶𝑜𝑠𝑡 most important outcome of the table is that, when considering higher
In this algorithm, we generate a large pool of demand samples standard deviations, the multiple scenario approach lacks on average
using the Monte-Carlo sampling technique. Then, using the solution effectiveness when comparing to the three other proposed algorithms.
obtained by each of the algorithms, we obtain the average costs of the However, for the bigger group of instances ‘‘4p5b’’ and ‘‘4p5c’’, the
solution, using a similar mathematical subproblem to the one presented multiple scenario approach shows a good performance when compared
in Section 4.2. However, in this mathematical subproblem, in addition with the stochastic variant of the ALNS, although considering higher
to the customer visits 𝑦𝑘𝑝 𝑘𝑝
𝑖 and route sequences 𝑥𝑖𝑗 variables, the arrival
standard deviations reduce its effectiveness in average. In general,
𝑡𝑘𝑝 the multi-solution stochastic ALNS algorithm provides the best overall
𝑖 are considered parameters. To create a fair comparison, we use
the same samples to evaluate the solutions obtained by all algorithms. results for all groups of instances, where the bigger gaps with respect
This is made by fixing a random seed for the algorithm; therefore, the to the other algorithms are found in instances with 15 customers (22%
samples generated are the same for all solutions. for medium and 23% for high standard deviations).
After we test the proposed and adapted algorithms using the in-
5.3. Computational results stances with planning horizon of four periods, in Table 6, we show the
overall results obtained when considering a longer planning horizon.
To evaluate the effectiveness of the proposed method and compare When considering a planning horizon of eight periods, the multi-
the obtained results, each of the presented methods is applied using solution stochastic ALNS reports the best results for all the group of
the set of instances described before. In Table 3, we show average instances except for the set of instances ‘‘8p1c’’ where the deterministic
costs obtained when applying the algorithms to the instances with low version of the ALNS obtains an improvement of 14.84% with respect to
standard deviation. We also report the gap obtained with respect to the branch and bound algorithm. However, for instances that consider
10
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Table 3
Average results four periods with low standard deviation.
Instance B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Time (s) Average Gap Average Gap Average Gap Average Gap
4p1a 1255.05 0.29 1254.39 1.26% 1151.64 −7.37% 1213.09 −2.44% 1149.06 −7.60%
4p2a 3059.41 1.32 2810.62 −7.83% 2696.37 −11.27% 2694.54 −11.60% 2582.51 −15.36%
4p3a 4713.77 5.16 4264.37 −8.42% 3977.16 −14.76% 4119.15 −10.37% 3727.57 −19.94%
4p4a 6303.25 12.17 4820.35 −21.97% 4653.68 −25.00% 4598.44 −25.95% 4572.75 −26.40%
4p5a 18141.44 239.94 10883.87 −41.96% 11152.55 −40.35% 11294.43 −39.59% 10746.02 −42.89%
Average 6694.58 51.78 4806.74 −15.78% 4726.28 −19.75% 4783.93 −17.99% 4555.58 −22.44%
Table 4
Average results four periods with medium standard deviation.
Instance B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Time (s) Average Gap Average Gap Average Gap Average Gap
4p1b 1451.12 0.31 1377.93 −2.51% 1256.07 −12.26% 1273.16 −11.13% 1234.57 −13.50%
4p2b 3386.39 1.38 3012.63 −10.66% 2992.16 −10.40% 2909.49 −13.38% 2810.58 −16.70%
4p3b 5284.35 5.43 4561.55 −13.37% 4296.95 −18.37% 4295.75 −18.18% 4079.56 −22.35%
4p4b 6447.04 11.56 5306.21 −16.91% 5101.34 −20.50% 5112.49 −20.10% 5035.60 −21.45%
4p5b 19597.87 243.78 12102.37 −38.08% 11784.76 −39.71% 11959.74 −38.80% 11565.97 −40.83%
Average 7233.35 52.49 5272.14 −16.51% 5086.26 −20.25% 5110.12 −20.32% 4945.26 −22.97%
Table 5
Average results four periods with high standard deviation.
Instance B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Time (s) Average Gap Average Gap Average Gap Average Gap
4p1c 1677.77 0.28 1562.62 −5.70% 1485.32 −10.16% 1464.093 −11.56% 1427.17 −13.87%
4p2c 3897,37 1.29 3574.81 −7.31% 3397.56 −12.24% 3372.752 −13.18% 3189.23 −17.60%
4p3c 6189.63 5.76 5482.92 −9.94% 4850.30 −20.46% 4952.809 −18.82% 4695.01 −23.18%
4p4c 7383.37 11.83 6349.22 −13.33% 6164.15 −16.08% 6141.952 −16.34% 6002.07 −18.24%
4p5c 21721.26 245.16 14511.58 −32.55% 13031.02 −39.58% 13475.57 −37.71% 12894.12 −40.21%
Average 8173.88 52.86 6296.23 −13.76% 5785.67 −19.71% 5881.44 −19.52% 5641.52 −22.62%
Table 6
Average results eight periods planning horizon.
Instance B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Time (s) Average Gap Average Gap Average Gap Average Gap
8p1a 2795.82 1.28 2061.76 −23.44% 1932.66 −29.00% 1862.88 −27.76% 1937.07 −30.29%
8p2a 7538.40 7.33 4875.15 −35.16% 4792.10 −36.02% 4878.13 −34.74% 4808.23 −36.11%
8p3a 10415.01 16.85 6810.15 −33.98% 6479.71 −37.53% 6668.00 −35.63% 6344.31 −38.51%
8p4a 12785.05 42.57 8539.79 −33.16% 7627.60 −38.42% 7647.50 −40.17% 7860.93 −40.32%
8p5a 45385.45 1087.66 18788.95 −58.52% 19391.90 −57.18% 18921.60 −58.22% 17959.70 −60.34%
Average 15783.94 231.14 8215.16 −36.18% 8044.79 −39.63% 7995.62 −39.30% 7782.05 −41.11%
8p1b 2886.39 0.87 2318.01 −19.27% 2277.98 −21.10% 2114.80 −26.36% 2113.05 −26.43%
8p2b 7596.43 7.51 5592.39 −26.42% 5369.33 −29.29% 5389.27 −28.93% 5100.85 −33.10%
8p3b 11944.60 18.53 7798.26 −34.73% 7721.59 −35.17% 7114.50 −40.30% 6735.08 −43.46%
8p4b 14951.90 44.82 9135.76 −38.59% 8834.08 −40.26% 8906.98 −40.22% 8881.67 −40.75%
8p5b 45056.30 1197.42 20355.80 −54.79% 20837.15 −53.73% 20387.10 −54.74% 20051.05 −55.48%
Average 16487.12 253.83 9040.06 −34.76% 9008.02 −35.91% 8782.53 −38.11% 8576.34 −39.84%
8p1c 3002.23 1.33 2893.22 −9.36% 2541.93 −14.84% 2628.28 −12.06% 2579.99 −13.27%
8p2c 8261.15 10.85 7276.61 −11.69% 6790.53 −17.69% 6891.10 −16.48% 5947.69 −27.92%
8p3c 13634.70 0.25 10163.10 −25.18% 8929.28 −34.35% 8815.35 −35.24% 8662.85 −36.43%
8p4c 16114.80 58.29 11501.15 −27.51% 11364.00 −28.79% 11358.85 −28.74% 10946.20 −31.10%
8p5c 55979.15 1218.21 25965.20 −53.57% 23908.45 −57.22% 23387.25 −57.36% 23832.70 −58.17%
Average 19398.41 257.79 11559.86 −24.13% 10706.84 −30.58% 10616.17 −29.98% 10393.88 −33.38%
10 or more customers, the multi-solution stochastic ALNS outperforms considering low, medium and high standard deviations. Each of the
the rest of the presented methods. boxplots represent the gaps obtained when solving all instances of the
It is also noticeable that, when considering a planning horizon of before mentioned groups using the multiple scenario approach, and
eight periods, the computational times needed to obtain a solution the three variants of the ALNS and compared to the results obtained
by means of the branch and regret heuristic. For the larger set of by means of the branch and regret heuristic. In general, the multi-
instances the computational times needed exceed the 20 min, reaching solution stochastic ALNS obtains the best improvement gaps for all
the 28 min in average when applying the multiple scenario approach instances in the sets. In the boxplot graphs we can also appreciate how
to solve the group of instances ‘‘8p5c’’. the deviation from the mean remains consistently low when applying
To a further analysis of the results, in Fig. 2, we show a boxplot of the multi-solution stochastic ALNS and, when the standard deviation
the percentage gaps of the different methods. In this figure, we show considered is high, this small deviation from the mean is general for
gaps of the sets of instances of bigger size (‘‘4p5a’’, ‘‘4p5b’’ and ‘‘4p5c’’), the four methods.
11
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Fig. 2. Percentage gap representation of group of instances ‘‘4p5a’’, ‘‘4p5b’’ and ‘‘4p5c’’.
Table 7
Average routing costs.
Instances B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Average Gap Average Gap Average Gap Average Gap
4p1a 830.12 933.44 −12% 806.60 3% 791.56 5% 815.06 2%
4p2a 1551.31 1806.09 −16% 1606.84 −4% 1589.93 −2% 1602.55 −3%
4p3a 2014.21 2370.49 −18% 2204.96 −9% 2152.35 −7% 2241.49 −11%
4p4a 2299.05 2924.07 −27% 2644.62 −15% 2642.03 −15% 2635.16 −15%
4p5a 4562.59 5985.21 −31% 5844.97 −28% 5793.93 −27% 5798.59 −27%
4p1b 854.52 1025.00 −20% 804.40 6% 807.90 5% 804.64 6%
4p2b 1533.98 1846.56 −20% 1565.17 −2% 1636.42 −7% 1680.37 −10%
4p3b 2064.11 2432.50 −18% 2151.71 −4% 2203.34 −7% 2280.21 −10%
4p4b 2369.89 3008.57 −27% 2635.16 −11% 2642.23 −11% 2710.26 −14%
4p5b 4416.28 6322.39 −43% 5732.43 −30% 5904.49 −34% 5838.74 −32%
4p1c 811.63 920.30 −13% 812.39 0% 819.32 −1% 852.69 −5%
4p2c 1507.52 2020.73 −34% 1612.87 −7% 1480.87 2% 1803.02 −20%
4p3c 2096.72 2581.22 −23% 2124.44 −1% 2247.05 −7% 2358.64 −12%
4p4c 2513.45 2977.09 −18% 2638.95 −5% 2649.48 −5% 2807.64 −12%
4p5c 4387.61 5805.74 −32% 5885.48 −34% 5598.94 −28% 5957.31 −36%
Finally, in Tables 7 to 10, we report the differences between the variation when we create additional delivery routes to replenish cus-
different routing, stock-out, inventory and consistency costs, respec- tomers that are expected to run out of stock as described in Section 4.3.
tively, that we obtained when solving all sets of instances with low, In this table, columns named ‘‘Route’’, show the average increase in
medium and high standard deviations. These tables show that the routing costs when considering low, medium and high standard devia-
biggest difference between the obtained results are reported in the tions. Furthermore, columns named ‘‘Inventory’’ and ‘‘Stock’’, show the
stock-out costs in Table 8. The multi-solution stochastic ALNS and increase in inventory and stock-out costs respectively. Finally, columns
the multiple scenario approach provide the best average results and, named ‘‘Difference’’, show the average increase in overall costs when
even when incurring in additional deliveries and, as a result, in higher applying the recourse action to the obtained solution by means of the
routing costs as for the sets of instances ‘‘4p5a’’, ‘‘4p5b’’ and ‘‘4p5c’’ are multi-solution stochastic ALNS.
able to significantly reduce the average expected stock-out costs with In Table 12, we proceed in the same manner as in Table 11. How-
respect to the other methods. This is also noticeable in Table 9, where ever, in this case, we first try to insert customers that may experience
the inventory costs reported are reduced with respect to the other a loss of sales in already existing routes and, if there are additional
methods, except for the branch and regret heuristic. Finally, due to the deliveries that cannot be inserted in existing delivery routes, we create
matheuristic solution approach, and the impact of the time windows in new delivery routes.
the problem, we can observe that the requirements of the problem with In these tables we observe that, when the demands that the cus-
respect to consistency in the arrival times is satisfied for all solution tomers experienced are predictable (low and medium standard devi-
approaches. ations), the recourse actions help reduce the stock-out and inventory
related costs. However, this reduction in costs is smaller than the
increase in routing costs originated by creating new delivery routes
5.4. Recourse strategies and/or inserting customers in already existing routes. On the other
hand, when the standard deviation considered for the stochastic dis-
After we evaluate the effectiveness of the proposed algorithm, we tribution of the demands is high, the overall costs are reduced as the
evaluate the impact of including two recourse strategies to reduce the instance size considered increases. This results are consistent with real
sales lost and the inventory related costs, in addition to the penalization world situations where, when the demands that customers experience
of lost sales in the objective function. In Table 11, we show the costs are highly stochastic, additional actions within the period horizon
12
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Table 8
Average stock-out costs.
Instances B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Average Gap Average Gap Average Gap Average Gap
4p1a 180.04 74.63 59% 83.14 54% 118.68 34% 81.27 55%
4p2a 646.67 165.43 74% 261.30 60% 266.00 59% 173.12 73%
4p3a 1339.91 437.36 67% 453.45 66% 532.37 60% 278.29 79%
4p4a 2393.66 292.94 88% 439.15 82% 423.01 82% 394.43 84%
4p5a 9150.36 571.55 94% 1045.04 89% 1169.12 87% 655.08 93%
4p1b 318.66 101.59 68% 195.00 39% 210.48 34% 168.53 47%
4p2b 1014.12 326.20 68% 514.54 49% 459.99 55% 328.98 68%
4p3b 1805.70 642.63 64% 730.67 60% 655.36 64% 551.21 69%
4p4b 2422.24 649.80 73% 870.02 64% 874.13 64% 725.32 70%
4p5b 10696.69 1359.12 87% 1666.17 84% 1633.13 85% 1371.14 87%
4p1c 591.13 312.14 47% 370.31 37% 360.06 39% 289.08 51%
4p2c 1435.46 664.75 54% 896.36 38% 942.14 34% 524.82 63%
4p3c 2519.91 1293.42 49% 1229.65 51% 1249.89 50% 976.88 61%
4p4c 3059.20 1566.34 49% 1791.93 41% 1743.15 43% 1426.12 53%
4p5c 12487.11 4155.64 67% 2681.68 79% 3375.57 73% 2536.47 80%
Table 9
Average inventory costs.
Instances B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Average Gap Average Gap Average Gap Average Gap
4p1a 231.98 238.34 −3% 252.44 −9% 294.12 −27% 243.26 −5%
4p2a 825.35 793.47 4% 794.43 4% 801.30 3% 771.31 7%
4p3a 1298.77 1390.32 −7% 1268.86 2% 1396.22 −8% 1145.23 12%
4p4a 1525.72 1512.93 1% 1506.79 1% 1472.21 4% 1483.81 3%
5a 4166.47 3989.09 4% 3984.08 4% 4021.36 3% 3958.95 5%
4p1b 265.39 243.05 8% 247.86 7% 243.65 8% 247.12 7%
4p2b 796.36 796.10 0% 872.02 −10% 781.72 2% 756.85 5%
4p3b 1362.32 1413.18 −4% 1363.08 0% 1385.52 −2% 1192.85 12%
4p4b 1571.25 1536.86 2% 1529.06 3% 1528.89 3% 1502.10 4%
4p5b 4230.15 4071.21 4% 4088.38 3% 4125.57 2% 4013.92 5%
4p1c 261.15 322.47 −23% 289.48 −11% 274.66 −5% 271.83 −4%
4p2c 904.67 839.51 7% 852.26 6% 920.79 −2% 813.12 10%
4p3c 1512.51 1531.72 −1% 1450.89 4% 1399.44 7% 1293.19 15%
4p4c 1728.53 1695.58 2% 1663.39 4% 1683.35 3% 1657.44 4%
4p5c 4601.08 4208.46 9% 4161.42 10% 4188.98 9% 4118.07 10%
Table 10
Average consistency costs.
Instances B&R MSA Det. ALNS Sto. ALNS Multi-sol. ALNS
Average Average Gap Average Gap Average Gap Average Gap
4p1a 12.91 7.98 38% 9.46 27% 8.73 32% 9.47 27%
4p2a 36.08 45.63 −26% 33.79 6% 37.32 −3% 35.53 2%
4p3a 60.88 66.17 −9% 49.89 18% 38.21 37% 62.56 −3%
4p4a 84.81 90.55 −7% 63.12 26% 61.19 28% 59.35 30%
4p5a 262.03 338.03 −29% 278.47 −6% 310.02 −18% 333.40 −27%
4p1b 12.55 8.30 34% 8.81 30% 11.13 11% 14.28 −14%
4p2b 41.93 43.77 −4% 40.43 4% 31.37 25% 44.39 −6%
4p3b 52.22 73.24 −40% 51.49 1% 51.53 1% 55.29 −6%
4p4b 83.65 110.98 −33% 67.10 20% 67.23 20% 97.91 −17%
4p5b 254.74 349.66 −37% 297.80 −17% 296.55 −16% 342.16 −34%
4p1c 13.86 7.70 44% 13.14 5% 10.05 27% 13.57 2%
4p2c 49.73 49.83 0% 36.07 27% 28.95 42% 48.26 3%
4p3c 60.49 76.55 −27% 45.32 25% 56.43 7% 66.29 −10%
4p4c 82.20 110.21 −34% 69.89 15% 65.97 20% 110.86 −35%
4p5c 245.44 341.73 −39% 302.45 −23% 312.08 −27% 282.27 −15%
Table 11
Impact additional delivery routes. Difference = Routing costs − Inventory costs − Stock-out costs.
Instance size Low standard deviation Medium standard deviation High standard deviation
Route Inventory Stock Difference Route Inventory Stock Difference Route Inventory Stock Difference
4p1 41.31 −3.94 −7.85 29.51 56.55 −5.53 −16.93 34.09 62.68 −12.93 −26.20 23.55
4p2 142.57 −45.59 −19.81 77.17 87.91 −21.29 −36.02 30.60 140.43 −55.08 −103.06 −17.70
4p3 263.25 −165.88 −34.51 62.86 309.90 −196.36 −124.47 −10.93 352.70 −229.84 −244.88 −122.01
4p4 174.61 −63.08 −45.43 66.10 216.46 −91.20 −88.96 36.29 319.96 −163.52 −316.66 −160.22
4p5 287.20 −95.36 −41.35 150.49 395.65 −136.75 −236.01 22.89 731.76 −359.92 −955.99 −584.15
13
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Table 12
Impact deliveries in existing routes and additional routes.
Instance size Low standard deviation Medium standard deviation High standard deviation
Route Inventory Stock Difference Route Inventory Stock Difference Route Inventory Stock Difference
4p1 41.58 −4.07 −7.81 29.69 55.94 −5.40 −16.25 34.29 63.05 −14.76 −27.06 21.23
4p2 142.55 −45.78 −18.78 77.98 87.65 −22.05 −36.12 29.48 139.32 −56.79 −97.97 −15.43
4p3 264.41 −167.14 −34.61 62.66 309.66 −198.03 −124.31 −12.67 354.59 −233.80 −253.74 −132.95
4p4 174.92 −62.20 −46.99 65.72 218.28 −90.99 −91.90 35.39 321.61 −165.68 −314.97 −159.03
4p5 286.14 −94.84 −40.24 151.05 398.92 −138.55 −232.92 27.45 727.08 −359.74 −948.53 −581.19
would help the central supplier to minimize the overall expected costs. results obtained from solving instances and the costs related to routing,
However, when the demand stochasticity is relatively low, additional stock-out, inventory and consistency. In these results, the multi-solution
deliveries would increase the original delivery plan. stochastic ALNS drastically reduces the expected stock-out cost of
the solution, even if, as in sets of instances ‘‘4p5a’’ and ‘‘4p5b’’, the
6. Conclusions and further research central warehouse incurred higher routing costs. These results show
that additional deliveries are of great use when minimizing the overall
In this article, we introduce the CTSIRPTW, which is part of the costs of a supply chain. In addition, we report results obtained when
family of IRPs. The characteristics of the problem we present arise considering a longer planning horizon of eight subperiods, where the
from a real-world application related to beverage industries that re- results obtained remain consistent as the instance size increases.
quire a great effort, especially when dealing with the related route
The continuous-time IRP problem is a new variant in the literature.
planning and inventory management. The problem includes one recent
In this field, research could take different directions. Model-specific
characteristic in the literature, that is, the continuous-time commodity
research might study other aspects of the problem, such as the possibil-
consumption. In this group of problems, the product usage at each
ity of a multi-echelon distribution systems in which a central retailer
customer is continuous within the periods, and creating bad delivery
supplies different intermediate storage centers and customers are re-
plans may impact in additional costs related to stock-out situations.
plenished from these storage centers. Another model-specific variant
Furthermore, customers have different opening times and time win-
could include the multiple-product situation, wherein the central sup-
dows, and consistency in delivery times improves service quality and
customer satisfaction, which is a key factor in a competitive market. plier manages more than one product and the coordination of deliveries
We present a two-stage mathematical formulation for the CTSIRPTW. to each customer is a key aspect of the problem. It may also be
We formulate the problem as a MIP, wherein, the first step involves interesting to consider the dynamic stochastic variant of the problem;
calculating delivery times, sequences and quantities, and the second at the beginning of each period, the central warehouse can re-optimize
step involves calculating the related inventory stock-out costs after the the current solution and include new information disclosed in previous
demands at the customers are disclosed. In practice, in addition to the periods. On the other hand, several other studies include stochastic
proposed algorithm that provides a route and delivery plan for the travel times, increasing the level of stochasticity and the complexity
planning horizon, companies that expect a shortage in their stock may of the problem. Another research possibility would be to develop
need an additional delivery. We present and evaluate the impact of more efficient solution methods. Finally, other metaheuristic solution
recourse actions to modify the proposed delivery plans. approaches, and problem specific methodologies, can be applied to find
To solve the proposed mathematical formulation, in Section 4, we solutions that would reduce the total expected costs.
propose five different solution approaches. The first method is adapted
from the branch and regret heuristic, first introduced in Hvattum et al.
CRediT authorship contribution statement
(2007), where at each period, an iterative procedure is applied to
determine the impact of delivering the customers in the current or
subsequent periods. The second solution approach is an adaptation of Emilio J. Alarcon Ortega: Conceptualization, Writing – original
the multiple scenario approach present in Song et al. (2020). In this draft, Methodology, Investigation, Formarl analysis. Karl F. Doerner:
approach, a pool of possible solutions is taken into account at each Conceptualization, Supervision.
period, and is extended using both past and future demand scenarios.
Finally, we propose three versions of a matheuristic solution approach,
Data availability
based on an ALNS that includes several destroy and repair operators
applied to improve an initial solution, obtained using the cheapest
insertion algorithm. The three versions vary in terms of the usage Data will be made available on request.
of the stochastic information and using different amounts of demand
samples and good solutions within the algorithm. Furthermore, during
Acknowledgments
the process of obtaining good solutions, we solve an exact subproblem
up to optimality using good solutions. We include the solution of
this mathematical subproblem in all the proposed methods to obtain Financial support from the Austrian and German Science Funds
optimal delivery amounts and times, using the given routes. (FWF and DFG, D-A-CH) under grant # I 2248-N32 is gratefully ac-
To test the efficiency of the proposed method, we present a range of knowledged. The computational results presented herein were achieved,
computational tests with a benchmark set of instances, and with a new in part, using the Vienna Scientific Cluster (VSC).
instance set adapted from a benchmark set and presented in Alarcon
et al. (2020). We adapted the set of instances to include different
Appendix
levels of stochasticity. Results show that the multi-solution stochastic
ALNS reports the best overall solutions for all instance sizes, where,
for the largest instance size, it finds solutions at 42%, 40% and 40% In Algorithms 6 and 7 we provide the pseudo codes for the inner and
better than the branch and regret heuristic, when considering low, outer loop of the branch and regret procedure in the original work.
medium and high standard deviations, respectively. We report the
14
E.J. Alarcon Ortega and K.F. Doerner Computers and Operations Research 152 (2023) 106129
Algorithm 6 Outer loop branch and regret algorithm (Hvattum et al., Archetti, C., Desaulniers, G., Speranza, M.G., 2017b. Minimizing the logistic ratio in
2007) the inventory routing problem. EURO J. Transp. Logist. 6 (4), 289–306.
Bell, W.J., Dalberto, L.M., Fisher, M.L., Greenfield, A.J., Jaikumar, R., Kedia, P.,
1. At the start of each interval 𝐼1 , ..., 𝐼𝑣 :
Mack, R.G., Prutzman, P.J., 1983. Improving the distribution of industrial gases
(a) Take the solution from the previous interval and lock the plan with an on-line computerized routing and scheduling optimizer. Interfaces 13 (6),
up to the moment at which the current time interval begins. If a 4–23.
vehicle has left its last customer, a lock is set to indicate that it Bent, R.W., Hentenryck, P.V., 2004. Scenario-based planning for partially dynamic
must continue to the customer that followed in the solution from the vehicle routing with stochastic customers. Oper. Res. 52 (6), 911–987.
Bertazzi, L., Speranza, M.G., 2008. Inventory routing. In: Golden, B., Raghavan, R.,
previous interval. Wasil, E. (Eds.), the Vehicle Routing Problem Latest Advances and New Challenges,
(b) Add to the problem all customer requests that became known Operations Research/Computer Science Interfaces Series. Vol. 43, Springer, Berlin,
during the last interval. pp. 49–72.
(c) Find plans (for the current interval 𝐼𝑢 ) by using the BRH Brinkmann, J., Ulmer, M.W., Mattfeld, D.C., 2018. Dynamic lookahead policies for
stochastic-dynamic inventory routing in bike sharing systems. Comput. Oper. Res.
subprocedure.
106, 260–279.
2. Evaluate the final solution. Campbell, A.M., Savelsbergh, M.W.P., 2004. A decomposition approach for the
inventory routing problem. Transp. Sci. 38 (4), 488–502.
Coelho, L.C., Cordeau, J.-F., Laporte, G., 2012. Consistency in multi-vehicle
Algorithm 7 Inner loop branch and regret algorithm (Hvattum et al., inventory-routing. Tranp. Res. C 24, 270–287.
2007) Coelho, L.C., Cordeau, J.-F., Laporte, G., 2014. Thirty years of inventory routing. Tranp.
Let 𝐶 be the set of known customers a the start of an interval, 𝐼𝑢 , Sci. 48 (1), 1–19.
Coelho, L.C., Laporte, G., 2014. Improved solutions for inventory-routing problems
and let 𝑆𝑖𝑛 and 𝑆𝑜𝑢𝑡 , be subsets of 𝐶, both initially empty.
through valid inequalites and input ordering. Int. J. Prod. Econ. 155, 391–397.
1. Create 𝑟 sample scenarios with the same known customers as in 𝐶, Cordeau, J.-F., Laporte, G., Mercier, A., 2001. A unified tabu search heuristic for the
including stochastic customers drawn from the given distributions. vehicle routing problems with time windows. J. Oper. Res. Soc. 52, 928–936.
2. Repeat the following: Crama, Y., Rezaei, M., Savelsbergh, M.W.P., Woensel, T.V., 2018. Stochastic inventory
routing for perishable products. Transp. Sci. 52 (3), 526–546.
(a) Solve the sample scenarios, while forcing all customers in 𝑆𝑖𝑛 to
Desaulniers, G., Rakke, J.G., Coelho, L.C., 2015. Branch-and-price-and-cut algorithm for
be served during 𝐼𝑢 and all customers in 𝑆𝑜𝑢𝑡 to be served later than the inventory-routing problem. Transp. Sci. 50 (3), 1060–1076.
𝐼𝑢 . Gruler, A., Panadero, J., de Armas, J., Perez, J.A.M., Juan, A.A., 2020. A variable
(b) Find the customer 𝑐 ∈ 𝐶∖(𝑆𝑖𝑛 ∪𝑆𝑜𝑢𝑡 ) that is most frequently visited neighborhood search simheuristic for the multiperod inventory routing problem
in the time interval 𝐼𝑢 in the 𝑟 sample scenarios. with stochastic demands. Int. Trans. Oper. Res. 27 (1), 314–335.
Gutjahr, W.J., 2004. An ant-based approach to combinatorial optimization under
(c) Resolve the sample scenarios (as in step 2a), considering both
uncertainty. In: 4th International Workshop on Ant Colony Optimization and Swarm
𝑆𝑖𝑛 ∶= 𝑆𝑖𝑛 ∪ 𝑐 and 𝑆𝑜𝑢𝑡 ∶= 𝑆𝑜𝑢𝑡 ∪ 𝑐. Add 𝑐 permanently to whichever Intelligence. Springer Berlin, Heidelberg, pp. 238–249.
set that is evaluated as the best choice. He, Y., Artigues, C., Briand, C., Jozefowiez, N., Ngeuveu, S.U., 2020. A matheuristic
3. Repeat until 𝑆𝑖𝑛 is empty: with fixed-sequence reoptimization for a real-life inventory routing problem.
Transp. Sci. 54 (2), 355–374.
(a) Solve the sample scenarios (as in step 2a).
Hemmelmayr, V., Doerner, K.F., Hartl, R.F., Savelsbergh, M.W.P., 2009. Delivery
(b) Count the number of times each customer 𝑐 in 𝑆𝑖𝑛 is served first by strategies for blood products supplies. OR Spectrum 31 (4), 707–725.
each vehicle in each scenario solution, disregarding customers that Hvattum, L.M., Lokketangen, A., Laporte, G., 2007. A branch-and-regret heuristic for
have already been placed. the stochastic and dynamic vehicle routing problem. Networks 49 (4), 330–340.
(c) Consider the customer-vehicle pair with the highest count, and Juan, A.A., Grasman, S.E., Caceres-Cruz, J., Bektas, T., 2014. A simheuristic algorithm
for the single-period stochastic inventory-routing problem with stock-outs. Simul.
potentially a second pair where either the customer or the vehicle
Model. Practice Theory 46, 40–52.
is the same as for the pair with highest count. For both alternatives: Kheiri, A., 2020. Heuristic sequence selection for inventory routing problem. Transp.
lock the customer to be served before all remaining customers by Sci. 54 (2), 302–312.
the given vehicle, and resolve the sample scenarios. Enforce the Kleywegt, A.J., Nori, V.S., Savelsbergh, M.W.P., 2002. The stochastic inventory routing
alternative that fives the least average cost over all sample scenario problem with direct deliveries. Transp. Sci. 36 (1), 94–118.
Kleywegt, A.J., Nori, V.S., Savelsbergh, M.W.P., 2004. Dynamic programming ap-
solutions, and, for any remaining iterations, disregard the enforced proximations for a stochastic inventory routing problem. Transp. Sci. 38 (1),
customer in step 3b. 42–70.
4. Terminate with a plan for the given time interval 𝐼𝑢 . Lagos, F., Boland, N., Savelsbergh, M.W.P., 2020. The continuous-time inventory-
routing problem. Transp. Sci. 54 (2), 299–564.
Lee, H.L., Whang, S., 2008. The whose, where and how of inventory control design.
Supply Chain Manag. Review 12 (8), 22–29.
Liu, S.-C., Lee, W.-T., 2011. A heuristic method for the inventory routing problem with
References time windows. Expert Syst. Appl. 38 (10), 13223–13231.
Minkoff, A.S., 1993. A Markov decision model and decomposition heuristic for dynamic
Absi, N., Cattaruzza, D., Feillet, D., Ogier, M., Semet, F., 2020. A heuristic branch- vehicle dispatching. Oper. Res. 41 (1), 77–90.
cut-and-price algorithm for the ROADEF/EURO challenge on inventory routing. Pisinger, D., Ropke, S., 2007. A general heuristic for vehicle routing problems. Comput.
Transp. Sci. 54 (2), 313–329. Oper. Res. 34, 2403–2435.
Adelman, D., 2004. A price-directed approach to stochastic inventory/routing. Oper. Popovic, D., Vidovic, M., Radivojevic, G., 2012. Variable neighborhood search heuristic
Res. 52 (4), 499–514. for the inventory routing problem in fuel delivery. Exp. Syst. Appl. 39 (18),
Adulyasak, Y., Cordeau, J.-F., Jans, R., 2013. Formulations and branch-and-cut algo- 13390–13398.
rithms for multivehicle production and inventory routing problems. INFORMS J. Roldan, R.F., Basagoiti, R., Coelho, L.C., 2017. A survey on the inventory-routing
Comput. 26 (1), 103–120. problem with sotochastic lead times and demands. J. Appl. Log. 24 (A), 15–24.
Alarcon, E.J., Schilde, M., Doerner, K.F., 2020. Matheuristic search techniques for the Savelsbergh, M.W.P., 1985. Local search in routing problems with time windows. Ann.
consistent inventory routing problem with time windows and split deliveries. Oper. Oper. Res. 4, 285–305.
Res. Perspect. 7. Solomon, M.M., 1987. Algorithms for the vehicle routing and scheduling problems with
Alarcon, E.J., Schilde, M., Malicki, S., Doerner, K.F., 2018. Consistent inventory routing time window constraints. Oper. Res. 35 (2), 254–265.
with split deliveries. In: Operation Research Proceedings 2017. pp. 395–401. Song, Y., Ulmer, M.W., Thomas, B.W., Wallace, S.W., 2020. Building trust in home
Andersson, H., Hoff, A., Christiansen, M., Hasle, G., Lokketangen, A., 2010. Industrial services- stochastic team-orienteering with consistency constraints. Transp. Sci. 54
aspects and literature survey: Combined inventory management and routing. (3), 823–838.
Comput. Oper. Res. 37 (9), 1515–1536. Su, Z., Wang, Z.L.Z., Qi, Y., Benlic, U., 2020. A matheuristic algorithm for the inventory
Andre, J., Bourreau, E., Calvo, R.W., 2020. Introduction to the special section: routing problem. Transp. Sci. 54 (2), 330–354.
ROADEF/EURO challenge 2016 — inventory routing problem. Transp. Sci. 54 (2), Touzout, F.A., Ladier, A.-L., Hadj-Hamou, K., 2021. An assign-and-route matheuristic
299–301. for the time-dependent inventory routing problem. European J. Oper. Res. Available
Archetti, C., Boland, N., Speranza, M.G., 2017a. A matheuristic for the multivehicle online.
inventory routing problem. INFORMS J. Comput. 29 (3), 377–387.
15