Artificial Bee Colony Optimizer with Bee-to-Bee Communication and Multipopulation Coevolution for Multilevel Threshold Image Segmentation
This paper proposes a modified artificial bee colony optimizer (MABC) by combining bee-to-bee communication pattern and multipopulation cooperative mechanism. In the bee-to-bee communication model, with the enhanced information exchange strategy, individuals can share more information from the elites through the Von Neumann topology. With the multipopulation cooperative mechanism, the hierarchical colony with different topologies can be structured, which can maintain diversity of the whole community. The experimental results on comparing the MABC to several successful EA and SI algorithms on a set of benchmarks demonstrated the advantage of the MABC algorithm. Furthermore, we employed the MABC algorithm to resolve the multilevel image segmentation problem. Experimental results of the new method on a variety of images demonstrated the performance superiority of the proposed algorithm.
Multithreshold image segmentation technique is considered as a simple but effective method to extract useful objects from the digital image background, which required multiple threshold values to accomplish segmentation. The image segmentation can be roughly grouped into optimal threshold [1–4] and property-based threshold [5–7]. The purpose of the first category is to find the proper thresholds for classifying the histogram at a desired level by optimizing an objective function. The second category searches the optimal thresholds by measuring some property of the histogram, which is fast and suitable for the case of multilevel threshold but hard to determine the number of thresholds. Such methods include entropy-based threshold methods, minimization of Bayesian error, and clustering-based methods.
Many existing algorithms utilize the exhaustive search approach to pursue the desired thresholded classes [8–12]. References [8, 9] proposed some novel methods derived from optimizing an objective function. Several algorithms originally proposed for bilevel threshold have been later extended to multilevel threshold [3, 4, 11, 12]. However, due to the exhaustive search employed, the computational complexity of these methods will rise exponentially when the number of thresholds increases, which limits the multilevel threshold applications.
Recently, owing to their predominant abilities of coping with complex nonlinear optimizations, several swarm intelligence (SI) algorithms as the powerful optimization tools have been applied to address this concerning issue [12–15]. Among them, the artificial bee colony algorithm (ABC) is a popular SI algorithm, which simulates the social foraging behavior of a honeybee swarm . Due to its simple arithmetic and good robustness, the ABC algorithm has been widely used in solving many numerical optimizations and engineering optimization problems [17–20]. However, facing up complex problems, similar to other SIs, ABC algorithm suffers from the following drawbacks . The solution search equation of ABC works well in global exploration but is poor in the exploitation process. With the dimension increasing, the information exchange of each individual is limited in a random dimension, resulting in a slow convergence rate. Due to the random selection of the neighbor bee and dimensions, food sources with higher fitness are not utilized, which influences the ability of global search.
Thus, this paper presents a modified artificial bee colony algorithm for multilevel threshold image segmentation, namely, MABC, to conquer the original ABC drawbacks to some extent, which synergizes the idea of multipopulation cooperative model with the bee-to-bee communication strategy. In the bee-to-bee communication mechanism, with the enhanced information change strategy, individuals can share more information from the elites in the early exploration stage of the algorithm. With the multipopulation cooperative approach, the hierarchical colony with different topologies can be structured, which can maintain diversity of the whole community. By incorporating this hybrid strategy, the proposed MABC can be claimed very powerful, because the exploitation and exploration can be elaborately balanced, which guarantees finding the optimal thresholds at a more reasonable time.
The rest of the paper is organized as follows. Section 2 describes the canonical ABC algorithm in detail. In Section 3, the proposed modified artificial bee colony (MABC) algorithm is given. Section 4 presents the experimental studies of the proposed MABC and the other algorithms with descriptions of the involved benchmark functions, experimental settings, and experimental results. And its application to image segmentation has been presented in Section 5. Finally, Section 6 outlines the conclusion.
2. Canonical ABC Algorithm
The artificial bee colony (ABC) algorithm was proposed by Karaboga in 2005 , simulating the intelligent foraging behavior of a honeybee swarm. The entire bee colony contains three groups of bees: employed bees, onlookers, and scouts [17, 18]. Employed bees are responsible for exploring the specific food sources; meanwhile they pass the food information to onlooker bees. The number of employed bees is equal to that of food sources. Then onlooker bees choose good food sources based on the received information, and then they further exploit the food near their selected food source. The food source with higher quality would have a larger opportunity to be selected by onlookers. There is a control parameter called ‘‘limit’’ in the canonical ABC algorithm. If a food source is not improved anymore when limit is exceeded, it is assumed to be abandoned by its employed bee and the employed bee associated with that food source becomes a scout to search for a new food source randomly. The fundamental mathematic representations are listed as follows.
Step 1 (initialization phase). In initialization phase, a group of food sources are generated randomly in the search space using the following equation:where , . is the number of food sources. is the number of variables, that is, problem dimension. and are the lower upper and upper bounds of the th variable, respectively.
Step 2 (employed bees’ phase). In the employed bees’ phase, the neighbor food source (candidate solution) can be generated from the old food source of each employed bee in its memory using the following expression:where is a randomly selected food source and must be different from ; is a randomly chosen index; is a random number in range [−1, 1].
Step 3 (onlooker bees’ phase). In the onlooker bees’ phase, an onlooker bee selects a food source depending on the probability value associated with that food source; can be calculated as follows:where is the fitness value of the th solution.
Step 4 (scout bees’ phase). In scout bees’ phase, if a food source cannot be improved further through a predetermined cycle (called “limit” in ABC), the food source is supposed to be abandoned. The employed bee subsequently becomes a scout. A new food source will be produced randomly in the search space using (1).
The employed, onlooker, and scout bees’ phase will recycle until the termination condition is met.
3. Modified Artificial Bee Colony Algorithm
3.1. Bee-to-Bee Communication Model
3.1.1. Von Neumann Topology Structure
The inherent property of swarm intelligence is the “population” where unsophisticated individuals share global information with their neighborhoods to create collective intelligence in some specific topologies [21, 22]. The spatial topology structure significantly affects the spreading path of information flow across the structured population and also determines the social interaction between individuals.
Recently, using population topology technique to improve the performances of evolutionary algorithms has been strongly suggested [23–25]. In , after deeply investigating the relationship between various topologies and performances, Kennedy drew an interesting conclusion that Von Neumann topology demonstrates superior performances on a wide range of testing functions, as shown in Figure 1(a).
(a) Von Neumann
In ABC, from (1), it is clearly visible that any candidate neighborhood of individual can be selected randomly from the entire population, which means every individual is connected to individual . In other words, the population topology of ABC belongs to the Star type, as shown in Figure 1(b). As depicted in , it was theorized that although the connectivity of the Von Neumann structure is lower than the Star type, the Von Neumann type can enable individuals of population to cover a larger search space and to maintain diversity of population, avoiding falling into the deep local optimum. The detailed steps of constructing the Von Neumann structure are given as shown in Algorithm 1.
In the MABC algorithm, the Von Neumann model is utilized in the employed bee phase where each individual has three neighborhoods, namely, the above node, the left node, and the below node. And in the onlooker bee phase and the scout bee phase, the original topology is still employed. This can maintain an appropriate balance between improving convergence rate and enhancing diversity of population.
3.1.2. Enhanced Information Exchange Based on Crossover
In canonical ABC, from (2), we can see that the information exchange between individuals is restricted to a narrow scope, which relies on a single random dimension of a single random bee. To address this, the crossover-based information sharing technique is employed in MABC. To benefit from the global best information derived from the entire population, a given number of elites from excellent individuals are subjected to crossover operation. The underlying idea behind this method is to facilitate better search in complex higher dimensional search space as opposed to classical ABC that perturbs a single parameter. The steps for crossover operation phase are given as follows and the schematic diagram is illustrated in Figure 2.
Algorithm 2 (crossover operation). Consider the following.
Step 1 (select elites to the best-performing list (BPL)). A set of individuals with higher fitness from current food sources are chosen to construct the best-performing list (BPL), whose size is equal to the current population size.
Step 2 (crossover operation). Parents are chosen from the BPL’s elites only for crossover by the tournament selection scheme. Then, two offspring are generated by the arithmetic crossover operation:where is new offspring, Parent 1 and Parent 2 are randomly chosen from BPL, and is a random coefficient in range of .
Step 3 (update population). A selecting rate is used to determine the replaced individuals in the population. If population size is S, then the replaced individuals size is , and they are chosen randomly from the population. Through the greedy selection between the replaced individual and the new offspring , the better one remains in the population.
3.2. Multipopulation Cooperative Mechanism
The multipopulation cooperative concept has been widely adopted to improve the search ability of algorithms via decomposing complex problems into simple tasks tackled in parallel. With the multipopulation cooperative mechanism as shown in Figure 3, the single population in ABC can be structured into two levels with different topologies and information exchange strategies. The new characteristics can be abstracted as follows.
In each foraging process, this two-level multipopulation evolution can be formulated as follows:where is the global best individual within species and is the best individual found so far among all species. From (5), we can see that the term represents the information exchange within species (individual level) in a specific topology, and denotes the cooperation of agents between species (species level). This will help to amplify the diversity of population. Furthermore, the information exchange strategy significantly improves the search ability of the proposed method.
3.3. The Proposed Algorithm
By incorporating the aforementioned evolution model and strategies, namely, multipopulation cooperative model and bee-to-bee communication strategy, each individual can regulate its trajectory according to the effective topology and information exchange strategy. In particular, the population evolution process can make use of the historical experience of individual level and the global best information of the species level, which can maintain the diversity of population. The main steps of the proposed algorithm are given as the following processes.
Algorithm 3 (the proposed MABC algorithm). Consider the following.
Step 1 (initialization). Consider the following.
Step 1.1. Randomly generate species, each possessing individuals.
Step 1.2. Initialize the population topology structure according to Algorithm 1.
Step 1.3. Evaluate the fitness of each bee.
Step 1.4. Set maximum cycles (LimitC).
Step 2. Consider iteration = 0.
Step 3 (employ bee phase). Loop over each food source.
Step 3.1. Generate a candidate solution by (4) and evaluate .
Step 3.2. Greedy selection and memorize the better solution.
Step 4. Calculate the probability value by (3).
Step 5 (onlooker bee phase). Consider the following.
Step 5.1. Select a food source by and generate a candidate solution by (4).
Step 5.2. Greedy selection and memorize the better solution.
Step 6 (crossover phase). Consider the following.
Step 6.1. Select elites to the best-performing list (BPL) as Algorithm 2.
Step 6.2. Crossover and mutation operation as Algorithm 2.
Step 6.3. Update with greedy selection strategy as Algorithm 2.
Step 7. Consider iteration = iteration + 1.
Step 8. If the iteration is greater than LimitC, stop the procedure; otherwise, go to Step 3.
Step 9. Output the best solution achieved.
4. Benchmark Test
In the experimental studies, 15 benchmark functions are employed to test the proposed MABC algorithm [26–30]. The involved benchmarks can be classified as basic benchmarks () and CEC 2005 benchmarks (). The formula for each basic benchmark and CEC 2005 test functions is shown in Tables 2 and 3. In our test, the function evaluations (FEs) criterion is used as a time measure substituting the number of iterations, due to the fact that the algorithms do differing amounts of work in their inner loops.
4.1. Parameters Settings for the Involved Algorithms
Experiment is conducted to compare with successful EA and SI algorithms, including original artificial bee colony algorithm (ABC) , canonical PSO with constriction factor (PSO) , genetic algorithm with elitism (EGA) , and covariance matrix adaptation evolution strategy (CMA-ES) . The independent run time is 30, and the maximum evaluation number is 100000. For the involved benchmarks, the dimensions are all set as 30.
All related parameters of the involved compared algorithms are set as their original literatures suggest: initialization conditions of CMA-ES are referred to in , and the candidate offspring number per time step is set as . For ABC, the limit parameter is , where is employed bee number and is the benchmark dimension; the learning rates and of PSO are both 2.05 and the constriction factor ; the crossover rate and mutation rate of EGA are 0.8 and 0.01, respectively, and the global elite with a rate of 0.06 is used . The parameter setting for all algorithms is listed in Table 4. For the proposed MABC, the species number and selection rate should be tuned firstly in the next section.
4.2. Sensitivity in Relation to Parameters of MABC
(1) Effect of Agent Number in Species Level. In order to study the sensitivity in relation to the parameter , six classical 30-dimensional benchmark functions were employed, namely, unimodal sphere (), unimodal nonseparable Rosenbrock (), multimodal Schwefel (), unimodal shifted sphere (), multimodal rotated Rastrigin (), and multimodal nonseparable rotated Ackley () functions, as defined in Table 2.
In this test, the values of parameter were changed from 1 to 15, while the selection rate is preset as 1. Results of this experiment are illustrated in Figure 5. From Figure 5, it is clearly visible that when is near 10, MABC performed superior in terms of mean values and convergence rate on most test functions. However, the effect of this parameter is not very obvious in the test.
(d) Shifted sphere
(e) Rotated Rastrigin
(f) Rotated Ackley
(2) Effect of Selection Rate CR. Five basic benchmark functions () are employed to evaluate the performance of MABC variants with different s. All the functions are implemented for 30 run times, whose dimension is 30. From Table 5, we can observe that MABC variant with equal to 1 performed best on four functions among all five functions while the variant with equal to 0.05 obtained best results on function . Therefore, the value of selection rate in each crossover operation can be set to 1 as an optimal value in all the following experiments.
4.3. Numerical Results and Comparison
4.3.1. Results for the Classical Benchmarks
The means and standard deviations of the 30 run times of the nine involved algorithms on the classical test suite are listed in Table 6. The best results among those algorithms are shown in bold in Table 6. Figures 6(a)–6(g) present the average convergence rates of each algorithm for each benchmark.
(a) Sphere function
(b) Rosenbrock function
(c) Quadric function
(d) Sin problem function
(e) Rastrigin function
(f) Schwefel function
(g) Ackley function
(h) Griewank function
From Table 6, MABC and ABC obtained satisfactory results on the unimodal functions (f1 to f3) in terms of accuracy and convergence. MABC performs a little worse than ABC on these functions but significantly better than other algorithms. are the most commonly used test multimodal functions, and an algorithm can be easily trapped in a local minimum. As expected, the MABC gets more favorable results than the compared algorithms on all these cases (shown in Table 6 and Figure 6). The differences between the compared algorithms on these multimodal functions suggest that the MABC is better at a fine-gained search than the other algorithms. The key difference is mainly due to the specific topology technique and crossover operator in the MABC. The crossover operator helps to enlarge the information exchange space while accelerating the searching process. The multipopulation strategy makes full use of the global information and transfers this information effectively across the population structured by the Von Neumann topology. From the overall results on the eight classical functions, MABC achieved better results on most functions than its counterpart ABC and other algorithms due to its usage of the proposed strategies.
In order to further investigate the efficacy and robustness of the MABC, the analysis of variance (ANOVA) test was employed to determine the statistical characteristics of each proposed algorithm over the others. The box plots shown in Figures 7(a)–7(h) demonstrate the statistical performance of each involved algorithm on the classical test suite for 30 runs individually. According to the red lines in Figures 7(a)–7(h), which refer to the low median values obtained by each algorithm, it is clearly visible and proven that MABC achieved good variance distribution of compromise solutions on all classical functions. Note that the ABC algorithm also obtained satisfactory results on some classical functions.
(a) Sphere function
(b) Rosenbrock function
(c) Quadric function
(d) Sin problem function
(e) Rastrigin function
(f) Schwefel function
(g) Ackley function
(h) Griewank function
4.3.2. Results for the CEC 2005 Benchmarks
Seven shifted and rotated functions from CEC 2005 test bed are viewed to be much more difficult to resolve than basic benchmarks. The experimental results in terms of means, standard deviations, and ranks are presented in Table 7. From these results, it can be observed that MABC performed best on five out of the seven functions. ABC and CMA-ES achieved similar ranking, only worse than MABC. Furthermore, MABC can obtain the global optimum for and within 10000 FEs. It is clearly visible and proven that MABC performed more powerful on CEC 2005 test suite compared to its performance on basic benchmarks, which means that MABC using three effective strategies is more competent in tackling complex problems.
The superior performance by MABC on CEC 2005 benchmarks can be explained as follows: when other involved algorithms are trapped in local optima, the MABC uses the enhanced information change strategy successfully to jump out of the deep local optimum. By hybridizing the multipopulation cooperative model with the bee-to-bee communication mechanism, the individuals of MABC can enlarge the search space and maintain proper diversity of the population. This individual search behavior is guided by the global best experience from different species.
5. Multilevel Threshold for Image Segmentation by MABC
5.1. Entropy Criterion-Based Fitness Measure
The Otsu multithreshold entropy measure  proposed by Otsu has been popularly employed in determining whether the optimal threshold method can provide image segmentation with satisfactory results. Here, it is used as the objective function for the involved algorithms and its process can be described as follows.
Let the gray levels of a given image range over and denote the occurrence of gray level .
Letwhereand the optimal threshold is the gray level that maximizes (7). Then (7) can also be written aswhere , , , and are the same as given in (8), andExpanding this logic to multilevel threshold,where is the number of thresholds.
Equation (11) seems very similar to the uniformity measure expression and can be regarded as the objective function to be optimized for the MABC.
5.2. Experiment Setup
The experimental evaluations for segmentation performance by MABC are carried out on a wide variety of image datasets. These datasets involve a set of popular tested images used in previous studies [35–37], namely, avion.ppm, house.ppm, lena.ppm, peppers.ppm, safari04.ppm, and hunter.pgm (available at http://decsai.ugr.es/cvg/dbimagenes/). The size of each involved image is . A comparison between the proposed algorithm and other algorithms is evaluated by the traditional Otsu methods. The parameters of these algorithms (namely, MABC, ABC, PSO, EGA, and CMA-ES) are set as described in Section 4.1, which achieved the best results. The population-based algorithms used for image segmentation, including the MABC, may only accelerate the velocity of computation, but they fail to improve the optimal result. Therefore, we strived to utilize the proposed algorithm to obtain multiple thresholds with larger fitness values and fast computation ability.
The numbers of thresholds for image segmentation are 2, 3, 4, 5, 7, and 9. The population size of each involved algorithm is 50. The maximum number of FEs is 2000, which has sufficient time to search on high-dimension problems. The run time of each algorithm on each image for each value is 30. Figure 8 presents four original images and their histograms.
5.3. Experimental Results of Multilevel Threshold
Due to the exhaustive search characteristic of classical Otsu method, its result can be regarded as the basis for comparison with other EA-based algorithms. We utilized (11) as the fitness function to evaluate involved algorithms.
Case 1 (multilevel threshold results on test images with = 2, 3, 4). Table 8 presents the fitness function values, mean computation time, and corresponding optimal thresholds (with = 2, 3, 4) obtained by Otsu. Due to the fact that when > 4 Otsu needs to take too long time to compute, the correlative CPU times are not listed in our experiment. However, other results attained by the population-based algorithms were compared. It is noteworthy that the real-time applications demand a suitable balance of running time and high accuracy; the term CPU times of the population-based methods should be analyzed in detail. As shown in Table 9, there are not obvious differences about CPU times between the involved population-based methods, which means that these methods based on SI and EA algorithms are suitable to deal with the high-time-complexity image segmentation scenarios.
As can be seen from Table 10, the proposed MABC algorithm generally performs close to the Otsu method in terms of fitness value when = 2, 3, 4, whereas the performance of MABC on time complexity is significantly superior to its counterpart Otsu. In other words, the MABC-based algorithm consumes less computing times than the traditional one. This is mainly due to the fact that the crossover-based social learning strategy is used in the proposed algorithm to have faster convergence speed. Furthermore, the MABC-based algorithm achieves the best achievements among the population-based methods in most cases. This can be explained by the fact that the MABC has an appropriate balance between exploration and exploitation. Compared with other involved SI and EA algorithms, the MABC is endowed with crossover operation to facilitate better global search in complex higher dimensional search space. Moreover, the differences between the MABC and the other algorithms are more evident as the segmentation level increases.
Case 2 (multilevel threshold results on test images with = 5, 7, 9). In this section, we conduct these algorithms on image segment with = 5, 7, 9. Table 11 demonstrates the average fitness value and standard deviation achieved by each population-based algorithm, where the correlative results with the larger values and smaller standard deviations indicate the better achievement. Figure 9 shows the convergence curves on the test images by involved methods, and Figure 10 demonstrates the evolution curve of the optimal threshold values by MABC.
From Table 11, one can observe that there are statistically significant differences between experiments using these population-based segmentation algorithms, for both efficiency (fitness values) and stability (standard deviation). Relying on the hybrid strategies and the enhanced search ability, MABC demonstrates powerful performance and robustness on the problems with higher dimension. Compared with other state-of-the-art population-based methods except MABC, the ABC-based method has relative stronger exploration ability due to its usage of scout bees mechanism. However, as can be seen from Table 11 and Figure 9, by increasing the level of segmentation, the fitness of MABC increases more than the fitness of the other methods while ABC gives almost the same fitness for 5, 7, and 9 levels of segmentation since it is not endowed with any kind of mechanism to improve the convergence of individual when in the vicinities of the optimal solution. The results indicate that the MABC-based method can be regarded more suitable to resolve multilevel image segmentation problems. From Figure 10, it can be validated that the MABC-based method can quickly search the optimal thresholds. Segmented images based on the MABC and ABC methods with = 9 are shown in Figure 11.
Case 3 (multilevel threshold results on MRI images). To further investigate its performance on medical specific application, the utility of the proposed MABC algorithm is demonstrated by considering the T2-weighted brain magnetic resonance image (MRI) slice. The test image and its histogram are shown in Figure 12. The segmentation results of the proposed method are compared with the ABC, PSO, CMA-ES, and EGA methods. The experimental setup is referred to in Section 5.2, and the parameters of the involved algorithms are set as described in Section 4.1.
The aim of the proposed MABC algorithm is to obtain the correct threshold values and higher objective values with fast computation ability. Using the MABC algorithm and other heuristic algorithms, the objective values, the corresponding standard deviation values, and the mean computation time obtained are shown in Table 12. We note that the higher the objective value, shown in Table 12, the better the segmentation result.
From Table 12, concerning the computation time, the involved population-based methods perform closely to each other while the Otsu method needs to take too long time to compute, which validate that these population-based methods have obvious advantage to deal with the high-time-complexity image segmentation scenarios. Furthermore, the MABC method obtains the best objective fitness values among the population-based methods in most cases. Figure 13 shows the objective fitness convergence curves with = 9 obtained by the involved methods. From Figure 13, we can see that the MABC performs more powerfully than its compared methods when dealing with high-dimension image segmentation. The evaluation curves of the optimal threshold values ( = 9) by MABC are shown in Figure 14, and the final segmented image based on the MABC and ABC methods is demonstrated in Figure 15.
(a) Original MRI
(b) MRI by MABC
(c) MRI by ABC
In order to improve the ability of ABC to tackle complex image segmentation problems, this paper proposes a modified artificial bee colony optimizer by employing a pool of optimal foraging strategies, namely, MABC. The potential of the proposed MABC to enhance the search ability and maintain the diversity of population is achieved by combining several optimal foraging approaches, namely, the bee-to-bee communication and multipopulation cooperative mechanism.
The elaborately designed experiments are conducted on a suite of 15 benchmarks functions, to evaluate the performance of the proposed MABC in comparison with six state-of-the-art population-based algorithms. The experimental results indicate that, for most of the involved benchmarks, the MABC algorithm demonstrates more powerful performance in terms of solution accuracy, convergence speed, and robustness.
Finally, the MABC algorithm is employed to resolve the real-world image segmentation problems. The correlative results obtained by the MABC-based method on the test image dataset indicate its potential of achieving significant improvement of performance in the image segmentation application. In our future work, we will focus on designing a more efficient optimization framework based on the MABC’s merits and extend its application to computer vision processing scenarios.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
P. Y. Yin and L. H. Chen, “New method for multilevel threshold using the symmetry and duality of the histogram,” Journal of Electronics and Imaging, vol. 2, pp. 337–344, 1993.View at: Google Scholar
D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Tech. Rep. TR06, Computer Engineering Department, Engineering Faculty, Erciyes University, Kayseri, Turkey, 2005.View at: Google Scholar
D. Karaboga, B. Akay, and C. Ozturk, “Artificial bee colony (ABC) optimization algorithm for training feed-forward neural networks,” Modeling Decisions for Artificial Intelligence, vol. 4617, pp. 318–329, 2007.View at: Google Scholar
B. Akay and D. Karaboga, “Parameter tuning for the artificial bee colony algorithm,” in Proceeding of the 1st International Conference on Computational Collective Intelligence (ICCCI '9), Wroclaw, Poland, 2009.View at: Google Scholar
Z. Chen, Z. He, and C. Zhang, “Image multi-level thresholds based on PSO with Von Neumann neighborhood,” Application Research of Computers, vol. 26, no. 5, pp. 1977–1979, 2009.View at: Google Scholar
A. P. Engelbrecht, Fundamentals of Computational Swarm Intelligence, Wiley, 2009.
H. Wolpert and W. G. Macready, “No free lunch theorems for search,” Tech. Rep. SFI-TR-95-02-010, Santa Fe Institute, 1995.View at: Google Scholar
S. Sumathi, T. Hamsapriya, and P. Surekha, Evolutionary Intelligence: An Introduction to Theory and Applications with Matlab, Springer, 2008.