【鲁棒优化、大M法、C&CG算法】计及风、光、负荷不确定性两阶段鲁棒优化(Matlab代码实现)
👨🎓个人主页:研学社的博客
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
1.1 微网优化调度不确定性因素
长久以来,微网系统面临着可再生能源出力和负荷不确定性且源荷不匹配的重大问可再生能源并网的规模越大。系统的运行模式就越受影响,可再生能源的渗透率也直接或接影响着微网系统稳定性。现阶段微网系统的能源利用率、灵活性及经济性已经达到了较高的水平,但源荷的不确定及不匹配依然是系统面临的重大问题。研究分布式电源以及负荷的特性是微网优化调度问题的关键。
1.2 RO方法
早在1950年代,Bellman、Zadeh与Charnes等人就已经开始研究不确定性优化问题[82J。传统的确定性优化问题如式所示:
式中,fx)表示目标函数,x为决策变量,h(x)表示约束条件。式中的目标函数和约束条件均为确定性参数。但是,在实际应用中,难以预先确定模型中的一些变量参数。在某些具体的优化问题中,由于某个参数的细微扰动,可能就会使最优解失去意义。因而在不确定性情况下,优化求解问题显得尤为关键。在现实生活中,由于各种因素导致了模型参数的不确定性,其大多来源于下列几个方面:
(1)由于模型中的数据在统计与收集的环节中,会存在遗漏、丢失等问题,从而数据误差偏大,形成不确定性因素。
(2)一些不可抗拒的因素带来的影响,如自然因素。
(3)针对某些复杂的非凸非线性优化模型,只给出简单的表达形式。针对含有不确定性因素的优化问题,其数学模型如下所示:
式中、U分别表示不确定性参数及其取值范围。当不确定性参数出现波动时,会导致原来的最优解与实际最优解产生偏差,在某些情况下,还可能变成不可行解。所以,对不确定性最优问题的求解就显得尤为重要。
1.3 两阶段RO模型求解方法
如果U为一个有限的离散集,且U内有大量元素,要把其中不确定的场景全部列举出来,需要耗费大量的时间。不过,如果仅列举U中元素的一部分不确定场景,那这将会更容易实现。根据上述分析,通过在关键场景中逐步增加不确定变量,对局部列举进行扩展,从而得出优化目标函数的下界值。综上,本文采用C&CG算法求解两阶段RO模型。与Benders分解一样,C&CG算法将原始问题解耦成主、子问题进行交互迭代求解,从而获得原始问题最优解。不同之处体现在,C&CG 算法在求解主问题时,不断加入与子问题有关的约束和变量,使原问题目标函数的下界更加紧凑,从而有效地减少了迭代次数。而Benders分解算法每次迭代时决策变量不变,并且要求决策问题须为可行性规划问题,使得问题难以收敛。
1.4 对偶理论
在线性规划问题中,通常存在着配对情形。即在任一种线性规划问题中,都会有跟其密切相关的一种线性规划问题,其中前者叫作原问题,后者叫作它的对偶问题。在1.3节采用C&CG算法将两阶段RO模型解耦为主、子问题的过程中,可以发现其子问题中的max-min模型依然是非常繁琐的两层优化模型。如果利用对偶原理,将内层的min问题转化为max问题,那么该模型就可以转化为较为简单的max问题,从而更易于求解。
📚2 运行结果
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]马明. 考虑风光不确定性的微网两阶段鲁棒优化调度[D].宁夏大学,2022.DOI:10.27257/d.cnki.gnxhc.2022.000735.
[2]刘一欣,郭力,王成山.微电网两阶段鲁棒优化经济调度方法[J].中国电机工程学报,2018,38(14):4013-4022+4307.DOI:10.13334/j.0258-8013.pcsee.170500.
🌈4 Matlab代码实现
相关文章
- 原 TCP层的分段和IP层的分片之间的关系 & MTU和MSS之间的关系
- JS魔法堂:再识Bitwise Operation & Bitwise Shift
- CentOS 7.4安装nodejs & nginx & pm2
- 图解 & 深入浅出JavaWeb:事务必会必知
- [Bash] Find & Kill a running port
- [Servlet&JSP] JSTL的使用
- 华为OD机试 - 创建二叉树(Java & JS & Python)
- 华为OD机试 - 组成最大数(Java & JS & Python)
- 蚂蚁群算法求解最短路径问题(Python&Matlab实现)
- 基于蒙特卡洛法的规模化电动车有序充放电及负荷预测(Python&Matlab实现)
- 基于蒙特卡洛法的规模化电动汽车充电负荷预测(Python&Matlab实现)
- 基于改进的蚂蚁群算法求解最短路径问题、二次分配问题、背包问题【Matlab&Python代码实现】
- 【伏羲八卦图】(Python&Matlab实现)
- 数学建模:线性规划(Python&Matlab实现)
- 基于蒙特卡洛法的规模化电动车有序充放电及负荷预测(Python&Matlab实现)
- 用于大规模 MIMO 检测的近似消息传递 (AMP)(Matlab代码实现)
- 音视频直播开发问题分析总结 -- 花屏&绿屏
- iOS开发之十万个为什么<1>
- Lua 函数参数 & 默认实参
- 黏菌优化算法SMA(Python&Matlab完整代码实现)
- 高比例风电电力系统储能运行及配置研究(python&Matlab实现)
- 期刊论文图片代码复现【由图片还原代码】(Origin&Matlab)
- 搜索文章及代码(Matlab&Python代码实现)
- 【大数据开发运维解决方案】超级详细的VMware16安装Redhat8&挂载镜像配置本地yum源&安装unixODBC教程