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 + -
显示快捷键?