蔡鑫祥 撖奥洋 周生奇 菅学辉 张智晟
(1. 青岛大学电气工程学院 青岛 266071;2. 国网山东省电力公司青岛供电公司 青岛 266002)
负荷预测是保持电力系统稳定运行的重要基础,特别是市场化改革后,电力供需将通过实时交易实现平衡,短期负荷预测的精度也越来越重要[1]。短期负荷预测主要决定未来的发电计划,且精确的短期负荷预测对电力系统的经济调度、最优潮流与调度部门机组的最优组合都有着十分重要的作用。
影响短期负荷预测精度的因素很多,包括预测模型、天气情况、历史数据等[2]。人工神经网络(Artificial neural network, ANN)因网络所需设置的参数相对简单,且收敛速度较快,得到了广泛的应用[3]。目前常用的人工神经网络有深度神经网络(Deep neural networks, DNN)、循环神经网络(Recurrent neural network, RNN)等。但DNN需要人工选择时序特征,破坏了负荷的时序性[4];RNN虽然可以保持时间序列数据中的依赖关系,但由于其迭代性,往往难以长期保存信息,存在梯度消失和梯度爆炸等问题[5]。长短期记忆(Long-short time memory, LSTM)神经网络通过结构更为复杂的隐藏单元(遗忘门、输入门、输出门)有选择地对网络信息进行添加和减少,解决了长期依赖问题[6]。LSTM在短期负荷预测方面已得到广泛应用,但LSTM也存在着训练速度较慢的问题。因此本文采用了一种全新的最小窥视孔长短期记忆模型,该模型仅保留一个门控单元(唯一门),能够大幅减少网络参数,提高训练速度[7]。
而模糊系统能够有效解决气象因素这些神经网络难以处理的非线性、不确定性的问题[8]。且所有影响用电负荷的气象因素中,温度起着最为关键的作用[9]。因此本文将模糊系统与神经网络相结合,通过隶属函数对温度进行了模糊化处理,加强模型对非线性、不确定性因素的处理能力,进而提高预测精度。
在训练历史数据的过程中由于数据的复杂性,单一神经网络进行负荷预测时预测精度往往有限,而集成学习可以将多个基学习器进行组合,得到一个学习能力较强的学习器,将集成学习与神经网络结合可以有效提高模型的预测精度[10]。Bagging算法虽然结构较为简单,但是其性能优越,可以通过抽取不同子集分别训练多个基学习器,最终通过组合策略得到强学习器来提高模型的学习能力[11]。而使用传统Bagging算法随机抽样,当抽样到大量与预测日负荷数据气象特征值相差较大的负荷数据时,会降低模型的预测精度。
针对上述问题本文提出了一种由改进Bagging算法与模糊MP-LSTM融合的短期负荷预测模型。该模型使用灰色关联投影法对原始数据进行筛选,通过改进PSO算法优化多个输入端温度经模糊化处理的基学习器(MP-LSTM),最终按平均值法将多个基学习器预测结果进行组合获得最终的预测结果。对某地区实际负荷系统进行算例仿真,仿真结果表明本文提出的模型能够有效提高负荷预测精度。
模糊MP-LSTM模型如图1所示,该模型包括模糊化层与MP-LSTM层。
图1 模糊MP-LSTM模型
(1) 模糊化层。由于温度分布往往呈现较强的非线性关系,使得捕捉其对电力负荷数据的影响变得更加困难[12]。为提高模型预测的精度与泛化性[13],本文对日最高温度、日最低温度采用三角隶属函数进行模糊化处理,将处理后的温度分成3个子空间,包括高温区(20~40 ℃)、中温区(5~25 ℃)和低温区(−10~10 ℃)3种,即用3个隶属度函数来代替原来的温度。
本文使用的隶属函数如式(1)所示
式中,f1为低温隶属度函数;f2为中温隶属度函数;f3为高温隶属度函数;T为温度。
(2) MP-LSTM层。LSTM神经网络是循环神经网络(RNN)的一种改进模型,它将RNN本来比较简单的细胞结构用三个特殊的门控单元:遗忘门、输入门、输出门进行替代。这种模型不仅可以解决RNN容易出现的梯度消失与梯度爆炸等问题,还能捕获跨越较长时间间隔的依存关系[14]。
但是LSTM也存在着收敛速度较慢的问题,因此本文采用了一种能加快收敛速度的MP-LSTM模型。MP-LSTM模型是LSTM的一种变体。与LSTM模型不同,MP-LSTM在输入端加入了上一时刻的记忆细胞状态值,且只有2个网络层(1个sigmoid层、1个tanh层)以及1个门控单元(即唯一门)。MP-LSTM模型将遗忘门、输入门和输出门用唯一门来代替[15]。
该网络前向公式如下
式中,ut为唯一门;Wu为唯一门权重矩阵;bu为唯一门偏置矩阵;Ct−1为上一时刻记忆细胞状态值。
MP-LSTM层首先将上一时刻的记忆细胞状态值Ct−1、上一时间步输出ht−1与当前时间步输入xt输入sigmoid函数更新唯一门状态值ut,然后令其与上一时间步输出ht−1和当前时间步输入xt输入tanh函数得到的细胞单元状态候选值tC~,通过式(4)得到当前t时刻记忆细胞状态值Ct,最后通过式(5)获得最终的输出值ht。
由于粒子群算法具有需要调节参数少、结构简单等优点,已经广泛应用在各种优化问题中。
粒子群算法基本迭代公式
式中,yi,d、vi,d分别表示第i个粒子第d次迭代所在位置以及粒子速度;pi,d、pg,d分别为第d次迭代,第i个粒子经过的最优位置以及所有粒子经过的最优位置;w、c1、c2、α分别表示惯性因子、两个加速常数以及控制速度权值的约束因子;r1、r2为[0, 1]区间变化的均匀随机数。
由于粒子群算法存在着早熟收敛,在迭代过程中容易陷入局部最优极值的问题。因此本文采用了一种改进的粒子群算法,即引入平均最好位置的PSO算法[16]。该算法代入了平均最好位置,即所有粒子个体最好位置平均值
式(6)更新为
平均最好位置的粒子群算法可以让粒子从其他粒子以及自身最优位置获得更多信息来决策自己位置,从而提高算法寻优能力,降低陷入局部最优的概率。
本文目标函数采用均方误差函数
优化流程如下:首先确定MP-LSTM模型与改进PSO算法各参数,其中需要优化的网络参数有更新门权值、偏置矩阵,Wu、bu;输入细胞权值、偏置矩阵,Wc、bc;然后对各粒子的速度、位置进行初始化,接下来利用改进PSO算法计算各个粒子的初始适应度,并通过迭代更新粒子的个体最好平均值以及全局最优位置。当满足终止条件或者到达最大迭代次数之后结束训练,并将此时所得到的粒子位置赋予MP-LSTM模型的网络参数Wu、bu、Wc、bc;然后用训练所得网络参数代入MP-LSTM模型进行预测,最终将预测数据进行反归一化即可得到最终预测结果。
Bagging算法会先采用Bootstrap抽样法从原始数据中获得n个子集,然后使用这些随机获得的子集分别训练n个基学习器,最终通过投票法或者平均法等组合策略将n个基学习器进行组合。由于Bagging算法最终的预测结果是由多个基学习器通过组合策略获得,因此当个体学习器效果越好时,该集成算法的效果就会越好[17-18]。
由于Bagging算法使用随机有放回采样的方式获得新子集,因此有些数据可能被反复采集。而原始训练集中有些和预测日气象特征相差较大的样本一旦被多次采用则会造成基学习器预测精度降低,从而影响最终预测结果。因此本文使用了一种用灰色关联投影法改进的Bagging算法。算法的主要步骤如下。
(1) 使用灰色关联投影法获得原始数据集中样本特征值与预测日样本特征值的关联度矩阵,然后通过其在预测日样本上的投影获得关联度投影值,并将所有历史样本与预测日样本的关联度投影值进行排序,最后保留投影值较大的日期形成相似日训练集。
(2) 对相似日训练集使用Bootstrap法进行抽样,获得n个子集;再将这n个子集分别训练n个基学习器。
(3) 通过组合策略将各个基学习器的预测结果进行整合并获得最终的预测结果。
图2为本文预测流程图,共分为五层,分别是数据处理层、改进Bagging取样层、MP-LSTM层、Bagging集成层以及输出层。每层描述如下。
图2 短期负荷预测流程图
(1) 数据处理层。负责将原始数据集L进行归一化、模糊化处理(第4.1节),获得处理后的数据集M。M为a×b维的矩阵,a是训练集中的总天数,b为每日96个点的电负荷以及每天的6维经模糊化处理的温度数据以及风速、风向、天气、日期类型共计106维数据。
(2) 改进Bagging取样层。首先从数据集M中取预测日前k天的数据作为数据集K1,然后使用灰色投影法计算预测日特征值与数据集K1中所有天数特征值的投影值,进行排序后选取投影值较大的数据构成相似日训练集S。
最后对相似日数据集S采用Bootstrap抽样法获得S1,S2,…,Sn这n个子集。
(3) MP-LSTM层。用S1,S2,…,Sn分别训练n个MP-LSTM神经网络,并对预测日进行预测得到n个预测结果。
(4) Bagging集成层。将这n个预测结果进行加权组合得到最终的预测结果,并于输出层输出预测值。
其中Bagging集成层可以表示为
式中,yi为第i天的最终预测值;yi,j为第i天第j个基学习器的预测值;n为基学习器个数。
本文原始数据取自某地区电网数据,每日数据包括:采样间隔为15 min的96个电负荷数据,以及每天的最高温度、最低温度、风速、风向、天气和日期类型。因为原始数据中数据单位不同,而且大小相差过大不能直接作为预测模型输入,因此首先将每日的96个负荷数据进行归一化处理,为更符合温度对实际负荷的影响,将最高温度、最低温度进行模糊化处理。然后将晴、多云、阴、小雨、中雨、大雨和暴雨分别按照0、0.2、0.4、0.6、0.8、1、1处理;风速为每天的平均风速投影到区间[0, 1];因我国气候特性将东南风设定为1,西北风设定为0,相应的南风、东风设定为0.75,东北风、西南风为0.5,西风和北风设定为0.25;日期类型按照工作日0、休息日1进行处理。
首先取预测日前60天的特征值(气象数据)并使用灰色投影法计算预测日特征值与预测日前60天特征值的投影值,按照投影值大小进行排序,选取投影值较大的30天的电力负荷数据作为训练样本。在训练样本中每15 min取一个负荷点,故训练集共有2 880个负荷点。t时刻负荷点对应的输入为该负荷点前3天的t−1时刻、t时刻、t+1时刻的9维负荷数据,以及当天的6维模糊化处理后的温度数据,与风速、风向、天气、日期类型共计19维数据。因此总训练样本大小为2 880×19的矩阵。
然后采用Bootstrap抽样法获得S1、S2、…、S5这5个子集,每个子集为960×19的矩阵,并用S1、S2、…、S5分别训练5个MP-LSTM神经网络,最后将这5个预测结果通过式(10)进行加权组合得到最终的预测结果。
为验证本文提出的改进Bagging算法与模糊MP-LSTM神经网络融合的短期负荷预测模型(模型1)的预测精度,本文将其与普通LSTM神经网络模型(模型2)、MP-LSTM神经网络模型(模型3)[19]和模糊MP-LSTM神经网络模型(模型4)进行了预测结果对比。为控制变量,本文四种模型的PSO算法都取相同值:粒子数50,最大迭代次数1 000,学习因子c1与c2都取1.496 2,粒子移动速度最大值vmax与粒子移动速度最小值vmin分别取0.4与-0.4,惯性权重的最大值wmax与惯性权重最小值wmin分别设为0.95与0.4;模型1和模型4温度的模糊化处理均采用式(1);模型1采用5个基学习器进行训练。
四种模型的预测结果如图3所示。预测误差见表1。
图3 模型1~4预测的负荷曲线
表1 四种模型的预测误差对比
由图3和表1可以看出本文采用的改进Bagging算法优化模糊MP-LSTM神经网络模型(模型1)的平均绝对误差EMAPE、最大相对误差EMAX与平均误差ME(表1中所有误差均取绝对值)相对于普通LSTM神经网络模型(模型2)降低了1.50%、2.83%、172.12 MW,相对于MP-LSTM神经网络模型(模型3)降低了0.87%、2.47%、94.10 MW,相对于模糊MP-LSTM神经网络模型(模型4)降低了0.27%、0.78%、14.76 MW。且模型1的预测值在负荷的波峰和波谷处都能较好拟合实际负荷值,得到较为理想的预测结果。
因为在我国大多数地区,影响电力负荷的天气因子在不同的季节是不同的。因此,为验证模型稳定性,本文通过模型1分别对某地区春季、夏季连续一周的负荷进行预测,其预测结果如表2、表3所示。
表2 模型1春季一周内预测误差
表3 模型1夏季一周内预测误差
由表2可以看出使用模型1在春季进行连续一周预测时,虽然平均绝对百分误差EMAPE最大值为1.57%,最大相对误差EMAX最大值为5.52%,平均误差ME最大值为136.60 MW,但连续一周的EMAPE平均值为1.24%,EMAX平均值为4.18%,ME平均值为119.66 MW,与其他三种模型对比精度有明显提升。
由表3可以看出夏季连续一周预测的平均绝对百分误差EMAPE最大值为2.18%,最大相对误差EMAX最大值为5.50%,平均误差ME最大值为232.53 MW,但是连续一周预测的EMAPE平均值为1.44%,EMAX平均值为4.59%,平均误差ME最大值为144.58 MW。因本文输入采用的负荷数据为前三天负荷数据,因此休息日误差有所增大,但模型1在夏季连续一周预测的最大相对误差EMAX的平均值小于5%,表明模型1预测结果相对稳定。
为提高短期负荷预测精度,本文首先采用隶属函数对原始数据中的温度进行模糊化处理,然后采用由灰色关联投影法改进的Bagging算法对原始数据进行抽样,随后输入各个由MP-LSTM神经网络组成的基学习器,并通过组合得到最终的预测结果。最后仿真结果表明,这种方法较之传统LSTM神经网络模型(模型2)、MP-LSTM神经网络模型(模型3)和模糊MP-LSTM神经网络模型(模型4)在精度上都有着一定提升。