前阵子做区域电网的风光火联合经济调度仿真,遇到一个特别折磨人的现象:同样的电网模型、同样的负荷曲线,不同文献算出来的系统总成本能差出30%以上。一开始我以为是求解器精度或目标函数写法的问题,后来把模型一层层剥开才发现,分歧的根源几乎都指向同一个参数——鲁棒性水平。说白了,就是你对风光出力和负荷的预测误差防到什么程度。防得越狠,备用的容量需求越大,系统总成本自然涨上去;防得太松,成本是好看,但真遇到极端天气,电网调度员只能眼睁睁看着频率往下掉。这个权衡恰好就是标题的核心:求解风光负荷不同鲁棒性对系统总成本的影响,并在模型里显式考虑向上备用和向下备用容量。我用Matlab把整套模型完整跑了一遍,把过程、公式和踩过的坑都整理在下面,给正在做电力系统经济调度、鲁棒优化入门的同学一个可以直接复现的参考。
1. 风光接入带来的备用压力:从确定性调度到鲁棒调度的必然
1.1 预测误差为什么不是“小概率事件”
先看一个最典型的场景:预报明天下午某时段风电出力150MW,光伏出力80MW,负荷850MW。结果真到了那个时段,风却小了,光伏也因云层遮挡掉了三成,风电实际出力只有100MW,光伏只剩50MW。这一下就产生80MW的缺口。这时候系统凭什么扛住?靠的就是常规机组提前预留的向上备用容量。
反过来,半夜风电大发而负荷很低时,风电出力可能比预测高出一大截,负荷又低于预测,火电必须马上压低出力给风电让路,这就是向下备用。风光预测误差不是偶发事件,风电短时功率波动率动辄20%以上,光伏受云层影响可以分钟级跳水,负荷预测误差虽然小一些,但同样不可忽略。只要系统里风光占比超过一定水平,备用就不是“要不要留”的问题,而是“留多少、怎么定价、由谁来提供”的常规操作了。
更麻烦的是,预测误差会同时叠加。风电偏低、光伏偏低、负荷偏高,三者叠加时形成的缺口远大于任何单一误差源,这种最不利组合才是调度员真正担心的事。确定性模型恰恰在这个地方最脆弱。
1.2 确定性经济调度模型的三个盲区
传统确定性的经济调度模型(Economic Dispatch)通常把风光和负荷的预测值当成确定输入,目标函数只优化燃料成本,约束只校核一个预测场景下的功率平衡。这种模型有三个非常明显的盲区。
第一,只验证单一预测场景。所有机组出力安排都围绕预测值这一个点展开,一旦预测偏差超预期,模型无法回答“系统还会不会安全”这个问题。你花大力气优化的成本最低方案,很可能在一个不算极端的误差组合下直接崩溃。
第二,忽略误差的跨时段累积。机组的爬坡约束是动态的,某个时段偏差大,会消耗掉下一时段可用的上调能力。确定性模型只能看到单时段静态平衡,抓不住“余量被逐步耗尽”的递推关系,等真到需要满爬坡时才发现上一时段已经把裕度用光了。
第三,无法量化保守度。安全裕度是加5%备用还是加20%备用,全靠调度员拍脑袋,没有一个统一参数让决策者在“多花多少成本”和“多扛多少风险”之间做定量权衡。这就像一个只带了一个天气预报点就出门的人,而鲁棒优化是带着“雨天区间”出门,虽然带了伞增加了背包重量(成本),但不会淋成落汤鸡。
所以,只要研究题目里同时出现“风光”“鲁棒性”“备用容量”三个关键词,基本就默认要在不确定性框架下做决策,而不是继续在确定性模型上打补丁。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 鲁棒性系数怎么“指挥”备用容量:不确定集与预算参数的设计逻辑
2.1 盒式不确定集与Γ值含义
在鲁棒优化里,风光和负荷的预测值不再是一个点,而是一个区间。比如风电预测出力是150MW,给定上下浮动±30MW,那么真实出力被认为是120~180MW之间的任意值。负荷预测850MW,浮动范围±25MW。所有时段所有不确定源组成的取值范围的集合,就是“不确定集”。
最简单也最常用的是盒式不确定集,直接把每个变量的上下界框住。但只用盒式集有个大问题:优化器会认为每个时段所有不确定源都同时处于最坏情况,这几乎不可能发生,结果会保守到离谱,备用的采购成本高到没法看。
所以实际工程中更常用的是Bertsimas-Sim在2004年提出的带预算参数的鲁棒模型。核心思想是引入一个Γ(读作Gamma),表示在一个调度周期内,总共最多有Γ个不确定源同时达到“坏”值。Γ=0表示完全无视误差,模型退化成确定性模型
