未发表!多篇论文联合复现:基于能源小生境+粒子群算法的主动配电网有功/无功协同优化程序代码!

文摘   科学   2024-12-30 09:40   江苏  

简介


适用平台及主要参考论文:Matlab+Yalmip+Cplex/Gurobi

《分布式光伏接入的配电网无功优化研究》;

《含高比例光伏的配电网有功—无功功率多目标协调优化》;

《基于粒子群算法的含光伏电站的配电网无功优化》;

《基于自适应遗传算法含光伏电源的配电网无功优化》;

程序中利用储能来平抑新能源出力波动性,主动配电网包含光伏逆变器、变压器、电容等设备,目标函数考虑了调压成本、电压稳定性成本、网损成本;利用能源小生境技术+粒子群算法对模型高效求解。程序中算例丰富、注释清晰、干货满满,创新性很高!下面对文章和程序做简要介绍!

创新点及主要工作


创新点

1. 链式主动配电网有功+无功协同优化。2. 改进粒子群算法+能源小生境技术

3. 分布式可再生能源不确定性+储能。4. Pareto结果前沿+最优解。

5. SVG6. Benders分解。

主要工作

针对分布式光伏接入配电网之后引起网络的潮流方向发生不确定性改变,节点电压存在越限风险,提出光伏无功出力与静止无功发生器(SVG)协调控制的控制策略。以网损、电压偏移最小为目标建立多目标优化数学模型,与以往多目标优化算法需将多目标转化为单目标问题求解不同,采用基于Pareto最优解的多目标粒子群优化算法。为保证解的多样性,防止算法早熟收敛,依据拥挤距离排序法形成每个粒子的小生境,采用小生境共享机制更新粒子位置,提高粒子适应度,同时将外部档案维护和全局最好位置选取相结合。最后,在IEEE33节点配电网系统中加入光伏、SVG、电容器组,对不同方案进行算例分析。

算法流程图:

程序结果



部分程序



%%储能功率计算SOC_min=0.1;%SOC上下限约束值SOC_max=0.9;Ce=0.95;%Ce充电效率Dself=0.001;%Dself自放电率De=0.95;%De放电效率 int=24/24;%int时间间隔SOCT=0.1;%末时刻SOC值SOC0=0.1;%初始时刻SOC值Pcd1=zeros(1,24);Pc1=zeros(1,24);Pd1=zeros(1,24);Pcd11=zeros(1,24);Pc11=zeros(1,24);Pd11=zeros(1,24);chrom=[150,SOC0,x(1,2:end-1),SOCT];for n = 1 : size(chrom,1) % n是计种群数Pd1(n,t-1)=((1-Dself*int)*chrom(n,t-1)-chrom(n,t)).*chrom(n,1)*De./int;    elseif h<0%充电Pc1(n,t-1)=(chrom(n,t)-(1-Dself*int)*chrom(n,t-1)).*chrom(n,1)/(Ce*int);Pcd1(n,t-1)=(-Pc1(n,t-1)+Pd1(n,t-1));%%%放电为正,充电为负%%储能+光伏波动pa=0;P_deta=zeros(1,24);pa=sum(Psol'+Pe1)./24;%均值   光伏+储能出力均值P_deta=Psol'-pa;   %光伏和均值的差%滚动调度储能Pe1=Pe1-P_deta;%抑制光伏波动if dd>0%%放电多了,多充电[m,I]  = find(pee>-50&pee<0) ;for i=1:size(I,2)dd=dd+100-pee(1,I(i));pee(1,I(i))=-100;else%%充电多了,放电加起来[m,I]  = find(pee>0&pee<80) ;for i=1:size(I,2)dd=dd+80-pee(1,I(i));pee(1,I(i))=80;pee(1,I(i))=pee(1,I(i))-dd;pee(pee>150)=150;pee(pee<-150)=-150;%%1-计算光伏波动值P_deta=sum(abs(Psol'+pee-pa));pop=x;vpc=0;%3-计算并网点的电压波动情况%%网络参数安排%%%光伏逆变器1-3  SVG1~3 CB1-2 变压器1:4  储能SOCrun('data30.m')%%输入电网参数 %更新全网负荷busdata(:,5) = busdata(:,5) *(1+PP_load(t));%%PLbusdata(:,6) =busdata(:,6)  *(1+QQ_load(t));%%QLlinedata([11,12,15,36],9) =ceil(x(1,[8*24+t,9*24+t,10*24+t,11*24+t]))*0.025+0.95; %改变压器变比busdata([5,2,21],6) =busdata([5,2,21],5) -[x(1,3*24+t),x(1,4*24+t),x(1,5*24+t)]'*1; %改SVG[x(t),x(t+24),x(t+48)]busdata([10,24],6) =  busdata([10,24],5) -ceil([x(t+6*24),x(t+24*7)]')*0.5; %改CBbusdata([17],7) =busdata([17],5)+x(1,12*24+t); %储能busdata([5,2,21],5)=busdata([5,2,21],5)-Solpower(t,1:3)';%%光伏并网点 光伏出力(有功)busdata([5,2,21],6)=busdata([5,2,21],6)-Solpower(t,1:3)'.*x(1,[t,24+t,24*2+t])';%%0.95%逆变器出口的功率因素值(控制变量)(无功)% busdata([15],5)=busdata([15],5)-Wt(t,1)';%%风机并网点,风力发电(有功)%子目标4:有功网损fitness=fitness+real(SLT); %计算出网损大小%2--电压稳定性VV=abs(V);vpc=vpc+sum(abs(VV-1))./(Vimax);%%计算电压偏差f1=f1+sum(abs(VV([5,2,21])-1.05)./(Vimax));%%光伏并网节点%子目标5:调压措施的调控成本目标%%SVG、CB、TXT=ceil(...[x(1,8*24+1:9*24);x(1,9*24+1:10*24);x(1,11*24+1:12*24)...%%SVG 动作次数n1=sum(XSVG,1);n2=sum(XCB,1);n3=sum(XT,1);nn1=nn1+abs(n1(t)-n1(t-1));%SVGnn2=nn2+abs(n2(t)-n2(t-1));%CBnn3=nn3+abs(n3(t)-n3(t-1));%Tf5=nn1*10+nn2*5+nn3*5;%%调压措施动作成本% o=o+fitness+vpc*33;f(1)=P_deta*0.1+fitness.*0.5*1000+f5;f(2)=f1./(24*3)+vpc./(30*24);clear linedata busdatend

部分内容源自网络,侵权联系删除!

欢迎感兴趣的小伙伴点击文末阅读原文获取完整版代码,小编会不定期更新高质量的学习资料、文章和程序代码,为您的科研加油助力!

更多创新性预测及优化程序请点击公众号首页:《预测优化》|《综合能源》链接!

创新优化及预测代码
免费分享研究理论及方法,基础代码资料,努力提供电力系统相关专业预测及优化研究领域的创新性代码,保质保量!面包多地址:https://mbd.pub/o/yc_yh/work
 最新文章