两阶段鲁棒优化的主动配电网动态无功优化 关键词:两阶段鲁棒优化,CCG算法,储能 仿真算例采用33节点,采用matlab+yalmip+cplex编写,两阶段模型采用CCG算法求解。 模型中一阶段变量主要包括01变量和无功优化变量,核心变量主要存在于二阶段,因此在叠加二阶段变量优化过程中更容易得到最优解,所以有限次迭代即得到收敛的结果。 模型以网损为目标,包括功率平衡、网络潮流、电压电流、蓄电池出力以及无功设备出力等约束。 主要是复现《两阶段鲁棒优化的主动配电网动态无功优化》-熊壮壮
在电力系统领域,主动配电网的动态无功优化是一个关键课题,它对于提升电网运行效率、降低损耗有着重要意义。今天咱们就来聊聊基于两阶段鲁棒优化的主动配电网动态无功优化,这也是对熊壮壮《两阶段鲁棒优化的主动配电网动态无功优化》一文的复现。
核心概念
- 两阶段鲁棒优化:这是一种应对不确定性的优化策略。在主动配电网中,存在诸如负荷波动、分布式电源出力变化等不确定性因素。两阶段鲁棒优化将优化过程分为两个阶段,第一阶段做出决策,第二阶段根据不确定性的实际情况对第一阶段的决策进行调整,以此来获得较为稳健的优化结果。
- CCG算法:在求解两阶段模型时,采用了CCG(Column - and - Constraint Generation)算法。它通过不断生成新的列(对应第二阶段变量)和约束,逐步逼近问题的最优解。
仿真算例与实现工具
本次仿真采用经典的33节点系统,借助强大的Matlab平台,并搭配Yalmip和Cplex来实现模型的编写与求解。
Matlab + Yalmip + Cplex 搭建
首先,在Matlab环境中,需要确保Yalmip和Cplex都已正确安装与配置。假设我们已经完成了这些前置工作,接下来就是模型构建。
% 定义变量 % 一阶段01变量 x = binvar(1, num_01_variables); % 一阶段无功优化变量 q1 = sdpvar(1, num_q1_variables); % 二阶段核心变量 q2 = sdpvar(1, num_q2_variables); % 目标函数 - 网损 obj = sum(network_loss_function(x, q1, q2)); % 约束条件 cons = []; % 功率平衡约束 cons = [cons, power_balance_constraint(x, q1, q2)]; % 网络潮流约束 cons = [cons, network_flow_constraint(x, q1, q2)]; % 电压电流约束 cons = [cons, voltage_current_constraint(x, q1, q2)]; % 蓄电池出力约束 cons = [cons, battery_output_constraint(x, q1, q2)]; % 无功设备出力约束 cons = [cons, reactive_power_device_constraint(x, q1, q2)];在这段代码中,我们首先定义了一阶段的01变量x和无功优化变量q1,以及二阶段的核心变量q2。这里的num01variables、numq1variables和numq2variables需要根据实际系统的节点数和设备数来确定。
目标函数obj通过networklossfunction计算网损,而各种约束条件则分别由对应的函数来构建,如powerbalanceconstraint构建功率平衡约束。
模型求解与特性
- 变量特性与收敛:模型中一阶段变量有01变量和无功优化变量,而核心变量在二阶段。这种设计使得在叠加二阶段变量优化过程中,更容易达到最优解。实际运算中,经过有限次迭代就能得到收敛的结果。
- CCG算法求解:使用CCG算法求解两阶段模型时,每次迭代会不断更新和生成与二阶段变量相关的列和约束。
% 使用CCG算法求解 while ~converged % 求解当前子问题 optimize(cons, obj, sdpsettings('solver', 'cplex')); % 根据求解结果更新二阶段变量和约束 [q2_new, new_cons] = update_q2_and_cons(x, q1, q2); q2 = q2_new; cons = [cons, new_cons]; % 判断是否收敛 converged = check_convergence(); end上述代码简单模拟了CCG算法的迭代过程。每次循环中,先利用Cplex求解当前的约束和目标函数构成的子问题,然后根据求解结果更新二阶段变量q2以及新的约束new_cons,最后检查是否收敛。
通过这种基于两阶段鲁棒优化的动态无功优化方法,能有效应对主动配电网中的不确定性,实现更合理的无功分配,降低网损,提升电网运行的稳定性和经济性。
希望这篇博文能让大家对两阶段鲁棒优化在主动配电网动态无功优化中的应用有更清晰的认识。后续还可以进一步探讨如何在实际更大规模电网中应用以及对算法的优化改进。