深度学习|改进两阶段鲁棒优化算法i-ccg

简介: 深度学习|改进两阶段鲁棒优化算法i-ccg

1 主要内容

自从2013年的求解两阶段鲁棒优化模型的列和约束生成算法(CC&G)被提出之后,基本没有实质性的创新,都是围绕该算法在各个领域的深度应用,有些小的变形应用也都是基于模型应用,比如嵌套CCG等。所以这些年大热的CC&G研究在算法改进方面鲜有成就,电气专业同学在研究源荷不确定性的过程中基本都要学习该算法,明确求解流程、主子问题研究内容以及对偶、kkt条件等,现给大家推荐一个新鲜出炉的改进算法i-CCG。

2 改进算法

2.1  CC&G算法的优势

一般两阶段鲁棒优化调度模型是 min-max-min 形式的非凸优化问题,难以直接求解。目前常用 Benders 分解或 C&CG 算法将该类型问题转化为包含 min 主问题和 max-min 子问题的两阶段优化。若模型第三层仅包含连续变量,则 max-min子问题可通过强对偶理论或 KKT(Karush-Kuhn-Tucker)条件等效为单层max问题,此时通过主问题和子问题的迭代计算即可求解出优化结果。相较于 Benders分解,C&CG 算法能在较少的迭代次数内达到收敛,其求解效率较高,主要原因为:

1)C&CG 算法在求解子问题时对场景进行严格辨识以缩减模型求解的搜索域;

2)C&CG 算法在求解主问题时保持了主问题的原始模型架构,而 Benders分解利用对偶割平面构建主问题,破坏了原始模型架构,增加了模型计算量。

因此 C&CG 算法已经成为求解两阶段鲁棒优化问题的主要方法。

2.2 i-CCG算法简介

该算法是在2023年刚发表的文章《An inexact column-and-constraint generation method to solve two-stage robust optimization problems》提出来的,有兴趣同学可以下载学习一下,因为是刚发布的算法,用该算法建模型、求解、对比分析和增加小的改动都会提高文章的创新性,解决发表文章难的问题。

目的:该算法是为了解决CCG算法应用于大规模求解或者较难的模型求解速度慢的难题,虽然通过牺牲求解精度来提升求解速度,但是通过迭代参数设置以及求解步骤能够保证最终的结果收敛于最优解。

算法步骤:传统CCG的求解步骤如下:

研究过的同学应该比较了解,传统两阶段鲁棒主要是主子问题的循环迭代,子问题需要通过强对偶或者KKT条件得到最恶劣运行工况,通过增加变量的形式带入主问题,通过迭代获得最优解。整个逻辑比较简单,容易理解,虽然程序语言实现过程中会遇到各种坑,但是基本思路还是挺容易理解的。

i-CCG算法步骤:

该算法初始阶段通过牺牲求解精度(设置emp的值)来达到快速求解的目的,在循环迭代过程中增加了不精确求解变量(相当于在传统CCG算法中增加了一个缓冲层),并对求解的状态进行识别,不同求解状态下会进入不同的循环阶段,直至收敛到阈值以下。

3 结果对比

以考虑需求响应的6节点电网两阶段鲁棒优化调度程序为例进行算法验证,常规算法下的迭代收敛曲线如下:

i-CCG算法的收敛曲线如下:

很显然,该改进算法的性能确实要好很多,通过实际程序求解时间都能明显感受到i-CCG算法求解速度快得多,因此,大家可以借用新算法开展深入研究和应用,祝大家SCI/EI/核心随便就能中!

相关文章
|
3月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
203 3
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
2月前
|
机器学习/深度学习 算法
采用蚁群算法对BP神经网络进行优化
使用蚁群算法来优化BP神经网络的权重和偏置,克服传统BP算法容易陷入局部极小值、收敛速度慢、对初始权重敏感等问题。
262 5
|
3月前
|
机器学习/深度学习 传感器 算法
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
229 14
|
2月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
2月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
120 0
|
3月前
|
canal 算法 vr&ar
【图像处理】基于电磁学优化算法的多阈值分割算法研究(Matlab代码实现)
【图像处理】基于电磁学优化算法的多阈值分割算法研究(Matlab代码实现)
123 1
|
2月前
|
机器学习/深度学习 算法 物联网
基于遗传方法的动态多目标优化算法
基于遗传方法的动态多目标优化算法
|
3月前
|
机器学习/深度学习 存储 算法
【微电网调度】考虑需求响应的基于改进多目标灰狼算法的微电网优化调度研究(Matlab代码实现)
【微电网调度】考虑需求响应的基于改进多目标灰狼算法的微电网优化调度研究(Matlab代码实现)
150 0

热门文章

最新文章