5
A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search Yanming Duan a School of Hechi University, Guangxi 546300, China a [email protected] Keywords: Differential, evolution algorithm, bat algorithm, convergence speed. Abstract. In order to solve the problems of bat algorithm including low convergence accuracy, slow convergence velocity and easily falling into local optimization, this paper presents an improved bat algorithm based on differential evolution algorithm. The mutation, crossover and selection mechanism of differential evolution algorithm is introduced into bat algorithm, the bat algorithm lack of mutation mechanism has the variation mechanism, so as to enhance the diversity of bat algorithm, the population can avoid falling into local optimum, which enhances the ability of global optimization for bat algorithm. The Simulation results of three standard benchmark functions show that the improved algorithm can greatly improve the convergence precision, convergence speed and robustness, and can effectively discourage the premature convergence. Introduction As a burgeoning evolutionary computation technique, swarm intelligence algorithm has become a research hotspot which attracts an increasing of researchers. The Bat Algorithm (Bat Algorithm, BA) [1] is a new heuristic swarm intelligence Algorithm which put forwarded by Xinshe Yang in 2010. In the process of evolution, it changes the behavior of bats according to the size and the loudness of pulse transmitting frequency. So that it can make a mutual transformation between global search and local search by dynamic control. And the problem of trapping into local optimum can be avoided in the algorithm. Therefore, the bat algorithm solves equilibrium problems of the global search and local search well and has upper level convergence. Cuckoo Search (CS) [2] is a new heuristic swarm intelligence algorithm, which proposed by Xinshe Yang in 2009.It’s a novel swarm intelligent optimization algorithm, which grew out of simulating biological characteristics of cuckoo egg-laying behavior in nature with few parameters, implement easily and particularly effective in global optimization, etc. However, the problems of slow convergence in later convergence phase and low convergence precision and trap into local minimum easily, which limit the application of CS domain severely. For this purpose, this paper proposes a hybrid optimization algorithm (BACS) composed of The Bat Algorithm and The Cuckoo Optimization Algorithm. The algorithm improves the convergence by using dynamic transformation strategy of the bat algorithm. The simulation experimental result shows that compared with the basic cuckoo optimization algorithm, BACS algorithm has improve significantly in local optimization and precision optimization, and avoid the premature convergence problem effectively. BACS algorithm BA algorithm. BA algorithm is random search algorithm, which simulated the bats using sonar to detect prey and avoid obstacles in nature. In other words, it’s a simulation of bats using ultrasound to sense the most basic obstacles or prey detection, orientation ability, and it was associated with optimal objective function. In the bionic principles of BA algorithm, it for NP bat population individual map for NP feasible solutions in D dimension. It simulated optimization and search as individual movement of bat population and in search of prey. Then, Fitness function value of the solving problem is used to measure the pros and cons of the bat’s location. Finally it places the individual the evolution process of analogy used in good feasible solution for the iterative process of the poorer feasible solution. Advanced Materials Research Vols. 926-930 (2014) pp 2889-2892 Online available since 2014/May/23 at www.scientific.net © (2014) Trans Tech Publications, Switzerland doi:10.4028/www.scientific.net/AMR.926-930.2889 All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of TTP, www.ttp.net. (ID: 128.250.144.144, University of Melbourne, Melbourne, Australia-10/10/14,11:10:17)

A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

Embed Size (px)

Citation preview

Page 1: A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

Yanming Duana

School of Hechi University, Guangxi 546300, China

[email protected]

Keywords: Differential, evolution algorithm, bat algorithm, convergence speed.

Abstract. In order to solve the problems of bat algorithm including low convergence accuracy, slow

convergence velocity and easily falling into local optimization, this paper presents an improved bat

algorithm based on differential evolution algorithm. The mutation, crossover and selection

mechanism of differential evolution algorithm is introduced into bat algorithm, the bat algorithm lack

of mutation mechanism has the variation mechanism, so as to enhance the diversity of bat algorithm,

the population can avoid falling into local optimum, which enhances the ability of global optimization

for bat algorithm. The Simulation results of three standard benchmark functions show that the

improved algorithm can greatly improve the convergence precision, convergence speed and

robustness, and can effectively discourage the premature convergence.

Introduction

As a burgeoning evolutionary computation technique, swarm intelligence algorithm has become a

research hotspot which attracts an increasing of researchers. The Bat Algorithm (Bat Algorithm, BA)

[1] is a new heuristic swarm intelligence Algorithm which put forwarded by Xinshe Yang in 2010. In

the process of evolution, it changes the behavior of bats according to the size and the loudness of pulse

transmitting frequency. So that it can make a mutual transformation between global search and local

search by dynamic control. And the problem of trapping into local optimum can be avoided in the

algorithm. Therefore, the bat algorithm solves equilibrium problems of the global search and local

search well and has upper level convergence.

Cuckoo Search (CS) [2] is a new heuristic swarm intelligence algorithm, which proposed by

Xinshe Yang in 2009.It’s a novel swarm intelligent optimization algorithm, which grew out of

simulating biological characteristics of cuckoo egg-laying behavior in nature with few parameters,

implement easily and particularly effective in global optimization, etc. However, the problems of

slow convergence in later convergence phase and low convergence precision and trap into local

minimum easily, which limit the application of CS domain severely. For this purpose, this paper

proposes a hybrid optimization algorithm (BACS) composed of The Bat Algorithm and The Cuckoo

Optimization Algorithm. The algorithm improves the convergence by using dynamic transformation

strategy of the bat algorithm. The simulation experimental result shows that compared with the basic

cuckoo optimization algorithm, BACS algorithm has improve significantly in local optimization and

precision optimization, and avoid the premature convergence problem effectively.

BACS algorithm

BA algorithm. BA algorithm is random search algorithm, which simulated the bats using sonar to

detect prey and avoid obstacles in nature. In other words, it’s a simulation of bats using ultrasound to

sense the most basic obstacles or prey detection, orientation ability, and it was associated with optimal

objective function. In the bionic principles of BA algorithm, it for NP bat population individual map

for NP feasible solutions in D dimension. It simulated optimization and search as individual

movement of bat population and in search of prey. Then, Fitness function value of the solving

problem is used to measure the pros and cons of the bat’s location. Finally it places the individual the

evolution process of analogy used in good feasible solution for the iterative process of the poorer

feasible solution.

Advanced Materials Research Vols. 926-930 (2014) pp 2889-2892Online available since 2014/May/23 at www.scientific.net© (2014) Trans Tech Publications, Switzerlanddoi:10.4028/www.scientific.net/AMR.926-930.2889

All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of TTP,www.ttp.net. (ID: 128.250.144.144, University of Melbourne, Melbourne, Australia-10/10/14,11:10:17)

Page 2: A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

CS algorithm. In basic CS algorithm, it initializes the position of N bird nests random within the

feasible solution space in the objective function definition. In the process of evolution, the optimal

fitness values of the bird's nest positions are reserved to the next generation at first. Next Levy Flight

mechanism is used for updating the location of the bird's nest, and gain a new position of bird's nest.

At the end, compared obey uniform distribution random number R ∈ [0, 1] with the probability of

foreign egg pa, if R > pa, changing the location of the bird's nest randomly, so as to get a new set of

bird's nest. The optimal location of bird’s nest and the optimal solution should be sure at present as

well as.

In the CS algorithm, the cuckoo finding the path of the bird's nest and location update according to

the following formula (1) in each iteration[3].

⊕+=+

αt

i

t

i xx1

Lévy( λ ) (1)

As shown: 1+tix and

t

ix are position vectors of the bird's nest in the t generation and the 1+t

generation respectively. Andα is the step length adjustment factor, α is a constant greater than zero,

according to different situations may take different values, generally set α = 0.01, ⊕ is a

point-to-point multiplication, Lévy( λ ) is a random search path.

BACS algorithm theory. Based on basic CS algorithm, it draws the bat algorithm into the basic

CS algorithm, and makes their respective advantages together, then proposes a hybrid optimization

algorithm (BACS) bat algorithm and cuckoo optimization algorithm.

Based on the basic algorithm of the cuckoo, the bird's nest location t

ix do not access to the next

iteration (t + 1) directly after the evolution, but access to BA algorithm continue to update the bird's

nest position through the dynamic transformation strategy. First of all, compared a uniformly

distributed random number with the launch of and pulse rate, if it meets the conditions, a random

disturbance is carried out for the optimal position of the bird's nest with current, and gain new bird's

nest. Then carries on the cross-border process and evaluates the corresponding of the fitness value.

Making a comparison between loudness and uniformly distributed random number, and updating the

bird's nest position in basic cuckoo algorithm by applying the new if conditions are met. Updating the

launch of loudness and pulse rate as well as. Finally evaluates the fitness values of the bird's nest, and

finds out the current optimal position of the bird's nest and the optimal value, and enter the next

iteration, continue to search and update position through adopting the basic cuckoo algorithm. It

solves the balance of global search and local search well in algorithm. Thus improving the

convergence of the algorithm, and avoid it falling into local optimum and get the global optimal

solution. And it enhances the ability of local optimization and convergent precision at the same time.

Concrete implementations of the BACS algorithm. Concrete implementations of the BACS

algorithm are as follows:

Step1 to initialize all parameters of the BACS algorithm, attenuation coefficient of pulse volume

alf , bird's nest number n, the detection probability of foreign eggs Pa and the position of the random

initialization of the bird's nest, etc.

Step2 calculated fitness value of the bird's nest the according to the objective function, and to

ensure the optimal position of the bird's nest and optimal value;

Step3 keep made the optimal position of the bird's nest gained in the last generation, Levy Flight

mechanism are used to update the location of the bird's nest, get new bird's nest, and cross-border

processing for the location of the bird's nest;

Step4 Using the corresponding fitness value of a new set of bird's nest l location which gained in

the step3 by the objective function, and compared with the corresponding fitness value of the bird's

nest position gained in last generation. if the data is better than data of the last generation, then replace

with the current fitness value, and update the bird's nest with its corresponding position, and then

determine the current optimal location of the bird's nest and the optimal value;

2890 Progress in Applied Sciences, Engineering and Technology

Page 3: A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

Step5 Comparing the detection probability of foreign eggs pa with obey uniform distribution

random number R ∈ [0, 1] , if R > pa, change the location of the bird's nest randomly, so as to get a

new set of bird's nest;

Step6 Taking the data gained in step5 as the initial point of bat algorithm and to continue to update

the location of the bird's nest, get a new set of bird's nest;

Step7 Evaluating the fitness value of bird's nest location, and ensure the optimal position of the

bird's nest, and the optimal value after comparison;

Step8 One iteration is complete, and enters the next iteration, judges whether it meets the end

conditions. If the conditions are met, exit the procedure and output optimal solution and optimal value.

Otherwise, turn to step 3.

Simulation test of BACS algorithm performance

Initial parameters Settings of experiment. Calculate the three test function through repeated

simulation respectively , in this paper, optimal parameters of the algorithm are designed as follows:

maximum pulse volume A0= 0.25, the maximum pulse rate R0=0.5,and pulse frequency range is [0,

2], enhancement coefficient of pulse frequency gama= 0.05, attenuation coefficient of pulse volume

alf=0.95, the maximum number of iterations is 2000, the bird's nest is 200, found probability of

foreign eggs Pa=0.25, adjust step factor SF=0.01,beta=3/2.

Experimental test function. In order to verify the convergence rate and the optimization precision

and local search of the algorithm in this paper is better than CS algorithm. We take a comparison test

based on five different standard test functions. The parameters of the test function: 1f ~ 2f hunting

zone is [-5.12,5.12] and 3f is [-32.768,32.768]; , 1f ~ 3f theoretical optimum are 0.test function [4,5]

is as follows:

Sphere function: Rastrigrin function:

∑=

=

n

i

ixxf1

2

1 )( ∑=

+−=

n

i

ii xxxf1

2

2 ]10)2cos(10[)( π

Ackley function:

exn

xn

xf

n

i

i

n

i

i ++−−−= ∑∑ 20))2cos1

exp()1

2.0exp(20)(2

3 π

The experimental results analysis. This paper test the algorithm effectively in this paper through

three standard test functions and run each test function independently for 20 times in order to prevent

the contingency of algorithm from making errors. Taking its optimal value and average, compared

with the basic CS algorithm and BA algorithm, the experimental simulation results are shown in

Table 1.

From Table 1 can learn that compared with CS algorithm and BA algorithm, optimization

precision and the average optimal values of the BACS algorithm has obviously improved when

solving function 1f ~ 3f .Especially for high dimension, multi-peak and solving domain, where there

are a large number of local minimum. Such as Rastrigin function and Ackley function. DECS

algorithm has upper level compared with CS algorithm and BA algorithm. Combining the

characteristics of the Rastrigin function and Ackley function function, the simulation results show

that in solving the global optimal of function value, the DECS algorithm is easy relatively compared

with other two kinds of algorithm. But with the increase of dimension, the global search ability and

convergence ability is stronger. For Sphere unimodal functions, BACS algorithm is higher 1 order of

magnitude and 2 orders of magnitude respectively compared with CS algorithm and BA algorithm

when the optimizing precision D=50. Optimizing precision of BACS algorithm is better than the

other two kinds of algorithms. The average value for optimum is obviously, that shown compared

with other two kinds of algorithm the algorithm in this paper has stronger local search ability and

better performance. Therefore, it can be seen from the simulation results, the referred BACS

algorithm in this paper. It’s significantly better than CS algorithm and BA algorithm comparing with

Advanced Materials Research Vols. 926-930 2891

Page 4: A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

the performances of optimizing precision, convergence speed, local searching ability, etc. It will be

more effective especially for high dimension, multi-peak and solving domain, where are a large

number of local optimal value function. Therefore, it can be seen from the simulation results, the

referred BACS algorithm in this paper. It’s significantly better than CS algorithm and BA algorithm

comparing with the performances of optimizing precision, convergence speed, local searching ability,

etc.

Fig. 1 show that the convergence characteristic curve of the algorithm optimization process in this

paper and the CS algorithm optimization process in Sphere function, Rastrigrin Function and Ackley

function. From Fig.1 can be seen obviously, compared with the CS algorithm, this algorithm within a

limited number of iterations, has faster convergence speed and higher convergence precision, less

number of iterations. From figure 1(b) can see, the CS algorithm traps into the local minimum value,

and BACS algorithm is converge to the global optimal solution.

Table 1 Comparing results of test functions from 1f ~ 3f

Function dimension The actual optimum Average optimum

BACS CS BA BACS CS BA

10 1.8899e-30 3.4419e-30 2.6728e-05 9.9174e-30 3.2814e-29 4.3151e-05

Sphere 20 1.3225e-14 4.8285e-14 2.9162e-04 3.3349e-14 1.1471e-13 3.5320e-04

50 9.3711e-06 2.5808e-05 0.0025 1.7305e-05 3.8846e-05 0.0030

Rastrigrin 10 2.2406e-05 2.1991 27.8665 0.2702 3.0986 77.1663

20 10.6718 26.2152 95.5793 14.7518 33.0129 175.9749

10 9.2543e-09 1.3704e-06 15.2350 4.9303e-08 1.9416e-05 18.8754

Ackley 20 0.0426 0.4768 16.7276 0.1291 1.1073 19.0097

50 2.2518 3.1524 15.7293 2.4926 3.4011 18.7388

(a) Sphere function (b) Rastrigrin function (c) Ackley function

Fig. 1 1f ~ 3f function comparison of convergence contrast curve

Conclusion

For the deficiencies of finding the global optima of the function in the basic cuckoo algorithm, in this

paper we have drawn the dynamic transformation strategy of the bat algorithm into the CS algorithm.

Two algorithms make their respective advantages complementary to each other. What is more, they

overcome the problem of weak local search ability and premature convergence in the CS algorithm,

and use stronger global searching ability and local searching ability of balance in bat algorithm. They

make the algorithm to avoid trapping into local minimum, and improve the convergence of the

algorithm at the same time. The experimental simulation results show that the BACS algorithm

improve the whole optimization of basic CS algorithm performance significantly.

References

[1] X.S. Yang: A new metaheuristic bat-inspired algorithmBerlin: Springer, Vol.284 (2010), p.65–74.

[2] C.P. Liu, C.M. Ye: University of Shanghai for Science and Technology, Vol.35 (2013) No.1

p.17-20.

[3] L.M. Du, Q. Ruan, D.K. Feng: Computers and Applied Chemistry, Vol.30 (2013)No.4, p.406-410.

[4] P.L. Jia, X.M. Tian: Journal of Shanghai Dianji University, Vol. 15 (2012) No.4, p.225-230.

[5] Li Ming,Cao Dexin: Computer Engineering and Applications, Vol. 49 (2013) No.9, p.57-60.

2892 Progress in Applied Sciences, Engineering and Technology

Page 5: A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search

Progress in Applied Sciences, Engineering and Technology 10.4028/www.scientific.net/AMR.926-930 A Hybrid Optimization Algorithm Based on Bat and Cuckoo Search 10.4028/www.scientific.net/AMR.926-930.2889