This document presents a new multiple traveling salesman problem (MTSP*) that involves both ordinary cities that can be visited by any salesman and exclusive cities that can only be visited by a designated salesman. The document proposes using a genetic algorithm to solve MTSP*, with chromosomes encoding the cities and salesmen. Three types of crossover and mutation operators are designed for the genetic algorithm - simple city, simple salesman, and mixed city-salesman - to evolve solutions while ensuring the proper relationships between cities and salesmen. A simulation compares the performance of the genetic algorithm using the different operator modes, finding that using only city crossover and mutation achieves the best convergence.
2. II. PROBLEM STATEMENT
MTSP* with m salesmen and n cities can be formally
defined over a complete graph ( , )
G V E , where the vertex
set 1 2
{ , , , }
n
V v v v
" corresponding to cities is partitioned into
m+1 sets 0 1
, , , m
V V V
" , and each edge ( , ) ,
i j
v v E i j
z , is
associated with a weight ij
c C
that represents a visit cost
(distance) from cities i to j . Its objective is to determine m
sequences of Hamiltonian cycles or circuits on G with the least
total cost such that any vertex of each exclusive set is visited
exactly once by a specified salesman and any vertex of the
public set is visited by any salesman exactly once.
The existence of exclusive and ordinary city groups,
makes MTSP* different from TSP and MTSP. A vertex from
an exclusive group in MTSP* can be next to another in the
same or ordinary group. Similarly, a vertex in an ordinary
group can be next to another in the same or an exclusive one.
MTSP* is not a simple composition of TSP and MTSP.
Figure 2. Example of MTSP*
An example MTSP* is shown Fig. 2. It has 4 salesmen
and 51 cities where city 0 is the depot. It is modified from the
classic example-eil51 by preserving its original city coordinate
information. 1
V represents the exclusive city s to be
exclusively visited by salesman 1, which contains cities 1-7;
2
V represents the exclusive city set 2 containing cities 8-14 to
be visited by salesman 2; 3
V represents the exclusive one by
salesman 3, which contains cities 15-22; 4
V the exclusive one
by salesman 4, which includes cities 23-30; and 0
V represents
the ordinary city set for all salesmen, which contains cities 31-
50. The objective of this problem is to determine a minimum
route that all salesmen start form the depot and finally return
to it. Meanwhile, each exclusive city must be visited exactly
once by a specified salesman and each ordinary city is visited
exactly once by any salesman.
Fig. 2 shows a feasible but may not be the best route.
Routes 1-4 for salesmen 1-4 are˖
1) 0ė35ė39ė4ė1ė2ė7ė5ė3ė49ė6ė45ė41ė
31ė0;
2) 040473810128141193413
48420;
3) 03236162017221521181943
33370;
4) 0ė24ė44ė30ė26ė25ė27ė23ė29ė28ė46ė
50ė0.
Ordinary city 44 can be next to exclusive city 24 in route 4
and exclusive city 6 next to ordinary city 49 in route 1.
III. GA DESIGN
A genetic algorithm (GA) is used to search solutions based
on the evolutionary principle. Since it was firstly introduced
by Holland [6], it has been successfully applied to a variety of
NP-hard combinatorial optimization problems, such as TSP
and MTSP. To apply GA to solve MTSP*, the focus is to
establish an effective coding and decoding scheme and design
suitable selection, crossover and mutation operators to ensure
better population evolution.
A. Chromosome coding for MTSP*
Chromosome representation is a crucial basic work when
applying a GA. It directly determines the performance of the
algorithm. The GAs designed to solve MTSP of m traveling
salesman n cities mainly exploit three encoding schemes. The
first is the one-chromosome scheme. It uses a single
chromosome of length n+m-1. In it, n cities are represented by
a permutation of integers from 1 to n. This permutation is
partitioned into m sub-tours by the insertion of m-1 negative
integers from -1 to -(m-1) that represent the transition from
one salesman to the next. The second is the two-part-
chromosome technique proposed by Arthur and Cliff [9]. The
first part of a chromosome is a permutation of n cities while
the second part is of length m and represents the number of
cities assigned to each of m salesmen. The values assigned to
the second part are constrained to be m positive integers that
must sum to the number of cities to be visited (n). The third
one is the two-chromosome technique. It requires two
chromosomes, each being of length n, to represent a solution.
The first one provides a permutation of n cities while the
second one assigns a salesman to each of the cities in the
corresponding position of the first one.
For MTSP*, it is d to use the first two schemes mentioned
above. The third one with two types of chromosomes can be
adapted to MTSP* via some modification. Particularly, the
city chromosome consists of a permutation of integers from 1
to n while a genetic value of salesman chromosome is the
number of a salesman that corresponds to an exclusive or
ordinary city in the same position of the city chromosome. The
exclusive city is assigned to the specified salesman, and the
ordinary city is randomly assigned to the salesman.
A coding example of MTSP* with three salesmen and ten
cities is shown Fig. 3, where six cities are exclusive ones and
three salesmen are assigned three exclusive ones. The rest
cities are ordinary. Namely, exclusive cities of salesmen 1-3
are 1-2, and 3-4, and 5-6. Respectively, ordinary cities are
cities 7-10. According to two chromosomes in Fig. 3, cities 2,
7 and 1 (in that order) are visited by salesman 1. Similarly,
cities 10, 4 and 3 (in that order) are visited by salesman 2, and
cities 9, 5 and 6 (in that order) are visited by salesman 3.
628
628
3. Figure 3. Example of MTSP* coding
B. Selection operator
Roulette Wheel method and the elitist strategy [11] are
adopted as the selection operation in this work. The former
simply chooses a chromosome in a statistical fashion based
solely upon its fitness value. The elitist strategy copies the
individual with the best fitness at the present generation to the
next one. It can prevent the optimized individuals from being
eliminated after a selection, crossover or mutation operation. It
is critical to ensure the convergence of a GA. A GA containing
an elitist strategy is proven to be globally convergent.
C. Crossover operator
A crossover operator exchanges parts of the genes from
two parent individuals to form two new individuals. It is one
of important features that distinguish a genetic algorithm from
other ones. In MTSP a crossover operator may be one of
partially matched crossover (PMX), ordered crossover (OX),
cycle crossover (CX), two-point crossover, etc.
We design three modes of crossover operators
corresponding to the adopted chromosome coding style, i.e.,
city crossover (CC), salesman crossover (SC), and city-
salesman crossover (CSC).
1) City crossover
In this paper, we ameliorate PMX as a city crossover
operator. It requires randomly selecting two crossing points to
determine a matching section. The corresponding matching
sections in two parents are swapped, thereby resulting in two
new descendants. Then two new individuals are checked if the
exclusive cities are assigned to the specified salesman. If not,
the particular genes in a salesman individual should be
corrected.
Figure 4. Example of CC
The crossover of two chromosomes is shown in Fig. 4. In
Step 1, given two parents, we randomly select a section of a
city individual, then swap its genes with those of another
individual and produce two individual of descendants as
shown in Step 2. The mapping relationship of the selected
sections in two city individuals is 8—3, 9—8, 5—2, 4—7, 7—
1, and 1—10. In Step 3, exchange the redundant genes
according to the selected section, then find that exclusive cities
5, 3, 7, 1, and 6 in the left chromosome and cities 2, 5, and 4 in
the right one are assigned to the wrong salesmen. Then, the
exclusive cities are reassigned to the correct salesmen and two
reasonable generations are produced as shown in Step 4.
2) Salesman crossover
To avoid a number of duplicate genes appearing in a
salesman chromosome, this work adopts traditional two-point
crossover. It also requires randomly determining a matching
section. Then the corresponding sections of two chromosomes
are swapped to generate two descendants. At end, the
matching relationship between the exclusive cities should be
checked and a wrong salesman should be corrected to the
specified one.
An SC process is shown in Fig. 5. In Step 1, there are two
parents. In particular, the randomly selected matching sections
are marked in gray color in the salesman chromosome. After
swapping of the two marked sections, two descendants are
produced in Step 2. However, it is obvious that exclusive cities
5 and 4 of the left chromosome and exclusive cities 3, 2, and 1
of the right chromosome are assigned to the wrong salesmen.
In Step 3, it is corrected by reassigning exclusive cities to the
specified salesmen and obtained two correct descendants.
Figure 5. Example of SC
3) City-salesman crossover
For CSC, a city chromosome applies PMX, while a
salesman chromosome adopts the two-point crossover scheme.
Figure 6. Example of CSC
An example of CSC is shown in Fig. 6. In Step 1, we
select for each kind of parents a couple of random crossing
sections and swap each couple of sections, respectively. It
results in two new city generations and two new salesman
629
629
4. ones as shown in Step 2. In Step 3, exchange the redundant
genes of the city chromosome, and find that exclusive cities 5
and 3 of the left city chromosome and 2 of the right city one
are assigned to a wrong salesman. After the correction of
salesman genes, the result is shown in Step 4.
D. Mutation operator
A mutation operator plays an import role in improving
local search ability and maintaining variability of the
population. It also prevents the premature termination in GA.
This work adopts swapping mutation. It requires random
selection of two crossing points, and then swaps the selected
points. Finally, check whether the exclusive cities of a new
descendant match with their corresponding salesmen.
Corresponding to the above three crossover schemes, we
design three mutation operators, i.e., city mutation (CM),
salesman mutation (SM), and city-salesman mutation (CSM).
1) City mutation
In CM, only a city-chromosome applies swapping
mutation. For example, first, two selected swapping gene
points are cities 8 and 7, as shown in Fig. 7. After swapping
them, the exclusive cities are proven to be in accord with
salesmen and the mutation is over.
Figure 7. Example of CM
2) Salesman mutation
In the operation of SM swapping mutation only applied for
a salesman chromosome. An example is given in Fig. 8, where
the selected swapping points are genes 2 and 1 marked in gray
color in the salesman-chromosome. A correct descendant is
generated by swapping them.
Figure 8. Example of SM
3) City-salesman mutation
Swapping mutation takes place in both city and salesman
chromosomes in CSM. An example is shown in Fig. 9, where
the swapping genes marked in gray are swapped pairwise,
which results in new feasible generations.
Considering that crossover and mutation should not apply
into different types of chromosomes, this work selects three
compositions of reasonable crossover and mutation operators
from nine ones. By selecting CC as crossover and CM as
mutation operator, we have CC CM (called CCM), SC
SM (called SCM), and CSC CSM (called CSCM).
Figure 9. Example of CSM
E. Fitness function
A fitness function is used in a GA to judge the chance that
an individual (a route) can be selected into the next generation.
It is a limiting factor to the efficiency of evolution. For a GA,
many selection strategies based on the proportion of fitness
require a non-negative fitness and the larger fitness the better
individual. Hence, for a problem with a minimum solution as
its optimization objective, it needs to turn it to a maximum one.
MTSP* takes the minimum length of all salesmen as its
optimization objective. Hence this work takes the reciprocal of
the length as its fitness.
Taking f(x) as the length of the solution, the fitness
function is given as:
1
( )=
1+ ( )
F x
f x
IV. SIMULATION AND RESULT
This paper takes the revised eil51 as an example given in
Section 2 to verify the correctness and performance of our GA
with the three pairs of crossover and mutation operators.
A. Convergence of GA
Convergence is an important indicator to show the
performance of a GA. If a GA is convergent, it indicates its
stability and evolution towards a correct direction. The quality
of the solution is better and better as the evolution goes on. To
examine a GA’s convergence, we conduct the following
experiment, where the generation count is 2000, the crossover
probability 0.6, mutation probability 0.1, the size of population
is 50, and CCM is selected.
The result as shown in Fig. 10 indicates that the
convergence of our GA is good without considerable
fluctuation. The length of total routes is optimized from
1198.23 km of the initial population to 558.511 km of the
2000-th generation. It implies that the effect of optimization is
notable. The evolution process can be divided into three main
stages. The first one is from the initial generation to the 560-th
one, where the GA convergence is the fastest, and the total
length of routes descends from 1198.23 km to 666.21 km. The
second one from the 561-th to 1560-th generations shows a
630
630
5. slow change of the total length form 666.21 km to 558.51 km.
In the last one from the 1561-th to 2000-th generations, the
result tends to be stable. Hence, our GA has a good
convergence. For the other two pairs of crossover and
mutation operators, i.e., SCM and CSCM, we can obtain the
similar results.
Figure 10. Result of the example of MTSP*
B. Comparison
To compare the performance of our GA with different
crossover and mutation operators, three groups of experiments
are designed where three pairs of crossover and mutation
operators are adopted in turn. The other parameters are set, i.e.,
the size of population 30, the crossover probability 0.6, the
mutation probability 0.1, and the generation count 2000. Each
experiment is carried out for ten times by using a DELL
Inspiron620s computer with Windows 7 and Inter Core i3
CPU at 3.30GHZ. The data are from the revised eil51 example
in Section 2. The experimental result is shown in TABLE
and Fig. 11.
TABLE I. Result of the three group experiments Unit˖Km
Group CCM SCM CSCM
1 558.25 575.26 568.45
2 556.85 576.45 572.12
3 561.47 580.56 573.89
4 565.25 576.65 567.45
5 558.36 570.25 570.35
6 557.68 590.68 566.25
7 562.45 586.45 576.87
8 568.56 573.89 565.54
9 556.35 584.57 575.58
10 560.58 571.64 566.4
Average 560.58 578.64 570.29
Figure 11. Result of different operators
The best, the worst and the average solutions are observed
and shown in TABLE .
TABLE II. Data analysis of each operator
Crossover and
mutation
operator
best solution
(km)
worst
solution
(km)
Average
solution
(km)
CCM 556.35 568.56 560.58
SCM 570.25 590.68 578.64
CSCM 565.54 576.87 570.29
It shows that the performance of CCM is the best among
three pairs of crossover and mutation operators while that of
SCM is the worst. By observing the results we find that by
SCM, crossover and mutation merely take place in the
salesman chromosomes. It results in a small solution space and
weakens genic recombination due to large duplicate salesman
individuals. Using CCM only the city chromosomes are
crossed and mutated and there is no duplicate gene. Thus the
extent of genic recombination is stronger and the solution
space is larger than that of SCM. Namely, the population
diversity of CCM is better than that of SCM, as shown in the
experiment data. Both a city chromosome and a salesman
chromosome are crossed and mutated by CSCM. The
dynamics of genic recombination is stronger than SCM. Hence,
the performance of CSCM is better than that of SCM.
However, crossover and mutation of both city chromosomes
and salesman chromosomes may destroy the better solution
due to too strong dynamics of genic recombination. Thus,
CSCM is worse than CCM as observed. As for time
consumption, three groups have small differences from each
other. Therefore, we should select CCM in a GA for MTSP*
.
V. CONCLUSIONS
This paper presents a new multiple traveling salesman
problems with exclusive and ordinary cities. To solve it, we
design a genetic algorithm. It revises the two-chromosome
scheme and design three pairs of crossover and mutation
operators, i.e., simple city crossover and mutation, simple
salesman crossover and mutation, and mixed city-salesman
631
631
6. crossover and mutation. To show the performance of our
algorithm with different operators, we design three groups of
experiments. The results indicate that the proposed GA is
suitable to solve MTSP* and CCM deploying city crossover
and city mutation has the best performance among three
compositions of crossover and mutation operators.
VI. ACKNOWLEDGEMENT
This work was supported in part by the China National
Natural Science Foundation under Grants 61004035 and
61175113.
REFERENCES
[1] E. Lawler, J. Lenstra, A. Rinnooy, D. Shinmoys. The Traveling
Salesman Problem. John Whiley Sons, vol. 25, no. 4, pp.251-258,
2006
[2] G. Gutin, A. Punnen. The Traveling Salesman Problem and Its
Variations. Dordrecht: Kluwer, vol. 35, no. 2, pp.625-629, 2002
[3] Hou MS, Liu, DB. A novel method for solving the multiple traveling
salesmen problem with multiple depots. Chinese science bulletin,
vol.57, no.2, pp.1886-1892, 2012
[4] T. Bektas. The multiple traveling salesman problem: An overview of
formulations and solution procedures. Omega, vol. 34, no. 3, pp.209-
219, 2006
[5] Jun Li, Qirui Sun, Xianzhong Dai. A Coordination and Optimization
Method for Multi-Bridge Water jet Cutting processes. 42nd
International Conference on Computers and Industrial Engineering,
Cape Down, South Africa, 2012
[6] J. Holland. Adaptation in Natural and Artificial Systems. the University
of Michigan Press, Ann Arbour, USA, 1975
[7] J. Potvin. Genetic algorithm for the traveling salesman problem.
Annals of Operations Research, vol.63, no. 4, pp.330-370, 1999
[8] M. Sallabi, E. Haddad. An Improved Genetic Algorithm to Solve the
Traveling Salesman Problem. World Academy of Science, Engineering
and Technology, vol. 52, no.3, pp.471-474, 2009
[9] E. Carter, T. Ragsdale. A new approach to solving the multiple
traveling salesperson problem using genetic algorithms. European
Journal of Operation Research, vol. 175, no.2, pp.246-257, 2006
[10] Wei Zhou, Yuanzong Li. An Improved Genetic Algorithm for Multiple
Traveling Salesman Problem. 2010 2nd International Asia Conference
on Informatics in Control, Automation and Robotics, Wuhan Hubei,
China, pp.493-495, 2010.
[11] A. De Jong. An analysis of the behavior of a class of genetic adaptive
systems. Michigan: University of Michigan, 1975
632
632