三篇论文联合复现:高比例新能源下考虑需求侧响应和智能软开关的配电网重构程序代码!

适用平台:Matlab+Yalmip+Cplex

程序在高比例新能源接入的情况下提出了考虑需求响应(DR)和智能软开关(SOP)的多时段主动配电网重构策略,进一步降低配电系统重构费用,减少弃风率和弃光率;基于混合整数二阶锥规划对配电网重构模型进行求解,将模型转化为MISOCP问题,并在调用CPLEX求解器进行求解。程序中算例丰富、注释清晰、干货满满,可扩展性和创新性很高!下面对文章和程序做简要介绍!

程序创新点:

1)配电网重构; 2)高比例可再生能源;

3)需求响应DR;4)智能软开关SOP。

主要工作:

程序提出了高比例新能源接入下考虑需求侧响应(DR)和智能软开关(SOP)的配电网重构策略。首先,构建了配电网重构下的DR和SOP模型;然后,综合考虑网损费用、弃风费用、弃光费用和开关费用,以社会利益最大化为优化目标,构建高比例新能源接入下多时段配电网重构模型;再次,通过大M法和二阶锥松弛将配电网重构模型转化为混合整数二阶锥规划问题,并采用Matlab调用YALMIP和CPLEX对转化后的模型进行求解;最后,采用改进的IEEE33节点配电系统进行了算例仿真,并进行了灵敏度分析和不同配电网重构策略的对比分析,验证了模型的有效性。所提考虑DR和SOP的配电网重构策略,可以有效提高配电系统的新能源消纳能力,平抑负荷峰谷差,提升配电网运行的经济性。

(1)智能软开关(SOP)

智能软开关(soft open point , SOP)是一种电力电子装置,用于替代传统联络开关,能有效解决配电系统中功率调节能力不足的问题。SOP可在馈线之间实现快速、动态和持续的有功无功潮流控制,起到平衡负载潮流并优化系统电压分布的作用。SOP的应用提高了配电网潮流的可控性,可有效解决高渗透率DG接入配电网带来的一系列问题,从而改善系统运行的经济性、灵活性和可靠性。

(2)需求响应

DR是指电力用户根据价格信号或激励机制做出响应,以此改变用户的常规电力消费行为。DR往往采用峰谷电价的形式引导用户的用电行为,从而将高峰时段的部分负荷转移到低谷时段,达到削峰填谷、平衡负荷的目的。政府制定的峰谷电价是一个长效机制,考虑到电价政策的调控变动在中国实施的难度,针对用户电价体系中的分时电价,现阶段已有一些研究工作通过积分制和电价套餐的方式来实现。

(3)Distflow潮流约束

dist-flow 潮流方程是基于Kirchhoff电流定律和Kirchhoff电压定律建立的。它考虑了配电系统中各节点之间的阻抗和功率负荷,通过求解一组非线性方程,得到各节点的电压和功率的分布情况,在dist-flow潮流方程中,首先需要确定各节点的电压幅值和相角,然后,根据节点电压和阻抗,计算节点注入功率和节点注入电流根据Kirchhoff电流定律和Kirchhoff电压定律,可以得到一组非线性方程。通过求解这组非线性方程,可以得到各节点的电压和功率的分布情况。相比于传统的基于节点功率的潮流计算法,Distflow 潮流模型更适用于辐射状配电系统的潮流计算。

程序结果:

部分程序:

Matlab 复制代码
delta_T=1;  N=1;S_sopi1=1;    S_sopj1=1;%SOP容量 
nl=37;nc=5;%37条线 5条联络线
xb=[33 12 22 0.1 0.1;34 8 21 0.1 0.1;35 15 9 0.1 0.1;36 25 29 0.1 0.1;37 18 33 0.1 0.1];%联络线的Branch矩阵
Branch=[Branch;xb];r_ij=Branch(:,4);   x_ij=Branch(:,5);
p_Solar=zeros(33,1);p_Wind=zeros(33,1);p_Load=p_load;
p_Solar(5)=0.05;p_Solar(11)=0.05;p_Solar(15)=0.05;p_Solar(22)=0.05;p_Solar(31)=0.05;%分布式功率  
q_Solar=p_Solar.*0.05;%无功按照有功的0.05倍 
lamda=sdpvar(33,N,'full');
x_Iij_square=sdpvar(37,N,'full');   x_ui_square=sdpvar(33,N,'full');
x_pij=sdpvar(37,N,'full');      x_qij=sdpvar(37,N,'full');
x_p_sop1=sdpvar(2,N,'full');    x_q_sop1=sdpvar(2,N,'full');
opt_num=1;beta=binvar(37,37,'full');Zij=binvar(nl,1);%网架结构
Z0=[ones(nl-nc,1);zeros(nc,1)];%初始拓扑 32条全连接 5条断开
assign(Zij,Z0);%为Zij与Z0赋初始值x_sop_L=sdpvar(2,N,'full');%sop损失
Constraints=[];%for opt_num=1:N    
Constraints = [Constraints, sum(Zij) == 32];%网架结构
Constraints = [Constraints, 0<= x_pij(33:37) <= 0.1.*Zij(33:37)];
Constraints=[Constraints,
    implies(Zij(i)==0,[beta(Branch(i,2),Branch(i,3))==0,beta(Branch(i,3),Branch(i,2))==0]),%非联通情况下的参数关系
    implies(Zij(i)==1,[beta(Branch(i,2),Branch(i,3))+beta(Branch(i,3),Branch(i,2))==1])];%联通情况下的参数关系
        if ~ismember([i,j],Branch(:,[2,3]))
Constraints=[Constraints,beta(i,j)==0];%非联通节点的参数beta设置为0
Constraints=[Constraints,sum(beta(1:37,:),2)==1];%公式6c
Constraints=[Constraints,beta(1,2)==0];%6d
%% 定义目标函数
  f=r_ij'*x_Iij_square(:,opt_num)+100*sum(p_load)+100*sum(-lamda.*p_load);
  Constraints=[Constraints,x_ui_square(1,opt_num)==12.66^2];
  Constraints=[Constraints,0<=lamda<=1];
% Constraints=[Constraints,x_Iij_square(7,opt_num)==0];%设置故障线路1
  Constraints=[Constraints,Zij(6)==0];Constraints=[Constraints,Zij(35)==0];

欢迎感兴趣的小伙伴关注,小编会不定期更新高质量的学习资料、文章和程序代码,为您的科研加油助力!

相关推荐
hairenjing1123几秒前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机
小蜗子5 分钟前
Multi‐modal knowledge graph inference via media convergenceand logic rule
人工智能·知识图谱
远望清一色7 分钟前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
SpikeKing18 分钟前
LLM - 使用 LLaMA-Factory 微调大模型 环境配置与训练推理 教程 (1)
人工智能·llm·大语言模型·llama·环境配置·llamafactory·训练框架
为什么这亚子37 分钟前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
黄焖鸡能干四碗1 小时前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
1 小时前
开源竞争-数据驱动成长-11/05-大专生的思考
人工智能·笔记·学习·算法·机器学习
ctrey_1 小时前
2024-11-4 学习人工智能的Day21 openCV(3)
人工智能·opencv·学习
~yY…s<#>1 小时前
【刷题17】最小栈、栈的压入弹出、逆波兰表达式
c语言·数据结构·c++·算法·leetcode
攻城狮_Dream1 小时前
“探索未来医疗:生成式人工智能在医疗领域的革命性应用“
人工智能·设计·医疗·毕业