Introduction

The aim of this tutorial is to introduce the class of inventory routing problems (IRP) in the case the demand of multiple customers has to be satisfied. The present tutorial follows Bertazzi and Speranza (2012) where the class of IRP was introduced. In Bertazzi and Speranza (2012), the IRP are classified according to various characteristics and, in particular, according to the time dimension or to the time and space dimensions. When shipments are direct, because one customer only is of interest, we say that the decisions are over time only. The key decision is to identify the times of service. This means that no routing is involved. In the case of multiple customers with routes visiting more than one customer, we say that the decisions are over time and space. Key decisions concern the times of service and the sequences of customers in the routes. This is the focus of this tutorial. The problems of this class enlarge the set of decisions taken in the more classical routing problems, adding a timing dimension. We start from the traveling salesman problem (TSP) and, by means of examples, we introduce the IRP and their relations with the most classical routing problems and discuss the reasons why the IRP are important and worth of investigation. We also present and discuss the basic problem of this class, in the case one vehicle only is available and in the case of multiple vehicles. Finally, we overview the literature in the area.

From the TSP to the IRP: the value of the integrated decisions over time and space

The TSP is one of the most widely known combinatorial optimization problems. In a complete undirected graph with a cost associated with each edge, the problem is to find a circuit of minimal cost that visits all vertices. The tour is a Hamiltonian circuit. The cost associated with an edge may also represent a length. Usually, the only assumption made on the costs is that they are non-negative.

In the context of routing problems, we may think about the vertices of the TSP as customers and about the circuit as the route of a vehicle. The depot of the vehicle may be located at any of the vertices of the graph. The TSP is the most basic routing problem and is based on a number of underlying assumptions:

  • one vehicle only is available;

  • the vehicle has sufficient capacity to carry the demands of all customers;

  • the customers to be visited have been previously chosen;

  • the vehicle has sufficient time to visit all customers in one route.

The only decision to be made in the TSP concerns the sequence of the customers in the route. An example of TSP instance and solution is shown in Fig. 1. For the sake of clarity of the figure, we do not indicate the costs, but assume that the circuit in bold is the shortest of all possible Hamiltonian circuits.

Fig. 1
figure 1

A TSP solution

In transportation problems, customers have usually a demand and vehicles have limited capacity. The demand and the capacity are measured in the same unit, for example volume or weight, depending on which of the two is more relevant. The most classical routing problem is the capacitated vehicle routing problem (VRP). A complete undirected graph, with costs associated with the edges, represent the transportation network. The edge that connects two vertices represents the shortest (that is the least expensive) path to travel between the two vertices. Thus, the cost of an edge is the minimum possible cost to travel between the two vertices. For this reason, in general, it is assumed that the costs satisfy the triangle inequality. A specific vertex represents the depot and the other vertices the customers. Each vehicle starts a route from the depot and returns to the depot at the end of the route. Usually, no limitation is set on the number of vehicles available. The VRP consists in finding the routes that minimize the total cost to serve the demand of all customers while satisfying the constraint on the vehicle capacity. Although often in the literature on the VRP routes are identified with vehicles, the VRP is focused on the routes and on the cost of the routes and not on the vehicles. The reason for not assuming a limited number of vehicles is that the same physical vehicle may travel two or more of the routes. In Fig. 2, we show a solution with two routes of a VRP instance where the depot is in node 0. Again, we do not indicate the costs of the edges and assume that the routes in bold and in dotted line are the only optimal solution. This means that the single route 0-1-2-3-4 is not feasible, due to the demands of the customers and capacity of the vehicles. If feasible, due to the triangle inequality, the cost of edge (2,3) would be not greater than the cost of the two edges (0,2) and (0,3). The routes 0-1-2-0 and 0-3-4-0 might be traveled by one single vehicle, one after the other, or by two different vehicles. For example, suppose that the customers have to be all served the same day and a vehicle can drive 8 h a day. If the time needed to travel the two routes is less than 8 h, a single vehicle can travel both routes in the same day. On the other hand, if each route requires a long time (more than 4 h) to be traveled, two vehicles will be necessary.

Fig. 2
figure 2

A VRP solution

The main assumptions of the VRP are:

  • the strongest constraint for a route is the capacity of a vehicle, that is a vehicle (with the driver) has sufficient time to travel any route;

  • the customers to be visited and the demands to be satisfied are given;

  • the available vehicles are sufficient to travel all routes.

The VRP is focused on the organization of routes, on the allocation of customers to routes, and on the sequencing of customers in each route. Timing is out of the scope of the VRP. In terms of time, we can only say that the time frame considered is that, when an instance of a VRP is defined, one has in mind that all the identified customers have to be organized in routes in the same time frame. For example, a day may be considered as time frame. All customers to be visited in a day are identified, the demand of each customer is the quantity that has to be delivered during the day and the VRP finds the routes of minimum total cost to visit all customers. In a subsequent phase, the routes will be assigned to vehicles, depending on their duration and on the working time of drivers.

The IRP considers a discrete time horizon, for example a sequence of days. For the sake of clarity, we refer to the day as time unit. The time horizon may be made by the five working days of a week. An undirected complete graph describes, as in the VRP, the transportation network with costs associated with the edges. Vertex 0 represents the depot and the other vertices the customers. The IRP enlarges the set of decisions to be taken with respect to the VRP adding the days of visit to the customers. In the IRP, the quantity to be delivered, day by day, to a customer is not known. If the quantities to be delivered to customers were known, day by day, the problem could be decomposed into as many VRPs as the number of days in the horizon. For each day, a VRP could be solved for the customers and the demands to be delivered that day. Instead, in the IRP, the daily consumption (in volume or weight) of the customers is given and the quantities to be delivered, day by day, have to be decided. We assume that the quantity already available at the beginning of the time horizon at each customer is known. The IRP is the problem of deciding, day by day, how much to deliver to each customer and how to organize the routes. The solution has to satisfy the capacity of each route and to guarantee that each customer has, in each day, the quantity sufficient for the consumption of the day. An inventory holding cost is charged for the quantities that are kept in inventory. The goal is to minimize the sum of the total inventory and routing costs. The holding cost may be charged at the customers only, or at the customers and the depot. In case the holding cost is not relevant, it may be set to 0 and the goal becomes the minimization of the total cost of the routes.

In Fig. 3, we show a solution for an IRP instance with a time horizon of 2 days. We do not provide the numerical details of the instance, for the sake of clarity. In Fig. 3a and b, the routes of day 1 and 2 are shown, respectively. Customers 1 and 3 are visited on both days, while customers 2 and 4 on one day only. This may be due to the interaction between the consumptions of the customers and the capacity of the vehicles.

Fig. 3
figure 3

An IRP solution

The main assumptions of the IRP are:

  • the days of service, together with the quantities to be delivered within the horizon, can be chosen, provided that no stock out at the customers occurs;

  • the initial availability and the daily consumption of customers is known within the horizon;

  • the strongest constraint for a route is the capacity of a vehicle, that is a vehicle has sufficient time to travel any route;

  • the vehicles available are sufficient to travel all routes of each day.

The IRP is related with the periodic vehicle routing problem (PVRP) where routes are designed for a fixed fleet of capacitated vehicles each day of a horizon, to visit customers exactly a pre-set number of times (see Francis et al. (2008) for a recent survey of this problem and its extensions). The PVRP shares with the IRP the timing dimension, that is the possibility of choosing the service days. However, it does so in a somehow simplified context, as a set of possible sequences of service days is given in advance. Usually, the service frequency is assumed to be fixed and only the precise days have to be chosen. For example, with the frequency of twice a week the decision is whether to serve Monday and Thursday, Tuesday and Friday or Wednesday and Saturday. Moreover, in the PVRP, when the days of service are chosen, the quantities to deliver (or collect) are known. In fact, given the sequence of service days, the quantities can be calculated on the basis of the daily demands. Thus, the basic decisions to be made in the PVRP are the sequence of days of service and the vehicle routes; whereas in the IRP, the decisions are the days of service, the quantities and the vehicle routes.

There are situations where a model that integrates decisions over time and space such as the IRP is not appropriate. The appropriateness of the model depends on how the overall system is organized and managed. For example, if the customers choose the times of service and the quantities to be delivered, the depot can only choose the routes of the vehicles.

When the integration of decisions is possible, the IRP becomes an appropriate model. As the problem is very complex—certainly more than the VRP because the range of the decisions is broader—one may be tempted to attack the problem through a sequence of decisions. The times of service and the quantities to be delivered may be chosen on the basis of a replenishment logic, and the routes may be chosen afterwards on the basis on the transportation costs only, taking days of service and quantities as fixed. In this section, we explore the value of the integration with respect to a sequential series of decisions.

In Bertazzi and Speranza (2012), we have presented a motivating example that shows that, adding the time dimension to a routing problem, may reduce the cost of the routes. Moreover, the integrated solution does not affect the frequency of the service.

The following example shows that decisions over one dimension only (space or time) can be infinitely worse than the integrated ones.

Example 1

Consider the case with \(\frac{1}{\epsilon}\) customers, where \(\frac{1}{\epsilon}\) is an integer number. All customers are located very far from the depot and very close to each other. Let \(\epsilon\) be the distance between any two customers and \(\frac{1}{\epsilon}\) be the distance between the depot and each customer. Suppose that the planning horizon is \(\frac{1}{\epsilon}\) days, that the transportation capacity Q is 1, that the demand of each customer i is equal to \(\epsilon\) at day i and 0 otherwise and that the unit inventory costs are equal to 0. If decisions can be made only over space, each customer i is served by a direct shipment at day i, because only customer i has a positive demand at day i. If decisions can be made only over time, each customer i will be served by a direct shipment at one of the days between 1 and i, because routing is not allowed. Therefore, in both cases the total transportation cost is \(\frac{2}{\epsilon^2}. \) If decisions can be made over time and over space, a different solution can be obtained by sending one vehicle at day 1, delivering \(\epsilon\) to each customer. Since in this case, the total transportation cost is \(\frac{1}{\epsilon}+\left(\frac{1}{\epsilon}-1\right)\epsilon+\frac{1}{\epsilon},\) the ratio between the two costs is

$$ \frac{\frac{2}{\epsilon^2}}{\frac{1}{\epsilon}+\left(\frac{1}{\epsilon}-1\right)\epsilon+\frac{1}{\epsilon}}\rightarrow \infty\quad \epsilon\rightarrow 0. $$

Therefore, the integration of decisions over time and space allows us to reduce the cost and/or to provide a better service, measured by the delivery frequency. This is the reason why several companies, especially large companies, have implemented the so-called vendor-managed inventory (VMI) systems where agreements are stipulated with the customers to make the integration of replenishment and distribution policies viable. Incentives from the supplier to the customers are often introduced to facilitate the integration, such as discounts or the payment of the inventory costs of the customers.

Note that in the previous example the unit inventory costs are 0. Therefore, the integration allows a reduction of the transportation costs.

The single-vehicle IRP

In this section, we define the IRP where one route only per day is created. This problem arises when one vehicle only is available per day.

Notation

A time horizon of H time periods is given. Let T denote the set of time periods \(\{1,\ldots,H\}. \) We assume, for the sake of clarity of the presentation, that, as it is usually the case, the period is the day and the horizon a sequence of days. A complete undirected graph G = (NE) represents the transportation network, where node 0 is the depot (or a factory) and nodes in N′ = {1,…, n} represent the customers. The cost to travel between i and j is c ij . The cost matrix [c ij ] is symmetric, i.e. c ij  = c ji \( i\in N, \) j ∈ N. Moreover, the c ij satisfy the triangle inequality, that is c ij  + c jk  ≥ c ik , for any ijk ∈ N. This means that the cost c ij represents the cost of the least expensive path connecting i and j.

A maximum level U i is also associated with customer i  ∈ N′ and indicates the maximum inventory level at hand the customer can have. It is assumed that, in day t  ∈ Tr 0t units of product are made available at node 0 and r it units are consumed at customer i  ∈ N′. The quantity made available at node 0 at t may be delivered from an upstream location at t or, if 0 is a factory, is the quantity produced at the factory at t.

One vehicle is available every day with capacity Q. An initial inventory level I i0 is known for node i  ∈ N. Moreover, if inventory costs are relevant, a per day inventory holding cost h i may be associated with node i  ∈ N. The objective function, to be minimized, includes transportation costs for the routes traveled by the vehicle and, if relevant, inventory costs. The IRP is to determine, for each day t ∈ T, the quantity (possibly null) to deliver to each customer i ∈ N′ and the routes visiting the customers served at day t, at the minimum total cost. Decisions have to be made in such a way that no stock-out occurs at the depot and at the customers, the maximum inventory level at the customers is never exceeded and the vehicle capacity constraints are satisfied.

Decision variables

The binary variable z it is equal to 1 if node i  ∈ N is visited at day t  ∈ T, the variable x it represents the quantity delivered to customer i  ∈ N′ at day t  ∈ T, and the variable \( y_{{ij}}^{t} \) is 1 if the edge (ij)  ∈ E is traversed at day t  ∈ T and 0 otherwise. Since the distance matrix is symmetric, \( y_{{ij}}^{t} \) is defined only for j > i, for any i and t. From the viewpoint of the key decisions to take, the zx and y variables indicate, respectively, when to perform the deliveries to the customers, how much to deliver and how to build the routes. We will also make use of variables I it to indicate the inventory level at node i  ∈ N at day t  ∈ T.

The sequence of operations

During each day, a number of operations take place: the delivery, the consumption and the calculation of the inventory level. The order of these operations determines the writing of some parts of the mathematical programming formulation. We assume, as in the lot sizing literature, the sequence ‘delivery-consumption-calculation of inventory level’. In other words, the first operation that takes place in a day is the delivery, then the consumption and, finally, the inventory level is re-calculated as the inventory level at the end of the previous day plus the delivery of the day minus the consumption of the day.

Replenishment policy

We assume that the only constraints on the replenishment policy are (a) No stock-out can occur at the depot, that is the quantity delivered at day t must be not greater than the quantity available at the beginning of day t plus the number of units made available at time t; (b) no stock-out can occur at any customer, that is the quantity available at the beginning of day t plus the quantity delivered at time t must not be lower than the number of units consumed at t; (c) for each customer i, the inventory calculated at day t cannot exceed the maximum inventory level U i ; (d) the transportation capacity Q is satisfied for each day t and (e) a feasible route is built for each day t if at least one customer is served at time t. We call this policy the maximum level (ML) policy.

The mathematical programming formulation

The following mixed integer linear programming model can be formulated.

$$ \min \sum_{t\in {T}}\sum_{i\in {N}} h_iI_{it}+\sum_{t\in {T}}\sum_{i\in N}\sum_{j\in {N},j>i}c_{ij}y_{ij}^t $$
(1)
$$ I_{0t}=I_{0,t-1}+r_{0t}-\sum_{i\in {N'}} x_{it}\quad t\in {T} $$
(2)
$$ I_{it}=I_{i,t-1}+x_{it}-r_{it}\quad i\in N'\quad t\in {T} $$
(3)
$$ I_{it}\ge 0\quad i\in N\quad t\in {T} $$
(4)
$$ I_{it}\le U_i \quad i\in N'\quad t\in {T} $$
(5)
$$ \sum_{i\in N'}x_{it}\le Qz_{0t}\quad t\in {T} $$
(6)
$$ x_{it}\le U_iz_{it}\quad i\in N'\quad t\in {T} $$
(7)
$$ \sum_{j\in {N},j>i}y_{ij}^t+\sum_{j\in { N}, j<i}y_{ji}^t=2z_{it}\quad i\in {N}\quad t\in {T} $$
(8)
$$ \sum_{i\in S}\sum_{j\in S,j>i}y_{ij}^t \le \sum_{i\in S}z_{it}-z_{st} \quad S \subseteq N^{\prime}\quad s\in S\quad t\in T $$
(9)
$$ x_{it}\ge 0\quad i\in N'\quad t\in {T} $$
(10)
$$ y_{ij}^t\in\{0,1\}\quad i\in N^{\prime}\quad j\in N^{\prime},\quad j>i\quad t\in {T} $$
(11)
$$ y_{0j}^t\in\{0,1,2\}\quad j\in N^{\prime}\quad t\in {T} $$
(12)
$$ z_{it}\in\{0,1\}\quad i\in {N}\quad \quad t\in {T}. $$
(13)

The objective function (1) expresses the minimization of the sum of the inventory cost at the depot, at the customers and the routing cost. The inventory cost is computed on the basis of the inventory levels at the end of each day. Note that, being the graph G undirected, for the calculation of the routing cost, it is sufficient to consider the part of the cost matrix above the diagonal, that is the c ij where j > i.

Constraints (2) and (3) define the inventory level at the depot and at the customers. Constraints (4) guarantee that no stock–out occurs at the depot and at the customers. Constraints (5) impose that the inventory level of any customer never exceeds the maximum level.

Constraints (6) guarantee that the quantity sent at day t is not greater than the vehicle capacity. Moreover, they impose that if at least one customer is served at day t (that is x it  > 0), then the depot is visited at day t (that is z 0t  = 1). Constraints (7) guarantee that if customer i is served at day t (that is x it  > 0), then customer i is visited at day t (that is z it  = 1).

Constraints (8) and (9) are the routing constraints. They guarantee that a feasible route is determined to visit the customers served at day t. Constraints (8) impose that two edges incident to i are traversed at time t if customer i is visited at time t. Constraints (9) are the subtour elimination constraints and impose that, for each customer s visited at time t (z st  = 1), no route that visits s at time t can be a cycle that does not visit the depot. These constraints are extensions of the classical subtour elimination constraints needed in the formulation of the TSP. The difference with respect to the TSP constraints is due to the fact that here only some of the customers are visited at any time \(t\in T. \) The right hand side is the number of visited customers in S minus 1 if customer s, with \(s\in S, \) is visited at time t. If customer s is not visited at time t, then the constraint is ineffective.

Finally, constraints (10, 11, 12, 13) define the decision variables of the problem. Note that in (12), the variables y t0j can take value 2, contrary to all edge variables not incident to the depot. This is due to the fact that there may be routes visiting one customer only and thus traversing an edge twice. The fact that no other edge may be visited more than once in an optimal solution is due to the assumption that the cost matrix satisfies the triangle inequality.

Computational complexity

The single-vehicle IRP is NP-hard, since it reduces to the TSP when the time horizon is composed of one day, the inventory costs are zero, all the customers need to be served and the transportation capacity is infinite.

Valid inequalities

The classical inequalities known in the literature for the TSP and for the VRP problems are not valid for the IRP, mainly because it is not known which customers are visited at any day. The following inequalities were proved to be valid in Archetti et al. (2007):

  1. 1.

    Service inequalities: If customer i is not served at day \(t, t-1, \ldots, t-k\) (that is \(z_{it}=0, z_{i,t-1}=0, \ldots, z_{i,t-k}=0\)), then at time t − k − 1 there must be sufficient inventory (that is I i,t-k−1 ≥ ∑ k j=0 r i,t-j ) to avoid stock–out in the subsequent period without deliveries:

    $$ I_{i,t-k-1}\ge \left(\sum_{j=0}^kr_{i,t-j}\right)\left(1-\sum_{j=0}^kz_{i,t-j}\right)\quad i\in N^{\prime}\quad t\in {T}\quad k=0,1,\ldots,t-1. $$
    (14)
  2. 2.

    Visit inequalities: The depot has to be visited at day t (z 0t  = 1) if at least one customer is served at t (z it  = 1 for some i):

    $$ z_{it}\le z_{0t}\quad i\in N^{\prime}\quad t\in {T}. $$
    (15)
  3. 3.

    Logical inequalities:

    $$ y_{0j}^t\le 2z_{jt}\quad j\in N^{\prime}\quad t\in {T} $$
    (16)
    $$ y_{ij}^t\le z_{it}\quad i\in N^{\prime}\quad j\in N^{\prime},\; j>i\quad t\in {T}. $$
    (17)

Inequalities (16) say that if an edge from the depot to j is traversed at time t ( \(y_{{0j}}^{t}\)  > 0, that is equal to 1 or 2), then customer j is visited at time t (z jt  > 0). Inequalities (17) have a similar interpretation for edges not incident to the depot.

Properties of the single-vehicle IRP

The inventory level at the depot at day t can be written as

$$ I_{0t}=I_{0,t-1}+r_{0t}-\sum_{i\in N'}x_{it}=I_{00}+\sum_{\tau=1}^t r_{0\tau}-\sum_{\tau=1}^{t}\sum_{i\in N^{\prime}} x_{i\tau}, $$

where I 00 is given, whereas the inventory level at customer \(i\in N^{\prime}\) at day t can be written as

$$ I_{it}=I_{i,t-1}+x_{it}-r_{it}=I_{i0}+\sum_{\tau=1}^{t}x_{i\tau}-\sum_{\tau=1}^{t} r_{i\tau}, $$

where I i0 is given.

We can see that the total inventory at day t, that is the inventory at the depot plus the inventory at the customers, does not depend on the x variables. Indeed, the total inventory at day t is

$$ \left(I_{00}+\sum_{\tau=1}^t r_{0\tau}-\sum_{\tau=1}^{t}\sum_{i\in N'} x_{i\tau}\right)+\sum_{i\in N'} \left(I_{i0}+\sum_{\tau=1}^{t}x_{i\tau}-\sum_{\tau=1}^{t} r_{i\tau}\right)= \sum_{i\in N} I_{i0} - \sum_{\tau=1}^{t} \sum_{i\in N'} r_{i\tau}+\sum_{\tau=1}^t r_{0\tau}. $$
(18)

Thus, we have shown the following property holds for the single-vehicle IRP.

Property 1

In the single-vehicle IRP, the total inventory in the system at day t does not depend on the decision variables of the problem.

A stronger property holds if \( \sum_{i\in N^{\prime}} r_{it}= r_{0t}, \) t  ∈ T, that is if in each day t, the quantity made available at the depot is equal to the total consumption of the customers. One can see from (18) that, in this case, the total inventory at day t is simply ∑ i ∈ N I i0. Thus, the following property holds.

Property 2

In the single-vehicle IRP, if ∑ i ∈ N' r it  = r 0t , t  ∈ T, then the total (at depot and customers) daily inventory is constant over time and equal to the total initial inventory ∑ i ∈ N I i0.

Therefore, we can state the following remark.

Remark 1

In the single-vehicle IRP, if the unit inventory costs h i i ∈ N, are all identical, the inventory cost in the system does not depend on the decision variables of the problem.

Therefore, in this case, minimizing the sum of the inventory and routing costs is equivalent to minimizing the routing cost only.

Other policies

A classical replenishment policy in inventory theory [see for instance Nahmias (2008)] is the order-up to level (OU) policy where an amount that brings the inventory level up to the maximum level is ordered when the level drops below the reorder point. This policy, introduced in Bertazzi et al. (2002) for an IRP, is more restrictive than the ML policy and is imposed by adding to model (113) the following constraints:

$$ I_{it}\ge U_iz_{it}\quad i\in N^{\prime}\quad t\in T. $$
(19)

If customer i is visited at time t (z it  = 1) then the inventory level at time t must not be lower than U i , whereas if the customer is not visited (z it  = 0) the constraint is ineffective. Each constraint (19), together with (5), guarantees that the inventory level is U i at each day t where a delivery to customer i takes place.

Under the OU policy, the cost of the solution certainly increases with respect to the cost of the ML policy. The following example shows that, in the worst-case, the optimal OU policy can be infinitely worse than the optimal solution obtained with the ML policy.

Example 2

Consider the following instance: time horizon H; number of customers n = H; for each customer i: consumed quantity r it  = r\(t\in T, \) starting level of the inventory I i0 = 0, maximum level of the inventory U i  = rH and inventory cost \(h_i=\frac{1}{\epsilon}; \) at the depot: inventory cost h 0 = 0, starting level of the inventory I 00 = nrH, produced quantity r 0t  = 0, \(t\in T; \) transportation cost \(c_{ij}=\epsilon, \) \(i,j\in N^{\prime}, \) transportation capacity Q = rH.

Consider the OU policy. Since I i0 = 0, then the first delivery to each customer i has to be performed at day 1. The delivery quantity at day 1 is U i  = rH. Since no further shipments are needed during the time horizon H, the corresponding inventory level at each customer i is the following: \(I_{i1}=r(H-1), I_{i2}=r(H-2),\ldots, I_{iH+1}=0. \) Therefore, the total inventory of each customer i is \(\frac{H(H-1)r}{2}. \) The inventory level at the depot is equal to 0 at each day \(t\in T. \) A full load vehicle is sent separately to each customer i at day 1. Therefore, the total transportation cost is \(\sum_{i\in M}2c_{0i}, \) that is \(2n\epsilon. \) Thus, the optimal cost of the OU policy is:

$$ z^*_{OU}=n\frac{1}{\epsilon}\frac{H(H-1)r}{2}+2n\epsilon. $$

The optimal cost of the ML policy is not greater than the cost of the following feasible solution: x it  = r, for \(i\in N'\) and \(t\in T, \) with one vehicle that visits all the customers at each day \(t\in T. \) In this solution, the inventory level at the depot is always non–negative, while the inventory level at each customer i is equal to 0 at each day \(t\in T. \) The total transportation cost is \((n+1)\epsilon H. \) Thus,

$$ z^*\le (n+1)\epsilon H. $$

Therefore, on this instance:

$$ \frac{z^*_{OU}}{z^*}\ge \frac{n\frac{1}{\epsilon}\frac{H(H-1)r}{2}+2n\epsilon} {(n+1)\epsilon H}\rightarrow\infty\quad {\rm for }\, \epsilon\rightarrow 0. $$

Solution algorithms

The first exact algorithm for the IRP problem is a branch-and-cut proposed in Archetti et al. (2007) and was tested on 160 randomly generated problem instances, having time horizon H = 3, 6 and inventory cost high and low. Instances with H = 3 and up to 50 customers and with H = 6 and up to 30 customers were solved to optimality within 2 h for both the ML and the OU policies. A new formulation was proposed in Solyalı and Süral (2011) for the OU policy. Instances with H = 3 and 60 customers, with H = 6 and 35 customers, with H = 9 and 25 customers and with H = 12 and 15 customers were solved to optimality within 4 h. A heuristic was proposed in Archetti et al. (2012) with errors, with respect to the optimal solutions, below 1 %.

The multi-vehicle IRP

The single-vehicle IRP can be extended in several ways. In this section, we present the most natural extension that considers a fleet of vehicles. Other possible variants include, for example, time windows, multiple depots, constraints on route duration. Production decisions may also be included in the model.

In this section, we propose a mixed integer linear programming model for this problem, referred to as multi-vehicle IRP, which is a generalization of the model (113).

We extend to the multi-vehicle case the notation used for the single-vehicle IRP. Let K be the set of vehicles, each having capacity Q. We denote by \(z_{{it}}^{k}\) a binary variable equal to 1 if node \(i\in N\) is visited at time \(t\in T\) by vehicle \(k\in K, z_{{it}}^{k} \) the quantity delivered to customer \(i\in N'\) at time \(t\in T\) by vehicle \(k\in K\) and \(y_{{ij}}^{{kt}}\) the number of times the edge (ij) is traversed by vehicle \(k\in K\) at time \(t\in T. \) The model can be formulated as follows:

$$ \min \sum_{t\in {T}}\sum_{i\in {N}} h_iI_{it}+\sum_{k\in K}\sum_{t\in {T}}\sum_{i\in N}\sum_{j\in {N},j>i}c_{ij}y_{ij}^{kt} $$
(20)
$$ I_{0t}=I_{0,t-1}+r_{0t}-\sum_{k\in K}\sum_{i\in {N^{\prime}}} x^k_{it}\quad t\in {T} $$
(21)
$$ I_{it}=I_{i,t-1}+\sum_{k\in K}x^k_{it}-r_{it}\quad i\in N'\quad t\in {T} $$
(22)
$$ I_{it}\ge 0\quad i\in N\quad t\in {T} $$
(23)
$$ I_{it}\le U_i \quad i\in N^{\prime}\quad t\in {T} $$
(24)
$$ \sum_{i\in N^{\prime}}x^k_{it}\le Qz^k_{0t}\quad k\in K\quad t\in {T} $$
(25)
$$ x^k_{it}\le U_iz^k_{it}\quad i\in {N^{\prime}}\quad k\in K\quad t\in {T} $$
(26)
$$ \sum_{k \in K} z_{it}^k \le 1 \quad i\in {N^{\prime}} \quad t\in T $$
(27)
$$ \sum_{j\in {N,j>i}}y^{kt}_{ij}+\sum_{j\in { N},j<i}y^{kt}_{ji}=2z^k_{it}\quad i\in {N^{\prime}}\quad k\in K\quad t\in {T} $$
(28)
$$ \sum_{i\in S}\sum_{j\in S,j>i}y^{kt}_{ij} \le \sum_{i\in S}z^k_{it}-z^k_{st} \quad S \subseteq N^{\prime}\quad s\in S\quad k\in K\quad t\in T $$
(29)
$$ x^k_{it}\ge 0\quad i\in N^{\prime}\quad k\in K\quad t\in {T} $$
(30)
$$ y^{kt}_{ij}\in\{0,1\}\quad i\in N^{\prime}\quad j\in N^{\prime},\quad j>i\quad k\in K\quad t\in {T} $$
(31)
$$ y^{kt}_{0j}\in\{0,1,2\}\quad j\in N^{\prime}\quad k\in K\quad t\in {T} $$
(32)
$$ z^k_{it}\in\{0,1\}\quad i\in {N}\quad k\in K\quad t\in {T}. $$
(33)

We briefly comment the formulation as it is a straightforward extension of the formulation presented for the single-vehicle case. The objective function (20) expresses the minimization of the sum of the inventory cost at the depot, the inventory cost at the customers and the routing cost. Constraints (21) and (22) define the inventory level at the depot and at the customers. Constraints (23) guarantee that no stock–out occurs at the depot and at the customers and constraints (24) guarantee that the quantity sent to each customer at day t is such that the maximum level is not exceeded. Constraints (25) impose that the quantity sent at day t is not greater than the vehicle capacity. Moreover, they guarantee that if at least one customer is visited at day t, the depot is visited at day t. Constraints (26) guarantee that if any quantity is sent to the customer i at day t, the customer i is visited at day t. The fact that a customer can be visited by one vehicle at most at each t is imposed by (27). If these constraints are removed we say that split deliveries are allowed, that is a customer may be visited by one or more vehicles in the same day. Constraints (28) and (29) are the routing constraints. Finally, constraints (30, 31, 32, 33) define the decision variables of the problem.

Computational complexity and inequalities

The multi-vehicle IRP is obviously NP-hard, being a generalization of the single-vehicle IRP.

The service inequalities, the visit inequalities and the logical inequalities can all be generalized to the Multi-Vehicle IRP, by replacing each zx and y with the summation over all vehicles of the corresponding variable indexed on the vehicle.

Properties of the multi-vehicle IRP

The properties presented for the single-vehicle IRP can be shown to hold also for the Multi-Vehicle IRP. To prove the properties, the same lines of reasoning and calculations seen for the single-vehicle IRP can be followed again replacing each zx and y variable with the summation over all vehicles.

Property 3

In the multi-vehicle IRP, the total inventory in the system at day t does not depend on the decision variables of the problem.

Property 4

In the multi-vehicle IRP, if \( \sum_{i\in N^{\prime}} r_{it}= r_{0t}, \) t  ∈ T, then the total (at depot and customers) daily inventory is constant over time and equal to the total initial inventory ∑ i ∈ N I i0.

Remark 2

In the multi-vehicle IRP, if the unit inventory costs h i i ∈ N, are all identical, the inventory cost in the system does not depend on the decision variables of the problem.

Other policies

Formulation (2033) can be adapted to the OU policy by adding constraints

$$ I_{it} \ge U_i \sum_{k \in K}z_{it}^k\quad i\in N^{\prime}\quad t\in T. $$
(34)

If i is visited by a vehicle at day t, then the delivered quantity must be such that the inventory level I it is not lower than the maximum level U i . These constraints, combined with (24), determine the OU policy.

Solution algorithms

No specialized exact solution algorithm has been proposed and tested for the multi-vehicle IRP. We are aware that groups of researchers are working on this challenging problem. An exact and a heuristic algorithm for a generalization of the Multi-Vehicle IRP that includes production decisions can be found in Adulyasak et al. (2012).

The literature

In this section, we survey the papers focused on the IRP not covered by the tutorial Bertazzi and Speranza (2012). In this former tutorial pioneering papers, surveys and the literature on direct shipping are covered.

We classify the papers covered in the following into two main classes, namely deterministic problems and stochastic and robust problems.

Deterministic problems

We distinguish the following subclasses: problems where the transportation cost only is minimized, problems where the sum of inventory and transportation cost is minimized and, finally, problems where the sum of production, inventory and transportation costs is minimized.

Minimization of the transportation costs

Christiansen and Nygreen (1998a, b) propose an exact method based on Dantzig-Wolfe decomposition, column generation and a branch-and-bound algorithm. In Christiansen (1999), a similar approach is presented for the case with time windows. Campbell and Savelsbergh (2004) develop a two-phase approach: First, a delivery schedule is created by solving an integer programming model; then, the construction of a set of delivery routes is carried out using routing and scheduling heuristics. Gaur and Fisher (2004) propose a heuristic approach to solve a real case. Savelsbergh and Song (2008) focus on the case with continuous moves. A solution approach, based on integer programming, local search and a randomized greedy heuristic, is proposed. Grønhaug et al. (2010) study a maritime IRP and solve it by a branch-and-price algorithm. Toriello et al. (2010) propose a methodology based on valuing inventory with a concave piecewise linear function and then combining solutions to single-period subproblems using dynamic programming techniques. Benoist et al. (2011) study the case with pickups, time windows, drivers’ safety regulations, orders and several other real-life constraints, and propose a randomized local search heuristic. Christiansen et al. (2011) consider a maritime IRP faced by a major cement producer. A construction heuristic, embedded in a genetic algorithmic framework, is implemented. Engineer et al. (2012) present a maritime IRP with varying storage capacities and production/consumption rates at facilities, and a branch-price-and-cut algorithm. Michel and Vanderbeck (2012) study an IRP at the tactical planning stage where the objective is to minimize a surrogate measure of routing cost, while achieving some form of regional clustering. A truncated branch-and-price-and-cut algorithm, combined with rounding and local search heuristics, is developed. Özener et al. (2013) propose cost allocation methods to determine the cost-to-serve for each customer.

Minimization of the sum of transportation and inventory costs

A pioneering paper is due to Burns et al. (1985) where two distribution strategies (direct shipping and routing) are compared using an analytical method based on an approximation of the routing cost. Bertazzi et al. (1997) study the case where a given set of possible shipping frequencies is available. Several heuristic algorithms, based upon the idea of first solving single link problems and then locally improving the solution, are proposed. Herer and Levy (1997) propose a rolling horizon approach that takes into consideration holding, transportation, fixed ordering and stockout costs. Viswanathan and Mathur (1997) propose a heuristic that develops a stationary nested joint replenishment policy. Bertazzi et al. (2002) introduce the deterministic order-up-to level policy (OU): each customer defines a maximum inventory level and, whenever visited, the delivered quantity is such that the maximum level is reached. A heuristic algorithm is proposed. Sindhuchao et al. (2005) study the case where each vehicle always collects the same set of items. A set partitioning model is formulated and solved using a branch-and-price algorithm, greedy constructive heuristics and a very large-scale neighborhood (VLSN) search algorithm. Abdelmaguid and Dessouky (2006) propose a genetic algorithm. Aghezzaf et al. (2006) formulate a model for the long-term IRP when demand rates are stable and economic order quantity-like policies are used to manage the inventory of the customers. A column generation based heuristic is proposed. Archetti et al. (2007) present the first branch-and-cut algorithm to solve the case with OU policy and the ML policy, obtained by relaxing the OU policy. Yu et al. (2008) studies the case with split deliveries. A heuristic, based on an approximate model of the problem and Lagrangian relaxation, is developed. Abdelmaguid et al. (2009) propose constructive and improvement heuristics. Solyalı et al. (2010) formulate a strong mixed integer programming formulation for the problem with OU policy. Moin et al. (2011) study the case with multiple suppliers. A mathematical formulation of the problem is given and the problem is solved by means of a hybrid genetic algorithm. Solyalı and Süral (2011) propose a branch-and-cut algorithm and a heuristic based on an a priori tour, using a strong formulation of the IRP with OU policy. A matheuristic is introduced in Archetti et al. (2012) that combines a tabu search scheme with the optimal solution of ad hoc designed mixed-integer programming models. Coelho et al. (2012a) introduce the concept of consistency in IRP solutions. The multi-vehicle IRP, with and without consistency requirements, is formulated as a mixed integer linear program. A matheuristic, that applies an adaptive large neighborhood search scheme where some subproblems are solved exactly, is implemented. The case with transshipment is analyzed in Coelho et al. (2012b) where an adaptive large neighborhood search heuristic is proposed. Solyalı and Süral (2012) present a combined transportation and shortest path based integer programming reformulation and show that it is stronger than existing ones.

The following papers are devoted to the case with constant deterministic, customer specific, demand over an infinite time horizon. Anily and Federgruen (1990) and (1991) study the class of policies where a collection of regions (sets of customers) is specified. Each time one of the customers in a given region receives a delivery, this delivery is made by a vehicle that visits all other customers in the region as well. A class of heuristics is proposed and it is shown that, under mild probabilistic assumptions, the generated solutions are asymptotically optimal. Anily and Federgruen (1993) extend these methods to obtain low complexity lower bounds and heuristics for systems without central stock. Anily (1994) show that the optimal solution can be bounded from below by a special partitioning problem whose solution can be given in closed form. A simple heuristic is proposed and shown to asymptotically converge to the lower bound almost surely under mild probabilistic conditions. Bramel and Simchi-Levi (1995) propose a framework for modeling routing and IRP based on formulating them as a Capacitated Concentrator Location Problem. Chan and Simchi-Levi (1998) characterize the asymptotic effectiveness of the class of fixed partition policies and those employing zero inventory ordering and construct an effective algorithm resulting in a fixed partition policy asymptotically optimal within its class. Chan and Simchi-Levi (1998) propose an effective strategy which minimizes the asymptotic long run average cost, whereas Chan et al. (2002) study the cost effectiveness of restricting the inventory policies to the class of zero inventory ordering policies. Anily and Bramel (2004) derive a deterministic lower bound on the cost of the optimal fixed partition policy. A probabilistic analysis of the performance of this bound demonstrates that it is asymptotically 98.5 % effective. Zhao et al. (2007) design a tabu search algorithm for a Fixed Partition policy based on the power-of-two principle. Raa and Aghezzaf (2008) and (2009) adopt the cyclic planning approach and propose heuristic algorithms. Bertazzi et al. (2009) analyze the asymptotic worst-case performance of a fixed partition periodic policy and a more relaxed partition based periodic policy and design practical heuristics, inspired by the analyzed policies.

Minimization of the sum of production, transportation and inventory costs

An interesting extension of the IRP that includes production decisions is studied in the following papers. Blumenfeld et al. (1985) determine optimal shipping policies (direct shipping, shipping via a consolidation terminal and a combination of terminal and direct shipping) by analyzing trade-offs between transportation, inventory and production set-up costs. Chandra and Fisher (1994) study the value of coordinating production and distribution planning. Herer and Roundy (1997) consider the case with arbitrary non-negative monotone joint order costs. Polynomial time heuristics, whose policy costs are provably close to the cost of an optimal policy, are developed and a nonpolynomial dynamic program, that computes optimal power-of-two policies, is proposed. Fumero and Vercellis (1999) solve the integrated production distribution model via Lagrangean relaxation. In Bertazzi et al. (2005), two different decompositions of the problem are proposed together with optimal or heuristic procedures for the solution of the subproblems. Lei et al. (2006) present a two-phase solution approach. In the first phase, routing is restricted to direct shipping, while the second phase solves an associated consolidation problem to handle the potential inefficiency of direct shipment. Bard and Nananukul (2009a) propose a two-step algorithm to estimate daily delivery quantities and then solve a VRP for each day of the planning horizon. Bard and Nananukul (2009b) present an algorithm centered on reactive tabu search, and Bard and Nananukul (2010) a hybrid methodology that combines exact and heuristic procedures within a branch-and-price framework. Archetti et al. (2011) study the OU and the ML policy. The worst-case performance of the OU policy with respect to the more flexible ML policy is shown. Then, an exact algorithm for the solution of the problem with one vehicle is implemented, whereas a hybrid heuristic is designed for the multi-vehicle case.

Stochastic and robust models

The following papers are devoted to the stochastic version of the IRP. Trudeau and Dror (1992) present an analysis of this problem incorporating the possibility of route failures when the actual demand on a route exceeds the capacity of a vehicle. Minkoff (1993) formulate the problem as a Markov decision process and propose a heuristic approach. Bard et al. (1998) present a decomposition scheme and three heuristics. Kleywegt et al. (2002) and Kleywegt et al. (2004) formulate the problem as a Markov decision process and propose heuristic algorithms. Jaillet et al. (2002) present incremental cost approximations to be used in a rolling horizon framework. Adelman (2004) formulate the problem as a Markov decision process and then replace the optimal value function with the sum of single-customer inventory value functions. An efficient algorithm, to both generate and eliminate routes during the solution of the linear programs and control policy, is proposed. Hvattum and Løkketangen (2009a) approximate the Markov decision process by solving a finite scenario tree based problem. Hvattum and Løkketangen (2009b) design heuristics based on finite scenario trees. Huang and Lin (2010) apply ant colony optimization. Bertazzi et al. (2013) propose a hybrid rollout algorithm to solve the problem when stock-out is allowed. Shukla et al. (2013) propose a methodology based on evolutionary algorithms.

Solyalı and Süral (2012) study the first robust IRP, where the probability distribution of the uncertain demand at each customer is not fully specified. Two robust mixed integer programming formulations are proposed and solved by a branch-and-cut algorithm.