4、风功率预测技术:数值天气预报(NWP)、统计预测模型(ARIMA/LSTM)、组合预测方法、预测误差分析
风功率预测,说白了就是跟老天爷「猜拳」。你想想看,风这东西看不见摸不着,说停就停,说刮就刮。我们做风电的,最头疼的就是这个不确定性。但没办法,电网调度要你报明天的出力曲线,你不报,人家就不给你并网。所以,风功率预测就成了咱们风场运营的「必修课」。
我个人习惯把预测技术分成三大类:物理方法、统计方法、还有组合方法。今天咱们就挨个捋一遍。
4.1 数值天气预报(NWP)—— 物理方法的「硬骨头」
数值天气预报,就是拿超级计算机去解大气运动方程。说白了,它把地球网格化,每个格点算温度、气压、湿度、风速。网格越细,算得越准,但计算量也越大。
我在项目中遇到过一件事:某次用欧洲中心的NWP数据,分辨率9公里,结果预测的风速总是偏低。后来一查,原来是地形效应没处理好。风经过山脊会加速,但NWP的网格太大,把山给「抹平」了。
- 空间分辨率: 全球模型通常25-50km,区域模型可到3-9km
- 时间分辨率: 通常1小时或3小时输出一次
- 预报时效: 短期(0-72h)、中期(3-10天)
- 更新频率: 每6小时或12小时滚动更新
NWP的优点是物理机制清晰,能处理大尺度天气系统。但缺点也很明显:计算成本高,对小尺度局地风场(比如山谷风、海陆风)经常「翻车」。所以,实际工程中很少单独用NWP,通常要搭配统计模型做后处理。
4.2 统计预测模型 —— 数据驱动的「老司机」
统计模型不关心物理过程,它只看历史数据里的规律。你给它喂风速、功率、温度、湿度,它自己找关系。这里面有两个经典代表:ARIMA和LSTM。
4.2.1 ARIMA模型 —— 时间序列的「老黄牛」
ARIMA(自回归积分滑动平均模型),名字听着唬人,其实核心就三件事:差分、自回归、滑动平均。
- 差分(I): 把非平稳序列变成平稳序列。比如风速有日变化,差分一次就能去掉这个趋势。
- 自回归(AR): 用过去的值预测未来的值。比如用t-1、t-2时刻的风速预测t时刻。
- 滑动平均(MA): 用过去的预测误差来修正当前预测。
我曾经用ARIMA做过一个短期预测项目,效果还不错。但有个坑:ARIMA对突变天气(比如冷锋过境)反应迟钝。为什么?因为它只认历史模式,没见过的新情况它就懵了。
4.2.2 LSTM模型 —— 深度学习的「新贵」
LSTM(长短期记忆网络)是循环神经网络(RNN)的升级版。它最大的本事是能记住「长期依赖」。什么意思?比如今天下午的风速变化,可能跟昨天同一时段的大气环流有关。普通RNN记不住那么远,但LSTM可以。
LSTM的核心结构有三个门:
- 遗忘门: 决定丢掉哪些旧信息
- 输入门: 决定记住哪些新信息
- 输出门: 决定输出哪些信息
下面是一个简单的LSTM预测代码示例,我用的是Keras框架:
from keras.models import Sequential
from keras.layers import LSTM, Dense, Dropout
model = Sequential()
model.add(LSTM(units=50, return_sequences=True, input_shape=(lookback, n_features)))
model.add(Dropout(0.2))
model.add(LSTM(units=50, return_sequences=False))
model.add(Dropout(0.2))
model.add(Dense(units=1))
model.compile(optimizer='adam', loss='mse')
model.fit(X_train, y_train, epochs=100, batch_size=32, validation_split=0.1)
我建议你在实际项目中,LSTM的隐藏层不要超过3层。层数太多容易过拟合,而且训练时间成倍增加。另外,输入数据的归一化一定要做,不然LSTM的梯度会爆炸。
4.3 组合预测方法 —— 1+1 > 2
单一模型总有短板。NWP物理机制强但分辨率低,ARIMA擅长短期但怕突变,LSTM能学复杂模式但需要大数据。所以,聪明的工程师会搞「组合拳」。
常见的组合方式有两种:
- 加权平均法: 给NWP、ARIMA、LSTM分别赋权重,比如0.4、0.3、0.3,然后加权求和。权重可以用遗传算法或粒子群算法优化。
- 堆叠法(Stacking): 把多个模型的输出作为新特征,再训练一个「元模型」来做最终预测。元模型通常用简单的线性回归或随机森林。
我记得有一次做风场并网考核,单一模型误差率在12%左右,用了组合方法后降到了8.5%。虽然计算量大了点,但效果确实明显。
- 各模型之间的相关性要低(比如NWP和LSTM的误差模式不同)
- 权重分配要动态调整(比如晴天时NWP权重大,阴天时LSTM权重大)
- 定期重新训练,避免模型老化
4.4 预测误差分析 —— 别只看平均误差
很多新手只看RMSE(均方根误差)或MAE(平均绝对误差),觉得数值小就万事大吉。其实不然。我建议你多关注以下几个维度:
| 误差指标 | 含义 | 适用场景 |
|---|---|---|
| RMSE | 对大误差惩罚大 | 电网调度(怕极端偏差) |
| MAE | 反映平均偏差水平 | 日常运营评估 |
| MAPE | 百分比误差,直观 | 不同风场横向对比 |
| 误差分布偏度 | 看是否系统性高估/低估 | 模型校准 |
我曾经遇到过一个案例:某风场RMSE只有8%,但电网考核却总是不合格。后来一查,发现误差分布严重偏态——80%的时间预测偏大,20%的时间偏小。虽然平均误差不大,但偏大的那80%导致电网备用容量不足。所以,误差分析一定要看分布,不能只看均值。
4.5 知识体系总览
下面这张图把风功率预测的核心逻辑串起来了。你可以看到,从数据输入到模型选择,再到误差反馈,是一个闭环。
好了,关于风功率预测技术,咱们就聊到这儿。记住一句话:没有完美的模型,只有不断迭代的工程实践。你手头的数据质量、计算资源、业务需求,决定了你该选哪条路。