【双层模型】分布式光伏储能系统的优化配置方法
1主要内容
程序模型参考《分布式光伏储能系统的优化配置方法》,分为上下层求解方式,上层采用粒子群算法确定储能的选址和容量方案,以全年购电成本、网络损耗、光伏运行成本、储能充放电和投资成本为目标;下层采用混合整数规划算法(默认求解器为cplex,也可替换成gurobi),以IEEE33节点配电网为研究对象,通过二阶锥模型求解,以电网购电成本为目标函数。程序注释清晰,方便参考学习!
因此,本程序和原文还是有些明显的区别:
1.原文中双层模型均采用智能算法,遗传/粒子群算法,本程序上层采用粒子群,下层采用规划算法,需要求解器求解。
2.原文中以9节点系统为例,本程序实际上采用33节点,该节点系统应用更广泛,参考性更强。
2部分代码
%计算各个粒子的适应度,并初始化Pi和Pg****************
Pgrid=zeros(33,24); %上网购电
p_ch=zeros(1,24); %储能充电功率
p_dch=zeros(1,24); %储能放电功率
p_pv=zeros(1,24); %光伏出力
I=zeros(32,24); %电流平方值
Pg=zeros(32,1); %风机出力
E_ess=zeros(1,24); %储能电量
for i=1:N
[y1,y2,y3,y4,y5,y6,y7]=solution(x(i,:));
Pgrid=y1;
p_ch=y2;
p_dch=y3;
p_pv=y4;
I=y5;
Pg=y6;
E_ess=y7;
p(i)=fitness(x(i,:),Pgrid,p_ch,p_dch,p_pv,I,Pg,s);
y(i,:)=x(i,:);%每个粒子的个体寻优值
end
Pbest=fitness(x(1,:),Pgrid,p_ch,p_dch,p_pv,I,Pg,s);
pg=x(1,:);%Pg为全局最优
for i=2:N
[y1,y2,y3,y4,y5,y6,y7]=solution(x(i,:));
Pgrid=y1;
p_ch=y2;
p_dch=y3;
p_pv=y4;
I=y5;
Pg=y6;
E_ess=y7;
if fitness(x(i,:),Pgrid,p_ch,p_dch,p_pv,I,Pg,s)<fitness(pg,pgrid,p_ch,p_dch,p_pv,i,pg,s) pbest="fitness(x(i,<span" class="hljs-symbol">:),Pgrid,p_ch,p_dch,p_pv,I,Pg,s);
pg=x(i,:);%全局最优更新
end
end
%进入主循环*****************************************
for t=1:Max_Dt
t
for i=1:N
w=w_max-(w_max-w_min)*t/Max_Dt;%惯性权重更新
c1=(0.5-2.5)*t/Max_Dt+2.5; %认知
c2=(2.5-0.5)*t/Max_Dt+0.5; %社会认识
w=0.7;
v(i,:)=w*v(i,:)+c1*rand()*(y(i,:)-x(i,:))+c2*rand()*(pg-x(i,:));
for m=1:D
if(v(i,m)>v_max)
v(i,m)=v_max;
elseif(v(i,m)<-v_max)
v(i,m)=-v_max;
end
end
3程序结果