Abstract
The purpose of this paper is to present a combinatorial planner for autonomous systems. The approach is demonstrated on the so-called subtour problem, a variant of the classical traveling salesman problem (TSP): given a set of possible goals/targets, the optimal strategy is sought that connects goals. The proposed solution method is a Genetic Algorithm coupled with a heuristic local search. To validate the approach, the method has been benchmarked against TSPs and subtour problems with known optimal solutions. Numerical experiments demonstrate the success of the approach.
1. Introduction
To build systems that plan and act autonomously represents an important direction in the field of robotics and artificial intelligence. Many applications, ranging from space exploration [1β4] to search and rescue problems [5, 6], have underlined the need for autonomous systems capable to plan strategies with minimal or no human feedback. Autonomy might also be required for exploring hostile environments where human access is impossible, for example, volcano exploration [7] or for locating victims in collapsed buildings [8, 9].
For intelligent systems, there are usually two well-separated modes of operation: the autonomous planning and scheduling of goals and actions [1, 10] and the subsequent autonomous navigation [11]. Even though autonomous navigation has vastly improved during the past decades, human instruction still plays a crucial role in the planning and scheduling phase [12β14].
In order to increase the capability of robotic systems to handle uncertain and dynamic environments, the next natural step in autonomy will be the deeper integration of these two operational modes, that is, linking the autonomous navigation system with the planning and scheduling component [15, 16], moving the latter onboard the agent. The ultimate objective of this line of research is to develop a general purpose goal planner for autonomous multiagent systems. In this context βgoalsβ are possible states of the system (e.g., locations on a map) and βactionsβ are transitions between these states. An intelligent planner/scheduler should be able to achieve a set of goals (planning phase) by computing an optimal sequence of actions (scheduling phase) so that human operators only have to define the highest-level goals for the vehicle (also referred to as agent) [17].
For path planning involving many goals/locations, the planning phase turns into a mission-level planning problem, where construction of a βrouteβ is required [18, 19]. This planning phase is at a higher level of abstraction than the classic point-to-point navigation: at this level, goals are given locations on a map, and a plan represents a sequence of these locations to be visited. On the other hand, the low-level, point-to-point path planning is considered in the scheduling phase, and it is usually solved once the overall location route is known [20]. Another important difference between high and low level motion planning is their time and length scale separation, that is, local navigation occurs at a much smaller lengths and at a much faster rate than the high level planning. Due to this separation of scales, high level motion planning usually does not take the dynamics of the vehicle into account. Instead, low-level motion planning is usually responsible for obstacle avoidance and local interactions with the environment; the dynamical constraints of the vehicles can also be taken into account here [21].
Our long-term objective is to realize a multiagent planning system for a team of autonomous vehicles to cooperatively explore their environment [22]. To achieve this goal, given a set of locations (also referred to as targets), we require the vehicles to compute a coordinated exploration strategy for visiting them all. Specifically, the overall planning problem will be formulated as finding a near-optimal set of high-level paths/plans that allow the team of agents to visit the given number of targets in the shortest amount of time (similarly to the task-assignment problem described in [23]). More precisely, given agents, we look for the time-optimal (min-max) team strategy for reaching a set of given targets (every target must be visited only once).
The first step to solve this problem is to construct a (near-)optimal strategy for a single agent to reach a subset of the given locations. Finding this single-agent strategy is what we call the -from- βSubtour Problemβ: for a given set of goals/targets, an optimal sequence of of these goals is sought.
This problem is a variant of the well-known traveling salesman problem (TSP), where different locations/goals must be visited by the agent with the shortest possible path [24β26].
Since a multiagent strategy is a set of subtours (see Figure 1), the main motivation of this paper is to implement a simple algorithm that yields good-quality subtours.
Subtour-type problems have already been studied in the literature. Gensch [27] modifies the classical Traveling Salesman Problem to include a more realistic scheduling time constraint. In this variant the salesman must select an optimal subset of the cities (the subtour) to be toured within the time constraint. Gensch provides a tight upper bound through Lagrangian relaxation, making the problem amenable to the branch and bound technique for problems of practical size. Laporte and Martello [28] formulates the selective traveling salesman problem that requires the determination of a length-constrained simple circuit with fixed starting point (the so-called depot) on a vertex-and-edge-weighted graph. They describe an exact algorithm for solving this problem that extends a simple path from the depot utilizing a breadth-first branch and bound process. Verweij and Aardal [29] consider the merchant subtour problem as finding a profit-maximizing directed, closed path (a cycle) over a vertex-and-edge-weighted and use linear programming techniques for its solution. Westerlund in his recent thesis [30] defines the traveling salesman subtour problem as the optimization problem to find a path from a specified depot on an undirected, vertex-and-edge-weighted graph with revenues and knapsack constraints on the vertex weights. This thesis provides a new formulation of the problem whose structure can be exploited by Lagrangian relaxation and using a stabilized column generation technique [31].
The objective of this paper is to implement a genetic algorithm-based solver for the subtour problem. Evolutionary algorithms [32, 33] have already been proposed for the solution of the TSP and similar combinatorial problems [34β36]. Our method is a Genetic Algorithm [37β39] boosted with a heuristic local search. The tools used in this paper are common in the field of evolutionary computation, therefore the main contribution of this paper is the implementation of a solver for the Subtour Problem that can provide good-quality `motion primitives' for multiagent planners. Even though the genetic algorithm-based solution is heuristic in nature, we numerically demonstrate the efficacy of the proposed approach, benchmarking its results against exact TSP and subtour solutions. Once again, this work constitutes a starting step for developing a multiagent planner, results on which will be reported in a separate paper.
The outline of the paper is as follows. First, some basic notation and the formulation of the subtour problem is introduced in Sections 2 and 3. The basics of Genetic Algorithms are shortly presented in Section 4. The problem is defined in Section 5, followed by the genetic algorithm implementation in Section 6. Section 7 presents numerical results to demonstrate the efficiency of the proposed approach, including some preliminary examples for a multiagent planner. Conclusions are drawn in Section 8.
2. Notation
Graph theory has been instrumental for analyzing and solving problems in areas as diverse as computer network design, urban planning, and molecular biology. Graph theory has also been used to describe vehicle routing problems [40β42] and, therefore, is the natural framework for this study. The notation used in this paper is summarized below (good books on graph theory include [43, 44]).
2.1. Graphs, Subgraphs, Paths, and Cycles
Given , a set of elements referred to as vertices (nodes or targets), and , a set of edges connecting vertices and , a graph is defined as the pair . All graphs considered in this work are undirected, that is, the edges are unordered pairs with the symmetry relation .
A complete (also known as fully connected) graph is a graph where all vertices of are connected to each other. The complete graph induced by the vertex set is denoted by , where is the number of vertices. A graph is a subgraph of () if and such that A subgraph is called a path in if is a set of distinct vertices of the original graph and is the set of edges that connect those vertices. In other words, a path is a sequence of edges with each consecutive pair of edges having a vertex in common. Similarly, a subgraph of with is called a cycle. The length of a path or cycle is the number of its edges. The set of all paths and cycles of length in will be denoted by and , respectively.
Paths and cycles with no repeated vertices are called simple. A simple path (cycle) that includes every vertex of the graph is known as a Hamiltonian path (cycle). Graph is called weighted if a weight (or cost) is assigned to every edge . A weighted graph is called symmetric if . The total cost of a path is the sum of the weights of its edges Analogously, for a cycle , After having introduced the necessary notation, we are now in the position to formalize the combinatorial problems of interest.
3. The Traveling Salesman Problem and the Subtour Problem
Let be the set of possible targets (goals) to be visited. The th target is an object located in Euclidean space and its position is specified by the vector . The position of agent is (Figure 2).
Let us define the complete graph generated by the augmented vertex set (see Figure 3).
(a) Targets and agent
(b) Vertex set |
(c) Complete graph |
The weights associated with the edges are given by the Euclidean distance between the corresponding locations, that is, , with , rendering a weighted and symmetric graph.
The Subtour Problem is now defined as finding a simple path of length , starting at vertex and having the lowest cost . If , the problem is equivalent to finding the βcheapestβ Hamiltonian path, where all the targets in are to be visited (Figure 4(c)). The general Traveling Salesman Problem, or -TSP, poses to find a simple cycle of minimal cost starting and ending at vertex , visiting targets. The special case of -TSP is the classical traveling salesman problem, where is a Hamiltonian cycle with minimal cost that visits all the targets (Figure 4(e)).
(a) Targets and agent
(b) Subtour in |
(c) Hamiltonian path in |
(d) -TSP in |
(e) Classic TSP
The solution of the single agent planning problem is of great interest in our research, since a collection of Subtours will represent the starting solution for solving the multiagent planning problem. The multiagent planning problem [45] can be considered as a variant of the classical Multiple Traveling Salesman Problem, and can be formulated as follows. Let be the set of targets to be visited and let denote the unique depot the agents share. The augmented vertex set is given by and the configuration space of the problem is the complete graph .
Let denote a cycle of length starting and ending at vertex (the depot). The Multiple Traveling Salesmen Problem can be formulated as finding cycles of length such that each target is visited only once and by only one agent and the sum of the costs of all the tours is minimal.
4. Solving Combinatorial Planning Problems with Genetic Algorithms
The obvious difficulty with the subtour and the classic traveling salesman problem (TSP) is their combinatorial nature (they are NP-hard, and there is no known deterministic algorithm that solves them in polynomial time).
For a TSP with targets, there are possible solutions, while for a Subtour Problem with visited targets, the number of possible solutions is . Even though the dimension of the βsearch spaceβ differs significantly for the two problems, a brute force approach is infeasible when is large. A variety of exact algorithms (e.g., branch-and-bound algorithms and linear programming [46β48]) have been proposed to solve the classic TSP, and methods such as genetic algorithms, simulated annealing, and ant system were developed [34, 36] to sacrifice the optimality for a near-optimal solution obtained in shorter time or by simpler algorithms [49]. Greedy algorithms in many cases provide reasonable solutions to combinatorial problems. Such an algorithm could be connecting targets that are closest to one another. However, recent results on the th nearest neighbor distribution of optimal TSP tours [50] show that this approach might be too simplistic.
The method proposed here is a genetic algorithm [37β39] and is capable of solving the subtour problem, as well as the classic TSP.
4.1. Genetic Algorithms
A genetic algorithm (GA) is an optimization technique used to find approximate solutions of optimization problems [38]. Genetic algorithms are a particular class of evolutionary methods that use techniques inspired by Darwin's theory of evolution and evolutionary biology, such as inheritance, mutation, selection, and crossover (also called recombination). In these systems, populations of solutions compete and only the fittest survive.
4.1.1. Cast of Characters of a Genetic Algorithm
Figure 5 introduces the cast of characters of a GA.
The allele set is defined as the set of objects called genes. In a genetic algorithm, a possible solution is represented by a chromosome (also called plan or individual), which is a sequence of genes (genes are the βbuilding bricksβ chromosomes are made of): The length of a chromosome is the number of its genes. The th gene in will simply be denoted by .
A genetic algorithm works with a population of candidate solutions. A population composed of chromosomes , with , is . Depending on the problem, chromosomes can have variable lengths; here, we work with fixed-length chromosomes.
4.1.2. The Structure of Genetic Algorithms
A GA consists of two distinct components: the initialization and evolution phases. In the initialization phase (see Section 6.1), a starting population is createdβusually randomlyβand is then evolved through a number of generations (see Section 6.2). At every generation step, some individuals, called parents, are chosen via a selection method and mated, that is, the parental genes are recombined through the use of genetic operators. The newly generated chromosomes (also called offspring) are evaluated by a predefined fitness function and the weakest (least fit) chromosomes are discarded.
The objective of the GA is to improve the fitness of the chromosomes by evolving the population according to a set of rules until desirable solutions are found. Figure 6 depicts the schematic representation of a classic GA, where the most important parts of the algorithmβselection phase, genetic operators, and evaluation phaseβare presented. Usually, some stopping criterion is used to decide when the population contains solutions that are βgood enough". In this work, the simulations are stopped after a fixed number of iterations, since the main goal of the paper is to demonstrate our approach.
5. Subtour Problem: Formulation and Coding
In this work, a genetic algorithm (GA) has been designed to solve the subtour problem on the complete graph , where , is the set of targets and is the agent. More precisely, the GA attempts to find the shortest possible simple path starting from vertex for targets. The GA presented here can also solve the -TSP ( is the classic traveling salesman problem), finding a simple cycle of low cost for visiting targets.
Having defined the problem, the next step is to choose a suitable representation of solutions to the problem in terms of genes and chromosomes. Since the solutions of the subtour problem are simple paths , the set is designated as the allele set, and chromosomes are easily coded as the sequence of targets of the path in the order they are visited by the agent. The first element of a chromosome is always , since the starting point of the agent is . Therefore, a generic chromosome/path is represented as , with and . An additional constraint on the structure of the chromosome is imposed by the simplicity of the path (every target should be visited only once) therefore; the same gene must not appear in the chromosome more than once. The coding for the -TSP is similar.
The total cost of a chromosome/path is the sum of the weights of its edges (in other words the distance between targets) while its fitness value is defined as (the lower the cost, the higher the fitness and vice versa).
The above representation is called order based, and the fitness of an individual depends on the order of the genes in the chromosome, as opposed to the traditional representation where the order is not important [38]. As an example, consider agent and the complete graph generated by the augmented vertex set (with ). A generic path , with , and , is coded in the chromosome (see Figure 7).
(a) Targets and agents
(b) Path in |
(c) Chromosome
A class of genetic operators have been developed for the variants of the -TSP [38, 51] and some of these are described in the following (see Section 6.3).
6. Implementation of the Genetic Algorithm
In this section, a fixed-length chromosome implementation of the genetic algorithm (GA) for solving the subtour problem is described. The two main components of the GA are the initialization and the evolution phases.
6.1. Initialization Phase
The starting population of chromosomes determines not only the starting point for the evolutionary search, but also the effectiveness of the algorithm. One of the problems using GA is that the algorithm could prematurely converge to local minima instead of exploring more of the search space. This occurs when the population quickly reaches a state where the genetic operators can no longer produce offsprings outperforming their parents [52]. It is important to point out that the size of the starting population also influences the performance of the algorithm, since a population too small can lead to premature convergence, while a big one could bring the computation to a crawl.
For the combinatorial problems of interest, a hard constraint is enforced: every gene (representing a target) must only be present once in every chromosome.
6.2. Genetic Evolution Phase
After the initialization phase, the initial population is evolved. The chromosomes of the th generation are combined, mutated and improved through genetic operators (see Section 6.3) to create new chromosomes (the offsprings). These are then evaluated by the fitness function: the weakest (least fit) solutions are discarded while the good ones are kept for the th generation. The evolution phase consists of three main parts: selection of parents, application of genetic operators and creation of a new population by evaluation of the offsprings. If during the selection phase two identical parents are chosen, the recombination process may result in duplication of chromosomes which may decrease the heterogeneity of the population. This could lead to the quick reduction of the coverage of the search space and the consequently fast and irreversible convergence towards local minima far away from the optimal solution.
This premature convergence is not desirable and different methods have been devised to get around this problem. For example, in the random offspring generation technique [51] the genetic operators are applied only if the genetic materials of the parents are different, otherwise at least one of the offsprings is randomly generated. Other, even more drastic, solutions have been proposed. In [53] the social disasters technique is applied to the TSP in order to maintain the genetic diversity of the population. This method checks the heterogeneity of the population and, if necessary, replaces a number of selected chromosomes by randomly generated ones.
To counter the effect of premature convergence, we decided to maintain heterogeneity of the populations by introducing what we call a singular mating pool. This pool is created at each generation step from the population by removing all duplicates. Consequently, if the population has individuals, the singular mating pool is always composed of solutions. With this method, the probability of mating identical chromosomes is reduced. However, note that an individual can be selected and mated more than once. The singular mating pool does not preclude the duplication of individuals, it only reduces its frequency, resulting in a higher diversity of the solutions and avoiding premature convergence.
For the selection phase the Tournament Selection method [38, 54] is adopted. A subset of the chromosomes is randomly chosen from the Singular Mating Pool and the best chromosome is selected for the so-called mating pool. This process is repeated until a predefined number of individuals, , is reached (in our simulations ).
From the mating pool two parents are randomly selected, and to these, the genetic operators are applied with some predefined probability (see Section 6.3). This process is repeated until offsprings have been generated. These new chromosomes are then added to the singular mating pool (of size ), returning a new temporary population of size . In this work, is chosen such that . Since the required number of chromosomes in a population is , the weakest individuals (the ones with the highest cost , c.f. (5.1)) are discarded. The adopted schema is shown in Figure 8.
6.3. Genetic Operators
Genetic operators combine existing solutions into new ones (crossover) or introduce random variations (mutation) to maintain genetic diversity. These operators are applied in a fixed order (shown in Figure 8) with a priori assigned probabilities. In addition to these operators, the heuristic 2-opt method to directly improve the fitness of the offsprings is used (see Section 6.3.4).
Different crossover typologies have been developed for solving the classic TSP, including the partially matched crossover, order crossover, and cycle crossover operators [38]. These operators are all based on the constraint that TSP solutions include all the targets. Since this is not the case for the Subtour Problem, these operators cannot be directly applied. To overcome these limitations, we modified the classic operators according to the new problem constraints. In particular, we decided to use a standard genes recombination mechanism, while changing the rules for keeping the feasibility of the solutions.
6.3.1. Single Cutting-Point Crossover
With the single cutting-point crossover (applied with probability ), both parents are halved at the same gene, the cutting point (see Figure 9).
The cutting point is chosen either randomly or to break the longest edge in the parents (with probability). Once the parents have been halved, two offsprings are created combining the first (second) half of the first parent with the second (first) half of the second parent, respectively. Care is taken to avoid duplication of genes (as every target should only be visited once) and the length of the chromosomes is kept constant. See Appendix A for an illustrative example.
6.3.2. Double Cutting-Point Crossover
The double cutting-point crossover operator cuts the parents at two different genes (see Figure 10), with probability . The locations of the cutting points are chosen either randomly or to cut the longest edge in the parents (with probability). The latter introduces an improvement over the single cutting-point operator, where only one parent was cut along its longest edge and this point was also used for the other parent. An important consequence of having two different cutting points is that the halves will in general have different number of genes. A simple recombination would thus lead to two offsprings with different lengths. The technique to maintain the original size of the chromosomes (which is necessary for producing feasible solutions) is described in Appendix B.
6.3.3. Mutation Operator
After the application of the crossover operator, the mutation operator is applied to the new chromosomes with . The mutation operator generates a new offspring by randomly swapping genes (Figure 11) and/or randomly changing a gene to another one that is not already present in the chromosome (Figure 12). Note that with the simple TSP, this second type of mutation would not be possible, because there a chromosome already contains all possible genes. The probability of the mutation is a parameter of the genetic algorithm.
(a) Before gene swapping
(b) After gene swapping
(a) Before gene mutation
(b) After gene mutation
6.3.4. Improving Offsprings
A common approach for improving the TSP solutions is the coupling of the genetic algorithm with a heuristic boosting technique. The local search method adopted here is the 2-opt method [55β57] that replaces solutions with better ones from their βneighborhoodβ.
Let us consider a set of targets and the corresponding complete and weighted graph ( with being the agent). Let us consider a subtour , with , coded in the chromosome . The 2-opt method determines whether the inequality between the four vertices , , and of holds, in which case edges and are replaced with the edges and , respectively. This method provides a shorter path without intersecting edges. Consequently, the order of genes in the chromosome changes [58] (see Figure 13). This operator is applied with probability.
(a) Before the application of the 2-opt method
(b) After the application of the 2-opt method
7. Results
A large number of simulations have been performed to test the performance of the implemented genetic algorithm. In order to evaluate the proposed method and provide statistically significant results, different problem configurations have been considered, including randomly generated problems and problems with known optimal solutions. Unless otherwise specified, the tests described here are all run for 250 generations with a population size of 200 chromosomes. The crossover, mutation, and boosting (2-opt) operators are applied with a , , and probability, respectively. Table 1 summarizes the parameters and their default values adopted for the simulations.
The speed and optimality of any genetic algorithm depend on many parameters and the stopping criterion. The below results will demonstrate the efficacy of the proposed algorithm even without excessive tweaking of the parameters. In addition, it is important to note that due to the stochastic nature of the GA, convergence to optimal solutions can not be guaranteed. The fact that for many test problems with known optimal solution, these solutions were reached lends credence to our approach.
7.1. Avoiding Premature Convergence
Premature convergence was defined previously as fast convergence of the genetic algorithm towards a local minimum in the search space. Tests have been conducted to illustrate how the implementation of the singular mating pool technique described in Section 6.2 prevents premature convergence. All the tests in this Section have been performed on a TSP with 600 targets randomly distributed over the unit square. The GA parameters are reported in Table 1.
The maximum and the minimum fitness values are plotted as the function of the population age (generation number) in Figure 14(a) for a simulation where duplicates are not removed from the populations (i.e., without using the singular mating pool technique). It can be observed that the range of fitness values (the width between the lines corresponding to the extrema) rapidly approaches zero as the consequence of the decreasing heterogeneity of successive populations, leading to a final population composed of identical chromosomes. Moreover, this is a local minimum, since none of the resulting solutions is optimal. It is also interesting to note what happens when a new, better solution is introduced into a stagnant genetic pool. In Figure 14(a), solutions seem to have reached a constant fitness value (the plateau around the 80th generation), when a better chromosome randomly appears in the population around the 120th generation.
(a) The singular mating pool is not used
(b) The singular mating pool is used
Since during the evolution the duplicates of this chromosome are not discarded (its fitness value is better than those of the other solutions), in a small number of generations they replicate and replace all other individuals.
Figure 14(b) shows the extremal values of fitness in a simulation where the duplicates are constantly removed from the mating pool; that is, where the singular mating pool method is used. As a result of this strategy the diversity of the populations is maintained with an increased coverage of the search space. This makes it more likely for the algorithm to reach a near-optimal solution (in this case, the optimal result is reached).
To characterize the heterogeneity/diversity of a population, a pairwise comparison of chromosome edges can be used. Let us consider two chromosomes of length , , and , with edge sets and , respectively (). One possible measure of diversity can be defined as
This edge diversity quantifies how much two chromosomes differ. The exact locations of identical edges do not influence this diversity measure. The edge diversity of the entire population is the averaged edge diversities for all pairs Clearly, . We also introduce a βBooleanβ diversity. The diversity of two chromosomes are equal if and only if they have identical edges. The Boolean diversity for population is defined as
Figure 15 shows the average edge and boolean diversity at every generation step for the simulations used for Figure 14 (with or without the use of the singular mating pool technique).
(a) Edge diversity
(b) Boolean diversity
The decrease of the edge diversity can be explained by the reduction of the coverage of the search space: many costly edges are discarded early in the evolution and only considered again during the search process with low probability. This is why at later generations many solutions differ only by few edges, but still the population maintains its heterogeneity (as shown in Figure 15(b)).
In conclusion, to avoid premature convergence it is important to ensure that the evolving population contains a variety of chromosomes (representing different strategies for the agent to reach a set of targets). In our work on distributed planning (published in the sequel), the availability of these different strategies will have special significance.
7.2. Influence of the 2-opt Method on the Performance of Genetic Operators
To evaluate the performance of the different genetic operators and the 2-opt method, various tests have been performed. A target configuration for targets randomly and uniformly distributed over the unit square is generated. This configuration is kept fixed for all tests in this section to make comparisons meaningful. The 30-from-100 subtour problem is then solved with different combinations of the genetic operators, 100 times for each combination. The application probabilities of the operators are reported in Table 1. To assess the influence of the various genetic operators, their performances are directly compared and tested without the 2-opt method. The mean values and the variances of the distribution of the best (highest) fitness values of the final populations are shown in Table 2.
Since the optimal solution is not known, the mean fitness values and the variances of fitness are normalized by the best result (the highest for the fitness values and the lowest for the variances of fitness). The comparison of the quantities in Table 2 shows that the combined application of the double cutting-point crossover and the mutation operator yields the maximum fitness value and the minimum variance of the solutions. On the other hand, the worst solutions are obtained with the standalone application of the single cutting point crossover operator. These results not only demonstrate the improvement introduced by the double cutting point crossover, but also clearly highlight the importance of the mutation operator.
With the application of the 2-opt method, the results change, as shown in Table 3.
In this case, the performance of the single cutting-point crossover operator coupled with mutations is the best. It would be tempting to conclude that this configuration of the genetic operators is the best; however, in the next section it is demonstrated that the speed of convergence for this configuration of operators is significantly worse than for the double cutting-point crossover/mutation combo (here, this fact is hidden as the genetic algorithm is run for a fixed number of generations).
7.3. Speed of Convergence and Genetic Operators
The results of the previous section clearly demonstrate the efficiency of coupling the genetic operators with the 2-opt method. The most important improvement introduced by the 2-opt method is in the speed of convergence that is here intended as the number of generation the algorithm requires for converging (it is not related to time). In fact, because of its capability of detecting new local minima at each generation step, the application of the 2-opt method together with the double cutting-point crossover and the mutation operators helps the GA to converge faster than without [56]. To quantify the speed of convergence with various genetic operators and the 2-opt method, the required number of generations for the convergence of the genetic algorithm is calculated. To facilitate this test, a 100-target TSP with known exact solution was solved (KroA-100 TSP [59], with optimal path-length of 21282). For different combinations of the genetic operators, Table 4 reports the number of generations (and its variance) necessary to reach a solution within 1% of the optimal length. For each case, 500 simulations have been performed and the variance of the final results is normalized with respect to the minimum obtained value. From these results, we conclude that the GA with double cutting-point crossover coupled with the mutation operator needs the least number of generations to reach a near-optimal solution (for this example, the local boosting technique yielded a 25-fold increase in computational speed to reach populations with the same fitness). Results on the runtime performance for the method were published in [60].
7.4. TSP Tests
Since the TSP is a limiting case of the subtour problem (one agent visiting all the targets, that is, , , with the restriction on returning to the starting position) the proposed algorithm can also be used to solve this classic problem.
The algorithm has been tested with different TSPs from the well-known TSPLIB95 library [59]. This library includes different target configurations for the TSP and many related problems (Hamiltonian cycle problem, sequential ordering problem, etc.) together with their exact solutions. We note that the TSPs in the TSPLIB95 library are solved with a cost function based on rounded distances between targets. In order to have meaningful comparisons with the TSPLIB95 problems, our cost function was modified to round off distances.
For every TSPLIB95 instances considered here, 100 simulations have been performed and the operators are applied with the probabilities reported in Table 1. The results are shown in Table 5 and demonstrate the suitability of our approach.
The att532 problem (532 cities in America) has been a popular benchmark for testing TSP-solvers. The optimal solution of length 86729 (shown in Figure 18(a)) was found by Padberg and Rinaldi [61]. Yoshiyuki and Yoshiki [62] consider a real space renormalization approach for this problem, which provides solutions 37% longer than optimal on the average. Merz and Freisleben [63] show that while a simple memetic algorithm produces solutions that are about 20% longer than the optimal one, a recombination-based version of the memetic algorithm can find the optimal solution! Tsai et al. [64] introduce a smart combination of local and global search operators (called neighbor-join and edge assembly crossover) and this method is shown to find the optimal solution to the att532 problem in more than 75% of the simulations. A moving-frame renormalization group approach by Ugajin [65] yields a solution that is longer than the optimal one. Yi et al. [66] present a parallel tabu search algorithm for this TSP and find solutions 6% longer than the optimal on the average (their best solution is only 3.85% longer than optimal). Chen and Zhang [50] report an enhanced annealing algorithm utilizing nth-nearest-neighbor distributions of optimal TSP solutions to solve the att532 benchmark problem, finding solutions that are 28% longer than optimal. Our GA reaches within of the optimal solution in all simulations. The best solution we found (only 0.3% longer than optimal) differs from the optimal one in the βdenseβ region of the map as illustrated in Figures 16(b) and 16(c).
(a) att532 problem: optimal solution
(b) Optimal solution
(c) GA solution
Optimal TSP solutions for targets uniformly distributed over the unit square were obtained using CONCORDE [67] (also using rounded distances). Table 6 summarizes the results.
Once again, the GA-based approach seems to perform well. The sudden increase in the errors for the 1000-target problem can be attributed to the relatively low size of the populations and to the fact that the number of the generations (250) used in these simulations is fixed (note that the objective of these tests was not to reach the best possible solutions).
Finally, to quantify the influence of the singular mating pool technique, Table 7 shows the different results obtained with or without its application. These simulations illustrate that avoiding the replication of the individuals through the application of the singular mating pool (slightly) improves the solutions. Note that the main purpose of the Singular Mating Pool is to maintain diversity of possible subtours. This has special significance for building near-optimal multiagent plans.
The results of this section strengthen our claim that the implemented genetic algorithm is successful in finding near-optimal solutions for this type of combinatorial problems.
7.5. Subtour Tests
The genetic planner has also been statistically tested in order to demonstrate its capability to generate near-optimal subtours. To provide reliable averages, for a given configuration 100 simulations have been performed. All the subtour tests have been conducted on the unit square with a given target configuration and using the cost function (2.4). The double cutting-point crossover, the mutation operator, and the 2-opt method have been used (with the probabilities reported in Table 1).
In order to evaluate the optimality of the subtours generated by our genetic algorithm, a comparison with known optimal solutions is needed. To our knowledge, no benchmark solutions exist for the subtour problem, so we introduced test cases with regular and random point configurations on the unit square to evaluate the algorithm.
The first set of tests have been conducted by generating maps of targets with a trivial unique optimal solution. In these tests, targets were selected with constant spacing of on the unit square (a uniform grid) with extra points added between two points of the grid, following vertical, horizontal or diagonal directions. Figure 17 shows an example depicting the optimal 11-from-58 solution (, ).
(a) Speed of convergence
(b) Distributions of subtour lengths after 250 generations
Different problems have been generated and the results are shown in Table 8.
We note that the proposed method converges to the optimal solution in almost all the performed simulations. In few cases (the results of the 50-from-489 subtour), however, only very costly solutions (with high length) are found. This can be attributed to the slow convergence of the stochastic optimization process. In fact, all the reported tests are run with a fixed number of 250 generations which is in some cases not enough to ensure the convergence of the GA to an optimal (or near-optimal) solution.
To elucidate this point, Figure 18(a) shows the percentage of simulations reaching the optimal solution of the 50-from-489 problem as the function of population age (number of generations), while Figure 18(b) shows the distribution of subtour lengths after 250 generations. Note that only few of them are very costly solutions.
The speed of convergence of the algorithm strongly depends on the GA parameters. In particular, it is influenced by the application of the 2-opt method.
To provide numerical evidence for this claim, 100 simulations have been run on the 17-from-133 targets problem shown in Figure 19 with different application probabilities of the 2-opt method. Note that in this case, the points are added between more than two neighboring points.
Results are reported in Table 9, while Figure 20 shows the convergence speeds for different values of the 2-opt application probability.
In general, the frequent use of the 2-opt method restricts the random wandering of the genetic algorithm over the search space, thereby severely restricting the set of reachable solutions. If the 2-opt method is only applied with a given probability, much like the other operators, the results greatly improve and the number of necessary generations are strongly reduced.
Note also (see Table 9) that if the 2-opt method is always applied, the number of generations needed for full convergence can be very high.
Another set of tests have been devised to compare GA subtour solutions to exact ones in random configurations of targets in the unit square. To find the exact solutions for these tests, the simplest brute force approach (exhaustive evaluation of combinations) was used. Figure 21 shows an optimal 7-from-30 subtour with specified starting point (the depot) and the solution found by the GA. Table 10 summarizes the results for different subtour problems.
Figure 22 shows a sample subtour for a problem, where the total number of targets is and the shortest path is sought connecting any targets (a no depot problem).
As previously described, the Subtour solutions can be used as a starting set of solutions for solving the more challenging multiagent planning problem. In Figure 23, few preliminary examples are shown from our work on the multiagent planning problem.
(a) 76 cities and 5 agents
(b) 100 cities and 5 agents
8. Conclusions
This paper describes a genetic goal planner for generating a near-optimal strategy, a subtour, for visiting a subset of known targets/goals. The importance of this work is to provide the ability to a single agent to plan a strategyβa subtourβby organizing a sequence of targets autonomously. This planning capability is a starting step toward a multiagent planning system, where agents are able to collectively decide on the overall mission strategy, allocating and sharing a given number of tasks/goals, with important applications in problems where there is limited/no human feedback (like planetary space exploration or search and rescue in collapsed buildings).
The results presented here show the success of the implemented genetic algorithm. In particular, we demonstrated that the proposed combination of genetic operators (double crossover with mutation) and local boosting technique (the 2-opt method) provides an efficient solver for otherwise hard combinatorial problems (TSP, subtour problem).
Appendices
A. Single Cutting-Point Crossover
With the single cutting-point crossover operator, parents are halved at the same gene. The cutting point is chosen either randomly or to break the longest edge in the parents (the probability of which one of the two methods is applied is specified a priori).
Consider two parents, and . Since the first gene in all the chromosomes is always , for clarity we only show the operations of the target genes. Figure 24(a) shows the two parents both being cut at the fourth gene.
(a) Parents and are cut at the same point |
(b) Two new temporary solutions, and , are generated, but some replications can occur |
Once the parent chromosomes are divided, the two offsprings and are created by combining the first (second) half of with the second (first) half of , respectively. This operator is designed to preserve the length of the chromosomes. However, as shown in Figure 24(b), a simple recombination of the halves of the parents could result in unfeasible solutions, since some targets could appear twice in the same chromosome (e.g., target in appears twice, so does target in ).
To restore the feasibility of the solutions, the replicated genes in the offsprings must be replaced by ones not already present in these chromosomes. To achieve this, the following replacement method has been devised. Without loss of generality, let us suppose that in both chromosomes and only genes that originate from parent need to be replaced. Therefore, when a gene is replaced, it is replaced by the corresponding gene in parent . This method is applied iteratively, until two feasible solutions (without gene repetitions) are obtained.
In the example shown in Figure 25, genes are substituted as follows. At first, since , gene is replaced by the corresponding gene . At the same step, since , gene is replaced by the corresponding gene . At the end of this first iteration, the new offspring is still unfeasible (). Therefore, a new step is performed and is replaced by . Note that only the genes that came from parent have been replaced.
This way, the substitutions are executed without introducing new targets, and thus, the genetic material of the parents is preserved.
B. Double Cutting-Point Crossover
With the double cutting point crossover operator the cutting points of the parents can be different (see Figure 26(a)). The cutting points can be selected in two different ways, depending on preassigned probabilities : they are chosen either randomly or to cut the longest edge in the parents. An important consequence of having two different cutting points is that the halves of the parents may have a different number of genes. Thus, a simple swapping recombination would result in offsprings with different lengths (see Figure 26(b)).
(a) Double cutting-point crossover: parents are cut at two different points
(b) Double cutting-point crossover: halves have different size
Since the length of the chromosomes is fixed (the number of targets in the subtour is given) to obtain feasible solutions, the offsprings are filled with the following ad hoc method. Consider two parents, and , and their offsprings and . Suppose that parent is cut at the th gene, while parent is cut at the th gene. In the implemented method, at first, parent fills the offsprings and with its halves such that the first (second) half of the offspring () is the same as the first (second) half of (see Figure 27 and Table 11).
Similarly to the example for the single cutting-point crossover, genes coming from parent will not be changed. For completing and , only genes of parent are used. For a better explanation of the process for filling the remaining halves of the offsprings, let us introduce the temporary chromosome ; that is simply obtained by switching the halves of (obviously considering the cutting point ), as reported in Table 12.
The implemented method is based on both and . At first, the second half of is filled using only the parent : starting from its first gene, and skipping the already present genes, offspring is completed (see Figure 28). Then, offspring is filled in the same way but using the temporary chromosome .
Acknowledgments
The authors would like to thank the reviewers for their careful reading of the paper and their constructive criticism.