1. Introduction
The Traveling Salesman Problem (TSP) is an NP-hard problem, as proven by Karp in 1972 [1]. It aims to construct a tour for a salesman who must visit n clients or cities, each of them exactly once, except that the first visited city is repeatedly visited at the end of the tour. The objective is to minimize the overall incurred distance. We shall rely on the following graph-theoretical formulation of the problem. We are given an undirected weighted complete graph , where the vertices from set V are identified as the clients or cities and the edges from set E represent connections between these cities, so that their weights represent the corresponding distances; i.e., for every , the weight is the distance between cities i and j. We consider the Euclidean setting of the problem, where the distances between the cities are calculated in a two-dimensional plane, the cities being represented as points in that plane. Therefore, we treat the vertices from set V as points in the two-dimensional plane and edges as vectors in that plane. In this way, we deal with a kind of projection of graph G in the two-dimensional plane. Note that the Euclidean TSP is symmetric, i.e., for any edge , .
A permutation of the n points defines a feasible tour in the two-dimensional plane. The cost of tour T, is
(1)
The objective is to find a feasible solution whose cost is the minimum, i.e., .
The Multiple Traveling Salesman Problem (MTSP) is a generalization of the TSP, which deals with salesmen and a specific city d called the depot. Correspondingly, k different tours are to be constructed such that each tour starts and ends at the depot. The bounded version of the MTSP (BMTSP) imposes a restriction on the number of cities each tour has to include where a feasible solution consists of k tours , where
(2)
An integer is the number of cities that tour has to include such that .
The cost of a feasible solution is
(3)
The aim in studying the BMTSP with several salesmen and with upper and lower bounds on the number of clients for each salesman is not actually to attain a better total cost compared to the case when a single salesman is used. The motivation here is to reduce the time needed to serve all the clients taking into account the limited capacity of each salesman (vehicle). Hence, an upper bound on the number of clients for every salesman is imposed, where a lower bound somehow “balances” the minimal load for each salesman. These considerations were first reported by Roerty [2] and later detailed by Necula [3].
In this study, we focus on the Euclidean version of the TSP, which remains strongly NP-hard [4]. Nevertheless, it is more “transparent” than the general version, in the sense that simple geometric considerations can be used in a solution process of the Euclidean version (see, e.g., [5]). Here, we describe our method, based on simple geometric observations, and three simple, fast, and easily implementable direct combinatorial algorithms yielded by the method.
Our method uses special types of convex hulls, which serve as a basis for the constructions of our initial and intermediate partial solutions. A basic type of convex hull that we employ is a girding polygon P [6], the minimal convex polygon that includes all points from set V, a convex hull for set V.
The method starts with a (partial) tour defined by the girding polygon P. If this tour is complete, i.e., contains all points from set V, then it is also an optimal tour. Otherwise, yet uncovered cities are iteratively added to the current partial solution until a feasible solution is constructed. This feasible solution is further improved using local search algorithms. This framework for the TSP is extended for the BMTSP using a preliminary stage that partitions the points from set V into k feasible subsets. The second proposed algorithm for the Euclidean TSP constructs convex hulls for the subsets of vertices from set V, convex polygons. These polygons may intersect each other. Every created polygon defines a partial tour. Iteratively, a partial tour defined by the polygon of a current iteration is unified with the partial tour of the previous iteration, resulting in the partial tour of the current iteration. In this way, the polygons and the tours are iteratively “inflated”.
We found a few algorithms that also use convex hulls in one way or another. For example, Macgregor and Ormerod in 1996 [7] tested the hypothesis that the difficulty of solving a TSP for humans is a function of the number of interior points of the corresponding girding polygon. They designed two experiments with instances of the TSP. The first experiment used instances with ten points, and the second one used instances with twenty points in total. These instances were solved by a group of people manually. These solutions were compared with the solutions obtained by three common heuristics, the nearest neighbor algorithm, the largest interior angle algorithm (Norback and Love in 1977 [8]), and a variation of a convex hull heuristic described by Golden et al. in 1980 [9] using the least expensive insertion criterion. Notably, the manually obtained solutions turned out to be better than the ones created by the heuristics. Sengupta and Fränti [10] continued this line of research, measuring the dependence of the complexity of the solutions obtained by the humans on the number of interior points of the polygon.
We also found several algorithms in the literature for the construction of a girding polygon. The algorithm from Andrew [11] reorders the set of vertices according to their x and y coordinates, which are used in the algorithm for the construction of the girding polygon. In [6,8,12,13,14], The girding polygon is constructed based angles of the girding polygon based on the calculation of specially determined angles. In [15,16,17], the set of vertices were iteratively partitioned into two subsets separated with a line, formed by the two specially determined points. The furthest from the constructed line vertex of one or the other subset was identified as the next point that was be included in the formed girding polygon. In [18,19,20], the construction algorithms that use “divide and conquer” techniques was presented, where a merge algorithm for two non-intersecting convex hulls was recursively applied.
Our algorithm for the construction of the girding polygon, can briefly be described as follows. It initially identifies four specially determined auxiliary points on the plane, one of which forms the partial polygon of the initial iteration 1. The girding polygon is formed in consecutive iterations, where is the number of vertices of polygon P. At each iteration , a subset of vertices from set V is associated with each of the auxiliary points. This division of the set V at iteration h is performed according to the coordinates of the four auxiliary points and the coordinates of the point added to the partial polygon at iteration . At iteration h, a new point from one of the four subsets is added to the partial polygon of iteration . This new point is chosen based on some geometric calculations. A brief description of this algorithm was originally given in [6], where MTSP is solved in two phases. In the first phase, after the construction of girding polygon P, set V is partitioned into k subsets using specially defined k auxiliary edges , here and k is the number of salesmen. An algorithm is proposed for the construction of a feasible tour for TSP, that is applied for each of the subsets at the second phase.
Next, we give a brief overview of some related work and applications. Jünger, Reinelt, and Rinaldi [21] published an overview in which they described applications of the TSP in real-life problems and exposed different heuristics and approximation algorithms. Possible applications occur in the drilling of printed circuit boards, in the analysis of the structure of crystals (Bland and Shallcross [22]), during material handling in a warehouse (Ratliff and Rosenthal [23]), in overhauling gas turbine engines (Plante, Lowe, and Chandrasekaran [24]), in the order-picking problem in warehouses (Ratliff and Rosenthal [23]), in constructing computer boards to optimize the connections between different board components, and in scheduling problems where job process times are sequence-dependent (Lenstra and Rinnooy Kan [25]).
Bektas [26] described different existing variants of the MTSP and their relationship with other problems; he also mentioned some other practical applications. Cheikhrouhou and Khoufi [27] published a comprehensive survey in which they included the approaches applied to unmanned aerial vehicles and/or drones; they also classified some practical applications for the MTSP: monitoring and surveillance, network connectivity, search and rescue, precision agriculture, and disaster management. Other applications arise in scheduling a printing press (Gorenstein [28]), in mission planning (Brumitt and Stentz [29]), in interview scheduling (Gilbert and Hofstra [30]), in crew scheduling, in school bus routing [31], in cash distribution in banks, and in recollecting cash from telephone booths and their repair (see Svestka and Huckfeldt [32] and Lenstra and Rinnooy Kan [25]). Other applications occur in the planning of autonomous robots (Yu et al. [33]) and in planning of unmanned aerial vehicle applications (Ryan et al. [34]). An application of the MTSP arises in the optimal design of global navigation satellite systems (Saleh and Chelouah [35]). As for the bounded version BMTSP, there exist meta-heuristic algorithms for its solution (see, for example, [3,36,37,38,39,40]).
We conclude this section with a brief description of how this paper is organized. In Section 2, we describe our general method and three particular algorithms that we constructed so far using our method. In Section 2.1, we give a detailed description of our algorithm that generates the girding polygon P. In Section 2.2, the insertion algorithm from [5] is described. We describe our basic algorithm for the BMTSP in Section 2.3, and we present another novel inflammation algorithm in Section 2.4. Section 3 presents the results of our experimental study. The last Section 4 contains some concluding remarks.
Part of the material from this work was presented at the 1st International Online Conference on Algorithms (IOCA 2021) (see [41,42]).
2. Methods
2.1. Construction of Girding Polygon P
Our girding polygon P can be seen as a convex geometric figure in 2-dimensional Euclidean space with the edges from the projection of graph G enclosing all vertices of set V. Polygon P can also be seen as a sub-graph of graph G. Note that polygon P immediately defines an optimal tour for its vertices. Our construction algorithm iteratively extends this tour until it creates a complete feasible tour.
Figure 1 represents a small problem instance “tsp10” with 10 vertices, which we use for the illustration purposes throughout this paper.
Our algorithm for the construction of the girding polygon P works in a number of iterations, being the partial polygon (polygonal line) of iteration h. Iteratively, at iteration h, one vertex, denoted by , is added to the partial polygon of iteration , i.e., (abusing again the notation, we also use for the set of vertices in polygon ).
Let and , and let be the corresponding vector (edge) in 2-dimensional Euclidean space. The algorithm for the construction of polygon P uses function (Equation (4)), which returns the angle between axes and vector ; see Figure 2.
(4)
Now, we turn to the description of the main algorithm that constructs polygon P. It works in four stages, each stage being associated with one of the specially determined auxiliary points in 2-dimensional Euclidean space. We denote these auxiliary points by , , , and and will refer to them as the “uppermost”, the “leftmost”, the “lowermost”, and the “rightmost” points, respectively [6]; see Figure 3. More formally,
Below, we illustrate how the four auxiliary points are determined for our problem instance “tsp10”.
Roughly, some points located in between points and are added at stage 1; some points located in between points and are added at stage 2; some points located in between points and are added at stage 3; some points located in between points and are added at stage 4. Correspondingly, the whole polygon area is divided into four subareas , , defined as follows:
The algorithm works in a number of iterations. Initially, , i.e., the initial partial polygon (polygonal line) consists of the uppermost vertex . At stage l, at iteration , is the vertex, added to the set , resulting in an augmented polygonal line (set) of iteration h. In particular, vertex is such that
Omitting some minor details, below, we give a formal description of the algorithm and its flowchart (Figure 4):
We illustrate the flowchart of Algorithm 1 () for the problem instance “tsp10” in Table 1. Column “h” is the current iteration, “l” is the current stage, and “condition” reflects the “while” condition.
In Figure 5, we illustrate the flowchart of Algorithm 1 () in graphical form for the same problem instance.
Algorithm 1: (V). |
|
2.2. The Basic 3-Phase Insertion Algorithm for TSP
In this section, we overview a 3-phase algorithm from [5]. It starts with phase 1 by constructing girding polygon P as described in Section 2.1. Recall that this polygon defines an initial (partial) tour . If that tour is complete, i.e., contains all vertices from set V, then nothing remains to be done; the algorithm halts with this optimal tour. Otherwise, this tour is iteratively extended at phase 2 by Algorithm 2 (see Figure 6).
Let be the partial tour constructed by iteration h. The algorithm iteratively, at iteration , inserts a new, yet non-covered vertex into the current tour , one that yields the minimal increase in the cost of the formed extended tour of iteration h (abusing slightly the notation, here and later, we may use for the set of vertices from tour ). The insertion algorithm stops when it constructs a complete feasible tour including all vertices from set V. In the figure below, we illustrate how the algorithm works for our problem instance.
Figure 7 illustrates the three iterations of the insertion algorithm for our problem instance “tsp10” with 10 vertices. Here, . At iteration 1, the costs and are calculated, and the vertex 9 is inserted between the vertices 7 and 8 since ; see Figure 7b. At iteration 2, is (re)calculated and the vertex 1 is inserted between vertices 5 and 6; see Figure 7c. Hence, a feasible solution is delivered. The pseudo-code of the insertion algorithm and its flowchart are given below.
Algorithm 2: (V). |
|
At phase 3, the algorithm iteratively improves the solution delivered by phase 2 using a specially constructed local improvement algorithm.
As is easy to verify, phase 1 runs in time , where is the number of vertices of the polygon P. Phase 2 needs at most iterations, where the selection cost at each iteration is . The improvement phase has an amortized time complexity of .
2.3. Partition, Construction, and Improvement Algorithm for the BMTSP
This section contains a brief description of our algorithm for the bounded version of the MTSP, BMTSP [42], this algorithm, roughly, extends the insertion algorithm for the TSP from the previous section with an additional partition phase. Our partition method adopts and modifies one from [6].
At the partition phase, we partition set in k subsets such that each subset respects the problem restriction, i.e., the number of vertices in each of them is within the range ).
Our partition algorithm first defines an auxiliary point c with the coordinate (, respectively) being the average of the x-coordinates (y-coordinates, respectively) of the vertices from set V:
andThen, k additional auxiliary points are defined. The first of them, is the farthest point from the depot. The remaining auxiliary points are determined in such a way that the angle between two adjacent vectors and is the same and equals and that all vectors have the same length (see Figure 8).
The partition of the set is now carried out in two stages. In stage 1, each subset , , contains a single vertex such that the distance between and the auxiliary point is the minimal possible among all yet non-selected vertices of set .
Once the initial sets , are so formed, repeatedly, for each subset , a new vertex v with the minimum distance between that vertex and a vertex from the current set are added to that subset, i.e., . This operation is repeated until the current set contains elements (see Figure 9).
In stage 2, the subsets of stage 2 are augmented. For every yet non-selected vertex v, a “closest” subset is looked for, i.e., a subset such that the distance between vertex v and a point from set is the minimal possible among all subsets from the current partition. This operation is repeated until there remains a non-selected vertex (see Figure 10).
Once the above partition process is complete, a feasible tour for each of the subsets is constructed by merely invoking the insertion algorithm from Section 2.2 (see Figure 11). This solution is iteratively improved by a local interchange algorithm, which iteratively selects a vertex from tour and alters its position within that tour or this vertex is relocated to another tour . The exchange is accomplished if it yields the decrease of the total cost; among all such exchanges, one which yields the maximum decrease is accomplished so that the resultant solution remains feasible.
Figure 12 illustrates the algorithm applied to our sample problem instance with 10 vertices. Here, we let salesmen, , and . In Figure 12a, the auxiliary point is 7. Then, the coordinates of auxiliary points and are calculated. Figure 12b represents the created partition of set with , and . In Figure 12c, tours , , and are represented.
As is easy to verify, phase 1 runs in time ; phase 2 has the same time complexity as the improvement phase of the previous algorithm; phase 3 runs in time ; see [42].
2.4. The Inflammation Algorithm
In this section, we describe our novel algorithm for the basic TSP that we call an inflammation algorithm. The name comes from the general approach used in the algorithm that iteratively constructs specially defined polygons delineating larger and larger areas in the plane with more and more points from set V. Each of these polygons defines a partial tour including a progressively increasing number of vertices.
Unlike the insertion algorithm, the first polygon that the inflammation algorithm constructs is the “smallest” one that is extended to “larger” polygons at consecutive iterations (in particular, it is not a girding polygon). The polygon constructed at iteration h, , is an inner convex hull, i.e., it does not contain vertices from set V in its interval area, except that it may contain vertices in its internal area that belong to the earlier-constructed polygons (if polygon contains a vertex from set V in its internal area, then this vertex belongs to the polygon of an earlier iteration). Note that each polygon defines an optimal partial tour for the set of vertices that it contains, similarly to how the girding polygon P from Section 2.1 defines an optimal tour . As we know, if , then from Section 2.1 defines an optimal tour. Hence, in the inflammation algorithm, we assume that this condition is not satisfied.
The inflammation algorithm iteratively, at every iteration h, constructs the polygon containing (some) vertices from set (see Algorithm 3), where we denote again by the partial tour constructed by iteration h. Initially, we let , and is formed by the partial tour of polygon . At iteration , Algorithm 4 () constructs partial tour by joining the vertices of polygon and the partial tour as described later in Section 2.4.2.
This completes an aggregated description of the inflammation algorithm. Abusing again the notation, we may use for the set of vertices of polygon .
We shall refer to a specially defined point in the two-dimensional plane as a centroid.
In the following two subsections, we describe Algorithm 5, (), which constructs inner convex hull , and Algorithm 4 (), which creates partial tour from the polygon and the previous tour , at every iteration h.
Algorithm 3: (V). |
|
Algorithm 4: (). |
|
Algorithm 5: (). |
|
2.4.1. Algorithm 5, () for the Construction of Polygon
Given an external iteration h in Algorithm 3 (), we denote by a polygonal line of the iteration l in Algorithm 5 (Figure 13), (), that is a broken line of a finite number of edges formed by some vertices from set . Polygonal line serves an auxiliary purpose at every iteration h with in Algorithm 3.
Consider an iteration h with in Algorithm 3. Initially, at iteration 0 in Algorithm 5, a polygonal line consists of all vertices of set sorted in non-increasing order of their angles (see Equation (4)) (i.e., where ) (see Figure 14).
Consider the polygonal line with an additional edge joining the two extremal vertices and of the polygonal line . In case the polygonal line obtained in this way forms a convex polygon, then the algorithm delivers this polygon .
Otherwise, at iteration , the polygon is obtained from the polygonal line by eliminating some of its vertices and the two edges associated with every eliminated vertex. Instead of the two eliminated edges, one additional edge is created. This is accomplished by an iterative analysis of three consecutive vertices from the polygonal line at once, where if and if ), for every . For such a trio of consecutive points, we define a new angle-related function ; see Equation (5) below. It returns the angle between the edges and in the range ; see Figure 15.
(5)
Given a trio of iteration l, the algorithm verifies if the internal angle between the edges and , , is no larger than radians. If this holds, then all three points are kept in polygon , i.e., . Otherwise, the polygonal path is non-convex; hence, one of the points is to be removed: If , then the vertex is removed, i.e., . Otherwise, the vertex is removed, i.e., . Let l be the last iteration.
We illustrate the construction process of the polygon line for problem instance “tsp10”. In Figure 14, and the centroid with coordinates is depicted in red color. Figure 14a illustrates how the angles are calculated so that . Figure 14b shows the resultant polygonal line .
Table 2 and Figure 16 show how Algorithm 5 () constructs the polygon for problem instance “tsp10”. Figure 16a illustrates the initial polygonal line . The first internal angle found in that is greater than radians is between the edges and . Since , vertex 5 is removed from . In Figure 16b, the angle between the edges and is greater than radians. Since , vertex 2 is removed from . In Figure 16c, the angle between the edges and is greater than radians. Since , vertex 10 is removed from . In Figure 16d, the angle between the edges and is greater than radians. Since , vertex 7 is removed from . In Figure 16e, the angle between the edges and is greater than radians. Since , vertex 8 is removed from . Figure 16f shows that the resultant inner convex hull is delivered.
2.4.2. Algorithm JOINP
Algorithm 4 (Figure 17) () is invoked at every iteration h from Algorithm 3 (INFLAMMATION), where Algorithm 5 () is invoked before returning polygon . Algorithm 4 constructs tour based on an earlier-constructed tour and polygon . The construction is carried out in a number of iterations, where we denote by a partial tour constructed at iteration l; we let .
At iteration , vertex from polygon is inserted in between two adjacent pairs of vertices from tour . These two vertices and are determined so that the cost of inserting vertex in between these vertices is the minimum possible, i.e.,
is the minimum possible (the triangle inequality). Below is a formal description of the algorithm.Figure 18 shows tour and polygon for the problem instance “tsp10”. Table 3 and Figure 19 show the five iterations performed by Algorithm 4 () for the construction of tour .
2.4.3. Algorithm INFLAMMATION
The Algorithm 3 (Figure 20) initially lets . While , in the iteration , the coordinates and of the centroid are calculated as follows:
andOnce the centroid is so defined, Algorithm 5 () is invoked to obtain the inner convex hull . Then, the tour is constructed by the invoking of Algorithm 4 ().
If , then the algorithm halts. Else, if , instead of invoking Algorithm 5 (no inner convex hull can be constructed), the vertices from set are inserted in between two consecutive vertices of tour in iterations, one vertex at each iteration, similar to as in Algorithm 4 (so that the increase in the total cost at each iteration is the minimum possible).
Table 4 and Figure 21 illustrate Algorithm 3 for problem instance “tsp10” with 10 vertices. In Figure 21a, inner convex polygon is constructed, considering the vertices of . In Figure 21b, is constructed with the vertices included in and is constructed with the vertices included in . In Figure 21c, is constructed by inserting the vertices from in tour . The resultant feasible solution .
We applied an improvement algorithm to a complete tour obtained as above. Two heuristics were used in a loop for this purpose. First, a local search algorithm proposed by Croes (“2-Opt”) [43] was applied. Then, iteratively, a vertex from the current tour was relocated to an alternative position if this yielded further reduction in the total cost. The algorithm halts when no such rearrangement exists.
As is easy to see, algorithm has time complexity ; algorithm JOINP has time complexity ; the improvement phase has the same time complexity as the improvement phase of the INSERTION algorithm.
3. Implementation and Results
In this section, we report our experimental study. Our algorithms were coded in C++ and compiled on a Debian GNU/Linux operating system.
According to our earlier experimental results from [5], the insertion algorithm from Section 2.2 proved to be very fast. It was tested for 218 problem instances with sizes between 32 and 744,710 from the TSPLIB [44], NATIONAL [45], ART GALLERY [45], and VLSI [45] group of instances. On average, the cost of the approximation obtained by this method with respect to the cost of the best-known solution had a margin of error of 7.2%.
The inflammation method was designed to provide solutions of good quality for some typical real-life instances. A few such sample instances were created based on the existing tourist tours and network convenience stores from different parts of the world (Asia, Europe, South America, United States of America, and Mexico. We describe these instances in the following subsections.
The algorithm for the BMTSP from Section 2.3 was tested for 22 benchmark instances. For one of them, (with , , and ), we obtained the best-known result , improving the earlier-known best cost Lo et al. [38]. The remaining 16 instances were solved with an approximation gap less than or equal to 7%. We refer the reader to Table 1 from [42] for the details.
3.1. Ring Roads
Many towns throughout the world have an important principal avenue, often referred to as ring (circular) roads or peripheral avenues. They typically surround the populated areas. They can be seen as circle-type curves or multiple-sided polygons that contain a given populated area in the interior area. Peripheral avenues contain different important locations such as military barracks, supermarkets, malls with cinemas, restaurants, gas stations, etc. The remaining interior destinations such as market places, bus terminals, teacher training colleges, fields for physical and sports activities, houses, etc., can also be reached through peripheral avenues. Peripheral avenues have also exits to highways that connect a given city with neighboring towns. In Figure 22, the peripheral roads of some major cities are illustrated (these images were taken from the Internet). Based on these images, we created our first sample problem instance for an abstract peripheral avenue and tested the inflammation algorithm for this instance.
Figure 23a illustrates this sample instance, and Figure 23b represents the solution created by the algorithm. The optimality of the created tour is easily verified. For the real-life instances, strictly optimal solutions may not be obtained, but one would normally expect the algorithm to deliver close to the optimal solutions. In the following subsections, we give the results for six other real-life instances.
3.2. Convenience Stores in Iguala
Our next instance was taken from a map of the city of Iguala, located in the state of Guerrero, Mexico (See Appendix A.1). Different important spots including a chain of convenience stores are located around the peripheral avenue of this city. This peripheral avenue is shaped as an eight-sided polygon, as we can see from Figure 24. In Iguala, an important chain of convenience stores, Oxxo, has 21 stores and an administrative office in this city; 11 of these stores are located on the peripheral avenue or one block from it; eight stores are in the city center; two stores are at one of the city exits. Among the employees who work in those offices, there are those who must visit all the stores, and there are also a couple of supervisors who only visit between 10 and 13 stores that they are in charge of.
We tested both the inflammation and BMTSP algorithms for this instance. Figure 25 shows the iterations carried out by the inflammation method for the construction of the tour for an employee to visit all the stores in the city. The vertex d represents the administrative office from which that employee starts and ends his/her trip.
In Figure 25a, the polygon is constructed. In Figure 25b, is constructed from the vertices of , and the polygon is constructed. In Figure 25c, is constructed from the vertices of inserted in , and the polygon is constructed. In Figure 25d, is constructed from the vertices of inserted in , and the polygon is constructed. In Figure 25e, is constructed from the vertices of inserted in , and the polygon is constructed. In Figure 25f, is constructed from the vertices of inserted in , and the method completes the construction of the tour.
Figure 26 shows the phases carried out by the bounded multiprocessor TSP method for the construction of a tour for each of the two supervisors (with , and ). In Figure 26a, the partition of set into two feasible subsets and is shown, whose number of vertices included in each of them is between 10 and 13 vertices. In Figure 26b, tours and are constructed for the subsets and , respectively. In Figure 26c, the feasible solution constructed is improved.
3.2.1. Instance Asia
Instance “Asia.tsp” was built based on two tourist circuits: “Japan, China and South Korea in 15 days” by [47] and “17 days—Travel to Japan, South Korea and China” by [48].
The instance includes 22 tourist places: Tokyo, Hakone, Guilin, Xi’an, Shanghai, Seoul, Beijing, Linfen, Pingyao, Wutai, Jiming Mountain, Datong, Itsukushima Shrine, Iwakuni, Xinzhou, Shimonoseki, Hiroshima, Busan, Daegu, Tripitaka, Jeonju, and Suwon (see Figure 27).
3.2.2. Instance Europe
Instance “Europe.tsp” was taken from the circuit called “Fantastic Europe Circuit” from [50].
The instance includes 24 tourist places: Madrid, San Sebastian, Bordeaux, Blois, Paris, Luxembourg, Frankfurt, Heidelberg, Freiburg, Zurich, Lucerne, Vaduz, Innsbruck, Padova, Venice, Bologna, Florence, Assisi, Rome, Pisa, Nice, Montpellier, Barcelona, and Zaragoza (see Figure 28).
3.2.3. Instance South America
Instance “SouthAmerica.tsp” was built based on two tourist circuits: “Peru, Bolivia and Chile” and “Argentina-Chile” of [52].
The instance includes 15 tourist places: Lima, San Pedro Atacama, Ollantaytambo, Cusco, Machu Picchu, Sacred Valley of the Incas, Lake Titicaca, Copacabana, Torres de Paine, El Calafate, Viña del Mar, Buenos Aires, Santiago de Chile, Valparaíso, and Montevideo (See Figure 29).
3.2.4. Instance East of USA
Instance “EastUSA.tsp” was taken from the circuit called “The Grand East” of [54].
The instance includes 19 tourist places: New York, Boston, Quebec, Montreal, Ottawa, Toronto, Niagara Falls, Amish Country, Washington D.C., Wiliamsburg, Roanoke, Gatlingburg, Nashville, Memphis, New Orleans, Pensacola, Orlando, and Miami (See Figure 30).
3.2.5. Instance Mexico
The instance “Mexico.tsp” was built based on three tourist circuits: “Mayan Civilizations” and “Yucatán” from [56] and “The essentials of Mexico to Cancun ” from [57].
The instance includes 22 tourist places: Mexico City, Teotihuacan, Villahermosa, Palenque, Campeche, Uxmal, Mérida, Chichen Itzá, Cancún, Tulum, Cobá, Kabah, Izamal, Valladolid, Puebla, Mitla, Oaxaca-MonteAlbán, Tehuantepec, Tuxtla Gutierrez, San Cristobal de las Casas, and Agua Azul Waterfalls (see Figure 31).
3.3. Summary of the Results at the Improvement Stage
In Table 5, we give a summary of the improvements accomplished at the last improvement stage of the inflammation algorithm. Column “” represents the cost of the tour delivered by the inflammation algorithm, and Column “” represents the cost of the tour delivered by the improvement stage. Column “% Improvement” presents the percentage of the improvement.
4. Conclusions and Future Work
Using convex polygons in our approach provided good-quality solutions for Euclidean traveling salesman problems. In particular, the inflammation algorithm provided optimal and near-optimal solutions for the “ring-type” instances of the Euclidean TSP. Ring-type instances with a symmetric geometric structure were solved optimally, whereas for the real-life ring-type instances, close to optimum solutions were created. As for the future work, it would be interesting to compare the practical behavior of the earlier-mentioned algorithms (including our algorithm) for the construction of a girding polygon. Indeed, the worst-case time complexity does not always reflect the practical performance. We also intend to extend the inflammation algorithm with a decomposition stage, which would partition a given problem instance into sub-instances with a nearly symmetric geometric structure. Then, we can apply the proposed algorithm to each of the derived substances and unify the created partial solutions into an overall complete solution. Likewise, our algorithm for the BMTSP can be extended with different alternative algorithms for partitioning the given set of points. Our method can also be adapted for more general settings including different versions of the multiprocessor traveling salesman problem.
Conceptualization, N.V.; methodology, N.V. and V.H.P.-V.; validation, N.V.; formal analysis, N.V.; investigation, N.V., V.H.P.-V. and F.Á.H.-M.; Resource administration and Funding, J.A.H.-A.; writing—original draft preparation, V.H.P.-V. and N.V.; writing—review and editing, N.V.; visualization, V.H.P.-V. and J.A.H.-A.; supervision, N.V.; project administration, N.V. All authors have read and agreed to the published version of the manuscript.
Not applicable.
Not applicable.
Not applicable.
The authors declare no conflict of interest.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Figure 2. Angle [Forumla omitted. See PDF.] formed by the edge [Forumla omitted. See PDF.] and the straight line [Forumla omitted. See PDF.].
Figure 3. The four auxiliary points [Forumla omitted. See PDF.], [Forumla omitted. See PDF.], [Forumla omitted. See PDF.], and [Forumla omitted. See PDF.] determined for example instance “tsp10”.
Figure 5. Polygonal lines constructed by algorithm ([Forumla omitted. See PDF.]) for instance “tsp10”. (a) [Forumla omitted. See PDF.]; (b) [Forumla omitted. See PDF.]; (c) [Forumla omitted. See PDF.]; (d) [Forumla omitted. See PDF.]; (e) [Forumla omitted. See PDF.]; (f) [Forumla omitted. See PDF.]; (g) [Forumla omitted. See PDF.]; (h) [Forumla omitted. See PDF.].
Figure 7. Iterations made by the insertion algorithm to solve the example instance “tsp10”. (a) The tour [Forumla omitted. See PDF.] is delivered by ([Forumla omitted. See PDF.]). (b) Vertex 9 is inserted between vertices 7 and 8. (c) Vertex 1 is inserted between vertices 5 and 6. The feasible tour constructed is [Forumla omitted. See PDF.].
Figure 8. A basic flowchart of the partition algorithm to obtain the auxiliary points [Forumla omitted. See PDF.] and the first vertex for each subset [Forumla omitted. See PDF.], [Forumla omitted. See PDF.].
Figure 9. A partial flowchart for the creation of the subsets [Forumla omitted. See PDF.], [Forumla omitted. See PDF.] with [Forumla omitted. See PDF.] vertices.
Figure 10. The last partial flowchart of the partition algorithm to obtain the subsets [Forumla omitted. See PDF.], [Forumla omitted. See PDF.].
Figure 11. The flowchart of the construction algorithm to obtain the k tours [Forumla omitted. See PDF.], [Forumla omitted. See PDF.].
Figure 12. Phases to construct a solution for an instance of the bounded MTSP with [Forumla omitted. See PDF.], [Forumla omitted. See PDF.] and [Forumla omitted. See PDF.].
Figure 14. Construction of the initial polygonal line [Forumla omitted. See PDF.] for the example instance “tsp10”, where [Forumla omitted. See PDF.].
Figure 15. Angle [Forumla omitted. See PDF.] formed by the edges [Forumla omitted. See PDF.] and [Forumla omitted. See PDF.], where [Forumla omitted. See PDF.], [Forumla omitted. See PDF.], and [Forumla omitted. See PDF.] are consecutive vertices from polygonal line [Forumla omitted. See PDF.].
Figure 16. Graphs corresponding to the iterations carried out by Algorithm 5 ([Forumla omitted. See PDF.][Forumla omitted. See PDF.]) for the construction of the inner convex hull P for the example instance “tsp10”. (a) [Forumla omitted. See PDF.]; (b) [Forumla omitted. See PDF.]; (c) [Forumla omitted. See PDF.]; (d) [Forumla omitted. See PDF.]; (e) [Forumla omitted. See PDF.]; (f) [Forumla omitted. See PDF.].
Figure 18. Tour [Forumla omitted. See PDF.] and polygon [Forumla omitted. See PDF.] for the example instance “tsp10”.
Figure 19. Graphs corresponding to the iterations carried out by Algorithm 4 ([Forumla omitted. See PDF.]) for the construction of tour [Forumla omitted. See PDF.]. (a) [Forumla omitted. See PDF.]; (b) [Forumla omitted. See PDF.]; (c) [Forumla omitted. See PDF.]; (d) [Forumla omitted. See PDF.]; (e) [Forumla omitted. See PDF.].
Figure 21. Graphs of the iterations performed by Algorithm 3 ([Forumla omitted. See PDF.]) to solve the example instance “tsp10”.
Figure 25. Iterations performed to resolve the instance of Iguala by the inflammation method.
Figure 26. Tours [Forumla omitted. See PDF.] y [Forumla omitted. See PDF.] constructed by the bounded multiprocessor TSP method for 2 supervisors, [Forumla omitted. See PDF.] and [Forumla omitted. See PDF.].
Figure 27. Map and solution of instance “Asia.tsp”. (a) Map [49]; (b) Solution; (c) Improved solution.
Figure 28. Map and solution of instance “Europe.tsp”. (a) Map [51]; (b) Solution; (c) Improved solution.
Figure 29. Map and solution of instance “SouthAmerica.tsp”. (a) Map [53]; (b) Solution; (c) Improved solution.
Figure 30. Map and solution of instance “EastUSA.tsp”. (a) Map [55]; (b) Solution; (c) Improved solution.
Figure 31. Map and solution of instance “Mexico.tsp”. (a) Map [58]; (b) Solution; (c) Improved solution.
Iterations performed by the Algorithm 1 (
h | l |
|
|
Condition |
|
|
|
---|---|---|---|---|---|---|---|
0 | 6 |
|
|||||
1 | 1 | 6 | 4 |
|
10 |
|
|
2 | 1 | 10 | 4 |
|
4 |
|
|
3 | 1 | 4 | 4 | ||||
3 | 2 | 4 | 8 |
|
7 |
|
|
4 | 2 | 7 | 8 |
|
8 |
|
|
5 | 2 | 8 | 8 | ||||
5 | 3 | 8 | 5 |
|
3 |
|
|
6 | 3 | 3 | 5 |
|
2 |
|
|
7 | 3 | 2 | 5 |
|
5 |
|
|
8 | 3 | 5 | 5 | ||||
8 | 4 | 5 | 6 |
|
5 |
|
Iterations performed by Algorithm 5 (
l |
|
j |
|
Condition | Decision |
---|---|---|---|---|---|
0 | Polygonal line is constructed |
||||
1 |
|
1 | 4 |
|
|
2 |
|
2 | 10 |
|
|
3 |
|
3 | 6 |
|
|
4 |
|
4 | 1 |
|
|
5 |
|
4 | 1 |
|
|
6 |
|
3 | 1 |
|
|
7 |
|
2 | 1 |
|
|
8 |
|
3 | 2 |
|
|
9 |
|
4 | 3 |
|
|
10 |
|
5 | 8 |
|
|
11 |
|
6 | 9 |
|
|
12 |
|
6 | 9 |
|
|
13 |
|
5 | 9 |
|
|
14 | Inner convex hull |
Iterations performed by Algorithm 4 (
l |
|
|
|
---|---|---|---|
0 |
|
||
1 | 10 |
|
|
2 | 6 |
|
|
3 | 5 |
|
|
4 | 8 |
|
|
5 | 7 |
|
|
Iterations performed by Algorithm 3 (
h |
|
|
---|---|---|
0 |
|
|
1 |
|
|
2 |
|
|
|
A summary of the improvements accomplished at the last improvement stage of the inflammation algorithm.
Instance |
|
|
% Improvement |
---|---|---|---|
FNV40.tsp | 304.10 | 304.10 | 0% |
Iguala.tsp | 1490.78 | 1452.21 | 2.66 % |
Asia.tsp | 1878.60 | 1848.94 | 1.60% |
Europe.tsp | 2964.18 | 2578.17 | 14.97% |
SouthAmerica.tsp | 1690.70 | 1686.56 | 0.25% |
EastUSA.tsp | 1977.06 | 1761.28 | 12.25 % |
Mexico.tsp | 1389.89 | 1381.58 | 0.60 % |
Appendix A
Appendix A.1
Instance Iguala.
i |
|
|
i |
|
|
---|---|---|---|---|---|
0 | 199 | 130 | 11 | 69 | 201 |
1 | 109 | 175 | 12 | 172 | 57 |
2 | 196 | 190 | 13 | 270 | 278 |
3 | 16 | 170 | 14 | 278 | 215 |
4 | 150 | 141 | 15 | 91 | 85 |
5 | 462 | 7 | 16 | 257 | 114 |
6 | 199 | 137 | 17 | 195 | 246 |
7 | 172 | 139 | 18 | 459 | 12 |
8 | 254 | 162 | 19 | 308 | 102 |
9 | 309 | 78 | 20 | 244 | 231 |
10 | 191 | 108 | 21 | 164 | 260 |
References
1. Karp, R.M. Reducibility among combinatorial problems. Complexity of Computer Computations; Miller, R.E.; Thatcher, J.W.; Bohlinger, J.D. Springer: Boston, MA, USA, 1972; pp. 85-103. [DOI: https://dx.doi.org/10.1007/978-1-4684-2001-2_9]
2. Roerty, D.F. M-Salesman Balanced Tours Traveling Salesman Problem with Multiple Visits to Cities Allowed. Ph.D. Thesis; Texas Tech University: Lubbock, TX, USA, 1974; Available online: https://ttu-ir.tdl.org/bitstream/handle/2346/18193/31295002299211.pdf?sequence=1 (accessed on 19 August 2022).
3. Necula, R.; Breaban, M.; Raschip, M. Performance evaluation of ant colony systems for the single-depot multiple traveling salesman problem. International Conference on Hybrid Artificial Intelligence Systems; Springer: Cham, Switzerland, 2015; pp. 257-268. [DOI: https://dx.doi.org/10.1007/978-3-319-19644-2_22]
4. Papadimitriou, C.H. The Euclidean Traveling Salesman Problem is NP-Complete. Theor. Comput. Sci.; 1977; 4, pp. 237-244. [DOI: https://dx.doi.org/10.1016/0304-3975(77)90012-3]
5. Pacheco-Valencia, V.; Hernández, J.A.; Sigarreta, J.M.; Vakhania, N. Simple Constructive, Insertion, and Improvement Heuristics Based on the Girding Polygon for the Euclidean Traveling Salesman Problem. Algorithms; 2020; 13, 5. [DOI: https://dx.doi.org/10.3390/a13010005]
6. Vakhania, N.; Hernandez, J.A.; Alonso-Pecina, F.; Zavala, C. A Simple Heuristic for Basic Vehicle Routing Problem. J. Comput. Sci. Technol. Updat.; 2016; 3, pp. 38-44. Available online: https://cosmosscholars.com/phms/index.php/jcstu/article/view/693 (accessed on 13 July 2021). [DOI: https://dx.doi.org/10.15379/2410-2938.2016.03.02.04]
7. Macgregor, J.N.; Ormerod, T. Human performance on the traveling salesman problem. Percept. Psychophys.; 1996; 58, pp. 527-539. [DOI: https://dx.doi.org/10.3758/BF03213088]
8. Norback, J.P.; Love, R.F. Geometric Approaches to Solving the Traveling Salesman Problem. Manag. Sci.; 1977; 23, pp. 1208-1223. [DOI: https://dx.doi.org/10.1287/mnsc.23.11.1208]
9. Golden, B.; Bodin, L.; Doyle, T.; Stewart, W., Jr. Approximate Traveling Salesman Algorithms. Oper. Res.; 1980; 28, pp. 694-711. [DOI: https://dx.doi.org/10.1287/opre.28.3.694]
10. Sengupta, L.; Fränti, P. Comparison of eleven measures for estimating difficulty of open-loop TSP instances. Appl. Comput. Intell.; 2021; 1, pp. 1-30. [DOI: https://dx.doi.org/10.3934/aci.2021001]
11. Andrew, A.M. Another efficient algorithm for convex hulls in two dimensions. Inf. Process. Lett.; 1979; 9, pp. 216-219. [DOI: https://dx.doi.org/10.1016/0020-0190(79)90072-3]
12. Graham, R.L. An efficient algorith for determining the convex hull of a finite planar set. Inf. Process. Lett.; 1972; 1, pp. 132-133. [DOI: https://dx.doi.org/10.1016/0020-0190(72)90045-2]
13. Jarvis, R.A. On the identification of the convex hull of a finite set of points in the plane. Inf. Process. Lett.; 1973; 2, pp. 18-21. [DOI: https://dx.doi.org/10.1016/0020-0190(73)90020-3]
14. Anderson, K.R. A reevaluation of an efficient algorithm for determining the convex hull of a finite planar set. Inf. Process. Lett.; 1978; 7, pp. 53-55. [DOI: https://dx.doi.org/10.1016/0020-0190(78)90041-8]
15. Eddy, W.F. A new convex hull algorithm for planar sets. ACM Trans. Math. Softw.; 1977; 3, pp. 398-403. [DOI: https://dx.doi.org/10.1145/355759.355766]
16. Bykat, A. Convex hull of a finite set of points in two dimensions. Inf. Process. Lett.; 1978; 7, pp. 296-298. [DOI: https://dx.doi.org/10.1016/0020-0190(78)90021-2]
17. Green, P.J.; Silverman, B.W. Constructing the convex hull of a set of points in the plane. Comput. J.; 1979; 22, pp. 262-266. [DOI: https://dx.doi.org/10.1093/comjnl/22.3.262]
18. Preparata, F.P.; Hong, S.J. Convex hulls of finite planar and spatial sets of points. Coordinated Science Laboratory Report no. UILU-ENG 75-2217, R-682; University of Illinois at Urbana-Champaign: 1975; Available online: https://core.ac.uk/download/pdf/158320153.pdf (accessed on 19 August 2022).
19. Kirkpatrick, D.G.; Seidel, R. The ultimate planar convex hull algorithm?. SIAM J. Comput.; 1986; 15, pp. 287-299. [DOI: https://dx.doi.org/10.1137/0215021]
20. Wenger, R. Randomized quickhull. Algorithmica; 1997; 17, pp. 322-329. [DOI: https://dx.doi.org/10.1007/BF02523195]
21. Jünger, M.; Reinelt, G.; Rinaldi, G. The traveling salesman problem. Handbooks in Operations Research and Management Science; Elsevier Science B.V.: Amsterdam, The Netherlands, 1995; Volume 7, pp. 225-330.
22. Bland, R.E.; Shallcross, D.F. Large traveling salesman problem arising from experiments in x-ray crystallography: A preliminary report on computation. Oper. Res. Lett.; 1989; 8, pp. 125-128. [DOI: https://dx.doi.org/10.1016/0167-6377(89)90037-0]
23. Ratliff, H.D.; Rosenthal, A.S. Order-picking in a rectangular warehouse: A solvable case of the traveling salesman problem. Oper. Res.; 1983; 31, pp. 507-521. [DOI: https://dx.doi.org/10.1287/opre.31.3.507]
24. Plante, R.D.; Lowe, T.J.; Chandrasekaran, R. The product matrix traveling salesman problem: An application and solution heuristic. Oper. Res.; 1987; 35, pp. 772-783. [DOI: https://dx.doi.org/10.1287/opre.35.5.772]
25. Lenstra, J.K.; Kan, A.R. Some simple applications of the traveling salesman problem. J. Oper. Res. Soc.; 1975; 26, pp. 717-733. [DOI: https://dx.doi.org/10.1057/jors.1975.151]
26. Bektas, T. The multiple traveling salesman problem: An overview of formulations and solution procedures. Omega; 2006; 34, pp. 209-219. [DOI: https://dx.doi.org/10.1016/j.omega.2004.10.004]
27. Cheikhrouhou, O.; Khoufi, I. A comprehensive survey on the Multiple Traveling Salesman Problem: Applications, approaches and taxonomy. Comput. Sci. Rev.; 2021; 40, 100369. [DOI: https://dx.doi.org/10.1016/j.cosrev.2021.100369]
28. Samuel, G. Printing Press Scheduling for Multi-Edition Periodicals. Manag. Sci.; 1970; 16, pp. B-373-B-383. [DOI: https://dx.doi.org/10.1287/mnsc.16.6.B373]
29. Brumitt, B.L.; Stentz, A. Dynamic mission planning for multiple mobile robots. Proceedings of the IEEE International Conference on Robotics and Automation; Minneapolis, MN, USA, 22–28 April 1996; Volume 3, pp. 2396-2401. [DOI: https://dx.doi.org/10.1109/ROBOT.1996.506522]
30. Gilbert, K.C.; Hofstra, R.B. A New Multiperiod Multiple Traveling Salesman Problem with Heuristic and Application to a Scheduling Problem. Decis. Sci.; 1992; 23, pp. 250-259. [DOI: https://dx.doi.org/10.1111/j.1540-5915.1992.tb00387.x]
31. Angel, R.D.; Caudle, W.L.; Noonan, R.; Whinston, A. Computer-assisted school bus scheduling. Manag. Sci.; 1972; 18, pp. B-279-B-288. [DOI: https://dx.doi.org/10.1287/mnsc.18.6.B279]
32. Svestka, J.A.; Huckfeldt, V.E. Computational Experience with an M-Salesman Traveling Salesman Algorithm. Manag. Sci.; 1973; 19, pp. 790-799. [DOI: https://dx.doi.org/10.1287/mnsc.19.7.790]
33. Yu, Z.; Jinhai, L.; Guochang, G.; Rubo, Z.; Haiyan, Y. An implementation of evolutionary computation for path planning of cooperative mobile robots. Proceedings of the 4th World Congress on Intelligent Control and Automation (Cat. No. 02EX527); Shanghai, China, 10–14 June 2002; Volume 3, pp. 1798-1802. [DOI: https://dx.doi.org/10.1109/WCICA.2002.1021392]
34. Ryan, J.L.; Bailey, T.G.; Moore, J.T.; Carlton, W.B. Reactive tabu search in unmanned aerial reconnaissance simulations. Proceedings of the 1998 Winter Simulation Conference (Cat. No. 98CH36274); Washington, DC, USA, 13–16 December 1998; Volume 1, pp. 873-879. [DOI: https://dx.doi.org/10.1109/WSC.1998.745084]
35. Saleh, H.A.; Chelouah, R. The design of the global navigation satellite system surveying networks using genetic algorithms. Eng. Appl. Artif. Intell.; 2004; 17, pp. 111-122. [DOI: https://dx.doi.org/10.1016/j.engappai.2003.11.001]
36. Hosseinabadi, A.A.; Kardgar, M.; Shojafar, M.; Shamshirband, S.; Abraham, A. GELS-GA: Hybrid metaheuristic algorithm for solving Multiple Travelling Salesman Problem. Proceedings of the 2014 14th International Conference on Intelligent Systems Design and Applications; Okinawa, Japan, 28–30 November 2014; pp. 76-81. [DOI: https://dx.doi.org/10.1109/ISDA.2014.7066271]
37. Rostami, A.S.; Mohanna, F.; Keshavarz, H.; Hosseinabadi, A.A.R. Solving multiple traveling salesman problem using the gravitational emulation local search algorithm. Appl. Math. Inf. Sci.; 2015; 9, pp. 1-11. Available online: https://www.researchgate.net/publication/266392528_Solving_Multiple_Traveling_Salesman_Problem_using_the_Gravitational_Emulation_Local_Search_Algorithm (accessed on 13 July 2021).
38. Lo, K.M.; Yi, W.Y.; Wong, P.K.; Leung, K.S.; Leung, Y.; Mak, S.T. A genetic algorithm with new local operators for multiple traveling salesman problems. Int. J. Comput. Intell. Syst.; 2018; 11, pp. 692-705. [DOI: https://dx.doi.org/10.2991/ijcis.11.1.53]
39. Harrath, Y.; Salman, A.F.; Alqaddoumi, A.; Hasan, H.; Radhi, A. A novel hybrid approach for solving the multiple traveling salesmen problem. Arab. J. Basic Appl. Sci.; 2019; 26, pp. 103-112. [DOI: https://dx.doi.org/10.1080/25765299.2019.1565193]
40. Al-Furhud, M.A.; Ahmed, Z.H. Experimental Study of a Hybrid Genetic Algorithm for the Multiple Travelling Salesman Problem. Math. Probl. Eng.; 2020; 2020, 3431420. [DOI: https://dx.doi.org/10.1155/2020/3431420]
41. Vakhania, N. Simple Methods for Euclidean Traveling Salesman Problems. Proceedings of the 1st International Online Conference on Algorithms (IOCA 2021); Hangzhou, China, 22–24 November 2021; Available online: https://ioca2021.sciforum.net/#personnel1142 (accessed on 1 March 2022).
42. Pacheco-Valencia, V.; Vakhania, N.; Hernández, J.; Hernández-Gómez, J.C. A Fast Algorithm for Euclidean Bounded Single-Depot Multiple Traveling Salesman Problem. Proceedings of the 1st Online Conference on Algorithms; Online, 27 September–10 October 2021; MDPI: Basel, Switzerland, Available online: https://sciforum.net/paper/view/10898 (accessed on 1 March 2022). [DOI: https://dx.doi.org/10.3390/IOCA2021-10898]
43. Croes, G.A. A Method for Solving Traveling-Salesman Problems. Oper. Res.; 1958; 6, pp. 791-812. [DOI: https://dx.doi.org/10.1287/opre.6.6.791]
44. Universität Heidelberg, Institut für Informatik, Gerhard Reinelt, Symmetric Traveling Salesman Problem (TSP). Available online: https://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/ (accessed on 15 April 2021).
45. Natural Sciences and Engineering Research Council of Canada (NSERC) and Department of Combinatorics and Optimization at the University of Waterloo, TSP Test Data. Available online: http://www.math.uwaterloo.ca/tsp/data/index.html (accessed on 8 June 2019).
46. Google Maps. (n.d.) [Convenience Stores, OXXO, Located in Iguala, Guerrero, Mexico], Attribution: Map data ©2022 INEGI. Available online: https://goo.gl/maps/k5uteV2vFTcmvBaK8 (accessed on 11 July 2022).
47. Antia Viajes. Available online: https://antiaviajes.com/asia/viajes-a-china/corea-japon (accessed on 11 July 2022).
48. Top Asia Tour. China International Travel Service Guillin Co., Ltd. Available online: https://es.topasiatour.com/viajes/tates-corea-del-sur-04.htm (accessed on 11 July 2022).
49. Google Maps. (n.d.) [Tourist Places in Asia]. Attribution: Map Data ©2022 Google, TMap Mobility. Available online: https://goo.gl/maps/opy3QELuuwZp4g9z6 (accessed on 11 July 2022).
50. Viajes, Visas y Excursiones–Vive. Available online: https://www.viajesvivex.com/circuitos (accessed on 11 July 2022).
51. Google Maps. (n.d.) [Tourist Places in Europe], Attribution: Map data ©2022 Google, GeoBasis-DE/BKG(©2009), Inst. Geogr. Nacional. Available online: https://goo.gl/maps/8AjGcNcsGRyDQgCR8 (accessed on 11 July 2022).
52. AndesNomads.com Servicios Turísticos. Available online: https://www.travelandes.com/ (accessed on 11 July 2022).
53. Google Maps. (n.d.) [Tourist Places in South-America], Attribution: Map data ©2022 Google. Available online: https://goo.gl/maps/uk35NwKRYwmo37FA8 (accessed on 11 July 2022).
54. Tours-USA.com. Available online: https://www.tours-usa.com/tour/the-grand-east (accessed on 11 July 2022).
55. Google Maps. (n.d.) [Tourist Places in East of U.S.A], Attribution: Map Data ©2022 Google, INEGI. Available online: https://goo.gl/maps/W62uQcgrSzbUp8ni8 (accessed on 11 July 2022).
56. LyO Gestión y Ocio, S.L. Available online: https://www.viajeslyo/ (accessed on 11 July 2022).
57. Evaneos.es. Available online: https://www.evaneos.es/ (accessed on 11 July 2022).
58. Google Maps. (n.d.) [Tourist places in Mexico], Attribution: Map data ©2022 INEGI. Available online: https://goo.gl/maps/79xJXgQTzCitQbRz5 (accessed on 11 July 2022).
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Abstract
The Traveling Salesman Problem (TSP) aims to find the shortest tour for a salesman who starts and ends in the same city and visits the remaining
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Details




1 Centro de Investigación en Ciencias UAEMor, Universidad Autónoma del Estado de Morelos, Av. Universidad 1001, Col.Chamilpa, Cuernavaca 62209, Mexico
2 Facultad de Matemáticas UAGro, Universidad Autónoma de Guerrero, Carlos E. Adame No. 54, Col.Garita, Acapulco 39650, Mexico
3 Facultad de Contaduría, Administración e Informática UAEMor, Universidad Autónoma del Estado de Morelos, Av. Universidad 1001, Col.Chamilpa, Cuernavaca 62209, Mexico