郑承新 彭苗 凌治坤 李镇东
(1、国家电投集团湖北分公司,湖北 武汉 430063 2、国家电投集团科学技术研究院有限公司,北京 102209)
相较于煤、石油等化石能源来说,电能的存储是困难的,所以它的生产、传输和消费几乎是同时进行。生产过量会造成能源浪费以及生产机器损耗,同时生产不足将会影响人们的生活并对经济发展造成损失,所以精确的负荷预测能够指导生产计划,在电力系统运行、能源投资规划扮演重要角色。由于负荷预测具有非线性和时序性,传统的负荷预测方法只能利用时序性信息,预测精度难以满足要求,但随着人工智能技术的不断发展,它即能够抓住负荷预测的时序性特征,又能很好的处理负荷数据的非线性特性,所以预测精度更高。同时负荷预测的使用环境不断拓展,不但为电力系统的安全、经济运行提供保障,也是市场环境下编排调度计划、供电计划、交易计划的基础,所以对负荷预测的研究至关重要。由于传统的负荷预测方法(如:回归分析法、多元线性回归、指数平滑法、卡尔曼滤波法、灰色预测法、ARIMA、ARMA、傅里叶展开法模型、聚类分析法、小波变换和层次聚类方法相结合和线性外推法等),主要关注负荷数据的时序性问题,但是很难捕捉数据本身存在的非线性特征,所以目前负荷预测中难以应用。于是本文重点对目前的智能负荷预测方法进行研究。
随着人工智能的发展,智能化负荷预测方法不断地产生并应用于实际的生产活动中。以下将介绍常见的智能化负荷预测模型,分为单一模型智能化负荷预测法和多模型融合的智能负荷预测方法。
1.1.1 BP 神经网络
1.1.1.1 BP 神经网络优化
由于传统的BP 神经网络具有训练速度慢且容易陷入误差局部极小点的缺点,改进的BP 神经网络算法[1]分别为自适应BP 算法、弹性梯度下降法和L-M (Levenberg-Marquardt)法。自适应BP 算法是根据误差大小自动调节学习速率,克服了传统的固定大小学习速率导致的训练速度慢的缺点;弹性梯度下降法将传统的BP 神经网络算法中根据梯度大小调整权值和阈值修改为固定的调整值,然后根据误差偏导数的符号调整该调整值的大小;L-M 法结合了标准BP 神经网络算法训练初期下降速度快的优点和拟牛顿法法在靠近误差极小点时能避免震荡情况的发生的特点对负荷数据进行预测。经计算得改进的BP 神经网络L-M 法的计算结果优于其他的两种改进的结果。还有一种改进的BP 神经网络算法是对隐层节点数进行调整[2]。对于传统的BP 神经网络隐层节点数个数的确定一般都是根据经验设定,优化BP 神经网络的预测精度的方法是对BP 神经网络采用试探法对隐层节点数进行改变。即不断地选择不同的神经网络隐层节点数后计算模型的预测精度,选择计算精度最高的隐层节点数为最后BP 神经网络的隐层节点数。
1.1.1.2 多重BP 神经网络
多重BP 神经网络[3]解决了海量数据下BP 神经网络运行时间长且容易出现过拟合的问题,借助于大数据平台运用聚类分析的方法将不同的负荷进行分类,然后更新整体BP 神经网络的权值和阈值,对未来的负荷进行预测。预测结果比传统的运用BP 神经网络的精度高,但是需要借助于Hadoop大数据平台对数据进行处理,数据处理阶段较为繁琐。
1.1.2 LSTM 神经网络
目前负荷预测较常用的方法是LSTM 神经网络[4]。LSTM神经网络克服了传统的RNN 神经网络梯度消失和梯度爆炸的缺陷,在反向传播过程中,LSTM 可以通过门控制信息,使得LSTM 能够记住长期信息。在典型的LSTM 神经网络算法中,输入变量包括负荷、温度、湿度、气压、风向和风速。结果显示负荷预测精度很高,具有重要的经济和社会效益,预测结果优于BP 神经网络和RNN 神经网络。
1.2.1 CNN-LSTM 混合神经网络模型
CNN-LSTM 混合神经网络模型[5]将影响负荷的因素和历史负荷的特征图作为输入,运用CNN,即卷积神经网络,提取数据特征,形成新的时间序列数据。将新的时间序列数据运用LSTM,即长短期记忆神经网络,进行训练,然后对负荷进行预测。由于LSTM 训练速度较慢,所以在进行特征输入时运用CNN 神经网络进行特征提取,预测结果表明CNNLSTM 网络的预测精度高于单一模型LSTM 神经网络, 随机森林和随机森林的预测精度高于ARIMA 模型。
1.2.2 基于Stacking 的集成学习
基于stacking 模型的集成学习方法[6]对负荷进行预测,首先运用K 折交叉验证法将模型划分为不同的训练集和测试集。然后选取LSTM 神经网络、XGboost、随机森林、梯度提升法(GBDT)、支持向量机(SVM)、K 近邻(KNN)作为第一层的基学习器,将各个模型的预测结果作为新的数据集,再对新数据集划分测试集和验证集,以XGboost 方法作为第二层的元学习器,对新的数据集进行学习,最后得到负荷预测的结果。结果显示,基于stacking 模型的集成学习的预测精度高于单一的基于支持向量机的预测精度。但是运用该方法需要对每个基学习器训练若干次,增加了算法计算的时间复杂度。具体的stacking 模型的集成学习方式如图1 所示。
图1 基于Stacking 的集成学习方法
1.2.3 CNN-GRU- Attention 模型
基于CNN-GRU- Attention[7]对负荷进行预测,首先是利用CNN 对数据进行特征提取,然后用提取的数据运用门控循环神经网络(GRU) 作训练,将训练得到的输出结果通过Attention 机制加权得到输出层的输入,然后根据attention 机制得到的结果计算最终预测的负荷值。
1.2.4 CNN-LSTM-XGBoost 模型
为提高输入特征信息较少情况下的预测精度,采用CNN-LSTM-XGBoost[8]的多模型融合方法。首先通过CNN 对特征数据进行提取,减少LSTM 的输入特征,同时保证精度。解决了LSTM 网络训练慢的特点。然后运用XGBoost 模型并行预测,降低了数据的处理时间且比使用单一模型支持向量回归(SVR),LSTM 神经网络和梯度提升算法(GBDT)模型的精度更高。
1.2.5 GA-SVM 模型
基于GA-SVM[9]的负荷预测模型,首先以历史负荷、日期类型和气象因素为输入变量,对训练数据运用遗传算法寻优,计算支持向量机的惩罚因子和径向基函数,然后运用支持向量机对未来一天的负荷进行预测, 其预测精度优于BP神经网络算法。
GA 属于遗传算法,该算法主要是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型。它首先将问题求解表示为常用的二进制编码串,然后从中选取适应环境的样本个体,过滤掉不好的样本个体,然后将筛选得到的样本个体复制再生,通过交叉、变异等遗传算子产生新一代染色群体。依据之前设定的各种收敛条件,从新老样本中选出适应环境的个体,不断更新,每一代都在进步,最后收敛到适应环境个体上,计算求得最优解。
1.2.6 Attention-ResNet-LSTM 模型
基于Attention-ResNet-LSTM 网络的中期负荷预测模型[10],将Attention 机制引入LSTM 模型,赋予不同的权重于特征向量,加入ResNet 网络后计算出负荷的预测值。
首先运用Attention 机制对关键信息进行提取,同样是减少冗余变量的输入,加快训练速度且保证预测的精度。Attention 机制就是模拟人的大脑在某一时刻对大量信息中的某一部分重要信息分配更多的注意力,对其他关注很少的信息将其忽略,从而挑选出重要信息,减少LSTM 的输入特征。采用Attention 机制对模型输入的特征向量赋予不同的权重,从而找出更关键的因素,有助于模型进行精准的负荷预测。在LSTM 人工神经网络中加入Attention 机制,找出影响负荷预测的重要因素,提高预测精度,Attention 单元如图2所示。
在图2 中,x1,x2,…,xk为输入的原始特征变量;h1,h2,…,hk为对应于输入的特征变量的隐藏层状态值;∂ki为历史输入的特征变量信息的隐藏层对当前输入信息的注意力权重值;C 为整个隐藏层状态的一个加权值;hk'为最后输出节点的隐藏层状态值。
图2 Attention 单元关联图
ResNet 用于减少信息损失且提高神经网络运算的收敛速度,其结构如图3 所示。
图3 resNet 网络结构
在图3 中,x 为通过运用Attention 机制计算得到的结果作为输入值,F(x)为拟合的残差映射值,H(x)为通过resNet 网络得到的输出值,三个变量之间得关系为H(x)=F(x)+x。然后再计算,如果F(x)=0,那么H(x)=x,为一层叠加网络层后的最优解映射值;若F(x)≠0 但是F(x)特别接近于0,那么,x 将逼近真实的映射值H (x),能够解决网络层堆叠之后的性能退化,特征减退等问题。
且运用爱尔兰某地区的真实负荷为数据集进行仿真实验,负荷预测结果如图4 所示。
由图4 可知:相比于RNN、LSTM、Attention-LSTM 模型,Attention-ResNet-LSTM 模型的预测精度更高。
图4 四种模型负荷预测结果与真实负荷对比图
本文对预测精度高的智能负荷预测算法进行总结和介绍,同时相较于单一模型而言,运用多模型融合方法得到的负荷预测的精度更高。通过分析可知,传统的负荷预测方法有很多用到时间序列分析的方法,如:指数平滑法、ARIMA、ARMA 等,可知负荷具有时序性。在智能预测算法中,循环神经网络(RNN)、长短期记忆神经网络(LSTM)和门控循环网络(GRU)都是处理时序相关的算法,它们不但能处理时序关系,又能拟合非线性关系,所以在负荷预测中得到推广。在多模型融合算法中,比如在运用长短期记忆神经网络(LSTM)之前运用卷积神经网络(CNN)的目的是能够提取原始数据的特征,进而提高模型的预测精度。
随着人工智能的发展,智能负荷预测方法相较于传统的预测方法精度得到很大的提高,也很好的应用于实际生产活动中。但是它们都是基于历史的数据库进行学习并实现预测,目前无法实现在线预测。在今后的研究过程中,如何基于历史的数据库进行离线学习,实现对新采集的数据,在原始样本学习的基础上增量学习更多新的特征,即类似于人的学习过程一样,在学习到新的知识的时候对历史学过的知识有记忆的功能,而不需要每次对所有的历史知识进行学习。此举一方面可节省历史数据的存储成本;另一方面可以增加模型的训练速度。