• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: Matlab
  • 标签: 粒子群  MATLAB  

资源简介

粒子群算法在电网中的调度

资源截图

代码片段和文件信息

function PSO3()
%Initialize
D=6;N=50;G=100;index=1;
pmin=[0.05 0.05 0.05 0.05 0.05 0.05];
pmax=[0.5 0.6 1.0 1.2 1.0 0.6];
c1=2;
c2=2;
for h=1:5
for n=1:N
    for d=1:D
       x(nd)=rand()*(pmax(d)-pmin(d))+pmin(d);
    end
end
v=zeros(ND);   
Gbest=zeros(G1);
[fitness x]=evaluatefxloss(xpmaxpminindex);
pbest=fitness;
x_pbest=x;
[gbest x_gbest]=min(pbest);
x_gbest=x(x_gbest:);
for g=1:G
    w=0.9-0.5*(g-1)/(G-1);
    for n=1:N
        for d=1:D
            v(nd)=w*v(nd)+c1*rand*(x_pbest(nd)-x(nd))+c2*rand*(x_gbest(:d)-x(nd));
            x(nd)=x(nd)+v(nd);
        end
    end
    for n=1:N
       for d=1:D
        if x(nd)>pmax(d)
            x(nd)=pmax(d);
        end
        if x(nd)            x(nd)=pmin(d);
        end
   

评论

共有 条评论