# A Sim-Learnheuristic for the Team Orienteering Problem: Applications to Unmanned Aerial Vehicles
## 4 Our Sim-Learnheuristic Approach  
To effectively solve the hybrid TOP described in Section 3, we propose a novel sim-learnheuristic method that combines a biased-randomized heuristic multi-start (BR-MS) framework, Monte Carlo simulations (MCSs), and a multiple regression model. This methodology aims to combine the advantages of all elements, enabling efficient exploration of the search space for optimal solutions [31]. This sim-learnheuristic methodology extends the simheuristic approach proposed in [8] to solve the TOP with stochastic processing times. Figure 3 outlines the main components of the sim-learnheuristic methodology. The sim-learnheuristic method can be summarized in the following six main steps, which can be identified by labels S1 through S6. First, the optimization problem is initially converted to its deterministic version, where variables are replaced by their expected or most likely values, effectively eliminating uncertainty. This deterministic problem is then solved using a BR-MS framework, leading to the generation of multiple high-quality solutions. These deterministic solutions are subsequently subjected to a comprehensive evaluation, considering the various sources of uncertainty inherent in the problem. This evaluation involves a short number of MCS runs, during which random variables and dynamic elements are assigned different values based on probability distributions or machine learning models, respectively. Additionally, constraints are assessed under uncertain conditions. Descriptive statistics are computed for each solution, yielding detailed insights into their performance. The examination of these solutions informs the generation of new solutions within the BR-MS framework until a predefined stopping criterion, such as a maximum execution time, is met. Following the previous stage, a subset of top-performing solutions, referred to as 'elite' solutions, are further examined under uncertainty. This second examination involves a longer number of MCS runs than the initial evaluations. Based on this intensive examination, the solutions are ranked, and the best solution is recommended. The selection of the best solution may take into consideration measures of interest beyond just the expected value, such as variance or reliability, to ensure a more robust decision-making process. Algorithm 1 outlines the main steps of our sim-learnheuristic approach. The sim-learnheuristic algorithm receives an instance as input, comprising the nodes, the maximum number of vehicles, and the maximum travel time. First, a feasible initial solution (_initSol_) is generated by applying a savings-based heuristic (line 1). The savings-based heuristic was first proposed by [PERSON] et al. [8]. Then, a short number of MCS runs (\(n_{short}\)) are performed to determine the expected reward of the initial solution (line 2). At this point, the initial solution becomes the best-known solution so far (\(bestSol\)) and the pool of best stochastic solutions (\(eliteSols\)) is initialized with this solution (lines 3-4). Next, the algorithm performs an iterative procedure to generate new solutions until a maximum execution time is reached (lines 6-16). At each iteration, the algorithm generates a new solution (_newSol_) using a biased-randomized version of the savings-based heuristic (line 7). The biased-randomized heuristic introduces a slight modification in the greedy behavior, providing a certain degree of randomness while maintaining the logic behind the savings-based heuristic. The biased-randomized version considers each element in the edges list with a probability that follows a geometric distribution with a single parameter \(\beta\in(0,1)\), which controls the relative level of greediness in the randomized behavior of the algorithm. By employing a biased-randomized version of the savings-based heuristic, multiple alternative solutions can be generated without losing the logic of the original heuristic. Next, the algorithm compares the newly generated solution to the best-known solution.