1 Introduction
Nowadays, several industries have an increasing concern about the implementation of green actions in order to collaborate with the sustainability of the environment. For this reason, LinChoHoChuLam14 argued that green logistics is a big challenge that all companies must consider in their agendas. Reverse logistics Dekker . (2013) is an important area of study that deals with sustainable supply chains, as it includes the application of methods which take into consideration, among other characteristics, the reuse of recyclable material.
The inventory routing problem (IRP) is a variant of the vehicle routing problem (VRP) which integrates inventory and vehicle routing decisions in a sole formulation. It is important to mention that the IRP models numerous distribution and collection situations that occur in practice. Good surveys were presented in AndHenHofArilChr10 and CoeCorLap14 with the aim of having a good comprehension of the IRP problem. On the one hand, AndHenHofArilChr10 dealt with the IRP’s applications. On the other hand, CoeCorLap14 studied IRP methodological aspects. CoeLap13 solved the following three variants of the IRP by applying a branchandcut algorithm: the multivehicle IRP considering both homogeneous and heterogeneous fleet, the IRP with transshipment options, and the IRP with added consistency features. In a subsequent paper, CoeLap14 built an exact mathematical formulation by implementing valid inequalities for some types of IRPs. MjiJarMacHanMla14 considered a multiproduct IRP and tackled it using a variable neighborhood search. SoyBloHaiVor15 formulated a multiperiod IRP for perishable products considering that demand is uncertain and the work of SoyBloHaiVor18 introduced a green IRP for perishable items. CorLagMusVoc15 considered the multiproduct IRP and developed a threestage heuristic algorithm taking into account a decomposition of the seller’s decision process. Raa15 proposed a family of cyclic IRP. The aforementioned papers are related to forward logistics. However, some authors also considered IRPs in reverse logistics. In this direction, AksKaySalAkc12 formulated an IRP for a reverse logistics situation where a biodiesel company requires oil to be used as raw material, which can be obtained as both virgin oil and waste vegetable oil, in its production process. Thus, the collection of waste vegetable oil is a significant reverse operation to be performed with the aims of having economic gains and improving environmental sustainability.
In fact, AksKaySalAkc12 proposed a selective and periodic inventory routing problem (SPIRP) for a waste vegetable oil collection, which is the problem we consider in our work. In a subsequent paper, AksKaySibOzg14 presented an adaptive large neighborhood search algorithm (ALNS) to solve the SPIRP. Recently, CarGonTreGar19 developed a reduce and optimize approach (ROA) heuristic for this SPIRP. The ROA defines a reduced feasible region based on the original problem to be optimized. The ROA heuristic was able to outpeform the ALNS of AksKaySibOzg14 for most of the benchmark instances of the SPIRP, at the expense of computational time.
The main contribution of this paper is the proposal of a fast and effective MIPbased heuristic for the SPIRP. The proposed approach can provide nearoptimal solutions whose optimality gaps are close to those obtained with a stateoftheart approach, which consumes high computational time. As a matter of fact, computational experiments have proven the effectiveness of our approach, as new best results were encountered for several of the considered instances. To the best of our knowledge, this was a main open research area for the considered SPIRP.
The remainder of this paper is structured as follows. Section 2 formally defines and describes a mathematical formulation of the SPIRP. Section 3 presents a new MIPbased heuristic for the SPIRP which basically solves a relaxation without routing variables and constraints, builds routes based on the relaxation’s solution and then improves the routes using an approach for the capacitated vehicle routing problem (CVRP). Section 4 presents the experiments carried out to evaluate the performance of the proposed MIPbased heuristic. Finally, section 5 gives some concluding remarks and future research avenues.
2 Problem definition and mixed integer programming formulation
The selective and periodic inventory routing problem (SPIRP) can be formally defined as follows. There exist a set of waste oil collection points (collection nodes) and one biodiesel production facility (depot node). The collection network can be seen as a complete directed graph in which there is an arc between every pair of nodes with an associated distance . A fixed cyclic planning horizon is defined with a predetermined set of periods in each cycle. At each collection node , a waste oil accumulation rate (in liters) at period occurs. If a collection vehicle visits a collection node at period , then the whole waste oil stored up in period must be collected. This means that partial collection is not permitted. The biodiesel company requires liters of oil for each period of the planning horizon and needs to determine, for each period, the amount to of virgin oil to be purchased as well as the set of collection routes taking into consideration its oil requirements and the constraint that only one vehicle must be allocated to each route. Additional characteristics of the SPIRP are as follows. There is a fixed capacity for each collection vehicle. The oil necessities of the biodiesel company can be covered from collected waste oil, purchased virgin oil, inventory on hand, or with a combination of these three sources. The costs involved in the SPIRP are: traveling cost per unit distance traveled, operating cost per vehicle per period, holding cost per liter of waste oil per period, and purchase cost per liter of virgin vegetable oil. The main goal is to decide how much virgin vegetable oil to buy and how much waste vegetable oil to gather from a set of collection points. Moreover, it is necessary to take decisions related to which collection nodes to include in the collection program, how many vehicles are needed and their specific routes to define a periodic collection schedule that must be repeated in each cycle in such a manner that the total cost is minimized subject to the production requirements and vehicle capacity constraints.
2.1 Mixed integer programming formulation
In this section, we describe the formulation proposed in AksKaySalAkc12. Let the index sets be:

;

;

.
Consider the parameters:

: traveling cost per unit distance;

: distance from node to node ;

: amount of waste oil accumulated at node in period ;

: oil requirement in period ;

: per liter inventory holding cost at the depot;

: per vehicle fixed operating cost;

: per liter purchase cost of virgin vegetable oil;

: vehicle capacity in liters.
Define the decision variables:

: binary variable which indicates whether node is visited in period ;

: binary variable which indicates whether node is visited at all during the planning cycle;

the amount of waste oil traversing arc in period ;

: the amount of waste oil collected from node in period ;

: the amount of wast oil held as stock in node at the end of period ;

: amount of waste oil in storage at the beginning of the planning cycle;

: amount of virgin oil purchased in period .
The problem can thus be formulated as the following mixed integer linear program:
(1)  
(2)  
(3)  
(4)  
(5)  
(6)  
(7)  
(8)  
(9)  
(10)  
(11)  
(12)  
(13)  
(14)  
(15)  
(16)  
(17)  
(18)  
(19)  
(20)  
(21)  
(22) 
The objective function (1) minimizes the total traveling, vehicle usage, inventory and purchase costs. Constraints (2) are flow balance constraints for each node and guarantee that liters of oil are collected in the node whenever this amount is nonzero. Constraints (3)(5) define upper and lower bounds on the flow variables. Constraints (6) and (7) ensure each collection node is visited exactly once whenever it is chosen to be visited. Constraints (8) guarantee that all vehicles leaving the depot in a given period return. Constraints (9) imply that oil can only be collected from node if it is selected to be visited. Constraints (10) enforce that no inventory remains in collection node at the end of a given period if it is visited, i.e., all the oil available in storage must be collected. Constraints (11) are inventory balance constraints for each collection node . Constraints (12) ensure that the initial and end inventories are the same. Constraints (13) are inventory balance constraints for the depot. Constraints (14) and (15) set the variables to zero if node is never visited and to one otherwise. Constraints (16)(22) define integrality and nonnegativity requirements on the variables.
3 MIPbased heuristic
In this section, we describe a MIPbased heuristic for the selective and periodic inventory routing problem. The approach consists of three main steps, which are: (a) solving a relaxation without routing of the problem, (b) constructing routes based on the solution of the relaxation, and (c) improving the routes for each period using a MIPsearch. The approach follows a similar structure to the method proposed in MonGamGen19 for a related problem, but it differentiates greatly in the way the routes are built and in the improvement of these constructed routes. In what follows, Section 3.1 describes the relaxation without routing. Section 3.2 demonstrates how the routes are constructed based on the solution of the relaxation, using heuristics for the traveling salesman problem (TSP) Applegate . (2006). Section 3.3 explains the MIPsearch for routing improvements, which is based on an exact approach for the capacitated vehicle routing problem (CVRP) Laporte (2009).
3.1 Relaxation without routing
The relaxation without routing described in this section is very similar to the one proposed in AksKaySibOzg14, where the authors have shown that such relaxation could provide very strong bounds in short computational times. Basically, the routing related variables and constraints are removed from formulation IR and are replaced by new variables and constraints which guarantee a lower bound on the total routing cost. Define the additional decision variables

: number of vehicles needed to transport the collected oil in period ;

: slack capacity to fulfill vehicle with fractional usage in period .
The relaxation without routing can thus be formulated as
(23)  
(24)  
(25)  
(9 revisited)  
(10 revisited)  
(11 revisited)  
(12 revisited)  
(13 revisited)  
(14 revisited)  
(15 revisited)  
(17 revisited)  
(18 revisited)  
(26)  
(20 revisited)  
(21 revisited)  
(22 revisited)  
(27) 
The objective function (23) minimizes a lower bound on the routing cost plus the inventory and purchase costs. The lower bound can be interpreted as follows. The first term implies that the fraction of the vehicle used to collect waste oil from a given collection node must at least travel from the depot to that node and return back. The second term ensures that the unused capacity of the vehicle must at least travel to and return from the collection nodes which are the closest to and from the depot. Constraints (24) set the number of vehicles in each period to the sum of fractional vehicles plus the slack capacity. Constraints (25) ensure that the total amount collected in a node in a given period does not exceed the capacity of the vehicle. Constraints (26) and (27) ensure the integrality and nonnegativity requirements on the and variables.
Additionally, although not needed in the formulation, we observed that inequalities
(28) 
could help reducing the time to solve several relaxations to optimality using the MIP solver.
3.2 Routes construction
The proposed heuristic to construct routes attempts to build a solution with as few vehicles as possible, starting from a partial solution obtained from solving the relaxation without routing (IRR) described in section 3.1. The main idea is that the collection nodes to be visited are partitioned into subsets not exceeding the capacity of the vehicles, which are later routed using greedy heuristics for the traveling salesman problem (TSP) Applegate . (2006). The pseudocode of the approach is described in Algorithm 1 and takes as input a partial solution obtained from a feasible solution to the relaxation without routing.
Algorithm 1 builds routes for each time period independently in the foreach loop of lines 11. For each time period , the approach firstly initializes the set of subsets of collection nodes in line 1 and the collections nodes to be visited in line 1.
The while loop of lines 11 heuristically partitions the collection nodes to be visited in an attempt to minimize the number of subsets in the partition. While there are collection nodes which are not selected for a subset (line 1), a new subset is constructed with those maximizing the usage of the vehicle capacity by solving a knapsack problem. Consider to be a binary variable representing whether collection node is selected. This knapsack problem is formulated as
(29)  
(30)  
(31) 
The objective function (29) maximizes the volume of the selected collection nodes. Constraints (30) guarantee that the capacity of the vehicle is not exceeded while constraints (31) ensure the integrality of the variables. A subset is built by solving this knapsack problem in line 1 using dynamic programming by the auxiliary procedure DPKNAPSACK (). Subset is thus inserted into in line 1 and the collection nodes in are removed from in line 1.
Next, in case the partition contains more subsets (or parts) than a certain lower bound (line 1), the approach tries to further reduce the number of subsets by exactly solving a bin packing problem (lines 11). Considering binary variables to define whether bin is used and to indicate whether collection node is put into bin , this bin packing problem is formulated as
(32)  
(33)  
(34)  
(35)  
(36) 
The objective function (32) minimizes the number of used bins. Constraints (33) ensure the capacity of each bin is not exceeded. Constraints (34) are symmetry breaking constraints. Finally, constraints (35) and (36) enforce the integrality requirements on the variables.
In the following, routes are built for each subset individually by heuristically tackling the corresponding traveling salesman problem (lines 11). This is performed by using fast heuristics for the TSP, namely, nearest neighbor and farthest insertion. These two greedy heuristics are executed and the best obtained tour amongst the two of them is selected to compose the solution.
Finally, the complete solution is returned in line 1.
3.3 MIPsearch
The proposed MIPsearch is a postprocessing procedure which tries to improve the solution by refining the routes traveling to the collection nodes to be visited in a given period. This is achieved by solving the associated capacitated vehicle routing problems (CVRPs) for each period. In order to achieve this goal, a onecommodity flow mixed integer programming formulation Gavish Graves (1978) is considered for each of these CVRPs. Variables and , are the single period counterparts of variables and . Such CVRP is thus formulated as
(37)  
(38)  
(39)  
(40)  
(41)  
(42)  
(43)  
(44)  
(45)  
(46) 
The objective function (37) minimizes the total traveling and vehicle usage costs. Constraints (38) are balance constraints for node and guarantee liters of oil are collected in node . Constraints (39) and (40) link the and variables, and also define upper and lower bounds on the flow variables. Constraints (41) and (42) ensure each collection point is visited exactly once. Constraints (43) gurantee that all vehicles leaving the depot must return. Constraints (44) ensures the number of used vehicles is greater or equal than a lower bound , which is defined by the feasible solution obtained with Algorithm 1. Constraints (45) and (46) impose integrality and nonnegativity requirements on the variables, respectively.
3.4 The complete MIPbased heuristic
The pseudocode of the MIPbased heuristic is described in Algorithm 2. Firstly, the relaxation without routing is solved in line 2 using a MIP solver to obtain partial solutions, i.e., without determined routes. In this step, all the solutions encountered by the solver during the search process are stored, and an elite set of solutions containing those which are not more than worse than the best one are returned at the end of the execution. The idea behind selecting an elite set of solutions and not simply the best one is to permit variability in the complete constructed solutions. After that, routes are constructed for each of these elite partial solutions in lines 22. In the following, a set of elite complete solutions is determined with the best complete solutions (line 2), which are further improved by the MIPsearch in lines 22. The best encountered solution is returned in line 2.
4 Computational experiments
This section reports the computational experiments conducted to assess the performance of the proposed MIPbased heuristic. All computational experiments were carried out on a standard Dell Inspiron 15 laptop, running under Ubuntu GNU/Linux, with an Intel(R) Core(TM) i77500U CPU @ 2.70GHz processor and 8GB of RAM. The algorithms were coded in Julia v1.4.0, using JuMP v0.18.6. The formulations were solved using Gurobi 8.0.1 with the standard configurations, except the relative optimality tolerance gap which was set to . A time limit of 60 seconds was imposed for every execution of the MIP solver.
4.1 Benchmark instances
The considered benchmark instance set is composed of three benchmark sets used in the literature. In all the considered instances, the cyclic planning horizon consists of seven days.
The first benchmark set was introduced in AksKaySalAkc12, containing 36 small instances with 25 collection nodes. There are two types of vehicles, namely: Fiat Doblo Cargo Maxi (Dob) and Fiat Fiorino Cargo (Fio). Dob has a capacity () of 920 liters, operating cost () of 110 monetary units per day and per km traveling cost () of 0.22 monetary units. Fio has a capacity () of 550 liters, operating cost () of 90 monetary units per day and per km traveling cost () of 0.19 monetary units. The waste vegetable oil inventory cost () is 0.02 monetary units per liter per day. Virgin vegetable oil prices () lie in monetary units per liter. Daily accumulation rates are either low (30 liters per day) or high (60 liters per day). Three levels of oil requirement are established for each value of accumulation rate. For accumulation rate 30, waste requirements can be low (600 liters), medium (700 liters) or high (900 liters). For accumulation rate 60, waste requirements can be low (1200 liters), medium (1500 liters) or high (1800 liters).
The second benchmark set was proposed in AksKaySibOzg14, containing 54 small and medium instances based on a realworld case study with 20, 25, 30, 35, 40, 50, 60, 80, and 100 collection nodes. There is a single type of vehicle with capacity () of 550 liters. The operating cost of a vehicle () is 90 monetary units per day while the per km traveling cost () corresponds to 0.24 monetary units. The waste vegetable oil inventory cost () is 0.02 monetary units per liter per day, while the virgin oil purchasing price () lie in monetary units per liter. Three levels of oil requirement are established as low, medium, and high. The instances are identified as (nrp), where denotes the number of collection nodes, gives the per day oil requirement and represents the virgin oil purchasing price.
The third benchmark set was introduced in CarGonTreGar19, containing 24 large instances with 120, 160, 200, and 300 collection nodes. These instances were generated based on those proposed in Aksen . (2014).
4.2 Considered approaches and settings
The following approaches are considered in the comparisons:
For MH and MH, the subset of elite partial solutions obtained by solving IRR (Algorithm 2, line 2) is composed of those whose values lie within of the best encountered one. For MH, the subset of elite solutions in (Algorithm 2, line 2) is composed of simply the best solution, i.e. , as the goal was to have an approach which could deliver good quality results within low computational times.
The values presented for ALNS and ROA correspond to those reported in their corresponding works. ALNS was coded in Java, and the computational experiments were executed on a workstation running under a 64bit Windows 7 Professional Service Pack 1 operating system, with an Intel Xeon E52643 3.30 GHz QuadCore processor, 32 GB RAM. The running times of ALNS are reported in our tables. ROA was coded in C++ using Microsoft Visual Studio 2008, and the computational experiments were executed on an HP Elite 8300, running under a 64bit Windows 7 operating system, with an Intel Core i53470M CPU @ 3.30 GHz processor, 8 GB RAM, and CPLEX Interactive Optimizer 12.5.1.0 used to solve the formulations. The running time of each execution of ROA was 36 minutes (2160 seconds), and thus we do not report this information in our tables.
4.3 Results
Table 1 presents the results obtained with MH, MH and ROA for the instances from the first benchmark set. The first column identifies the instance. The next six columns report, for MH and MH, the best solution value, the running time and the optimality gap obtained with each of the approaches, calculated as , where is the encountered heuristic value and is the bound obtained by the relaxation without routing. The last two columns give the best solution value and the optimality gap obtained with ROA. We remark that AksKaySibOzg14 did not report results for ALNS on this instance set. The results show that MH could obtain a low average gap (3.3%) within a very short average computational time (19.7 seconds). MH could further improve the results obtained by MH, while keeping the average running time below 40.0 seconds. Note that although ROA obtains a lower average gap (1.6%), these results were obtained using a much larger computational time of 2160.0 seconds on average, which represents nearly 110 the average running time of MH. Furthermore, new best results were obtained for 16.7% of the instances.
Instances  MH  MH  ROA  

time  gap  time  gap  gap  
Fio30accLOW025  867.4  14.6  1.6  866.3  15.3  1.5  865.7  1.5 
Fio30accMED025  1099.6  17.2  1.5  1098.6  18.0  1.4  1094.6  1.1 
Fio30accHIGH025  1348.3  15.3  2.6  1345.0  22.3  2.4  1331.5  1.4 
Fio60accLOW025  1851.7  21.8  7.8  1847.6  33.8  7.6  1748.9  2.4 
Fio60accMED025  2273.8  16.1  6.1  2258.8  31.0  5.4  2233.8  4.4 
Fio60accHIGH025  2874.7  13.7  8.5  2869.2  17.2  8.3  2713.3  3.0 
Dob30accLOW025  701.1  15.3  1.1  699.2  16.1  0.8  701.5  1.2 
Dob30accMED025  856.7  13.9  2.1  855.1  14.8  1.9  847.4  1.1 
Dob30accHIGH025  1024.0  14.5  2.1  1022.5  15.7  1.9  1019.0  1.6 
Dob60accLOW025  1299.7  52.8  2.1  1297.9  53.1  1.9  1300.2  2.1 
Dob60accMED025  1636.8  15.5  2.3  1632.5  19.7  2.0  1647.1  2.9 
Dob60accHIGH025  2144.5  17.6  2.5  2140.0  21.5  2.3  2133.2  2.0 
Fio30accLOW050  907.4  31.9  1.2  907.0  32.2  1.1  902.4  0.6 
Fio30accMED050  1140.0  15.7  1.8  1135.1  16.8  1.3  1127.9  0.7 
Fio30accHIGH050  1539.3  14.8  1.7  1536.6  16.3  1.6  1549.2  2.4 
Fio60accLOW050  1996.3  68.5  12.6  1985.7  134.2  12.1  1782.6  2.1 
Fio60accMED050  2336.1  15.1  8.0  2328.1  146.4  7.7  2236.2  3.9 
Fio60accHIGH050  3253.9  13.4  2.6  3247.2  239.8  2.4  3261.8  2.8 
Dob30accLOW050  705.9  14.8  1.2  704.8  15.6  1.1  701.2  0.5 
Dob30accMED050  853.9  15.4  1.8  853.1  16.2  1.7  845.5  0.8 
Dob30accHIGH050  1220.3  14.0  1.8  1219.3  14.9  1.8  1218.0  1.6 
Dob60accLOW050  1320.3  37.8  1.3  1319.2  38.4  1.3  1369.5  4.9 
Dob60accMED050  1692.7  15.9  3.5  1685.7  31.6  3.1  1647.7  0.9 
Dob60accHIGH050  2817.7  12.8  5.9  2814.2  14.0  5.8  2657.0  0.2 
Fio30accLOW125  911.3  33.8  1.6  907.6  34.6  1.2  902.5  0.7 
Fio30accMED125  1136.6  14.5  1.5  1132.8  16.0  1.1  1125.8  0.5 
Fio30accHIGH125  2064.7  13.0  2.3  2054.9  15.2  1.8  2025.4  0.4 
Fio60accLOW125  1897.7  19.1  6.6  1892.7  24.8  6.4  1781.0  0.5 
Fio60accMED125  2390.5  16.1  8.4  2382.6  165.7  8.1  2242.5  2.4 
Fio60accHIGH125  4972.4  15.5  3.8  4967.6  16.8  3.7  4841.2  1.2 
Dob30accLOW125  707.0  15.9  1.4  706.3  16.8  1.3  703.4  0.9 
Dob30accMED125  853.7  15.3  1.8  852.8  16.0  1.7  845.6  0.9 
Dob30accHIGH125  1765.1  13.1  1.9  1764.4  13.9  1.9  1740.3  0.6 
Dob60accLOW125  1367.6  27.8  1.0  1364.9  28.7  0.8  1361.5  0.5 
Dob60accMED125  1680.8  14.3  2.7  1675.2  15.0  2.3  1654.4  1.1 
Dob60accHIGH125  4390.6  12.8  3.7  4383.5  14.0  3.5  4233.2  0.1 
Averages  19.7  3.3  38.1  3.1  1.6  
(%)  16.7  16.7 
Tables 2 and 3 show the results obtained with MH, MH, ALNS and ROA for the second benchmark set. The first column identifies the instance. The next nine columns report, for MH, MH and ALNS, the best solution value, the running time and the optimality gap obtained with each of the approaches. The last two columns give the best solution value and the optimality gap obtained with ROA. We remark that there are two lines with a problem in the values reported in Aksen . (2014) for ALNS, which are marked with an ’’, as their reported values are below the bound provided by the relaxation without routing. These tables show the effectiveness of our approach. Table 2 shows that, for the small instances, MH found an average gap of 3.0% within an average time of 16.9 seconds, and MH could further reduce this average gap to 2.7% within an average time of 25.9 seconds. Both results improve over that obtained by ALNS, and are very close to the one obtained by ROA which uses a much larger computational time of 2160 seconds. Besides, MH and MH improved the result of ALNS for, respectively, 53.3% and 66.7% of the instances. These improvements over the results of ROA were, respectively, 23.3% and 26.7%. Table 3 shows that the improvements achieved by MH and MH over ALNS are even more evident, as better solutions were obtained for, respectively, 75.0% and 91.7% of the instances. It is remarkable that the average gap obtained by MH is much lower than that of ALNS and is very close to that of ROA, but spending just a fraction of the time on average. Furthermore, new best solutions were encountered for 25.9% of these instances.
Instances  MH  MH  ALNS  ROA  

time  gap  time  gap  time  gap  gap  
20n270r2.5p  474.1  13.9  0.8  474.0  14.6  0.7  480.1  3.2  2.0  475.1  1.0 
20n410r2.5p  714.2  15.1  1.8  713.7  15.8  1.7  711.8  2.8  1.5  711.7  1.4 
20n540r2.5p  856.7  12.7  2.7  856.7  13.5  2.7  830.6  8.6  0.3  841.2  0.9 
20n270r3.5p  474.9  13.5  0.9  474.6  14.3  0.9  479.9  3.9  2.0  475.1  1.0 
20n410r3.5p  713.5  14.4  1.7  713.3  15.1  1.7  712.0  3.7  1.5  708.8  1.0 
20n540r3.5p  868.0  12.8  2.7  868.0  13.5  2.7  830.6  9.8  1.7  852.3  0.9 
25n320r2.5p  593.1  14.2  1.4  593.0  15.0  1.4  593.2  4.7  1.4  592.2  1.2 
25n480r2.5p  820.9  15.3  2.5  820.0  16.2  2.4  813.0  7.1  1.5  808.8  1.0 
25n640r2.5p  1103.6  15.5  4.2  1102.0  16.4  4.0  1074.1  25.4  1.5  1071.3  1.3 
25n320r3.5p  595.3  14.9  1.7  594.4  15.8  1.6  594.6  5.1  1.6  593.8  1.5 
25n480r3.5p  817.8  14.6  2.1  815.3  15.4  1.8  820.2  6.7  2.4  809.5  1.1 
25n640r3.5p  1093.0  15.2  3.0  1089.3  16.0  2.7  1083.4  35.3  2.2  1073.5  1.3 
30n420r2.5p  709.6  21.4  2.1  708.8  22.1  2.0  709.4  12.1  2.1  709.0  2.1 
30n630r2.5p  998.6  16.8  3.0  996.1  19.0  2.8  1008.4  15.2  4.0  1050.6  7.8 
30n840r2.5p  1344.3  14.5  3.9  1341.1  15.5  3.7  1420.4  224.4  9.0  1323.4  2.4 
30n420r3.5p  713.5  25.3  2.7  712.7  26.1  2.6  713.5  14.0  2.7  710.3  2.2 
30n630r3.5p  1009.1  18.4  3.0  1007.7  79.3  2.9  1066.3  14.1  8.2  1053.5  7.1 
30n840r3.5p  1353.7  17.3  4.3  1345.8  27.8  3.8  1421.5  170.9  8.9  1326.0  2.3 
35n480r2.5p  812.0  15.9  3.4  810.6  16.7  3.2  809.0  6.3  3.0  799.5  1.8 
35n710r2.5p  1143.3  24.5  3.6  1139.5  65.4  3.3  1178.3  13.7  6.4  1166.5  5.5 
35n950r2.5p  1557.8  15.3  3.4  1551.1  16.2  3.0  1554.6  96.1  3.2  1520.7  1.0 
35n480r3.5p  812.6  16.9  3.4  811.9  17.8  3.3  810.8  8.7  3.2  796.4  1.5 
35n710r3.5p  1175.5  16.1  4.5  1164.5  90.0  3.6  1180.5  10.9  4.9  1158.7  3.1 
35n950r3.5p  1565.4  18.0  3.7  1542.6  20.2  2.3  1581.2  79.6  4.7  1525.5  1.2 
40n550r2.5p  819.4  16.0  3.7  817.4  16.9  3.5  832.4  7.5  5.2  831.8  5.1 
40n820r2.5p  1310.9  26.5  3.4  1300.7  30.8  2.6  1334.5  12.3  5.1  1280.6  1.1 
40n1090r2.5p  1692.9  13.4  4.7  1672.2  63.9  3.5  1673.4  141.1  3.5  1641.6  1.7 
40n550r3.5p  823.5  17.8  4.2  820.7  18.8  3.9  838.5  9.5  5.9  844.3  6.6 
40n820r3.5p  1314.7  26.4  3.6  1305.7  30.1  3.0  1373.5  11.8  7.8  1287.7  1.6 
40n1090r3.5p  1697.5  13.7  4.8  1674.9  18.2  3.5  1671.5  239.8  3.3  1650.7  2.1 
Averages  16.9  3.0  25.9  2.7  40.1  3.6  2.3  
(%)  53.3  66.7  
(%)  23.3  26.7 
Instances  MH  MH  ALNS  ROA  

time  gap  time  gap  time  gap  gap  
50n650r2.5p  1076.9  20.2  4.1  1073.8  21.0  3.8  1069.3  10.2  3.4  1055.5  2.1 
50n910r2.5p  1453.7  17.1  4.6  1436.2  89.2  3.5  1447.1  19.2  4.2  1396.0  0.7 
50n1300r2.5p  2057.8  21.5  3.9  2032.3  72.7  2.7  2129.9  286.4  7.1  2011.1  1.7 
50n650r3.5p  1066.4  26.4  3.1  1062.5  26.7  2.8  1070.2  12.4  3.5  1054.6  2.0 
50n910r3.5p  1443.1  18.8  3.9  1431.1  29.6  3.1  1489.6  29.7  6.9  1405.2  1.3 
50n1300r3.5p  2059.2  21.3  4.0  2033.1  29.1  2.7  2134.2  291.4  7.3  2025.9  2.4 
60n800r2.5p  1290.1  29.0  3.6  1283.1  30.1  3.1  1320.8  17.4  5.9  1265.0  1.7 
60n1190r2.5p  1885.6  18.0  3.3  1872.0  21.6  2.6  1936.5  48.6  5.9  1851.8  1.6 
60n1590r2.5p  2513.9  20.0  3.8  2490.7  27.0  2.9  2544.9  432.4  5.0  2460.0  1.7 
60n800r3.5p  1286.4  28.6  3.3  1281.3  30.2  3.0  1326.5  19.3  6.3  1264.1  1.6 
60n1190r3.5p  1910.3  16.3  4.6  1878.6  25.3  3.0  1954.1  55.1  6.7  1857.3  1.8 
60n1590r3.5p  2523.9  19.7  3.9  2488.9  31.8  2.5  2562.6  395.0  5.3  2471.9  1.8 
80n1070r2.5p  1634.0  36.0  4.2  1622.4  38.4  3.6  1722.8  59.5  9.2  1599.8  2.2 
80n1610r2.5p  2461.4  28.5  3.6  2435.9  37.8  2.6  2535.4  173.2  6.4  2462.7  3.7 
80n2150r2.5p  3491.9  13.4  5.5  3421.5  225.3  3.5  3473.1  979.5  5.0  3361.1  1.8 
80n1070r3.5p  1632.9  42.7  4.2  1617.8  45.5  3.3  1732.8  53.0  9.7  1598.5  2.1 
80n1610r3.5p  2457.6  24.2  3.5  2429.5  34.3  2.4  2581.9  198.7  8.1  2434.5  2.6 
80n2150r3.5p  3532.9  17.2  5.5  3458.3  211.5  3.4  3512.1  1038.3  4.9  3419.2  2.3 
100n1330r2.5p  2024.0  44.5  5.1  2005.1  161.7  4.2  2083.5  89.1  7.8  2063.3  6.9 
100n2000r2.5p  3082.0  43.8  4.4  3048.2  358.8  3.3  3149.7  256.3  6.4  3149.5  6.4 
100n2670r2.5p  4313.7  19.7  7.0  4297.3  440.7  6.7  4293.2  3492.3  6.6  4234.8  5.3 
100n1330r3.5p  2021.0  50.5  5.0  1994.2  190.7  3.7  2149.1  77.4  10.7  2060.2  6.8 
100n2000r3.5p  3094.8  47.0  4.8  3060.7  327.5  3.7  3233.7  295.1  8.9  3164.8  6.9 
100n2670r3.5p  4335.5  20.5  6.7  4327.4  441.6  6.5  4333.3  3294.8  6.6  4253.6  4.9 
Averages  26.9  4.4  122.8  3.4  484.3  6.6  3.0  
(%)  75.0  91.7  
(%)  20.0  24.0 
Table 4 presents the results obtained with MH, MH and ROA for the instances from the third benchmark set. The columns are the same as in Table 1. The results show the impressive results of our heuristics, as they could improve the best known result for all the instances. MH was able to obtain an average gap of 1.6% within 90.9 seconds on average, while MH could reduce this gap to 1.4% within 469.6 seconds on average. These average gaps are much lower than the 5.9% average gap obtained by ROA using an average time of 2160 seconds.
Instances  MH  MH  ROA  

time  gap  time  gap  gap  
120n1410r2.5p  1686.2  73.4  1.4  1681.6  343.9  1.1  1766.7  5.9 
120n2030r2.5p  2424.2  48.3  1.4  2416.6  325.9  1.1  2565.6  6.9 
120n2820r2.5p  3404.0  82.9  2.8  3393.2  504.7  2.5  3530.4  6.3 
120n1410r3.5p  1687.3  63.5  1.4  1683.5  294.7  1.2  1763.9  5.7 
120n2030r3.5p  2426.0  59.9  1.5  2420.0  434.7  1.3  2569.1  7.0 
120n2820r3.5p  3376.2  74.3  2.0  3373.9  495.8  1.9  3514.7  5.9 
160n1810r2.5p  2208.2  73.2  1.9  2205.6  493.8  1.8  2229.3  2.8 
160n2930r2.5p  3525.7  78.8  1.5  3514.3  401.7  1.2  3702.8  6.3 
160n3320r2.5p  4039.6  91.9  3.0  4028.5  513.1  2.7  4157.9  5.7 
160n1810r3.5p  2216.0  73.2  1.3  2209.2  277.5  1.0  2235.8  2.2 
160n2930r3.5p  3518.1  149.1  1.3  3509.7  495.1  1.1  3624.4  4.2 
160n3320r3.5p  3983.8  93.2  1.6  3977.8  460.0  1.5  4066.1  3.6 
200n2110r2.5p  2505.7  74.5  1.3  2498.9  451.9  1.0  2575.1  3.9 
200n3430r2.5p  4068.5  60.7  1.2  4064.4  481.6  1.1  4257.9  5.6 
200n4120r2.5p  4899.6  154.3  1.3  4891.9  575.2  1.2  5168.3  6.5 
200n2110r3.5p  2507.8  75.1  1.3  2505.0  496.0  1.2  2575.3  3.9 
200n3430r3.5p  4069.5  68.3  1.2  4061.4  489.9  1.0  4250.4  5.4 
200n4120r3.5p 8  4907.2  93.5  1.5  4901.4  514.4  1.4  5087.7  5.0 
300n2510r2.5p 9  3018.1  76.1  1.3  3013.5  497.1  1.1  3207.5  7.1 
300n4030r2.5p  5014.6  152.2  4.0  5004.3  574.0  3.8  5262.3  8.5 
300n4520r2.5p  5433.6  96.2  1.0  5430.8  517.5  1.0  5865.7  8.3 
300n2510r3.5p  3025.2  74.9  1.5  3025.0  495.8  1.5  3197.9  6.8 
300n4030r3.5p  4861.7  134.8  0.9  4856.5  555.7  0.8  5258.7  8.4 
300n4520r3.5p  5443.0  159.1  1.2  5437.6  580.0  1.1  5973.3  10.0 
Averages  90.9  1.6  469.6  1.4  5.9  
(%)  100.0  100.0 
5 Concluding remarks
In this paper, we tackled the selective and periodic inventory routing problem (SPIRP) for waste vegetable oil collection by applying a fast and effective MIPbased heuristic. This relevant problem in the context of reverse logistics was an open area for research due to the fact that the best performing solution procedure available in the literature consumes a lot of time to provide solutions.
Computational experiments have demonstrated that our newly proposed MIPbased heuristic is very fast and effective when providing near optimal solutions for the considered instances, achieving considerable low gaps within seconds. The approach has the benefit of providing an a posteriori quality guarantee, as it contains the resolution of a valid relaxation of the problem in its mechanism. Besides, the MIPbased heuristic was able to obtain high quality solutions, better than those found by a stateoftheart solution procedure for several of the tested instances, while using just a fraction of the time. The most significant performance was obtained for the larger instances, as our approach could improve the best known result for all of them.
The SPIRP considered in this paper contains a single depot and a single type of product/oil. Thus, an immediate extension to be considered is to reformulate and solve this problem in a multidepot environment. Also, it would be interesting to study the situation in which there are multiple types of product/oil with one or multiple depots. These are some research opportunities that could be explored in the near future.
Acknowledgments: Work of Rafael A. Melo was supported by the State of Bahia Research Foundation (FAPESB) and the Brazilian National Council for Scientific and Technological Development (CNPq).
References
 Aksen . (2012) AksKaySalAkc12Aksen, D., Kaya, O., Salman, FS. Akça, Y. 2012. Selective and periodic inventory routing problem for waste vegetable oil collection Selective and periodic inventory routing problem for waste vegetable oil collection. Optimization letters661063–1080.
 Aksen . (2014) AksKaySibOzg14Aksen, D., Kaya, O., Salman, FS. Tüncel, O. 2014. An adaptive large neighborhood search algorithm for a selective and periodic inventory routing problem An adaptive large neighborhood search algorithm for a selective and periodic inventory routing problem. European Journal of Operational Research2392413  426.
 Andersson . (2010) AndHenHofArilChr10Andersson, H., Hoff, A., Christiansen, M., Hasle, G. Løkketangen, A. 2010. Industrial aspects and literature survey: Combined inventory management and routing Industrial aspects and literature survey: Combined inventory management and routing. Computers & Operations Research3791515–1536.
 Applegate . (2006) AppBixChvCoo06Applegate, DL., Bixby, RE., Chvatal, V. Cook, WJ. 2006. The traveling salesman problem: A computational study The traveling salesman problem: A computational study. Princeton, New JerseyPrinceton University Press.
 Coelho . (2014) CoeCorLap14Coelho, LC., Cordeau, JF. Laporte, G. 2014. Thirty years of inventory routing Thirty years of inventory routing. Transportation Science4811–19.
 Coelho Laporte (2013) CoeLap13Coelho, LC. Laporte, G. 2013. The exact solution of several classes of inventoryrouting problems The exact solution of several classes of inventoryrouting problems. Computers & Operations Research402558–565.
 Coelho Laporte (2014) CoeLap14Coelho, LC. Laporte, G. 2014. Improved solutions for inventoryrouting problems through valid inequalities and input ordering Improved solutions for inventoryrouting problems through valid inequalities and input ordering. International Journal of Production Economics155391–397.
 Cordeau . (2015) CorLagMusVoc15Cordeau, JF., Laganà, D., Musmanno, R. Vocaturo, F. 2015. A decompositionbased heuristic for the multipleproduct inventoryrouting problem A decompositionbased heuristic for the multipleproduct inventoryrouting problem. Computers & Operations Research55153–166.
 CárdenasBarrón . (2019) CarGonTreGar19CárdenasBarrón, LE., GonzálezVelarde, JL., TreviñoGarza, G. GarzaNuñez, D. 2019. Heuristic algorithm based on reduce and optimize approach for a selective and periodic inventory routing problem in a waste vegetable oil collection environment Heuristic algorithm based on reduce and optimize approach for a selective and periodic inventory routing problem in a waste vegetable oil collection environment. International Journal of Production Economics21144  59.
 Dekker . (2013) DekFleIndWas13Dekker, R., Fleischmann, M., Inderfurth, K. van Wassenhove, L. (). 2013. Reverse logistics: quantitative models for closedloop supply chains Reverse logistics: quantitative models for closedloop supply chains. Springer Science & Business Media.
 Gavish Graves (1978) GavGra78Gavish, B. Graves, SC. 1978. The travelling salesman problem and related problems The travelling salesman problem and related problems Working Paper. Cambridge,MAOperations Research Center, Massachusetts Institute of Technology.
 Laporte (2009) Lap09Laporte, G. 2009. Fifty years of vehicle routing Fifty years of vehicle routing. Transportation Science434408–416.
 Lin . (2014) LinChoHoChuLam14Lin, C., Choy, KL., Ho, GT., Chung, SH. Lam, H. 2014. Survey of green vehicle routing problem: past and future trends Survey of green vehicle routing problem: past and future trends. Expert Systems with Applications4141118–1138.
 Mjirda . (2014) MjiJarMacHanMla14Mjirda, A., Jarboui, B., Macedo, R., Hanafi, S. Mladenović, N. 2014. A two phase variable neighborhood search for the multiproduct inventory routing problem A two phase variable neighborhood search for the multiproduct inventory routing problem. Computers & Operations Research52291–299.
 Montagné . (2019) MonGamGen19Montagné, R., Gamache, M. Gendreau, M. 2019. A shortest pathbased algorithm for the inventory routing problem of waste vegetable oil collection A shortest pathbased algorithm for the inventory routing problem of waste vegetable oil collection. Journal of the Operational Research Society706986997.
 Raa (2015) Raa15Raa, B. 2015. Fleet optimization for cyclic inventory routing problems Fleet optimization for cyclic inventory routing problems. International Journal of Production Economics160172–181.
 Soysal . (2015) SoyBloHaiVor15Soysal, M., BloemhofRuwaard, JM., Haijema, R. van der Vorst, JG. 2015. Modeling an Inventory Routing Problem for perishable products with environmental considerations and demand uncertainty Modeling an inventory routing problem for perishable products with environmental considerations and demand uncertainty. International Journal of Production Economics164118–133.
 Soysal . (2018) SoyBloHaiVor18Soysal, M., BloemhofRuwaard, JM., Haijema, R. van der Vorst, JG. 2018. Modeling a green inventory routing problem for perishable products with horizontal collaboration Modeling a green inventory routing problem for perishable products with horizontal collaboration. Computers & Operations Research89168–182.
Comments
There are no comments yet.