1. 引言
自2000年以来,中国经济持续快速增长,GDP年均增长率高达8.7%。经济增长的背后伴随着巨大的能源消耗,尤其是电力资源,它作为现代工业社会的血脉,是不可或缺的生产要素。据统计数据显示,中国电力资源消耗从2000年的11,598.43亿千瓦时激增至2021年的85,200亿千瓦时,累计增长量惊人,年均增长率维持在5.9%左右。电力资源消耗的不断攀升,不仅对经济持续发展和环境保护意义重大,也对电力企业信息化管理提出了更高的要求。据最新统计,电力资源消耗产生的碳排放占据了总碳排放的40%以上,成为碳排放的主要来源之一。在全球气候变暖问题日益严峻的背景下,减少碳排放、实现碳中和已成为国际社会的共同目标。因此,电力资源消耗的预测研究与企业信息化管理紧密相连,它们共同关乎能源规划的科学性与前瞻性,同时也是实现“双碳”目标的重要一环。
目前,关于电力消耗预测的研究主要包括中长期预测与短期预测[1]。针对中长期区域用电量预测问题,章熙等[2]提出了一种以BP神经网络为基础的方法。他们先运用灰色关联分析法来确定影响区域用电量的主要因素,然后基于这些因素,利用BP神经网络建立用电量预测模型。然而,此方法在检测用电量负荷方面存在不足,预测精确度不高。而针对短期区域用电量预测,LSTM是在此领域最频繁使用的模型[3]。闵旭等[4]提出了一种短期区域用电量预测的新方法,该方法以残差自回归为基础,构建了时间序列的预测模型。其实验结果表明,该方法能显著提升短期区域用电量的预测准确性。分析实验数值结果可知,该方法由于研究中需要处理的数据量较大,导致预测耗时较长。韩雅萱等[5]是在LSTM基础上采用差分自适应进化算法对其进一步改进,构建出一种基于机器学习的混合算法(SaDE-LSTM)进行短期预测,王晓辉等[6]则是用PSO粒子群算法对LSTM预测效果改进生成短期预测。
综上所述,现有学者对用电量预测已有非常丰硕的成果,但在整合多维度数据和长短期结合预测等方面的研究相对较少。为此,本文创新性的提出使用基于多个自变量的有季节效应的ARIMAX以及长短期记忆(long short-term memory, LSTM)网络回归模型分别对中长期和短期区域用电量进行预测。实验结果表明,该模型不仅有效提高了用电量预测效率和预测结果的准确性,还在企业信息化管理中展现出较高的实际应用价值,可为能源管理、电网规划等多个领域提供参考,助力企业通过信息化手段优化运营,从而提高电力系统的经济效益和社会效益[7][8]。
2. 模型构建和数据来源
2.1. 模型构建
2.1.1. 差分自回归移动平均(ARIMA)
自回归移动平均(ARMA)模型是自回归模型和移动平均模型的结合,定义如下:
(1)
其中:
为当前序列值,
为常数项,p为阶数,
为自相关系数,q为阶数,
为偏相关系数,
为残差项。
2.1.2. 多元差分自回归移动平均(ARIMAX)
构建ARIMAX模型的首要条件是确保响应序列
及输入变量序列
均为平稳序列。在确认所有序列均达到平稳状态后,方可进行响应变量与输入变量之间模型的构建工作。
(2)
其中:
为第i个输入变量的自回归系数多项式,
为第i个输入变量的移动平均系数多项式,li为第i个输入变量的滞后阶数,
为残差序列,
为残差序列的自回归系数多项式,
为残差序列的移动平均回归系数多项式,
为零均值白噪声序列[9]。
用电量数据属于时间序列数据,具有趋势性、季节性、周期性、随机性等特点。与其他模型相比,ARIMAX模型结合了ARIMA模型和回归模型的优点,既能通过移动平均(MA)、自回归(AR)和积分(I,即差分)处理,使非平稳的时间序列数据变得平稳,又能够通过引入外生变量来捕捉与用电量变化相关的外部因素,如气温、节假日、天气状况等。同时,随着用电环境的不断变化和新的影响因素的出现,ARIMAX模型可以通过不断调整模型参数和引入新的外生变量来适应这些变化,从而进行更有效的预测。
2.1.3. 长短期记忆(LSTM)神经网络
循环神经网络(RNN)在长序列训练中常遇到梯度消失和梯度爆炸问题[10],为应对这些问题,长短时记忆网络(LSTM)被提出。
(3)
(4)
(5)
(6)
(7)
式中:W——输入循环权重;b——偏置项;it——遗忘门;ot——为输出门;fi——输入门;ct——记忆单元的向量值;tanh——双曲正切函数;s——范围在(0, 1)之间的sigmoid函数,用于控制单元流经的权重;xt——细胞间激活向量值。
2.2. 数据来源
2.2.1. 数据来源及预处理
本文实证数据来源于百度AI STUDIO公开数据集。数据集包含某个区域内的用电量以及温度、风速、天气等数据,每15 min一组,数据由2018年1月1日开始,至2021年12月31日结束。为了保证预测结果的精度,我们对于区域15分钟负荷数据和气象数据进行重复值、缺失值、异常值的检测与处理。分析结果显示,区域15分钟负荷数据均无重复值,但存在388个数据点缺失,故使用缺失值后面的观测值进行填补。气象数据有相同的重复行,但不存在缺失,故直接删除重复行即可。
通过分析区域用电量时间序列时序图发现,2018年1月到8月这段时间的用电量波动趋势相比后面三年出现断层现象,属于异常值,因此,为了减少该部分数据对负荷数据影响,我们将2018年9月份之前的数据去除,只考虑9月份开始往后的数据,如图1所示。
从图1中可以看出,该地区出现三个低谷点。我们通过查阅谷点时间发现正是每年的春节,除此之外,我们发现法定节假日都会出现电负荷降低后上升的趋势,因此我们推导该地区电负荷可能受节假日影响较大。如果将节假日考虑进来进行异常值检测,很可能会导致节假日负荷被视为异常值。为了充分保留节假日所带来的电负荷变化,选择将其保留,并将节假日作为一个变量影响因素。
Figure 1.Corrected regional electricity consumption time series diagram
图1.修正后区域用电量时间序列时序图
2.2.2. 数据特征分析
域用电量时间序列受特定的经济社会因素,如经济水平和结构调整等的影响[11],其变化呈现周期性和连续性。为此,以下分别从时间特征、用电量特征、温度特征三个方面进行用电量时间序列的特征分析,以保证预测工作的精度。
(1) 时间特征
① 日周期性
电力负荷的日周期性是指用电量时间序列在24小时周期内所表现出的连续且重复的规律。由每日的时序图可知,早上到下午为一个高峰以及凌晨和夜晚为低谷期。高峰一般出现在10~12点左右,是因为工厂大规模生产和人们工作、学习引起的。随后会出现一定程度的负荷低谷,这主要是由于午休时段电力负荷的减少。每日的负荷最低值通常出现在凌晨3点至6点之间,因为此时大多数人处于休息状态,照明、电视等家用电器停止工作,导致居民和商业用电负荷降至最低。在此期间,电力负荷主要由连续生产型企业(例如炼钢厂等)的用电构成。
② 年周期性
以一年为周期,用电量数据所表现出的持续且重复的规律,我们称之为用电量的年周期性。这种周期性变化主要由季节的周期性更替所驱动。详细来说,夏季由于高温天气,人们为降温而广泛使用空调,从而导致空调负荷显著增加;冬季气温骤降时,居民为保暖会大量使用取暖设备,使得取暖负荷大幅上升;而在春季和秋季,由于温度适中,空调和取暖设备的负荷需求则相对较低。因此,季节性用电量在该地区还是较为明显的,我们认为在用电量预测时也要考虑季节因素。除了季节性的周期变化,还发现每年2月前后用电量存在最低谷趋势,经查询该时段为春节期。因此,认为节假日也会较大程度的影响用电量变化,需再进行详细分析。
(2) 节假日特征
由年周期特性的用电量曲线可看出,节假日整体用电量与平时相比较少。尽管节假日居民休假会导致居民用电和商业用电量上升,然而,由于工业用电在该地区总耗电量中占有相当大的比例,因此与居民用电和商业用电的增量相比,工业用电的减少量对总体用电量的影响更为显著。经过分析,我们发现除了春节之外,其他节假日对用电量的影响基本与放假天数相同,并且会在放假前一天电负荷开始下降。对于春节假期,对该地区用电量的影响不止7天假期,从用电量开始下降到回升至同平常日一样的用电量,其间隔从2018~2021年来看都需要一至两个月。因此,在考虑节假日对负荷变化的影响时,我们需要考虑不同节假日对负荷变化的影响。
(3) 温度特征
对日最高温度、日最低温度与日平均用电量进行特性分析。以2019年、2020年为例,日最高温度与日最低温度的变化趋势基本一致,可以判断日最高温度和日最低温度之间具有强相关性。温度对电力消耗的影响是显而易见的。在夏季,气温的上升会直接导致电力消耗量的增加,而这部分增加的用电量主要来源于降温设备,如空调等。相反,在冬季,随着气温的逐渐下降,降温用电量不再需要,日平均用电量会降低,由于该地区日最低温度范围在[5, 25]之间,因此取暖用电量在该地区较少体现。同时,用电量对温度变化的敏感度亦在提升,使得温度因素对电力消耗的影响日益显著。因此,在构建和选取短期用电量预测模型时,为确保预测的准确性,必须充分考虑温度这一关键因素。
2.2.3. 影响因素数据特征数值化
初步分析可以看到,气象数据多为文本类型数据,为方便未来分析和利用气象数据,我们将气象数据进行了如下处理:
(1) 风力特征数值化
经过一定匹配和处理,可以得到白天和夜晚的最大和最小风力级别。其取值范围为[0, 12]。
(2) 天气状况数值化
对天气状况进行拆分处理,我们可以得到每日的最佳与最恶劣天气情况。经过对所有拆分后的天气进行统计,我们总结出17种不同的天气状况,并对这些天气状况进行了分组和数值化编码。具体如表1所示。针对分级后的天气状况,我们采用了打分制度,即天气质量越高,所给的评分也相应越高。这一做法主要是考虑到夏季天气的相对优越性以及夏季电力负荷的相对增加。
Table 1.Group numerical coding
表1.分组数值化编码
天气 |
数值编码 |
天气 |
数值编码 |
天气 |
数值编码 |
晴 |
5 |
阵雨 |
4 |
小雪 |
2 |
晴间多云 |
5 |
雷阵雨 |
4 |
中雪 |
2 |
局部多云 |
5 |
小雨 |
4 |
暴雨 |
1 |
多云 |
5 |
中雨 |
3 |
大雪 |
1 |
雾 |
4 |
雨夹雪 |
3 |
暴雪 |
1 |
阴 |
4 |
大雨 |
2 |
|
|
(3) 温度数值化
最高温度和最低温度比较好处理,只需去除摄氏度单位符号即可。
(4) 节假日数值化
根据前述2.2.2节对节假日的特性分析,在考虑到各类节假日对电力负荷产生的不同影响后,我们将节假日划分为三个类别,即:大长假、小长假以及短假。为了便于数据分析和处理,我们依次赋予这三类节假日以数值1、2、3进行量化表示。各类法定节假日的具体归类及其量化结果详见表2。
Table 2.Classification and quantification results of different statutory holidays
表2.不同法定节假日的归类以及量化结果
节假日类型 |
数值编码 |
节假日 |
大长假 |
1 |
春节 |
小长假 |
2 |
国庆节 |
短假 |
3 |
端午节、劳动节、清明节、中秋节 |
平常日 |
0 |
非节假 |
3. 实证分析
3.1. 建立ARIMAX模型预测
3.1.1. 平稳性检验及白噪声检验
首先通过观察日用电量的时序图,发现曲线具有很强的周期性,为非平稳序列。我们选择对时间序列进行一阶365差分处理。通过观察图2,可以初步判断时间序列已经达到平稳状态。为了进一步验证这一点,我们进行了ADF单位根检验,结果显示P值为0.01,小于0.05的显著性水平,因此我们拒绝原假设,确认一阶差分后的时间序列是平稳的。
之后使用Box.test()函数进行延迟6阶与12阶的白噪声检验,其LB统计量的P值都小于显著性水平0.05,可认为该序列不是白噪声序列。
Figure 2.Daily power consumption time series diagram after first-order difference
图2.一阶差分后日用电量时序图
3.1.2. 模型定阶
从自相关图和偏自相关图的观察中,我们可以发现在延迟二阶后,自相关迅速降低至零,呈现出一种骤减的趋势,这可以被视为自相关在2阶截尾的特征。同样,偏相关在延迟五阶后也迅速降至零,显示出偏相关在5阶截尾的特点。基于以上分析,我们选择ARIMA (5, 1, 3)作为合适的模型。
将季节效应、气象因素和节假日因素加入到ARIMA模型中,从它们各自与用电量的互相关图(图3)可以看出最高气温、最低气温与节假日对日用电量的影响很大。因此,只选择该三个因素加入构建ARIMAX模型来实现多元时间序列分析即可。
Figure 3.Cross-correlation diagram of various variables and daily electricity consumption
图3.各个变量与日用电量的互相关图
3.1.3. 模型拟合
基于上述分析所确定的输入变量,我们利用R语言的TSA包中的arimax函数,对ARIMAX模型进行拟合,拟合图像如图4所示,其中黑色为原始数据,红色则为拟合的曲线数据。
Figure 4.Model fitting effect
图4.模型拟合效果
对拟合模型进行显著性检验,观察该检验结果显示残差序列为白噪声序列,且对该时间序列相关信息的提取充分。另外,因为所有参数的估计值均大于其2倍标准差,所以参数均显著非零,该模型对序列的拟合效果较为良好。
3.1.4. 模型预测
利用前面所构建的ARIMAX模型,我们对原始时间序列数据进行了拟合,并进一步预测了接下来半年的用电量变化趋势,相关预测结果可参见图5。
Figure 5.Final model prediction result image
图5.最终模型预测结果图像
之后将构建的此模型与直接建立ARIMA模型与只考虑季节因素建立ARIMA以及只考虑变量因素建立ARIMA的模型进行对比,如表3所示。我们可以看到相对于加入多变量因素,加入季节因素对模型精准度带来的贡献将会更大,加入季节因素后,AIC、RMSE等指标都显著降低,同时,相对于RMSE、MAE等指标,AIC与BIC指标会对季节因素更加敏感的变化。
Table 3.Evaluation index values of the four models
表3.四种模型各评价指标值
模型 |
AIC |
BIC |
RMSE |
MAE |
ARIMA |
32,785.23 |
32,830.22 |
760,506 |
489,762 |
ARIMA + 多变量 |
32,774.47 |
32,824.45 |
756,106.5 |
483,756.3 |
ARIMA + 季节效应 |
22,126.39 |
22,167.72 |
740,719.1 |
422,671.2 |
ARIMA + 季节效应 + 多变量 |
22,114.65 |
22,160.58 |
733,754.3 |
420,703.5 |
3.2. 建立LSTM模型预测
3.2.1. 模型训练
本文使用的LSTM模型参数具体细节如下:隐藏层的神经元个数为100、LSTM层数为2层、优化函数使用adam函数。调整batch_size与训练次数两个参数,训练次数可以选择增加至100次,batch_size选择调整36、72、108三个值,训练的模型RMSE指标如下表4所示。可以看到随着训练次数的增加RMSE会略微降低,而batch_size增加后RMSE则会升高。通过观察训练次数100次时的损失函数变化,选择训练50次batch_size:36为最佳模型。
Table 4.RMSE indicators of the trained model
表4.训练的模型RMSE指标
参数 |
RMSE |
训练50次,batch_size = 36 |
6759.475 |
训练100次,batch_size = 72 |
6607.364 |
训练50次,batch_size = 72 |
6930.29 |
训练50次,batch_size = 108 |
7048.374 |
3.2.2. 模型预测
采用2.2.1中构造的最佳模型进行预测,预测最后两周的用电量变化情况,在此需要注意的是进行递归预测。我们是以前60组的数据来预测接下来一组数据,因此该组数据预测成功后需要将其作为预测数据再用于对下一组数据的预测。之后将预测的数据进行去标准化处理,最终生成其预测图像如图6所示,并画出真实值曲线以显示其预测效果:
为了更加直观地描述其预测效果,同时引入MAE、MAPE2个指标,计算预测值与真实值的RMSE、MAE、MAPE分别为15,361.35、12,102.62、5.21%。图像和误差指标证明了该神经网络的良好预测效果,可以很好地实现短期用电量预测。
4. 结论
本文研究的融合多变量与季节效应的ARIMA模型和LSTM模型在区域长短期用电量预测中展现了
Figure 6.Predicted value and true value
图6.预测值与真实值
出色的性能,其预测结果对于电力企业管理具有深远的应用价值。通过ARIMA模型对中长期用电量的准确预测,企业能够进行更为科学的电力规划和资源配置,优化电力供应策略,从而避免资源浪费和能源过剩。同时,LSTM模型对15 min短期用电量的精细预测,使得电力企业能够实时监控和调整电力生产,确保供需平衡,减少能源损耗。这些预测模型的应用,不仅提高了能源利用效率,还有效降低了能耗成本,为电力企业在激烈的市场竞争中占据有利地位提供了有力支持。因此,LSTM和ARIMA模型在电力企业管理中的应用,是实现能源可持续利用和企业经济效益双赢的重要工具。