做微网优化调度的朋友应该经常被问到一个问题:既然日内层已经上了MPC,日前优化是不是可以省掉?干脆在每个控制周期让MPC把未来24小时全算一遍不就行了?我第一次做带共享储能的项目时,也抱着这个想法交过一版“纯日内MPC”方案,后来被现场实际运行结果教育了一整轮,才老老实实把日前的“剧本”和日内的“临场修正”重新组合起来。
带着共享储能这个新变量去设计日前日内协同调度,和传统单微网储能调度不太一样。它不光是“预测误差大所以要滚动修正”这么简单,还牵扯到共享容量的分配、整条SOC参考轨迹的交接、以及两层优化各自边界怎么划。本文就把这套基于MPC的日前日内微网共享储能优化调度框架拆开讲清楚,重点聊聊我现在认为最值得注意的部分:日前优化和日内滚动MPC到底各管哪一段、交接点在哪、以及协同设计里容易踩的坑。适合正在做微网优化调度的研究者,也适合准备把MPC从仿真往工程落地的工程师参考。
1. 两阶段架构的逻辑:单靠MPC滚动为什么扛不住微网调度
1.1 离散决策和能量大账,是有限滚动窗口看不全的
先聊一个最常见也最反直觉的问题:为什么不能只用MPC,把预测时域直接拉满24小时,一滚到底?
MPC的本质是有限时域的滚动优化。它的正常工作方式是:在每个采样时刻获取最新状态,基于未来一段时间(通常几小时)的预测,解一个约束优化问题,只执行第一步,等下一个时刻再重新来。这种机制特别适合处理“预测会不断更新、系统存在扰动”的连续控制问题,但有几个先天短板。
第一个短板是离散决策。微网调度里的燃气轮机启停、储能充放电模式切换、联络线购售电状态选择,这些往往都需要0-1整数变量。要是把这些变量全都塞进MPC的滚动窗口里,每个周期都得解一个混合整数规划,实时性撑不住。更要命的是,像机组启停这种决策带有强时间耦合性:今天开机是为了满足晚上的高峰负荷,开机时刻必须提前很久确定。日内MPC只看未来两三个小时,根本不知道今晚负荷会冲到多高,它凭什么决定现在要不要启动机组?这种“跨时段大决策”必须在更长时间尺度上预先做好。
第二个短板是全天能量管理。储能SOC就是一个典型的全天耦合状态变量。假设一台共享储能的SOC现在只有30%,未来4小时光伏预测很好,日内MPC如果只看这4小时,很可能判断“没必要充电”,结果傍晚负荷高峰来时储能没电可放。但如果把时间尺度拉到全天,日前优化
