AN ADAPTIVE LARGE NEIGHBORHOOD SEARCH ALGORITHM FOR A SELECTIVE & PERIODIC INVENTORY ROUTING PROBLEM

Size: px
Start display at page:

Download "AN ADAPTIVE LARGE NEIGHBORHOOD SEARCH ALGORITHM FOR A SELECTIVE & PERIODIC INVENTORY ROUTING PROBLEM"

Transcription

1 AN ADAPTIVE LARGE NEIGHBORHOOD SEARCH ALGORITHM FOR A SELECTIVE & PERIODIC INVENTORY ROUTING PROBLEM Deniz Aksen 1, Onur Kaya 2, F. Sibel Salman 2, Özge Tüncel 2 1 College of Adm. Sci. and Econ., Koç University, Sarıyer, İstanbul 2 Department of Industrial Engineering, Koç University, Sarıyer, İstanbul

2 Outline Motivation Overall Objective Literature Review Problem Definition Adaptive Large Neighborhood Search Solution Approach Computational Study Conclusions 2

3 Motivation The collection of end-of-life products, such as used vegetable oil, from collection points such as restaurants, by recycling or refurbishing companies, such as a bio-diesel producer, as inputs for their production process. 3

4 Overall Objective The collection company has to decide: Which restaurants to include into the collection programme. When to visit the selected restaurants to collect enough waste oil to satisfy its daily production requirements. Sequence of the restaurants that will be visited on each day over a planning horizon. Objective: Minimize { Transportation Cost } + { Inventory Holding Cost } + { Outsourcing Cost } + { Vehicle Operating Cost } 4

5 Literature Review Periodic Vehicle Routing Problem (PVRP) Inventory Routing Problem (IRP) Selective and Periodic Inventory Routing Problem (SPIRP) 5

6 Literature Review Periodic Vehicle Routing Problem (PVRP) Variant of VRP by extending the planning horizon to multiple periods. Routes are designed for a fixed fleet of capacitated vehicles on each day of planning horizon to visit customers exactly a preset number of times. Three decisions have to be made: 1. Choosing a schedule for each customer among predefined schedule sets. 2. Assigning a group of customers to each vehicle on each day. 3. Routing the vehicles for each time unit of the planning horizon. 6

7 PVRP Literature Evolution of Models and Solution Methods 7

8 PVRP Literature Metaheuristic Methods on PVRP Two-phase heuristics : Assigning customers to routes and solving routing problem for each day: Cordeau, Gendreau, and Laporte (1995) : Tabu Search Alegre, Laguna, and Pachecco (2007) : Scatter Search Hemmelmayr, Doerner and Hartl (2009) : Variable Neighborhood Search (VNS) Gulczynski, Golden, Wasil (2011) : Record-to-Record Travel Algorith combined with Integer Programming Vidal, Crainic, Gendreau, Lahrichi, Rei (2012): Hybrid Genetic Algorithm 8

9 SPIRP vs. PVRP Difference from PVRP No need to visit all customers. No fixed visit frequency requirements from customers. Decision when to visit each customer is taken among all possible day combinations rather than taking among predefined schedule sets. Considers inventory management issues. 9

10 Literature Review Inventory Routing Problem (IRP) An integration of two supply chain operations, namely inventory control and vehicle routing. variations of the VRP taking inventory costs into consideration. Three decisions have to be made: When to serve a customer, How much to deliver to a customer when served, Which delivery routes to use. 10

11 Literature Review The Basic Versions of the IRP Criteria Possible Options Time horizon Finite Infinite Structure One-to-one One-to-many Many-to-many Routing Direct Multiple Continuous Inventory policy Maximum level Order-up-to level Inventory decisions Lost sales Back-order Non-negative Fleet composition Homogeneous Heterogeneous Fleet size Single Multiple Unconstrained 11

12 IRP Literature Metaheuristic Methods on IRP Ribeiro and H. R. Lourenço (2003) : Iterated Local Search Campbell, Savelsbergh (2004): Greedy Randomized Adaptive Search Procedure Zhao, Chen, Zang (2008): Variable Neighborhood Search Boudia, Prins (2009): Memetic Algorithm Archetti, Bertazzi, Hertz, Speranza (2011) : Tabu Search and MIP Coelho, Cordeau, Laporte (2011) : Adaptive Large Neighborhood Search (ALNS) 12

13 SPIRP vs. IRP Difference from IRP No need to visit all customers Collects to satisfying its production requirements IRP delivers to avoid customer stock outs 13

14 SPIRP Literature Exact Solution Approach Aksen, Kaya, Salman and Akça (Optimization Letters, 2012): MILP 25 source points 36 scenarios MILP: 6.31% gap on GAMS/CPLEX 12.2 parallel runs for 2 hours PLR (Partial Linear Relaxation): GAMS/CPLEX 12.2 parallel runs for 1 hour Upper Bound of MILP (Best Feasible Solution) and Best of the Lower Bounds of MILP and PLR: 3.28% gap 14

15 Problem Definition: SPIRP a(i,t) 9 10 n = 10 T = 2 d(i,j) R(t) Q 15

16 Problem Definition: SPIRP a(i,t) 9 10 n = 10 T = 2 d(i,j) R(t) Q 16

17 Problem Definition: SPIRP Cyclic Planning Horizon Initial Inventory Initial Inventory st Period 2 nd Period 17

18 Problem Definition: SPIRP Index Sets 18

19 Problem Definition: SPIRP Parameters 19

20 Problem Definition: SPIRP Decision Variables 20

21 Problem Definition: SPIRP Objective Function Transportation Cost Vehicle Operating Cost Inventory Holding Cost Purchasing Cost 21

22 Problem Definition: SPIRP Flow Balance Constraints (Gavish-Graves Formulation) Upper and Lower Bounds on the Flow Variables Prevention of partial collection 22

23 Problem Definition: SPIRP Degree Balance Constraints of the Nodes Dispatching Sufficiently Many Vehicles for Collection If no visit, then no collection! 23

24 Problem Definition: SPIRP Ending Inventory Calculations Prevention of partial collection Cyclic schedule, cyclic inventory Inventory balance at the depot Coupling Z i and Y it If no inclusion, then no visit. 24

25 Problem Definition: SPIRP Valid Inequalities / Additional Logical Conditions Breaks subtours of size two. Avoid visits to a node which isn t in the schedule 25

26 Problem Definition: SPIRP Binary integrality and nonnegativity 26

27 Problem Definition: PLR Partial Linear Relaxation of the MILP model (PLR) Relax the binary routing variables X ijt between 0 and 1. Introduce a set of nonnegative integer variables V t to represent the number of vehicles dispatched in period t. Furthermore, instead of using equations (17)-(19) as tightening constraints, the following equations (31) and (32) are used. 27

28 Problem Definition: RR Relaxation without Routing (RR) due to Richard Wong We eliminate the routing part of the problem by removing the flow and routing variables (F ijt and X ijt ) and constraints (2)-(8), (17)-(19), (20) and (23). Add the cost of direct travel from and to the depot by fractional vehicles denoted as R t. The number of vehicles dispatched in each period t is represented by a new integer variable V t. The vehicle capacity constraint (9) is replaced by: 28

29 Problem Definition: RR Relaxation without Routing (RR) Modify the objective function to underestimate the routing costs. For each customer visited in a period t, divide its collected amount by the vehicle capacity Q to find the fraction of a vehicle occupied by this customer s load. Relax the problem so that the load of each customer can be carried by a fractional vehicle. The fractional vehicle should travel at least the distances d 0i to get from the depot to customer i and d i0 to return back to the depot. In total a slack vehicle capacity (empty storage space on the truck) of QR t will remain. This slack capacity should also travel out of the depot and come back to it. 29

30 Problem Definition: RR Relaxation without Routing (RR) Recall the newly introduced integer vehicle number and continuous vehicle fraction variables. The objective function of the RR model eventually becomes: The minimum total traveling distance on day t 30

31 Adaptive Large Neighborhood Search A number of local search algorithms compete to modify the current solution. 31

32 Adaptive Large Neighborhood Search Ropke and Pisinger (2005, 2006) 32

33 ALNS for SPIRP Details Adaptive Search Engine Which movement to perform is chosen by roulette-wheel mechanism Weights assigned each movements depending on past performances Adaptive Weight Adjustment The search is divided into segments of λ iterations Weights are adjusted after each segment as combination of last weight of the movement and performance of the movement at the last segment Acceptance and Stopping Criteria Simulated Annealing Accept if, and with probability otherwise. 33

34 ALNS for SPIRP Pseudo Code Part I 34

35 ALNS for SPIRP Pseudo Code Part II 35

36 INITIAL SOLUTION of ALNS Exploit the optimal solution of the relaxation without routing model RR. The RR model gives us for each source node a visiting schedule during the planning horizon. Then, Clark and Wright parallel savings algorithm (CW-PSA) is used to determine the routes of each period. On top of that, to find a better initial solution, we apply a series of well-known improvement heuristics. 36

37 INITIAL SOLUTION of ALNS 1. Intraroute 2-Opt: Two edges are removed from the tour and the two remaining segments are reconnected. 2. Intraroute 3-Opt: Three edges are removed from the tour and the three remaining segments are reconnected in all possible ways. 3. Interroute 2-Opt: Two edges from two different routes are replaced by two new edges. 37

38 INITIAL SOLUTION of ALNS 4. Interroute 1-0 move: A source node is moved from one route to another. 5. Interroute 1-1 and 2-2 exchanges: Two source nodes or two pairs of source nodes are exchanged between two routes. 6. Interroute rotation: Three routes are considered. A source node from each one is shifted to the next route in a cyclic fashion. 38

39 ALNS SPECIFIC NS MOVES: DESTROY & REPAIR (Coelho, Cordeau, Laporte, Comp.& OR 2012) 1. Randomly remove ρ visits. 2. Randomly insert ρ visits. 3. Remove the worst source node. 4. Insert the best source node. 5. Shaw removal. 6. Shaw insertion. 7. Remove ρ source nodes. 8. Insert ρ source nodes. 9. Empty one period. 10. Swap routes. 11. Randomly move ρ visits. 39

40 100 restaurants on the Asian side of İstanbul. Asymmetric traveling distance matrix from Google Maps

41 COMPUTATIONAL STUDY 4.36 TL/lt Large / medium / small size restaurants: 50, 30, 15 lt of waste oil per day. Virgin oil purchasing cost 3.50 TL and 2.50 TL per liter. Low / medium / high daily oil requirements: 50%, 75%, 50% of total accu. 41

42 COMPUTATIONAL STUDY 54 SPIRP instances of size 20 to 100 source nodes (restaurants). Xeon E GHz Quad-Core (8 threads) processor and 32 GB RAM. The operating system is 64-bit Windows 7 Professional SP1. The ALNS algorithms are coded in JAVA and compiled with version bit version GAMS 23.7 and Cplex 12.3 were used to solve the MILP, PLR, and RR models of the test instances. Cplex options turned on: nodelim ; threads 0; parallelmode 1; workmem 30000; nodefileind 2. 42

43 COMPUTATIONAL STUDY 10 parallel runs (10 random start runs) with the ALNS. MILP model solved subject to a time limit of 2.0, 2.5, 3.0, 3.5 and 4.0 hours for the instances with respectively 20, 25, 30, 35 and 40 source nodes. For larger instances: time limit of Cplex set to 5.0 hours. PLR model run time: 1.00, 1.25, 1.50, 1.75, and 2.00 hours for instances with 20, 25, 30, 35, and 40 source nodes. For source node counts of 50 and above: 5.00 RR model solved to optimality in less than 100 seconds in 47 of 54 instances. In the rest: In 30 minutes the optimality gap drops below 0.01%. 43

44 COMPUTATIONAL STUDY MILP versus ALNS benchmarking on small instances (on average). 44

45 COMPUTATIONAL STUDY MILP versus ALNS benchmarking on large instances (on average). 45

46 COMPUTATIONAL STUDY MILP versus ALNS benchmarking on large instances (on average). 46

47 COMPUTATIONAL STUDY 1200 CPUALNS (s) # of Source Nodes 47

48 COMPUTATIONAL STUDY With lesser requirements, the facility has more choices to apply different moves. As the requirement level increases, the selective part of the problem weakens and the moves designed for this characteristic of the problem become ineffective. The algorithm has difficulty in finding the appropriate moves that can be applied to the current solution. Another factor causing the CPU times to grow with high requirements is the reconstruction of the routes in the repair steps. Applying CW-PSA and improvement heuristics to construct new routes takes much more time since almost all source nodes need to be visited. 48

49 COMPUTATIONAL STUDY 20n-270r-2.5p 20n-270r-3.5p 49

50 COMPUTATIONAL STUDY Execution counts of the moves leading to the discovery of a new solution. 50

51 CONCLUSIONS When n < 30, ALNS cannot perform as well as MILP. However, for n = 30 and above, ALNS outperforms MILP considerably. For n = 40, ALNS improves the MILP solutions by 15.4% on average. The maximum CPU time spent by ALNS is 240 seconds, while the Cplex cannot match the respective ALNS solution even at the end of four hours. For larger instances which have 50 to 100 source nodes, the lower bounds are obtained from three models, namely MILP, PLR and RR. Among the three, the new relaxation without routing model RR yields the highest lower bounds in all 24 large size instances. Our proposed heuristic ALNS achieves an average worst-case optimality gap of 7.14% (4.15%) and an average solution time of 484 seconds (40 seconds) for large size (small size) instances. 51

52 Thank you for listening 52