Open access peer-reviewed chapter

Using Group Theory to Generate Initial Population for a Genetic Algorithm for Solving Traveling Salesman

Written By

Dharm Raj Singh

Reviewed: 17 November 2022 Published: 03 January 2023

DOI: 10.5772/intechopen.109049

From the Edited Volume

Genetic Algorithms - Theory, Design and Programming

Edited by Yann-Henri Chemin

Chapter metrics overview

84 Chapter Downloads

View Full Metrics

Abstract

In this chapter, we propose a novel algorithm that uses Genetic algorithm with group theory for initial population generation and also propose a novel crossover for solving Traveling Salesman Problem. In the group tour construction method, each individual/initial tour has distinct start city provided that population size is equal to total number of cities. In the initial population, each individual/tour has a distinct starting city. The distinct starting cites of each tour provide genetic material for exploration for the whole search space. Therefore, a heterogeneous starting city of a tour in initial population is generated to have rich diversity. Proposed crossover based on greedy method of sub-tour connection drives the efficient local search, followed by 2-opt mutation for improvement of tour for enhanced/optimal solution. The result of the proposed algorithm is compared with other standard algorithms followed by conclusion.

Keywords

  • genetic algorithms
  • traveling salesman problem
  • group theory for population generation
  • 2-opt mutation
  • group theory

1. Introduction

1.1 Genetic algorithm (GA)

Genetic algorithm draws the idea from natural selection and natural genetics principles for searching and optimization algorithm. In this method, we use survival of the fittest rule of natural evolution. Invention of GA was done in 1960 by John Holland [1]. It consists of population of chromosomes, with each chromosome representing a solution to the particular problem. Each chromosome is evaluated to obtain its fitness value of the chromosome against some given fitness function. A set of chromosomes are selected for genetic operation(s) (selection, crossover, and mutation) in order to get new chromosomes. Chromosomes are selected according to their fitness values to reproduce/generate the next generation by genetic operations, which generate new chromosomes. To achieve this, two transformations, namely crossover (generates new chromosomes by overlapping genes of two chromosomes) and mutation (creates a new chromosome by making changes of genes in a single chromosome), are used. After performance of crossover and mutation operation, we generate a new chromosome called child. The process continues by selecting fit chromosomes from parent and child population. Whole process of genetic algorithm is repeated until best individual is obtained or desired number of iterations completed, providing an optimal/suboptimal solution to the problem [2].

We developed a genetic algorithm for Traveling Salesman Problem (TSP) to provide balance between exploration and exploitation for the search space. For this, all the components of the genetic algorithms were carefully examined.

1.2 Literature review

Traveling Salesman Problem is a famous combinatorial optimization problem, which is still NP-complete [3, 4]. There is no clear evidence for its origin. However, credit goes to Irish mathematician Hamilton and British mathematician Thomas Krikman for its mathematical formulation, which is discussed in detail in “Graph Theory 1736-1936” book by Wilson, Biggs and Lloyd 2 [5]. The general form was firstly studied by mathematician Karl Menger [6]. Alexander Schrijver [7] pointed out the connection between the works of Whitney and Menger along with growth of TSP in his paper “On the history of combinatorial optimization (till 1960).” Merrill Flood [8] while searching for the solution of school bus routing problem used TSP mathematically for the first time. Hassler Whitney [9] of Princeton University introduced the name traveling salesman problem. The popularity of TSP increased considerably during 1950s and 1960s when prizes were offered by RAND Corporation for solving steps of the problem. As a result of it, prime contributions were made by Fulkerson, Dantzig and Johnson [10] from the RAND Corporation who used branch and bound algorithm [11] for solving integer linear program for which they developed the cutting plane method [12] for its solution. Later 532 and 2392 city TSP was solved by M. Padberg and Rinaldi [13] in 1987, and 1000 city TSP by solved M. Grotschel and O. Holland [14]. In 1991, Reinelt [15] introduced TSPLIB, which is still providing problem instances for TSP. In last few decades, many heuristic and meta-heuristic algorithms have been developed with some of the following notable algorithms: Ant colony optimization [16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Neural network [26, 27, 28, 29], Self-organizing maps [30], Particle swarm optimization techniques [31, 32], Simulated annealing [33], Weed optimization [34, 35], Genetic algorithm [36, 37, 38, 39].

The rest of chapter is divided into following sections: Details of Genetic algorithm are given in Section 1. Section 2 describes our proposed hybrid methods. In Section 3, experimental result is presented followed by conclusion in Section 4.

Advertisement

2. Proposed hybrid method

The methods used here are hybrid because we have used a proposed group theory tour construction algorithm and proposed crossover with 2-opt mutation Croes (1958) [40]. The framework of the proposed algorithm is shown in Algorithm 1.

The main idea of the first step is to generate a population of chromosomes (tours) by using proposed group theory approach. Clearly, each chromosome of the population is same but which start city unique providing rich diversity of genetic materials for exploration.

Fitness value of each chromosome in the population is calculated in the second step. In the third step, select two parent chromosomes (selected randomly) from the population and replace the first chromosome with minimum fitness value (tour cost). After that, apply proposed crossover operator on the selected two chromosomes with crossover probability rate. And finally, apply 2-opt mutation operator on selected parent chromosome or new pair of chromosomes generated after crossover, with mutation probability rate. Mutation operator helps in generate new population, which is then replacing new population with the previous population by the new population. Whole process is repeated until termination condition is satisfied.

Algorithm 1: Proposed Algorithm

1: Generate initial population of the tour with population size P using Group theory.

2: Gen = 1;

3: while (Gen ≤ NGen) do.

4: Calculate the fitness of each tour in P.

5: Bs = Best tour in P;

6: Randomly select two parents S1 and S2 tour in P;

7: S1new = Bs;

8: S2new = S2;

9: rnd1 = rand (0,1];

10: if (rnd1 < crossover probability rate (pc)) then.

11: Perform proposed crossover on selected two parents Bs and S2 to generate two new children C1 and C2;

12: end if.

13: S1new = C1;

14: S2new = C2;

15: rnd2 = rand (0,1];

16: if (rnd2 < mutation probability rate (pm)) then.

17: Perform 2-opt optimal mutation operator on S1new and S2new

18: update new population P′;

19: P ← P′;

20: end if.

21: Gen = Gen + 1;

22: end while

2.1 Proposed group theory for population generation

There are various possible methods for generating the initial population [41, 42, 43]. One of the simplest ways is generating the initial population randomly using random number generator. Zhang [42, 43] proposed greedy tour construction heuristic with Karp-patching for feasible tour construction and used for solving Assignment problem [44]. We proposed the group tour construction heuristic for initial population generation. In this method, nodes of graph are label using group of integers, Zn with integer modulo n operation

a+nb=a+bmodnE1

where “+n” is operator that represents addition modulo of n, and (a + b) represents the normal addition of integers. This helped in generating the group table shown in Figure 1. In group table, no two row or column elements in the same position are identical. The function used for generating initial population of chromosomes (P) is as follows:

Figure 1.

Population generated using Group Modulo.

Pa=moda+bn+1.E2

where a represents population size whose value is from a = 1 to population size, and b = 1 to n (As mentioned in earlier, we are taking population size equal to number of cities, therefore population size = n). For n = 10, the initial population generated using Group theory is as follows: Each chromosome in the initial population being unique (group theory technique) provides a wide diversity of genetic materials for exploring of search space.

2.2 Proposed crossover operator for GA

Sharing information between a pair of chromosomes is called crossover [2]. In this process genes of parent’s chromosomes are swapped to generate offspring. The selection of the parent chromosomes is with the possibility that good chromosomes may generate better offspring. Goldberg described several order-based operators, such as the Partially Matched Crossover (PMX) [45]. The order crossover (OX) was suggested by Syswerda [46]. The position-based crossover (PBX) was introduced by [39]. The cycle crossover (CX) was suggested by Oliver, Smith & Holland [47]. Freisleben & Merz introduced a distance preserving crossover (DPX) [37]. Inspired by DPX crossover, we propose a new crossover in this chapter. In the proposed crossover the cities that are identical for the same position in both parents (s1 and s2) will not change in child c1 and c2 as shown in Figure 2. The remaining cities will change accordingly Algorithm 2.

Figure 2.

Example of Proposed crossover.

Algorithm 2: Algorithm for Proposed Crossover

1: c1 = zeros (1, n);

2: c2 = zeros (1, n);

3: for i = 1: n do

4:   for j = 1: n do

5:     if (s2(i)==s1(j)) then;

6:      c1(i) = s2(j);

7:     end if

8:   if (s1(i) == s2(j)) then

9:     c2(i) = s1(j);

10:   end if

11:  end for

12: end for

2.3 Example

Given a complete weighted graph with 5 nodes obtain weighted (cost) matrix of graph is in Figure 3.

Figure 3.

Example of a complete weighted graph with 5 nodes.

Initial set Population size = 5, Crossover probability rate (pc) = 0.8 and Mutation probability rate (pm) = 0.2. Generate initial population with Population size = 5 using Proposed Group Theory method as shown in Figure 4.

Figure 4.

Generate initial population with Population size =5 using Group Theory method.

Generate two random number between (1-Population size) is 4 and 2, then select two chromosome 4 and 2 from population after then replace first chromosome with minimum cost therefore selected chromosome with cost is

populationcost23451345123232

Generate a random number rnd1 = 0.3243. if (rnd1 < = pc), then apply proposed crossover, after crossover generate two new chromosomes is

4512312345

again, generate a random number rnd2 = 0.0161. if (rnd2 < = pm), then apply 2-opt mutation, the operation 2-opt mutation on both chromosome one by one given as Apply 2-opt mutation on first chromosome = 4 5 1 2 3

a=3,b=4,c=5,d=1,and set zmin=0,i=1,j=1
z=dmatac+dmatbddmatcddmatab;

Where dmat(a, c) represent cost from node a to c.

z=6+995=1

if z < zmin false, then a = 3, b = 4, c = 1, d = 2, and i = 1, j = 4.

z=4+785=2

if z < zmin true, then set zmin = −2, imin = 1, jmin = 4, and a = 3, b = 4, c = 2, d = 3, and i = 1, j = 5.

z=6+565=0

if z < zmin false, then a = 4, b = 5, c = 1, d = 2, and i = 2, j = 4.

z=9+1084=7

if z < zmin false, then a = 4, b = 5, c = 2, d = 3, and i = 2, j = 5.

z=7+664=3

if z < zmin false, then a = 5, b = 1, c = 2, d = 3, and i = 3, j = 5.

z=10+469=1

if z < zmin false.

if zmin <0 Then apply 2-opt mutation between imin to jmin −1 on first selected chromosome = 4 5 1 2 3, after then we get a new chromosome is 1 5 4 2 3.

Again apply 2-opt mutation on new chromosome 1 5 4 2 3.

a = 3, b = 1, c = 5, d = 4, and set zmin = 0, i = 1, j = 3.

z=6+944=7
z=dmatac+dmatbddmatcddmatab;

if z < zmin false, then a = 3, b = 1, c = 4, d = 2, and i = 1, j = 4.

z=5+874=2

if z < zmin false, then a = 3, b = 1, c = 2, d = 3, and i = 1, j = 5.

z=6+464=0

if z < zmin false, then a = 1, b = 5, c = 4, d = 2, and i = 2, j = 4.

z=9+1079=3

if z < zmin false, then a = 1, b = 5, c = 2, d = 3and i = 2, j = 5.

z=8+669=1

if z < zmin true, then set zmin = −1, imin = 2, jmin = 5, and a = 5, b = 4, c = 2, d = 3, and i = 3, j = 5.

z=10+564=5

if z < zmin false.

if zmin <0, then apply 2-opt mutation between imin to jmin −1 on first selected chromosome = 1 5 4 2 3, after then we get a new chromosome is 1 2 4 5 3.

Again apply 2-opt mutation 1 2 4 5 3 and a = 3, b = 1, c = 2, d = 4, and set zmin = 0, i = 1, j = 3.

z=6+974=4

if z < zmin false, then a = 3, b = 1, c = 4, d = 5, and i = 1, j = 4.

z=5+944=6

if z < zmin false, then a = 3, b = 1, c = 5, d = 3, and i = 1, j = 5.

z=6+464=0

if z < zmin false, then a = 1, b = 2, c = 4, d = 5, and i = 2, j = 4.

z=9+1048=8

if z < zmin false, then a = 1, b = 2, c = 5, d = 3 and i = 2, j = 5.

z=9+668=1

if z < zmin false, then a = 2, b = 4, c = 5, d = 3, and i = 3, j = 5.

z=10+567=2

if z < zmin false and completed loop, then we get new first child chromosome is 1 2 4 5 3.

Similarly Apply 2-opt mutation on second chromosome = 1 2 3 4 5 and completed loop, then we get new second child chromosome is 3 1 2 4 5.

After one iteration is completed, the new population is updated as

populationcost12453312455123412345234512929323232
Advertisement

3. Experimental results

3.1 Experimental setup

For evaluation purpose, results were generated on 2.20 GHz Intel Core i5 machine with 4 GB RAM.

3.2 Experimental design

The following standard benchmark data set was taken from TSPLIB: Eil51, berlin52, St70, Eil76, Pr76, Kroa100, Eil101, ch150, and ts225, were taken for performance comparison.

For the experiment, the experimental parameters crossover probability rate (pc = 0.8) and mutation probability rate (pm = 0.2) values were set to and respectively with number of iterations = 500. Population size of each instance equal to number of cities was generated by group tour construction method. For result comparison, Percentage Best Error (% Best Err.) is used. The Percentage Best Error is calculated as follows:

PDbest=Best path cost fromntrailBest Known SolutionBKSBest Known SolutionBKS×100

3.3 Experimental result

For each standard TSP data taken, we performed n = 20 trails for first set of comparison shown in Table 1 and Figure 5. Best results are shown in bold. Results are taken from [48]. It can be clearly seen that proposed method is better than Hierarchic method used for comparison for every dataset taken in to consideration. Proposed method although not exact but do provide good heuristic solution.

Proposed methodHierarchic approachBKS
ProblemBestMean% best errorBestMean% best error
Eil51428.87431.280.561431.74443.393.39428.87
Berlin527544.377544.370.0007544.377544.370.0007544.37
St70677.12679.300.324687.24700.583.47677.11
Eil76544.37553.051.184551.07557.982.31545.39
Pr76108160.00108232.000.067113,798.56115,072.296.39108,159.44
Kroa10021285.0021359.050.34622,122.7522,435.315.4021,285.44
Eil101645.25656.624.391672.71683.396.39642.31
Ch1506588.606665.292.1036641.696677.122.216532.28
Tsp2253878.803909.041.2974090.544157.857.743859.00

Table 1.

Performance comparison of proposed algorithm and hierarchic algorithm.

Figure 5.

Performance comparison of Average distance (Mean) (over 20 trails) between Proposed algorithm and Hierarchic algorithm for the 9 TSPLIB instances.

The pictorial presentation for performance comparison in terms of Mean (average) solution for different methods is shown in Figure 5. Table 2 reports the outcome of some large size of instances. If size of instances is increases then increases the population size because population size of each instances is equal to number of cities in instances therefore increases the time complexity and space complexity due to increases population size.

Proposed methodBKS
ProblemBestMean% best errortime
Pr26449,13549388.900.0037.9849,135
a28025942616.400.5821.862579
Pr29948,41448732.050.4670.5948,191
lin31842,44642697.200.9978.4142,029
Pr439108,767109284.051.45173.98107,217
rat57571287245.105.24432.336773
Rat78393029396.705.632934.038806
pr1002267,663270128.343.331698.14259,047

Table 2.

Performance of proposed algorithm for large instances size.

Advertisement

4. Conclusion

This chapter proposed a Genetic algorithm, which works by taking features of Group theory for tour construction, proposed crossover, and 2-opt mutation. Although the other reported methods can usually find a better solution for the TSP, their solution is dependent on the quality of the random initialization of the population and parameters. In order to have our proposed method uses heterogeneous population for process initialization with population size equal to number of cities, we applied group tour construction method. In group tour construction method generates all solution(tour) in the initial population has a distinct starting node that provides the initial exploration of the search space. After this, the proposed crossover and 2-opt mutation are applied. In order to maintain local optimality, crossover and mutation operators are used. By using crossover operator, new starting points were defined for a local search using information of the current population. The proposed crossover utilizes a greedy method for the duplicated paths in the parents for connecting sub-tours into the solution. However, 2-opt mutation can easily get stuck in a local optimum to improve the tour quality. The combination of the proposed method is required as 2-opt mutation easily gets stuck in local optimum. From the experimental results, one can easily find that our proposed algorithm gives better performance in comparison of [48].

As future work, we would like to extend the group theory for population initialization in other heuristics such as scheduling algorithm, network problems, estimation of distribution algorithm, etc.

Advertisement

Conflict of interest

The authors declare that they have no conflict of interest.

References

  1. 1. Holland JH. Adaptation in Natural and Artificial Systems. Ann Arbor: University of Michigan Press; 1975
  2. 2. Sivanandam SN, Deepa SN. Genetic algorithms. In: Introduction to Genetic Algorithms. Berlin, Heidelberg: Springer; 2008. pp. 15-37
  3. 3. Nemhauser GL, Savelsbergh MWP, Sigismondi GC. Constraint Classification for Mixed Integer Programming Formulations. Department of Mathematics and Computing Science, University of Technology; 1991
  4. 4. Christos H. Papadimitriou and Kenneth Steiglitz, Combinatorial Optimization: Algorithms and Complexity. 1982
  5. 5. Biggs NL, Lloyd EK, Wilson RJ. Graph Theory. Oxford University Press; 1986:1736–1936
  6. 6. Menger K. Eine neue definition der bogenlange. Ergebnisse eines Mathematischen Kolloquiums. 1932;2:11-12
  7. 7. Schrijver A. On the history of combinatorial optimization (till 1960). Handbooks in Operations Research and Management Science. 2005;12:1-68
  8. 8. Flood MM. The traveling-salesman problem. Operations Research. 1956;4(1):61-75
  9. 9. Whitney H. The mathematics of physical quantities: Part i: Mathematical models for measurement. The American Mathematical Monthly. 1968;75(2):115-138
  10. 10. Dantzig G, Fulkerson R, Johnson S. Solution of a large-scale traveling-salesman problem. Journal of the Operations Research Society of America. 1954;2(4):393-410
  11. 11. Laporte G. The traveling salesman problem: An overview of exact and approximate algorithms. European Journal of Operational Research. 1992;59(2):231-247
  12. 12. Reinelt G. The Traveling Salesman: Computational Solutions for TSP Applications. Springer-Verlag; 1994
  13. 13. Padberg M, Rinaldi G. Optimization of a 532-city symmetric traveling salesman problem by branch and cut. Operations Research Letters. 1987;6(1):1-7
  14. 14. Grotschel M, Holland O. Solution of large-scale symmetric travelling salesman problems. Mathematical Programming. 1991;51(1–3):141-202
  15. 15. Reinelt G. TSPLIB—A traveling salesman problem library. ORSA Journal on Computing. 1991;3(4):376-384
  16. 16. Chen S-M, Chien C-Y. Solving the traveling salesman problem based on the genetic simulated annealing ant colony system with particle swarm optimization techniques. Expert Systems with Applications. 2011;38(12):14439-14450
  17. 17. Cecilia JM, et al. Enhancing data parallelism for ant colony optimization on GPUs. Journal of Parallel and Distributed Computing. 2013;73(1):42-51
  18. 18. Deng W, Chen R, He B, Liu Y, Yin L, Guo J. A novel two-stage hybrid swarm intelligence optimization algorithm and application. Soft Computing. 2012;16(10):1707-1722
  19. 19. Jun-man K, Yi Z. Application of an improved ant colony optimization on generalized traveling salesman problem. Energy Procedia. 2012;17:319-325
  20. 20. Mahi M, Baykan OK, Kodaz H. A new hybrid method based on particle swarm optimization, ant colony optimization and 3-opt algorithms for traveling salesman problem. Applied Soft Computing. 2015;30:484-490
  21. 21. Mavrovouniotis M, Yang S. Ant colony optimization with immigrants’ schemes for the dynamic travelling salesman problem with traffic factors. Applied Soft Computing. 2013;13(10):4023-4037
  22. 22. Rodrigo Pasti, Nunes de Castro L. A neuro-immune network for solving the traveling salesman problem. In: The 2006 IEEE International Joint Conference on Neural Network Proceedings. IEEE; 2006. pp. 3760–3766
  23. 23. Saenphon T, Phimoltares S, Lursinsap C. Combining new fast opposite gradient search with ant colony optimization for solving travelling salesman problem. Engineering Applications of Artificial Intelligence. 2014;35:324-334
  24. 24. Tuba M, Jovanovic R. Improved ACO algorithm with pheromone correction strategy for the traveling salesman problem. International Journal of Computers Communications & Control. 2013;8(3):477-485
  25. 25. Yun H-Y, Jeong S-J, Kim K-S. Advanced harmony search with ant colony optimization for solving the traveling salesman problem. Journal of Applied Mathematics. 2013;2013
  26. 26. Mehmet Ali Mustafa K, Faouzi Kamoun. Neural networks for shortest path computation and routing in computer networks. IEEE Transactions on Neural Networks. 1993;4(6):941–954
  27. 27. Creput J-C, Koukam A. A memetic neural network for the euclidean traveling salesman problem. Neurocomputing. 2009;72(4–6):1250-1264
  28. 28. Masutti TAS, de Castro LN. A self-organizing neural network using ideas from the immune system to solve the traveling salesman problem. Information Sciences. 2009;179(10):1454-1468
  29. 29. Papadimitriou CH. The adjacency relation on the traveling salesman polytope is np-complete. Mathematical Programming. 1978;14(1):312-324
  30. 30. Somhom S, Modares A, Enkawa T. A self-organising model for the travelling salesman problem. Journal of the Operational Research Society. 1997;48(9):919-928
  31. 31. Marinakis Y, Marinaki M. A hybrid multi-swarm particle swarm optimization algorithm for the probabilistic traveling salesman problem. Computers & Operations Research. 2010;37(3):432-442
  32. 32. Shi XH, et al. Particle swarm optimization-based algorithms for TSP and generalized TSP. Information Processing Letters. 2007;103(5):169-176
  33. 33. Chen Y, Zhang P. Optimized annealing of traveling salesman problem from the nth-nearest-neighbor distribution. Physica A: Statistical Mechanics and Its Applications. 2006;371(2):627-632
  34. 34. Roy GG et al. Design of non-uniform circular antenna arrays using a modified invasive weed optimization algorithm. IEEE Transactions on Antennas and Propagation. 2010;59(1):110-118
  35. 35. Sengupta A, et al. Energy efficient trajectory planning by a robot arm using invasive weed optimization technique. In: 2011 Third World Congress on Nature and Biologically Inspired Computing. IEEE; 2011. pp. 311-316
  36. 36. Albayrak M, Allahverdi N. Development a new mutation operator to solve the traveling salesman problem by aid of genetic algorithms. Expert Systems with Applications. 2011;38(3):1313-1320
  37. 37. Freisleben B, Merz P. A genetic local search algorithm for solving symmetric and asymmetric traveling salesman problems. In: Proceedings of IEEE International Conference on Evolutionary Computation. IEEE; 1996. pp. 616-621
  38. 38. Freisleben B, Merz P. New genetic local search operators for the traveling salesman problem. In: International Conference on Parallel Problem Solving from Nature. Springer; 1996. pp. 890-899
  39. 39. Syswerda Gilbert. Scheduling Optimization Using Genetic Algorithms: Handbook of Genetic Algorithms. 1991
  40. 40. Croes GA. A method for solving traveling-salesman problems. Operations Research. 1958;6(6):791-812
  41. 41. Gutin G, Punnen AP. The Traveling Salesman Problem and its Variations. Springer Science & Business Media; 2002
  42. 42. Zhang W. Truncated branch-and-bound: A case study on the asymmetric TSP. In: Proc. Of AAAI 1993 Spring Symposium on AI and NP-hard problems. Vol. 160166. 1993
  43. 43. Zhang W. Depth-first branch-and-bound versus local search: A case study. In: AAAI/IAAI. 2000. pp. 930-935
  44. 44. Karp RM. A patching algorithm for the nonsymmetric traveling-salesman problem. SIAM Journal on Computing. 1979;8(4):561-573
  45. 45. Goldberg DE. Genetic algorithms in search. Optimization, and Machine Learning. 1989
  46. 46. Davis L. Hybridization and numerical representation. In: The Handbook of Genetic Algorithms. 1991. pp. 61-71
  47. 47. Oliver IM, Smith D, Holland JRC. Study of permutation crossover operators on the traveling salesman problem. In: Genetic Algorithms and Their Applications: Proceedings of the Second International Conference on Genetic Algorithms. Hillsdale, NJ: L. Erlhaum Associates; 1987
  48. 48. Gunduz M, Kiran MS, Ozceylan E. A hierarchic approach based on swarm intelligence to solve the traveling salesman problem. Turkish Journal of Electrical Engineering & Computer Sciences. 2015;23(1):103-117

Written By

Dharm Raj Singh

Reviewed: 17 November 2022 Published: 03 January 2023