【硕士论文复现】可再生能源发电与电动汽车的协同调度策略研究(Matlab&Python代码实现)

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

1.1 上层问题

 1.2 下层问题

📚2 运行结果

2.1 Python运行结果

2.2 Matlab代码运行结果

🎉3 参考文献

🌈4 Matlab代码、Python代码、数据


💥1 概述

文献来源:

1.1 上层问题

在第3章所建立的上层模型中,目标函数为二次凸函数,且约束条件均为线性,属于典型的二次规划问题,二次规划问题是最基本的非线性规划问题,其主要特点就是目标函数为二次型且约束均为线性约束,一般形式可以表示如下:

 1.2 下层问题

下层对各充电站有功无功充放量以及各可再生能源发电站无功出力的优化过程,实际上就是调度对象仅包含电动汽车储能和可再生能源的配电网的有功无功协调优化过程,属于最优潮流问题。最优潮流的求解方法主要分为智能算法和数值分析法两大类。智能算法对问题的形式没有任何要求,具有极强的通用性,并且从理论上具有全局寻优的能力。但在实际应用中,该类算法容易陷入局部最优,而且存在计算量大,寻优速度慢,求解结果不稳定等弊端[42]。
本文提出的调度策略是实时进行的,具有一定的计算速度的要求,从而也限制了对智能算法的使用。数值分析法大都只具备局部寻优能力,只有凸规划方法具有全局寻优性。此外,下层模型中计及充电桩及可再生能源并网逆变器的无功响应,配电网的运行优化过程涉及有功及无功的协调优化,该模型中的最优潮流问题是一个非凸非线性问题,基于凸优化理论的凸规划能够通过在算法上进行松弛为非凸问题提供一个有效的解决途径。
目前,凸优化算法中的半正定规划(semi-definite programming, SDP)和二阶锥规划(second order conic programming, SOCP)在电力系统中的应用较为广泛,其中SOCR作为锥规划中的一个特例,使用和求解较其他锥规划更加容易,因此对SOCR 的研究和应用也最为广泛。
二阶锥规划作为一种凸优化,拥有凸规划的所有优势,因此在二阶锥规划问题中,所有的局部最优解都是全局最优的,且求解效率及准确性相较于非线性规划有了明显提高。但它要求优化模型的目标函数必须为线性43,因此在下层模型的目标函数中,使用支路电流描述系统的有功网损,即可将原目标函数转换为线性函数:

详细讲解见第4部分。 

📚2 运行结果

2.1 Python运行结果

部分代码:

if i in range(0,15):
        Column11 = PF33.addConstr((pev1[0]<=num_ask0*50/1000), name='column11')#电动汽车有功约束---充电
        Column12 = PF33.addConstr((pev1[0]>=0), name='column12')
        Column13 = PF33.addConstr((pev2[0]<=num_ask1*50/1000), name='column13')
        Column14 = PF33.addConstr((pev2[0]>=0), name='column14')
        Column15 = PF33.addConstr((pev3[0]<=num_ask2*50/1000), name='column15')
        Column16 = PF33.addConstr((pev3[0]>=0), name='column16')
    elif i in range(15,24):
        Column11 = PF33.addConstr((pev1[0]>=-num_ask0*50/1000), name='column11')#电动汽车有功约束---放电
        Column12 = PF33.addConstr((pev1[0]<=0), name='column12')
        Column13 = PF33.addConstr((pev2[0]>=-num_ask1*50/1000), name='column13')
        Column14 = PF33.addConstr((pev2[0]<=0), name='column14')
        Column15 = PF33.addConstr((pev3[0]>=-num_ask2*50/1000), name='column15')
        Column16 = PF33.addConstr((pev3[0]<=0), name='column16')

2.2 Matlab代码运行结果

部分代码:

%二阶锥约束
Constraints = [Constraints, V(branch(:,1),:).*I >= P.^2+Q.^2];
%% 通用约束
%节点电压约束
Constraints = [Constraints, Vmin <= V,V <= Vmax];
%发电机功率约束
Constraints = [Constraints, -Pgmax <= Pg,Pg <= Pgmax,-Qgmax <= Qg,Qg <= Qgmax];
%支路电流约束
Constraints = [Constraints, 0 <= I,I <= 0.11*Zij];
%支路功率约束
Constraints = [Constraints, -0.11*Zij <= P,P <= 0.11*Zij,-0.11*Zij <= Q,Q <= 0.11*Zij];

%% 4.设目标函数
objective = sum(sum(I.*(r*ones(1,T))));%网损最小
%% 5.设求解器
ops=sdpsettings('verbose', 1, 'solver', 'cplex');
sol=optimize(Constraints,objective,ops);

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]赵浩然. 可再生能源发电与电动汽车的协同调度策略研究[D].山东大学,2020.DOI:10.27272/d.cnki.gshdu.2020.001215.

🌈4 Matlab代码、Python代码、数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值