Evolutionary Multi-Objective Optimization is becoming a hot research area and quite a few papers regarding these algorithms have been published. However the role of local search techniques has not been expanded adequately. This paper studies the role of a local search technique called 2-opt for the Multi-Objective Travelling Salesman Problem (MOTSP). A new mutation operator called Jumping Gene (JG) is also used. Since 2-opt operator was intended for the single objective TSP, its domain has been expanded to MOTSP in this paper. This new technique is applied to the list of KroAB100 cities.
Multi-objective traveling salesman problem (MOTSP) is a typical multi-objective optimization problem. It requires the selection of an optimal route while maintaining a balance between cost assignment and distance assignment. This paper shows a simple model using Elitist Non-dominated Sorting Genetic Algorithm (NSGA-II) with a modified 2-Opt and Jumping Gene adaptation to solve the MOTSP. The algorithm use integer coding method or real variables, creation of an initial population that satisfies the rules of a valid tour; calculation of the two objectives: distance and cost, and then ranks the chromosomes with Pareto function and uses tournament selection to select the better chromosomes to form a series of parents, through crossover, mutation and local search. The method of local search used is modified 2-opt. The results of real examples of MOTSP such as the KroAB100 list of cities demonstrate that the approximate global optimal solution set of the problem can be quickly obtained and with high accuracy.
Given a number of cities and the cost of travel between each pair of them, the travelling salesman problem is to find the cheapest tour of visiting each city exactly once and returning to the starting point. The single objective TSP is NP-hard. Mathematically, in the multi-objective TSP, the decision space is the set of all the permutations of (1, 2, … , n), and the m objectives to minimize are:
In ( 1) and (2) stated above, x = (x 1 ; : : : ; x n ) is a permutation vector, and d k i ; j can be regarded as the travel cost from city i to j in the k th objective, I have taken d k i ; j to be the Euclidean distance between x i an d x j for the k th objective.
The data sets I have used are KroA100 and KroB100 which are 100 city single objective problems but when combined to form KroAB100 can be used as a bi-objective problem.
Initially a random population P o is created. The population is sorted based on non-domination. Each solution is assigned fitness, rank based on its non-domination level, where 1 is the best level, 2 is the next based and so on. In the NSGA-II algorithm, fitness minimization is assumed. At first, the usual binary tournament selection, recombination and mutation operators (JG) are used to create an offspring population Q o of size N. But in this implementation, instead of simple mutation, I have used the Jumping Gene (JG) operator along with the modified 2-opt operator. After the initial generation, the procedure is different. The procedure for the i th generation of the algorithm is described in Fig. 1 below.
A combined population of P i and Q i is formed. P i is the population formed by the previous generation. Q i is the population formed after performing the various operators on the population. The combined population size is double that of the allowed population size, N. The combined population is sorted according to non-domination. This method insures elitism by making sure that the fittest individuals of the old population are present in the new one. Out of this sorted combination, we pick the best N individuals.
V. In a particular non-dominated set, individuals are arranged in the decreasing order of crowding distance. Reference [1] can be looked into for a more detailed description. In Fig. 1, N gen is the number of generations. N p is the number of individuals in the population. A box represents an entire generation.
The chromosome consists of an array of cities <x 1 ; : : : ; x n > and this representation means that city x 1 is connected with x 2 , x 2 with x 3 and so on. Finally x n is connected to x 1 to form a tour. A check has to be performed while initialization to make sure that no city appears twice in the tour.
Each chromosome is first checked to see if the operator will be carried out at all or not using a probability, P jg . If the jumping gene operator is to be applied, two locations are identified randomly on the individual, and the binary substring in-between these points is replaced with a newly, randomly generated string of the same length. In our case, instead of binary variables, we have used real variables; therefore the value of each variable between positions p and q will be reinitialized randomly. This operator is different from normal mutation in the sense that it changes whole segments of an individual, instead of just a single chromosome. For looking into the performance advantage of JG operator over simple mutation, the reader can refer [2]. Fig. 2 shows the steps involved in the JG operator.
2-OPT is a simple local search/improvement algorithm for TSP based on simple tour modifications. Given a feasible tour, the algorithm repeatedly performs operations, so long as each operation reduces the length of the current tour, until a tour is reached for which no operation yields an improvement. This tour is a locally optimal tour. 2-Opt was first proposed in [3] for single objective travelling salesman problem. The move deletes two edges, thus breakin
This content is AI-processed based on open access ArXiv data.