Interest in multimodal optimization is expanding rapidly, since many practical engineering problems demand the localization of multiple optima within a search space. On the other hand, the cuckoo search (CS) algorithm is a simple and effective global optimization algorithm which can not be directly applied to solve multimodal optimization problems. This paper proposes a new multimodal optimization algorithm called the multimodal cuckoo search (MCS). Under MCS, the original CS is enhanced with multimodal capacities by means of (1) the incorporation of a memory mechanism to efficiently register potential local optima according to their fitness value and the distance to other potential solutions, (2) the modification of the original CS individual selection strategy to accelerate the detection process of new local minima, and (3) the inclusion of a depuration procedure to cyclically eliminate duplicated memory elements. The performance of the proposed approach is compared to several state-of-the-art multimodal optimization algorithms considering a benchmark suite of fourteen multimodal problems. Experimental results indicate that the proposed strategy is capable of providing better and even a more consistent performance over existing well-known multimodal algorithms for the majority of test problems yet avoiding any serious computational deterioration.
Optimization is a field with applications in many areas of science, engineering, economics, and others, where mathematical modelling is used [
Evolutionary algorithms (EA), which are considered to be members of the stochastic group, have been developed by a combination of rules and randomness that mimics several natural phenomena. Such phenomena include evolutionary processes such as the evolutionary algorithm (EA) proposed by Fogel et al. [
Most of research work on EA aims for locating the global optimum [
EA perform well for locating a single optimum but fail to provide multiple solutions [
As alternative approaches, other researchers have employed artificial immune systems (AIS) to solve multimodal optimization problems. Some examples are the clonal selection algorithm [
Every EA needs to address the issue of exploration and exploitation of the search space [
Multimodal optimization requires a sufficient amount of exploration of the population agents in hyperspace so that all the local and global attractors can be successfully and quickly detected [
Recently, a novel nature-inspired algorithm, called the cuckoo search (CS) algorithm [
This paper presents a new multimodal optimization algorithm called the multimodal cuckoo search (MCS). The method combines the CS algorithm with a new memory mechanism which allows an efficient registering of potential local optima according to their fitness value and the distance to other potential solutions. The original CS selection strategy is mainly conducted by an elitist decision where the best individuals prevail. In order to accelerate the detection process of potential local minima in our method, the selection strategy is modified to be influenced by individuals that are contained in the memory mechanism. During each generation, eggs (individuals) that exhibit different positions are included in the memory. Since such individuals could represent to the same local optimum, a depuration procedure is also incorporated to cyclically eliminate duplicated memory elements. The performance of the proposed approach is compared to several state-of-the-art multimodal optimization algorithms considering a benchmark suite of 14 multimodal problems. Experimental results indicate that the proposed strategy is capable of providing better and even more consistent performance over the existing well-known multimodal algorithms for the majority of test problems avoiding any serious computational deterioration.
The paper is organized as follows. Section
CS is one of the latest nature-inspired algorithms, developed by Yang and Deb [
Cuckoo birds lay their eggs in the nests of other host birds (usually other species) with amazing abilities such as selecting nests containing recently laid eggs and removing existing eggs to increase the hatching probability of their own eggs. Some of the host birds are able to combat this parasitic behavior of cuckoos and throw out the discovered alien eggs or build a new nest in a distinct location. This cuckoo breeding analogy is used to develop the CS algorithm. Natural systems are complex, and therefore they cannot be modeled exactly by a computer algorithm in its basic form. Simplification of natural systems is necessary for successful implementation in computer algorithms. Yang and Deb [ An egg represents a solution and is stored in a nest. An artificial cuckoo can lay only one egg at a time. The cuckoo bird searches for the most suitable nest to lay the eggs in (solution) to maximize its eggs’ survival rate. An elitist selection strategy is applied, so that only high-quality eggs (best solutions near the optimal value) which are more similar to the host bird’s eggs have the opportunity to develop (next generation) and become mature cuckoos. The number of host nests (population) is fixed. The host bird can discover the alien egg (worse solutions away from the optimal value) with a probability of
From the implementation point of view, in the CS operation, a population,
One of the most powerful features of cuckoo search is the use of Lévy flights to generate new candidate solutions (eggs). Under this approach, a new candidate solution,
Under this operation, a set of individuals (eggs) are probabilistically selected and replaced with a new value. Each individual,
After producing
CS is a relatively simple algorithm with only three adjustable parameters:
(1) (2) Initialize (3) (5) (6) (7) (8) (9)
From Algorithm
In CS, individuals emulate eggs which interact in a biological system by using evolutionary operations based on the breeding behavior of some cuckoo species. One of the most powerful features of CS is the use of Lévy flights to generate new candidate solutions. Under this approach, candidate solutions are modified by employing many small changes and occasionally large jumps. As a result, CS can substantially improve the relationship between exploration and exploitation, still enhancing its search capabilities. Despite such characteristics, the CS method still fails to provide multiple solutions in a single execution. In the proposed MCS approach, the original CS is adapted to include multimodal capacities. In particular, this adaptation contemplates
In order to implement these modifications, the proposed MCS divides the evolution process in three asymmetric states. The first state (
Division of the evolution process according to MCS.
The next sections examine the operators suggested by MCS as adaptations of CS to provide multimodal capacities. These operators are (D) the memory mechanism, (E) new selection strategy, and (F) depuration procedure.
In the MCS evolution process, a population,
This phase is applied only once within the optimization process. Such an operation is achieved in the null iteration (
This phase is applied from the first (
In order to implement this procedure, the normalized distance
By using the normalized distance
Graphical illustration of the significant fitness value rule process.
The decision on whether
(1) (2) Calculate (3) Calculate (5) (6) (7) (8) (9)
Effect of the probability function
If the particle represents a possible local optimum, its inclusion inside the memory
The original CS selection strategy is mainly conducted by an elitist decision where the best individuals in the current population prevail. Such an operation, defined in this paper as operator C (Section
Under the new selection procedure (operator E), the final population
During the evolution process, the memory
Memory elements tend to concentrate on optimal points (good fitness values), whereas element concentrations are enclosed by areas holding bad fitness values. The main idea in the depuration procedure is to find the distances among concentrations. Such distances, considered as depuration ratios, are later employed to delete all elements inside them, except for the best element in terms of their fitness values.
The method used by the depuration procedure in order to determine the distance between two concentrations is based on the element comparison between the concentration corresponding to the best element and the concentration of the nearest optimum in the memory. In the process, the best element
The preprocessing method must
A special case can be considered when only one concentration is contained within the memory. This case can happen because the optimization problem has only one optimum or because all the other concentrations have been already detected. Under such circumstances, the condition where
In order to find the distances among concentrations, the depuration procedure is conducted in Procedure
(1) Define two new temporal vectors operations whereas the elements of represents the best one. On other hand, (2) Store the best element (3) Calculate the Euclidian distances where (4) Sort the distances each distance (5) Calculate the depuration ratio (6) Remove all elements inside (7) Sort the elements of (8) Stop, if there are more concentrations, otherwise return to Step 2.
At the end of the above procedure, the vector
In order to illustrate the depuration procedure, Figure
Depuration procedure. (a) Initial memory configuration, (b) vector
Once the new operators (D) memory mechanism, (E) new selection strategy, and (F) depuration procedure have been defined, the proposed MCS algorithm can be summarized by Algorithm
(1) (2) Initialize (3) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14)
This section presents the performance of the proposed algorithm beginning from Section
This section examines the performance of the proposed MCS by using a test suite of fourteen benchmark functions with different complexities. Table
In the study, five performance indexes are compared: the effective peak number (EPN), the maximum peak ratio (MPR), the peak accuracy (PA), the distance accuracy (DA), and the number of function evaluations (NFE). The first four indexes assess the accuracy of the solution, whereas the last measures the computational cost.
The effective peak number (EPN) expresses the amount of detected peaks. An optimum
The experiments compare the performance of MCS against the crowding differential evolution (CDE) [
Since the approach solves real-valued multimodal functions and a fair comparison must be assured, we have used for the GA approaches a consistent real coding variable representation and uniform operators for crossover and mutation. The crossover probability of
In case of the MCS algorithm, the parameters are set to
To avoid relating the optimization results to the choice of a particular initial population and to conduct fair comparisons, we perform each test 50 times, starting from various randomly selected points in the search domain as it is commonly done in the literature.
All algorithms have been tested in MatLAB© over the same Dell Optiplex GX520 computer with a Pentium-4 2.66G-HZ processor, running Windows XP operating system over 1 Gb of memory. The sections below present experimental results for multimodal optimization problems which have been divided into two groups. The first one considers functions
This section presents a performance comparison for different algorithms solving the multimodal problems
Table
Performance comparison among multimodal optimization algorithms for the test functions
Function | Algorithm | EPN | MPR | PA | DA | NFE |
---|---|---|---|---|---|---|
|
CDE | 3 (0) | 0.9996 (0.0004) | 0.0995 (0.1343) | 0.0305 (0.0169) | 27432 (1432) |
SDE | 2.96 (0.18) | 0.9863 (0.0523) | 1.3053 (0.8843) | 0.1343 (0.0483) | 31435 (2342) | |
CP | 2.93 (0.25) | 0.9725 (0.0894) | 1.3776 (1.0120) | 0.1432 (0.0445) | 34267 (4345) | |
AEGA | 3 (0) | 0.9932 (0.0054) | 0.0991 (0.2133) | 0.1031 (0.0065) | 30323 (2316) | |
CSA | 2.91 (0.20) | 0.9127 (0.0587) | 1.4211 (1.0624) | 0.2188 (0.0072) | 25050 (0) | |
AiNet | 2.94 (0.20) | 0.9002 (0.0901) | 1.3839 (1.0214) | 0.1760 (0.0067) | 25050 (0) | |
MCS | 3 (0) | 1 (0) | 0.0005 (0.0001) | 0.0007 (0.0002) | 25433 (54) | |
|
||||||
|
CDE | 12 (0) | 1 (0) | 0.0015 (0.0010) | 0.2993 (0.0804) | 26321 (1934) |
SDE | 12 (0) | 1 (0) | 0.0018 (0.0006) | 0.3883 (0.0657) | 32563 (1453) | |
CP | 12 (0) | 1 (0) | 0.0009 (0.0003) | 0.2694 (0.0506) | 30324 (3521) | |
AEGA | 12 (0) | 0.9987 (0.0011) | 0.0988 (0.0097) | 0.3225 (0.0058) | 29954 (1987) | |
CSA | 11.92 (0.41) | 0.9011 (0.0091) | 0.1055 (0.0121) | 0.4257 (0.0096) | 25050 (0) | |
AiNet | 11.96 (0.30) | 0.9256 (0.0074) | 0.0996 (0.0105) | 0.3239 (0.0081) | 25050 (0) | |
MCS | 12 (0) | 1 (0) | 0.0001 (0.0001) | 0.0073 (0.0002) | 25188 (42) | |
|
||||||
|
CDE | 23.03 (1.77) | 0.8780 (0.0956) | 180.47 (265.54) | 9.3611 (6.4667) | 28654 (2050) |
SDE | 20.06 (2.59) | 0.6980 (0.1552) | 155.52 (184.59) | 14.892 (7.5935) | 31432 (1017) | |
CP | 21.03 (1.90) | 0.7586 (0.1125) | 192.32 (146.21) | 11.195 (3.1490) | 32843 (2070) | |
AEGA | 20.45 (1.21) | 0.7128 (0.1493) | 134.47 (157.37) | 16.176 (8.0751) | 30965 (2154) | |
CSA | 18.02 (2.41) | 0.5875 (0.1641) | 185.64 (104.24) | 21.057 (10.105) | 25050 (0) | |
AiNet | 19.24 (2.01) | 0.6123 (0.1247) | 179.35 (164.37) | 18.180 (9.1112) | 25050 (0) | |
MCS | 24.66 (1.01) | 0.9634 (0.0397) | 2.9408 (4.3888) | 15.521 (8.0834) | 25211 (37) | |
|
||||||
|
CDE | 3.46 (1.00) | 0.4929 (0.1419) | 395.46 (305.01) | 210.940 (72.99) | 29473 (3021) |
SDE | 3.73 (0.86) | 0.5301 (0.1268) | 544.48 (124.11) | 206.65 (160.84) | 33421 (1342) | |
CP | 3.26 (0.63) | 0.4622 (0.0869) | 192.32 (146.21) | 199.41 (68.434) | 29342 (1543) | |
AEGA | 3.51 (0.52) | 0.5031 (0.0754) | 188.23 (101.54) | 187.21 (33.211) | 32756 (1759) | |
CSA | 3.12 (0.11) | 0.4187 (0.0464) | 257.54 (157.18) | 278.14 (47.120) | 25050 (0) | |
AiNet | 3.20 (0.47) | 0.5164 (0.0357) | 197.24 (86.21) | 178.23 (29.191) | 25050 (0) | |
MCS | 6.26 (0.82) | 0.8919 (0.1214) | 41.864 (16.63) | 39.938 (12.962) | 25361 (81) | |
|
||||||
|
CDE | 22.96 (2.25) | 0.4953 (0.0496) | 0.2348 (0.0269) | 17.83 (7.1214) | 28543 (1345) |
SDE | 31.40 (2.35) | 0.6775 (0.0503) | 0.7005 (0.0849) | 3.9430 (0.9270) | 30543 (1576) | |
CP | 21.33 (2.00) | 0.4599 (0.0436) | 1.3189 (0.5179) | 10.766 (1.9245) | 28743 (2001) | |
AEGA | 30.11 (2.01) | 0.6557 (0.0127) | 0.8674 (0.0296) | 2.870 (1.6781) | 29765 (1911) | |
CSA | 24.79 (3.14) | 0.5107 (0.0308) | 0.2121 (0.0187) | 8.7451 (3.470) | 25050 (0) | |
AiNet | 26.57 (2.35) | 0.5005 (0.0471) | 0.2087 (0.0324) | 6.472 (2.4187) | 25050 (0) | |
MCS | 33.03 (2.07) | 0.8535 (0.0251) | 0.1617 (0.0283) | 4.6012 (1.4206) | 25159 (49) | |
|
||||||
|
CDE | 6 (0) | 0.9786 (0.0157) | 0.1280 (0.0942) | 0.1231 (0.0182) | 30234 (2410) |
SDE | 5.86 (0.43) | 0.9185 (0.0685) | 0.3842 (0.1049) | 0.1701 (0.0222) | 31453 (1154) | |
CP | 6 (0) | 0.9423 (0.0123) | 0.3460 (0.0741) | 0.1633 (0.0149) | 30231 (832) | |
AEGA | 5.11 (0.64) | 0.8945 (0.0387) | 0.4004 (0.0879) | 0.1224 (0.0101) | 31932 (943) | |
CSA | 4.97 (0.24) | 0.8174 (0.0631) | 0.4797 (0.0257) | 0.1295 (0.0054) | 25050 (0) | |
AiNet | 5.23 (1) | 0.9012 (0.0197) | 0.3974 (0.0702) | 0.1197 (0.0054) | 25050 (0) | |
MCS | 6 (0) | 0.9993 (0.0002) | 0.0037 (0.0014) | 0.0006 (0.0002) | 25463 (37) | |
|
||||||
|
CDE | 30.36 (2.77) | 0.6200 (0.0566) | 2.2053 (1.8321) | 330.51 (47.531) | 33423 (1021) |
SDE | 35.06 (5.15) | 0.7162 (0.1051) | 1.9537 (0.9290) | 243.39 (140.04) | 32832 (995) | |
CP | 35.06 (3.98) | 0.7164 (0.0812) | 2.4810 (1.4355) | 250.11 (78.194) | 31923 (834) | |
AEGA | 32.51 (2.59) | 0.7004 (0.0692) | 2.0751 (0.9561) | 278.78 (46.225) | 33821 (1032) | |
CSA | 31.78 (1.14) | 0.6764 (0.4100) | 1.9408 (0.9471) | 347.21 (38.147) | 25050 (0) | |
AiNet | 34.42 (1.80) | 0.7237 (0.0257) | 1.8632 (0.0754) | 261.27 (61.217) | 25050 (0) | |
MCS | 38.86 (1.54) | 0.8014 (0.0313) | 0.2290 (0.0166) | 49.53 (7.1533) | 25643 (97) |
Considering the EPN index, in all functions
By analyzing the MPR index in Table
Considering thePA index, MCS presents the best performance. Since PA evaluates the accumulative differences of fitness values, it could drastically change when one or several peaks are not detected (function
Analyzing the NFE measure in Table
It can be easily deduced from such results that the MCS algorithm is able to produce better search locations (i.e., a better compromise between exploration and exploitation) in a more efficient and effective way than other multimodal search strategies by using an acceptable number of function evaluations.
This section presents a performance comparison for different algorithms solving the multimodal problems
Performance comparison among multimodal optimization algorithms for the test functions
Function | Algorithm | EPN | MPR | PA | DA | NFE |
---|---|---|---|---|---|---|
|
CDE | 24.16 (2.77) | 0.9682 (0.0318) | 2.4873 (2.4891) | 0.8291 (0.8296) | 28453 (2345) |
SDE | 18.56 (2.51) | 0.4655 (0.0636) | 30.21 (43.132) | 2.1162 (0.6697) | 31328 (945) | |
CP | 8.80 (1.95) | 0.2222 (0.0509) | 60.52 (56.056) | 6.9411 (0.9500) | 30743 (1032) | |
AEGA | 15.67 (2.21) | 0.3934 (0.0534) | 40.56 (10.111) | 3.2132 (0.2313) | 32045 (684) | |
CSA | 14.54 (3.12) | 0.3323 (0.0431) | 48.34 (8.343) | 3.8232 (0.4521) | 25050 (0) | |
AiNet | 16.78 (2.63) | 0.4264 (0.0321) | 37.32 (10.432) | 2.9832 (0.5493) | 25050 (0) | |
MCS | 24.73 (0.49) | 0.9898 (0.0170) | 0.900 (1.4771) | 0.2584 (0.1275) | 25582 (74) | |
|
||||||
|
CDE | 2.1 (0.20) | 0.7833 (0.0211) | 23.235 (7.348) | 2.9354 (0.3521) | 30074 (1621) |
SDE | 2.3 (0.31) | 0.8245 (0.0145) | 20.745 (8.012) | 2.6731 (0.8621) | 31497 (245) | |
CP | 2.4 (0.25) | 0.8753 (0.0301) | 18.563 (5.865) | 2.3031 (0.7732) | 29746 (1114) | |
AEGA | 2.1 (0.10) | 0.7879 (0.0174) | 22.349 (6.231) | 3.0021 (0.6431) | 30986 (1027) | |
CSA | 2 (0) | 0.7098 (0.0025) | 32.859 (8.659) | 3.1432 (0.5431) | 25050 (0) | |
AiNet | 2 (0) | 0.7165 (0.0076) | 31.655 (6.087) | 3.2265 (0.3467) | 25050 (0) | |
MCS | 4.74 (0.25) | 0.9154 (0.0163) | 2.3515 (2.511) | 0.0109 (0.0428) | 26043 (112) | |
|
||||||
|
CDE | 4.12 (0.78) | 0.7285 (0.0342) | 3.546 (1.034) | 3.0132 (0.5321) | 29597 (1034) |
SDE | 4.64 (0.54) | 0.7893 (0.0532) | 3.054 (1.127) | 2.864 (0.3271) | 32743 (964) | |
CP | 4 (0) | 0.7092 (0.0298) | 3.881 (1.154) | 3.3412 (0.4829) | 28463 (1142) | |
AEGA | 3.43 (0.33) | 0.6734 (0.0745) | 4.212 (1.312) | 3.9121 (0.8732) | 29172 (1044) | |
CSA | 3.76 (0.51) | 0.6975 (0.0828) | 4.002 (1.197) | 3.5821 (0.7498) | 25050 (0) | |
AiNet | 4 (0) | 0.7085 (0.0385) | 3.797 (1.002) | 3.3002 (0.6496) | 25050 (0) | |
MCS | 6.82 (0.75) | 0.9274 (0.0137) | 0.423 (0.064) | 0.6842 (0.0598) | 25873 (88) | |
|
||||||
|
CDE | 10.36 (1.60) | 0.8572 (0.1344) | 1.859 (0.952) | 0.5237 (0.0321) | 34156 (2321) |
SDE | 10.36 (2.04) | 0.8573 (0.1702) | 1.268 (0.581) | 0.6927 (0.0921) | 32132 (975) | |
CP | 9.16 (1.76) | 0.7577 (0.1462) | 2.536 (0.890) | 0.6550 (0.0440) | 30863 (1002) | |
AEGA | 8.34 (1.32) | 0.6954 (0.1021) | 4.432 (1.232) | 0.7021 (0.0231) | 31534 (852) | |
CSA | 8 (0) | 0.6532 (0.1378) | 4.892 (1.003) | 0.7832 (0.0432) | 25050 (0) | |
AiNet | 8 (0) | 0.6438 (0.2172) | 4.921 (1.102) | 0.7753 (0.0326) | 25050 (0) | |
MCS | 12 (0) | 0.9998 (0.0003) | 0.011 (0.008) | 0.0060 (0.0012) | 25789 (121) | |
|
||||||
|
CDE | 6.21 (1.54) | 0.6986 (0.1893) | 4.029 (1.401) | 5.1514 (1.0351) | 31456 (975) |
SDE | 5.34 (2.03) | 0.5812 (0.1992) | 5.075 (1.071) | 6.0117 (1.1517) | 32481 (1002) | |
CP | 6.04 (0.61) | 0.6312 (0.1771) | 4.657 (1.321) | 5.3177 (1.7517) | 33123 (563) | |
AEGA | 4 (0) | 0.4112 (0.0343) | 6.341 (1.034) | 7.8751 (1.652) | 32634 (843) | |
CSA | 4 (0) | 0.3998 (0.0212) | 6.151 (1.121) | 7.7976 (1.0043) | 25050 (0) | |
AiNet | 4 (0) | 0.4034 (0.0973) | 6.003 (1.735) | 7.6613 (1.1219) | 25050 (0) | |
MCS | 9.65 (1.45) | 0.9411 (0.0087) | 0.015 (0.009) | 0.1043 (0.0864) | 25832 (65) | |
|
||||||
|
CDE | 13 (0) | 1 (0) | 0.010 (0.003) | 0.031 (0.0098) | 31572 (962) |
SDE | 13 (0) | 1 (0) | 0.008 (0.004) | 0.021 (0.0065) | 33435 (1201) | |
CP | 13 (0) | 1 (0) | 0.015 (0.002) | 0.037 (0.0065) | 31834 (799) | |
AEGA | 10.66 (1.21) | 0.8323 (0.0343) | 0.088 (0.033) | 0.096 (0.0098) | 32845 (1182) | |
CSA | 8.94 (2.34) | 0.7998 (0.0564) | 0.110 (0.088) | 0.113 (0.0104) | 25050 (0) | |
AiNet | 10.32 (1.52) | 0.8297 (0.0206) | 0.098 (0.075) | 0.087 (0.0086) | 25050 (0) | |
MCS | 13 (0) | 0.9997 (0.0134) | 0.011 (0.007) | 0.023 (0.0016) | 25740 (101) | |
|
||||||
|
CDE | 3.04 (1.34) | 0.6675 (0.0754) | 0.809 (0.101) | 176.54 (21.23) | 32273 (1004) |
SDE | 3.55 (0.56) | 0.7017 (0.0487) | 0.675 (0.079) | 115.43 (34.21) | 30372 (965) | |
CP | 2.87 (1.23) | 0.6123 (0.0861) | 1.081 (0.201) | 202.65 (42.81) | 31534 (1298) | |
AEGA | 3 (0) | 0.6686 (0.0542) | 0.894 (0.076) | 150.32 (57.31) | 29985 (1745) | |
CSA | 3 (0) | 0.6691 (0.0231) | 0.897 (0.045) | 161.57 (27.92) | 25050 (0) | |
AiNet | 3.50 (0.25) | 0.7001 (0.0765) | 0.668 (0.097) | 121.43 (43.12) | 25050 (0) | |
MCS | 7.13 (0.81) | 0.9859 (0.0094) | 0.023 (0.010) | 17.62 (4.13) | 25786 (92) |
Test functions used in the experimental study.
|
|
|
Graph |
---|---|---|---|
|
|
3 |
|
|
|||
|
|
12 |
|
|
|||
|
|
25 |
|
|
|||
|
|
7 |
|
|
|||
|
|
36 |
|
|
|||
|
|
6 |
|
|
|||
|
|
48 |
|
|
|||
|
|
25 |
|
|
|||
|
|
5 |
|
|
|||
|
|
8 |
|
|
|||
|
|
12 |
|
|
|||
|
|
12 |
|
|
|||
|
|
13 |
|
|
|||
|
|
8 |
|
The goal of multimodal optimizers is to find as many as possible global optima and good local optima. The main objective in these experiments is to determine whether MCS is able to find not only optima with prominent fitness value, but also optima with low fitness values. Table
Considering the EPN measure, it is observed that MCS finds more optimal solutions for the multimodal problems
Functions
For function
In terms of number of the maximum peak ratios (MPR), MCS has obtained the best score for all the multimodal problems. On the other hand, the rest of the algorithms present different accuracy levels.
A close inspection of Table
Similar conclusions to those in Section
The cuckoo search (CS) algorithm has been recently presented as a new heuristic algorithm with good results in real-valued optimization problems. In CS, individuals emulate eggs (contained in nests) which interact in a biological system by using evolutionary operations based on the breeding behavior of some cuckoo species. One of the most powerful features of CS is the use of Lévy flights to generate new candidate solutions. Under this approach, candidate solutions are modified by employing many small changes and occasionally large jumps. As a result, CS can substantially improve the relationship between exploration and exploitation, still enhancing its search capabilities. Despite such characteristics, the CS method still fails to provide multiple solutions in a single execution. In order to overcome such inconvenience, this paper proposes a new multimodal optimization algorithm called the multimodal cuckoo search (MCS). Under MCS, the original CS is enhanced with multimodal capacities by means of
MCS has been experimentally evaluated over a test suite of the fourteen benchmark multimodal functions. The performance of MCS has been compared to some other existing algorithms including the crowding differential evolution (CDE) [
For list of benchmark functions, see Table
The authors declare that there is no conflict of interests regarding the publication of this paper.
The proposed algorithm is part of the optimization system used by a biped robot supported under the Grant CONACYT CB 181053.