Content is user-generated and unverified.

电力现货交易算法工程师成长路线图与核心技术栈深度解析

面向熟悉时间序列、量化交易、运筹优化(从业约 1 年)、正转型进入电力现货/辅助服务/储能套利/VPP 聚合交易的算法工程师。全文组织为 市场机制 → 物理约束优化 → 不确定性处理 → 实时控制 → AI 赋能 → 工程落地 六层体系;每层给出数学形式、伪代码、典型 benchmark 与权威文献。


第一章 电力市场机制:算法边界由规则定义

电力市场与金融市场最根本的区别是标的不可储存物理约束硬性双结算机制。任何交易算法在不熟悉机制前都会"写一个漂亮的策略但不知道为何亏钱"。

1.1 双结算(Two-Settlement)系统

北美(PJM、MISO、NYISO、ERCOT、CAISO)普遍采用 day-ahead market (DAM) + real-time market (RTM) 双结算:

  • DAM 在 D-1 日 10:00–13:00 左右关闸,以 LMP_DA 结算计划电量;
  • RTM 每 5 min(PJM/MISO)或每 15 min(CAISO, ERCOT 名义 5 min 但结算 15 min)出清,以 LMP_RT 结算"DAM 与实际出力之差";
  • 结算公式:$\text{Revenue}=Q_{DA}\cdot \text{LMP}{DA}+(Q{RT}-Q_{DA})\cdot \text{LMP}_{RT}$。

对交易员的算法含义:虚拟交易(virtual bid: INC/DEC) 本质上在对 $\text{LMP}{DA}-\text{LMP}{RT}$ 做 basis spread 交易;历史上 PJM 虚拟交易价差持续压缩、Sharpe 从 2010 的 3+ 降至 2023 的 <1,是典型的"市场被量化磨平"案例。

1.2 节点边际电价(LMP)分解

LMP 作为出清结果,满足: $$\text{LMP}n=\underbrace{\lambda{\text{energy}}}{\text{全网能量价}}+\underbrace{\sum{\ell}(\text{PTDF}{\ell,n}\cdot \mu\ell)}{\text{拥塞分量}}+\underbrace{\text{MLF}n\cdot \lambda{\text{energy}}}{\text{损耗分量}}$$

PTDF(Power Transfer Distribution Factor)量化节点 $n$ 注入 1 MW 时线路 $\ell$ 的增量流量;$\mu_\ell$ 是对偶变量。理解这三分量是节点价格预测的起点:拥塞是阶梯函数,能量是连续函数,混合训练会被拥塞 spike 主导。

FTR/CRR 作为拥塞对冲工具:持有节点对 $(n_1,n_2)$ 的 FTR 收益为 $(\text{LMP}{n_2}-\text{LMP}{n_1})\cdot Q$,拍卖价格与 secondary market 之间长期偏差催生了专门的 FTR 量化策略(Inertia Power、Vitol 等有公开 case)。

1.3 中国现货试点:第一/二/三批

从 2017 年"8+1"试点到 2024 年"6 省正式运行 + 20 省连续结算试运行",中国现货市场的关键设计与北美差异显著:

  • 单一报价 vs 联合出清:山西、山东采用日前单一出清(能量 + 备用),广东目前能量与辅助服务分开;
  • 全电量市场 vs 价差市场:广东采用"中长期合约 + 偏差市场"的价差结算,山东山西走全电量 LMP;
  • 负电价:山东 2023-05 开始出现 -85 元/MWh 负价,2024 负时段累计 >200 小时;
  • 价格上/下限:山东 DA [0, 1500]、RT [-80, 1500] 元/MWh;山西 DA [0, 1500]、RT 边界逐步放开;
  • 容量补偿:多省 2024 起引入容量电价(100–165 元/kW/year)。

对算法的含义:中国现货历史长度短(通常 1–3 年可用数据),fine-tune 深度模型容易过拟合;时序基础模型(TimesFM / Chronos)零样本transfer learning from ERCOT/EPEX 是 2025 起的务实选择。

1.4 辅助服务与多产品联合优化

Co-optimization 指在同一 MILP 里同时出清能量与备用(Regulation、Spinning、Non-spinning)。产品间的机会成本耦合:一台机组选择提供 Reg Up 就无法同时卖出那部分能量。最优报价策略必须对各产品 clearing price 做联合分布预测,而不是独立预测。

辅助服务价格往往比能量更 spiky:ERCOT ORDC(Operating Reserve Demand Curve)使得备用价格在 scarcity 时段飙升至 $9000/MWh,2021 Uri 冰暴四天贡献了 ERCOT 全年辅助服务收入的 80%。尾部事件是真正的 alpha 来源,这也是为什么分位数回归、CRPS、概率预测在电力尤其重要。


第二章 机组组合、经济调度、最优潮流:市场出清的引擎

没有 UC/ED/OPF 就没有 LMP。所有交易策略的理论最优解都可以视为某个 MILP 的解;理解这些问题本身就是理解 LMP 如何产生。

2.1 机组组合(Unit Commitment, UC)

经典 UC 是 MILP: $$ \min \sum_{g,t}!\big[C_g^{NL}u_{g,t}+C_g^{MR}p_{g,t}+C_g^{SU}v_{g,t}\big] $$ 约束包括:功率平衡 $\sum_g p_{g,t}=L_t$、机组出力范围 $P_g^{\min}u_{g,t}\le p_{g,t}\le P_g^{\max}u_{g,t}$、爬坡 $p_{g,t}-p_{g,t-1}\le R_g^{up}$、最小开停机时长 $\sum_{\tau=t-T_g^{up}+1}^t v_{g,\tau}\le u_{g,t}$、启停状态方程 $u_{g,t}-u_{g,t-1}=v_{g,t}-w_{g,t}$。

紧致公式(tight formulation) 是算法工程的关键:Gentile-Morales-España-Ramos 2017 的 3-binary 公式能把 LP relaxation gap 从 5–10% 降到 0.5–1%,求解时间加速 5–50×。Knueven-Ostrowski-Watson (INFORMS JOC 2020) 给出当前最强 UC 切平面。

典型规模:300 机组 × 96 时段(15 min 粒度日前)≈ 86,400 个二元变量 + 200 万约束,Gurobi 12 在 MIPGap=0.1% 下 1–15 分钟可解;PJM 实际生产用 1100+ 机组 SCUC,需要商业求解器 + 紧致公式 + warm start 组合拳。

2.2 经济调度(Economic Dispatch, ED)与 DC-OPF

UC 固定二元变量后退化为 LP(经济调度)。DC-OPF 在 ED 基础上加入直流潮流近似: $$f_\ell=\sum_n \text{PTDF}{\ell,n}(p_n-L_n),\quad -F\ell^{\max}\le f_\ell\le F_\ell^{\max}$$ DC-OPF 假设 $|V_n|=1\text{ p.u.}$、线路电阻忽略、角差小,是 ISO 出清的事实标准。

2.3 AC-OPF:非凸性与松弛层级

交流潮流是非凸 QCQP: $$\begin{aligned}p_n-jq_n&=V_n^*\sum_m Y_{nm}V_m\\min\ &\sum C_g(p_g)\ \text{s.t.}\ |V|,|f|,(p,q)\in\text{bounds}\end{aligned}$$

三层凸松弛由浅入深:

  1. SOCP (Jabr 2006):用 $c_{nm}=|V_n||V_m|\cos\theta_{nm},\ s_{nm}=|V_n||V_m|\sin\theta_{nm}$ 替换,得到旋转二阶锥约束 $c_{nm}^2+s_{nm}^2\le |V_n|^2|V_m|^2$。
  2. Chordal SDP (Jabr, Lavaei-Low 2012):MVA 矩阵半正定松弛,辐射网络可达全局最优。
  3. QC 松弛 (Coffrin-Hijazi-Van Hentenryck 2016):把三角函数用凸包络夹住。

DistFlow (Baran-Wu 1989) 对辐射配电网给出精确二阶锥形式,是配电侧 VPP 优化的核心工具。

2.4 安全约束(SC-UC, SC-OPF)

N-1 安全要求任一单线路/机组故障后系统仍可行。两种处理路径:

  • Preventive:一组基态 dispatch 同时满足所有 contingency 的潮流约束(保守、高成本);
  • Corrective:基态最优,故障后允许 re-dispatch(更经济但需快速恢复)。

Benders 分解 经典范式:主问题是 UC,子问题是每个 contingency 的可行性检查,子问题不可行则生成 feasibility cut 回传。典型 200 个 contingency × 300 机组的 SC-UC 约 6–30 分钟可解。


第三章 不确定性优化:从随机到鲁棒到分布鲁棒

风光渗透率 >30% 的系统确定性 UC 已不可用。不确定性优化有四大范式,各有适用场景。

3.1 两阶段随机规划(SP)与 SAA

$$\min_x c^\top x+\mathbb{E}_\xi[Q(x,\xi)],\quad Q(x,\xi)=\min_y q^\top y\ \text{s.t.}\ Wy=h(\xi)-Tx$$

样本平均近似(SAA):$\mathbb{E}\to \frac{1}{N}\sum_{i=1}^N$,$N$ 通常 10–500。情景生成常用方法:

  • Monte Carlo + copula 保留风光负荷联合相关性;
  • GMM 聚类 + 情景缩减 (Dupačová-Gröwe-Kuska-Römisch 2003 前向选择);
  • GAN/Diffusion 生成情景轨迹 (Chen et al. 2018 Wasserstein GAN, 更近期 Zhang 2024 diffusion)。

Benders / L-shaped 分解:主问题决策 $x$,子问题对每个 scenario 评估 $Q(x,\xi_i)$ 并返回 optimality cut。百级场景规模常规可解。

3.2 鲁棒优化(RO)与二阶段鲁棒(ARO)

不确定集 $\mathcal{U}$ 取代概率分布: $$\min_x\max_{\xi\in\mathcal{U}}\min_y c^\top x+q^\top y$$

预算不确定集 (Bertsimas-Sim 2004):$\mathcal{U}={\xi:\ |\xi_i-\bar\xi_i|\le\hat\xi_i,\ \sum_i|\xi_i-\bar\xi_i|/\hat\xi_i\le\Gamma}$,$\Gamma$ 控制保守度。对应确定性等价是 LP(不扩张问题维度),是 RO 被工业界接受的关键。

Column-and-Constraint Generation (C&CG) (Zeng-Zhao 2013 OR Letters) 是当前两阶段鲁棒 UC (RUC) 的 workhorse:主问题小 MIP,每次加入最坏场景对应的一整列决策变量;收敛比 Benders 快数量级。

RUC 实证(Bertsimas 等 2013 IEEE TPS):风电 20% 渗透下,RUC 相比确定性 UC 减少了 75% 的实时弃风,运行成本只增 <1%。

3.3 机会约束(Chance-Constrained)

$$\Pr{g(x,\xi)\le 0}\ge 1-\epsilon$$

正态 + 线性约束的解析化:$g=a^\top(x)\xi+b(x)$,$\xi\sim\mathcal N(\mu,\Sigma)$: $$b(x)+a^\top(x)\mu+\Phi^{-1}(1-\epsilon)|\Sigma^{1/2}a(x)|\le 0$$ 这是 SOCP 约束。CC-OPF (Bienstock-Chertkov-Harnett 2014 SIAM Rev) 把该技巧应用到线路限额:保证单线路越限概率 <1%,线路利用率提升 20%+,计算复杂度仅线性增加。

Scenario Approach (Campi-Garatti 2008) 提供分布无关的样本量保证:$N\ge\lceil \frac{2}{\epsilon}(\ln\frac{1}{\beta}+d)\rceil$ 即满足 $(1-\epsilon,1-\beta)$ 置信。适合非高斯、非解析情景。

3.4 分布鲁棒优化(DRO)——2025 前沿

不确定的是分布本身:$\min_x \max_{P\in\mathcal P}\mathbb E_P[\cdot]$。两种主流 $\mathcal P$:

  • Moment-based(Delage-Ye 2010):固定 $\mathbb E,\text{Cov}$;对应约束是 SDP。
  • Wasserstein 球(Mohajerin-Esfahani-Kuhn 2018 Math. Programming):$\mathcal P={P:\ W_p(P,\hat P_N)\le\epsilon}$。有限样本保证 + 凸 reformulation + 易调参($\epsilon$ 随样本量衰减),是 2018 后 DRO 事实标准。

电力应用:Duan-Zhang-Zhao 2018 WDRO-UC;Wang et al. 2023 TSG WDRO-Storage。典型提升:在有限样本场景下,WDRO 相对 SAA 减少 out-of-sample 约束违反 50–80%,成本代价 2–5%。

3.5 四范式选型表

范式需要的信息计算复杂度保守度推荐电力场景
SP/SAA真实分布采样中高(场景树膨胀)可调长期规划、投资
RO不确定集日前 RUC、关键 N-1
CC分布 + 概率水平低–中实时 CC-OPF、快速决策
DRO (Wasserstein)样本可调($\epsilon$)数据有限的新市场、风光

第四章 模型预测控制:滚动优化的艺术

MPC 是一种"每步求解 finite-horizon 优化并只执行首个控制"的滚动框架,在电力调度(EMS、AGC 跟踪、储能实时控制)中是把预测转化为控制的主流桥梁。

4.1 线性 MPC 与稳定性

$$\min\sum_{k=0}^{N-1}(x_k^\top Q x_k+u_k^\top R u_k)+x_N^\top P x_N$$ 约束:$x_{k+1}=Ax_k+Bu_k$,$u\in\mathcal U$,$x\in\mathcal X$。

名义稳定性三件套:终端代价 $P$ 取 DARE 解、终端约束集 $\mathcal X_f$ 为控制不变集、递归可行性 + Lyapunov 递减 → 原点渐近稳定 (Rawlings-Mayne-Diehl 2017)。

4.2 鲁棒 Tube MPC 与随机 MPC

Tube MPC (Mayne-Seron-Raković 2005):状态轨迹被约束在 nominal 轨迹 $\bar x$ 周围的不变集 $\mathcal Z$ 内;名义系统在紧缩集 $\mathcal X\ominus\mathcal Z$、$\mathcal U\ominus K\mathcal Z$ 上优化;使用状态反馈 $u=\bar u+K(x-\bar x)$。对有界扰动 $w\in\mathcal W$ 提供硬鲁棒保证。

Stochastic MPC 对随机扰动用机会约束或 scenario-tree。

4.3 经济 MPC

目标直接是经济量(成本、利润)而非跟踪误差,在储能实时套利中非常自然: $$\min\sum_{k=0}^{N-1}!\big[p_k a_k\Delta t+c_{deg}|a_k|^\alpha\big]\ \text{s.t. SoC 动态 + 边界}$$ Diehl-Amrit-Rawlings (IEEE TAC 2011) 给出 dissipativity 条件下的稳定性。

4.4 数据驱动 MPC

  • DeePC (Coulson-Lygeros-Dörfler 2019):用 Hankel 矩阵 + Fundamental Lemma 替代系统辨识,直接优化 trajectory。
  • Koopman MPC:用 Koopman 算子线性化非线性系统。
  • Learning-based MPC:神经网络学习 terminal cost 或 value function 以缩短 horizon。

4.5 电力 MPC 三大应用

  1. EMS 滚动调度:每 5–15 min 求解 T=24h 的 look-ahead ED,用最新风光/负荷预测,首时段下发。中国多省"SCED with look-ahead"即此模式。
  2. 储能实时跟踪:跟踪 DAM 提交的 schedule 同时避免越限,T=30 min、$\Delta t$=1 min,典型 LP 1 ms 级可解。
  3. HVAC / 建筑灵活负荷:舒适度约束下最小化电费 + 碳排放,T=24h,非线性 NLP 需 IPOPT/Knitro 求解。

工程经验:MPC 成功的 80% 在预测质量,20% 在优化器设置。预测偏差导致 schedule recession(目标漂移)时应加入 integral action 或 disturbance observer。


第五章 AI 时序预测:从 Transformer 到基础模型

5.1 Transformer 时序家族演化

Transformer 在语言上的成功并未直接转移到时序。关键里程碑:

  • Informer (AAAI 21):ProbSparse 注意力 + 一次性 decoder,复杂度 $O(L\log L)$,长序列首次可行;
  • Autoformer (NeurIPS 21):auto-correlation 替代 attention,显式 trend-seasonal 分解,契合电力日周期;
  • FEDformer (ICML 22):Fourier/Wavelet 频域增强,ECL 数据集相比 Autoformer MSE -14%;
  • PatchTST (ICLR 23):subseries patching + channel-independent,归还 Transformer 性能优势;
  • iTransformer (ICLR 24 Spotlight):反转维度 把变量作为 token,跨变量自注意力;在 Traffic、ECL、Solar-Energy 等高维数据上 SOTA。对 ISO 数百节点 LMP 预测几乎是现成架构;
  • TimeMixer (ICLR 24):全 MLP 多尺度 mixing,推理快、效果与 iTransformer 接近。

警示性结果:Zeng et al. (AAAI 23) 的 DLinear——两个单层线性层在 9 个 benchmark 上击败所有 Transformer 变体——提醒我们电力时序强周期下 channel-independent 线性 baseline 必须训练并基准化。Nie et al. 后续指出 Transformer 的性能被不公平对比压制,PatchTST 是正当反击。

5.2 概率预测(Probabilistic Forecasting)

现货交易所需的不是点估计,而是分布。核心工具:

  • 分位数回归 + pinball loss(可并行输出多分位);
  • DeepAR (Salinas 2020):autoregressive RNN 输出参数化分布;
  • TFT (Lim 2021):静态/动态协变量 + 可解释注意力 + 分位数头,M4 与电力数据击败 DeepAR;
  • Conformal Prediction 做有限样本覆盖保证:ACI (Gibbs-Candès 2021)、AgACI (Zaffran 2022) 在法国 EPEX 日前电价上提供最紧 PI;
  • TimeGrad / CSDI / SSSD:扩散概率预测,对电价 spike 分布建模比 Gaussian 更好,但推理慢。

2024 SOTA 基线 DDNN-JSU (Marcjasz 2023):直接输出 Johnson's SU 分布参数,对尾部尖峰 pinball loss 最低。

5.3 时序基础模型(TSFM, 2024–2026)

零样本/少样本是对中国新市场冷启动的救命稻草:

模型机构规模关键点
TimesFMGoogle (ICML 24)200M/500M200B 时间点预训练,decoder-only + patching;2025 TimesFM-ICF 支持 in-context FT
ChronosAmazon 24Tiny–LargeT5 + time tokenization;Chronos-Bolt 分位数;Chronos-2 2025 支持多变量 + 协变量
Moirai / Moirai-MoESalesforce (ICML 24)S/B/Lany-variate attention, 多频率;MoE 版本提升 17%
TTMIBM (NeurIPS 24)1–5M轻量 MLP-Mixer,零样本超越 Moirai 4–10%、TimesFM 19%;边缘部署首选
TimeGPT-1Nixtla闭源商业 API
MOMENT / Toto / Timer-XL其他变体

重要警示:Aksu et al. (2024) 发现 TSFM benchmark 存在严重 information leakage——若评测集出现在预训练语料,MSE 可虚低 47–184%。落地必须自建 OOD 电力 holdout

5.4 GNN 与电网拓扑

电网天然是图。STGCN / DCRNN / Graph WaveNet 三兄弟在节点级 LMP 预测比 sequence-only 模型 MAE 降 10–25%。DeepOPF (Pan-Zhao-Chen IEEE TPWRS 2020) 用 NN 学 load→dispatch 映射 + 潮流方程重构保证等式约束:IEEE 300-bus DC-OPF 加速 100×、gap <0.2%;DeepOPF-V AC-OPF 加速 3–4 数量级、gap <0.15%。

5.5 LLM 的角色

GPT4TS / Time-LLM 把冻结 LLM 用于时序,效果参差。更务实的 LLM 用法是处理事件文本:outage notice、发电机检修计划、极端天气预警。典型 pipeline:LLM embed 事件 → 作为外生特征注入 TFT/iTransformer,在 spike 日预测误差可降 5–10%。

5.6 电价预测必过基线

Lago-Marcjasz-De Schutter-Weron 2021 的 EPFToolbox (Applied Energy 293:116983) 已是事实标准:5 个市场、6 年数据、包含 LEAR(LASSO 自回归)与 DNN baseline、Diebold-Mariano / Giacomini-White 检验。经验总结:ensemble of 4 DNNs with different seeds 是近年稳定最优、DNN 训练成本是 LEAR 的 100×、递归 recalibration 每日重训显著优于 static 模型。


第六章 强化学习与端到端优化:新一代决策范式

6.1 连续控制 RL 核心

SAC(Haarnoja 2018)是当前储能/微电网默认算法: $$J(\pi)=\sum_t\mathbb E_{(s_t,a_t)\sim\pi}[r(s_t,a_t)+\alpha\mathcal H(\pi(\cdot|s_t))]$$ 最大熵正则天然鼓励探索,reparameterization trick + automatic temperature 使训练稳定;相比 DDPG/TD3,对 reward scale 更鲁棒。PPO (Schulman 2017) 在 on-policy、并行 env 仿真的 VPP bidding 仿真中常用。

电池套利 MDP 标准化:$s=(SoC,p_{t-L:t},\hat p,\text{time feat})$;$a\in[-P_{\max},P_{\max}]$;$r=-p_ta_t\Delta t-c_{deg}|a_t|^\alpha-\lambda\cdot\text{SoC 越限}^+$。

Cao-Harrold-Fan-Morstyn-Strbac (IEEE TSG 2020):DRL(Noisy Net DQN + CNN-LSTM 价格预测)在英国 wholesale 2017 测试集上达到 MILP-with-perfect-foresight 的 70–90% 利润,且在精确 rainflow 老化成本下优于忽略老化的 MILP。

6.2 Offline RL:用历史数据安全训练

储能运营商 有海量历史数据但不愿真金白银试错。Offline RL 应运而生,核心挑战是 distributional shift。

  • CQL (Kumar NeurIPS 20):保守 Q,压低 OOD 动作的 $Q$ 值;
  • IQL (Kostrikov ICLR 22):用 expectile regression 估 $V$,完全避开 OOD 动作 max;实现简洁,在储能 offline 已是默认 baseline;
  • Decision Transformer (Chen NeurIPS 21):RL 作为序列建模,给定 return-to-go 生成动作。

6.3 Safe RL:硬约束不可越

电池 SoC 越限、配电网电压越限是物理硬约束。Constrained MDP (Altman 1999) + CPO (Achiam ICML 17) trust-region 理论 + PPO-Lagrangian 工程实操 + Shielding(动作投影到安全集)组合是当前最成熟范式。对储能:事前 clip $a_t$ 到 $[\max(-P_{\max},(SoC-SoC_{\min})/\Delta t\eta_d),\min(P_{\max},(SoC_{\max}-SoC)/\Delta t/\eta_c)]$ 即可硬保证 SoC 不越界。

6.4 多智能体 RL 在 VPP

  • MADDPG (Lowe NeurIPS 17):中心化 critic 吸收非平稳性;
  • QMIX (Rashid ICML 18):$\partial Q_{tot}/\partial Q_i\ge 0$ 单调性保证分散执行;
  • MAPPO (Yu NeurIPS 22):多智能体 PPO,超参得当后在 SMAC 等 benchmark 超过 off-policy;
  • Mean Field MARL (Yang ICML 18):大规模 bidder 用平均场近似。

6.5 端到端学习:Decision-Focused Learning

Predict-then-Optimize (PTO) 的通病是**"预测准但决策差"**:MSE 优化的预测器对下游优化是 loss-agnostic。DFL 直接优化 decision regret: $$\text{Regret}(\hat c,c)=c^\top x^(\hat c)-c^\top x^(c)$$

SPO+ Loss (Elmachtoub-Grigas, Management Science 2022) 是线性目标 LP/MIP 下 DFL 的奠基性工作: $$\boxed{\ell_{SPO^+}(\hat c,c)=\max_{w\in S}{(c-2\hat c)^\top w}+2\hat c^\top w^(c)-z^(c)}$$ 凸上界、Fisher 一致、subgradient = $2(w^(c)-w^(2\hat c-c))$,每 batch 只需解两个 LP。最短路径 benchmark 上 regret 比 OLS 低 30–50%。在 economic dispatch、storage arbitrage LP 应用中带来 5–15% 额外利润。

OptNet (Amos-Kolter ICML 17) 把 QP 作为可微网络层,通过 KKT 隐函数定理推导 $\partial z^*/\partial\theta$;cvxpylayers (Agrawal NeurIPS 19) 把通用 DCP 凸优化变成 PyTorch/JAX 层,实现极简:

python
p = cp.Variable(T); price = cp.Parameter(T); SoC0 = cp.Parameter()
constraints = [SoC[0]==SoC0, SoC[1:]==SoC[:-1]+eta*p, 
               p>=-Pmax, p<=Pmax, SoC>=0, SoC<=C]
prob = cp.Problem(cp.Minimize(price @ p), constraints)
layer = CvxpyLayer(prob, parameters=[price,SoC0], variables=[p])
p_star, = layer(price_pred_torch, SoC0_torch)
loss = (p_star * true_price).sum()  # decision loss
loss.backward()  # 梯度穿过 LP

DC3 (Donti-Rolnick-Kolter ICLR 21) 针对含硬约束的 OPF:NN 输出部分变量 + 潮流方程 completion + unrolled projected gradient correction。AC-OPF 118-bus 可行性 100%、cost gap <0.3%、比 OSQP 快 9×。

工程 tip:先用 MSE pretrain 预测器、DFL fine-tune 时学习率降 10×、batch 内 LP solve 并行(qpth 支持 batched LP)、MIP 用 perturbation 梯度(Berthet NeurIPS 20)。


第七章 虚拟电厂与分布式优化

7.1 VPP 业务模型

VPP 把屋顶光伏、储能、EV、可控负荷聚合为单一市场实体。Next Kraftwerke (Shell 旗下, 2022 突破 10 GW)、中国 国网冀北 VPP (2019, 4 个月创收 624 万元)、深圳 VPP 管理中心 (2022, 2025 目标 100 万 kW) 是代表案例。中国市场预测 2025 年 102 亿元、2030 年 1000 亿元。

7.2 ADMM:分布式优化的 workhorse

Boyd-Parikh-Chu-Peleato-Eckstein (FnT ML 2011) 奠定现代用法: $$ \begin{aligned} x^{k+1}&=\arg\min_x f(x)+\tfrac\rho 2|Ax+Bz^k-c+u^k|^2\ z^{k+1}&=\arg\min_z g(z)+\tfrac\rho 2|Ax^{k+1}+Bz-c+u^k|^2\ u^{k+1}&=u^k+Ax^{k+1}+Bz^{k+1}-c \end{aligned} $$

Consensus ADMM 适合 VPP:每 DER 本地优化 $f_i$,只与中心交换 $p_i$(不泄露本地成本函数)。

Distributed OPF (Kraning-Chu-Lavaei-Boyd FnT Optimization 2014) "Dynamic Network Energy Management via Proximal Message Passing" 是分布式 OPF 的奠基工作:网络抽象为 device-net-terminal 二部图,ADMM x-update 在 device 私有、z-update 在 net 做基尔霍夫平均。2024 年 Lavaei 等综述总结了 ADMM+ML 组合:RL 动态选 $\rho$、异步 ADMM 处理通信失败。

7.3 Stackelberg / 双层优化

VPP 运营商 (Leader) 定价 → DER/用户 (Follower) 响应 → Leader 最优定价。若 Lower 凸且 Slater 成立,KKT reformulation 得到含互补约束的 MPEC,Fortuny-Amat-McCarl big-M 线性化(或 SOS1 / indicator constraints)转为 MILP。更现代:用 cvxpylayers/OptNet 把 $x^*(\pi)$ 作为可微函数,上层 gradient descent。

7.4 隐私保护分布式(2024–2026)

三条路径:

  • Differential Privacy:每梯度/消息加 Gaussian 噪声,$\sigma=C\sqrt{2\ln(1.25/\delta)}/\epsilon$;DP-ADMM (Huang 2020 IEEE TIFS);
  • SMPC:Shamir 秘密分享 + SPDZ/ABY3,适合小型安全聚合;
  • Federated Learning:FedAvg (McMahan AISTATS 17) 用于能源预测:CNN-LSTM-FL (Sarmento 2024)、EIF-FL (Fakher 2025 Cluster Computing, accuracy 0.94)、MDPI Smart Cities 2024 FL for non-stationary loads;2025 起垂直 FL 用于 DSO-TSO 数据融合、personalized FL 处理 DER 异质性。

第八章 工程落地:数据、求解器、回测

8.1 SCADA/PMU 数据质量

采样率谱:SCADA 模拟量 2–4 s(国网 4 s)、风光场站 SCADA 10 min 平均(IEC 61400-25)、PMU 30–120 Hz(IEEE C37.118)、AGC 指令 4 s、计量 15 min MWh。SCADA vs PMU:时标精度 s vs μs、数据量差 2–3 个数量级、历史库分别部署。

七大典型问题:传感器漂移(0.1–0.5%/月)、通信中断(必须看 quality flag!)、时标错误(一律 UTC 存储、DST 坑)、数值跳变(Hampel filter: 滚动中位数 + 3×MAD)、单位混乱(MW/MWh/标幺值)、冻结值(滚动 std=0 检测)、风电 curtailment 预过滤(DTU Wind 经验:<5% 可丢、≥5% 必须 imputation)。

异常检测推荐组合:Hampel 清 spike → STL 分离季节性 → Isolation Forest/3σ 处理残差 → 保留 quality flag 交给下游决定。

Imputation:生产环境用 LOCF + 线性插值 + 季节性中位数三级保底;离线训练用 SAITS (Du 2023 ESWA) 或 CSDI (NeurIPS 21);工具链 PyPOTS 提供 20+ 模型一致 API + TSI-Bench (2024) 标准基准。

8.2 求解器选型(2026 现状)

商业求解器

  • Gurobi 12/13 (2024/2025):MILP 最强、12 起原生全局 MINLP、13 起 PDHG GPU LP 加速;MIPLIB2017 领先;2024-08 自愿退出 Mittelmann 公开基准;
  • CPLEX 22:对偶单纯形稳健,无非凸 QCP global;
  • Xpress:Mosel 建模语言,MIP 性能紧追 Gurobi;
  • COPT 8 (杉数):国产化首选,8.0 起 global nonconvex QCQP + GPU LP/barrier,Mittelmann 公开部分排名第一;
  • MOSEK 10/11:SOCP/SDP 领先,锥优化首选。

开源求解器

  • HiGHS 1.12 (2025):MIT 许可,SciPy 1.6+ 默认 LP、1.9+ 默认 MILP、MATLAB 2024a 默认;1.10+ 支持 NVIDIA GPU PDLP;PyPSA/GenX/Linopy 生态事实默认;当前最强开源 MILP;
  • SCIP 9 (2024):2023-11 切换 Apache 2.0,降低商用门槛;MINLP 强项;
  • CBC:老牌 COIN-OR,已被 HiGHS 超越。

Python 建模层:gurobipy 原生最快、Pyomo 功能最全、CVXPY 凸优化最优雅、Linopy (xarray-backed) 在 PyPSA-Eur 千万变量级模型下比 Pyomo 快 10×+。

Gurobi 调参起点(MILP):MIPGap=0.001, MIPFocus=1, Presolve=2, Cuts=2, Heuristics=0.1, Threads=8, NumericFocus=1。大 UC 加 NoRelHeurTime=60MIPFocus 是最高杠杆参数:1 快速找可行解(生产推荐)、2 证明最优、3 收紧 bound。LPWarmStart=2 保留 presolve 收益,rolling-horizon 加速 5–20×。

8.3 模型规模估算

300 机组 × 96 时段 × 500 母线 × 800 线路 DC-OPF + UC

  • 二元变量 86,400 + 连续 153,600
  • 约束 0.5M–2M(依赖 min-up/down 紧致度)
  • 非零 5M–20M
  • RAM:20M 非零 ≈ 30–80 GB
  • Gurobi 12 @ MIPGap 0.1%:30 s–15 min
  • PJM 级(1100+ 机组 × 24h):1–20 min,需要紧致公式 + cuts

8.4 回测系统设计

Walk-forward validation 原则:训练必须 trail 测试,绝不 shuffle。典型设置:

  • 日前价格预测:训练 12–24 月、测试 1 天、滚动 1 天;
  • 储能套利策略:训练 24 月、测试 1 月、月度再训练;
  • Purged/Embargoed CV (López de Prado 2018) 处理自相关 leakage。

电力场景典型 leakage

  1. 结算价作特征预测出清价(结算价已包含所有事后信息);
  2. 用"当日实际负荷"代替"day-ahead 预报";
  3. z-score 用全样本 μ/σ;
  4. rolling center=True
  5. ERCOT 2023 训练集包含"当时不存在的 2GW 电池 + 7GW 光伏"(Enertel 博客经典案例)。

预防:所有 feature shift(1)、scaler 在训练 fold 内 fit、记录数据 arrival timestamp、feature store 用 point-in-time join、CI/CD 加 date assertion 单元测试。

必含 benchmark:perfect foresight(理论上界)、persistence(上周同时刻)、LEAR(电价预测强 baseline)、heuristic charging rule。

Stress testing:历史极端事件回放(2021 ERCOT Uri、2022 欧洲能源危机、2024 CA 鸭子曲线深谷、负电价日)。

评价指标:价格 MAE/RMSE/sMAPE/rMAE(Lago 推荐);概率 CRPS(Gneiting-Raftery 2007,电力事实标准)、pinball loss、PICP/MPIW;策略 Sharpe/Sortino、Max Drawdown、每 MW 日收益、循环次数。

过拟合诊断PBO (Bailey 2016) >30% 代表脆弱;Deflated Sharpe Ratio 校正多重检验;对 factor zoo 用 t≥3.0 门槛(Harvey-Liu-Zhu 2016)而非 2.0。López de Prado 金句:"Backtest 用于淘汰坏策略,而不是改进策略"


第九章 六个月到三年的能力路线图

9.1 六个月硬核入门

目标:能独立完成"价格预测 + 储能套利"全流程 demo。

  1. 精读 Kirschen-Strbac《Fundamentals of Power System Economics》第 4–6 章 + Stoft《Power System Economics》;
  2. 复现 Lago 2021 EPFToolbox,在 5 个市场上跑出 LEAR + DNN 结果并过 DM 检验;
  3. 用 Pyomo + HiGHS 写一个 24h UC(30 机组 IEEE case)并复现 PJM example;
  4. 用 CVXPY 写储能 LP 套利、再用 cvxpylayers 做预测-决策联合训练;
  5. 精读 Boyd ADMM 综述 + 实现 2-bus distributed OPF。

9.2 一年进阶

  1. 实现 SAC 储能套利(stable-baselines3)+ Safe RL shielding;
  2. 复现 SPO+(PyEPO 开源库)+ 在电力 LP 上 A/B 测试;
  3. 部署 iTransformer 多节点 LMP 预测 + Adaptive Conformal Inference 区间;
  4. C&CG 实现两阶段鲁棒 UC,对比 SAA;
  5. 研读 Gurobi Optimization Modeling & Programming Guide 与 Gurobi 12/13 release notes。

9.3 两到三年突破

  1. 分布鲁棒 Wasserstein UC(复现 Duan 2018);
  2. 多智能体 VPP:MAPPO + ADMM 混合架构;
  3. GNN AC-OPF:复现 DeepOPF-V + DC3;
  4. Time Series Foundation Model 在新市场的 transfer learning,自建 OOD holdout;
  5. FL + DP 隐私分布式能源预测;
  6. 针对真实业务(山东/广东现货、FTR、容量市场、辅助服务)做端到端产品。

关键结论与前瞻判断

第一,运筹 + 时序 + RL 的三元技能栈已是电力算法工程师的基本盘。单懂机器学习会"预测准但决策差";单懂运筹会被风光不确定性击溃;单懂 RL 会在安全约束前翻车。SPO+/cvxpylayers/DC3 这一族 可微优化层 正在把三者粘合为真正的端到端系统,这是 2024–2026 最值得投入的方向。

第二,时序基础模型对中国新市场是"降维打击"而非"替代"。TimesFM/Chronos/TTM 零样本可以把冷启动 MAE 压到可用水平,但 一旦积累 1–2 年数据,fine-tune 的 PatchTST/iTransformer + ensemble 反超基础模型是常态。TSFM 的价值在于"下限",不是"上限"。同时必须警惕 Aksu et al. 揭示的 benchmark 泄露问题——永远自建 OOD holdout

第三,鲁棒优化在新能源主导系统里从"学术玩具"变成"合规刚需"。Bertsimas budget 不确定集 + C&CG 分解的工程成熟度已足够支撑省级 RUC;Wasserstein DRO 在数据有限的新市场(中国现货试点 <2 年数据)尤为贴合。但必须用 scenario reduction + decomposition 控制计算成本,否则会被 MILP 规模压垮。

第四,Offline RL + Safe RL 是储能算法的下一波浪潮。储能企业握有千台设备 × 多年秒级调度数据,不愿真金白银试错——IQL/CQL + Lagrangian + Shielding 组合是当前最成熟技术栈;预计 2026–2027 出现第一批规模化商用案例。

第五,求解器国产化与 GPU 加速并行发生。COPT 8 在 Mittelmann 公开基准领先开源、Gurobi 13 PDHG GPU、HiGHS 1.12 开源 PDLP GPU——2026 的 LP/MILP 已经不再是"CPU 单核战争"。电力算法工程师需要跟上 GPU 大模型 LP 的技术栈,未来十年这是量变到质变的拐点。

第六,VPP + 联邦学习 + 隐私计算将改写分布式能源治理的底层逻辑。Next Kraftwerke 10 GW + 冀北 VPP + 深圳 VPP 已证明业务可行,2025 起 FL+DP 在 IEEE TSG、Applied Energy 的密集发表表明学术-工业的对接通道打开。下一个 10 亿美元级别的机会藏在 "既优化又不泄露" 的协议设计里

实战哲学:电力现货交易的 alpha 不会来自"更深的 Transformer",而会来自更准确的场景建模 + 更紧的约束形式 + 更小的 prediction-decision gap。运筹的严谨、ML 的灵活、工程的扎实,缺一不可。

Content is user-generated and unverified.
    电力现货交易算法工程师成长路线图与技术栈 | Claude