A hybrid FJA-ALNS algorithm for solving the multi-compartment vehicle routing problem with a heterogeneous fleet of vehicles for the fuel delivery problem

. by the authors; licensee Growing Science, Canada 1 2 20 ©


Introduction
The Vehicle Routing Problem (VRP) is a well-known optimization problem, which is difficult to solve, but is a very popular problem in the academic literature that many scholars are interested in, due to their ability to reduce transportation costs for organizations (Chokanat, Pitakaso, & Sethanan, 2019;Wichapa & Khokhajaikiat, 2018). Therefore, developing practical solutions for the VRP of original and remanufactured products is one the emerging topics in current transportation research. Much scholarly attention has been focused on developing the characteristics of the problem and its assumptions, leading to a massive number of VRPs and variants, as well as many and various heuristic/metaheuristic modifications to tackle the VRP problems (Hanum et al., 2019;Wichapa & Khokhajaikiat, 2017;Wichapa, Sudsuansee, & Khokhajaikiat, 2019). The VRP has many variants due to the fact that different cases of the problem usually have some specific conditions, which transform the classical VRP into a special case VRP that makes it even harder to tackle using the existing algorithms. Most of the research on VRPs consider it with only one type of commodity. However, there are some special problems in which different types of commodities cannot be mixed together in the same compartment during transportation. An example of a VRP variant is a multi-compartment vehicle routing problem (MCVRP) for the fuel delivery problem, in which the context of the MCVRP for fuel delivery is to design the transport routes to deliver multiple fuels from a central depot to petrol stations, using a fleet of multi-compartment vehicles, with each compartment having different fuels that need to be kept separate. The MCVRP with a heterogeneous fleet of multi-compartment vehicles is like MCVRP, with the additional constraint that each vehicle must have various capacities of multiple commodities (Chowmali & Sukto, 2020). The fuel delivery vehicle is usually composed of multi-compartments (see Fig.1), which are used to separate one fuel type from other fuel types.

Fig.1.
A vehicle with multi-compartments for fuel delivery Fig. 1 shows a vehicle with multiple compartments which is used to deliver fuel, each compartment cannot be used to contain different fuel types. This makes the MCVRP with a heterogeneous fleet more difficult than the classical VRP, and this problem is more difficult to solve using an exact method. The characters of the MCVRP with a heterogeneous fleet for fuel delivery in this paper are as follows (Chowmali & Sukto, 2020): (1) each vehicle has multiple compartments, with each compartment having a different capacity; (2) vehicles have a variety of capacities; (3) each vehicle compartment contains only one fuel type; (4) each vehicle travels from a depot to a set of customers and returns to a depot, (5) the demand of each customer will be serviced by only one vehicle and (6) other constraints are the same as the original VRP. Due to these various attributes, the MCVRP in this case is a very difficult problem to solve using an exact method.
Due to the difficulty of the fuel delivery problem in this case, this research therefore proposes the mathematical model and solves problems with the LINGO software for small-size problems. Since the characteristics of the MCVRP for fuel delivery is a non-polynomial hard problem (NP-hard problem), LINGO software may find it very difficult to solve because the exact method (LINGO software) becomes highly time-consuming as the problem instances increase in size. Therefore, a heuristic should be applied to solve the MCVRP in this case. Due to the combinatorial nature of the VRPs and the Adaptive Large Neighborhood Search (ALNS) efficiency in solving combinatorial problems, the ALNS, first developed by Ropke and Pisinger (2006), is one of the heuristics which is often used to solve the VRPs in the literature (Hemmelmayr, Cordeau, & Crainic, 2012;Pisinger & Ropke, 2007). In addition, the Fisher and Jaikumar Algorithm (FJA), first proposed by Fisher and Jaikumar (1981), is a two-phase heuristic, and is an effective heuristic for solving the capacitated vehicle routing problem (CVRP). Certainly, in this case, the traditional ALNS and FJA need to be confederated to tackle the MCVRP in this case to handle the problem efficiently. Hence, a hybrid heuristic is developed by applying the principles of the FJA and ALNS in the local search. These are the major reasons why FJA-ALNS is selected as a suitable tool for solving the MCVRP in this paper.
The rest of the paper is organized as follows: Section 2 presents related literature while Section 3, Methodology, presents the mathematical formulation and the heuristics' development. Section 4 and Section 5, Numerical examples and Conclusion respectively, are results and our conclusion of the article.

Literature review
This section presents solving MCVRPs for the fuel delivery problem using heuristics/meta-heuristics or exact methods. Popović, Vidović and Radivojević (2012) have proposed the Variable Neighborhood Search (VNS) heuristic for the IRP in fuel delivery. Vidović, Popović and Ratković (2014) proposed a mixed integer programming (MIP) model and a Variable Neighborhood Descent heuristic (VND heuristic) for solving the multi-product multi-period Inventory Routing Problem (IRP) with a homogeneous fleet of vehicles with multiple compartments for fuel delivery. Prescott-Gagnon, Desaulniers, and Rousseau (2014) have proposed a hybrid heuristic based on the Tabu search algorithm, LNS heuristic and Column generation heuristic for solving the model of the IRP. Jia et al. (2014) have proposed a two-phase algorithm, the first phase using the tabu search and the second phase a saving algorithm and a neighborhood search, for solving the IRP with homogeneous vehicles. The results from computational experiments show that the proposed algorithm is effective. Carotenuto et al. (2015) have proposed a hybrid genetic algorithm (GA) for solving the periodic vehicle routing problem (PVRP) for fuel-oil distribution. Benantar, Ouafi, and Boukachour (2016) have proposed a Tabu search algorithm to solve the MCVRP with time windows (MCVRPTW) for fuel distribution. Coelho and Laporte (2015) have proposed a hybrid GA for the distribution of petrol products from storage depots to a set of petrol stations with uncertain demand. Wang et al. (2019) have proposed a mathematical model that considers petrol trucks returning to a depot multiple times, and have developed a heuristic algorithm based on a local branch-and-bound search with a tabu list and the Metropolis acceptance criterion. Based on a case study of routing petrol trucks in Beijing, the proposed algorithm was effective for solving the MCVRP. Wang, Kinable and Woensel (2020) proposed the ALNS to the MCVRP for the fuel replenishment problem with split-delivery and multiple trips. The proposed heuristic compared against a data set of a Chinese petroleum transportation company and the results of the exact method from a MILP model and lower bounds from a column generation approach. Gruler et al. (2020) have proposed a variable neighborhood search (VNS) based on a Monte Carlo simulation to solve the multi-period IRP with stochastic demands. Although there are various ways to solve MCVRPs for fuel delivery in the above literature, these can be divided into two categories, including a heuristic/meta-heuristic method and the exact method. For small-sized problems, the exact method can provide the results with the global optimal solution, but it requires more computational time. When the problems are larger-sized problems, the exact method cannot find the global optimal solution within the limited period of computational time, while the heuristic/meta-heuristic method provides better results with much less computational time. The various heuristic methods can be divided into constructive heuristics and two-phase heuristics, which are used to solve VRPs. The two-phase heuristics are divided into two categories: (1) Cluster first -route second and (2) Route first -cluster second. Some well-known heuristics of two-phase heuristics for solving VRPs are the Sweep algorithm, FJA, the Petal algorithm and Taillard's algorithm. The FJA is one of various two-phase heuristics, one of the well-known algorithms, for solving the capacitated VRP. The procedure of the FJA can be comprised of four calculation steps (Baker & Sheasby, 1999;Islam, Ghosh, & Rahman, 2015;Meindl & Chopra, 2001) which are (1) it generates clusters with a geometric method partitioning each customer into each cone, where the number of cones is equal to the number of vehicles, (2) seeds are selected from the cones and insertion cost is calculated, (3) the generalized assignment problem model (GAP model) is used to form the clusters and (4) the Travelling salesman problem model (TSP model) is used to obtain the optimal travel cost. The ALNS heuristic was proposed by Ropke and Pisinger (2006) and extends the Large Neighborhood Search (LNS) heuristic, first proposed by Shaw (1998), by allowing multiple destroy and repair methods to be used within the same search. Each destroy/repair method is assigned a weight that controls how often the particular method is attempted during the search. The weights are adjusted dynamically as the search progresses so that the heuristic adapts to the instance at hand and to the state of the search (Pisinger & Ropke, 2019). For the application of an ALNS to solve VRPs or transportation problems, Ropke and Pisinger (2006) studied an ALNS for the cumulative capacitated VRP. Azi, Gendreau and Potvin (2014) developed an ALNS for a VRP with multiple routes. Later, Mancini (2015) proposed an Adaptive Large Neighborhood Search (ALNS) based on a metaheuristic approach to solve the multi-depot multi-period vehicle routing problem with a heterogeneous fleet, with the objective to minimize the total delivery cost. Pitakaso, Sethanan, and Jamrus (2020) have proposed a Hybrid PSO and ALNS algorithm for software and mobile applications for transportation in the ice manufacturing industry 3.5. Dayarian, Crainic, Gendreau, and Rei (2016) have proposed an ALNS heuristic for a multi-period vehicle routing problem. Chen et al. (2018) proposed an ALNS heuristic for dynamic vehicle routing problems. Wen et al. (2016) proposed an ALNS heuristic for the Electric Vehicle Scheduling Problem. Grangier et al. (2016) proposed an ALNS heuristic for the two-echelon multiple-trip vehicle routing problem with satellite synchronization. Yu et al. (2020) proposed an ALNS heuristic for the Larger-Scale Instances of Green Vehicle Routing Problem with Time Windows.
Although FJA is a well-known algorithm, the survey found that the FJA, proposed by Chowmali and Sukto (2020), could be applied to solve the MCVRPs with a heterogeneous fleet for fuel delivery. The results have shown that the proposed FJA heuristic is effective for solving MCVRP in a case study of the fuel delivery problem. From the above review, ALNS can be applied as a solution-phase improvement, and it can be combined with other methods to further improve the solutions. These are the major reasons why FJA and ALNS were selected as a hybrid algorithm for solving the MCVRP with a heterogeneous fleet of vehicles for fuel delivery in this case.

A MCVRP with a heterogeneous fleet of vehicles for the fuel delivery problem
In this section, the MCVRP model, a mixed integer linear programming (MILP) model, with a heterogeneous fleet of multicompartment vehicles can be formulated as a mathematical model in the same way as the classical MCVRP model, where the constraints are adjusted such that different types of multi-compartment vehicles are allowed. Details of the MILP model for this case study are shown in Fig.2.

Indices:
Let N = {0, 1, 2,…, n) be a set of nodes in a completely undirected network including one depot (node 0) and a set of n customers ( N ′ ). Let G = (N, A) be a complete graph where A is the arc set, Arc (i, j) A ∈ . Let k be a set of multicompartment vehicles that are available at the depot and f is a set of fuel types.

Parameters:
dtij is the actual distance matrix from node i to node j (km). djf is the demand of customer j for fuel type f (liter). Qkf is the capacity of vehicle k for fuel type f (liters); Qkf is the amount of each fuel for each vehicle. ML is a maximum route length.

Decision variables:
Xijk is a binary variable; Xijk = 1 if the node i and node j are linked by vehicle k; Xijk = 0 otherwise. Yjkf is a binary variable; Yjkf = 1 if the fuel type p at node j is serviced by vehicle k; Yjkf = 0 otherwise.

Objective function:
, The objective function given by Eq.
(1) represents the total driving distance of the transport routes to be minimized. Eq.
(2) means that each customer j may be visited at most once by each route. Eq.
(3) means that if a multi-compartment vehicle enters customer j, it must leave it. Eq. (4) is a sub-tour elimination constraint. Eq. (5) means that if customer j is not visited by vehicle k, Yjkf is equal to zero. Eq. (6) means that each customer j with demand for fuel type f is serviced by one single vehicle. Eq. (7) means that the amount of each fuel cannot exceed its compartment capacity. Eq. (8) ensures that the route length cannot exceed the maximum route length. Eq. (9) means that variables X and Y are binary.

Solving the multi-compartment vehicle routing problem with a heterogeneous fleet of vehicles for fuel delivery using the FJA-ALNS algorithm
Phase 1: determining the initial solution using a variant of FJA Details of the steps of FJA for phase1 (Initial solutions), proposed by Chowmali and Sukto (2020), are shown in Fig. 3.   Fig.3 In this paper, we use a variant of FJA, first proposed by Chowmali and Sukto (2020), to solve the MCVRP for fuel delivery. Details of calculation steps can be seen in Chowmali and Sukto's paper (2020), while the calculation steps of FJA can be summarized as follows.
Step1: Select the number and type of vehicles based on the MILP model, using LINGO software.
The objective of the MILP model for selecting the number and type of vehicles is to minimize the vehicle cost. Details of the proposed FJA can be viewed in Chowmali and Sukto's paper (Chowmali & Sukto, 2020).
Step2: Solve the MCVRP for fuel delivery using a variant of FJA.
Step 2.1: Select the seed nodes.
The clustering model, Eq. (20) to Eq. (28) in Chowmali and Sukto's paper (Chowmali & Sukto, 2020), will be utilized to generate the seed nodes. The objective is to minimize the total driving distance of clusters. After that, the insertion cost of each customer with respect to each seed can be evaluated using Eq. (29). The concept of seed selection for this paper is shown in Fig.4   Fig. 4. Seed selection for this study Step 2.2: Group customers using the GAP model for solving the fuel delivery.
From Chowmali and Sukto's paper (Chowmali & Sukto, 2020), let Eq. (30) be the objective function and Eq. (11) to Eq. (19) be the constraints. The concept of GAP model for each cluster is shown in Fig.5.
Step 2.3: Each cluster can be solved using the TSP model. The concept of TSP model for each cluster is shown in Fig.6.

Return Sbest End
In phase 2: improvement, details of the calculation procedure are as follows.
Step3: Determine the initial solution of ALNS.
In this paper, the results of FJA in phase1 will be utilized to be the initial solution for ALNS.
Step4: Adjust the weight of the destroy operators and repair operators.
At the beginning, define the weight of all the destroy operators and repair operators as equal to 1. Details of destroy and repair operators will be determined as in Table 1.
Step5: Evaluate the probability of each destroy and repair operator.
The probability and cumulative probability can be calculated using equations 10 and 11 respectively.
where pdi is probability of destroy operator i , and rdi is probability of repair operator i.
In this paper, three destroy operators, namely Random removal (d1), Worst removal (d2) and Related removal (d3), and two repair operators, namely Greedy insertion (r1) and Regret insertion (r2), will be used for the proposed ALNS. In addition, the proposed algorithm can be illustrated as in Figure 7. Step 6.1: Randomize the number of customers based on their degree of destruction and repair.
Step 6.2: Randomize a number between 0 and1 for destroy operators.
Step 6.3: Destroy the solution.
Step 6.4: Randomize a number between 0 and 1 for the repair operators.
Step 6.5: Repair the solution Step7: Determine acceptance and stopping criteria by employing the Simulated Annealing (SA) principle.
The acceptance of the new solution (S') is divided into 4 levels, each of which has an effect on updating the weight of destroy and repair operators. The destroy and repair operators are considered based on weight difference (∆w).Details of proposed algorithm are shown in proposed algorithm in Section 2.3.
Step8: Update the solution.
Step9: Update the weight of the destroy operators and repair operators and check the number of iterations (n =200,000).

Numerical example
In this section, the validity of the proposed FJA-ALNS algorithm is examined with a numerical example. This problem is an MCVRP with a heterogeneous fleet of vehicles for the fuel delivery problem investigated by Chowmali and Sukto (2020). In previous research we introduced the real case of petrol stations, for which a retailer in fuel distribution transports fuel from a depot in the Central region of Thailand to petrol stations in the Northeast of Thailand. The distance between the depot and the petrol station is about 400 kilometers, with a transportation lead time of about 2 days per trip. There are 20 petrol stations/customers (C1, C2,..., C20) and a central depot (D). This research aims to find the optimal transport routes for fuel delivery to minimize the total travel cost, while using a minimum number of vehicles for fuel delivery. Details of each calculation step are shown in sections 4.1 and 4.2.

Initial solution
Chowmali and Sukto (2020) have proposed the FJA to solve four MCVRP problems, including problem 1 (5 nodes), problem 2 (10 nodes), problem 3 (10 nodes) and problem 4 (20 nodes). In this paper, problem 3 was demonstrated in the calculation process using the proposed FJA-ALNS to improve the quality of the FJA solution in a previous study. Details of the calculation are as follows.
In Step1, the vck is the vehicle costs for each candidate vehicle, let vc1, vc2, vc3, vc4 and vc5 be 1705, 1675, 1675, 1600 and 1600 baht/trip respectively. The details of vehicle capacity of candidate multi-compartment vehicles, cv1, cv2, cv3, cv4 and cv5, are shown in Table 1. The demands and number of customers are shown in Table 2. In addition, the actual distance matrix from the candidate seed node i to the petrol station j are shown in Table 3. These parameters were taken into the MILP model for selecting the number and type of vehicles. After solving the problem using LINGO software, the results of the previous study showed that the number and type of selected vehicles were k 3 , k 4 and k 5 .   In Step 2, the calculation procedure of FJA for solving this case is as follows.
(1) Select the seed nodes The clustering model, Eq. (20) to Eq. (28) in Chowmali and Sukto's paper (Chowmali & Sukto, 2020), was utilized to generate the seed nodes. The objective is to minimize the total driving distance of all clusters. After that, the insertion cost of each customer with respect to each seed can be evaluated using Eq. (29). The parameters in Step 1 were used to determine the seeds. Lingo software was used to solve the clustering model for this problem. After solving the clustering model, the selected seeds were C6 with vehicle k3 (Capacity = 45,000), C7 with k4 (Capacity = 40,000) and C15 with vehicle k5 (Capacity = 40,000).
(2) Group customers using the GAP model for solving the fuel delivery.
After Based on solving the GAP model, let Eq. (30) be the objective function and Eq. (11) to Eq. (19) be the constraints, in Chowmali and Sukto's paper (Chowmali & Sukto, 2020). The results of the GAP model are shown in Table 4. The shortest path between all nodes in each cluster was generated using the TSP model. For this case, LINGO software can be used to solve the TSP model as in the literature, and the results are shown in Table 5. The sequence of travel for each group D-9-8-13 -6,-10-11-D Distance for the route1 = 923 km.

D-C15-C12-C2-C1-D
Distance for the route2 = 1025 km. As seen in Table 5, these routes, sequence of travel for each group, were used to be initial solution of ALNS. Details of calculation steps of ALNS are shown in Section 4.2.

Improvement phase using ALNS
In Step 3, the initial solution of ALNS was determined using the initial routes of proposed FJA in phase 1. In step 4, at the beginning, define the weight of all the destroy operators and repair operators as equal to 1. Details of destroy operators and repair operators are determined as in Table 1.  (d1) 1.000 In Step 5, the probabilities of each destroy operator and repair operator were evaluated. At the beginning, the probabilities of each operator were defined in Table 7. In Step 6, the destroy operators and repair operators were selected randomly. The degree of destruction (d) is used to determine the number of customers removed from the solution. Based on trial and error, the proportions of 20%, 30%, 40% and 50% are used to find the optimal proportion for the degree of destruction. The obtained results show that the total distance of the proportion of 30% gave a best result. Three destroy operators, Random Removal, Worst Removal and Related Removal, which are utilized for destruction, and three repair operators, Greedy Insertion and Random Insertion, are used to repair the solution. Due to the case study being a difficult problem that has many variables, segmenting the destroy operators can increase the chance of finding the best solution. In this paper, we divide the destroy operators into small and large problems, determining the degree of destruction in a small problem as 1%-10% of all customers and 11%-50% for a large problem. In Step 7, the Simulated Annealing (SA) principle was used to accept and stop criteria. The parameters were determined for SA, initial temperature of 10,000, reduction rate of 0.0998 and the target value of 500 for all problems.
Step 8: Update the solution. Finally, the weights of the destroy operators and repair operators were Updated and the number of iterations checked (n =200,000). The final results obtained for the proposed FJA-ALNS algorithm were compared with computational results using the proposed FJA and LINGO software, based on the MCVRP model in section 3.1. The experimentation was performed on a computer with the following characteristics: Intel® Core™ i5-4210U processor Dualcore at 1.70 GHz with 8 GB of RAM, and Windows 8.1 operating system. The solutions using the proposed FJA-ALNS algorithm are shown in Table 8.
The comparison of solutions using the FJA and the proposed FJA-ALNS algorithm is shown in Table 9. The comparison of solutions using the ALNS with random initial solutions and the proposed FJA-ALNS algorithm is shown in Table 10. In addition, a comparison of solutions using LINGO software and the proposed FJA-ALNS algorithm is shown in Table 11.  Table 9 Comparison of solutions using the FJA and the proposed FJA-ALNS algorithm b Best known solution Table 10 Comparison of solutions using the ALNS and the proposed FJA-ALNS algorithm b Best known solution As seen in Table 9, the comparison of solutions using the FJA and the proposed FJA-ALNS algorithms for problem 1 (N =5) and problem 2 (N =10) showed that the total distance for each problem was the same value, and the best known solutions for Problem 2 (N =10), Problem3 (N =15) and Problem4 (N =20) were obtained using the proposed FJA-ALNS algorithm. In addition, the computational results using the FJA and FJA-ALNS algorithms for N =20 (the actual case) was the same total distance.
As seen in Table 10, the computational results show that the best known solution for Problem 1 (N=5) and Problem 2 (N=10) were achieved using ALNS with a random initial solution and the proposed FJA-ALNS algorithm, and the best known solutions for Problem 2 (N =10), Problem 3 (N =15) and Problem 4 (N =20) were obtained using the proposed FJA-ALNS algorithm. In addition, the ALNS algorithm gave poor results compared to the proposed FJA-ALNS algorithm because the initial solution was random. These are reasons why the proposed FJA-ALNS algorithm must be used for this case.
As seen in Table 11, the computational results show that the optimal solutions for Problem 1 (N=5) and Problem 2 (N=10) were achieved using LINGO software and the proposed FJA-ALNS algorithm, and the new best solution for Problem 3 (N =15) was obtained using the proposed FJA-ALNS algorithm. In addition, the computational results using the proposed algorithm for all problems obtained the best solutions. These are reasons why we believe that the proposed FJA-ALNS algorithm can be used for other VRPs in real-world problems.
For future research, in order to enhance the validity of the research output further, application of the proposed FJA-ALNS should be tested with more cases. Although only MCVRP in this case is solved by the proposed algorithm, I believe that the proposed algorithm can be adapted to deal with other VRPs in real-world situations.

Conclusion
This research presents a hybrid algorithm is offered to combine the principles of FJA and ALNS for the MCVRP with a heterogeneous fleet of vehicles for fuel delivery problem. In this paper, the proposed FJA-ALNS algorithm was tested with four numerical examples. We first developed and solved the FJA to generate the initial solution. The results of the FJA were utilized to be the initial solution for ALNS. Secondly, the FJA-ALNS algorithm was used to solve the numerical examples, including Problem1 (N=5), Problem2 (N=10), Problem3 (N=15) and Problem4 (N=20). Finally, the results of proposed FJA-ALNS algorithm were compared with Lingo software, FJA and ALNS. In a comparative analysis, the proposed FJA-ALNS algorithm showed potential in solving the MCVRPs for these problems. Based on the results of this paper, the proposed FJA-ALNS algorithm can lead to achieving a more potential result than the existing individual algorithms. The obtained results show that the best known solutions for each problem are achieved using the proposed FJA-ALNS algorithms. The proposed algorithm is effective, and it is applicable for researchers to find a new way for solving the MCVRPs, which differs from other individual heuristics in the literature. In particular, we believe that a variant of FJA can be applied to address other VRPs in real-world situations.
For future research, in order to enhance the validity of the research output further, application of the proposed FJA-ALNS should be tested with more cases. Although only MCVRP in this case are solved by proposed algorithm, I believed that the proposed algorithm can be adapted to deal with the other VRPs in real-world situations.