Keywords

1 Introduction

In recent years, considerable attention has been paid to logistic problems in general and to Vehicle Routing Problems (VRPs) in particular. Different methodologies have been adopted to “solve” that kind of problems. Among the proposed methodologies, heuristic algorithms are particularly much studied. Researchers in the fields of combinatorial optimization are trying their best to improve the solution quality and the computing time of previously proposed heuristics, especially when it comes to solve difficult problems as VRPs.

The present work aims at analyzing the impact of heuristic hybridization on VRPs. More specifically, hybridizations of the Iterated Local Search heuristic (ILS) with other single-solution based heuristics are considered.

We recall that ILS principle is to improve a given initial solution by alternating local search (LS) and perturbation procedures. The role of a LS is to improve a given solution by performing a set of small modifications (or moves) to the studied solution. One can say that the LS visits the neighborhood of the studied solution and selects the best neighboring solution according to some criterion. After some iterations, the LS is no longer able produce better quality solutions using the same set of moves. We say that the heuristic is trapped in a local optimum.

To help LS to escape local optima, ILS provides a perturbation procedure. The latter procedure performs some changes to the current local optimum, producing thereby a new starting solution for the LS. The quality of that new starting solution is generally not as good as the quality of the local optimum. That decrease in the solution quality induced by the perturbation procedure allows the LS to visit a larger search space area.

In the present paper, we attempt to improve a simple ILS heuristic by modifying its local search and perturbation procedures. Several ILS hybridizations are implemented based on several simple LS heuristics, a Variable Neighborhood Descent with Random neighborhood ordering (RVND) and a Large Neighborhood Search heuristic (LNS).

To assess the performance of the studied heuristics, the latter are tested on a VRP variant called Capacitated Profitable Tour Problem (CPTP).

The CPTP has been introduced by Archetti et al. [1] in order to deal with empty returns, that trucks are facing after performing delivery operations (see [1] for more details). The main difference between the CPTP and the classical VRP is the relaxation of the constraints imposing a visit for each customer. In addition, in a CPTP a profit is assigned to each customer and the objective is to maximize the difference between collected profits and routing costs. The number of available vehicles in a CPTP is supposed to be finite. These vehicles are homogeneous with a fixed capacity bound. Each customer in a CPTP has a given pickup demand that must be entirely fulffiled if the customer is visited. Furthermore, if a customer is included in the solution, its demand has to be satisfied by performing a single visit.

The rest of the paper is organized as follows. Section 2 presents some previous works from the literature dealing with the application of ILS to combinatorial optimization problems and VRPs. Hybridizations of ILS with other heuristics are highlighted. A CPTP literature review is also given in that Section. Section 3 describes the proposed approaches. Section 4 discusses the computational results. Finally, a conclusion is given in Sect. 5.

2 Literature Review

The present section is divided into two subsections. In the first subsection, we provide the literature review of the Iterated Local Search (ILS) heuristic. While the second subsection is devoted to the CPTP heuristic approaches proposed in the literature.

2.1 Iterated Local Search Heuristic

According to Lourenço et al. [2], ILS is an efficient heuristic that has several desirable features of a metaheuristic. The main features are the simplicity, the high effectiveness, the robustness and the ease and the malleability of implementation (several implementation choices are left to the developer). The authors also state that ILS effectiveness depends on the choice of the used modules: local search, perturbation procedure and acceptance criterion.

In the literature, several researchers attempted the resolution of combinatorial optimization problems using hybridization of ILS with other heuristics. For instance, Martins et al. [3] developed a Variable Neighborhood Descent (VND) combined with an ILS for the Routing and Wavelength Assignment problem. In that paper, VND plays the role of the local search procedure and uses three neighborhood structures. When VND is blocked, ILS perturbs the so far obtained solution and the process iterates until a stopping criterion is met.

Martins et al. [4] implemented a hybrid ILS and RVND heuristic for the Cell Formation Problem. The proposed RVND uses three neighborhood structures. In addition, three perturbation procedures are used in ILS.

Many researchers successfully applied hybrid ILS heuristics to VRP variants. For example, Chen et al. [5] developed a hybridization of ILS with VND for the Capacitated Vehicle Routing Problem. VND uses two inter- and two intra route(s) operators consisting of intra-route relocation, 2-opt, inter-routes swap and 2-opt*. The perturbation phase is performed using the cross-exchange operator.

Subramanian et al. [6] proposed a parallel algorithm combining an ILS with a RVND for solving the Vehicle Routing Problem with Simultaneous Pick-up and Delivery services. Five intra- and seven inter-route(s) neighborhood structures are given together with three perturbation mechanisms.

Subramanian et al. [7] implemented a hybrid algorithm combining an exact method with ILS and RVND for a class of VRPs with heterogeneous fleet. The ILS and RVND heuristics are based on those presented in [6].

Assis et al. [8] presented a hybrid ILS using RVND in the local search phase. The proposed RVND uses six inter- and six intra-route(s) neighborhood structures. That hybrid approach is tested on the multiobjective vehicle routing problem with fixed delivery and optional collections.

Another hybridization of ILS is implemented by Subramanian and Battarra [9] to solve the Travelling Salesman Problem with Pickups and Deliveries. The authors hybridized ILS with RVND. In RVND, four neighborhood structures are given.

Hernández-Pérez et al. [10] studied a hybridization of ILS with VND. The approach is applied to the multi-commodity Pickup-and-Delivery Traveling Salesman Problem. The approach is tested with up to six neighborhood structures and a combination of three shaking procedures.

Todosijević et al. [11] developed another hybrid approach using both ILS and VND for the Swap-Body Vehicle Routing Problem. The used neighborhood structures are 1-Opt, 2-Opt, Or-Opt, relocate and exchange. The shaking procedure is based on customer relocation.

The ILS and the VND heuristics also provide good quality solutions for other variants of VRPs see [12,13,14]. In addition, the two heuristics perform well on some Vehicle Routing Problems with Profits (see [15]). Furthermore, several versions of VND are used to solve different variants of transportation problems (see [16,17,18]).

As one can see from the literature review, several papers use combinations of ILS and RVND for solving VRP variants. However, to the best of our knowledge, only one work has been addressed using a hybridization of ILS with LNS [19]. ILS and LNS heuristics are nevertheless quite effective in solving VRP variants as well as other transportation problems. For ILS, we refer the reader to the papers [20,21,22,23], and for LNS, we refer the reader to the papers [24,25,26,27,28].

2.2 Capacitated Profitable Tour Problem

Despite its importance, the CPTP has not received a lot of attention from researcher. Archetti et al. [1] introduced the CPTP and proposed three methodologies to solve that problem. The proposed methodologies are the Tabu Feasible (TF), the Tabu Admissible (TA) and the Variable Neighborhood Search (VNS) heuristics. Both TF and TA algorithms use two inter-route operators. The first operator is called 1-move. 1-move either relocates a given customer in a different route or deletes that customer completely from the solution. The second movement is called swap-move. Swap-move either exchanges the positions of two given customers from two different routes or deletes a customer and replaces it by an unrouted one.

In order to deal with infeasible solutions obtained by the TA algorithm, Archetti et al. proposed a repair heuristic based on series of 1-move. In addition, the authors evaluated the solutions according to several criteria including the difference between total profit and total distance, the number of routes, the route duration and the maximum constraint violation.

The VNS algorithm uses the TF algorithm with a small iteration number, which allows the visit of a larger area within the search space.

Some researchers proposed exact methods for the CPTP. As the present work deals with heuristic approaches, we do not describe those exact methods.

3 The Proposed Methodology

In the present section, we describe the implemented construction heuristic and the studied approaches: ILS, LNS and RVND. We also describe the tested hybridizations.

Note that a preliminary work dealing with ILS hybridization has been presented in [29]. The present work extends the one proposed in [29] by providing: (i) other heuristic approaches combining ILS with other neighborhood operators, (ii) a hybridization of ILS with both LNS and a neighborhood operator, (iii) a detailed comparison between the use of the basic greedy heuristic and a random insertion heuristic within the perturbation procedure, (iv) detailed results of the hybrid heuristic combining ILS, RVND and LNS compared with Archetti et al. [1] results.

3.1 Construction Heuristic

The implemented construction heuristic is a sequential heuristic based on the I1 heuristic of Solomon [30]. I1 was first developed for the Vehicle Routing Problem with Time Window. The pseudo-code of the construction heuristic is displayed in Algorithm 1.

figure a

An empty route is considered in the first iteration of the construction heuristic. That empty route is first filled with a seed customer which is randomly chosen. After that, the heuristic evaluates the insertion of the remaining unrouted customers into the route. The best insertion position of each unrouted customer u between customers i and j is selected. This is done according to a given criterion denoted \(cr_1(i,u,j)\). Among all the best insertion positions, the construction heuristic chooses the one that optimizes the given criterion. That process iterates until no customer can be inserted into the current route. If some customers are still unrouted, a new route is generated and the process is repeated. The heuristic stops either if there are no more unrouted customers or if the number of generated routes exceeds the vehicle number.

To describe \(cr_1(i,u,j)\), let us consider \((i_0, i_1, \ldots , i_h)\) as the current route where \(i_{\rho }\) stands for the \(\rho ^{th}\) position in the route if \(\rho \notin \left\{ 0,h\right\} \), \(i_{\rho }\) stands for the depot otherwise (\(\rho \in \left\{ 0,h\right\} \)). The best insertion position of customer u within the current route is selected according to Expressions (1)–(4) (Source [29]). In these Equations \(c_{ij}\) refers to the distance between customers i and j, \(pr_u\) refers to customer u profit, \(\alpha _1, \alpha _2 \ge 0\) with \(\alpha _1 + \alpha _2 =1\) are two parameters set by the user.

$$\begin{aligned}&cr_1(i(u),u,j(u)) = \max \left\{ cr_1(i_{\rho -1},u,i_{\rho }), \rho =1, \ldots , h\right\} ;\ {\text {(Source [29])}} \end{aligned}$$
(1)
$$\begin{aligned}&cr_1(i,u,j) = \alpha _1 \cdot cr_{11}(i,u,j) - \alpha _2 \cdot cr_{12}(i,u,j); \ {\text {(Source [29])}} \end{aligned}$$
(2)
$$\begin{aligned}&cr_{11}(i,u,j) = pr_u;\ {\text {(Source [29])}} \end{aligned}$$
(3)
$$\begin{aligned}&cr_{12}(i,u,j)= c_{iu}+c_{uj}- c_{ij}.\ {\text {(Source [29])}} \end{aligned}$$
(4)

The Eqs. (1)–(4) have been already presented in [29] on page 117, Sect. 2.1.

Note that different values of parameters \(\alpha _1\) et \(\alpha _2\) can lead to different solutions for the CPTP.

3.2 Iterated Local Search

ILS principle is described in Sect. 1. The pseudo-code of the ILS heuristic used in the present paper is given in Algorithm 2. ILS starts from an initial solution given by the construction heuristic presented in Sect. 3.1. Then a local search procedure is executed for a given number of iterations. If the obtained solution is better than the current best one, the best solution is replaced by the obtained one. The solution is, after that, perturbed using a perturbation procedure. The process is repeated until a stopping criterion is met. In the present work, the stopping criterion stands for the completion of a given number of iterations without improvement.

figure b

Local Search. As mentioned by Talbi [31], any single-solution based metaheuristic can be used in the local search phase of an ILS.

In the present work, seven basic ILS versions are first tested. In each ILS basic version, a different neighborhood structure (or neighborhood operator) is used. The implemented neighborhood operators consist of four intra- and three inter-route(s) operators. The latter are described in what follows. Examples of neighborhood movements for each operator are given in Fig. 1. Figure 1 was first given in [29] on page 118.

2-Opt introduces two new arcs and deletes two other arcs in a given route by connecting two customers k and l and reversing the path between those customers. In Fig. 1, the arcs (1, 4) and (2, 5) are deleted, the arcs (1, 2) and (4, 5) are added, customers 1 and 2 are connected and the path \((4-3-2)\) is reversed. For maintaining the route connectivity, customers 4 and 5 are connected.

2-Opt* divides two given routes into four segments: initial and final segments. Then, the operator connects each first segment from a route with a second segment from the other route. In Fig. 1, the first route \((0-1-2-3-0)\) is disconnected into a first segment \((0-1)\) and a second segment \((2-3-0)\). The second route \((0-4-5-6-0)\) is disconnected into a first segment \((0-4-5)\) and a second segment \((6-0)\). After that, \((0-1)\) is connected to \((6-0)\) and \((0-4-5)\) is connected to \((2-3-0)\).

Intra-route 1-0 Exchange relocates a customer l into a position k within a same route. In Fig. 1, customer 2, which is in the \(5^{th}\) position of the route, is relocated in the second position within the same route.

Inter-routes 1-0 Exchange relocates a customer l into a position k in a different route. In Fig. 1, customer 3, which is in the third position of the first route, is relocated in the \(4^{th}\) position of the second route.

Intra-route 1-1 Exchange exchanges the positions of two customers within a same route. In Fig. 1, customer 2 is relocated at the position of customer 5, and customer 5 is relocated at the position of customer 2. No path is reversed.

Inter-routes 1-1 Exchange exchanges the positions of two customers from two different routes. In Fig. 1, customer 3 is relocated at the position of customer 6, and customer 6 is relocated at the position of customer 3.

Or-Opt relocates two consecutive customers (or an arc) in a different position within a same route. In Fig. 1, the arc (1, 2) is relocated between the depot and customer 3.

Fig. 1.
figure 1

(Source [29]).

Illustration of neighborhood movements in the RVND heuristic

Each combination of ILS with a neighborhood operator is denoted by ILS_NeiOp where NeiOp stands for the used neighborhood operator. Thus, we have: ILS_2-Opt, ILS_2-Opt*, ILS_1-0 Exchange-intra, ILS_1-0 Exchange-inter, ILS_1-1 Exchange-intra, ILS_1-1 Exchange-inter and ILS_Or-Opt.

Perturbation Mechanism. The perturbation procedure destroys the solution obtained by the local search procedure to escape local optima. To do so, the random removal operator described by Pisinger and Ropke [32] is used. Before re-applying the local search procedure, some customers may be added to the obtained solution using the basic greedy heuristic described by the same authors [32].

3.3 Hybrid Iterated Local Search Heuristic

In the present work, several hybridization of ILS are proposed. They are described in what follows.

Hybrid ILS_LNS Heuristic. In [29], several versions of the LNS are tested. The latter versions use a unique removal and a unique insertion operator. All the removal/insertion operators proposed by Pisinger and Ropke [32] are tested using the CPTP constraints and objective function. Each implemented LNS version consists of a different couple of removal/insertion operators.

Each LNS version starts from a solution generated by the construction heuristic. At each iteration, LNS deletes a given number of customers using its removal operator. Then, LNS inserts a set of customers using its insertion operator. LNS stops when a given number of iterations without improvement is reached.

After an experimental study, we choose the related removal and the regret heuristic with a regret number equal to 4 as the couple of removal/insertion operators used in LNS.

For more information regarding the selection of the removal/insertion couple, we refer the reader to [29].

The hybrid ILS_LNS heuristic is a multi-start heuristic that executes, at each iteration, an ILS heuristic using LNS as a local search procedure. The initial solutions are obtained by iteratively modifying parameter values of the construction heuristic described in Sect. 3.1. All the possible combinations of \(\alpha _1\) and \(\alpha _2\) parameter values are considered. ILS_LNS uses the same perturbation procedure as the one described in Sect. 3.2.

As defined in Sect. 3.2, ILS stopping criterion consists in the completion of a given number of iterations without improvement.

ILS_LNS stops when all combinations of \(\alpha _1\) and \(\alpha _2\) parameter values are tested.

Hybrid ILS_RVND Heuristic. The RVND heuristic uses all the seven operators described in Sect. 3.2. At each iteration of RVND, the neighborhood operators are chosen in a random way. Actually, all the operators are put in a list of available operators, and each time an operator is used, the heuristic deletes that operator from the list. RVND stops when the list of available operators is empty. Hence, each operator is executed only once.

The hybrid ILS_RVND heuristic differs from the ILS_LNS heuristic (presented above) in the use of RVND instead of LNS in the local search phase.

Hybrid LNS_RVND Heuristic. LNS_RVND is not a multi-start heuristic. This hybrid heuristic begins with an initial solution obtained by the construction heuristic given in Sect. 3.1 using random values for parameters \(\alpha _1\) and \(\alpha _2\). Then, the LNS heuristic is run until reaching a given number of iterations. The obtained solution is possibly improved using the RVND heuristic with some probability. After that, the LNS_RVND heuristic goes back again to LNS and that process iterates until reaching a given number of iterations without improvement.

Hybrid ILS_NeiOp_LNS Heuristic. ILS_NeiOp_LNS is a multi-start heuristic that hybridizes ILS_NeiOp with LNS. NeiOp is defined in a similar manner as described in Sect. 3.2.

The neighborhood operator used in this heuristic is the one that gives the best results with respect to other neighborhood operators when combined to ILS.

In ILS_NeiOp_LNS, the construction heuristic is first run to generate different initial solutions at each iteration. Then, for each initial solution, an ILS heuristic is run until reaching a given number of iterations without improvement. In ILS, a LNS heuristic is executed followed by the selected neighborhood operator. The combination of LNS with the selected neighborhood operator plays the role of the local search procedure in ILS. This combination of LNS with the neighborhood operator is repeated for a given number of iterations. When the local search stops, the perturbation procedure is run. The latter procedure is the same as the one presented in Sect. 3.2. The pseudo-code of ILS_NeiOp_LNS is given in Algorithm 3.

figure c

Hybrid ILS_RVND_LNS Heuristic. This hybrid heuristic is quite similar to the one presented in Sect. 3.3. The only difference is that ILS_RVND_LNS uses RVND instead of the neighborhood operator after LNS.

The pseudo-code of ILS_RVND_LNS is given in Algorithm 4.

figure d

4 Computational Results

In the present Section, we begin by describing the CPTP instances proposed in the literature and studied in the present work. After that, we analyze the results of each proposed approach and we evaluate the impact of the hybridization. Finally, the approach that provides the best results is compared to some CPTP heuristics from the literature.

In order to quickly determine the best approach among the proposed ones, each approach is executed using a relatively small number of iterations. However, more iterations are used for the comparison between the best approach with the literature ones.

Note that some of the experimental results/heuristic tuning details are not given in the present work as they have already been published in the conference paper [29]. Those experimental results/heuristic tuning details concern the couple of operators chosen for LNS, the comparison between LNS and ILS_LNS and the tuning of both ILS_RVND and LNS_RVND.

The new experimentations are implemented in C and performed on a personal laptop with an Intel(R) Core (TM) i5-4210U CPU @ 1.70 GHz with 6.00 Gb RAM and 64-bit operating system.

Due to the random aspect of the approaches, they all are executed 3 times for each instance. We report the best encountered solutions in terms of percentage deviation from the best solutions presented by Archetti et al. [1]. A percentage deviation (gap) of a heuristic a from a heuristic b is computed according to the following Expression

$$gap = 100\cdot \frac{z_b-z_a}{z_b}$$

where \(z_a\) and \(z_{b}\) are the objective function values obtained by heuristics a and b respectively.

4.1 CPTP Instances

The CPTP instances studied in the present work were proposed by Archetti et al. [1]. The authors modified the Capacitated Vehicle Routing Problem instances (CVRP) described by Christofides et al. [33] with 50 to 199 customers. Archetti et al. [1] generated three set of instances from the CVRP instances by varying the capacity bounds and the number of vehicles.

The first set of CPTP instances consists of the original 10 CVRP instances in which each customer i has a profit \(pr_i\) computed following the Expression \(pr_i = (0.5 + h)\cdot d_i\), where \(d_i\) is the demand of i and h is randomly chosen from [0, 1].

The second set of CPTP instances consists of 90 different instances obtained by modifying the first set of instances. Actually, Archetti et al. [1] consider the cases \(Q = 50\), \(Q = 75\) and \(Q = 100\), where Q stands for to the capacity bound. For each case, three instances are generated using different vehicle numbers. The latter numbers are chosen from the set \(\left\{ 2, 3, 4\right\} \). In the second set of CPTP instances, the profits are computed in the same manner as described for the first set.

The third set of CPTP instances consists of 30 different instances obtained by modifying the first set of instances. Archetti et al. [1] maintain the same capacity bounds as those presented for the CVRP. However, they consider three cases for the vehicle numbers. The latter are chosen from the set \(\left\{ 2, 3, 4\right\} \).

A total of 130 CPTP instances are thus proposed by Archetti et al. [1]. As instance types p03 and p08 of Archetti et al. [1] are exactly the same, we do not consider instances of type p03. Hence we obtain a total of 117 CPTP instances.

4.2 Study of Basic ILS Heuristics

As said in Sect. 3.2, seven basic version of ILS are tested. Each version differs from the others in the used neighborhood operator. The tested versions are ILS_2-Opt, ILS_2-Opt*, ILS_1-0 Exchange-intra, ILS_1-0 Exchange-inter, ILS_1-1 Exchange-intra, ILS_1-1 Exchange-inter and ILS_Or-Opt.

As these basic ILS heuristics are quite fast, we decide to fix their number of iterations without improvement in ILS to 500 instead of 50.

Table 1 displays the obtained results in terms of average gap (among all instances) from Archetti et al. [1] results. That Table also displays the average computing time (among all instances) in seconds (CPU).

Table 1. Comparison between basic ILS heuristics.

The results of Table 1 show that the 2-Opt* operator performs better than the other operators in terms of solution quality and computing time.

Hence, in the reminder of the present work, the basic ILS heuristic will refer to the basic ILS heuristic using the 2-Opt* operator. That heuristic will be compared to the other implemented heuristics.

4.3 Study of ILS_LNS Heuristic

Several tests were performed in [29] to determine the best removal/insertion couple of operators of LNS. In addition, LNS was compared with ILS_LNS. ILS_LNS was able to reach better quality solutions and was faster than LNS.

In the present Section, we compare the results of ILS_LNS using the selected couple of removal/insertion operators (Source [29]) with those of the basic ILS heuristic presented in Sect. 4.2.

ILS_LNS is run until 50 iterations without improvement are reached. We remarked that, with only 50 iterations, ILS_LNS is more time consuming than the above studied heuristics using 500 iterations. Hence, we maintain ILS_LNS iteration number to 50.

As one can see from Table 2, the average gap of ILS_2-Opt* is slightly better that the average gap of ILS_LNS. Regarding the average computing time, ILS_LNS appears to be slower than ILS_2-Opt*.

Table 2. Comparison between ILS_LNS and ILS_2-Opt*.

4.4 Study of ILS_RVND Heuristic

As the basic ILS, ILS_RVND is very fast in comparison with the ILS_LNS heuristic. Hence, we decide to fix the number of iterations without improvement in the ILS embedded in ILS_RVND to 500. Results of ILS_RVND using 50 iterations are provided in [29].

Table 3 compares the results of ILS_RVND (Source [29]) with both ILS_LNS (Source [29]) and ILS_2-Opt*. We remark that the average gaps of ILS_2-Opt* and ILS_RVND are quite similar. In addition, the average computing time of ILS_RVND is slightly better than the average computing time of ILS_2-Opt*. We think that difference between the two heuristics can be more evident if the iteration number increases and/or if the heuristics are hybridized with other ones.

Table 3. Comparison between ILS_LNS, ILS_2-Opt* and ILS_RVND.

4.5 Study of LNS_RVND Heuristic

LNS_RVND is described in Sect. 3.3. The results related to this hybrid heuristic are presented in [29].

We remark that the results of LNS_RVND (Source [29]) are quite “disappointing” in comparison with other approaches. Indeed, the heuristic obtains the worst average gap and computing time. That can be seen in Table 4.

From the results displayed in Table 4, we conclude that the multi-start ILS heuristic has a considerable impact on the solution quality and the speed of finding solutions.

Table 4. Comparison between ILS_LNS, ILS_2-Opt*, ILS_RVND and LNS_RVND.

4.6 Study of ILS_2-Opt*_LNS Heuristic

ILS_2-Opt*_LNS is described in Sect. 3.3. In order to have a good balance between solution quality and computing time, the 2-Opt*_LNS heuristic is repeated 7 times at each iteration of ILS. The number of iterations without improvement of the embedded ILS heuristic maxOcc is set to 200. While the number of iterations without improvement of LNS \(maxOcc_{LNS}\) is fixed to 20.

Table 5 presents the results of ILS_2-Opt*_LNS compared with those of the previously studied heuristics. We remark that ILS_2-Opt*_LNS is able to reach the best average gap in comparison with the other heuristics. ILS_2-Opt*_LNS seems to be relatively time consuming. However, the computing time of this heuristic is still reasonable, especially if we take the solution quality into account.

Table 5. Comparison between ILS_2-Opt*_LNS and the previously studied heuristics.

4.7 Study of ILS_RVND_LNS Heuristic

ILS_RVND_LNS is described in Sect. 3.3. As in ILS_2-Opt*_LNS, the local search phase of ILS_RVND_LNS, which consists in the RVND_LNS heuristic, is repeated 7 times at each iteration of ILS. The numbers of iterations without improvement in the ILS heuristic maxOcc and in the LNS heuristic \(maxOcc_{LNS}\) are set to 200 and 20 respectively.

Note that, contrary to the LNS_RVND studied in Sect. 3.3, the combination of LNS and RVND involved in ILS_RVND_LNS uses the RVND heuristic with a probability equal to 1. That modification is motivated by the fact that ILS_RVND gives good quality solutions in comparison with both ILS_LNS and LNS_RVND.

Table 6 compares the results of ILS_RVND_LNS (Source [29]) with those of the other approaches presented in the present work. From that Table, we remark thatILS_RVND_LNS provides the best average gap without being too time consuming. When comparing ILS_RVND_LNS with ILS_2-Opt*_LNS, we can see that ILS_RVND_LNS is also better in terms of average results (gaps and computing time). That confims our assumption that the use of RVND instead of a neighborhood operator in the ILS heuristic can lead to better results when using more iterations and/or when ILS is hybridized with other heuristics (more than two heuristics are involved).

We also remark that better average gaps are obtained when the heuristics are hybridized. However, that hybridizations can lead to an increase of the computing time. We think that the hybridized heuristics are more time consuming because they are first trapped in local optima then they extract themselves from these optima. That process is repeated several times. On the other hand, the basic heuristic (with a basic level of hybridization or no hybridization at all) are quickly trapped in local optima.

Table 6. Comparison between ILS_RVND_LNS and the other proposed heuristics.

4.8 Study of the Perturbation Procedure

In all the studied approaches described so far, we use the random removal and the basic greedy heuristic (both described in [32]).

Initially, we wanted to use the random removal combined to a random insertion heuristic in order to change the characteristics of the solution after a local search is performed. We thought that the two random heuristics can lead to a more diversified search and thus, to better results.

In practice, we found that the use of the random removal combined to a random insertion introduces too much diversification. That diversification could not be correctly handled by the local search procedure. Hence, we decided to use the random removal combined with the basic greedy heuristic instead.

Figure 2 describes the gaps obtained by both versions of the perturbation procedure: with basic greedy and the random insertion. The tests are performed using ILS_RVND_LNS.

In Fig. 2, the gap for each instance is shown. From that Figure, we can see that the perturbation using the basic greedy generally provides better gaps. Actually the random insertion outperforms basic greedy in only 4 cases. The average computing time reached when using basic greedy is slightly worse that the average computing time reached when using the random insertion. Indeed, the farmer is equal to 37.85 seconds while the latter is equal to 29.52 seconds.

Fig. 2.
figure 2

Comparison between the use of the basic greedy operator and the random insertion for the perturbation procedure.

4.9 Comparison of ILS_RVND_LNS with Other Approaches from the Literature

ILS_RVND_LNS gives the best results among all the implemented approaches. Therefore, it is compared with other approaches from the literature.

ILS_RVND_LNS is compared with TF, TA and VNS heuristics proposed by Archetti et al. [1].

In order to have relatively comparable results for the compared approaches (in terms of solution quality and computing time), we execute ILS_RVND_LNS 20 times at each run.

Table 7 provides the detailed results. In that Table, ins stands for the instance name, where an instance \(pXY-m-Q\) refers to the original instance pXY of the CVRP in which the vehicle number is fixed to m and the capacity bound is set to Q. n stands for the customer number. VNS, TF, TA and ILS_RVND_LNS refer to the objective values obtained by VNS, TF, TA and ILS_RVND_LNS respectively. CPU is the computing time of ILS_RVND_LNS is seconds. CPU(min) stands for the average computing time in minutes of all the heuristics among all the instances.

Table 7. Detailed results for CPTP instances.

Note that the detailed computing time of VNS, TF and TA can be found in [1].

From Table 7, we remark that ILS_RVND_LNS provides 6 new best solutions. In addition, the heuristic reaches the literature solutions in 55 cases. ILS_RVND_LNS is not able to reach the literature solutions in 56 cases. However, the average gap of ILS_RVND_LNS is relatively small. Indeed, it is equal to \(0.66\%\).

The computing time of ILS_RVND_LNS is reasonable.

5 Conclusion

In the present work, we propose a set of basic and hybrid heuristic approaches based on the ILS heuristic. The basic heuristics combine ILS with seven neighborhood operators which results in seven basic ILS heuristics. The hybrid ILS heuristics use either LNS or RVND, or a combination of LNS and a neighborhood operator, or a combination of LNS and RVND. A simple heuristic using only LNS and RVND is also provided to highlight the importance of the ILS heuristic. In addition, two perturbation procedures are tested.

The proposed approaches are evaluated on a variant of the Vehicle Routing Problem called Capacitated Profitable Tour Problem. The obtained results show that the more ILS is hybridized the better are the results.

The best implemented approach in term of average results is compared with other approaches from the literature. The experimentations show that the proposed heuristic is able to provide competitive results for the Capacitated Profitable Tour Problem.

A future work may consists in evaluating the performance of the proposed hybrid heuristic on other variants of the Vehicle Routing Problem.