📄 calobjvalue.m
字号:
function [pbest,gbest,objvalue,gvaluer]=calobjvalue(pop)
global popsize;
global dimsize;
global YY;
global f;
objvalue=zeros(popsize,1);
for i=1:popsize %%%每个粒子求目标值
x=pop(i,1:dimsize);
multi=x(1,7).*exp(-(x(1,1)+x(1,2).*f).*x(1,3)).*exp(-j.*2.*pi.*f.*1500000.*x(1,3))+x(1,8).*exp(-(x(1,1)+x(1,2).*f).*x(1,4)).*exp(-j.*2.*pi.*f.*1500000.*x(1,4))+x(1,9).*exp(-(x(1,1)+x(1,2).*f).*x(1,5)).*exp(-j.*2.*pi.*f.*1500000.*x(1,5))+x(1,10).*exp(-(x(1,1)+x(1,2).*f).*x(1,6)).*exp(-j.*2.*pi.*f.*1500000.*x(1,6));
for k=1:30
objvalue(i,1)=objvalue(i,1)+abs(multi(1,k)-YY(1,k));
%objvalue(i,1)=objvalue(i,1)+log(abs(multi(1,k)-YY(1,k)))+log(abs(real(multi(1,k)-YY(1,k))))+log(abs(imag(multi(1,k)-YY(1,k))));
end
end
pbest=pop(:,1:dimsize) ;
[ggBest,xindex]=min(objvalue) ;
xtemp=pop( xindex,1:dimsize) ;
gbest=xtemp;
gvaluer=ggBest;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -