1 Star 1 Fork 1

haoguosheng/Materials for the paper titled as A Molecular Interactions Based Social Learning Particle Swarm Optimization Algorithm

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
yao_func.m 2.11 KB
一键复制 编辑 原始数据 按行查看 历史
haoguosheng 提交于 2020-03-08 11:17 . yao_func.m and MISI-PSO are added
function fit=yao_func(p,problem)
[popsize D] = size(p);%定义p矩阵 popsize为粒子数目;D为维数
switch problem
case 1 %2表示p.^2这个矩阵每行进行求和。是一个popsize(m)行1列的矩阵
fit=sum(p.^2,2);
case 2
fit=sum(abs(p), 2) + prod(abs(p), 2);
case 3
fit = zeros(popsize,1);
for j = 1:D
fit = fit + sum(p(:, 1:j), 2).^2;
end
case 4
fit = zeros(popsize,1);
for i = 1:popsize
fit(i) = max(abs(p(i,1:D)));
end;
case 5
fit=100*sum((p(:,2:D)-(p(:,1:D-1)).^2).^2,2)+sum((p(:,1:(D-1))-1).^2,2);
case 6
fit = sum( floor(p(:,1:D) + 0.5).^2, 2);
case 7
fit=418.9828872724338*D-sum(p.*sin((abs(p)).^0.5),2);
case 8
fit=sum(p(:, 1:D).^ 2 - 10 .* cos(2 .* pi .*p(:,1:D)) + 10, 2);
case 9
fit=20+exp(1)-20*exp(-0.2*(1/D*sum(p.^2,2)).^0.5)-exp(1/D*sum(cos(2*pi*p),2));
case 10
fit=sum(p.^2,2)/4000-prod(cos(p./(repmat(1:D,popsize,1)).^0.5),2)+1;
case 11
p_=1+1/4*(p+1);
p_1=p_(:,1:D-1);
p_2=p_(:,2:D);
p_3=p;
temp_1=find(p>10);
temp_2=find(p<-10);
temp_3=find(p>=-10&p<=10);
p_3(temp_1)=100*(p(temp_1)-10).^4;
p_3(temp_2)=100*(-p(temp_2)-10).^4;
p_3(temp_3)=0;
fit=pi/D*(10*(sin(pi*p_(:,1))).^2+sum((p_1-1).^2.*(1+10*(sin(pi*p_2)).^2),2)+(p_(:,D)-1).^2)+sum(p_3,2);
case 12
p_1=p(:,1:D-1);
p_2=p(:,2:D);
p_3=p;
temp_1=find(p>5);
temp_2=find(p<-5);
temp_3=find(p>=-5&p<=5);
p_3(temp_1)=100*(p(temp_1)-5).^4;
p_3(temp_2)=100*(-p(temp_2)-5).^4;
p_3(temp_3)=0;
fit=0.1*((sin(pi*3*p(:,1))).^2+sum((p_1-1).^2.*(1+(sin(3*pi*p_2)).^2),2)+(p(:,D)-1).^2.*(1+(sin(2*pi*p(:,D))).^2))+sum(p_3,2);
case 13
fit = zeros(popsize,1);
for i = 1:popsize
for j = 1:D
fit(i) = fit(i) + j*p(i,j)^4;
end
fit(i) = fit(i) + rand();
end
end
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/guoshenghao/Materials-for-the-paper-titled-as-A-Molecular-Interactions-Based-Social-Learning-Particle-Swarm-Optimization-Algorithm.git
git@gitee.com:guoshenghao/Materials-for-the-paper-titled-as-A-Molecular-Interactions-Based-Social-Learning-Particle-Swarm-Optimization-Algorithm.git
guoshenghao
Materials-for-the-paper-titled-as-A-Molecular-Interactions-Based-Social-Learning-Particle-Swarm-Optimization-Algorithm
Materials for the paper titled as A Molecular Interactions Based Social Learning Particle Swarm Optimization Algorithm
master

搜索帮助

23e8dbc6 1850385 7e0993f3 1850385