计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型代码复现
计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型代码复现》模型中包括电动汽车、温控负荷和分布式储能作为柔性负荷的代表接入电网,聚合商作为投标主体参与到日前电力市场投标竞价中。模型中考虑各聚合商的出力约束,以及鲁棒约束,以FLA参与投标支出最小为目标函数,采用MATLAB下的CPLEX求解器进行求解,代码中对比了不同鲁棒控制系数与意愿系数变化对结果的影响。在电力市场的复杂环境中,如何让柔性负荷聚合商
《计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型代码复现》 模型中包括电动汽车、温控负荷和分布式储能作为柔性负荷的代表接入电网,聚合商作为投标主体参与到日前电力市场投标竞价中。 模型中考虑各聚合商的出力约束,以及鲁棒约束,以FLA参与投标支出最小为目标函数,采用MATLAB下的CPLEX求解器进行求解,代码中对比了不同鲁棒控制系数与意愿系数变化对结果的影响。
在电力市场的复杂环境中,如何让柔性负荷聚合商做出最优的投标决策是个关键问题。今天咱就来聊聊《计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型》的代码复现,这模型里可是把电动汽车、温控负荷和分布式储能这些柔性负荷代表接入电网,而聚合商就作为投标主体在日前电力市场里投标竞价。
模型核心要点
这个模型主要有两个关键约束得考虑,一个是各聚合商的出力约束,这就好比给聚合商的“武功”划了个界限,不能无限制输出功率。另一个是鲁棒约束,简单理解就是让模型在面对各种不确定因素时能更稳,不会因为一点风吹草动就“翻车”。

模型的目标是让柔性负荷聚合商(FLA)参与投标支出最小,也就是要花最少的钱办最多的事,这就像我们日常购物,都想买到性价比最高的东西。
代码实现与分析
这里我们采用MATLAB下的CPLEX求解器来求解这个模型。下面简单看段代码示例(这里只是示意关键部分,非完整代码):
% 定义模型变量
% 假设已经有相关参数定义
model = optimproblem('ObjectiveSense','min');
P_ev = optimvar('P_ev', [num_ev, num_periods], 'LowerBound', 0); % 电动汽车功率变量
P_tcl = optimvar('P_tcl', [num_tcl, num_periods], 'LowerBound', 0); % 温控负荷功率变量
P_ds = optimvar('P_ds', [num_ds, num_periods], 'LowerBound', 0); % 分布式储能功率变量
% 出力约束
for t = 1:num_periods
model.Constraints.out_power_ev(t) = sum(P_ev(:, t)) <= P_ev_max(t); % 电动汽车出力上限
model.Constraints.out_power_tcl(t) = sum(P_tcl(:, t)) <= P_tcl_max(t); % 温控负荷出力上限
model.Constraints.out_power_ds(t) = sum(P_ds(:, t)) <= P_ds_max(t); % 分布式储能出力上限
end
% 目标函数
model.Objective = sum(cost_ev.* P_ev(:)) + sum(cost_tcl.* P_tcl(:)) + sum(cost_ds.* P_ds(:));
% 鲁棒约束相关代码(简化示意)
alpha = 0.5; % 鲁棒控制系数示例值
beta = 0.3; % 意愿系数示例值
model.Constraints.robust_constraint =... % 此处省略复杂的鲁棒约束表达式,实际需根据具体模型
% 表达式中会用到alpha和beta
;
% 求解模型
solver = CplexSolver;
results = solve(model, 'CPLEXSolver', solver);
在这段代码里,首先定义了电动汽车、温控负荷和分布式储能的功率变量,并且给它们设置了下限为0,毕竟功率不能是负的嘛。然后通过循环定义了各个柔性负荷的出力约束,确保其输出功率不会超过上限。
目标函数部分很直观,就是把不同柔性负荷的功率与对应的成本系数相乘再累加,实现投标支出最小化。

《计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型代码复现》 模型中包括电动汽车、温控负荷和分布式储能作为柔性负荷的代表接入电网,聚合商作为投标主体参与到日前电力市场投标竞价中。 模型中考虑各聚合商的出力约束,以及鲁棒约束,以FLA参与投标支出最小为目标函数,采用MATLAB下的CPLEX求解器进行求解,代码中对比了不同鲁棒控制系数与意愿系数变化对结果的影响。
重点说说鲁棒约束部分,这里的鲁棒控制系数 alpha 和意愿系数 beta 对结果影响很大。代码里只是简单设置了示例值,实际复现中可以通过改变这两个系数来观察结果变化。比如增大 alpha 可能会让模型对不确定性更加保守,投标策略会更倾向于稳扎稳打,虽然可能收益不会特别高,但也能有效避免因不确定性带来的损失。而改变 beta 则可能影响聚合商对不同风险和收益的权衡。

代码最后通过CPLEX求解器来求解整个模型,得到我们想要的结果,也就是柔性负荷聚合商的最优投标决策。
在实际复现过程中,多去调整这些系数,观察结果的变化趋势,能让我们更好地理解这个模型在不同情况下的表现,也有助于在实际的电力市场场景中,让聚合商做出更符合自身利益的投标决策。希望大家通过这个代码复现,对计及不确定性的柔性负荷聚合商随机鲁棒投标决策模型有更深入的理解。

更多推荐
所有评论(0)