資源簡介
解決優化問題的一種新算法,根據菌群的活動而得出的優化算法
代碼片段和文件信息
%?Rosenbrock?minimization?using?BFO?%
%?by?Kalyan?Sourav?Dash??%
clear?all;
close?all;
clc;
%?Bacteria?Foraging?Optimization?%
%?-------?initialisation?----------%
Ne=20;
Nr=20;
Nc=20;
Np=20;
Ns=10;
D=5;
C=0.01;
Ped=0.9;?%?elimination?dispersion?probability
x=(rand(NpD)-0.5)*60;?%?x?lies?in?[-30?30]
J=zeros(Np1);
for?k=1:Np
????for?i=1:D-1
????????
????J(k)=sum(100*(x(ki+1)-x(ki)^2)^2+(x(ki)-1)^2);?%?initial?fitness?calculation
????
????end
end
Jlast=J;
for?l=1:Ne
????for?k=1:Nr
????????Jchem=J;
????????for?j=1:Nc
????????????%?Chemotaxis?Loop?%
????????????
????????????for?i=1:Np
????????????????del=(rand(1D)-0.5)*2;
????????????????x(i:)=x(i:)+(C/sqrt(del*del‘))*del;
????????????????for?d=1:D-1
????????????????????J(i)=sum(100*(x(id+1)-x(id)^2)^2+(x(id)-1)^2);
????????????????end
??????????????
????????????????for?m=1:Ns
????????????????????if?J(i) ????????????????????????Jlast(i)=J(i);
????????????????????????x(i:)=x(i:)+C*(del/sqrt(del*del‘));
????????????????????????for?d=1:D-1
????????????????????????????J(i)=sum(100*(x(id+1)-x(id)^2)^2+(x(id)-1)^2);????
???
- 上一篇:adrcdemo.rar
- 下一篇:圖片相似度matlab代碼
評論
共有 條評論