^{1}

^{1}

Artificial Bee Colony (ABC) algorithm is one of the efficient nature-inspired optimization algorithms for solving continuous problems. It has no sensitive control parameters and has been shown to be competitive with other well-known algorithms. However, the slow convergence, premature convergence, and being trapped within the local solutions may occur during the search. In this paper, we propose a new Modified Artificial Bee Colony (MABC) algorithm to overcome these problems. All phases of ABC are determined for improving the exploration and exploitation processes. We use a new search equation in employed bee phase, increase the probabilities for onlooker bees to find better positions, and replace some worst positions by the new ones in onlooker bee phase. Moreover, we use the Firefly algorithm strategy to generate a new position replacing an unupdated position in scout bee phase. Its performance is tested on selected benchmark functions. Experimental results show that MABC is more effective than ABC and some other modifications of ABC.

Most continuous optimization problems in various application areas such as science, engineering, economics, and management are nonlinear and difficult to find the optimal solutions. Several nature-inspired optimization algorithms including particle swarm optimization algorithm [

In order to address these deficiencies, some improved versions of ABC have been proposed. In 2010, Zhu and Kwong presented the Gbest-guided ABC (GABC) algorithm [

In this paper, we proposed the Modified Artificial Bee Colony (MABC) algorithm to improve all phases of ABC algorithm. We generate the initial population by using the search space division as in [

Artificial bee colony algorithm, proposed by Karaboga in 2005 [

for

where

where

If

Find the best position

Repeat steps

Firefly algorithm strategy is used in the scout bee phase of MABC algorithm, and its concept which is introduced by Yang in 2008 [

To construct MABC algorithm, all phases of ABC are determined. For the initialization, the population is generated based on search space division (SSD) proposed by He et al. [

for

where

where

where

To compare the performance of MABC algorithm with those of other methods, three experiments are conducted using different settings and performance measurements. We select 8 benchmark functions consisting of 2 functions from one of 4 different types: unimodal and separable (US), unimodal and nonseparable (UN), multimodal and separable (MS), and multimodal and nonseparable (MN). Their descriptions and 2D surface plots are shown in Table

Benchmark functions [

Function | Formulation | Type | Search range | Optimum value |
---|---|---|---|---|

Sphere | | US | | |

SumSquares | | US | | |

Rosenbrock | | UN | | |

Schwefel 2.22 | | UN | | |

Rastrigin | | MS | | |

Schwefel | | MS | | |

Ackley | | MN | | |

Griewank | | MN | | |

For the first experiment, we compare the performances of MABC, ABC [

Performance comparison of ABC, GABC, ABC/best/1, ABC/best/2, and MABC algorithms.

Functions | D | Statistics | ABC | GABC | ABC/best/1 | ABC/best/2 | MABC | Significant |
---|---|---|---|---|---|---|---|---|

| 30 | Mean | 6.38E-16 | 4.18E-16 | | | | +,+,0,0 |

SD | 1.20E-16 | 7.37E-17 | 0 | 0 | 0 | |||

60 | Mean | 2.78E-15 | 1.43E-15 | | | | +,+,0,0 | |

SD | 3.18E-16 | 1.38E-16 | 0 | 0 | 0 | |||

| 2 | Mean | 9.93E-03 | 1.68E-04 | 4.99E-04 | 4.42E-04 | | +,+,+,+ |

SD | 8.14E-03 | 1.45E-04 | 5.22E-06 | 2.39E-04 | 1.24E-10 | |||

3 | Mean | 6.45E-02 | 2.66E-03 | 5.52E-06 | 9.90E-04 | | +,+,+,+ | |

SD | 4.85E-02 | 2.12E-03 | 3.03E-06 | 6.92E-04 | 6.27E-11 | |||

| 30 | Mean | 1.34E-13 | 1.33E-15 | | | | +,0,0,0 |

SD | 7.97E-14 | 2.45E-14 | 0 | 0 | 0 | |||

60 | Mean | 2.06E-08 | 3.52E-13 | | | | 0,+,0,0 | |

SD | 1.12E-07 | 1.24E-13 | 0 | 0 | 0 | |||

| 30 | Mean | 4.70E-14 | 3.22E-14 | | 2.50E-14 | 2.73E-14 | +,+,–,0 |

SD | 5.95E-15 | 3.25E-15 | 2.84E-15 | 3.48E-15 | 1.76 E-14 | |||

60 | Mean | 1.66E-13 | 1.00E-13 | 6.62E-14 | 7.12E-14 | | +,+,+,+ | |

SD | 2.22E-14 | 6.09E-15 | 1.74E-15 | 4.14E-15 | 1.86E-14 | |||

| 30 | Mean | 1.27E-15 | 2.96E-17 | | | | +,+,0,0 |

SD | 1.46E-15 | 4.99E-17 | 0 | 0 | 0 | |||

60 | Mean | 2.51E-13 | 7.55E-16 | | | | +,+,0,0 | |

SD | 7.51E-13 | 4.13E-17 | 0 | 0 | 0 |

For the second experiment, we compare the performances of MABC, ABC [

Performance comparison of ABC, ABC-ROC, and MABC algorithms.

Functions | D | Statistics | ABC | ABC-ROC | MABC | Significant |
---|---|---|---|---|---|---|

| 30 | Mean | | 4.76E-16 | | 0,+ |

SD | 0 | 7.37E-17 | 0 | |||

| 30 | Mean | 7.01E-02 | 3.93E-02 | | +,+ |

SD | 4.15E-02 | 8.40E-04 | 1.59E-04 | |||

| 30 | Mean | | | | 0,0 |

SD | 0 | 0 | 0 | |||

| 30 | Mean | 3.45E-14 | 3.27E-14 | | 0,0 |

SD | 4.46E-15 | 3.30E-15 | 7.89E-14 | |||

| 30 | Mean | 6.66E-17 | 4.07E-17 | | +,+ |

SD | 1.49E-16 | 5.44E-17 | 0 |

Those two experiments use relatively low maximum number of generations (

Performance comparison of ABC and MABC algorithms using NS, NF, and %SD values and

Functions | D | ABC | MABC | Significant | ||||
---|---|---|---|---|---|---|---|---|

NS | NF | %SD | NS | NF | %SD | |||

| 2 | | 4051 | 7.60 | | 1878 | 5.38 | + |

5 | | 12010 | 3.83 | | 6079 | 3.54 | + | |

10 | | 26356 | 4.15 | | 13608 | 2.49 | + | |

30 | | 87678 | 2.65 | | 43695 | 2.75 | + | |

60 | | 188597 | 1.98 | | 124882 | 1.66 | + | |

| 2 | | 3427 | 4.64 | | 1588 | 0.06 | + |

5 | | 10611 | 4.79 | | 5203 | 11.02 | + | |

10 | | 23874 | 3.22 | | 12340 | 6.26 | + | |

30 | | 83755 | 6.78 | | 40377 | 4.89 | + | |

60 | | 180206 | 5.94 | | 125596 | 17.04 | + | |

| 2 | | - | - | | 31723 | 7.22 | ++ |

5 | | - | - | | 31487 | 46.42 | ++ | |

10 | | - | - | | 65308 | 51.11 | ++ | |

30 | | - | - | | 310197 | 50.90 | ++ | |

60 | | - | - | | 1897652 | 21.86 | ++ | |

| 2 | | 6938 | 0.02 | | 3197 | 0.05 | + |

5 | | 19854 | 9.64 | | 9716 | 5.47 | + | |

10 | | 43100 | 4.23 | | 22187 | 4.12 | + | |

30 | | 140991 | 4.52 | | 69473 | 3.92 | + | |

60 | | 293036 | 1.41 | | 188176 | 4.09 | + | |

| 2 | | 5962 | 9.46 | | 2234 | 8.10 | + |

5 | | 18047 | 4.26 | | 7310 | 5.95 | + | |

10 | | 40131 | 4.73 | | 17175 | 7.47 | + | |

30 | | 140089 | 4.68 | | 59496 | 19.55 | + | |

60 | | 323945 | 6.17 | | 177682 | 20.57 | + | |

| 2 | | 6173 | 9.65 | | 2129 | 6.58 | + |

5 | | 17836 | 6.30 | | 6969 | 3.66 | + | |

10 | | 40015 | 4.54 | | 15611 | 2.63 | + | |

30 | | 132011 | 3.91 | | 49996 | 3.05 | + | |

60 | | 290327 | 5.64 | | 139990 | 4.85 | + | |

| 2 | | 8292 | 4.99 | | 3551 | 2.56 | + |

5 | | 22948 | 2.99 | | 10611 | 2.70 | + | |

10 | | 48612 | 1.86 | | 23381 | 1.89 | + | |

30 | | 154908 | 1.35 | | 72955 | 2.47 | + | |

60 | | 318003 | 1.34 | | 217442 | 4.05 | + | |

| 2 | | 8033 | 11.14 | | 5985 | 37.89 | + |

5 | | 47947 | 52.66 | | 41999 | 73.14 | 0 | |

10 | | 95032 | 67.34 | | 63610 | 39.31 | + | |

30 | | 111795 | 14.40 | | 76601 | 20.79 | + | |

60 | | 207006 | 4.27 | | 201120 | 15.46 | 0 |

We also show the convergence graphs of MABC and ABC for

Convergence graphs of ABC and MABC algorithms.

We have presented an efficient modification of ABC algorithm called MABC which improves all phases of ABC algorithm: the initial population is generated by using search space division, the new search equations are used in employed bee and onlooker bee phases, the opportunity of onlooker bee to find better solutions is increased and some worst positions are replaced by the new ones depending on the best position, and the unupdated positions are improved in scout bee phase. Extensive experiments show that MABC converges faster than ABC and it performs better than ABC and several previously proposed modification methods of ABC.

The data used to support the findings of this current study are included within the article.

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Amnat Panniem acknowledges the Development and Promotion for Science and Technology talents project (DPST) for the financial support.