4. 调度优化问题的数学形式化
前面几节我们已经明确了储能SOC约束调度的物理背景和运行边界。现在要把这些物理规则“翻译”成数学语言,让计算机能够求解。数学形式化的核心工作只有三件事:定义决策变量、写出目标函数、列出约束条件。这三者共同构成一个完整的优化模型,缺一不可。
一、决策变量:让谁去“做决定”
在单储能日前调度问题中,时间被离散为24个时段,每个时段长度为1小时(也可取15分钟,本节以1小时为例)。储能系统在每个时段需要决定两件事:充电功率还是放电功率,以及功率大小。最直观的做法是定义两个非负变量:
- 充电功率 \(P^{ch}_t \geq 0\),单位kW,表示第t时段从电网或新能源吸收的功率;
- 放电功率 \(P^{dis}_t \geq 0\),单位kW,表示第t时段向负荷或电网注入的功率。
这里采用“充放电分离”的建模方式,而不是用一个带正负号的净功率变量。原因是:分离变量后,充放电各自的功率上限约束、效率处理、以及“同一时段不能同时充放电”的逻辑都更容易表达。若用净功率 \(P_t\)(正为放、负为充),虽然变量少一个,但效率非线性、上下限不对称,反而增加复杂度。
除功率变量外,还需要一个状态变量:荷电状态 \(SOC_t\),表示第t时段结束时的剩余电量百分比。它由前一时刻的SOC和本时段的充放电量共同决定,是连接各时段的“记忆变量”。
二、目标函数:什么叫“最优”
日前调度的目标通常不是单一的。常见的有三类:运行成本最小、收益最大、弃风弃光最小。在单储能场景中,最典型的是“运行成本最小”,其数学形式为:
min Σ_t [ C_grid(t) · P_grid(t) · Δt + C_deg · (P_ch(t) + P_dis(t)) · Δt ]
其中第一项是购电成本,\(C_{grid}(t)\) 是t时段的电价(元/kWh),\(P_{grid}(t)\) 是从电网购入的功率;第二项是储能折旧成本,\(C_{deg}\) 是单位充放电量对应的折旧系数(元/kWh),用来避免模型为了省电费而让储能频繁深度充放。如果场景中存在弃风弃光惩罚,还可以加入第三项 \(C_{curt} \cdot P_{curt}(t)\),其中 \(P_{curt}(t)\) 是弃风弃光功率。
目标函数的选择直接决定调度行为的“性格”。只考虑购电成本,储能会倾向于在低价时段满充、高价时段满放;加入折旧成本后,充放电次数会减少,SOC曲线更平缓;再加入弃风惩罚,储能会在新能源大发时段主动多充电,减少弃电。
三、约束条件:物理规律不能违反
约束是模型的“法律”。单储能日前调度至少需要以下几类约束:
- 功率上下限:\(0 \leq P^{ch}_t \leq P^{ch}_{max}\),\(0 \leq P^{dis}_t \leq P^{dis}_{max}\);
- 互斥约束:同一时段不能同时充放电,即 \(P^{ch}_t \cdot P^{dis}_t = 0\)。实际求解中常引入0-1变量 \(u_t\) 线性化:\(P^{ch}_t \leq M \cdot u_t\),\(P^{dis}_t \leq M \cdot (1-u_t)\);
- SOC递推:\(SOC_t = SOC_{t-1} + \frac{\eta_{ch} P^{ch}_t \Delta t}{E_{cap}} - \frac{P^{dis}_t \Delta t}{\eta_{dis} E_{cap}}\);
- SOC上下限:\(SOC_{min} \leq SOC_t \leq SOC_{max}\),通常取10%~90%以保护电池寿命;
- 周期边界:\(SOC_{24} = SOC_0\),保证次日调度可延续;
- 功率平衡:\(P_{grid}(t) + P_{pv}(t) + P^{dis}_t = P_{load}(t) + P^{ch}_t + P_{curt}(t)\)。
其中SOC递推公式是模型的核心。它把相邻时段的电量变化用效率、容量和时间步长联系起来。充电时乘以充电效率 \(\eta_{ch}\),放电时除以放电效率 \(\eta_{dis}\),体现了能量转换的损耗。
四、模型构建练习:从参数到可求解形式
下面以一个具体的单储能日前调度场景为例,完成从物理描述到数学模型的完整构建。假设某工业园区配置一套100 kWh/50 kW的磷酸铁锂储能系统,光伏装机80 kW,日负荷曲线和光伏出力曲线已知,分时电价分为峰、平、谷三档。
第一步:整理输入数据。需要准备24个时段的负荷功率 \(P_{load}(t)\)、光伏出力 \(P_{pv}(t)\)、电价 \(C_{grid}(t)\)。这些数据通常来自历史计量或预测系统。为便于练习,可假设负荷在白天较高、夜间较低,光伏在正午达到峰值,电价在早高峰和晚高峰上浮。
第二步:设定决策变量。对每个时段t,定义 \(P^{ch}_t\)、\(P^{dis}_t\)、\(SOC_t\) 和0-1变量 \(u_t\)。共4×24=96个变量,其中 \(u_t\) 为整数变量,其余为连续变量。这是一个典型的混合整数线性规划(MILP)问题。
第三步:写出目标函数。以运行成本最小为目标:
min Σ_{t=1}^{24} [ C_grid(t) · P_grid(t) · 1h + 0.05 · (P_ch(t) + P_dis(t)) · 1h ]
其中折旧系数取0.05元/kWh,表示每充放1 kWh电池寿命损耗折算成本。该系数可根据电池循环寿命和更换成本估算。
第四步:列出约束。除前述通用约束外,还需注意:光伏出力优先供给负荷,不足部分由电网和储能补充;储能充电只能来自光伏富余或电网低价电;弃风弃光变量 \(P_{curt}(t)\) 仅在光伏出力大于负荷与充电需求之和时为正。
第五步:求解与结果判读。将上述模型输入求解器(如Gurobi、CPLEX或开源CBC),得到各时段充放电功率和SOC轨迹。判读结果时重点看三件事:SOC是否始终在10%~90%之间;充放电是否集中在电价峰谷时段;周期边界SOC是否回到50%。如果SOC在某个时段触及下限,说明放电安排过于激进,可适当增加该时段充电量或放宽SOC下限。