4、调度策略基础:调度周期、预测数据、约束条件

各位同学,咱们今天聊点实在的。调度策略听起来高大上,其实说白了,就是回答三个问题:什么时候调度?依据什么调度?能怎么调度? 这三个问题对应到工程上,就是调度周期、预测数据和约束条件。

我个人习惯,做任何调度策略之前,先把这三块地基打牢。地基不稳,后面建的模型再漂亮也是空中楼阁。好,咱们一个一个来看。

4.1 调度周期:时间颗粒度怎么选?

调度周期,就是你每隔多久做一次决策。这个时间颗粒度选多大,直接影响系统响应速度和计算压力。

我在项目中遇到过,有人把调度周期设成1分钟,结果服务器直接跑崩了。也有人设成1小时,结果储热罐的温度波动大得吓人。所以,选周期是个技术活。

常见的调度周期分这么几档:

周期类型 时间范围 适用场景 我踩过的坑
日前调度 24小时,1小时步长 大型区域能源网,热负荷稳定 预测不准时,偏差很大
日内滚动 4-8小时,15分钟步长 光伏/风电波动大的场景 计算量翻倍,硬件要跟上
实时调度 5-15分钟,1分钟步长 微电网、应急响应 对通信延迟要求极高

嗯,这里要注意。不是周期越短越好。你想想看,热储能系统本身就有热惯性,你5分钟调度一次,储热罐的温度还没反应过来呢,下一轮指令又来了。这不瞎折腾吗?

我的建议是: 先做日前调度定基调,再用日内滚动做修正。这样既保证了稳定性,又留了灵活性。

4.2 预测数据:调度决策的“眼睛”

调度策略好不好,一半靠模型,一半靠预测。没有准确的预测数据,再牛的算法也是盲人摸象。

预测数据主要分三类:

  • 热负荷预测: 未来几小时或几天,用户要用多少热。这个受天气、时间、节假日影响很大。
  • 可再生能源出力预测: 光伏、风电能发多少电。说白了就是看天吃饭。
  • 能源价格预测: 电价、气价走势。这决定了你什么时候该储热,什么时候该放热。

我曾经在一个项目中,只用了历史平均数据做热负荷预测。结果遇到寒潮,实际负荷比预测高了30%。储热罐直接见底,最后不得不启动备用锅炉,成本飙升。从那以后,我再也不敢只用简单平均了。

现在我的做法是:

# 一个简单的多模型融合预测示例
def load_forecast(weather_data, calendar_data, history_data):
    # 模型1:基于相似日匹配
    similar_day = find_similar_day(weather_data, calendar_data)
    pred1 = history_data[similar_day]
    
    # 模型2:基于时间序列ARIMA
    pred2 = arima_forecast(history_data, steps=24)
    
    # 模型3:基于天气回归
    pred3 = weather_regression(weather_data)
    
    # 加权融合,权重根据历史误差动态调整
    weights = [0.4, 0.3, 0.3]
    final_pred = weights[0]*pred1 + weights[1]*pred2 + weights[2]*pred3
    
    return final_pred

你看,三个模型一起上,互相弥补短板。虽然不能保证100%准确,但至少不会出现30%的离谱偏差。

小技巧: 预测数据一定要留个“安全裕度”。我个人习惯在预测值上加5%-10%的余量,尤其是冬季供热高峰期。宁可多储一点,也别让用户冻着。

4.3 约束条件:不能越界的“红线”

调度策略不是想怎么调就怎么调。系统有物理极限,设备有运行边界。这些就是约束条件,是调度决策的“红线”。

约束条件主要分两大类:热平衡约束功率限制约束

4.3.1 热平衡约束

热平衡,说白了就是能量守恒。你产了多少热,用了多少热,储了多少热,放了多少热,必须对得上账。

数学上可以写成:

Q_produce + Q_discharge = Q_load + Q_charge + Q_loss

其中:
Q_produce: 热源产热量(锅炉、热泵等)
Q_discharge: 储热罐放热量
Q_load: 用户热负荷
Q_charge: 储热罐充热量
Q_loss: 管网热损失

这个公式看起来简单,但实际工程中,最难算的是 Q_loss(热损失)。

我记得有个项目,设计阶段热损失按5%算。结果实际运行发现,管网末端温度比设计低了8度。一查,原来是保温层施工质量有问题,实际热损失达到了12%。

避坑指南: 热损失一定要留余量。我曾经吃过这个亏,现在做设计时,热损失系数至少按设计值的1.5倍来考虑。

4.3.2 功率限制约束

功率限制,就是设备能承受的最大出力。你不能让锅炉超负荷运行,也不能让储热罐的充放热速率超过设计值。

常见的功率限制包括:

  • 热源出力限制: 锅炉最大/最小出力,热泵的启停次数限制
  • 储热罐充放热速率限制: 取决于换热器面积和温差
  • 管网输送能力限制: 管道直径、泵的扬程
  • 电网容量限制: 电锅炉、热泵的用电功率不能超过变压器容量

你想想看,如果调度策略不考虑这些限制,结果会怎样?

我曾经见过一个案例,调度系统为了多储热,让电锅炉满负荷运行。结果变压器过载跳闸,整个能源站停电。储热罐里的热水没法循环,温度慢慢降下来,等恢复供电时,储的热已经废了一半。

警告: 功率限制不是死数字。设备老化后,实际出力能力会下降。建议每季度重新标定一次设备的实际最大出力,别一直用设计值。

4.4 知识体系总览

说了这么多,咱们用一张图把调度策略的基础框架串起来。这张图是我自己画的,每次做新项目前,我都会先对着这张图捋一遍思路。

调度策略基础框架 调度周期 日前调度 (24h) 日内滚动 (4-8h) 实时调度 (5-15min) 时间颗粒度选择 计算压力 vs 响应速度 预测数据 热负荷预测 可再生能源出力预测 能源价格预测 多模型融合 安全裕度 5%-10% 约束条件 热平衡约束 功率限制约束 设备出力限制 管网输送能力 电网容量限制 调度策略决策 什么时候调度?依据什么调度?能怎么调度? 输出:充放热计划 + 设备启停指令 满足热平衡,不越功率红线 实际运行数据反馈

这张图把咱们今天讲的三块内容串起来了。调度周期定节奏,预测数据给依据,约束条件划边界。三者缺一不可。

最后说一句,调度策略不是一锤子买卖。实际运行中,你会发现预测不准、设备老化、负荷变化,这些都是常态。所以,调度策略一定要有自适应能力,能根据实际运行数据不断调整。

好了,今天的基础就讲到这里。下一节咱们会深入具体的调度算法,到时候会用到今天讲的这些概念。先把基础打牢,后面才能跑得快。

核心要点回顾:

  • 调度周期选多大,取决于系统惯性和计算能力,不是越短越好
  • 预测数据用多模型融合,别只依赖单一方法
  • 热平衡约束是能量守恒,功率限制约束是设备边界
  • 所有约束都要留余量,尤其是热损失和设备老化

公众号:蓝海资料掘金营,微信deep3321