| Literature DB >> 29209364 |
Abid Hussain1, Yousaf Shad Muhammad1, M Nauman Sajid2, Ijaz Hussain1, Alaa Mohamd Shoukry3,4, Showkat Gani5.
Abstract
Genetic algorithms are evolutionary techniques used for optimization purposes according to survival of the fittest idea. These methods do not ensure optimal solutions; however, they give good approximation usually in time. The genetic algorithms are useful for NP-hard problems, especially the traveling salesman problem. The genetic algorithm depends on selection criteria, crossover, and mutation operators. To tackle the traveling salesman problem using genetic algorithms, there are various representations such as binary, path, adjacency, ordinal, and matrix representations. In this article, we propose a new crossover operator for traveling salesman problem to minimize the total distance. This approach has been linked with path representation, which is the most natural way to represent a legal tour. Computational results are also reported with some traditional path representation methods like partially mapped and order crossovers along with new cycle crossover operator for some benchmark TSPLIB instances and found improvements.Entities:
Mesh:
Year: 2017 PMID: 29209364 PMCID: PMC5676484 DOI: 10.1155/2017/7430125
Source DB: PubMed Journal: Comput Intell Neurosci
Summary of crossover operators for TSP.
| Representation | Crossover operators | Proposed year |
|---|---|---|
| Binary | Classical + repair operator | 1991 |
|
| ||
| Path | Partially mapped crossover | 1985 |
| Order crossover | 1985 | |
| Cycle crossover | 1987 | |
| Heuristic crossover | 1987 | |
| Order based crossover | 1991 | |
| Position based crossover | 1991 | |
|
| ||
| Adjacency | Alternative edge crossover | 1985 |
| Heuristic crossover 1 | 1985 | |
| Heuristic crossover 2 | 1989 | |
| Heuristic crossover 3 | 1987 | |
|
| ||
| Ordinal | Classical operators | 1985 |
|
| ||
| Matrix | Intersection crossover | 1987 |
| Union crossover | 1987 | |
Algorithm 1Pseudo-code of proposed algorithm CX2.
Transition distance between cities.
| City | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 34 | 36 | 37 | 31 | 33 | 35 |
| 2 | — | 0 | 29 | 23 | 22 | 25 | 24 |
| 3 | — | — | 0 | 17 | 12 | 18 | 17 |
| 4 | — | — | — | 0 | 32 | 30 | 29 |
| 5 | — | — | — | — | 0 | 26 | 24 |
| 6 | — | — | — | — | — | 0 | 19 |
| 7 | — | — | — | — | — | — | 0 |
Comparison of three crossover operators (30 runs).
| Crossover | Optimum | Average value | Best value | Worst value |
|---|---|---|---|---|
| PMX | 17/30 | 159.7 | 159 | 165 |
| OX | 14/30 | 160.3 | 159 | 163 |
| CX2 | 24/30 | 159.2 | 159 | 162 |
Comparison results among three crossover operators.
| Instance |
| Optimum value | Results | PMX | OX | CX2 |
|---|---|---|---|---|---|---|
| Best | 2962 | 3005 | 2995 | |||
| gr21 | 21 | 2707 | Worst | 3322 | 3693 | 3576 |
| Average | 3127 | 3208 | 3145 | |||
|
| ||||||
| Best | 1056 | 1051 | 1099 | |||
| fri26 | 26 | 937 | Worst | 1294 | 1323 | 1278 |
| Average | 1133 | 1158 | 1128 | |||
|
| ||||||
| Best | 1708 | 1804 | 1811 | |||
| ftv33 | 34 | 1286 | Worst | 2399 | 2366 | 2322 |
| Average | 2012 | 2098 | 2083 | |||
|
| ||||||
| Best | 2345 | 2371 | 2252 | |||
| ftv38 | 39 | 1530 | Worst | 2726 | 2913 | 2718 |
| Average | 2578 | 2617 | 2560 | |||
|
| ||||||
| Best | 1298 | 1222 | 0699 | |||
| dantzig42 | 42 | 699 | Worst | 1606 | 1562 | 0920 |
| Average | 1425 | 1301 | 0802 | |||
|
| ||||||
| Best | 13445 | 13826 | 10987 | |||
| ft53 | 53 | 6905 | Worst | 16947 | 16279 | 13055 |
| Average | 14949 | 14724 | 12243 | |||
Generation = 500.
Comparison results among three crossover operators.
| Instance |
| Optimum value | Results | PMX | OX | CX2 |
|---|---|---|---|---|---|---|
| Best | 090231 | 097122 | 092450 | |||
| kro124p | 100 | 36230 | Worst | 118386 | 122497 | 121513 |
| Average | 100335 | 103457 | 101229 | |||
|
| ||||||
| Best | 13346 | 15202 | 6421 | |||
| ftv170 | 171 | 2755 | Worst | 19314 | 19708 | 8416 |
| Average | 16775 | 17569 | 7019 | |||
|
| ||||||
| Best | 4123 | 3998 | 4212 | |||
| rbg323 | 323 | 1326 | Worst | 5147 | 5385 | 5342 |
| Average | 4434 | 4602 | 4654 | |||
|
| ||||||
| Best | 5380 | 5630 | 5404 | |||
| rbg358 | 358 | 1163 | Worst | 5915 | 5948 | 6004 |
| Average | 5532 | 5830 | 5622 | |||
|
| ||||||
| Best | 6231 | 6196 | 6257 | |||
| rbg403 | 403 | 2465 | Worst | 6653 | 6629 | 6671 |
| Average | 6536 | 6386 | 6455 | |||
|
| ||||||
| Best | 6754 | 6932 | 6854 | |||
| rbg443 | 443 | 2720 | Worst | 7209 | 7351 | 7388 |
| Average | 6905 | 7121 | 6981 | |||
Generation = 1000.