Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Nature Inspired Optimization Technique: BacterialForaging Algorithm
Nikhil Kushwaha 1, Y. R. Sood2, Suryakanr' and Virnal Singh Bisht4
Department of Electrical Engineering, NIT Hamirpur, Himachal-Pradesh, India
Email-id:[email protected]@[email protected]@yahoo.com
Abstract- In this era of modernization, deregulation andcompetition the scenario of the optimization techniques is beingevolved dramatically towards the functional mimicry of nature.There are many nature inspired optimization algorithms such asPSO, Ant Colony, Genetic Algorithm, Evolutionary Techniquesetc. Recently Bacterial foraging Optimization Algorithm hasattracted a lot of attention as a high performance optimizer. In2002, K. M. Passino proposed Bacterial Foraging OptimizationAlgorithm (BFOA)[l] for distributed optimization and control.One of the major driving forces of BFOA is the chemotacticmovement of a virtual bacterium that models a trial solution ofthe optimization problem. The underlying biology behind theforaging strategy of E.coli is emulated in an extraordinarymanner and used as a simple optimization algorithm. This paperpresents the BFOA for global optimization.Keywords-- Bacterial Foraging, global optimization,Chemotaxis, Optimization Algorithm.
I. INTRODUCTION
Optimization is a computational science that studiestechniques for searching the 'best' solutions. It has beenwidely employed in a large variety of fields, includingtransportation, manufacturing, physics, and medicine. Totackle complex search problems of the real world, scientistshave been drawing inspiration from nature and naturalcreatures for years. Optimization is at the heart of manynatural processes like Darwinian evolution, group behavior ofsocial insects, and the foraging strategy of other microbialcreatures. Natural selection tends to eliminate species withpoor foraging strategies and favor the propagation of genes ofspecies with successful foraging behavior since they are morelikely to enjoy reproductive success.
Since a foraging organism or animal takes necessary actionto maximize the energy intake per unit time spent for foraging,considering all the constraints presented by its ownphysiology such as sensing and cognitive capabilities,environment (e.g., density of prey, risks from predators,physical characteristics of the search space), the naturalforaging strategy can lead to optimization and essentially thisidea can be applied to solve real-world optimization problems.Based on this concept, Passino proposed an optimizationtechnique known as the bacterial foraging optimizationalgorithm (BFOA) [1]. To date, BFOA has successfully beenapplied to real-world problems such as optimal controllerdesign, harmonic estimation, transmission loss reduction,active power filter synthesis, and learning of artificial neuralnetworks.
II. THEBACTERIAFORAGINGOPTIMIZATIONALGORITHM
In the process of foraging, E. coli bacteria undergo fourstages, namely, chemotaxis, swarming, reproduction, andelimination and dispersal. In search space, BFOA seekoptimum value through the chemotaxis of bacteria, and realizequorum sensing via assemble function between bacterial, andsatisfy the evolution rule of the survival of the fittest make useof reproduction operation, and use elimination-dispersalmechanism to avoiding falling into premature convergence.
A. ChemotaxisThis process simulates the movement of an E.coli cell
through swimming and tumbling via flagella. Biologically, anE.coli bacterium can move in two different ways. It can swimfor a period of time in the same direction, or it may tumble,and alternate between these two modes of operation for theentire lifetime. Suppose 9iG, k, 1)represents i th bacterium at jth chemotactic, kth reproductive and lth elimination dispersalstep. CCi ) is the size of the step taken in the random directionspecified by the tumble (run length unit). Then incomputational chemotaxis the movement of the bacteriummay be represented by
Bi(j+l,k,l)= fl(j,k,l)+C(i) ~~~;;~Ci) (1)
where L1 indicates a vector in the random direction whoseelements lie in [-1, I].
B. SwarmingAn interesting group behavior has been observed for
several motile species of bacteria including E.coli and S.typhimurium. When a group of E. coli cells is placed in thecenter of a semisolid agar with a single nutrient chemo-effector, they move out from the center in a traveling ring ofcells by moving up the nutrient gradient created byconsumption of the nutrient by the group. To achieve this,function to model the cell-to-cell signaling via an attractantand a repellan. The mathematical representation for E.coliswarming [2] can be represented by:
s
JccCB,P(j,k,l)) = LJ~cCB, Bi (j,k,l))i=1
NIET Journal of Engineering & Technology, Vol. 1, Issue 1, 2012 46
Counterclockwise Rotation of Flagella,Swim
AI,-Clockwise Rotation of Flagella,
TumbleFig.l Flagella movements
S P
= ~)-dallracl exp(-WallraCI L. (Om -O,;Y)]i=l m=l
S P
+ L.[hrepel/anl exp( -Wrepel/ant L. (Om - O~Y)];;1 m;l
where is the cost function value to be added to the actualcost function. S is the total number of bacteria and p is thenumber of parameters to be optimized which are present in
each bacterium. dattractis the depth of the attractant released
by the cell and Wattracl is a measure of the width of the
attractant signal. hrepel/anl= daffractis the height of the repellant
Weffect and repellant is a measure of the width of the repellant.
C. ReproductionAccording to the rules of evolution, individual will
reproduce themselves in appropriate conditions in a certainway. For bacterial, a reproduction step takes place after allchemotactic steps.
Nc+l
J~eallh = L. JU,j,k,l)j;l
Where J~eallh is the health of bacterium i. Sort bacteria andchemotactic parameters C(i) in order of ascending cost (highercost means lower health). For keep a constant population size,
bacteria with the highest Jheallh values die. The remainingbacteria are allowed to split into two bacteria in the sameplace.
D. Elimination-DispersalIn the evolutionary process, elimination and dispersal
events can occur such that bacteria in a region are killed or agroup is dispersed into a new part of the environment due tosome influence. They have the effect of possibly destroying
chemotactic progress, but they also have the effect of assistingin chemotaxis, since dispersal may place bacteria near goodfood sources. From the evolutionary point of view,elimination and dispersal was used to guarantees diversity ofindividuals and to strengthen the ability of global optimization.In BFOA, bacteria are eliminated with a probability of ped.Inorder to keeping the number of bacteria in the populationconstant, if a bacterium is eliminated, simply disperse one to arandom location on the optimization domain.
III. THEBFOA ALGORITHM[Step 1] Initialization
1. Number of parameters (P) to be optimized.11. Number of bacteria (S) to be used for searching the
total region.iii. Swimming length N, after which tumbling of bacteria
will be undertaken in a chemotactic loop.IV. N, the number of iterations to be undertaken in a
chemotactic loop. CNc>Ns).
v. Nre the maximum number of reproduction to beundertaken.
VI. Ned the maximum number of elimination anddispersal events to be imposed over bacteria.
vii. Ped the probability with which the elimination anddispersal events to be imposed over bacteria.
Vlll. The location of each bacterium P(l-p, I-s, I) whichis specified be random numbers on [-1, 1].
IX. The value of C(i) which is assumed to be constant.
x. The values of dallracl, Wattracl , hrepel/anl and
Wrepel/anl[Step 2] Iterative algorithm for optimizationThis section models the bacteria population chemotaxis,swarming, reproduction, elimination and dispersal.Elimination-dispersal loop: l=!+ 1.Reproduction loop: k=k+1.Chemotaxis loop:j=j+l.
a) For i=l, 2, ... , S, calculate cost function value for eachbacterium i as follows.• Compute value of cost function J(I, j, k, I). Let Jsw( i ,
j, k, 1)= J(i,j, k, 1)+ Jcc(Oi(j,k,I),P(j,k,I»(i.e., add on cell-to-cell attractant effect for swarming
behaviour).• Let J1asl= Js,.{i, j, k, I) to save this value since we
may find a better cost via a run.• End for stop loop.
b) For i=I, 2, ..... , S take the tumbling/swimming decision• Tumble: Generate a random vector ~(i) E 9\ p with
each element ~m(i) m= 1, 2, ... ,p, a randomnumber on [-1, I].
• Move: let
Oi(j+l,k,I)=Oi(j,k,I)+CU) ~~~;~/).(i)'
NIET Journal of Engineering & Technology, Vol. 1, Issue 1, 2012 47
Fixed step size in the direction of tumble for bacterium i isconsidered.
• Compute J(i, j +1, k,!) and then letJswC i .i r k, l)
= J(i,j, k, l)+ Jcc(fi(j,k,!),P(j,k,!))• Swim:
I.Let m=O; (counter for swim length)II.While m<Ns (have not climbed down too long)
• Let m=rn+l• If JsJi, j+ 1, k, I) <Jlost(if doing better), let Jlast=Jsw(i,
j+ 1, k, l) and let
A
Compute value ofcon nmctlon r«tambacterium a. J(l'p}
where I is thebacterium number
Fig. 2(a) Flow chart of Bacterial Foraging AlgorithmNutrient concentration (valleys=food. peaks=noxious)
5
o
·5
·1030 ' .. ,'
20
10
8 0 0s= 2 .=81Fig.2(b) Contour of the test Function
o (j + 1,k,!) =o (j,k,!) + C(i) ~~~;;~(i)
and use this Oi (j + 1, k,!) to compute the new
J(i,j +1,k,!)• Else, let m=Ns. This is the end of the while statement.c) Go to the next bacterium (i+ 1) if i * S (i.e. go to b)
to process the next bacterium.If j < Nc' go to step 3. In this case, continue chemotaxissince the life of the bacteria s not over.Reproductiona) For the given k and l, and for each i=l, 2, .... S, let
J~ealth= min {Jsw(i,j,k,!)} be the health of theJE{l. .. Ne}
bacterium i (a measure of how many nutrients gotover its life time and how successful it was atavoiding noxious substance). Sort bacteria in order of
ascending cost Jhealth (higher cost means lowerhealth).
b) The Sr=S/2 bacteria with the highest Jhealth valuesdie and other S, bacteria with the best value split (andthe copies that are made are placed at the samelocation as their parent)
If k < Nre go to 2, in this case we have not reached thenumber of specified reproduction steps, so we start thenext generation in the chemotactic loop.Elimination-dispersal: For i=l, 2, ..S, with probability Ped,eliminate and disperse each bacterium(this keeps thenumber of bacteria in the population constant) to arandom location on the optimization domain.
Flow Chart of the above algorithm is shown in Fig. 2(a)
30
IV. SIMULATION AND RESULTSThe algorithm described above is simulated for the test
function:J 5*exp( -0.1 *((theta(l ,1)-15)"2+(theta(2, 1)-20)"2))-
8*exp( -0.08*((theta(l, 1)-20)"2+(theta(2, 1)-15)"2)) inMATLAB 7.9.0. The following results are obtained whenS=50, p=2, Nc=lOO, Ns=4, Nre=4, Sr=S/2, Ned=2, Ped=0.25.
Figure 2 shows the contour of the function where valleysare food and peaks are noxious. Figure 3 shows the bacteriamovement towards the global optimization. Figure 4 showsthe nutrients obtained by bacteria during life. Figure 5 showsthe health of the bacteria i.e. Jhealth . Figure 6 shows thelocation of the bacteria P( 1-p, 1-s, 1).
V. CO CLUSIONBacterial Foraging Algorithm can be effectively used to solveoptimization problems. The effectiveness of the BFOA isverified through simulation results on a test function and itprovides a scope for more future work on this technique.
NIET Journal of Engineering & Technology, Vol. 1, Issue 1, 2012 48
Bacteria trajectories Generation=130r--"""'--,,--=..-------,
Bacteria trajectories Generation=230,----------,
20cS'
10
°0L---1-0---20--~3020 306,
Bactena trajectonss Generatton=J30,--------
6,Bactena trajectones Generahon=4
30,----------,
10
20 20
10
°0~-~1~0--2~0--~30
~ ~Fig.3: Bacteria movements towards global optima
45X 10"
Fig.4: utrients obtain during life
REFRE CES[I] K. M. Passino, Biomimicry of bacterial foraging for distributed
optimization and control, IEEE Control Syst. Mag., vol. 22, no.3,pp. 52--67, Jun. 2002.
[2] Y. Liu and K. M. Passino, Biomimicry of social foragingbacteria for distributed optimization: Models, principles, andemergent behaviors, J. Optimization Theory Applicat., vol. 115,no. 3, pp. 603--628, Dec. 2002.
[3] D. H. Kim, A. Abraham, and 1. H. Cho, A hybrid geneticalgorithm and bacterial foraging approach for globaloptimization, Inform. Sci., vol. 177, no. 18, pp. 3918-3937,2007.
[4] S. Mishra, A hybrid least square-fuzzy bacterial foragingstrategy for harmonic estimation, IEEE Trans. Evol. Comput.,vol. 9, no. I, pp. 61-73, Feb. 2005.
[5] M.Tripathy, S.Mishra, L.L.Lai and Q.P.Zhang,Transmissionloss reduction based on FACTS and bacteriaforaging algorithm, in Proc. PPSN, 2006, pp. 222-231.
[6] S. Mishra, and C. . Bhende, Bacterial foraging technique-based optimized active power Iter for load compensation, IEEETrans. Power Delivery, vol. 22, no. I, pp. 457-465, Jan. 2007.
[7] D. H. Kim and C. H. Cho, Bacterial foraging based neuralnetwork fuzzy learning, in Proc. nCAI, 2005, pp. 2030L-2036.
-784 r-__,----,----,----..----r---r--~-,____,-__,
·786
·788
-790
·792
·794
-796
·798
·800
.802::-0---';--~1-;;.0----;;15:-----:!:20;---::!25:---::3'::-0--::3'::-5--4"-::0--4"-::5-....,J50
Fig.5: Health of Bacteria i.e. Jh"lth
·1
-2
·3
14 16x 10'
4 10 12
Fig.6: Location of bacteria
[8] B. D. Hughes, Random Walks and Random Environments:Volume 1: Random Walks. London, U.K.: Oxford Univ. Press,1996.
[9] M. Avriel, Nonlinear Programming: Analysis andMethods.lsted.New York: Dover, 2003. ch. 10, sec. 10.1, pp.288-299.
[10] J. A. Snyman, Practical Mathematical Optimization: AnIntroduction to Basic Optimization Theory and Classical andNew Gradient-Based Algorithms. New York: Springer-Verlag,2005.
[II] J. Kennedy and R. C. Eberhart, "Particle Swarm Optimization,"in Proc. of the IEEE Int. Con! on Neural Networks. Piscataway,NJ: IEEE Service Center, 1995, pp. 1942-1948.
[12] Sambarta Dasgupta, Swagatam Das, Ajith Abraham, AdaptiveComputational Chemotaxis in Bacterial Foraging Optimization:An Analysis, IEEE Transactions on Evolutionary Computation,VOL. 13, NO.4, AUGUST 2009
[13] Qiaoling Wang, Xiao-Zhi Gao and Changhong Wang, "AnAdaptive Bacterial Foraging Algorithm For ConstrainedOptimization," International Journal of Innovative Computing,Information and Control, Volume 6, umber 8, August 2010
[14] Hai Shen, Yunlong Zhu, Xiaoming Zhou, Haifeng Guo,Chunguang Chang, Bacterial Foraging Optimization Algorithmwith Particle Swarm Optimization Strategy for GlobalNumerical Optimization, GEC'09, June 12-14,2009, Shanghai,China.
NIET Journal of Engineering & Technology, Vol. 1, Issue 1, 2012 49