An Agglomerative Greedy Brain Storm Optimization Algorithm for Solving the TSP

The brain storm optimization algorithm(BSO) is a population based metaheuristic algorithm inspried by the human conferring process that was proposed in 2010. Since its first implementation, BSO has been widely used in various fields. In this article, we propose an agglomerative greedy brain storm optimization algorithm (AG-BSO) to solve classical traveling salesman problem(TSP). Due to the low accuracy and slow convergence speed of current heuristic algorithms when solving TSP, this article consider four improvement strategies for basic BSO. First, a greedy algorithm is introduced to ensure the diversity of the population. Second, hierarchical clustering is used in place of the k-means clustering algorithm in standard BSO to eliminate the noise sensitivity of the original BSO algorithm when solving TSP. Exchange rules for the individuals in the population individuals were introduced to improve the efficiency of the algorithm. Finally, a heuristic crossover operator is used to update the individuals. In addition, the AG-BSO algorithm is compared with the genetic algorithm (GA), particle swarm optimization (PSO), the simulated annealing(SA) and the ant colony optimization (ACO) on standard TSP data sets for performance testing. We also compare it with a recently improved version of the BSO algorithm. The simulations show the encouraging results that AG-BSO greatly improved the solution accuracy, optimization speed and robustness.


I. INTRODUCTION
In the past two decades, swarm intelligence(SI) algorithms have become highly influential. They mainly simulate the group behavior of insects, birds, fish and other populations. The main properties of an SI optimization algorithm are inspired by the social behaviors of a natural population. In an SI algorithm, each individual in the population represents a solution in the search space. SI algorithms have been extensively and effectively used to solve realistic problems, but the generalization ability for specific scenarios is poor. Therefore, more effective algorithms and search strategies have been studied. Scholars have developed many novel SI algorithms, such as particle swarm optimization(PSO) [1], ant colony optimization(ACO) [2], gray wolf optimization algorithm(GWO) [3], firefly algorithm(FA) [4], whale optimization algorithm(WOA) [5] and so on [6], [7].
In 2011, Shi [8] proposed a new swarm intelligent optimization algorithm at the second international conference on The associate editor coordinating the review of this manuscript and approving it for publication was Norbert Herencsar . SI, named brain storm optimization(BSO), which simulated the thought process of human creative problem solving. This algorithm is also known as the intellectual incentive method. Compared with other intelligent optimization algorithms, BSO has the advantages of a compact mathematical model, simple operation, clear process, fast convergence speed and high optimization efficiency. Therefore, it is considered to be a very promising method, and it has been favored by many researchers and widely applied in practical optimization problems in different fields such as power systems [9]- [13], machine learning [14]- [19], combinatorial optimization problems [20]- [22] and image processing [23]- [25] and prediction [15], [26], [27].
In recent years, BSO has attracted attention due to its unique and excellent performance for solving complex and high-dimensional large-scale optimization problems. A large number of scholars have paid increasing attention to BSO and have conducted in-depth research on it. According to the algorithm mechanism and application background, the research on the BSO algorithm can be divided into the following categories: (1) improving the clustering method of BSO [28]- [36]; (2) improving the new individual generation strategy [34], [37]- [44]; (3) applying the research on BSO [9], [12], [15], [18], [38], [45]- [47]. The improvement and research of these algorithms from different directions not only improve the optimization performance of BSO but also promote the healthy development of BSO theory and applications.
The clustering method of the BSO algorithm directly affects the convergence speed of the algorithm and is a major factor affecting the performance of BSO. Therefore, many scholars have focused their research on the choice of the clustering methods of BSO. The purpose of the clustering method in the BSO algorithm is to converge the solution to a certain area. Different clustering algorithms can be used in BSO. In the basic BSO algorithm. The k-means clustering algorithm is used. However, this original clustering strategy has been replaced by increasing number of convergence methods. In 2015, Shi [30] introduced a new convergence operation that replaced the k-means clustering method in the basic BSO algorithm; therefore, a large reduction in the computation time can be obtained. In 2016, Chen et al. [29] proposed an improved affinity propagation (AP) clustering method and an enhanced creation strategy for the structural information of single or multiple clusters to adaptively change the number of clusters during the search process. In 2018, Dash et al. [31] introduced k-means++ technology to improve the BSO algorithm, which solves the problem of the slow convergence of the algorithm by using a random probability decision in the river formation dynamics scheme to select the best clustering centroid for population generation. In 2018, Duan et al. [32] introduced a new clustering method based on metric distance into the basic BSO, proposed metric distance brainstorm optimization (MDBSO), and applied the improved algorithm. In 2018, Li et al. [33] proposed an improved BSO. In the improved algorithm, the original clustering strategy is modified, and a random grouping scheme is introduced to shrink the computational cost and maintain the diversity of the population. In 2019, Cao and Wang [35] proposed active learning brain storm optimization(ALBSO) to enhance the performance of the original BSO. The simulation results show that the performance of ALBSO has been significantly improved.
In the research on the individual generation strategy of BSO, in 2017, El-Abd [40] described a global-best version combined with per-variable updates to improve the performance of BSO. At the same time, the proposed algorithm incorporated a reinitialization scheme that was triggered by the current state of the population. In 2018, Li et al. [41] proposed a BSO algorithm with multi-information interactions (MIIBSO) that addresses the issue of untimely convergence for complex problems and balances exploration and exploitation. In 2018, Papa et al. [42] introduced a variant of the basic BSO. To increase the diversity of the population, this method uses different transfer functions to map real-valued solutions to Boolean hypercubes. In 2018, Song et al. [34] proposed a BSO that used simplified individual combinations and improved step functions to update the individuals. In addition, a quantum behavior mechanism was introduced into the improved BSO, and a quantum-behaved individual strategy with periodic learning behavior was developed. In 2019, Yu et al. [44] proposed distance-based diversity and fitness-based diversity to improve the diversity of the BSO population and to adapt the algorithm parameters. In 2020, Guo et al. [43] proposed a grid-based multiple objective BSO with a hybrid mutation operation, which drew on the idea of Cauchy and chaotic mutation operators and generated new individuals with wide diversity. In 2020, Sun et al. [37] proposed a novel BSO (RMBSO) in view of the fact that the original BSO tends to stagnate in the exploitation phase. The algorithm used a slight relaxation selection and the creation of thought sets based on multiple populations to improve the performance of BSO for global optimization problems with multiple landscapes.
In the application research on BSO, in 2016, Wang et al. [15] combined principal component analysis (PCA) and BSO for stock price prediction. In addition, the improved BSO algorithm was used to search for the best parameters for v-support vector regression(v-SVR). In 2018, Xu et al. [48] proposed an improved BSO based on prior knowledge(DBSO), and applied it to solve traveling salesman problems(TSPs). In 2018, Ke [45] used BSO to solve the cumulative capacitated vehicle routing problem which aims to minimize the sum of arrival times for customers. In 2018, Xiong et al. [12] proposed an improved BSO and applied it to solve fault section diagnosis (FSD) problems in power systems. In 2019, Palanikkumar and Priya [18] proposed an improved BSO and applied it to reliably manage medical information. In 2019, Hao et al. [47] proposed a hybrid BSO and applied it to solve distributed hybrid flowshop scheduling problems. In 2019, Chen et al. [46] introduced an improved BSO with a composite index, and applied the algorithm to solve the optimization problem in a hybrid renewable energy system. In 2019, Revathi et al. [49] proposed a hybrid BSO based whale optimization algorithm(BSO-WOA) for user privacy data protection. In 2020, Peng et al. [38] proposed a novel BSO, namely, the multicluster adaptive brain storm optimization (MCaBSO) algorithm, and applied the novel BSO to obtain the optimal combination of services based on the quality of service (QoS).In 2020, Narmatha et al. [25] proposed the fuzzy brain-storm optimization algorithm(FBSO) for medical image segmentation and classification. Experimental results showed that the proposed FBSO was efficient and robust, and significantly reduced the segmentation time. In 2020, Cervantes-Castillo and Mezura-Montes [21] described the enhancement of the BSO algorithm with a special operator and applied it to solve constrained numerical optimization problems.
In summary, a large number of scholars have contributed to the improvement of BSO which has proven to have value in realistic applications in various fields. Although scholars have made some progress in the theory and application of BSO, there are still some key issues. The enhancement of the BSO algorithm proposed in [29], [30], [34], and [43] involve modifying only the clustering method and the strategy for generating the population. However, most BSO algorithms still tend to fall into local optima when solving complex optimization problems. As mentioned above, BSO is rarely applied to combinatorial optimization problems such as the TSP. To address this gap in current research, this article applies the improved BSO algorithm to the solution of the TSP. The TSP is proven to have NP-hard characteristics. The wide range ofvariants of the TSP encountered in the real life has made this problem a popular focus for researchers; however, solving the TSP quickly and effectively remains a considerable challenge. In recent years, an increasing number of algorithms have been used to solve the TSP [48], [50]- [52], and this type of problem has also been used to test the performance of algorithms. It should be noted that the literature listed in this section represents only a small part of the related work. Due to the large and growing number of relevant studies, summarizing all related work would be a difficult task. Therefore, readers who wish to learn more about the possible applications of BSO are referred to the article published by Cheng et al. [53]. On the other hand, for a further understanding of the TSP and related solution techniques, interested readers are recommended to consult the work introduced in [54] and [55]. A good BSO algorithm for soling TSP should have the following characteristics: (1) The individual update strategies should make full use of information on the fitness of the current population and the number of algorithm iterations. (2) When the algorithm is running, the loop statement should be reduced to increase the solution speed of the algorithm. (3) A balance between exploration and development should be achieved throughout the iterative search process. (4) For either a small-scale or large-scale TSP instances, the algorithm should be able to converge to the global optimal solution with high accuracy. Based on the above considerations, this article proposes an agglomerative greedy BSO algorithm (AG-BSO).
The main contributions of this work to research on the TSP are as follows: • We propose a greedy BSO algorithm based on agglomerative hierarchical clustering. AG-BSO offers three main improvements over the basic BSO algorithm: 1) We replace the original k-means clustering algorithm with an agglomerative clustering algorithm, thereby eliminating the influence of 'noise' and the sensitivity of boundary data. 2) A greedy algorithm is introduced for population initialization. 3) Exchange rules and a heuristic crossover operator are adopted for updating the individuals in the population.
• The AG-BSO algorithm and other classic algorithms proposed in the literature have been used to calculate results for the TSPLIB test set. The AG-BSO algorithm is found to be superior to the other algorithms in terms of solution time and solution accuracy.
• We compare the proposed AG-BSO algorithm with other improved BSO algorithms that have recently been presented and show that the proposed AG-BSO algorithm has great advantages in terms of solution quality. The rest of this article is structured as follows: a description of the TSP and an introduction to the BSO algorithm introduction are given in Section II. In section III, the proposed improved BSO for solving the TSP is introduced in detail. The experiments performed are described in Section IV. Finally, a summary of the paper with conclusions and directions for future improvement, is presented in Section V.

II. THE BASIC PROBLEM DESCRIPTION A. TRAVELING SALESMAN PROBLEM
The TSP is the most famous and widely studied problem in the history of computer science and operations research. Like a great deal of other combinatorial optimization and routing problems, the TSP is considered NP-hard. It is also a tool for testing algorithm performance. The TSP can be simply described as follows: a salesperson needs to visit n cities to sell products, and the salesperson can visit each city only once, randomly starting from one city and finally returning to the same city, such that the total distance of the selected route is the shortest pobsible. The mathematical model of the TSP is formulated as follows: where i is the number of the i-th city, with C represents the set of all city numbers; D (c i , c i+1 ) represents the distance between two cities and D (c i , c i+1 ) = D (c i+1 , c i ). The goal of the problem is to find a Hamiltonian ring subject to the given constraints such that the value of Eq.(2) is minimized.
In this article, we use the well-known path representation to encode the TSP solution. Accordingly, each solution is coded as an arrangement of numbers [56]. The order in which the numbers are arranged indicates the order in which the salesman visits each city, and the Euclidean distance is used to calculate the distance between each pair of nodes.

B. THE PRINCIPLE OF BRAIN STORM OPTIMIZATION
BSO as an algorithm that gradually reduces the search space, has attracted the attention of researchers around the world because of its high convergence speed and solution accuracy. BSO is usually combined with individual clustering and mutation mechanisms, and the algorithm relies on two main operators: convergence operator and divergence operator. The core of the algorithm when solving a problem consists of the classification, selection and individual updating(mutation) of the solution scheme. The details are as follows: • Clustering strategy: The original BSO algorithm uses the k-means clustering to cluster similar individuals into k clusters and then uses an artificially specified individual with the optimal fitness function value as the center of each cluster. To avoid falling into a local optimum, a new individual will also be randomly generated to replace one of the cluster centers.
• Selection strategy: A selection strategy is used to maintain better solutions among all individuals. After each new individual is generated, the selection strategy retains better solutions, while the clustering strategy and generation strategy are applied to add new solutions to the species to maintain the diversity of the entire population.
• Mutation strategy: there are four main mechanisms for mutation in BSO: 1) Add a random disturbance to a random class center to generate a new individual; 2) Randomly select an individual in a random class and add a random disturbance to generate a new individual. 3) Randomly combine two class centers, and add random disturbances to generate new individuals. 4) Randomly fuse two random individuals in two classes, and add random disturbances to generate new individuals. The probability of each cluster center being selected in the above 4 mechanisms is shown in Eq. (3): where |K i | represents the size of population i in cluster K , and Q is the number of clusters. Gaussian mutation is used to generate new individuals in BSO, and the mutation operator is as follows: where X d select is a new a-dimensional individual and X d new is the set of selected d-dimensional individuals. N (0, 1) d is a Gaussian distribution with mean 0 and variance 1, and ξ is a coefficient that weights the contribution of the Gaussian random value which is calculated by Eq. (5).
where MaxIter and CurrentIter are the set maximum number of iterations and the current number of iterations, respectively. log sig () is a sigmoid transfer function. k is the coefficient of the slope of the adjustment function needed to balance the convergence rate of the algorithm, and R (0, 1) is a random number in the interval [0, 1].
Algorithm 1 presents the corresponding the pseudocode of this procedure [8]. The implementation of the BSO algorithm is a simple, consisting of the following steps: 1) The population is initialized.
2) The individuals in the population are evaluated and clustered. 3) New individuals are randomly generated. 4) The population and cluster centers are updated; Use k-means clustering algorithm to divide N individuals into K clusters. 5: Record the best individual as the cluster center. 6: if random (0, 1) < p = 0.2 then 7: Cluster center is replaced by randomly generated individuals. 8: end if 9: for i = 1 to N do 10: if random (0, 1) < p_one = 0.8 then 11: Randomly select a cluster. 12: if random (0, 1) < p_one_center = 0.4 then 13: Determine cluster center X select . 14: else 15: Randomly select other individuals. 16: end if 17: else 18: Randomly generate two different clusters k1 and k2. 19: if random (0, 1) < p_two_center = 0.5 then 20: Choose a combination of two cluster centers as X select . 21: else 22: Randomly select two individual combinations as X select . 23: end if 24: Update the individual X select by Eq.(4) and Eq.(5). 25: Compare new and old individuals 26: end if 27: end for 28: end while 5) If the maximum number of iterations has been reached, the optimal individual is output; otherwise, the algorithm returns to 2).

III. IMPROVED BSO FOR THE TSP A. INITIALIZATION OF THE TSP
The improved BSO is built on the basic BSO, and the population is initialized through a greedy algorithm [57] and a randomly generated population strategy based on prior knowledge. When the number of nodes in the city is small, the randomly generated population strategy is used to generate the initial population; otherwise, the greedy algorithm is used. In accordance with Meeran's [58] research, most individuals in the population are generated based on prior knowledge, whereas only a small percentage are randomly generated, such that mean that the updated population is representative and the algorithm has good converges Initialize child_one,child_two.

3:
Randomly generate n individuals, generate a random number as the starting point for offspring, set start = 6.

4:
Update child_one, Find the right_one and right_two cities of the parent individual 6.

5:
if dist (right_one, 6) < dist (rigth_two, 6) then 6: Update the element at the second position of child_one to right_one. Delete city 6 from the parent and update the parent.

11:
Continue the above loop until one element.

12:
Similarly, update Child_two. 13: end for properties, as. This has also been indicated through experiments. Brief descriptions of the greedy algorithm and the randomly population generation strategy for updating the TSP population are provided as follows:

1) RANDOM POPULATION GENERATION STRATEGY
The generation of the initial population is the primary problem to be addressed when solving the TSP [59]. In this article, when the number of city nodes is fewer than or equal to 150, a set of values is randomly generated. Each true value represents the order in which the salesman travels [60]. For example, consider a randomly generated sequence containing 8 true values, as shown in Fig.1. The salesman starts at city 8, visits cities 4, 5, and so on until city 1, and finally returns to city 8 from city 1 to complete the cycle.

2) GREEDY ALGORITHM FOR POPULATION INITIALIZATION
When the number of city nodes is greater than 150, the greedy algorithm is used to generate the initial population to reach the best result quickly.The greedy algorithm starts by randomly selecting of one city as the starting city, adding it to the new population, and selecting the optimal population based on a mechanism for removing the worst case. Then, among all cities not included in the population, the city closest to the current city according to the Euclidean distance is calculated to update the current city. The above operations are repeated until all cities are included in the new population, thereby achieving population diversity [61].

B. SOLUTION CLUSTERING
The purpose of solution clustering is to make the solution converge to a small region. Various clustering algorithms can be used in the BSO algorithm [29], [53]. In the original BSO algorithm, the basic k-means clustering algorithm is used. However, due to the weak robustness of the k-means algorithm, it can easily fall into local optima, and the cluster centers have a great impact on the clustering results. Therefore, this article proposes a hierarchical clustering algorithm for population clustering in BSO for the first time.
The most obvious advantage of hierarchical clustering compared with partitioned clustering is that it reduces the chain effect [62]. In addition, a hierarchical clustering algorithm can be used to cluster data sets at different scales (levels). Hierarchical clustering algorithms may be agglomerative or divisive, depending on whether the hierarchical divisions are determined in the ''bottom-up'' or ''top-down'' [63]; a brief description of the process is shown in Fig.2. In this article the former type of algorithm is used to cluster the TSP population. For a given data set L = (l 1 , l 2 , · · · , l n ), the specific steps implementation of the agglomerative hierarchical clustering algorithm are as follows: 1) In the initial stage, each sample in the data set L is regarded as its own class l i , i = 1, 2, · · · n. 2) The matrix D of distance between each pair of samples in the data set L is calculated; 3) Based on the calculated distance matrix D, first, the pair of samples separated by the smallest distance is found, the smallest distance between samples is stored, and the two samples are merged into a new class; Second, the distance is recalculated. Finally, the distance matrix D is updated according to the Ward linkage method, for which the calculation formula is as follows: where J r and J s represent the number of samples in cluster r and cluster s,ȳ r andȳ s represent the cluster center of cluster r and cluster s, and the symbol 2 represents the calculated Euclidean distance. Based on the operational principles of agglomerative hierarchical clustering, it can be inferred that the time complexity of the algorithm is O n 3 .This is because two different classes are merged each time, it is necessary to traverse the distance matrix to search for the minimum distance, which is a process with time complexity O n 2 , and finally, all classes are combined. For each cluster, this operation needs to be performed n − 1 times. Experimental results indicate that the noise-resistance of this algorithm and the shapes of the resulting clusters are superior to those in the case of those of k-means clustering. Therefore, the agglomerative hierarchical clustering can improve the performance of the BSO algorithm while maintaining its efficiency.

C. GENERATION OF NEW INDIVIDUALS
The core of the BSO algorithm is the mutation and selection of new individuals. As in other intelligent algorithms, intergroup and intragroup interactions are considered [64]. By maintaining the diversity of the population, the BSO algorithm can efficiently find the optimal solution when solving the TSP. In this article, operators for exchanging individuals and heuristic crossover are used to generate individuals.

1) EXCHANGE INDIVIDUALS
To increase the diversity of the population, an exchange rule is adopted to update the population in the initial stage of individual cluster update process [65]. This exchange rule is illustrated by the example below.
Suppose that 8 cities are generated randomly and that the current solution is:  is used in this article to generate offspring from parents with outstanding genetic information to accelerate the algorithm's optimization speed [66]. We choose parent 1 and parent 2 from the initial population and perform crossover between them by means of the heuristic crossover operator to generate child 1 and child 2. Algorithm 2 presents the pseudocode of the heuristic crossover operator.
The flow of the improved BSO algorithm with hierarchical clustering is shown in Fig.3.

IV. EXPERIMENTAL STUDIES
In this section, experiments conducted on the TSP to test the improved BSO algorithm will be introduced in detail. First, we analyze the parameters related to the algorithm and the components of the improved BSO algorithm. For the TSP data sets, the 28 instances used in this article come from the TSPLIB benchmark [67]. The number of city nodes in these 28 instances ranges from 22 to 1291; the number in the name of each instance indicates the number of nodes it contains. For each instance, the algorithm introduced in this article was independently run 30 times. To evaluate the performance of AG-BSO, we compared it with the following advanced intelligent optimization methods: (1) traditional intelligent algorithms such as GA [68], SA [69], ACO [2], and PSO [1]; (2) the improved BSO algorithm [48], [70]; and (3) other improved intelligent algorithms [71]- [74]. The simulation experiments were run on a computer equipped with an Intel Core i5-5200 processor, and the program was created in the Windows 10 environment.

A. PARAMETER SETTINGS AND COMPONENT TESTING
The adjustment of the parameters is crucial to the performance of intelligent optimization algorithms. The parameter settings used for the original BSO algorithm and other algorithms in the literature were adopted from the related literature [8], [38], [41], [48], [71]. After in-depth discussion, the parameters of the AG-BSO algorithm were determined through repeated tests and revisions. To ensure the rigor of this work, the relevant algorithm parameters are listed in  To test the performance of the components of the AG-BSO algorithm and observe their impact relative to the original BSO algorithm, each of the three components was added to the BSO algorithm individually for experimental comparisons with the original BSO algorithm on the data sets ulyssses22, eil51, berlin52, ch150, and pr226. The results are shown in TABLE.2. The detailed definitions of the algorithm variants with the different components are given as follows: 1) The improved BSO algorithm obtained by implementing only hierarchical clustering is denoted by BSO1; 2) The improved BSO algorithm obtained by implementing only the exchange rule and the heuristic crossover operator for updating individuals is denoted by BSO2; 3) The improved BSO algorithm obtained by implementing only the greedy algorithm to initialize the population is denoted by BSO3. At the same time.we experimentally analyzed the characteristics of the new components, and the results are presented below: 1) The introduction of hierarchical clustering greatly reduces the solution time of the original BSO algorithm, but the algorithm can easily fall into a local optimum, and the solution accuracy cannot be guaranteed. When BSO1 is used to solve the TSP instances ulysses22, eil51 and berlin52, the solution times(in seconds) are 13.05, 20.43, and 10.93, respectively. However, the solution accuracy is poor because of the susceptibility to local optima; the optimized values are lower than those achieved with the original BSO algorithm. When BSO1 is used to solve the TSP instance pr226, the time spent is 120.13, which is 67.2 seconds faster than the original BSO algorithm but longer than the solution time of BSO3; 2) The incorporation of the exchange rule and the heuristic crossover operator into the BSO algorithm can help the algorithm jump out of local optima and enhance its global optimization capability. However, this comes at the cost of an increase in the solution time. When BSO2 is used to solve the TSP instances ulysses22, eil51, berlin52 and pr226, the optimized values are better than those obtained using the original BSO algorithm, but the solution time is significantly increased. When BSO2 is used to solve pr226, the solution time is 211.47, which is 24.14 longer than that of the original BSO algorithm; 3) The use of the greedy algorithm to initialize the population for a large-scale TSP instance can effectively reduce the solution time of the original BSO algorithm. When BSO3 is used to solve the TSP instances ulysses22, eil51 and berlin52, the solution time and solution accuracy show no major changes compared with the original BSO algorithm. However, the time taken to solve the large-scale instance pr226 is 87.12, which is 100.21 faster than the original BSO algorithm.

B. COMPARISON OF THE ORIGINAL AND IMPROVED BSO
As mentioned in the introduction to this section, an experiment was conducted to prove that the improved BSO performs better than the basic version of the original BSO. In this experiment, 28 TSP instances were included. The experimental results are shown in TABLE.3. The best solution found by the algorithm, the standard deviation (calculated as shwon in Eq. (7)), and the average runn time (in seconds) are shown for each instance.
where Dev represents the deviation rate, OV represents the best value found, and IV represents the known ideal value. Based on the problem size, the TSP instances selected for this experiment can be divided into two categories. When the number of city nodes in a problem instance is fewer than or equal to 150, the instance belongs to category 1; otherwise, it belongs to category 2 and is considered a large-scale TSP instance. When the number of city nodes is fewer than or equal to 150, the maximum number of iterations is 600; when the number of city nodes is greater than 150, the maximum number of iterations is 1000. An algorithm terminates when the preset maximum number of iterations is reached.
From the results shown in TABLE.3, it can be concluded that for these 28 examples, the improved BSO algorithm is superior to the basic BSO algorithm in terms of the best value, runn time and standard deviation. It can be clearly seen from TABLE.3 that to solve the TSP with more than 100 city nodes, the improved algorithm takes significantly less time than the basic BSO algorithm and the accuracy of the solution is higher than that of the basic BSO algorithm.Furthermore, AG-BSO achieves the known optimal values for ulysses22, berlin52, rat99, kroA100, kroC100 and ch150. Notably, the best values found for data sets ulysses22 and kroA100 are lower than the known optimal values, which is normal. Most of the data sets used in the existing literature on TSP problems are derived from the TSBLIB test set released by Reinelt in 1991 [67]. From a review of a large number of previous studies, it can be found that the values obtained by many algorithms in these studies are also lower than the known optimal values. For example, in [74], a multiobjective ant colony algorithm was used to solve ulysses22, and the optimal value found was 75.31; in [72], a metaheuristic hybrid algorithm was used to solve ulysses22, att488, and berlin52, and the obtained values were 56.52, 13908.4, and 5970.83, respectively, all lower than the known optimal values. respectively. In the 20 experimental results, the standard deviation was less than 1%, accounting for 71% of all instances. The performance comparison between the improved BSO and the basic BSO is shown in Fig.4. Fig.5 shows the experimental results of some examples of the known optimal solutions.

C. EXPERIMENTATION WITH THE IMPROVED BSO AND TRADITIONAL INTELLIGENT ALGORITHMS
To prove that the improved algorithm is better than the traditional intelligent algorithms, the four specific instances ulysses22, eil51, ch130 and pr226 were selected for the simulation experiments presented in this section. Each intelligent algorithm was independently run 30 times on each TSP instance. To ensure the fairness of the comparison and the obtain statistical results quickly, for the same TSP instances, all algorithms are tested on the identical operating system on the same computer. Fig.6 shows the optimization processes of the six tested algorithms for solving TSP instances ulysses22, eil51, ch130, and pr226.
From the information presented in Fig.6, it can be intuitively seen that for testing TSP data ulysses22, eil51, and ch130, the fixed number of iterations was set to 600. For these problem instances, the AG-BSO algorithm proposed in this article converges to the optimal value in the 44th, 184th and 536th generations, respectively, while the optimal values obtained by the SA, GA, and PSO algorithms continue to constantly change with an increasing number of iterations. When the maximum number of iterations is reached, these algorithms have not yet converged; thus, it can be seen that the optimization efficiency of these three algorithms 201616 VOLUME 8, 2020  is worse than that of the AG-BSO. For the TSP instance pr226, the number of iterations was increased to 1000. The optimization capabilities of GA, PSO, and SA are still far from those of the AG-BSO algorithm. The convergence speed of ACO is faster than that of other algorithms, however, there is a large difference between the optimal value obtained by ACO and that obtained by AG-BSO.
The k-means clustering method is sensitive to noise and outliers. This causes the value found by that the original BSO to oscillate around the optimal value in the later stages of algorithm execution. The AG-BSO algorithm avoids this problem by using agglomerative hierarchical clustering. To further illustrate the advantages of AG-BSO in terms of optimization efficiency and accuracy, the optimal values found by each algorithm and the specific amounts of time spent are presented in detail TABLE.4. In this table, Dev is the standard deviation. MeanV represents the average of all the best results in the 30 individual runs. MeanT represents the average corresponding average run time.
Taking the eii51 data set as an example, it can be seen that the deviation rate of the AG-BSO algorithm is only 0.61%, representing a great advantage compared with the other algorithms; in particular, this deviation rate is reduced by 83.72% compared with that of the PSO algorithm. TABLE.4 shows that the AG-BSO algorithm also has obvious advantages compared with the other algorithms in terms of the optimization speed, deviation rate and stability when solving problems involving small volumes of TSP data. Compared with the original BSO algorithm, AG-BSO is superior in terms of both solution time and solution accuracy, demonstrating that the improved algorithm has better optimization ability and greater robustness. Fig.7 illustrates the execution times of the six algorithms for solving these four TSP instances.

D. COMPARISON OF AG-BSO WITH OTHER IMPROVED ALGORITHMS
On the basis of the above comparisons the AG-BSO algorithm with traditional algorithms, this section compares AG-BSO with other improved algorithms.
First, AG-BSO is compared with two other improved BSO algorithms in the literature that participated in the comparison are as follows: (1) the improved BSO in reference [48] VOLUME 8, 2020   is abbreviated as PKDBSO; (2) the proposed reinforced brain storm optimization in reference [70] is abbreviated as MDBSO; among the three improved BSO algorithms, the maximum number of iterations is 1000, and the population number is 100. The detailed parameter settings of different algorithms are shown in TABLE.5.  TABLE.6 shows the simulation results of the different algorithms at various scales. When tested kroA100, AG-BSO finds a best value of 21178.00, better than the ideal value. Obviously, the result for AG-BSO solving 51 cities is 0.69%, which is 1.75% lower than the result for MDBSO(2.44%). Similarly, for st70, AG-BSO has a deviation rate of 0.44%, which is lower than the previous best deviation of 1.5%. For kroA100, ch150, pr226, and pcb442, the deviation rate of AG-BSO are reduced by 0.74%, 4.88%, 0.8%, and 0.78%, respectively, compared with those of MDBSO. In summary, the experimental data show that the proposed method achieves good results. As the problem complexity increases, AG-BSO can jump out of local optimal solution faster, improving the convergence performance and speed. The reason for this is that hierarchical clustering is used to obtain solutions close to the global optimum, thereby improving the convergence properties in the population initialization stage. The experimental results show that, compared with the MDBSO algorithm, the AG-BSO algorithm can better avoid falling into local optimal when solving TSP instances, and thus can find better results more efficiently and stably. It can be concluded that AG-BSO is significantly superior to MDBSO and PKDBSO.
Finally, AG-BSO was compared with four improved algorithms in the literature. The four improved algorithms that participated in the comparison are as follows: (1) the proposed meta-heuristic hybrid algorithm in reference [72] is abbreviated as GACO; (2) the improved ACO is abbreviated as IACO in literature [71]; (3) the proposed discrete water cycle algorithm is abbreviated as DWCO in literature [73]; (4) the proposed multi-role ACO is OMACO in reference [74]. The detailed parameter settings of the different algorithms are shown in TABLE.7.  TABLE.8 shows the statistical results of AG-BSO and the other improved algorithms. The conclusions obtained from Table.8 are similar to the previous conclusions. Once again, AG-BSO is the best-performing technique overall. Among the small-scale TSP instances, better results are obtained for ulysses22, att48, berlin52, st70, eil76, kroA100, kroC100 and eil101. Additionally, for the large-scale TSP instacnes pr226, pcb442 and pr439, the AG-BSO proposed in this article performs significantly better than the other improved algorithms. In addition, as the problem scale increases, the computational complexity also increases significantly, and the performance of the other algorithms drops sharply; by contrast, AG-BSO maintains good adaptability for all TSP instances.

V. CONCLUSION
The improved BSO proposed in the literature tend to have a slow convergence speed, can easily fall into local optima and have a low solution accuracy when used to solve complex combinatorial problems. In addition, although most of the current algorithms reported in the literature can achieve close to ideal results when solving small-scale TSP instacnes, they show poor performance for large-scale instances. To address the above problems, this article proposes an improved BSO algorithm named AG-BSO. The three core improvements of AG-BSO are as follows: (1) the k-means clustering algorithm used in the original BSO algorithm is replaced with agglomerative hierarchical clustering; (2) the greedy algorithm is introduced in AG-BSO; and (3) an exchange rules and a heuristic crossover operators are adopted for updating individuals in the population.
On the basis of in-depth theoretical research on the standard BSO algorithm and a deep analysis of the TSP, to address the lack of robustness of the standard BSO algorithm and other issues, an agglomerative greedy BSO algorithm is proposed for the first time in this work for solving the TSP. To prove that the proposed AG-BSO is a promising approximate method for solving the TSP, we have compared its performance with that of the basic BSO algorithm on 28 TSP instances. In addition, the results of the proposed algorithm have been compared with four different traditional metaheuristic algorithms: GA, SA, ACO and PSO, and with the results of six improved intelligent algorithms. Overall, the simulation results show that AG-BSO is superior in terms of optimization efficiency, convergence speed and robustness. The AG-BSO demonstrates excellent performance for solving the considered TSP instances, better than the performance of the other improved algorithms in most cases.
The TSP is a classic combinatorial optimization problem. However, the conclusions obtained based on the TSP for the improved algorithm proposed in this article cannot be generalized to other combinatorial optimization problems. Therefore, in future work, we plan to develop an improved BSO to solve other routing problems such as vehicle routing problems. Moreover, there are a large number of metaheuristic algorithms available in the literature for solving the TSP. Here, the AG-BSO algorithm has been compared with six selected improved algorithms, and the simulation results showed that the proposed AG-BSO is promising. Nevertheless, we believe that conducting more extensive experiments on additional technologies is valuable to the scientific community. The efficiency of the AG-BSO algorithm in solving large-scale TSP instances is exciting, but in most cases it cannot reach the known optimal value. Further improving the algorithm will be a major challenge to address in subsequent work. Future strategies for improving the performance of BSO will focus on the mechanism for updating the individuals in the population, the diversity of the population, and the incorporation of other novel intelligent optimization algorithms.