资源简介

模拟退火发与粒子群算法的结合,程序可用,收敛的很快

资源截图

代码片段和文件信息

function [xmfv]=SimuAPSO(fitnessNc1c2lamdaMD)
%待优化的目标函数:fitness
%粒子数目:N
%学习因子1:c1
%学习因子2:c2
%退火常数:lamda
%最大迭代次数:M
%问题的维数:D
%目标函数取最小值时的自变量值:xm
%目标函数的最小值:fv
format long;
for i=1:N
    for j=1:D
        x(ij)=randn;
        v(ij)=randn;
    end
end
for i=1:N
    p(i)=fitness(x(i:));
    y(i:)=x(i:);
end
pg=x(N:);
for i=1:(N-1)
    if fitness(x(i:))        pg=x(i:);
    end
end
T=fitness(pg)/log(5);
for t=1:M
    groupFit=fitness(pg);
    for i=1:N
        Tfit(i)=exp(-(p(i)-groupFit)/T);
    end
    SumTfit=sum(Tfit);
    Tfit=Tfit/SumTf

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1270  2010-04-01 18:40  SimuAPSO.m

----------- ---------  ---------- -----  ----

                 1270                    1


评论

共有 条评论