Aghezzaf and Fahim SpringerPlus (2016)5:1781 DOI 10.1186/s40064-016-3440-6
Open Access
RESEARCH
Iterated local search algorithm for solving the orienteering problem with soft time windows Brahim Aghezzaf and Hassan El Fahim* *Correspondence:
[email protected] Laboratoire Informatique et Aide à la Décision (LIAD), Département de Mathématiques et Informatique, Faculté des Sciences Aïn Chock, Université Hassan II de Casablanca, Km 8 Route d’El Jadida, 5366 Maarif, 20100 Casablanca, Morocco
Abstract In this paper we study the orienteering problem with time windows (OPTW) and the impact of relaxing the time windows on the profit collected by the vehicle. The way of relaxing time windows adopted in the orienteering problem with soft time windows (OPSTW) that we study in this research is a late service relaxation that allows linearly penalized late services to customers. We solve this problem heuristically by considering a hybrid iterated local search. The results of the computational study show that the proposed approach is able to achieve promising solutions on the OPTW test instances available in the literature, one new best solution is found. On the newly generated test instances of the OPSTW, the results show that the profit collected by the OPSTW is better than the profit collected by the OPTW. Keywords: Combinatorial optimization, Orienteering problem, Soft time window, Iterated local search, Variable neighborhood search
Background In orienteering problem (OP) a set of potential customers is given; the service for these customers is optional during the current planning time horizon since the travel cost of the route is limited. The travel cost is often expressed as the travel time or the travel distance. Thus, a positive value called profit is associated with every customer making its visit more or less attractive. The name of this routing problem originates from a game in which competitors have to visit a set of control points in a given area. If the control point is visited, the competitor gets a profit. The winner of the game is the competitor who collects maximum profits and gets to the end point within a prescribed amount of time. As a routing problem, the OP consists in finding the route visiting a subset of customers that maximizes the total collected profit while satisfying the maximum duration constraint. The OP is also known in the literature as the Selective Traveling Salesman Problem (Thomadsen and Stidsen 2003), the Maximum Collection Problem (Butt and Cavalier 1994) and the Bank Robber Problem (Awerbuch et al. 1998). Few vehicle routing problems have such applicability as OP. This problem arises in a variety of applications including design of tourist trips to maximize the value of the visited attractions (Vansteenwegen and Oudheusden 2007), recruiting of athletes from high schools for a college team (Butt and Cavalier 1994), delivery of home heating fuel where © 2016 The Author(s). This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Aghezzaf and Fahim SpringerPlus (2016)5:1781
the urgency of a customer for fuel is treated as a profit (Golden et al. 1984), routing of oil tankers to serve ships at different locations (Golden et al. 1987) and reverse logistics problem of a firm that aims to collect used products from its dealers (Aras et al. 2011). The OP is a well-studied combinatorial optimization problem that was first presented and heuristically solved by Tsiligirides (1984). Several heuristics and metaheuristics were proposed for the solution of the OP [the reader is referred for example to the papers by Tasgetiren (2001), Ramesh and Brown (1991) and Gendreau et al. (1998)]. In the time windows version of the OP called the orienteering problem with time windows (OPTW), customers have hard time windows and service times. In hard time windows, arriving at customer later than latest time of its time window is strictly forbidden. A waiting is incurred if the vehicle reaches to a customer before its earliest time window. In OPTW, the objective is designing the route that maximizes the total collected profit while satisfying the time limit duration and the hard time windows constraints. In recent years there has been considerable interest for the OPTW which has led to a significant body of literature. The authors in Righini and Salani (2009) proposed a bidirectional dynamic programming algorithm for solving the OPTW to optimality. They use a technique named decremental state space relaxation in which the dynamic programming algorithm takes advantage of a state space relaxation. The authors in Duque et al. (2015) proposed an exact algorithm based on pulse framework for solving the OPTW to optimality. Most studies have focused on designing heuristic algorithms, several heuristics and metaheuristics were then proposed for the solution of the OPTW [the reader is referred for example to the papers by Vansteenwegen et al. (2009), Lin and Yu (2012), Labadie et al. (2011, 2012), Montemanni and Gambardella (2009), Tunchan (2014), Gunawan et al. (2015) and Lahyani et al. (2016)]. For a recent survey on OP and OPTW the reader is referred to the paper by Gunawan et al. (2016). Problem related to the problem studied in this research is the vehicle routing problem with soft time windows (VRPSTW). In many real-life problems, some or all customers’ time windows are not so strict that can be violated with appropriate penalties. Such kind of time constraint is called soft time window. In VRPSTW, vehicles are allowed to serve customers before the earliest and/or after the latest time windows bounds. This type of time windows is useful for the dispatcher when: •• The number of routes needed for hard time windows exceeds the number of available vehicles. •• A study of cost-service tradeoffs is required. •• The dispatcher has qualitative information regarding the relative importance of hard time windows across customers. Besides, relaxing time windows can result in lower total costs without hurting customers’ satisfaction significantly. In the literature, there are different ways of relaxing time windows which lead to different variants of VRPSTW. •• If a vehicle arrives before the earliest bound of the time window, it waits as in hard time windows case. However, late service is allowed if an appropriate penalty is paid. The authors in Taillard et al. (1997) proposed a tabu search heuristic for this variant.
Page 2 of 36
Aghezzaf and Fahim SpringerPlus (2016)5:1781
•• Both early and late services are allowed by paying appropriate penalties. The authors in Koskosidis and Solomon (1992) proposed an optimization-based heuristic for this variant. •• Both early and late services are allowed as in the second variant. However, the maximum allowable violation of the time windows and the maximum waiting time allowed are limited. This is the variant studied by Chiang and Russell (2004) and Balakrishnan (1993). The authors in Balakrishnan (1993) described three heuristics for solving this variant. While the authors in Chiang and Russell (2004) proposed a tabu search heuristic to deal with this variant. For more detail about these relaxation schemes and the algorithms proposed in the literature to solving them, the reader is referred to the paper by Vidal et al. (2015). Contributions
We observed when solving orienteering problems with time windows as in Aghezzaf and Fahim (2015) that the gap between the total travel time of a route and the travel time limit is significant especially on instances with long scheduling horizon. Thus, we have decided to manage this gap by allowing relaxation of time windows in order to improve the profit collected by the vehicle. Furthermore, there are many practical reasons for allowing violation of time windows: •• Many applications do not require hard time windows. •• In many cases travel times cannot be accurately known. •• Customers may be unwilling to set precise time windows in advance and simply prefer the flexibility to alter their delivery requests. The contribution of this paper is twofold: •• We introduce and define a new routing denoted the orienteering problem with soft time windows (OPSTW). To the best of our knowledge, this is the first study dealing with orienteering problem with soft time windows. In this routing problem, late service is allowed if an appropriate penalty is paid. In this relaxation scheme, we are placing restrictions on both the penalty payable and the waiting time. We think that OPSTW solutions can result in routes visiting a significant number of potential customers without hurting customers’ satisfaction significantly. Furthermore, soft time windows can provide a workable plan of action for decision makers when hard time windows are not required or when it is not possible to visit all customers during the current planning time horizon which is the case for the OPTW. •• We develop a hybrid algorithm that combines an iterated local search with a variable neighborhood search for this specific problem. We also apply it to standard instances and compare its performance to that of other algorithms proposed in the literature for the OPTW. The rest of this paper includes four additional sections. “Mathematical model” section defines the mathematical notation and formulation of OPSTW. “Solution algorithm” section describes the proposed hybrid algorithm. “Computational results” section presents
Page 3 of 36
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Page 4 of 36
the computational results and compares our algorithm against published results both with regard to solution quality and computational time. The last section is devoted to the conclusions.
Mathematical model The OPTW studied in this paper can be described as follows: let G = (V , E) be a complete graph, where V = {0, 1, . . . , n} is a vertex set and E = {(i, j) ∈ V 2 i � = j} is an arc set. Vertex 0 denotes a depot at which the vehicle starts and ends its tour. The set of vertices C = {1, . . . , n} specify the location of a set of n customers. Each vertex i ∈ V has an associated profit pi ( p0 = 0), a service time Si (S0 = 0) and a time window [ei , li ] which is assumed to be hard. Each arc (i, j) ∈ E has an associated cost tij which represents the time required to travel from vertex i to vertex j. The cost tij is defined as the Euclidean distance between the points corresponding to i and j. The arrival time to a customer i is denoted ai; the beginning of service time is denoted bi. The objective is to design a route R that maximizes the total collected profit subject to the following: •• The route R cannot start before e0 and cannot end after l0. •• The service to a customer i cannot start before ei and if the vehicle arrives too early it can wait for a certain period of time wi = max(ei − ai , 0) and serves that customer. •• Every customer is visited at most once. •• The total travel time of R is limited by a time limit Tmax. In order to formulate the model we define the following decision variables:
xij binary variable equal to 1 if the vehicle travels directly from vertex i to vertex j, and 0 otherwise. yi binary variable equal to 1 if vertex i is visited, and 0 otherwise. bi beginning of service time at customer i. M is a large value. The OPTW can be formulated as the following mixed integer linear programming model: max f = pi yi (1) i∈C
subject to: x0j = xi0 = 1 j∈C
xil =
i∈V
xlj ≤ 1 ∀l ∈ C
i∈V
(3)
j∈V
bi + Si + tij − bj ≤ M(1 − xij ) �
(2)
i∈C
Si yi +
� j∈V
∀i, j ∈ V
(4)
tij xij ≤ Tmax
(5)
Aghezzaf and Fahim SpringerPlus (2016)5:1781
ei ≤ bi ≤ li
Page 5 of 36
∀i ∈ V
(6)
xij , yi ∈ {0, 1} ∀i, j ∈ V
(7)
bi ∈ R+ ∩ [e0 , l0 ]
(8)
∀i ∈ V
The objective function (1) maximizes the total collected profit. Constraint (2) guarantees that the route starts and ends at vertex 0 (depot). Constraints (3) and (4) determine the connectivity and the time line of the route. Constraint (5) ensures the maximum time duration constraint of the route. Constraints (6) restrict the start of the visit to the time windows. Constraints (7) and (8) are variables definition. In OPSTW, the time window of every customer i ∈ C can be enlarged to an outer time window [ei , li + Pmax ] = [ei , ˆli ], where Pmax is an upper bound on the maximum allowpenalty able time window violation. An appropriate penalty Pi is then paid if the service ˆ starts late that is ai ∈]li , li ]. The penalty function can be defined as follows: penalty Pi
=
0
if ei − Wmax ≤ ai ≤ li
ai − li
if li < ai ≤ ˆli
(9)
One can express the OPSTW objective function as a combination between the total collected profit (the classic objective for OPTW) and the total penalty for time windows violations. In our formulation, we do not express it that way since this will change the nature of the faced problem and the aim of this work. In our OPSTW formulation, the total penalty and the total waiting time are expressed as travel costs and added to the total travel time of the route. Then, constraint (5) of the previous model changes as follows: � � � � Si + P penalty + wi yi + tij xij ≤ Tmax (10) i j∈V
i∈V
Since in our formulation we take into account the fact that wi ≤ Wmax for each routed customer i, the following constraint is added to the model.
(ej − (bi + Si + tij ))xij ≤ (Wmax )xij
∀i, j ∈ V
(11)
Regarding the time windows constraints they change as follows:
ei ≤ bi
∀i ∈ V
(13)
b0 ≤ l0 bi ≤ ˆli
(12)
∀i ∈ C
(14)
In the next subsection, we will describe the approach that we propose to deal with the OPSTW.
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Solution algorithm At its core, the approach proposed to solve the OPSTW is an iterated local search (ILS). ILS is a local search based metaheuristic that was introduced in Lourenço et al. (2003) to solve combinatorial optimization problems. Let S be the starting solution for the ILS process. At each iteration, a diversification phase is firstly applied by perturbing S. An intensification phase is then performed around the perturbation output by applying a local search procedure to produce a solution S´ . If S´ satisfies an acceptance criterion, it replaces the starting solution and the next perturbation phase is performed from that solution. Otherwise, S´ is discarded and the search returns to the previous starting solution. In the proposed ILS algorithm, a variable neighborhood search (VNS) is applied to S´ even if it is better than S or not. The objective is intensifying the search around S´ , which is a local optima with respect to the local search procedure, in order to explore promising regions of the solution space. Algorithm 1 illustrates the steps of the proposed hybrid ILS (HILS) algorithm. The stopping condition used is the maximum number of iterations allowed Lmax. In the next subsections, we will describe the components of the proposed ILS algorithm which are the initial solution procedure, the perturbation operator, the local search procedure and the variable neighborhood search.
Initial solution
We propose three insertion heuristics to generate a set of solutions and we pick the best as the starting solution for the ILS process. These heuristics follow the scheme of the insertion heuristic proposed by Solomon (1987) for the vehicle routing problem with time windows (VRPTW), they differ in the expression of the criterion used to compute the best feasible insertion place of each unrouted customer on the current partial route. In the following subsections we will first present the procedure implemented to check the feasibility of an insertion and then we will present the initial solution procedure. Feasibility check
Let R = (i0 , i1 , i2 , . . . , im−1 , im ), i0 = im = 0 be the current partial route and let u be an unrouted customer. We define a feasible place of the customer u in R as a position
Page 6 of 36
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Page 7 of 36
(ip−1 , ip ) p ∈ {1, . . . , m} in R for which, if u is inserted between the adjacent vertices ip−1 and ip then: The waiting time at customer u given by Eq. (15) satisfies the following: wu = max(0, eu − (bip−1 + Sip−1 + tip−1 u )) ≤ Wmax
(15)
The time duration constraint on the route is still satisfied, that is: p−1
tir−1 ir +
r=1
+
p−1
penalty
wir + Sir + Pir
penalty
+ tip−1 u + tuip − tip−1 ip + Su + wu + Pu
r=1 m
tir−1 ir +
m−1
penalty
wir + Sir + Pir
≤ Tmax
(16)
r=p
r=p+1
All vertices subsequent to the inserted customer u still satisfy at most their outer time windows. This is done using the conditions for time feasibility proposed by Solomon (1987) as follows:
bu ≤ lˆu ,
and bir + PFir ≤ lˆir ,
p≤r≤m
(17)
where:
− bip PFip = binew p
(18)
corresponds to the beginning of service at customer ip (which is the The metric binew p arrival time at the depot if p = m) given that customer u is inserted between ip−1 and ip. This metric is computed as follows:
binew = max(eip , bu + Su + tuip ) p
(19)
It is clear that PFip ≥ 0 since the matrix (tij )(i,j)∈E satisfies the triangle inequality. This metric is computed for the rest of the subsequent vertices as follows:
PFir+1 = max{0, PFir − wir+1 },
p≤r ≤m−1
(20)
Insertion heuristics
Each insertion heuristic Hl, l ∈ {1, 2, 3} starts by determining the best feasible place of each unrouted customer on R. Such position is defined as the position (i(u), j(u)) for which: H
C1 (i(u), u, j(u)) = min[C1 l (ip−1 , u, ip )],
p ∈ {1, 2, . . . , m}
(21)
The first insertion heuristic H1 computes this position using the following criterion:
− bip ) C1H1 (ip−1 , u, ip ) = α1 (tip−1 u + tuip − tip−1 ip + α3 Su ) + α2 (binew p
(22)
The second insertion heuristic H2 computes this position using the following criterion:
C1H2 (ip−1 , u, ip ) = α1 (tip−1 u + tuip − tip−1 ip + α3 Su ) + α2 wu
(23)
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Page 8 of 36
While the third insertion heuristic H3 computes this position using the following criterion: H
C1 3 (ip−1 , u, ip ) = α1 (tip−1 u + tuip − tip−1 ip + α3 Su ) + α2 θu
(24)
The metric θu corresponds to the time difference between the completion of service at customer ip−1 (which is the departure time from the depot if p = 1) and the beginning of service at customer u. This metric is expressed as follows:
θu = bu − (bip−1 + Sip−1 )
(25)
The weights α1, α2 and α3 define the relative contribution of each individual metric in the computing of the best feasible insertion place. The parameter α1 takes into account the saving in travel time by inserting u between ip−1 and ip. Then, each insertion heuristic selects the best unrouted customer v according to the criterion given by Eq. (26) and inserts it in the current partial route R.
C2 (i(v), v, j(v)) = min[C2 (i(u), u, j(u))] u∈∇
(26)
where ∇ is the set of unrouted customers having at least one feasible place on the current partial route. The criterion C2 (i(u), u, j(u)) is expressed as follows: H
C2 (i(u), u, j(u)) =
C1 l (i(u), u, j(u)) puα4
(27)
The parameter α4 is the exponent of the profit of customer u. The procedure of customer insertion is repeated, for each insertion heuristic, until no further unrouted customer can be inserted into R. The insertion procedure terminates by providing the set of assigned customers and the sequence in which these customers are routed. This is repeated for a number of values for αi , i ∈ {1, 2, 3, 4} and the best overall solution is returned at the end. We compare two solutions using the following criteria in decreasing order: collected profit and time duration. Note that αi , i ∈ {1, 2, 3, 4} are positive weights that satisfy: αi ≥ 0, i ∈ {1, 2, 3, 4} and α1 + α2 = 1. Perturbation
The perturbation operator used in the proposed ILS algorithm performs, around a solution, by selecting the customer with minimal profit and removing it from this solution. Note that after a removal, all vertices (customers + depot) following removed one are shifted towards the beginning of the route in order to ensure its continuity. As one can intuitively expect, this forward move can result in an infeasible solution since the waiting time on some customers may exceed the maximum allowable waiting time Wmax. This is solved using local search procedure that will be described in the next subsection.
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Local search
The local search procedure tries to fulfill the available room in the solution, obtained through perturbation, by inserting other feasible unrouted customers. On one hand and as one can intuitively expect, evaluating the possible insertion of each unrouted customer using the criterion presented in the initial solution procedure will increase the risk of inserting the set of customers just removed, and getting easily stuck in the initial solution. On the other hand, the solution obtained through perturbation can be infeasible. Given a starting solution S, the solution obtained through perturbation is denoted Sˆ . The local-search procedure performs, around Sˆ , by inserting each unrouted customer in its first feasible place. Using this local search procedure, following effects are observed: •• •• •• ••
an unrouted customer in S can be part of Sˆ . a routed customer in S cannot be inserted in Sˆ . the position of a customer in S can be changed to another position in Sˆ . the customers of Sˆ are shifted towards the end of the route in order to avoid unnecessary waiting time. As a consequence, the solution obtained after local search procedure is feasible.
This procedure will help to re-optimize a solution, make it feasible if it is not and insert other feasible unrouted customers in order to improve the value of the incumbent solution. Variable neighborhood search
Variable neighborhood search (VNS) is a local search based metaheuristic that was introduced in Mladenović and Hansen (1997) for solving combinatorial optimization problems. The basic idea behind this metaheuristic is a systematic change of neighborhoods both in descent phase using a local search procedure, and in shaking phase using a set of neighborhood structures. VNS is a stochastic algorithm in which, first, a finite set of neighborhood structures is defined. We denote by N(S) the set of solutions in the neighborhood of S. Each VNS iteration is composed of three steps: shaking, local search and move. At each iteration, a solution S´ is randomly generated from the neighborhood of S. A local search is then applied with S´ as the initial solution, the obtained solution is denoted Sˆ . If Sˆ is better than S, the search moves to Sˆ and continues by considering the first neighborhood structure. Otherwise, k is incremented. The steps of the proposed VNS algorithm are given by Algorithm 2. Before defining the neighborhood structures used in the developed VNS, we first define two metrics ϕS , ϑS ∈ N. To do that, let us denote with S = (0, c1 , c2 , . . . , cm , 0) ch ∈ C, h ∈ {1, . . . , m} a feasible solution. These metrics are defined as follows:
Page 9 of 36
Aghezzaf and Fahim SpringerPlus (2016)5:1781
Page 10 of 36
ϕS =
m
(28)
ϑS =
m
(29)
2
2
The first neighborhood of S denoted N1 (S) is defined as the set of all solutions obtained by removing two customers, one from the set (c1 , c2 , . . . , cϕS ) and the other from the set (cϑS , cϑS +1 , . . . , cm ). The second neighborhood N2 (S) is defined as the set of all solutions obtained by removing a set of customers (ck : k ∈ [1, j]) such that j ∈ [1, m]. The idea behind using floor and ceiling functions to define these neighborhood structures is to reduce the size of the neighborhoods and then the computational time.
Computational results The proposed algorithm is coded in Java; the experiments are performed on a personal computer Intel(R) with 2.1 GHz and 4 GB of RAM. We test, first, our algorithm on OPTW test instances. Based on these instances, we design test instances for the OPSTW. Each experiment is performed, on each test instance, five times for which the average results are presented. The presented computational times are the average times over five runs. Test instances
The authors in Righini and Salani (2009) designed test instances for OPTW based on 29 VRPTW test instances of Solomon (1987) namely C100, R100 and RC100, and on 10 Multi-depot Vehicle Routing Problem (MDVRP) test instances of Cordeau Cordeau et al. (1997) PR01-10. The number of customers for Cordeau instances varies between 48 and 288 customers; while all Solomon instances have 100 customers. The author
Aghezzaf and Fahim SpringerPlus (2016)5:1781
in Vansteenwegen (2008) designed OPTW test instances based on Solomon instances by considering the first 50 customers (n = 50). The authors in Montemanni and Gambardella (2009) designed other OPTW test instances based on 27 VRPTW test instances of Solomon namely, C200, R200 and RC200, and on 10 MDVRP test instances of Cordeau PR11-20. We design OPSTW test instances based on OPTW test instance namely PR01 by considering different values of Wmax and Pmax. We set the maximum allowable waiting time to Wmax ∈ [5, 7], in increments of 0.5 %, of the maximum time duration Tmax. While we set the maximum allowable time window violation to Pmax ∈ [1, 5], in increments of 0.5 %, of Tmax. In all OPTW and OPSTW test instances, it is assumed that the maximum time duration Tmax is equal to Tmax = l0 − e0. Parameter tuning
Preliminary experiments on OPTW test instances are conducted to set the values of αi , i ∈ {1, 2, 3, 4}. The following values are tested: αi ∈ [0, 1], i ∈ {1, 2, 3} in increments of 0.1 units and α4 ∈ {1, 2, 3, 4}. The results indicate that given more importance to the metric related to the saving in travel time in the selection criterion has good influence on solution quality. Thus, the following values are selected:
α1 α2 α3 α4
∈ {0.9, 0.7, 0.5} ∈ {0.1, 0.3, 0.5} ∈ {0.1, 0.3, 0.5, 0.7, 0.9} ∈ {2, 3, 4}.
The proposed HILS algorithm has two parameters: a maximum number of iterations allowed Lmax which is ILS stopping condition, and Imax the maximum number of iterations allowed in VNS process. The values of these parameters are determined performing several experiments on a subset of OPSTW test instances that was randomly selected. We test combinations of the following values during the experiments: Lmax ∈ {20, 50, 100}; Imax ∈ {10, 20, 50}. The results of these experiments show that by increasing these parameters better results can be obtained at the expense of extra computational time. In this paper we are looking for a fast algorithm. Thus, we set these parameters to Lmax = 20 and Imax = 10. Computational results on OPTW instances
In this subsection, we compare the results of HILS algorithm with the following state-ofthe-art algorithms: •• •• •• ••
I3CH: the iterative three-component algorithm of Hu and Lim (2014). IterLS: the iterated local search algorithm of Vansteenwegen et al. (2009). VNS: the variable neighborhood search algorithm of Tricoire et al. (2010). GVNS: the LP-based granular variable neighborhood search algorithm of Labadie et al. (2012). •• SSA: the slow version of the simulated annealing algorithm of Lin and Yu (2012). •• FSA: the fast version of the simulated annealing algorithm of Lin and Yu (2012). •• ILS: the iterated local search algorithm of Gunawan et al. (2015).
Page 11 of 36
Aghezzaf and Fahim SpringerPlus (2016)5:1781
•• GRASP-ELS: the hybrid algorithm of Labadie et al. (2011) that combines greedy randomized adaptive search procedure with evolutionary local search. •• ABC: the artificial bee colony algorithm of Tunchan (2014). •• DABC: the discrete artificial bee colony algorithm of Karabulut and Tasgetiren (2013). •• GA: the genetic algorithm of Karbowska-Chilinska and Zabielski (2014). •• ACS: the ant colony system algorithm of Montemanni and Gambardella (2009). •• EACS: the enhanced ant colony system algorithm of Montemanni et al. (2011). •• VAN: the iterated local search algorithm of Vansteenwegen (2008). The computational results are given in Table 1. Column Instance-n gives the instance over which the algorithms are tested and the associated number of customers. Column BKS presents the latest best known solution as described in (http://centres.smu.edu. sg/larc/orienteering-problem-library). Column I3CH presents the profit obtained by I3CH algorithm (Profit), the percentual gap with the best known profit [Gap (%)] and the computational time required by I3CH algorithm on each run [CPU (s)]. Column ABC presents the average profit, over five runs, obtained by ABC algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column VNS presents the average profit as described in Tricoire et al. (2013), over ten runs, obtained by VNS algorithm, the percentual gap with the best known profit and the average computational time of ten runs. Column ILS presents the profit obtained, over ten runs, by ILS algorithm, the percentual gap with the best known profit and the average computational time of ten runs. Column ACS presents the profit obtained, over five runs, by ACS algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column GVNS presents the profit obtained, over five runs, by GVNS algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column GRASP-ELS presents the profit obtained, over five runs, by GRASP-ELS algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column SSA presents the profit obtained by SSA algorithm, the percentual gap with the best known profit and the computational time of one run. Column IterLS presents the profit obtained by IterLS algorithm, the percentual gap with the best known profit and the computational time of one run. Column FSA presents the profit obtained by FSA algorithm, the percentual gap with the best known profit and the computational time of one run. Column DABC presents the profit obtained, over five runs, by DABC algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column HILS presents the profit obtained, over five runs, by our HILS algorithm, the percentual gap with the best known profit and the average computational time of five runs. Column GA presents the profit obtained, over sixteen runs, by GA algorithm, the percentual gap with the best known profit and the average computational time of sixteen runs. Column Opt presents the optimal profit as described in Tricoire et al. (2010) and the associated computational time. Column VAN presents the profit obtained by VAN algorithm and the associated computational time. Column VNS presents the worst, best and average profit, over ten runs, of VNS algorithm and the average computational time.
Page 12 of 36
247
293
299
308
277
284
297
298
R106-100
R107-100
R108-100
R109-100
R110-100
R111-100
R112-100
0.0
266
RC102-100
266
0.0
219
RC101-100
219
0.6
3.1
0.7
0.0
0.0
0.7
0.7
0.0
0.0
1.7
Avg
289
295
284
277
306
297
293
247
298
0.0
0.0
R105-100
0.0
303
293
286
198
380
0.0
R104-100
380
C109-100
370
0.0
293
370
C108-100
370
0.0
R103-100
370
C107-100
340
0.0
286
340
C106-100
340
0.0
R102-100
340
C105-100
420
0.0
0.0
420
C104-100
400
0.0
0.0
198
400
C103-100
360
320
R101-100
360
C102-100
0.0
320
C101-100
25.5
21.8
28.6
32.0
27.7
33.9
31.1
29.7
27.8
29.4
26.0
27.3
28.8
29.3
20.4
25.2
26.3
24.8
24.7
23.6
23.4
27.1
27.1
28.1
21.8
266
219
297.0
294.0
282.2
277.0
308.0
299.0
289.0
242.6
299.6
292.0
281.6
190.0
380
370
370
340
340
420
398
360
320
Profit
CPU (s)
Profit
Gap (%)
ABC
I3CH
Avg
BKS
Instance-n
Table 1 Results on the OPTW test instances
0.0
0.0
1.0
0.3
1.0
0.6
0.0
0.0
0.0
1.4
1.8
1.1
0.3
1.6
4.2
0.1
0.0
0.0
0.0
0.0
0.0
0.0
0.5
0.0
0.0
Gap (%)
0.6
0.5
3.5
2.4
1.7
8.1
1.6
4.6
7.1
1.6
9.1
1.7
1.1
2.2
0.3
2.6
0.5
0.9
1.3
0.5
0.5
15.2
3.6
0.6
0.4
CPU (s)
266
219
297.9
297.0
284.0
277.0
308
299.0
292.2
247.0
303.0
293.0
285.2
198.0
380
370
370
340
340
418
398
360
320
Profit
VNS
0.0
0.0
0.1
0.0
0.0
0.0
0.0
0.0
0.0
0.3
0.0
0.0
0.0
0.3
0.0
0.1
0.0
0.0
0.0
0.0
0.0
0.5
0.5
0.0
0.0
Gap (%)
54.7
61.2
89.1
97.0
95.4
86.0
77.4
119.1
105.5
89.6
85.4
95.9
90.2
77.9
49.9
98.4
118.7
99.3
88.7
86.7
87.1
124.3
106.2
102.2
72.2
CPU (s)
266
219
298
297
284
277
308
299
293
247
303
293
286
198
380
370
370
340
340
420
400
360
320
Profit
ILS
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Gap (%)
0.4
0.2
1.8
3.3
10.9
1.3
0.2
0.9
0.5
0.2
0.7
1.5
1.4
0.2
0.1
1.0
6.8
0.5
0.1
0.5
0.4
0.4
0.2
0.3
0.2
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 13 of 36
489
595
591
298
463
493
594
PR04-192
PR05-240
PR06-288
PR07-72
PR08-144
PR09-216
PR10-288
960
980
910
930
930
C203-100
C204-100
C205-100
C206-100
C207-100
930
920
900
970
960
0.0
1.1
1.1
1.0
0.0
0.0
0.0
930
C202-100
930
870
C201-100
870
1.1
4.4
0.6
1.9
0.0
0.2
0.2
0.0
0.0
Avg
568
490
454
298
590
594
489
394
2.5
394
12.9
PR03-144
394
305
264
1.1
404
298
RC108-100
274
0.8
PR02-96
277
RC107-100
250
0.0
1.0
252
RC106-100
244
0.0
0.0
308
244
RC105-100
301
266
PR01-48
301
RC104-100
77.4
75.7
70.7
117.4
92.3
87.6
70.1
109.0
222.2
137.8
77.4
26.5
189.9
185.4
109.3
72.9
47.9
20.8
25.6
25.1
26.3
25.0
26.4
27.2
27.1
918
928
900
966
958
930
870
570.4
481.8
462
298
573.6
586.8
486
394
391.2
307
298
276.2
251.4
244
301
266
Profit
1.9
266
RC103-100
ABC CPU (s)
Profit
Gap (%)
I3CH
Avg
BKS
Instance-n
Table 1 continued
1.3
0.2
1.1
1.4
0.2
0.0
0.0
1.5
4.0
2.3
0.2
0.0
2.9
1.4
0.6
0.0
3.2
0.3
0.1
0.0
0.3
0.2
0.0
0.0
0.0
Gap (%)
2.3
6.2
1.7
25.7
14.8
15.3
11.2
78.5
210.3
126.3
15.0
4.3
247.4
91.4
67.4
12.6
4.9
5.8
7.9
11.3
10.4
8.1
1.3
20.3
10.7
CPU (s)
930
927
908
972
960
928
870
575.5
481.5
452.2
297.5
588.2
586.1
488.1
390.5
403.9
308
298
277
252
244
301
266
Profit
VNS
0.0
0.3
0.2
0.8
0.0
0.2
0.0
1.1
3.1
2.3
2.3
0.2
0.5
1.5
0.2
0.9
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Gap (%)
599.5
616.5
645.4
484
614.3
454.8
507.8
744.0
1534.1
920.8
514.1
131.0
1633.8
1455.2
541.6
387.2
244.6
77.9
65.5
71.5
72.4
67.4
65.2
62.5
69.2
CPU (s)
930
927
908
974
960
930
870
–
–
–
–
–
–
–
–
–
–
298
277
252
244
301
266
Profit
ILS
0.0
0.3
0.2
0.6
0.0
0.0
0.0
–
–
–
–
–
–
–
–
–
–
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Gap (%)
68.1
111.5
56.2
217.6
137.2
59.0
36.7
–
–
–
–
–
–
–
–
–
–
1.0
0.1
0.3
0.3
4.3
0.3
2.0
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 14 of 36
1028
1093
953
1032
1077
1117
959
991
1051
R203-100
R204-100
R205-100
R206-100
R207-100
R208-100
R209-100
R210-100
R211-100
1003
1140
859
899
983
1057
RC203-100
RC204-100
RC205-100
RC206-100
RC207-100
RC208-100
442
PR12-96
2.0
0.0
433
2.8
353
353
PR11-48
5.1
2.6
4.0
1.4
4.1
3.7
Avg
1003
957
863
847
1093
966
1.5
938
RC202-100
924
0.0
795
RC201-100
795
1.4
3.6
0.9
1.1
2.2
2.5
1.1
0.7
1.8
0.8
Avg
1013
982
948
1092
1050
1021
946
1073
1020
0.0
930
R202-100
930
1.0
789
797
0.0
R201-100
950
59.8
30.8
119.3
123.0
122.0
98.4
99.2
167.5
134.3
129.3
80.9
176.2
167.4
176.9
136.5
230.0
192.8
169.3
129.3
236.9
221.4
175.6
101.8
84.4
84.0
432
350.6
1032.8
977.0
890.2
852.3
1109.2
962.4
926.8
784
1019
965.4
934.6
1084.6
1060.8
1018
953
1070.4
1009
895.8
787
950
Profit
0.4
950
C208-100
ABC CPU (s)
Profit
Gap (%)
I3CH
Avg
BKS
Instance-n
Table 1 continued
2.3
0.7
1.8
2.3
0.6
1.0
0.8
2.7
4.0
1.2
1.4
2.1
3.0
2.6
2.5
2.9
1.5
1.4
0.0
2.1
1.8
3.7
1.3
0.5
0.0
Gap (%)
23.5
1.7
24.3
26.3
15.8
24.9
27.2
23.4
24.8
27.3
24.9
26.6
15.0
29.3
26.3
26.7
20.9
21.3
32.9
34.0
25.6
40.6
20.3
11.1
11.8
CPU (s)
442
328
1043.5
960.8
878.4
845.9
1120.8
988.2
925.6
795
1024.2
975.9
947.8
1101.5
1061.5
1014
952.6
1076.3
1007.9
905.6
796.7
949
Profit
VNS
0.0
7.1
1.5
1.3
2.3
2.3
1.5
1.7
1.5
1.3
0.0
1.4
2.5
1.5
1.2
1.4
1.4
1.7
0.0
1.5
2.0
2.6
0.0
0.2
0.1
Gap (%)
309.6
131.4
869.4
995.5
893.5
838.7
726.6
970.3
938.4
951.5
640.8
1065.8
1120.7
1065.6
925.9
1160.8
1065.3
1168.1
745.1
1253.5
1139.9
1057.5
1021.7
560.2
558.9
CPU (s)
–
–
1040.7
952.1
894.1
854.7
1131.3
989.8
929
795
1040.4
970.8
949.7
1107.6
1059.5
1012.4
948.4
1082.8
1011.3
910.3
788.7
950
Profit
ILS
–
–
1.1
1.5
3.1
0.5
0.5
0.8
1.3
1.0
0.0
1.3
1.0
2.0
1.0
0.8
1.6
1.9
0.5
0.9
1.6
2.1
1.0
0.1
0.0
Gap (%)
–
–
120.5
85.6
129.9
152.0
100.5
165.0
111.5
156.2
63.5
162.1
145.7
171.8
145.8
165.6
174.0
126.5
169.9
171.0
213.5
165.6
133.7
90.0
33.3
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 15 of 36
467
567
708
674
362
539
562
667
PR13-144
PR14-192
PR15-240
PR16-288
PR17-72
PR18-144
PR19-216
PR20-288
380
C109-100
292.6
286
198
380
370 0.0
0.0
0.0
0.1
0.0
293
370
C108-100
370
0.0
R103-100
370
C107-100
340
0.0
286
340
C106-100
340
0.0
R102-100
340
C105-100
420
0.0
0.0
420
C104-100
400
0.0
0.0
198
400
C103-100
360
320
R101-100
360
C102-100
0.0
320
C101-100
640.6
11.1
0.1
6.4
0.8
0.8
2.1
1.0
0.9
33.5
16.9
0.7
0.5
CPU (s)
286
274.8
197
380
354
358
340
340
410
396
360
320
Profit
Gap (%)
604.8
541
535
359
613.4
666.4
560.1
458.1
Profit
130.2
202.7
164.6
99.0
34.7
228.6
248.2
144.4
89.5
GVNS
4.3
11.8
4.3
7.8
0.6
8.2
0.1
8.1
ACS
588
538
497
360
619
707
521
0.2
Profit
466
ABC CPU (s)
Profit
Gap (%)
I3CH
Avg
BKS
Instance-n
Avg
BKS
Instance-n
Table 1 continued
2.4
4.1
0.5
1.3
0.0
4.5
3.4
0.0
0.0
2.4
1.0
0.0
0.0
Gap (%)
3.6
9.3
3.7
0.7
0.8
9.0
5.9
1.2
1.9
Gap (%)
33.8
13.4
0.2
166.5
30.6
1.1
0.7
6.5
3.3
1005.9
382.4
67.4
0.2
CPU (s)
103.7
346.9
70.7
22.1
6.6
205.1
274.6
76.6
8.9
CPU (s)
290.4
286
198
380
370
370
340
340
420
400
360
320
Profit
GRASP-ELS
647.8
551.6
519.4
358.3
637
663.2
550.1
453.7
Profit
VNS
0.9
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Gap (%)
3.4
2.9
1.9
3.6
1.0
5.5
6.3
3.0
2.8
Gap (%)
4.8
2.3
0.9
22.6
25.5
6.6
3.7
3.8
2.3
105.2
38.5
16.5
1.2
CPU (s)
1045.9
2441.9
1242.2
760.9
140.5
1854.1
1900.9
1163.8
514.1
CPU (s)
293
286
198
380
370
370
340
340
420
400
360
320
Profit
SSA
–
–
–
–
–
–
–
–
Profit
ILS
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Gap (%)
–
–
–
–
–
–
–
–
Gap (%)
20.3
21
19.7
21.1
20.5
20.5
20.5
20.3
20.6
21.9
24.2
20.7
20.4
CPU (s)
–
–
–
–
–
–
–
–
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 16 of 36
244
252
277
298
RC106-100
RC107-100
RC108-100
394
489
595
591
PR03-144
PR04-192
PR05-240
PR06-288
564.6
576.8
482.6
394
4.5
3.1
1.3
0.0
0.0
404
PR02-96
403.8
0.0
308
PR01-48
308
0.0
0.0
0.0
0.0
0.0
0.0
Avg
298
277
252
244
301
0.0
0.0
RC105-100
0.2
301
266
266
219
297.4
0.1
RC104-100
298
R112-100
296.6
0.3
266
297
R111-100
283.2
0.0
0.7
RC103-100
284
R110-100
277
306
266
277
R109-100
1.5
RC102-100
308
R108-100
294.6
0.0
0.0
299
R107-100
293
0.0
0.0
219
293
R106-100
247
303
RC101-100
247
R105-100
0.2
303
R104-100
2199.8
2075.7
1404.7
2024.7
1147.8
256.2
143.2
207.5
502.1
308.6
9.7
29.4
57.2
30.9
0.2
383.4
947.1
484.4
617.6
28.0
696.1
922.6
86.3
3.0
164.0
584.2
578
475.4
388
403.6
307.2
288.8
261.2
252
227
301
253.2
246
219
289.6
290.6
279.2
276.4
301.4
287.2
280.4
230.6
298.6
Profit
CPU (s)
Profit
Gap (%)
GVNS
ACS
Avg
BKS
Instance-n
Table 1 continued
1.2
2.9
2.8
1.5
0.1
0.3
3.7
3.2
6.0
0.0
7.5
0.0
5.1
8.1
0.0
2.8
2.9
2.2
1.7
0.2
2.2
4.1
4.5
7.1
1.5
Gap (%)
29.0
20.5
14.7
4.1
3.7
1.2
9.8
10.4
15.7
2.2
2.7
16.2
23.3
5.8
2.1
29.4
31.9
54.2
16.8
10.4
50.1
50.3
19.1
0.3
72.7
CPU (s)
583.4
581
474.6
394
402.6
308
298
277
252
244
300.2
265.2
259
219
297.2
297
283.6
277
306.8
296.4
293
247
302.8
Profit
GRASP-ELS
1.3
2.4
2.9
0.0
0.3
0.0
0.4
0.0
0.0
0.0
0.0
0.3
0.3
2.7
0.0
0.2
0.3
0.0
0.1
0.0
0.4
0.9
0.0
0.0
0.1
Gap (%)
8.6
9.1
5.3
3.1
3.0
1.2
2.0
2.9
1.9
1.2
1.4
3.1
2.7
2.1
0.6
3.5
4.6
4.6
2.8
2.7
5.0
4.8
3.3
1.2
5.1
CPU (s)
575
589
489
394
404
305
298
277
252
244
301
266
266
219
298
297
284
277
306
297
293
247
303
Profit
SSA
2.7
1.0
0.0
0.0
0.0
1.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.1
0.0
0.0
0.0
0.0
0.7
0.7
0.0
0.0
0.0
Gap (%)
253.4
281.7
106.7
59.9
29.1
8.3
22.2
26
22
21
20.3
27.5
20.7
20.2
19.8
23.3
22.3
27.9
20.8
20.4
40.6
21.5
22.1
20.3
23.2
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 17 of 36
960
980
910
930
930
950
C204-100
C205-100
C206-100
C207-100
C208-100
1028
1093
953
1032
1077
1117
959
991
1051
R203-100
R204-100
R205-100
R206-100
R207-100
R208-100
R209-100
R210-100
R211-100
1006.8
956.4
923.4
1057.2
1026.6
983.0
939.2
1046.4
989.9
4.2
3.5
3.7
5.4
4.7
4.7
1.4
4.3
3.7
3.3
930
R202-100
899.6
0.2
797
R201-100
795.8
0.6
1.0
1.1
1.1
0.4
1.0
0.0
Avg
940.2
920
920
906
970
960
0.0
C203-100
930
930
0.9
C202-100
870
588.4
2.3
0.0
594
PR10-288
481.8
0.1
0.0
1.2
493
PR09-216
462.6
298
870
463
PR08-144
C201-100
298
PR07-72
1288.1
979.1
1453.2
1260.9
1090.3
1671.4
1125.4
1549.1
2641.7
1724.4
2339.9
342.6
89.0
48.5
87.9
28.2
1617.5
361.0
319.0
189.8
1626.7
2343.5
2318.2
2476.0
20.1
1025.6
961.4
926
1083.6
1022
966.6
905.8
1073.8
992.2
881.4
775.6
942
928
922
898
966
956
916
850
564.4
482
463
297
Profit
CPU (s)
Profit
Gap (%)
GVNS
ACS
Avg
BKS
Instance-n
Table 1 continued
2.4
3.0
3.4
3.0
5.1
6.3
5.0
1.8
3.5
5.2
2.7
1.1
0.8
0.2
0.9
1.3
1.4
0.4
1.5
2.3
1.6
5.0
2.2
0.0
0.3
Gap (%)
22.5
30.1
37.3
52.9
46.6
34.9
15.3
77.6
34.7
13.4
6.7
192.4
74.2
36.3
34.4
12.5
974
329
78.7
0.1
12.4
32.7
12.3
3.8
1.7
CPU (s)
1028.2
969
937.4
1100.2
1049.2
1023.6
927.2
1071.8
1001.4
909.8
788.2
942
930
926
906
970
960
910
870
574.2
477.8
462.8
294.4
Profit
GRASP-ELS
2.2
2.2
2.3
1.5
2.6
0.8
2.7
1.9
2.6
2.2
1.1
0.6
0.8
0.0
0.4
0.4
1.0
0.0
2.2
0.0
1.5
3.3
3.1
0.0
1.2
Gap (%)
11.3
10.8
10.3
15.9
13.5
10.7
7.8
15.2
12.6
9.6
5.3
32.2
17.7
17.3
13.4
10.6
130.3
45.2
20.4
2.5
5.0
8.1
7.0
3.3
1.6
CPU (s)
1041
973
945
1079
1069
1020
946
1058
997
914
794
950
930
930
910
970
960
930
870
578
482
462
298
Profit
SSA
1.0
1.8
1.5
3.4
0.7
1.2
0.7
3.2
3.0
1.7
0.4
0.1
0.0
0.0
0.0
0.0
1.0
0.0
0.0
0.0
1.0
2.7
2.2
0.2
0.0
Gap (%)
40.5
53.6
61.6
35.8
52.5
40.9
37.8
39.7
44.2
46.4
51.1
37.5
31.2
29.1
29
46.9
42.3
59.6
33.5
28.3
112.2
189.7
102.3
76.0
15.0
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 18 of 36
938
1003
1140
859
899
983
1057
RC202-100
RC203-100
RC204-100
RC205-100
RC206-100
RC207-100
RC208-100
567
708
674
362
539
562
667
PR14-192
PR15-240
PR16-288
PR17-72
PR18-144
PR19-216
PR20-288
Avg
467
PR13-144
552.4
475.0
488.8
358.0
517.8
524.8
494.0
441.0
11.9
17.2
15.5
9.3
1.1
23.2
25.9
12.9
5.6
1.3
442
PR12-96
436.4
7.1
353
PR11-48
327.8
2.2
4.1
2.3
1.7
1.2
4.7
2.6
Avg
1013.2
960.8
884.0
848.4
1086.2
976.6
0.7
0.0
931.6
3.5
795
795
887.7
24.6
30.0
1350.0
1330.9
25.7
18.2
23.1
2312.7
2017.6
1743.7
869.4
995.5
893.5
838.7
726.6
970.3
938.4
951.5
640.8
1556.7
655.0
507.8
530.8
354.6
643.4
656.6
540.6
452.4
435
329
1000.2
911.4
866.6
843.8
1101.8
954.4
890.6
784
Profit
CPU (s)
Profit
Gap (%)
GVNS
ACS
RC201-100
BKS
Avg
Instance-n
Table 1 continued
4.3
1.8
9.6
1.5
2.0
4.5
7.3
4.7
3.1
1.6
6.8
4.1
5.4
7.3
3.6
1.8
3.4
4.8
5.1
1.4
3.8
Gap (%)
24.2
57.0
22.1
10.4
5.4
60.9
29.4
32.4
16.2
6.5
1.9
16.0
24.6
14.7
11.6
7
31.9
22.5
12.1
3.7
33.8
CPU (s)
656.6
537.8
517.6
356.2
652.6
665.0
541.2
456.6
442.0
329.2
1007.0
965.4
886.8
844.6
1096.0
978.2
922.8
786.4
Profit
GRASP-ELS
3.4
1.6
4.3
4.0
1.6
3.2
6.1
4.6
2.2
0.0
6.7
2.3
4.7
1.8
1.4
1.7
3.9
2.5
1.6
1.1
2.0
Gap (%)
7.9
13.9
8.7
5.0
2.4
16.2
13.1
8.8
4.9
4.0
2.0
8.2
10.7
7.5
6.1
6.8
11.9
9.6
8.9
4.2
11.2
CPU (s)
626.0
531.0
539.0
362.0
616.0
666.0
540.0
452.0
430.0
351.0
1041
977
885
854
1140
967
930
795
Profit
SSA
3.7
6.1
5.5
0.0
0.0
8.6
5.9
4.8
3.2
2.7
0.6
1.1
1.5
0.6
1.6
0.6
0.0
3.6
0.9
0.0
1.7
Gap (%)
162.4
475.3
152.9
61.8
37.6
558.0
118.5
134.3
49.0
26.3
10.3
50.3
51.2
68.4
60.2
52.6
46.5
32.4
46.3
44.4
45.8
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 19 of 36
293
299
308
277
284
297
298
R106-100
R107-100
R108-100
R109-100
R110-100
R111-100
R112-100 0.0
219
RC101-100
1.0
0.7
1.1
0.4
3.7
3.8
0.0
0.0
2.0
295
295
281
276
297
288
293
247
2.0
Avg
219
247
297
2.4
0.0
R105-100
0.0
303
286
286
182
380
0.0
R104-100
380
C109-100
370
2.8
0.0
293
370
C108-100
360
340
R103-100
370
C107-100
0.0
286
340
C106-100
340
5.0
R102-100
340
C105-100
400
2.6
8.8
420
C104-100
390
0.0
0.0
198
400
C103-100
360
320
R101-100
360
C102-100
1.2
320
C101-100
0.2
0.2
0.2
0.2
0.3
0.2
0.2
0.2
0.2
0.1
0.2
0.2
0.2
0.1
0.3
0.3
0.3
0.3
0.3
0.3
0.3
0.5
0.3
0.4
216
284
286
282
264
294
277
270
247
294
293
282
198
380
370
370
340
330
410
390
360
320
Profit
CPU (s)
FSA Gap (%)
IterLS
Profit
Avg
BKS
Instance-n
Table 1 continued
1.4
3.2
4.7
3.7
0.7
4.7
4.5
7.4
7.8
0.0
3.0
0.0
1.4
0.0
0.9
0.0
0.0
0.0
0.0
2.9
2.4
2.5
0.0
0.0
Gap (%)
0.2
0.2
0.2
0.2
0.3
0.2
0.2
0.2
0.2
0.1
0.2
0.2
0.2
0.1
0.3
0.3
0.3
0.3
0.3
0.3
0.3
0.5
0.3
0.4
CPU (s)
206
290.8
295
281.2
233.4
306
297
293
243.4
303
293
286
182.2
380
370
350
340
322
420
390
360
312
Profit
DABC
5.9
2.6
2.4
0.7
1.0
15.7
0.6
0.7
0.0
1.5
0.0
0.0
0.0
8.0
1.7
0.0
0.0
5.4
0.0
5.3
0.0
2.5
0.0
2.5
Gap (%)
2.2
25.3
50.8
85.4
1.0
0.6
31
1.4
0.8
62.2
15
49.4
5.4
0.6
17.3
22.0
18.8
1.2
2.0
1.2
10.4
1.0
98.6
0.4
CPU (s)
219
295
294
281
276
308
299
293
247
299
287
286
198
380
370
370
340
340
420
390
360
320
Profit
HILS
0.0
0.6
1.0
1.0
1.1
0.4
0.0
0.0
0.0
0.0
1.3
2.0
0.0
0.0
0.3
0.0
0.0
0.0
0.0
0.0
0.0
2.5
0.0
0.0
Gap (%)
0.2
0.6
0.7
0.7
0.4
0.4
0.7
0.7
0.6
0.3
0.7
0.7
0.6
0.2
0.4
0.4
0.4
0.4
0.4
0.4
0.7
0.4
0.4
0.4
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 20 of 36
489
595
591
298
463
493
594
PR05-240
PR06-288
PR07-72
PR08-144
PR09-216
PR10-288
960
980
910
930
C203-100
C204-100
C205-100
C206-100
910
900
950
940
2.2
1.1
3.1
2.1
2.2
930
C202-100
910
3.4
870
C201-100
840
4.7
9.3
6.5
0.0
2.3
9.0
3.2
8.6
2.5
Avg
539
461
463
291
538
576
447
384
4.7
PR04-192
3.5
394
385
304
288
1.1
PR03-144
298
RC108-100
274
5.4
404
277
RC107-100
239
10.4
PR02-96
252
RC106-100
221
1.3
1.3
244
RC105-100
297
0.4
2.7
308
301
RC104-100
265
259
PR01-48
266
RC103-100
3.1
266
RC102-100
1.6
1.2
1.6
1.7
2.8
1.1
1.8
3.6
1.4
1.0
0.4
2.5
4.6
1.9
1.0
0.6
0.5
0.2
0.2
0.2
0.2
0.2
0.3
0.3
0.2
920
900
950
940
930
870
539
461
438
289
557
527
470
381
392
304
263
244
240
219
263
265
249
Profit
CPU (s)
FSA Gap (%)
IterLS
Profit
Avg
BKS
Instance-n
Table 1 continued
1.1
1.1
3.1
2.1
0.0
0.0
5.3
9.3
6.5
5.4
3.0
5.8
11.4
3.9
3.3
3.0
1.3
7.4
11.7
11.9
4.8
10.2
12.6
0.4
6.4
Gap (%)
1.6
1.2
1.6
1.7
2.8
1.1
1.8
3.6
1.4
1.0
0.4
2.5
4.6
1.9
1.0
0.6
0.5
0.2
0.2
0.2
0.2
0.2
0.3
0.3
0.2
CPU (s)
928
906
970
960
930
840
–
–
–
–
–
–
–
–
–
–
284
262.4
225
228
288.4
255.8
259
Profit
DABC
0.2
0.4
1.0
0.0
0.0
3.4
–
–
–
–
–
–
–
–
–
–
5.5
4.7
5.3
10.7
6.6
4.2
3.8
2.6
Gap (%)
142
23.6
117.6
153.4
127.4
23.8
–
–
–
–
–
–
–
–
–
–
28.6
82.6
45
0.6
4.4
86.8
6.4
1.0
CPU (s)
920
900
970
960
910
870
526
447
455
285
496
523
452
378
397
308
278
276
244
244
275
248
259
Profit
HILS
1.1
1.1
1.0
0.0
2.2
0.0
6.8
11.4
9.3
1.7
10.7
16.1
12.4
7.6
4.1
1.7
0.0
3.5
6.7
0.4
3.2
0.0
8.6
6.8
2.6
Gap (%)
5.9
5.3
9.2
6.2
5.7
3.9
2.7
4.9
2.2
2.1
0.4
5.8
5.5
2.1
1.4
1.2
1.1
0.3
0.3
0.3
0.3
0.3
0.3
0.3
0.3
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 21 of 36
1028
1093
953
1032
1077
1117
959
991
1051
R203-100
R204-100
R205-100
R206-100
R207-100
R208-100
R209-100
R210-100
R211-100
1140
859
899
983
1057
RC204-100
RC205-100
RC206-100
RC207-100
RC208-100 6.5
330
PR11-48
1.9
5.8
4.3
2.2
2.0
4.3
3.6
1037
926
860
840
1117
960
Avg
353
1003
RC203-100
6.0
938
RC202-100
882
1.9
795
RC201-100
780
3.3
2.7
3.3
3.4
4.3
3.6
3.5
2.3
1.8
4.7
Avg
1023
958
926
1069
1038
996
931
1073
980
5.4
930
R202-100
880
1.1
788
2.1
2.2
797
930
910
R201-100
950
C208-100 2.3
930
C207-100
0.3
1.6
2.3
1.3
1.1
1.0
2.3
2.7
1.3
1.0
1.7
1.6
1.9
2.4
1.6
2.0
1.5
1.4
1.7
1.6
1.4
1.2
1.7
1.6
2.1
339
1015
899
866
800
1061
956
866
781
1023
975
914
1066
1033
950
936
1059
988
878
772
940
930
Profit
CPU (s)
FSA Gap (%)
IterLS
Profit
Avg
BKS
Instance-n
Table 1 continued
4.0
5.5
4.0
8.5
3.7
6.9
6.9
4.7
7.7
1.8
3.9
2.7
1.6
4.7
4.6
4.1
7.9
1.8
3.1
3.9
5.6
3.1
1.1
1.1
0.0
Gap (%)
0.3
1.6
2.3
1.3
1.1
1.0
2.3
2.7
1.3
1.0
1.7
1.6
1.9
2.4
1.6
2.0
1.5
1.4
1.7
1.6
1.4
1.2
1.7
1.6
2.1
CPU (s)
–
1041.0
937.6
884.8
841.2
1130.8
983.4
924.4
792
1037.2
972
948.4
1114
1070.6
1024.8
951.4
1089.4
1019.6
912.8
784
950
930
Profit
DABC
–
1.8
1.5
4.6
1.6
2.1
0.8
2.0
1.4
0.4
1.0
1.3
1.9
1.1
0.3
0.6
0.7
0.2
0.3
0.8
1.8
1.6
0.6
0.0
0.0
Gap (%)
–
107.4
34.0
117.2
81.4
119.2
168.8
138.0
135.2
65.6
135.6
116.8
170.4
164.4
130.2
142.2
187.8
129.0
77.4
218.6
105.4
49.4
107.8
132.2
142.4
CPU (s)
351
1008
923
851
820
1068
947
905
771
996
929
892
1061
1015
994
894
1037
970
890
781
950
920
Profit
HILS
0.6
4.9
4.6
6.1
5.3
4.5
6.3
5.6
3.5
3.0
5.1
5.2
6.3
7.0
5.0
5.8
3.7
6.2
5.1
5.6
4.3
2.0
0.8
0.0
1.1
Gap (%)
0.7
9.0
13.3
9.2
6.1
6.0
19.4
10.3
6.2
1.8
19.2
21.5
16.3
14.3
33.7
23.5
18.4
11.2
29.6
22.4
14.3
6.1
6.0
6.1
6.1
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 22 of 36
442
467
567
708
674
362
539
562
667
PR12-96
PR13-144
PR14-192
PR15-240
PR16-288
PR17-72
PR18-144
PR19-216
PR20-288
290
286
189
380
0.0
0.0
1.0
0.0
293
380
C109-100
370
2.2
0.0
0.0
4.0
2.8
0.0
0.9
R103-100
370
C108-100
362
–
–
–
–
–
–
–
–
–
CPU (s)
Gap (%)
286
370
C107-100
340
–
–
–
–
–
–
–
–
–
R102-100
340
C106-100
340
–
–
–
–
–
–
–
–
–
4.5
340
C105-100
403
389
360
317
Profit
GA
2.0
2.5
2.7
0.8
0.2
4.1
5.3
1.1
1.9
0.9
Gap (%)
198
420
C104-100
10.2
14.8
10.9
11.5
7.5
16.6
13.4
12.0
9.2
2.3
Profit
R101-100
400
C103-100
568
501
477
335
562
613
499
424
432
CPU (s)
1.1
360
C102-100
2.0
2.5
2.7
0.8
0.2
4.1
5.3
1.1
1.9
0.9
Gap (%)
DABC
Avg
320
C101-100
9.6
14.5
11.2
11.1
4.4
17.1
9.9
15.0
3.6
2.5
BKS
570
499
479
346
559
638
482
450
431
Profit
CPU (s)
Profit
Gap (%)
FSA
IterLS
Instance-n
Avg
BKS
Instance-n
Table 1 continued
588
479
459
363
582
616
479
436
427
Profit
HILS
9.4
11.8
14.8
14.8
−0.3
13.6
13.0
15.5
6.6
3.4
Gap (%)
0.3
0.3
0.2
0.3
0.3
0.3
0.3
0.3
0.3
0.4
0.4
0.3
0.3
CPU (s)
6.3
10.2
6.2
4.1
1.0
13.3
16.4
6.0
2.7
2.1
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 23 of 36
244 252 277 298
RC106-100
RC107-100
RC108-100
960 980 910 930 930 950
C203-100
C204-100
C205-100
C206-100
C207-100
C208-100
931
910
905
893
952
931
2.0
2.2
2.7
1.9
2.9
3.0
3.1
930
C202-100
901
2.5
870
C201-100
848
2.4
3.0
2.9
2.8
3.3
2.3
Avg
289
269
245
236
294
1.5
1.9
RC105-100
1.7
301
262
261
216
293
1.3
RC104-100
298
R112-100
293
2.5
266
297
R111-100
277
2.5
RC103-100
284
R110-100
270
2.6
266
277
R109-100
300
2.3
RC102-100
308
R108-100
292
0.3
1.4
299
R107-100
292
1.2
2.0
219
293
R106-100
244
297
RC101-100
247
R105-100
Gap (%)
1.8
303
R104-100
Profit
GA
Avg
BKS
Instance-n
Table 1 continued
1.0
1.0
1.0
1.0
1.5
1.1
1.0
0.8
0.3
0.3
0.3
0.3
0.3
0.4
0.3
0.3
0.2
0.3
0.4
0.4
0.3
0.3
0.3
0.4
0.3
0.2
0.3
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 24 of 36
930 1028 1093 953 1032 1077 1117 959 991 1051
R202-100
R203-100
R204-100
R205-100
R206-100
R207-100
R208-100
R209-100
R210-100
R211-100
1140 859 899 983 1057
RC204-100
RC205-100
RC206-100
RC207-100
RC208-100
Avg
1003
RC203-100
976
896
850
808
1044
866
7.6
7.7
8.9
5.5
5.9
8.4
13.7
7.7
938
RC202-100
866
3.4
795
RC201-100
768
7.1
8.0
7.7
6.5
6.7
8.4
7.6
8.1
6.9
7.2
Avg
967
915
897
1042
986
954
876
1018
954
6.8
4.6
867
2.5 760
Gap (%)
797
Profit
GA
R201-100
BKS
Avg
Instance-n
Table 1 continued
1.5
1.4
1.7
1.3
1.3
2.0
1.3
1.3
1.3
2.0
2.4
1.8
1.7
2.4
2.1
2.0
1.6
2.5
2.2
1.8
1.2
1.0
CPU (s)
Aghezzaf and Fahim SpringerPlus (2016)5:1781 Page 25 of 36
300
320
340
300
280
310
320
340
C103-50
C104-50
C105-50
C106-50
C107-50
C108-50
C109-50
159
208
220
227
192
208
223
226
R105-50
R106-50
R107-50
R108-50
R109-50
R110-50
R111-50
R112-50 0.0 180
0.2
0.2
0.2
0.2
0.2
0.2
0.3
0.2
0.1
0.3
0.2
0.1
0.0
226
223
208
192
223
220
203
159
227
210
Adjusted CPU (s)
50.9
3.1
1.8
1.6
0.2
410.6
9.8
0.6
0.0
152.7
30.0
RC101-50
180
227
R104-50
Avg CPU (s)
214
0.2
R103-50
195
198
R102-50
0.7
0.1 0.1
126
0.3
0.2
0.3
0.2
0.2
0.3
0.3
0.3
0.3
0.3
126
0.0
340
320
310
280
300
340
320
300
270
Adjusted CPU (s)
11.8
0.9
0.2
0.0
0.0
0.0
81.4
23.0
1.1
0.0
CPU (s)
R101-50
Avg CPU (s)
270
C102-50
Profit
Profit
CPU (s)
VAN
Opt
C101-50
Instance-n
Table 1 continued
180
226
223
208
192
227
219
208
159
227
214
198
126
340
320
310
280
300
330
320
300
270
Worst
VNS
180
226
223
208
192
227
220
208
159
227
214
198
126
340
320
310
280
300
340
320
300
270
Best
180
226
223
208
192
227
219.9
208
159
227
214
198
126
340
320
310
280
300
340
320
300
270
Avg
30.8