⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pso_opt_fun_1.m

📁 基于粒子群优化与灰色系统理论的多目标优化程序
💻 M
字号:
function y=Pso_Opt_fun_1(x,k,x0)
% 哈尔滨工业大学2006(10):1716-1718相应动态罚函数
global keyH;
% x0是已知的较好的解
%y=(x(1)-3)^2+(x(2)-3)^2+9;
%x=[1 2 3 45 98];k=1;x0=[11 2 3 45 98];%debug
[Res_Gx,Res_hx]=Pso_restrain(x);
[n,n1]=size(Res_Gx);
for i=1:n
    fai(i)=max(0,Res_Gx(i));
end
for i=1:n
    if fai(i)<1,
        deta(i)=0.5;
    else
        deta(i)=2;
    end
end
for i=1:n
    if fai(i)<0.001,
        you(i)=10;
    elseif fai(i)<=0.1 & fai(i)>=0.001
        you(i)=20;
    elseif fai(i)<=1 & fai(i)>=0.1
        you(i)=100;
    else
        you(i)=300;
    end
end
H=0;
for i=1:n
    H=H+you(i).*fai(i).^(deta(i));
end
%%%%%%%%%%%%%%%%%y1为适应函数,x0为比x好的点%%%%%%%%%%%%%%%%
%y1=0.5*(Pso_Object(x)+Pso_Object(x0)-abs(Pso_Object(x)-Pso_Object(x0)));
if keyH==1
    y1=0.5*(Pso_Object(x)+Pso_Object(x0)-abs(Pso_Object(x)-Pso_Object(x0)));%改进的
else
    y1=Pso_Object(x);%未改进的
end
%%%%%%%y为罚函数,k为迭代次数%%%%%%%%%%%%%%%%%
y=H*k^(2)+y1;
%%%%%%%%%%%%%%2007.8.20%%%%%%%%%%%%%

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -