regulate.asv
来自「POS算法」· ASV 代码 · 共 25 行
ASV
25 行
function[pbest,gbest,pvaluer,objvaluetemp]=regulate(pop,PBEST,GBEST,objvalue)
global popsize
global dimsize
global speedmax
global speedmin
for i=1:popsize
obfuct1=sin(sqrt(pop(i,1)^2+pop(i,2)^2))^2-0.5;
obfuct2=(1.0+0.0013*(sqrt(pop(i,1)^2+pop(i,2)^2))^2) ;
objvalue(i,1)=0.5+obfuct1/obfuct2;
obfuct3=sin(sqrt(pbest(i, 1)^2+pbest(i,2)^2))^2-0.5;
obfuct4=(1.0+0.0013*(sqrt(pbest(i,1)^2+pbest(i,2)^2))^2) ;
pvaluer(i,1)=0.5+obfuct3/obfuct4;
end
obfuct1=sin(sqrt(gbest(1)^2+gbest(2)^2))^2-0.5;
obfuct2=(1.0+0.0013*(sqrt(gbest(1)^2+gbest(2)^2))^2) ;
objvaluetemp=0.5+obfuct1/obfuct2;
for i=1:popsize
if objvalue(i,1)<pvaluer(i,1)
pbest(i,1:dimsize)=pop(i,1:dimsize);
end
if objvalue(i,1)<objvaluetemp
gbest=pop (i,1:dimsize) ;
xtemp=pop (i,1:dimsize) ;
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?