The Field Technician Scheduling Problem with Experience-Dependent Service Times

: This research studies the Field Technician Scheduling Problem with Experience-Dependent Service Times (FTSP–EDST), involving three main features: matching maintenance tasks with available technicians, sequencing the tasks, and considering the experience-dependent service times. Given a limited number of technicians, the objective is to maximize the collected proﬁt for servicing tasks. This study formulates the problem as a mixed-integer linear programming model and proposes a Modiﬁed Iterated Local Search (MILS) to solve the benchmark problem instances of various sizes. A set of FTSP–EDST instances is generated based on existing publicly accessible data, and MILS is utilized to solve these newly generated instances. Computational results conﬁrm the effectiveness of MILS in solving FTSP–EDST.


Introduction
Power plant maintenance service providers face many challenges, one of which is that their customers are geographically dispersed.Due to limited resources, the providers must develop an effective plan to fulfill their customer needs.Dutot et al. [1] present a real-life-based problem from the telecommunication services of France Telecom.A number of technicians are grouped into teams to serve tasks within a given planning period.Technicians own a set of skills where each skill has a unique proficiency level.Each task requires a set of skills with certain proficiency levels.Consequently, not all tasks can be performed by any technician.Moreover, a routing task based on the well-known vehicle routing problem [2] is integrated.Considering the wide range of real-life applications, the resulting problem called the Technician Routing and Scheduling Problem (TSRP) is intriguingly complex.
There is no guarantee that all tasks can be performed in a given planning period due to resource constraints.In order to handle this issue, we follow Damm et al. [3] who propose an objective of maximizing the total priority of tasks performed and name it the Field Technician Scheduling Problem (FTSP).However, a limitation by Damm et al. [3] is that all technicians who are capable of performing a task have the same service time regardless of their proficiency levels, resulting in either overestimating or underestimating the total 1.
We investigate a new variant of FTSP called the Field Technician Scheduling Problem with Experience-Dependent Service Time (FTSP-EDST).The problem is inspired by the fact that each technician may require a different amount of service time, depending on his/her skill levels.

2.
We formulate a mixed-integer linear programming model for FTSP-EDST.The model is extended from the model for FTSP developed by Damm et al. [3].

3.
A scalable solution approach based on the Iterated Local Search (ILS) is developed to provide high-quality solutions for FTSP-EDST.Several modifications and adjustments are implemented to tackle underlying problem characteristics, resulting in the development of the Modified Iterated Local Search (MILS) metaheuristic.
The rest of this paper runs as follows.Section 2 provides a non-exhaustive review of TSRP and its closely related problem, TOPTW.Section 3 formally describes FTSP-EDST and its mathematical formulation.Section 4 explains the development of the metaheuristicbased solution method in detail.Section 5 presents a series of computational results.Finally, Section 6 offers the conclusion of our work.

Literature Review 2.1. Technician Scheduling and Routing Problem
Dutot et al. [1] propose a technician and task scheduling problem (TTSP) based on a real-life problem in a large telecommunication company.Each technician possesses a set of skill domains, and each task has a certain priority and requires a set of skills at certain levels.Outsourcing tasks is possible as long as it is still within the total budget given.The technicians are grouped into teams, and the aim of TTSP is to produce an assignment of technician teams to service tasks with a minimized weighted makespan of all priorities.Kovacs et al. [8] extend TTSP by considering the routing aspect for servicing tasks, calling it technician scheduling and routing problem (TSRP).Its objective is to design routes for vehicles with a given number of technicians with different levels of skills and a number of tasks requiring different levels of skills and time windows to be served.Matching technicians to tasks adds complexity to the design of cost-efficient routes.Besides the variant with team building (i.e., allowing one or more technicians in one vehicle due to a specific condition in which most of the tasks cannot be conducted by only one technician), another variant without team building is also addressed.Similar to TTSP, an outsourcing option is available.However, the outsourcing cost is integrated as a part of an objective function instead of being taken into account as a constraint.
The high practicability of TSRP has driven investigations into TSRP variants.Zamorano and Stolletz [9] address an extension of TSRP with team building by considering a wider planning horizon-i.e., one week.It aims to produce weekly schedules that minimize total operational costs involving traveling costs, waiting time of customers, and technician overtime.Each task may have multiple time windows, depending on the flexibility of the task.As the plan expands over multiple days, the composition of technicians in every team may differ every day.
Chen et al. [4] also extend the TSRP with multiple planning periods by explicitly considering the experience-based learning of technicians.In particular, a technician gains a certain experience associated with the task serviced, leading to a reduced service time for servicing a task requiring the same skills.Instead of integrating the planning into a wider planning horizon as conducted by Zamorano and Stolletz [9], a rolling horizon approach is utilized-i.e., solving TSRP in every period considered-due to the assumption in which demands become known at the beginning of a day.
Mathlouthi et al. [10] give another variant arising from the repair and maintenance services of electronic transaction equipment.Each technician departs from their origin, such as home, to visit customers, in turn forming a variant of TSRP without team building.Each customer requires one or more spare parts, and some customers may need special parts.Each technician is allowed to visit a depot consisting of spare parts and special parts required by customers, thus increasing the number of customers that can be served.The objective of the problem proposed is to maximize the total gains resulting from servicing customers.
Pourjavad and Almehdawe [11] extend TSRP without team building by considering multiple days and overnight, i.e., a technician returns to the depot after two or more days.This consideration arises due to the wide range of working areas.The objective of the problem is to minimize total operational costs consisting of traveling costs, technicians' costs, and overnight costs.Analyses are conducted to show which scenarios, like with or without overnight, result in a better objective.
Due to increasing concern regarding the negative environmental impact caused by the transportation sector, Villegas et al. [5] address a variant of TSRP without team building by considering a mixed fleet between conventional vehicles and electric vehicles (EVs).To realistically model the problem, the driving style of each technician is taken into account, leading to different energy consumptions of EVs.Moreover, recharging stations with multiple technologies are provided for EVs to recharge, and a non-linear function for recharging is used to approximate realistic recharging times.
Exact algorithms and metaheuristics are the most common solution approaches to be developed for tackling TSRP.Regarding the field of exact algorithms, Branch-and-price, developed by Barnhart et al. [12], is the most popular algorithm [9,13].The main limitation of the exact algorithm is the problem size to be solved.Zamorano and Stolletz [9] propose a branch-and-price that can solve TSRP, encompassing multiple planning periods, 25 tasks, and 5 days, while Mathlouthi et al. [13] develop a similar type of exact algorithm that can provide solutions for up to 45 tasks.
Metaheuristics are well known due to their capability to provide feasible solutions in reasonable times.Local-search-based heuristics that generate a new solution by applying local search neighborhood moves have been developed, e.g., record-to-record algorithm [4] and Tabu Search [10].Kovacs et al. [8] propose another type of metaheuristic, Adaptive Large Neighborhood Search, which is based on a principle of destroying and repairing a solution over iterations.
Pekel [14] develops Improved Particle Swarm Optimization by integrating local search operators into the original Particle Swarm Optimization and shows the superiority of such integration.Pekel [15] modifies a basic Genetic Algorithm in a similar way, naming it Improved Genetic Algorithm, and shows that it is superior compared to the method proposed in Pekel [14].Villegas et al. [5] give a two-phase parallel matheuristic by iteratively solving the well-known set-covering problem [16].It produces a new solution after building a pool of routes by implementing a greedy randomized adaptive search procedure in a parallel fashion.

Team Orienteering Problem
A closely related problem to TSRP is the Team Orienteering Problem (TOP).Here, a route maximizes total scores collected from the visited places given a limited amount of time.The application can be found in the areas of sport, home fuel delivery, and technician routing [17].
Tang and Miller-Hooks [18] pioneer the implementation of TOP in the field of technician routing by identifying a similar condition, i.e., each technician needs to maximize the number of tasks to be finished given specific working hours.However, they assume that all technicians have the appropriate skills to perform all tasks.Damm et al. [3] offer a variant of TSRP called FTSP.Unlike Tang and Miller-Hooks [18], Damm et al. [3] explicitly consider skill domains owned by each technician and time windows for performing tasks into the problem.The objective of Damm et al. [3] is to maximize the total priorities gained by servicing tasks.In a similar fashion, time windows are incorporated in TOP by Vansteenwegen et al. [17], forming a new variant called Team Orienteering Problem with Time Windows.While FTSP explicitly considers the skill domains of technicians, TOPTW has no such assumptions.Consequently, TOPTW is a special case of FTSP where all technicians are able to perform all tasks.
TOPTW has shown interesting computational complexity, drawing attention from the research community to develop various metaheuristics that provide high-quality solutions to the problem.Vansteenwegen et al. [17] present the first metaheuristic based on Iterated Local Search to provide solutions in a significantly short time.Since then, various metaheuristics and matheuristics have been developed to improve the solution quality.On the one hand, well-known metaheuristics employing a single solution and utilizing local search neighborhood moves to produce new solutions involve Simulated Annealing [19], Variable Neighborhood Search [20], and Iterated Local Search [17,21].On the other hand, population-based metaheuristics commonly developed for TOPTW are ant colony [22], artificial bee colony algorithm [6,23], and discrete particle swarm optimization [7].Hu and Lim [24] propose a matheuristic containing various local-search-based moves, a Simulated Annealing acceptance criterion, and an integer programming model for combining routes.

Problem Description and Formulation
We define FTSP-EDST on a directed graph G = (V, A), where V = {0, . . . ,N} denotes the set of nodes comprising the depot and the tasks, and A = {(i, j)|i ∈ V, j ∈ V, i = j} represents the set of arcs connecting nodes in V.In addition, we define V = {1, . . . ,N} as the set of tasks to be serviced.A set of technicians T is available at the depot to serve tasks.The traveling time from node i to node j is d ij .
We define S as the set of skill domains and L as the set of proficiency levels.On the one hand, each technician t ∈ T possesses a subset of skills with certain proficiency levels defined in a binary matrix p t ls |L|×|S| .If technician t has a proficiency level l for skill domain s, then p t ls = 1.This also means that p t l s is 1 for every l < l.On the other hand, each task j ∈ V requires a subset of skills with certain proficiency levels defined in an integer vector q j s |S| .Technician t ∈ T is able to perform task j ∈ V if p t ls = 1, where l = q i s for all s ∈ S. To simplify the mathematical model, we rewrite the information contained in matrix p t ls |L|×|S| and vector q j s |S| into a binary parameter λ jt , where j ∈ V and t ∈ T contain the information for whether technician t is capable of servicing task j.Each task j ∈ V has a profit ρ j and time windows e j , l j .We define (e 0 , l 0 ) as the depot opening and closing times.The service time of task j depends on the skills possessed by the technician who performs the task.We define a service time matrix [z ll ] |L|×|L| , where z ll denotes the service time of a technician who has a skill domain with proficiency level l to perform a task requiring a skill domain with proficiency level l .In order to calculate the service time r tj of technician t for serving task j, we sum up the service times from all skill domains required by the task based on matrix [z ll ] |L|×|L| .A technician's route starts from the depot, visits a sequence of tasks that can be performed based on λ jt , and returns to the depot.
The decision variables are described as follows: x ijt denotes a binary variable that tracks whether technician t traverses from node i to node j, y jt denotes a binary variable tracking the assignment of task j to technician t, and τ i represents the service start time at node i.The objective of FTSP-EDST is to create routes for available technicians that maximize profit collected from finishing tasks.
Figure 1 illustrates a solution for FTSP-ES.Two technicians are presented with 10 tasks.There are 4 tasks that can only be performed by the first technician (T1, T3, T4, and T10), 3 tasks that can only be performed by the second technician (T2, T5, and T6), and 3 tasks that can be performed by either one of two technicians (T7, T8, and T9).Among all tasks, two tasks remain unserved, i.e., T1 and T6.Objective function (1) aims to maximize the total profits collected by all employed technicians.Constraint (2) ensures that a task can only be performed by a capable technician.Constraint (3) guarantees flow conservation.Constraint (4) connects the flow variables with the assignment variables.Constraint (5) ensures that each technician only performs at most one trip.Constraint (6) tracks the service start time at visited tasks.Constraint (7) ensures that each task is serviced in its time window.Constraint (8) guarantees that each technician returns to the depot at the upper-bound time windows of the depot at the latest.Constraint (9) ensures that an assignment of a task to a technician cannot be performed if the technician is incapable.Constraints ( 10)-( 12) define the natural ranges of decision variables.

Modified Iterated Local Search
Iterated Local Search has been widely used for providing solutions to various optimization problems, like logistics and transportation [25], production scheduling [26], nurse rostering [27], and school or university timetabling problems [28].ILS works on a single solution by iteratively applying a set of local search operators, i.e., operators creating a neighborhood solution by changing the structure of a given solution.In order to escape from the local optima, ILS commonly implements a perturbation procedure after executing local search operators by randomly changing the structure of a given solution [29].
Our algorithm is inspired by the works of Vansteenwegen et al. [17] and Labadie et al. [30] for solving TOPTW.In particular, Vansteenwegen et al. [17] propose the first ILS with a mechanism for inserting unvisited locations.Several locations currently visited in the solution are removed, and the insertion mechanism is implemented as an effort to improve the profit as much as possible.Labadie et al. [30] implement local search operators existing in the literature for reducing the total traveling time before applying their proposed insertion mechanism to improve the chance of obtaining a solution with higher profit.These two mechanisms have lately been widely adopted for basic components of various heuristics proposed for solving TOPTW [21,24].
TOPTW is a special case of FTSP-EDST as mentioned in Section 2.2.Thus, we develop a Modified Iterated Local Search by including local search operators and insertion mechanisms with three modifications.First, we implement a straightforward constant time feasibility check procedure regarding compatibility between technicians and tasks and an efficient time windows feasibility check procedure adopted from Nagata et al. [31].The first checking procedure can be realized by storing the information in a matrix of binary parameters indicating the compatibility between technicians and tasks.Second, we implement the acceptance criterion of the Simulated Annealing heuristic as a complementary mechanism to the perturbation procedure of Iterated Local Search (ILS).Third, we integrate noise into the insertion mechanism described in Section 4.3 to help the algorithm escape from the trap of local optima.

Generating an Initial Solution
The solution representation we develop for FTSP-EDST consists of two types of information, technicians' routes and auxiliary information, which enable an efficient time windows feasibility check with O(1) time complexity for several classical operators, which we describe in Section 4.3.We refer to Nagata et al. [31] for the detailed description of the required auxiliary information and the efficient time windows feasibility check procedure.
The Initial solution serves as the input for our MILS.The procedure iteratively inserts a task resulting in the least change in traveling time into a set of technicians and terminates when no task is feasible to be inserted into the solution.

Modified Iterated Local Search for Solving FTSP-EDST
Our proposed MILS described in Algorithm 1 requires five parameters: η max , β, γ, α, and η loop .After generating an initial solution, the temperature T required for the Simulated Annealing acceptance criterion is calculated in Line 2. The calculation shows that T is initially set into a value such that a solution, which is 1 + β worse than the initial solution, is accepted with a probability of γ.We set the best solution so far as S * and the neighborhood solution S w to be the same as the incumbent solution S.
Two loops are nested in our proposed MILS.The first loop described in Lines 5-19 aims to generate new neighborhood solutions in an attempt to find solutions of better quality.At the same time, T is gradually reduced by a multiplier α, and a termination criterion is checked in the second loop, i.e., the maximum number of consecutive non-improving first loops η max .
The first loop starts with the implementation of a local search procedure to S w (Section 4.3).If the updated S w has an objective (i.e., total collected profit) higher than S, then S is replaced by S w .Furthermore, S * is replaced by S w if S w produces a better objective than the current S * .However, S w is not immediately rejected if the resulting objective is lower than that of S. The Simulated Annealing acceptance criterion is implemented.In particular, S w has a probability of e obj(S w )−obj(S) T to be accepted.The perturbation procedure shake( ) described in Line 18 is utilized to randomly change the structure of S w .The procedure takes i s as an input and removes i s consecutive tasks visited in every technician's route.The starting position of a task to be removed is randomly determined, and the position returns to the beginning of the processed route if no task can be removed further at the current position.The value of i s is adjusted in either Line 11 into its default value or Line 19.Furthermore, adjustValue( ) increases the value of i s by 1 every 2 iterations of the first loop and adjusts the value into 1 when it is greater than the number of tasks visited in the longest route.Finally, the first loop's routine iterates up to η loop .

Algorithm 1 Pseudocode for MILS
Two loops are nested in our proposed MILS.The first loop described in Lines 5-19 aims to generate new neighborhood solutions in an attempt to find solutions of better quality.At the same time,  is gradually reduced by a multiplier , and a termination criterion is checked in the second loop, i.e., the maximum number of consecutive non-improving first loops  .The first loop starts with the implementation of a local search procedure to  (Section 4.3).If the updated  has an objective (i.e., total collected profit) higher than , then  is replaced by  .Furthermore,  * is replaced by  if  produces a better objective than the current  * .However,  is not immediately rejected if the resulting objective is lower than that of .The Simulated Annealing acceptance criterion is implemented.In particular,  has a probability of  ( ) to be accepted.The perturbation procedure ℎ( ) described in Line 18 is utilized to randomly change the structure of  .The procedure takes  as an input and removes  consecutive tasks visited in every technician's route.The starting position of a task to be removed is randomly determined, and the position returns to the beginning of the processed route if no task can be removed further at the current position.The value of  is adjusted in either Line 11 into its default value or Line 19.Furthermore, ( ) increases the value of  by 1 every 2 iterations of the first loop and adjusts the value into 1 when it is greater than the number of tasks visited in the longest route.Finally, the first loop's routine iterates up to  . Algorithm

Neighborhood Moves
The local search in MILS contains two phases: (1) traveling time reduction and (2) profit improvement.The first phase has three neighborhood moves described as follows: 1. Relocate: inserting a task into a new position.2. Exchange: swapping the positions of two tasks.

Neighborhood Moves
The local search in MILS contains two phases: (1) traveling time reduction and (2) profit improvement.The first phase has three neighborhood moves described as follows: 1.
Relocate: inserting a task into a new position.
2-opt: removing and replacing two arcs in a route with re-ordering the tasks visited in between the arcs.
The second phase consists of two neighborhood operators: (1) insertion and (2) replace.First, the insertion operator iteratively inserts a task selected based on a particular criterion, i.e., the highest ratio of squared profit value and the traveling time change resulting from the insertion of the task [17].Second, the replace operator selects and replaces a visited task with an unvisited task in an attempt to further increase the total profit collected.In addition, we add noise to the measurement metric used by the insertion and replacement operators, i.e., we multiply the measured value with a value randomly generated from U(0.9, 1.1).
The O(1) time windows feasibility checking procedure is implemented on first-phase inter-route operators and second-phase operators.Next, the classical time windows feasibility checking procedure with a non-constant time complexity (depending on a route's length) is utilized for first-phase intra-route operators.
Each operator in both phases iteratively checks a feasible combination and utilizes the first improvement strategy, i.e., the operator terminates its search once a neighborhood solution with a lower traveling time is found.Algorithm 2 summarizes the local search of our MILS, and Algorithm 3 describes the second phase of the local search.The improvement described in Line 5 depends on which neighborhood move is executed: (1) total traveling time reduction for neighborhood moves that belong to the first phase (N i , i = 1, . . ., 5) and (2) increased total profit for the second phase (N 6 ). 3. 2-opt: removing and replacing two arcs in a route with re-ordering the tasks visited in between the arcs.
The second phase consists of two neighborhood operators: (1) insertion and (2) replace.First, the insertion operator iteratively inserts a task selected based on a particular criterion, i.e., the highest ratio of squared profit value and the traveling time change resulting from the insertion of the task [17].Second, the replace operator selects and replaces a visited task with an unvisited task in an attempt to further increase the total profit collected.In addition, we add noise to the measurement metric used by the insertion and replacement operators, i.e., we multiply the measured value with a value randomly generated from (0.9, 1.1).
The (1) time windows feasibility checking procedure is implemented on first-phase inter-route operators and second-phase operators.Next, the classical time windows feasibility checking procedure with a non-constant time complexity (depending on a route's length) is utilized for first-phase intra-route operators.
Each operator in both phases iteratively checks a feasible combination and utilizes the first improvement strategy, i.e., the operator terminates its search once a neighborhood solution with a lower traveling time is found.Algorithm 2 summarizes the local search of our MILS, and Algorithm 3 describes the second phase of the local search.The improvement described in Line 5 depends on which neighborhood move is executed: (1) total traveling time reduction for neighborhood moves that belong to the first phase ( ,  = 1, … , 5) and ( 2) increased total profit for the second phase ( ).

Computational Results
The proposed MILS is coded in C++ programming language, and MILP described in Section 3 is written in AMPL with CPLEX as the solver.Both MILS and MILP are executed in a computer with an intel Core i7-11700 2.5 GHz CPU.Since FTSP-EDST is a new Two variants are proposed for both relocate and exchange moves: intra-route (only involving one route) and inter-route (involving two routes) operators, while 2-opt only works as an intra-route operator.The implementation sequence for these operators is (1) relocate-inter, (2) exchange-inter, (3) relocate-intra, (4) exchange-intra, and (5) 2-opt.
The second phase consists of two neighborhood operators: (1) insertion and (2) replace.First, the insertion operator iteratively inserts a task selected based on a particular criterion, i.e., the highest ratio of squared profit value and the traveling time change resulting from the insertion of the task [17].Second, the replace operator selects and replaces a visited task with an unvisited task in an attempt to further increase the total profit collected.In addition, we add noise to the measurement metric used by the insertion and replacement operators, i.e., we multiply the measured value with a value randomly generated from (0.9, 1.1).
The (1) time windows feasibility checking procedure is implemented on first-phase inter-route operators and second-phase operators.Next, the classical time windows feasibility checking procedure with a non-constant time complexity (depending on a route's length) is utilized for first-phase intra-route operators.
Each operator in both phases iteratively checks a feasible combination and utilizes the first improvement strategy, i.e., the operator terminates its search once a neighborhood solution with a lower traveling time is found.Algorithm 2 summarizes the local search of our MILS, and Algorithm 3 describes the second phase of the local search.The improvement described in Line 5 depends on which neighborhood move is executed: (1) total traveling time reduction for neighborhood moves that belong to the first phase ( ,  = 1, … , 5) and ( 2) increased total profit for the second phase ( ).

Computational Results
The proposed MILS is coded in C++ programming language, and MILP described in Section 3 is written in AMPL with CPLEX as the solver.Both MILS and MILP are executed in a computer with an intel Core i7-11700 2.5 GHz CPU.Since FTSP-EDST is a new

Computational Results
The proposed MILS is coded in C++ programming language, and MILP described in Section 3 is written in AMPL with CPLEX as the solver.Both MILS and MILP are executed in a computer with an intel Core i7-11700 2.5 GHz CPU.Since FTSP-EDST is a new problem, a set of new benchmark instances is generated and described in Section 5.1.We conduct parameter tuning for our proposed algorithm and present the results in Section 5.2.Section 5.3 gives the computational results related to TOPTW's existing benchmark instances.We compare the results obtained by our algorithm with the solution method obtained by the literature.Section 5.4 finally presents the results of solving FTSP-EDST with both our algorithm and MILP.
From each TSRP instance, we generate one FTSP-EDST instance.First, we limit the number of technicians by selecting a certain number of available technicians in TSRP instances and turn the demand information provided in a TSRP instance into the profit obtained for serving tasks.Second, we generate the experience-dependent service time by utilizing Tables 1 and 2, depending on how many proficiency levels exist in an instance.Both Tables 1 and 2 contain a set of multipliers that depend on two factors: the proficiency level required to finish a task (R i ) and the proficiency level possessed by a technician (A i ).Given a TSRP instance, the steps for generating a processing time for performing a task based on skill proficiency possessed by a technician are described below.

1.
Determine µ the maximum number of skill domains required among all tasks.2.
Divide the actual service time of each task by µ.

3.
Generate a new service time for each task depending on the proficiency levels of skill domains possessed by each technician.We use Tables 1 and 2 for this purpose.For example, given an instance with four proficiency levels and a task requiring two skill domains, one of them requires a proficiency level of R 1 , and another requires R 2 .A technician possesses these skill domains, both with proficiency levels of A 3 .Let the value obtained from step 2 equal 5 min.Based on the given information and Table 1, the technician requires 0.8(5) + 1.0(5) = 9 min to finish the task.Similar mechanisms apply for an instance with six proficiency levels.
Table 1.Experience-dependent service times per skill domain for four proficiency levels.
Experience-dependent service times per skill domain for six proficiency levels.

Parameter Tuning
This section presents a detailed description of parameter tuning for our MILS.We randomly select five TOPTW instances originally developed by Cordeau et al. [33].For each instance, we use four combinations of the number of vehicles, i.e., 1 to 4. In total, we utilize 20 TOPTW instances.
One Factor at A Time (OFAT) is utilized to obtain a good combination of MILS parameters.Table 3 summarizes candidates for its parameters.The mechanism iteratively selects one parameter to be tuned while fixing the values of remaining parameters.We use average best solutions over selected instances as the measurement metric for selecting the best value for each tested parameter.However, we also pay attention to the increase in computational time while using the aforementioned metric.Figure 2 presents the impact of changing parameters' values toward both average best solutions (Avg.) and average computational time (CPU) in seconds (s).Based on Figure 2a, the best candidate in terms of solution quality is 175.However, we select 125 because it provides good solution quality with less computational effort.Based on Figure 2d, we also use a similar argument for selecting the value of η loop .Finally, the selected combination of MILS parameters η max , β, γ, α, η loop is (125, 0.5, 0.5, 0.95, 50).
Table 4 summarizes the comparative results.The performance of each algorithm is evaluated by two metrics: the gap between the Best Known Solutions (BKSs) and solutions obtained by an algorithm Gap (%) compiled from the previously mentioned metaheuristics and the proposed MILS and computational time CPU (s).Gap (%) is calculated using Equation (13), where S represents the average solution quality provided by an algorithm.Table 4 presents the average gap (Avg) and the maximum gap (Max) from solving a group of instances.Our algorithm obtains a reasonably good solution quality.Avg ranges from 0 to 1.97%, while Max ranges from 0 to 6.44%.Our algorithm outperforms the results of the aforementioned methods in terms of solution quality for several groups of instances: Solomon .Two other methods that show their superiority are SAILS [21], which performs well in the group of Solomon 100, and I3CH [24], which obtains high-quality solutions in all instances with a larger number of vehicles (#vehicle = 3 and 4).
Vansteenwegen et al. [17] provide solutions to TOPTW benchmark instances under a significantly short computational time with worse solution quality as an obvious tradeoff.The average computational time of our algorithm is comparable with other methods in the group of Solomon 100, Cordeau 1-10, and Cordeau 11-20, while it takes more computational time for the group of Solomon 200.The experimental results on TOPTW benchmark instances show that our MILS is competitive with other methods, and thus we further utilize the algorithm for solving FTSP-EDST.

MILS Performance on Solving FTSP-EDST Instances
Table 5 presents the results of solving three groups of FTSP-EDST instances.In order to assess the performance of MILS, we execute MILP, as described in Section 3, and compare the obtained results with results provided by MILS.The results are dissected into two main columns, solution quality "objective value" and computational time in seconds "CPU (s)" with sub-columns representing the group of instances.Regarding "objective value", we run our MILS five times and record the best solution (MILS*) and the average solution (MILS).Regarding MILP, we set 7200 s as the time budget for CPLEX.An additional set of columns representing gaps between solutions (best and average) obtained by MILS and CPLEX is added to the table to highlight the performance of our MILS.
CPLEX can provide feasible solutions to all instances.In particular, CPLEX can obtain 28, 17, and 14 optimal solutions for small, medium, and large instances, respectively, while the remaining solutions are feasible yet not proven optimal because of time limitations.The average computational times for small, medium, and large instances are 1898.40s, 4093.29 s, and 4817.60 s, respectively.The bigger the problem size is, the longer time CPLEX will require to provide a solution, and the capability for providing high-quality solutions also decreases.On the other hand, MILS obtains all feasible solutions for small, medium, and large instances with average computational times of 8.09 s, 31.08 s, and 71.27 s, respectively.
The gaps in Table 5 are obtained by comparing the results obtained by MILS and those of CPLEX.The zero gap indicates that the solution obtained by both CPLEX and MILS are of the same quality, while the positive gap shows that the MILS provides a better solution compared to that of CPLEX.The average gaps in Table 5, ranging from 2.86% to 10.46%, clearly show the superiority of MILS over CPLEX for each tested dataset.In particular, our MILS provides 8, 17, and 21 better solutions compared to that of CPLEX for small, medium, and large datasets, respectively.The average solution qualities of MILS* and MILS show that our MILS provides reasonably robust solutions to each FTSP-EDST dataset.In conclusion, our MILS performs well in solving the newly generated FTSP-EDST instances of different problem sizes.
To show the convergence trend of the proposed approach, two large benchmark problems, C103_6x6 and RC103_7x4, are solved, and the obtained objective function values and iteration numbers are shown in Figure 3.As can be seen, the improvement of the solution decreases as the iteration number increases, and after a certain number of iterations, the solution does not improve.Thus, a larger number of iterations may not improve the quality of the solution.

Algorithm 3
Pseudocode for second phase of local search, N 6 3. 2-opt: removing and replacing two arcs in a route with re-ordering the tasks visited in between the arcs.

Figure 3 .
Figure 3. Evolution of best solutions obtained for C103_6x6 and RC103_7x4.

1
Pseudocode for MILS

Table 3 .
Candidates for tuning MILS parameters.

Table 4 .
Summary of comparative results on TOPTW benchmark instances.Bold value indicates that the corresponding algorithm achieves the smallest gap compared to the BKS among all the algorithms in the comparison.