资源简介

This is a Hybrid PSO GSA Aigorithm.A new hybrid population-based algorithm (PSOGSA) is proposed with the combination of Particle Swarm Optimization (PSO) and Gravitational Search Algorithm (GSA). The main idea is to integrate the ability of exploitation in PSO with the ability of explora

资源截图

代码片段和文件信息

%PSOGSA source code v3.0 Generated by SeyedAli Mirjalili 2011. 
%Adopted from: S. Mirjalili S.Z. Mohd Hashim 揂 New Hybrid PSOGSA 
%Algorithm for Function Optimization in IEEE International Conference 
%on Computer and Information Application?ICCIA 2010) China 2010 pp.374-377.

% This function calculates the value of objective function.
function fit=benchmark_functions(LBenchmark_Function_IDdim)

%You can insert your own objective function with a new Benchmark_Function_ID.

if Benchmark_Function_ID==1
fit=sum(L.^2);
end

if Benchmark_Function_ID==2 
fit=sum(abs(L))+prod(abs(L));
end

if Benchmark_Function_ID==3
    fit=0;
    for i=1:dim
    fit=fit+sum(L(1:i))^2;
    end
end

if Benchmark_Function_ID==4
    fit=max(abs(L));
end

if Benchmark_Function_ID==5
    fit=sum(100*(L(2:dim)-(L(1:dim-1).^2)).^2+(L(1:dim-1)-1).^2);
end

if Benchmark_Function_ID==6
    fit=sum(abs((L+.5)).^2);
end

if Benchmark_Function_ID==7
    fit=sum([1:dim].*(L.^4))+rand;
end

if Benchmark_Function_ID==8
    fit=sum(-L.*sin(sqrt(abs(L))));
end

if Benchmark_Function_ID==9
    fit=sum(L.^2-10*cos(2*pi.*L))+10*dim;
end

if Benchmark_Function_ID==10
    fit=-20*exp(-.2*sqrt(sum(L.^2)/dim))-exp(sum(cos(2*pi.*L))/dim)+20+exp(1);
end

if Benchmark_Function_ID==11
    fit=sum(L.^2)/4000-prod(cos(L./sqrt([1:dim])))+1;
end

if Benchmark_Function_ID==12
    fit=(pi/dim)*(10*((sin(pi*(1+(L(1)+1)/4)))^2)+sum((((L(1:dim-1)+1)./4).^2).*...
        (1+10.*((sin(pi.*(1+(L(2:dim)+1)./4)))).^2))+((L(dim)+1)/4)^2)+sum(Ufun(L101004));
end
if Benchmark_Function_ID==13
    fit=.1*((sin(3*pi*L(1)))^2+sum((L(1:dim-1)-1).^2.*(1+(sin(3.*pi.*L(2:dim))).^2))+...
        ((L(dim)-1)^2)*(1+(sin(2*pi*L(dim)))^2))+sum(Ufun(L51004));
end

if Benchmark_Function_ID==14
aS=[-32 -16 0 16 32 -32 -16 0 16 32 -32 -16 0 16 32 -32 -16 0 16 32 -32 -16 0 16 32;...
-32 -32 -32 -32 -32 -16 -16 -16 -16 -16 0 0 0 0 0 16 16 16 16 16 32 32 32 32 32];
    for j=1:25
        bS(j)=sum((L‘-aS(:j)).^6);
    end
    fit=(1/500+sum(1./([1:25]+bS))).^(-1);
end

if Benchmark_Function_ID==15
    aK=[.1957 .1947 .1735 .16 .0844 .0627 .0456 .0342 .0323 .0235 .0246];
    bK=[.25 .5 1 2 4 6 8 10 12 14 16];bK=1./bK;
    fit=sum((aK-((L(1).*(bK.^2+L(2).*bK))./(bK.^2+L(3).*bK+L(4)))).^2);
end

if Benchmark_Function_ID==16
    fit=4*(L(1)^2)-2.1*(L(1)^4)+(L(1)^6)/3+L(1)*L(2)-4*(L(2)^2)+4*(L(2)^4);
end

if Benchmark_Function_ID==17
    fit=(L(2)-(L(1)^2)*5.1/(4*(pi^2))+5/pi*L(1)-6)^2+10*(1-1/(8*pi))*cos(L(1))+10;
end

if Benchmark_Function_ID==18
    fit=(1+(L(1)+L(2)+1)^2*(19-14*L(1)+3*(L(1)^2)-14*L(2)+6*L(1)*L(2)+3*L(2)^2))*...
        (30+(2*L(1)-3*L(2))^2*(18-32*L(1)+12*(L(1)^2)+48*L(2)-36*L(1)*L(2)+27*(L(2)^2)));
end

if Benchmark_Function_ID==19
    aH=[3 10 30;.1 10 35;3 10 30;.1 10 35];cH=[1 1.2 3 3.2];
    pH=[.3689 .117 .2673;.4699 .4387 .747;.1091 .8732 .5547;.03815 .5743 .8828];
    fit=0;
    for i=1:4
    fi

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1318  2020-11-29 20:15  license.txt
     文件        4047  2020-11-29 20:15  PSOGSA_v3\benchmark_functions.m
     文件        2128  2020-11-29 20:15  PSOGSA_v3\benchmark_functions_details.m
     文件        1339  2020-11-29 20:15  PSOGSA_v3\license.txt
     文件         845  2020-11-29 20:15  PSOGSA_v3\Main.m
     文件      164559  2020-11-29 20:15  PSOGSA_v3\PSOGSA.jpg
     文件        5736  2020-11-29 20:15  PSOGSA_v3\PSOGSA.m

评论

共有 条评论