## 3 Simulated Annealing Approach for the Corridor Planning Problem  
The shortest and least expensive routes between two geographical locations can be obtained applying exact methods, and a GIS facilitates their computation, as well as the spatial analysis and the management of geographic information by using robust data models [39; 40; 41]. Since a GIS commonly uses Dijkstra-based algorithms, the corridor width is not considered in their calculations, and alternative routes to the best one cannot be obtained [42]. The corridor width can be conceptualized in different ways based on the map scale, but one additional mechanism is needed to generate more than one route. In this case, heuristics are applied to reach near-optimal solutions in a reasonable time, since they are reliable and straightforward strategies for solving complex problems. The simulated annealing (SA) algorithm is a heuristic technique finding near-optimal solutions for combinatorial problems with large solution spaces [43]. SA is based on a thermal treatment for solids, named annealing, where one material is exposed to high temperatures to the melting point and is cooled gradually to a cooling point. Annealing allows the molecules to organize themselves to reach minimal potential energy, thereby achieving higher resistance. The SA algorithm is used to solve complex optimization problems such as the traveling salesman problem [44], the automatic design of integrated circuits, and the noise suppression in digital images [45], as well as in image compression [46], among other problems. SA implements an iterative local search guided through a stochastic process with a given probability [47]. First, SA starts with an initial candidate solution \(s\), and a high-temperature \(T\). With an iterative structure, SA disturbs \(s\) until \(T\) reaches a value less than the stop criterion. During this process, in each iteration, a new candidate solution \(s^{\prime}\) is selected from the neighborhood of the current solution. These solutions are compared, and the best one is chosen as the new current solution. In some cases, a not improved solution is accepted to escape a local optimum and to continue searching for better solutions. The probability of taking not improved solutions depends on the \(T\) parameter, which decreases in each algorithm iteration using a control coefficient \(\beta\). Since \(T\) starts with a high value, random changes are allowed. However, as the temperature is lowered slowly, the number of accepted changes decreases until the procedure reaches a stationary state. SA adopts different stochastic methods to determine the acceptance probability of a new solution but commonly uses the algorithm proposed by [48], where the energy change in a cooling process of a physical system is simulated. Thermodynamics laws state that at a temperature \(T\), the probability of energy rise of magnitude \(\Delta E\) is determined by the expression \(P(\Delta E)=e^{-\Delta E/kT}\), where \(k\) is the Boltzmann constant. It is clear that when SA perturbs only one solution in each stage of its iterative process, it promotes the solution space exploitation. Furthermore, by the use of its acceptance criteria, the solution space exploration is encouraged. Although other heuristics, such as swarm and evolutionary algorithms, have demonstrated to reach near-optimal solutions for diverse optimization problems, they consume more computational resources than that used by SA. These algorithms disturb a set of candidate solutions in each step of their iterative process, and this implies the evaluation of several solutions, unlike SA, evaluating only one candidate solution. The SA algorithm applied in this paper to locate corridors explores alternative routes between the origin and destination node on each iteration, until the best one is found. The objective function considers both the minimum distance and the feasibility costs of passing on the study region.