Abstract
Identifying the number of niches in multimodal optimization is vital to enhancement of efficiency of algorithms. This paper presents a genetic algorithm (GA)-based clustering method for multiple optimal determinations. The approach uses self-organizing map (SOM) neural networks to detect clusters in GA population. After clustering all population and recognizing the number of niches, the phenotypic space is partitioned. Within each partition, a simple GA is independently running to evolve to the actual optima. Before the SOM starts, we allow GA to run several generations until the borders of clusters are identified. Our proposed algorithm is easy to implement, and does not require any prior knowledge about the fitness function. The algorithm was tested for seven multimodal functions and four constrained engineering optimization functions, and the results have been compared with the other related algorithms based on three performance criteria. We found that the present algorithm has acceptable diversification and function evaluation number.
Introduction
Many real engineering optimization problems are very complex in nature, and have multimodal behavior in search domain; that is, they have different multiple optima (several global optima and some local optima). Considering operational rules, cost and time limitations, and other physical constraints, it is necessary to obtain all global/local solutions of multimodal functions, for some solutions may be suitable alternatives during the optimization search process. Multimodal optimization (MMO) refers to the art of finding the number and location of all global and local optima of an objective function in its search space. Over the last decades, a large number of mathematical programming methods such as linear, non-linear, integer and dynamic programming have been proposed for solving MMO, which suffer from some serious difficulties including i) they are applicable to continues and differentiable objective functions, as they use the first or second order information of objective functions, ii) they start the search process near the initial point; however, to be convergence with an acceptable computational effort, choosing an appropriate starting point is vital to these algorithms, iii) these methods do not handle discrete and continuous variables simultaneously, and hence, are not applicable to some engineering MMO problems such as tension/compression spring design problem [1], and iv) these methods cannot solve those engineering MMO problems with non-convex search spaces and the problems whose objective functions may be very smooth in some region and very rugged in other regions (such as Rastrigin’s and Shubert’s functions). Though some modifications of mathematical programming methods such as mixed integer nonlinear programming [2, 3], stochastic and adaptive dynamic programming [4, 5], approximate dynamic programming [6], geometric programming [7], quadratic programming [8], fuzzy programming [9], non-convex integer programming [10] and etc. were proposed to overcome the aforementioned problems, they in general need a considerable computational effort.
With increasing the complexity of industrial engineering problems, non-gradient methods and specially evolutionary algorithms (EAs) such as genetic algorithm (GA) [11], particle swarm (PSO) [12], ant colony optimization (ACO) [13], Simulated Annealing (SA) [14], Bee Colony Optimization (BCO) [15], harmony search (HS) [16], and hybrid metaheuristic methods [17] have been broadly used to obtain global (or near global) and local optimum solutions. These techniques are robust and efficient, capture multiple solutions in a single run without requiring any additional information such as continuity, differentiable or convexity about the objective function and fitness landscape, and enjoy a reasonable convergence speed. Since the EAs are population-based approaches, and provide multiple good solutions in every generation, an optimal search for probable optima locations is necessary. Moreover, it is also high significance to get as close as possible to the actual optima. These two issues respectively refer to intensification (exploitation) and diversification (exploration), reflecting the performance of the algorithm. Many techniques such as niching method have been recently developed for preserving diversity in the fitness landscape, and for promoting the convergence of GA in MMO. Most of the existing niching methods such as crowding, fitness sharing, clustering, restricted tournament selection, speciation, and clearing can be hardly successfully applied to real-world MMO engineering problems. Some of the challenges are: i) difficulties in setting many parameters, ii) a good selection pressure tuning in rugged problems, iii) an extra computational effort especially in high dimensional problems and iv) diversity maintenance throughout all generations.
In this paper, we propose a simple powerful population-based evolutionary algorithm for solving MMO problems. In this algorithm, the phenotypic search space is partitioned, and using traditional GA operators, a simple GA searches optima in each sub-region independently. The number of partitions is identified with the use of Kohonen self-organizing map (SOM) neural network which clusters the solutions in the fitness landscape according to their fitness values. The proposed algorithm requires no prior knowledge about the fitness landscape, and only needs the GA and SOM parameters to be set. Moreover, no additional EA scheme such as the external population for elite individuals is used in the algorithm. To evaluate the performance of the proposed method, and compare the obtained results with other reports [18–20], we have used seven difficult benchmark functions and four constrained multimodal engineering problems with three performance criteria.
The paper is organized as follow; Section 2 reviews the previous relevant works; Section 3 describes the proposed algorithm in detail; Section 4 provided experimental numerical results by presenting standard mathematical and real-world engineering functions characteristics, the performance criteria and finally comparison between the obtained results with other reports. Finally, Section 5 ends the paper with the conclusions and some suggestions for further works.
Related works
Pena et al. [21] motivates the benefits, challenges and difficulties of data clustering in MMO. The authors first introduce the capabilities of data clustering in alleviating all optima in MMO. Then, they propose the use of Bayesian networks and conditional Gaussian networks to perform data clustering when the EA is used. Niching evolutionary algorithms (NEA) are the most common methods for maintaining the diversity in population, and preserving the elite solutions during all generations. Since for finding the number of niches, and increasing the performance of the algorithm, priori knowledge of the fitness landscape is necessary and the niching radius must be chosen adaptively, innovative methods based on elitism [22], niche formation [23] and subpopulation search methods [24] have been developed. Many elitism methods are based on the survival of dominant solutions during crossover and mutation, copying them into new population, or trying to liken the new children to the elite solutions. Through using adaptive/dynamic niche number and radius, creating new penalty functions, dividing elite and other solutions into different populations, niche formation methods try to increase the efficiency of the algorithm. Several clustering techniques have been reported to suitably improve the inabilities of the traditional NEA. Imrani et al. [25] uses the fuzzy C-mean algorithm to cluster the population. The output of GA with shared block is imported to the fuzzy clustering block to partition the individuals. Then, in each cycle, according to the center and radius of each cluster, all sub-populations are formed by a spatial separation operator. To determine the number of niches, the fuzzy clustering-based PSO dynamically adapts the clusters radius [26]. The population can also be divided by the fuzzy clustering technique through considering social environment principle [27]. Then, each subpopulation proceeds to actual optima by their own local cultural algorithm. Through using the k-means clustering algorithm, the center of clusters in PSO populations were identified for detecting the best neighborhood positions for the best particle in each iteration [28]. Magele et al. [29] uses the hierarchically clustering with [k (μ (τ)/ρ, λ)] evolution strategy, and completes the gap between centers of clusters to identify the k optima of the optimization function. Some researchers proposed a sharing-based niching or PSO algorithm which makes use of adaptive Macqueen’s k-mean clustering method to divide the population up to k clusters, assuming that each cluster center is associated to one optimum [30]. To reduce the niching impact in the EA, the clustering-based niching (CBN) algorithm was proposed, which specifies one species to each sub-population whereas ecological evolution of each species is completely independent. Ando et al. proposed a novel technique based on isolating subpopulations and suppressing the information of the isolated clusters from the entire population, without calculating the distance between clusters or variance/covariance matrix of the subpopulations [31]. Moreover, a full-dimensional clustering method known as CHIDID clustering high dimensional data (CHIDID) identifies clusters of solutions in multimodal optimization based on the Manhattan distance as the proximity measure, and detects the radius and center of the clusters [32]. The proximity measure index distinguishes the clusters borders. The density-clustering-based niching GA (DCNGA) was proposed to form the shape and size of clusters through adjusting the fitness on the basis of the dynamic niche population size, and using the mating restriction scheme to build up the exploitation of each cluster [33].
Methodology of the proposed algorithm
Clustering is an efficient technique to organize an unlabeled input data into a number of groups or classes, the so-called clusters, such that all objectives within a cluster are as similar as possible. The similarity measurement index (SMI) controls the shape of the clusters, i.e. their radii and centers. In the hard classification, according to SMI method, each data can belong to only one cluster, while the specific degree of membership in fuzzy classification dictates the data be included in several clusters [34].
Self-organizing map (SOM) is an unsupervised neural network which produces a low-dimensional cluster map from the input data. On the other hand, based on competitive learning and the discriminant function between neurons, the SOM transforms an incoming data (discrete or continuous) of an arbitrary dimension into a one-or two-dimensional discrete map. The winning neurons at any time are connected in the lateral network.
Genetic algorithm (GA) is a population-based heuristic search method which evolves a group of individuals in a population to the optimal point with the use of biological evolution rules such as reproduction, mutation, recombination and selection. The GA is an evolutionary algorithm which optimizes problems with the help of natural evolution.
To introduce the clustering analysis in the MMO, we combined two intelligent methods (SOM and GA) to find the number and location of multiple optima in multimodal functions, and to enhance the diversity and intensity of the algorithm. In the proposed algorithm, all the individuals of the population in the phenotype space are clustered by the SOM, which results in the identification of all species/niches with the actual optimum hopefully located at the center of the cluster. This clustering divides the fitness landscape into some sub-regions with some simple curves (or hypervolume). The number of the clusters is identified automatically by the SOM and independent from the fitness function characteristics. Then, a simple GA with a small population is run within each cluster to find the actual optimum. To increase the diversity and decrease the number of the fitness evaluations, three policies are adopted including: Before SOM clustering, the GA runs several generations (k times) until the borders of the clusters are identified, which releases the curse of a high dimensionality problem in high dimensional data and increase the efficiency of SOM [35]. Since the GA tends to converge into one optimum, in this work k is less than 10. In fact, after k generations, GA provides the SOM input data with the pre-distribution of individuals in the phenotype search space; If two optima are located within the same partitions, the number of the partitions must be increased. Then, the hamming distance between two elites within the same cluster at two consecutive iterations is smaller than the cluster’s radius. The number of the partitions is corrected by the SOM so that all conditions are satisfied; As illustrated in Fig. 1 the optima maybe is located in the border of cluster. In this case two neighbor clusters is merged together and the radius of cluster is increased. GA runs within new cluster until the obtained optima is closer to the center of cluster.

Schematic illustration of the solutions distribution over fitness function after kth generation. All solutions that located on the border of two partitions will be merged within the same partition
Figure 2 illustrated the overall flowchart of the proposed method. The algorithm does not need a large population, an external population to save elite solutions, any pervious information about the fitness function, or any extra parameter setting.

Flowchart of the proposed algorithm.
Here, we evaluate the performance of the proposed algorithm after introducing seven well-known benchmark functions. After applying the proposed algorithm, three standard performance metrics of the obtained results were calculated. The numerical findings have been compared with other similar works. Then to demonstrate the efficiency and robustness of the proposed algorithm, we apply the proposed algorithm on four constrained design engineering problem including gear train design, pressure vessel design, welded beam design, tension/compression spring design. For all engineering design problems, numerical obtained results compare with other well-known algorithms.
Description of the mathematical test functions
To test and analyze the proposed method, we consider a set of unconstrained multimodal benchmark functions with different characteristics. Table 1 shows the multimodal test functions, their initial intervals and number of global/local optima for maximization problem. Some of these functions have symmetric landscapes or equal optima (e.g. F3, F6), some have unequal optima (e.g. F1) with a varying optima distribution over the landscape (e.g. F2, F7) and some functions have both rigid and very smooth fitness landscape (e.g. F2, F6).
Test functions, initialization interval and their number of global/local optima
Test functions, initialization interval and their number of global/local optima
As discussed earlier, final aim of MMO is finding all optima in search space with acceptable diversity and convergence speed. To analysis the performance of proposed algorithm, three criteria are used to measure the performance of algorithm. Table 2 presented some performance measurements.
Performance measures
Performance measures
Partition’s Population size, number of generation, level of accuracy, gradient threshold and partition number for each objective function
Partition’s Population size, number of generation, level of accuracy, gradient threshold and partition number for each objective function
The execution time, success rate, maximum peak ratio, standard deviation, Pchi and number of function evaluations for 50 runs
For more challenging problems (F6 and F7), although the MPR is relatively low, the value of the SR is significantly near 1.00. This happens because both functions have sharp and smooth peaks simultaneously. This problem could be solved more efficiency if the iteration of GA increased adaptively.
Figure 3 shows the SOM neighbor weight distances for F5 and F7 that illustrated the border of clusters. Figure 4 shows the distribution of the solutions over the fitness landscape of F1–F4, and Fig. 5 shows the contour plot of the solution distribution for F5 and F7; as seen, the proposed algorithm has properly located all the local and global optima. SOM clustering map for F5 and F7. Solution distribution over fitness landscape of F1–F4. Contour plot of solution distribution for F5 and F7.


Comparison results with differential evolution, PSO niching and its related algorithms
Success rate and execution time comparison results with other numerical optimization algorithms
The objective of the compound gear train problem, presented by Sandgren [40], is to find the number of gears teeth such that the difference between gear ratio approaches as closely as possible to raise0.7ex1 / - lower0.7ex6.931. Obviously, the variables (number of teeth) must be integer. Figure 6 shows the relationship between the driver and follower shafts. The mathematical model of this problem is stated as Equation (4.4).
Schematic of gear train problem. Optimum results for the gear train design
This problem, introduced by Belegundu [1] and Arora [44], aims at minimizing the weight of a tension/compression spring such that constraints on the outer diameter, minimum deflection, shear stress, and surge frequency are met. The problem illustrated in Fig. 7, is mathematically expressed as Equation (4.5):
A tension/compression spring. Optimum results for the tension/compression spring problem
As shown in Fig. 8, the aim of the welded beam design problem is to minimize the overall fabrication cost of a special beam welded to a metal body with constraints on shear stress (τ), bending stress (σ), buckling load (P
c
), and end deflection (δ) as well as side constraints. The mathematical formulation of the function is:
Schematic of a pressure vessel. Optimum results for the design of welded beam Optimum results for pressure vessel problem
This problem, illustrated in Fig. 9, aims at minimizing the sum of the material, forming, and welding costs for a cylindrical vessel clapped at its ends. This problem, first proposed by Sandgren [40], can be mathematically expressed as Equation (4.12). A welded beam system.
Detecting and determining the number and radius of all niches in multimodal optimization play a vital rule in increasing the efficiency and effectiveness of the optimization algorithm.
This paper has introduced a new GA-based technique that uses self-organizing map (SOM) neural network to automatically identify the number of the niches for finding all local and global optima of multimodal problems. In the proposed algorithm, all the individuals of the population in the phenotype space are clustered by the SOM NN, which results in the identification of all species/niches with the actual optimum hopefully located at the center of the cluster. This clustering divides the fitness landscape into some sub-regions with some simple curves (or hypervolume). Then, a simple GA with a small population is run within each cluster to find the actual optimum. Except the adjusted SOM settings, the proposed algorithm does not need the niche radius, many parameters settings, and any prior knowledge about the objective function. Various optimization problems including seven benchmark unconstrained mathematical functions, and four constrained real-world engineering optimization problems were presented to demonstrate the effectiveness and robustness of the proposed algorithm. Obtained results were compared to other well-known optimization methods, based on three common performance criteria. The experimental results show that the proposed method is efficient, and superior in the number of function evaluations and convergence rate to existing well-known algorithms, and gives competitive results in accuracy and efficiency.
For the future work, it is straightforward to determine the number of clusters with mathematical methods such as multivariate statistical methods. Another interesting research work is to combine the proposed method with local search methods or other evolutionary algorithms. It would be also interesting to examine the performance of the proposed algorithm with other criteria such as Mann-Whitney U-test and two-sample Kolmogorov-Smirnov test.
