Dynamic inventory routing problem : Policies considering network disruptions

Article history: Received June 18 2017 Received in Revised Format August 25 2017 Accepted November 7 2017 Available online November 7 2017 In this paper, we introduce an inventory routing problem with network disruptions. In this problem, not only decisions on inventory levels and vehicle routing are made simultaneously, but also, we consider disruptions over the networks in which a number of arcs are vulnerable to these disruptions, leading to an increase in travel times. We develop a dynamic programming approach to deal with this situation, and we also evaluate some policies adapting well-known instances from the literature. © 2018 Growing Science Ltd. All rights reserved


Introduction
The Inventory Routing Problem (IRP) is one extension of the classic vehicle routing problem and has been studied because of its industrial applicability.Vendor Managed Inventory system (VMI) is one of the most used strategies for coordinating inventory policies and transportation management while minimizing the logistics costs.This strategy can be modeled as an IRP and was introduced by Federgruen and Zipkin (1984).
IRP consists in satisfying the demand of customers that are geographically spread over a planning horizon while satisfying inventory levels constraints and vehicle capacity constraints (Azadeh et al., 2017).As an extension of the classic vehicle routing problem, IRP is a difficult optimization problem because of the coordination of the various related decisions.As an extension of the VMI strategy, the IRP can be also used to model distribution process for the same company when they allocates its own vehicles and the distribution is done to its own stores or retailers.
On the other hand, transportation networks deal with problems of traffic congestion, accidents or weather problems, also the demand can change, the time windows change or vehicles can suffer breakdowns, all these situations can produce an increment in the travel times or the necessity to change the planed routes need a change of the planned routes.Nowadays, some companies are developing navigation technologies to minimize uncertainties with data and that can consider real-time information.One problem for this kind of company is the high price of information and GPS services.There are also some theories and developments about the handling of disruptions (Yu & Qi, 2004) in order to satisfy solutions in real time when a disruption occurs in the distribution network.
As the classic Vehicle Routing Problem and the IRP have proved to be NP-hard in the static distribution management version, it is therefore more difficult to generate a solution in real time in order to adjust the distribution process in the event of a link disruption, and this new solution must be obtained as fast as possible.Some approximations for managing disruptions in supply chains have been proposed using different approximation methods (Xiangpei & Lijun, 2012;Li et al., 2007).Nevertheless, the IRP with link disruptions is a problem that has not been studied in depth in the literature.
The main purpose of this article is to introduce the dynamic IRP with network disruptions.Our main contributions are: to develop a framework based on dynamic programming to evaluate the dynamic Inventory Routing Problem considering disruptions over the network.Also, we evaluate different scenarios over a set of modified instances using probability distributions.
The remainder of this study is organized as follows: a literature overview about IRP and network disruption is developed in section 2, the mathematical formulation is presented in section 3, in section 4 we present the modeling framework and the algorithm used.Computational results and analysis are developed in section 5. Finally, conclusions are presented in section 6.

Literature review
Most of the studies in the literature consider the distribution of a single product from a single depot to a set of customers over a planning horizon using a fleet of homogeneous vehicles and developing a strategy for solving the problem (Archetti et al., 2007;Coelho et al., 2012;Coelho & Laporte, 2013;Franco & Figueroa-García, 2016).In the same way, disruptions over distribution networks have also been studied in the literature and some solution methods have been proposed.
The first approximations for disruption management were applied for scheduling problems relating to aircraft recovery (Teodorovic & Guberinic, 1984).Sever et al. (2013) proposed an approximation based on stochastic dynamic programming for the dynamic shortest path problem using online policies.The first study of vehicle routing problems with disruptions was the one proposed as a dynamic vehicle routing problem by Psaraftis (1988).One of the papers that works with multiple disruptions in vehicle routing problems was developed by Wang et al. (2011).They proposed a model to handle different types of disruptions in VRP with time windows.To model the disruptions, they transform them into requirements for the time windows of each customer, and by using this modification the optimal starting time for vehicles is determined.Some approximations have been developed to approximate the problem of disruptions in distribution networks, using the specific case of vehicle routing problems.A specific approximation was developed by Mu et al. (2011).In this case, they studied the problem of vehicle breakdowns during deliveries and the necessity to reoptimize the solution obtained.To solve this problem in a reasonable amount of time, they developed two tabu search algorithms that allowed them to find near-optimal solutions in a reasonable amount of time.The algorithms proposed and the problem studied do not contain random parameters or uncertainty.
Real-time optimization or the online vehicle routing problem was also studied by Ng et al. (2017), and this problem is characterized by traffic congestion.The main idea is to reduce the risk of late delivery.The authors developed a multiple colonies artificial bee colony algorithm.They tested the proposed algorithm using real data and instances from the literature.Some extensions of the VRP under disruptions have been studied in the literature.The location routing problem with disruption has been studied by Zhang et al. (2015), who consider a multi-product problem with stochastic demand in which the supply of the product is randomly disrupted in distribution centers.
To tackle this problem, the authors presented a bi-objective mixed-integer nonlinear programming model with one objective of minimizing the overall costs and the second objective was to minimize the total failure costs related to disrupted distribution centers.That leads to the reliability of the supply chain network, and they also developed a multi-objective simulated annealing algorithm combined with the Taguchi method to tune the parameters.A recent development of this problem was by Rayat et al. (2017).In this problem, also the depots were randomly disrupted, and they developed a scenario-based mixedinteger programming model to optimize the reinsertion when depots suffer disruptions, also combining neighborhood search and simulated annealing algorithms.Several other articles have tried to approximate this problem (Mohammadi et al., 2016;Rahimi et al., 2016;Zhalechian et al., 2016;Ahmadi-Javid & Seddighi, 2013;Asl-Najafi et al., 2015).Nevertheless, this review enables us to determine that this is the first approximation of the inventory routing problem under disruptions.

Mathematical model
For our approximation we have adapted the formulation proposed by Archetti et al. ( 2007) and we have introduced the time windows constraints according to the model developed by Kaligari and Guerrero (2015).

Parameters rt
Amount of product available at the depot for each time period t Demand for each customer i, for each time period t Li Lower bound of inventory for each customer i Ci, Upper bound of inventory for each customer i ci j Travel cost between customer i and customer j Capacity of each vehicle ai Lower bound for the time windows for each customer i bi Upper bound for the time windows for each customer i si Service time for each customer i Mij Upper case M used for the time windows for each pair of customers i,j Inventory holding cost for each customer i

Variables
Inventory levels for each node i for each time period t =1 if the arc i,j is traversed by vehicle k in a time period t Amount of product delivery to customer i by vehicle k in a time period t =1 if a customer i is visited by vehicle k in a time period t Time of beginning of a service for a customer i in a time period t for a specific vehicle k

Model formulation
The mathematical formulation for the problem is presented as follows: The objective function given in Eq. ( 1) is used to minimize the total cost of the model.The first part of the objective function comprises the inventory holding cost at the depot and the customers.The second part of the objective function contains the routing cost.
Eq. ( 2) ensures the balance inventory constraints.Constraints (3) and ( 4) ensure that for each customer the inventory levels cannot exceed the minimum and maximum level respectively.Constraints ( 5) and ( 6) model the quantities of product that can be delivered to each customer.Eq. ( 7) guarantees that the amount of product delivered in a vehicle does not exceed its capacity.With constraint (8) the consistency between the amount of product delivered and the activation of a route is given.Eqs.(9-10) represent the flow conservation and activation constraints respectively.Constraints ( 11) and ( 12) ensure that a vehicle only can begin one route from the depot.Eqs (13-15) model the time windows constraints.Finally, Eqs.

Modeling framework
For solving the problem considered before considering the dynamism and disruptions over the network, a dynamic programming method with finite stages is used.We have determined a probability of going into a disruption for each link in the network and it varies for each period of time.For each node and each period of time the decision is made on which node to travel to next.The main objective is to satisfy the customer´s requirements by minimizing the overall costs considering the natural constraints and the disruptions over the network.For this situation, we have included the following variables:

Cfij
Failure cost between each pair of nodes i,j PSij Probability without disruption between each pair of nodes i,j PCij Probability with disruption between each pair of nodes i,j

GSij
Expected profit without disruption between each pair of nodes i,j GCij GESi t GECi t GEMi t Expected profit with disruption between each pair of nodes i,j Expected profit without disruption in node i in the time period t Expected profit with disruption in node i in the time period t Maximum expected profit in node i in the time period t Each arc (i, j) has an associated probability of success, which means that there is a probability that a vehicle traveling through this arc will reach its destination without any inconvenience, and this probability is affected by different factors such as traffic or damage.Dynamic programming with finite stages is based on the final steps of the process, in this case the time periods, as well as the policies used to make the best decision.Two policies are developed, the first considering the scenarios with the disruption, and the other one ignoring these scenarios, as mentioned in the justification for the model.
Each policy has a transition matrix, as well as a matrix of profits, and these matrices can be defined respectively as follows: ∀ ∈ , ∈ (25) Eqs. (20-22) correspond to the scenario without disruptions.These equations present the way in which the transition matrix between the nodes is calculated by using the distance between them.Also, the profit matrix is presented.
On the other hand, Eqs.(23-26) take into account scenarios with disruptions.In these new equations a new term is introduced (cfi,j), which is used to calculate the profit matrix with disruptions.This new term takes into account the distance in proportion to the success probability for each arc (i,j), hence these probabilities are used to take the decisions.
The dynamic programming model with finite stages begins from the most distant period and decreases in each iteration until reaching the first period.That is, if the planning horizon is 3, the first iteration will be for the third period, then for the second, and finally for the first, taking decisions in descending stages first for the first period, then for the second and finally the third, reaching the defined planning horizon.
In this way and using the equations previously defined, the following equations are defined: Eq. ( 27) presents the profit without disruption when the time period is equal to P, while Equation ( 28) gives the profit including disruptions when the time period is equal to P. Equation ( 29) represents the maximum expected profit for each node in the time period P, which is the maximum between GESi P and GECi P .Finally, Eqs.(30-32) represent the same as Eqs.(27-29) but the time period varies between t = P-1… t = 1.

Dynamic components
Another factor used in this work is the dynamism of the nodes.We have added the dynamism of the nodes by using the deterministic demand.Most of the articles in the literature deal with the problem of a finite and known number of nodes (or customers) with a known demand for each time period.In our approach, we have included nodes than can be dynamic by using a probability function that determines for each time period if a node is active or inactive.This means that the demand for each time period is also dynamic and is determined by the number of nodes in each time period and the demand of each one of them that is deterministic.
To model this situation a vector Dti t is used.This vector contains the demand in a node in a time period.If a node is active in a specific time period, then Dti t = dti; otherwise Dti t =0.In other words, if the node is active in a specific time period the demand of the node will be equal to its deterministic demand, and if the node is not active the demand will be zero.
Considering this new feature, some constraints and conditions are added to the mathematical model presented in the previous section.We must guarantee that if a customer is inactive in a time period the delivery quantity to this customer must be zero.This can be guaranteed by using Eq. ( 33).
Besides, Eq. ( 13) must be replaced by the following constraints: Finally, with this new feature a modification to the dynamic programming method with finite stages is required, because the transition matrices and the profit matrix will vary for each time period and will depend on the active nodes.
Eqs. (20-32) will repeat for each time period taking into account that the active nodes vary for each time period, hence the size of matrices and vectors will vary and the size depends directly on the number of active nodes.Eqs.(27)(28)(29)(30)(31)(32) are repeated in each time period but they have a modification because they must iterate from the time period P to the period t so that the decision can be made if the profit matrix and the nodes have remained.In other words, if the time period is P=3, then Equations ( 20) to (32) will repeat for each t= {1, 2, 3}.Nevertheless, Equations ( 27) to (32) must iterate in the following way: for t=1 three iterations must be done beginning from the third period to the first period, taking the related decisions for each node according to the maximum expected profit .When t=2, two iterations must be done, for t=2 and t=3, where the maximum expected profit is also calculated.Finally, when t=3 only one iteration must be done and the policy selection must be done.

Problem instances
We have generated instances in order to test our approach by using the classic instances of the Inventory Routing Problem proposed by Coelho and Laporte (see http://www.leandrocoelho.com/instances/inventory-routing/)and the time windows are generated using the method proposed by Kalgari et al. (2015).In addition to the information generated before, we have generated for each customer two random numbers necessary to our approach.All these data are required as inputs for our approximation.Due to our approach changing dynamically, the decisions also change dynamically for each iteration, as mentioned earlier.
The success probability, as abovementioned, depends on a set of factors such as traffic, which may influence the probability of a delivery.Since the proposed method uses random numbers, two special situations can be presented.The first one is that the success probability of delivery is equal to 0, which means there is no direct connection between a pair of nodes; otherwise the probability is equal to 1, which means the connection does not present any failure or disruption.To clarify, the success probability between all the nodes cannot be 0 because it would represent an infeasible problem; and in the other case, if all the success probabilities are equal to 1, the problem is reduced to the classic deterministic inventory routing problem.

Results
We will describe step by step with a single instance and then we will present the average results obtained.We will first present the results on an instance with a maximum of 6 customers for one to 3 periods.To illustrate our procedure, we first present the distances without disruptions in Table 1 and distances with disruptions in Table 2.  Table 3 presents the policies for each scenario in each time period.The decisions are related with taking or not taking into account the disruption scenario for each period for each node.

Table 3
Optimal Policy The scenario with disruption must be used 1 2 The scenario with disruption should not be used 1 3 The scenario with disruption should not be used 1 4 The scenario with disruption should not be used 1 5 The scenario with disruption should not be used 1 6 The scenario with disruption must be used 2 1 The scenario with disruption must be used 2 2 The scenario with disruption should not be used 2 3 The scenario with disruption should not be used 2 4 The scenario with disruption should not be used 2 5 The scenario with disruption should not be used 2 6 The scenario with disruption must be used 3 1 The scenario with disruption must be used 3 2 The scenario with disruption should not be used 3 3 The scenario with disruption should not be used 3 4 The scenario with disruption should not be used 3 5 The scenario with disruption should not be used 3 6 The scenario with disruption must be used Also, the number of active nodes per period and their demands are presented in Table 4.With the results presented in Table 3 we can determine in which period the success probability must be an active constraint.Once these results are determined, we can next obtain the following results about the vehicles used for each service, the beginning of the service and inventory levels (Table 5, Table 6 and Table 7).We have determined three types of policies to compare and verify the results over the different instances.
The first policy consists in executing the algorithm without using the success probability, the second one is without using the dynamism of the nodes and the third one is without using both types of dynamisms.
In Table 8 the average results are presented for instances with three time periods and varying the number of customers between 5 and 35.It can be observed that our approach can find solutions close to those policies that relax some features used by our work, even when the uncertainty is higher in our approach.Also by our approach we can guarantee that the demand satisfied is close to those without using less uncertain policies.In those cases in which we cannot obtain the optimal solution, this is mainly because the time of iteration exceeded the maximum time allowed.
In Table 9 the average results of instances with six time periods is presented.

Conclusions
In this paper, we have presented an inventory routing problem under disruption networks.To tackle this problem, we have used a stochastic dynamic programming with finite stages approximation.We have tested different policies combining disruption and dynamism of the nodes, finding that the full algorithm works appropriately over the full instances.We have also observed that the performance when combining disruptions with dynamism of nodes could obtain solutions close to those that only used single policies or worked with the full problem.Another advantage of using the information of each scenario is that it leads to a significant decrease of the complexity of the problem.
The literature review allows us to conclude that some studies have tried to develop algorithms for the online version or using disruptions in VRP and ILRP, but our proposal has not been developed in the literature before.Future works will be focused on describing the probabilities of disruptions and will consider modifications to the traditional Inventory Routing Problem, possibly including backorders and other types of characteristics.

Table 1
Distances without disruptions

Table 2
Distances with disruptions j

Table 8
Average results with 3 period times

Table 9
Average results with 6 time periods