An Improved Genetic Algorithm for Path-Planning of Unmanned Surface Vehicle

The genetic algorithm (GA) is an effective method to solve the path-planning problem and help realize the autonomous navigation for and control of unmanned surface vehicles. In order to overcome the inherent shortcomings of conventional GA such as population premature and slow convergence speed, this paper proposes the strategy of increasing the number of offsprings by using the multi-domain inversion. Meanwhile, a second fitness evaluation was conducted to eliminate undesirable offsprings and reserve the most advantageous individuals. The improvement could help enhance the capability of local search effectively and increase the probability of generating excellent individuals. Monte-Carlo simulations for five examples from the library for the travelling salesman problem were first conducted to assess the effectiveness of algorithms. Furthermore, the improved algorithms were applied to the navigation, guidance, and control system of an unmanned surface vehicle in a real maritime environment. Comparative study reveals that the algorithm with multi-domain inversion is superior with a desirable balance between the path length and time-cost, and has a shorter optimal path, a faster convergence speed, and better robustness than the others.


Introduction
The traveling salesman problem (TSP) is a typical non-deterministic polynomial (NP)hard problem with the goal of designing the shortest route for a traveler to visit each city without repetition, followed by returning to the starting city. In production and life, TSP has been widely used as a model in many fields, such as vehicle path planning [1-3], machine learning [4], temporal graphs [5], word sense disambiguation [6], green logistics [7], fuel efficiency management [8], wireless charging [9], and so on. Hence, solving the TSP is of great significance for household, civil, and military applications.
Recent studies tend to utilize approximate algorithms for the TSP, such as genetic algorithm (GA), stimulated annealing algorithm, ant colony algorithm, and neural network algorithm [10,11]. By contrast, GA has advantages of higher robustness and stronger global search capability, and hence has been applied to the trajectory planning problem for various kinds of autonomous equipment such as robots, unmanned aerial vehicles (UAVs), and unmanned surface vehicles (USVs). To solve the collision-free shortest path planning problem of mobile agents, Lee et al. (2018) applied the obstacle-based GA to shrink the search areas and obtain a considerable path with shorter length and time-cost [12]. Elhoseny et al. (2018) modified the conventional genetic algorithm (CGA) for a mobile robot to search for the control points of a Bezier curve and designed the shortest route in a dynamic probabilities, are normally defined by human experience. After the optimization problem is confirmed, the initial population of candidate solutions with a certain size is generated randomly. The fitness function, defined by 1/len (len stands for the relative route length of each chromosome), is used to evaluate the fitness of each individual. The fitter ones will survive for the reproduction. Then, the algorithm proceeds to improve the population through repetitive operations of crossover, mutation, and selection. The evolutionary process will be terminated if certain criteria are satisfied or if the maximum number of iterations is reached. In CGAs, the crossover is performed to concatenate parts of two parent chromosomes, which are separated by determined break points, and generate two offsprings with a certain crossover probability (PC). Meanwhile, the mutation interchanges the positions of genes at two randomly chosen mutation points in a single chromosome. Accordingly, the mutation occurs with a certain mutation probability (PM). It should be noted that the crossover helps the population to converge by making the chromosomes alike, whereas the mutation brings the genetic diversity back into the population in case of the local optimum. In this paper, the single-domain inversion-based algorithm (SDIGA) is presented with a further inversion operation added after the mutation in the CGA. Two different genes in a single chromosome are defined as inversion points, between which the fragment is named an inversion domain. The fragment is then turned through 180° (inversed) and inserted back into the original position of the chromosome. The schematic layouts for crossover, mutation, and single-domain inversion are illustrated in Figures 2-4, respectively.   In CGAs, the crossover is performed to concatenate parts of two parent chromosomes, which are separated by determined break points, and generate two offsprings with a certain crossover probability (P C ). Meanwhile, the mutation interchanges the positions of genes at two randomly chosen mutation points in a single chromosome. Accordingly, the mutation occurs with a certain mutation probability (P M ). It should be noted that the crossover helps the population to converge by making the chromosomes alike, whereas the mutation brings the genetic diversity back into the population in case of the local optimum. In this paper, the single-domain inversion-based algorithm (SDIGA) is presented with a further inversion operation added after the mutation in the CGA. Two different genes in a single chromosome are defined as inversion points, between which the fragment is named an inversion domain. The fragment is then turned through 180 • (inversed) and inserted back into the original position of the chromosome. The schematic layouts for crossover, mutation, and single-domain inversion are illustrated in Figures 2-4, respectively.
Sensors 2018, 18, x FOR PEER REVIEW 3 of 22 probabilities, are normally defined by human experience. After the optimization problem is confirmed, the initial population of candidate solutions with a certain size is generated randomly. The fitness function, defined by 1/len (len stands for the relative route length of each chromosome), is used to evaluate the fitness of each individual. The fitter ones will survive for the reproduction. Then, the algorithm proceeds to improve the population through repetitive operations of crossover, mutation, and selection. The evolutionary process will be terminated if certain criteria are satisfied or if the maximum number of iterations is reached. In CGAs, the crossover is performed to concatenate parts of two parent chromosomes, which are separated by determined break points, and generate two offsprings with a certain crossover probability (PC). Meanwhile, the mutation interchanges the positions of genes at two randomly chosen mutation points in a single chromosome. Accordingly, the mutation occurs with a certain mutation probability (PM). It should be noted that the crossover helps the population to converge by making the chromosomes alike, whereas the mutation brings the genetic diversity back into the population in case of the local optimum. In this paper, the single-domain inversion-based algorithm (SDIGA) is presented with a further inversion operation added after the mutation in the CGA. Two different genes in a single chromosome are defined as inversion points, between which the fragment is named an inversion domain. The fragment is then turned through 180° (inversed) and inserted back into the original position of the chromosome. The schematic layouts for crossover, mutation, and single-domain inversion are illustrated in Figures 2-4, respectively.   probabilities, are normally defined by human experience. After the optimization problem is confirmed, the initial population of candidate solutions with a certain size is generated randomly. The fitness function, defined by 1/len (len stands for the relative route length of each chromosome), is used to evaluate the fitness of each individual. The fitter ones will survive for the reproduction. Then, the algorithm proceeds to improve the population through repetitive operations of crossover, mutation, and selection. The evolutionary process will be terminated if certain criteria are satisfied or if the maximum number of iterations is reached. In CGAs, the crossover is performed to concatenate parts of two parent chromosomes, which are separated by determined break points, and generate two offsprings with a certain crossover probability (PC). Meanwhile, the mutation interchanges the positions of genes at two randomly chosen mutation points in a single chromosome. Accordingly, the mutation occurs with a certain mutation probability (PM). It should be noted that the crossover helps the population to converge by making the chromosomes alike, whereas the mutation brings the genetic diversity back into the population in case of the local optimum. In this paper, the single-domain inversion-based algorithm (SDIGA) is presented with a further inversion operation added after the mutation in the CGA. Two different genes in a single chromosome are defined as inversion points, between which the fragment is named an inversion domain. The fragment is then turned through 180° (inversed) and inserted back into the original position of the chromosome. The schematic layouts for crossover, mutation, and single-domain inversion are illustrated in Figures 2-4, respectively.

Double-Domain Inversion-Based Genetic Algorithm
In CGA, the symbolic coding is normally used as the chromosome encoding with the crossover operator of a partially mapped crossover (PMC) to solve the TSP [24,25]. However, this crossover operator causes a terrible destruction to the parent chromosomes. Only a fraction of parent genes could survive, and most genes of offspring chromosomes are generated during the evolutionary process; this is not conducive to the inheritance of advantage genes from parent chromosomes. In addition, the mutation or the single-domain inversion has evident deficiencies of local search capacities due to their limited transformation of genes. Hence, the strategy named the double-domain inversion-based genetic algorithm (DDIGA) is introduced, as shown in Figure 1.
The positions of four different genes are randomly defined as the inversion points from the encoding string of a chromosome. Two domains are generated between the first two points and the latter two points, respectively. The fragments in both domains are inversed simultaneously to reproduce an offspring. The fitness of both child and parent chromosomes will be compared to determine the fitter one for the next generation. The double-domain inversion is illustrated in Figure  5, in which I stands for a parent chromosome, and I' is the child chromosome after inversion. It is supposed that introducing the double-domain inversion could help retain more advantage genes from parent chromosomes and generate more adaptive encoded strings for child chromosomes. Meanwhile, the capacity of local search may be improved since the compassion of fitness could guarantee the evolution towards a higher fitness level.

Multi-Domain Inversion-Based Genetic Algorithm
It is known that in the CGA, the number of generated offsprings is normally the same as the number of parent chromosomes. From the point of view of the biological theory foundation, the number of offsprings needs to be larger than the number of parents so as to prevent species extinction and maintain species diversity in the process of biological evolution [17].
As mentioned in Section 2.2, four randomly sorted points create two domains for the DDIGA, and only one child chromosome is generated after two inversions. In fact, however, every two of four inversion points could define an inversion domain. According to permutation and combination theory, six domains for a single inversion could be found in total. Hence, six extra child chromosomes would be reproduced through a single inversion of each domain in the parent chromosome; this would increase the probability of finding a fitter offspring for every generation to some degree. Inspired by the above discussion, the MDIGA is proposed based on multi-domain inversion to increase the number of inversion domains and child chromosomes. As shown in Figure 6, four inversion points, named a-d, are randomly defined in the encoded string. Six child chromosomes I'1-I'6 are generated by a single inversion within domains a-b, a-c, a-d, b-c, b-d, and c-d, respectively.

Double-Domain Inversion-Based Genetic Algorithm
In CGA, the symbolic coding is normally used as the chromosome encoding with the crossover operator of a partially mapped crossover (PMC) to solve the TSP [24,25]. However, this crossover operator causes a terrible destruction to the parent chromosomes. Only a fraction of parent genes could survive, and most genes of offspring chromosomes are generated during the evolutionary process; this is not conducive to the inheritance of advantage genes from parent chromosomes. In addition, the mutation or the single-domain inversion has evident deficiencies of local search capacities due to their limited transformation of genes. Hence, the strategy named the double-domain inversion-based genetic algorithm (DDIGA) is introduced, as shown in Figure 1.
The positions of four different genes are randomly defined as the inversion points from the encoding string of a chromosome. Two domains are generated between the first two points and the latter two points, respectively. The fragments in both domains are inversed simultaneously to reproduce an offspring. The fitness of both child and parent chromosomes will be compared to determine the fitter one for the next generation. The double-domain inversion is illustrated in Figure 5, in which I stands for a parent chromosome, and I' is the child chromosome after inversion.

Double-Domain Inversion-Based Genetic Algorithm
In CGA, the symbolic coding is normally used as the chromosome encoding with the crossover operator of a partially mapped crossover (PMC) to solve the TSP [24,25]. However, this crossover operator causes a terrible destruction to the parent chromosomes. Only a fraction of parent genes could survive, and most genes of offspring chromosomes are generated during the evolutionary process; this is not conducive to the inheritance of advantage genes from parent chromosomes. In addition, the mutation or the single-domain inversion has evident deficiencies of local search capacities due to their limited transformation of genes. Hence, the strategy named the double-domain inversion-based genetic algorithm (DDIGA) is introduced, as shown in Figure 1.
The positions of four different genes are randomly defined as the inversion points from the encoding string of a chromosome. Two domains are generated between the first two points and the latter two points, respectively. The fragments in both domains are inversed simultaneously to reproduce an offspring. The fitness of both child and parent chromosomes will be compared to determine the fitter one for the next generation. The double-domain inversion is illustrated in Figure  5, in which I stands for a parent chromosome, and I' is the child chromosome after inversion. It is supposed that introducing the double-domain inversion could help retain more advantage genes from parent chromosomes and generate more adaptive encoded strings for child chromosomes. Meanwhile, the capacity of local search may be improved since the compassion of fitness could guarantee the evolution towards a higher fitness level.

Multi-Domain Inversion-Based Genetic Algorithm
It is known that in the CGA, the number of generated offsprings is normally the same as the number of parent chromosomes. From the point of view of the biological theory foundation, the number of offsprings needs to be larger than the number of parents so as to prevent species extinction and maintain species diversity in the process of biological evolution [17].
As mentioned in Section 2.2, four randomly sorted points create two domains for the DDIGA, and only one child chromosome is generated after two inversions. In fact, however, every two of four inversion points could define an inversion domain. According to permutation and combination theory, six domains for a single inversion could be found in total. Hence, six extra child chromosomes would be reproduced through a single inversion of each domain in the parent chromosome; this would increase the probability of finding a fitter offspring for every generation to some degree. Inspired by the above discussion, the MDIGA is proposed based on multi-domain inversion to increase the number of inversion domains and child chromosomes. As shown in Figure 6, four inversion points, named a-d, are randomly defined in the encoded string. Six child chromosomes I'1-I'6 are generated by a single inversion within domains a-b, a-c, a-d, b-c, b-d, and c-d, respectively. It is supposed that introducing the double-domain inversion could help retain more advantage genes from parent chromosomes and generate more adaptive encoded strings for child chromosomes. Meanwhile, the capacity of local search may be improved since the compassion of fitness could guarantee the evolution towards a higher fitness level.

Multi-Domain Inversion-Based Genetic Algorithm
It is known that in the CGA, the number of generated offsprings is normally the same as the number of parent chromosomes. From the point of view of the biological theory foundation, the number of offsprings needs to be larger than the number of parents so as to prevent species extinction and maintain species diversity in the process of biological evolution [17].
As mentioned in Section 2.2, four randomly sorted points create two domains for the DDIGA, and only one child chromosome is generated after two inversions. In fact, however, every two of four inversion points could define an inversion domain. According to permutation and combination theory, six domains for a single inversion could be found in total. Hence, six extra child chromosomes would be reproduced through a single inversion of each domain in the parent chromosome; this would increase the probability of finding a fitter offspring for every generation to some degree.
Inspired by the above discussion, the MDIGA is proposed based on multi-domain inversion to increase the number of inversion domains and child chromosomes. As shown in Figure 6, four inversion points, named a-d, are randomly defined in the encoded string. Six child chromosomes I' 1 -I' 6  seven child chromosomes are then sorted according to the fitness function 1/D (D is the path length of each chromosome). Only the most advantaged chromosome I' (I' 5 in this case) is reserved for the next generation, while the others would be eliminated completely.
Theoretically, MDIGA would accelerate the speed of evolution towards a higher fitness for the population and enhance convergence precision and robustness of algorithm. Similarly with the DDIGA, I'7 is generated by double inversions within domains a-b and c-d. The parent and seven child chromosomes are then sorted according to the fitness function 1/D (D is the path length of each chromosome). Only the most advantaged chromosome I' (I'5 in this case) is reserved for the next generation, while the others would be eliminated completely. Theoretically, MDIGA would accelerate the speed of evolution towards a higher fitness for the population and enhance convergence precision and robustness of algorithm.

Feasibility Analysis
This section analyzes the feasibility of improved algorithms. First, it should be noted that the idea of the MDIGA and the MO-GA in Ref. 17 are both based on the biological theory foundation of multiple offsprings and the mechanism of population competition. However, the two algorithms differ in the optimized genetic operator and encoding method. The MO-GA is based on the crossover operation and generates 2α (α∈{2, 3, 4, ...}) offsprings for a pair of parent chromosomes, while MDIGA improves the inversion operation and generates seven offsprings for one parent chromosome. In addition, MO-GA employs binary code and MDIGA uses real-number code. Table  1 compares the planned path length of the MO-GA and the MDIGA for three TSPLIB instances: burma14, eil51, and kroB100. For the case of burma14, each algorithm can obtain a desirable solution that is exactly the same as the known optimal solution in the TSPLIB. As for eil51, the MDIGA is better than the MO-GA, with a length of 434.08 m, although the value is 1.9% larger than the known optimal value. For kroB100, the planned path of the MDIGA is 3.5% longer than those of the MO-GA and the known optimal value of the TSPLIB. As mentioned in Section 2.1, the values of crossover probability (PC) and mutation probability (PM) are normally determined by experience. According to the suggestions by Elhoseny et al. [13], the value range of PC is suggested to be from 0.7 to 1. A lower value than this range will reduce the crossover operation, which is not efficient for evolution. Meanwhile, the value range of PM is suggested to be 0.001 to 0.05. A larger value than this range will increase the mutation operation, making the algorithm jump out of the best solution and deteriorating the solution quality. Hence, three pairs of PC and PM within their respective value range are selected for comparison: PC = 0.9, PM = 0.1; PC = 0.8, PM = 0.05; and PC = 0.7, PM = 0.01. Since GA is a stochastic search method, the comparative results of 100 Monte-Carlo simulations using the MDIGA for two numbers of planned points are listed in Table 2. The standard deviation is calculated to show how far the set of data are

Feasibility Analysis
This section analyzes the feasibility of improved algorithms. First, it should be noted that the idea of the MDIGA and the MO-GA in [17] are both based on the biological theory foundation of multiple offsprings and the mechanism of population competition. However, the two algorithms differ in the optimized genetic operator and encoding method. The MO-GA is based on the crossover operation and generates 2α (α ∈ {2, 3, 4, . . . }) offsprings for a pair of parent chromosomes, while MDIGA improves the inversion operation and generates seven offsprings for one parent chromosome. In addition, MO-GA employs binary code and MDIGA uses real-number code. Table 1 compares the planned path length of the MO-GA and the MDIGA for three TSPLIB instances: burma14, eil51, and kroB100. For the case of burma14, each algorithm can obtain a desirable solution that is exactly the same as the known optimal solution in the TSPLIB. As for eil51, the MDIGA is better than the MO-GA, with a length of 434.08 m, although the value is 1.9% larger than the known optimal value. For kroB100, the planned path of the MDIGA is 3.5% longer than those of the MO-GA and the known optimal value of the TSPLIB. As mentioned in Section 2.1, the values of crossover probability (P C ) and mutation probability (P M ) are normally determined by experience. According to the suggestions by Elhoseny et al. [13], the value range of P C is suggested to be from 0.7 to 1. A lower value than this range will reduce the crossover operation, which is not efficient for evolution. Meanwhile, the value range of P M is suggested to be 0.001 to 0.05. A larger value than this range will increase the mutation operation, making the algorithm jump out of the best solution and deteriorating the solution quality. Hence, three pairs of P C and P M within their respective value range are selected for comparison: P C = 0.9, P M = 0.1; P C = 0.8, P M = 0.05; and P C = 0.7, P M = 0.01. Since GA is a stochastic search method, the comparative results of 100 Monte-Carlo simulations using the MDIGA for two numbers of planned points are listed in Table 2. The standard deviation is calculated to show how far the set of data are spread out from their average value, which reflects the robustness of algorithm. Under the same working condition, a lower value of standard deviation indicates a better algorithm robustness. In addition, the critical number of iterations (N cri ) at which the solution reaches a convergence level is also presented. In general, minor differences can be found for the three pairs of P C and P M in the mean value of optimal planned path, the standard deviation, and the critical number. Only the case of P C = 0.7, P M = 0.01 has a relatively larger standard deviation and critical number than the others. Hence, the pair of P C = 0.9, P M = 0.1 is sorted for the following study. Table 2. Comparative results of various pairs of P C and P M for two numbers of planned points.

Case Setting
Best ( Furthermore, three TSPLIB instances are used to compare the feasibility of proposed GAs with some other state-of-the-art approaches, including ant colony optimization (ACO), simulated annealing (SA), and particle swarm optimization (PSO). Similarly, one hundred Monte-Carlo simulations are carried out with the statistical results shown in Table 3. By contrast, the MDIGA has certain advantages for the three problems in terms of the planned path length and the standard deviation. For the problem of eil51, the MDIGA optimizes the path with a length of 448.41 m, which is comparable with the known optimal solution of 426 m.

Algorithms Evaluation
This section employs Monte-Carlo simulations to evaluate the effectiveness of improved algorithms for the TSP in terms of the number of planned points, the population size, and the computing efficiency. In order to avoid the effects of computer models on the running capacity of algorithms, all the simulations are performed on the same personal computer (Intel (R) Core (TM) i7-7700HQ CPU @ 2.80 GHz) with a memory capacity of 8.0 GB. All algorithms have been coded in MATLAB.

Comparative Results with Various Numbers of Planned Points
Five sample instances from TSPLIB are considered: burma14, ulysses22, eil51, eil76, and rat99. Correspondingly, the five numbers of planned points (P) are 14, 22, 51, 76, and 99, with the maximum numbers of iterations (N max ) set as 100, 200, 1600, 2000, and 2000, respectively. In addition, the population size (S) is 100. The crossover probability (P C ) and the mutation probability (P M ) in this section are defined as 0.90 and 0.10, respectively. The Monte-Carlo simulations are then repeated one hundred times to obtain the data set of optimal path distances using four algorithms for each TSP instance. The comparative results are presented in box-and-whisker plots (Figure 7), with detailed statistics listed in Table 4. minimum and maximum values, respectively [26].
When there are 14 planned points, the CGA provides solutions with a longer mean distance and a higher degree of data dispersion than the others in Figure 7a, while the three improved algorithms have similar results of 30.9 m for the average optimal path distance. Meanwhile, the median values of the CGA and the DDIGA are smaller than their average values; this means the two algorithms are easier for producing larger data than the others in one hundred repeated simulations.
As P increases from 22 to 99, the CGA always obtains the longest planned path and the largest standard deviation, while the MDIGA has the superior performance in both reducing the path distance and improving the robustness. For the case of P = 99, the mean distance and the standard deviation of the MDIGA are 1341.81 m and 31.41 m, which are 49.0% and 79.6% smaller than that of the CGA, respectively. Moreover, the SDIGA performs relatively better than the DDIGA in almost all cases except when P = 22, which means not all the improvements in this work are effective for the algorithm. Since both SDIGA and DDIGA have the same number of offsprings as the number of parents, there is no essential difference between the single-domain inversion of SDIGA for enough iterations and the double-domain inversion of DDIGA for enough iterations. It also indicates that only by increasing the number of offsprings could the algorithm performance be optimized    For each algorithm in every box plot, a range bar is drawn to represent the interquartile range (IQR) of the data set, which indicates the degree of dispersion in a data set. The median value and the average value are identified with a red line and the symbol of a plus sign in the bar. In addition, there are whiskers extending around the bar's sides. The ends of the whiskers stand for the minimum and maximum values, respectively [26].
When there are 14 planned points, the CGA provides solutions with a longer mean distance and a higher degree of data dispersion than the others in Figure 7a, while the three improved algorithms have similar results of 30.9 m for the average optimal path distance. Meanwhile, the median values of the CGA and the DDIGA are smaller than their average values; this means the two algorithms are easier for producing larger data than the others in one hundred repeated simulations.
As P increases from 22 to 99, the CGA always obtains the longest planned path and the largest standard deviation, while the MDIGA has the superior performance in both reducing the path distance and improving the robustness. For the case of P = 99, the mean distance and the standard deviation of the MDIGA are 1341.81 m and 31.41 m, which are 49.0% and 79.6% smaller than that of the CGA, respectively. Moreover, the SDIGA performs relatively better than the DDIGA in almost all cases except when P = 22, which means not all the improvements in this work are effective for the algorithm. Since both SDIGA and DDIGA have the same number of offsprings as the number of parents, there is no essential difference between the single-domain inversion of SDIGA for enough iterations and the double-domain inversion of DDIGA for enough iterations. It also indicates that only by increasing the number of offsprings could the algorithm performance be optimized substantially. Furthermore, a four-number summary of data sets are listed in Table 4, including the worst, the best, the mean, and the standard deviation values of optimal path distances.

Comparative Results with Different Population Sizes
We chose the TSP instance eil51 with 51 planned points as the working condition in this section. times are then conducted using the four algorithms using every population size. Figure 8 consists of five box-and-whisker plots that show the comparative results. Detailed statistics of optimal path distances are listed in Table 5.
As shown in Figure 8a, all the three improved algorithms, especially the SDIGA and the MDIGA, effectively reduce the optimal path distance and improve the algorithm robustness in comparison with the CGA. In addition, the median value is almost coincided with the mean value in each bar; this means all the algorithms could produce uniformly distributed data under the working condition of eil51.
As shown in Figure 8b-e, evident influence appears that the overall optimal distance is further reduced for each algorithm when S increases. Although the robustness of every algorithm changes a little due to the population size, no regular tendency could be found. Furthermore, the algorithm with double-domain inversion fails to outperform the SDIGA in both reducing optimal path distance and improving algorithm robustness, which is not in accordance with our supposition as mentioned in Section 2.2. By contrast, the MDIGA is the most advantageous algorithm for the TSP. In the case of S = 60, the mean distance and the standard deviation of MDIGA are 451.63 m and 7.72 m, which are 25.8% and 79.2% smaller than that of CGA, respectively. Detailed statistics, including the worst, the best, the mean, and the standard deviation values of optimal path distance are shown in Table 5. with double-domain inversion fails to outperform the SDIGA in both reducing optimal path distance and improving algorithm robustness, which is not in accordance with our supposition as mentioned in Section 2.2. By contrast, the MDIGA is the most advantageous algorithm for the TSP.
In the case of S = 60, the mean distance and the standard deviation of MDIGA are 451.63 m and 7.72 m, which are 25.8 % and 79.2 % smaller than that of CGA, respectively. Detailed statistics, including the worst, the best, the mean, and the standard deviation values of optimal path distance are shown in Table 5.

Comparative Results of Computing Efficiency
The results of five TSPLIB instances with different planned points are employed for comparison of computing efficiency in this section. Two main criteria are selected to evaluate the computing efficiency of every algorithm: time consumption and convergence speed. The former refers to the time cost of completing the maximum number of iterations, and the latter means the critical number of iterations (N cri ) at which the solution reaches to convergence level. Figure 9 shows the convergence history of optimal path distance versus iterations for each algorithm. Meanwhile, all the detailed information of solutions for each algorithm is listed in Table 6.

Comparative Results of Computing Efficiency
The results of five TSPLIB instances with different planned points are employed for comparison of computing efficiency in this section. Two main criteria are selected to evaluate the computing efficiency of every algorithm: time consumption and convergence speed. The former refers to the time cost of completing the maximum number of iterations, and the latter means the critical number of iterations (Ncri) at which the solution reaches to convergence level. Figure 9 shows the convergence history of optimal path distance versus iterations for each algorithm. Meanwhile, all the detailed information of solutions for each algorithm is listed in Table 6.
Overall, the path distance of every algorithm is optimized gradually to be shorter with the increase of iterations, then converges to a stable and horizontal level at a critical number (Ncri), and finally reaches the global optimum. With the increase of planned points' numbers, both the critical number and the time consumption have a rising tendency for each algorithm. By contrast, the curve of the MDIGA is lower than that of the other algorithms during the entire computing process and has a faster convergence speed and a lower critical number. When P = 76 for instance, the MDIGA converges at Ncri = 586, which is 63% faster than the CGA, which spends 46% more time to complete the same iterations. It should be noted that the improved algorithms, especially the SDIGA and the MDIGA, scarify the computation time-cost to guarantee the precision of solution and avoid being t Furthermore, Figure 10 presents the best trajectories of the five TSPLIB instances (burma14, ulysses22, eil51, eil76, rat99) using the MDIGA. The abscissa and ordinate stand for the values of latitude and longitude of every planned point, respectively. The red number is the sequence of randomly generated points. The start point is enclosed in a red rectangle, and the arrows represent the heading of planned path.   Overall, the path distance of every algorithm is optimized gradually to be shorter with the increase of iterations, then converges to a stable and horizontal level at a critical number (N cri ), and finally reaches the global optimum. With the increase of planned points' numbers, both the critical number and the time consumption have a rising tendency for each algorithm. By contrast, the curve of the MDIGA is lower than that of the other algorithms during the entire computing process and has a faster convergence speed and a lower critical number. When P = 76 for instance, the MDIGA converges at N cri = 586, which is 63% faster than the CGA, which spends 46% more time to complete the same iterations. It should be noted that the improved algorithms, especially the SDIGA and the MDIGA, scarify the computation time-cost to guarantee the precision of solution and avoid being trapped in the local optimum.
Furthermore, Figure 10 presents the best trajectories of the five TSPLIB instances (burma14, ulysses22, eil51, eil76, rat99) using the MDIGA. The abscissa and ordinate stand for the values of latitude and longitude of every planned point, respectively. The red number is the sequence of randomly generated points. The start point is enclosed in a red rectangle, and the arrows represent the heading of planned path.

Application to an Unmanned Surface Vehicle
Nowadays, the unmanned surface vehicle (USV) has been utilized worldwide in both civil and military fields due to the benefits of reducing casualty risk and increasing mission efficiency. As one of the core technologies, the path planning problem is of great significance to realize the autonomous navigation for and control of the USV. In this section, the aforementioned algorithms are applied to plan the route for a self-developed USV. As a preliminary study, the present work neglects the factors of wind, current, and waves in the algorithms.

Unmanned Surface Vehicle Model and Multi-Sensor
The USV model, as shown in Figure 11, is self-designed and constructed by the Sea Wolf group of Qingdao University of Science and Technology. It is 1.8 m in length and 0.9 m in width and has five underwater side bodies. Meanwhile, a 48V 45A battery provides power for electrical motors to

Application to an Unmanned Surface Vehicle
Nowadays, the unmanned surface vehicle (USV) has been utilized worldwide in both civil and military fields due to the benefits of reducing casualty risk and increasing mission efficiency. As one of the core technologies, the path planning problem is of great significance to realize the autonomous navigation for and control of the USV. In this section, the aforementioned algorithms are applied to plan the route for a self-developed USV. As a preliminary study, the present work neglects the factors of wind, current, and waves in the algorithms.

Unmanned Surface Vehicle Model and Multi-Sensor
The USV model, as shown in Figure 11, is self-designed and constructed by the Sea Wolf group of Qingdao University of Science and Technology. It is 1.8 m in length and 0.9 m in width and has five underwater side bodies. Meanwhile, a 48V 45A battery provides power for electrical motors to drive the propeller. The navigation, guidance, and control (NGC) system is contained in the hull, with guaranteed waterproof capability. It consists of three module subsystems: the navigation data processing subsystem, path planning subsystem, and autopilot subsystem. In the first subsystem, multi-sensors including electronic compass and GPS (in Figure 12a) are employed for acquiring the direction of the bow and the USV's location data. An ultrasonic weather sensor, produced by AIRMAR ® (Model: WeatherStation ® PB200, shown in Figure 12b), is used to collect the real-time, site-specific weather and location information. All the voltage signals from the aforementioned multi-sensors are collected by a navigation data acquisition (DAQ) system. The navigation data is stored in real-time along with ship log and status information.
All the information is then processed and passed to the path planning subsystem, where the GAs are applied to generate an optimal trajectory. According to the planned route, the autopilot employs a closed loop controller to determine the heading and the speed of the USV. In addition, a graphical user interface (GUI) program compiled based on the Spring model view controller (MVC) framework is used to process and record all the data in a personal computer. The general packet radio service (GPRS) wireless network is established as the communication unit between the USV and the personal computer, with an effective distance of 5 km and a transmission speed of 1-100 Mbps. The navigation data acquisition system and the GUI program are shown in Figure 13. It is worth mentioning that there are still several challenges when applying the path planning algorithms to the NGC system of the USV. Since the vehicle have the tendency to deviate from the planned trajectory due to the influence of wind, waves, and currents, the corresponding correction of heading is necessary. Meanwhile, the stability of data transmission for the USV needs to be strengthened, especially when far offshore operation is required. Additionally, the dynamic obstacle detection and avoidance needs to be added to the path planning subsystem, which will have certain demands for the precision of multi-sensors, especially in bad environments. The navigation, guidance, and control (NGC) system is contained in the hull, with guaranteed waterproof capability. It consists of three module subsystems: the navigation data processing subsystem, path planning subsystem, and autopilot subsystem. In the first subsystem, multi-sensors including electronic compass and GPS (in Figure 12a) are employed for acquiring the direction of the bow and the USV's location data. An ultrasonic weather sensor, produced by AIRMAR ® (Model: WeatherStation ® PB200, shown in Figure 12b), is used to collect the real-time, site-specific weather and location information. All the voltage signals from the aforementioned multi-sensors are collected by a navigation data acquisition (DAQ) system. The navigation data is stored in real-time along with ship log and status information. The navigation, guidance, and control (NGC) system is contained in the hull, with guaranteed waterproof capability. It consists of three module subsystems: the navigation data processing subsystem, path planning subsystem, and autopilot subsystem. In the first subsystem, multi-sensors including electronic compass and GPS (in Figure 12a) are employed for acquiring the direction of the bow and the USV's location data. An ultrasonic weather sensor, produced by AIRMAR ® (Model: WeatherStation ® PB200, shown in Figure 12b), is used to collect the real-time, site-specific weather and location information. All the voltage signals from the aforementioned multi-sensors are collected by a navigation data acquisition (DAQ) system. The navigation data is stored in real-time along with ship log and status information.
All the information is then processed and passed to the path planning subsystem, where the GAs are applied to generate an optimal trajectory. According to the planned route, the autopilot employs a closed loop controller to determine the heading and the speed of the USV. In addition, a graphical user interface (GUI) program compiled based on the Spring model view controller (MVC) framework is used to process and record all the data in a personal computer. The general packet radio service (GPRS) wireless network is established as the communication unit between the USV and the personal computer, with an effective distance of 5 km and a transmission speed of 1-100 Mbps. The navigation data acquisition system and the GUI program are shown in Figure 13. It is worth mentioning that there are still several challenges when applying the path planning algorithms to the NGC system of the USV. Since the vehicle have the tendency to deviate from the planned trajectory due to the influence of wind, waves, and currents, the corresponding correction of heading is necessary. Meanwhile, the stability of data transmission for the USV needs to be strengthened, especially when far offshore operation is required. Additionally, the dynamic obstacle detection and avoidance needs to be added to the path planning subsystem, which will have certain demands for the precision of multi-sensors, especially in bad environments.  All the information is then processed and passed to the path planning subsystem, where the GAs are applied to generate an optimal trajectory. According to the planned route, the autopilot employs a closed loop controller to determine the heading and the speed of the USV. In addition, a graphical user interface (GUI) program compiled based on the Spring model view controller (MVC) framework is used to process and record all the data in a personal computer. The general packet radio service (GPRS) wireless network is established as the communication unit between the USV and the personal computer, with an effective distance of 5 km and a transmission speed of 1-100 Mbps. The navigation data acquisition system and the GUI program are shown in Figure 13. It is worth mentioning that there are still several challenges when applying the path planning algorithms to the NGC system of the USV. Since the vehicle have the tendency to deviate from the planned trajectory due to the influence of wind, waves, and currents, the corresponding correction of heading is necessary. Meanwhile, the stability of data transmission for the USV needs to be strengthened, especially when far offshore operation is required. Additionally, the dynamic obstacle detection and avoidance needs to be added to the path planning subsystem, which will have certain demands for the precision of multi-sensors, especially in bad environments.  Figure 13. Navigation, guidance, and control system: (a) navigation data acquisition system; (b) GUI program.

Application Tests
Corresponding to four working conditions, four numbers of planned points are selected randomly in a practical environment near the Qingdao Olympic Sailing Center at Fushan Bay: 15, 25, 35, and 45. Every condition has the same start point of (N 36°03′22.38″, E 120°22′57.06″) in latitude and longitude. For the location coordinates of other planned points, refer to Tables A1-A4. The four aforementioned GAs are then employed separately to the USV model for comparison of their effectiveness of path planning. The population size (S) is set as 100. The maximum numbers of iterations (Nmax) are 150, 250, 350, and 450, respectively, which are dependent on the numbers of planned points. In addition, the crossover probability (PC) and the mutation probability (PM) are still 0.90 and 0.10.
The convergence history of optimal path distance versus iterations for each algorithm under four working conditions are shown in Figure 14 with detailed information listed in Table 7. Similar conclusions with Figure 9 could be drawn as follows. The MDIGA is superior among the four compared algorithms. Meanwhile, the advantages of the MDIGA in accelerating the convergence and optimizing the path distance become more obvious with the increase of P. When P = 45 for instance, the curve of the MDIGA converges at Ncri = 186 and obtains the optimal path distance of 77.1 m, which is 33.1% shorter than that of the CGA. In addition, the DDIGA fails to outperform the SDIGA. The trajectory planned by the DDIGA is slightly longer than that of the SDIGA in most cases, as shown in Figure 14a-c. Furthermore, the three improved algorithms require more time for computation than the CGA under the same Nmax. However, the MDIGA is not the most time-consuming algorithm, which indicates a desirable capability of balancing the path optimization and the time consumption. Figures 15-18 present the optimal trajectory of each algorithm under each working condition. When there are 15 planned points in Figure 15, the SDIGA and the MDIGA perform better with fewer corners than the CGA around points 3, 12, and 15. Moreover, the trajectories become more complex with more evident differences in path shape and distance as P increases. The trajectories generated by the CGA and DDIGA have different levels of path-crossing phenomena in Figure 16a, Figure 17a,c, and Figure 18a; this would be the reason why a longer route distance is generated when compared with the other algorithms under the same condition. However, at the same time, the Figure 13. Navigation, guidance, and control system: (a) navigation data acquisition system; (b) GUI program.

Application Tests
Corresponding to four working conditions, four numbers of planned points are selected randomly in a practical environment near the Qingdao Olympic Sailing Center at Fushan Bay: 15, 25, 35, and 45. Every condition has the same start point of (N 36 • 03 22.38", E 120 • 22 57.06") in latitude and longitude. For the location coordinates of other planned points, refer to Tables A1-A4. The four aforementioned GAs are then employed separately to the USV model for comparison of their effectiveness of path planning. The population size (S) is set as 100. The maximum numbers of iterations (N max ) are 150, 250, 350, and 450, respectively, which are dependent on the numbers of planned points. In addition, the crossover probability (P C ) and the mutation probability (P M ) are still 0.90 and 0.10.
The convergence history of optimal path distance versus iterations for each algorithm under four working conditions are shown in Figure 14 with detailed information listed in Table 7. Similar conclusions with Figure 9 could be drawn as follows. The MDIGA is superior among the four compared algorithms. Meanwhile, the advantages of the MDIGA in accelerating the convergence and optimizing the path distance become more obvious with the increase of P. When P = 45 for instance, the curve of the MDIGA converges at N cri = 186 and obtains the optimal path distance of 77.1 m, which is 33.1% shorter than that of the CGA. In addition, the DDIGA fails to outperform the SDIGA. The trajectory planned by the DDIGA is slightly longer than that of the SDIGA in most cases, as shown in Figure 14a-c. Furthermore, the three improved algorithms require more time for computation than the CGA under the same N max . However, the MDIGA is not the most time-consuming algorithm, which indicates a desirable capability of balancing the path optimization and the time consumption. Figures 15-18 present the optimal trajectory of each algorithm under each working condition. When there are 15 planned points in Figure 15, the SDIGA and the MDIGA perform better with fewer corners than the CGA around points 3, 12, and 15. Moreover, the trajectories become more complex with more evident differences in path shape and distance as P increases. The trajectories generated by the CGA and DDIGA have different levels of path-crossing phenomena in Figure 16a, Figure 17a,c, and Figure 18a; this would be the reason why a longer route distance is generated when compared with the other algorithms under the same condition. However, at the same time, the advantages of the MDIGA reflect more obviously in reducing the path length effectively and simplifying the path shape, especially when more planned points are considered. The reason behind this may be that a larger number of offsprings and the reservation of the fittest individuals could help avoid the local optimum and converge to the optimal solution.

Conclusions
Based on the CGA, this paper proposes the concept of multi-domain inversion to increase the number of offsprings for the purpose of enhancing the capability of local search and increasing the probability of generating excellent individuals. Monte-Carlo simulations for several TSPLIB examples are carried out to analyze the feasibility and the effectiveness of the improved algorithms. The algorithms are further applied to the path planning problem of a self-developed USV model. Some concluding remarks are summarized as follows: (1) The MDIGA has the superior performance in reducing the optimal path distance, improving the robustness, and accelerating the convergence. The advantages become more obvious with the increase of planned points' numbers. (2) The increase of population size could help reduce the path distance. However, its effects on algorithm robustness are irregular. (3) The DDIGA fails to outperform the SDIGA in both reducing optimal path distance and improving algorithm robustness. With the same number of offsprings as the number of parents, there is no essential difference between the single-domain inversion of SDIGA for enough iterations and the double-domain inversion of DDIGA for enough iterations. (4) The improved algorithms scarify the computation time-cost to realize the reduction of the optimal path distance and improvement of the algorithm robustness. By contrast, the MDIGA achieves the most desirable balance. (5) The MDIGA is able to reduce the route length effectively and simplify the path shape, especially when more planned points are considered; this is because generating more offsprings and reserving the fittest individuals help guarantee solution precision and avoid being trapped in the local optimum.
However, generating more offsprings and the second fitness evaluation among them would add certain complexities to the algorithm. Hence, more efforts should be made to optimize the computing time-cost. In addition, future study will also focus on comparing the performance of the different ways of generating more offsprings with different encoding methods. Furthermore, comparative studies with different optimization algorithms for the TSP will be also conducted.

Conflicts of Interest:
The authors declare no conflict of interest.