基于串行式GA-BP的短期负荷预测方法
2021-05-11李士心刘小钰孙夏丽
张 海,李士心,石 军,刘小钰,王 坤,孙夏丽
(1.天津职业技术师范大学电子工程学院,天津 300222;2.国家电网河南省电力公司驻马店供电公司,驻马店 463099)
短期电力负荷的精准预测是合理规划和运行电力系统的基础,其预测结果对发电方的发电计划及供电方的电力调度等都具有指导意义,可极大推动电力市场健康稳定发展[1-4]。
短期电力负荷具有非线性和多时间序列尺度等特性,同时受气象状况等因素影响表现出一定的规律波动性。通过对负荷曲线的拟合分析可知其具有一定的周期性。较为传统的一些仅凭历史数据发现规律的预测方法有趋势分析法[5]、弹性系数法[6]等。随着智能算法的不断发展,神经网络法[7-11]、随机森林法[12]、支持向量机法[13-14]等新型预测方法不断被提出,这些方法均能很好拟合电力负荷特性,例如,文献[10]建立了基于径向基函数RBF(radial basis function)神经网络的预测模型并确定其输入量为通过总体辨测得到的主要影响因素,有效提高了预测精度;文献[11]提出的结合横向和纵向相似日样本的粒子群优化算法PSO(particle swarm optimization)-广义回归神经网络GRNN(general regression neural network)组合预测方法具有较高的预测速度和精度。短期负荷主要影响因素的选取不能主观化、经验化,否则会丢失主要因素或掺入大量非主要因素,均会影响负荷预测精度。
反向传播BP(back propagation)神经网络面对大量模式分类及关系映射时,拥有强大的学习和处理能力,且常引入遗传算法GA(genetic algorithm)进行优化来克服其易陷入局部最优的缺点[15-19]。例如,文献[15]对GA-BP算法和BP算法进行性能比较,得出GA-BP算法的全局稳定性更高,寻优能力更强;文献[17]建立了基于LVQ-BP神经网络光伏电站出力预测系统,通过GA算法进行优化,极大地提高了训练速度和预测精度;文献[19]中GA-BP神经网络在时间序列预测方面表现出了优异的预测性能。
鉴于此,本文提出一种集多因素回归预测和时间序列预测于一体的串行式BP预测模型,并使用GA对两个BP神经网络进行优化。首先,采用灰色关联分析法确定出主要影响因素并作为BP神经网络1的输入量[20],其输出量为对应负荷值,从而实现多因素回归预测;然后,采用滑动窗法将BP神经网络1的预测值集确定为BP神经网络2的训练数据集,继而串行式融合地实现了时间序列预测;最后,通过算例验证并与相关文献预测结果进行比较,对比结果表明本文所提方法预测精度较高。
1 预测模型的构建
1.1 遗传算法
GA是一种基于遗传和变异的模拟生物进化机制的自适应优化算法。GA使用群体搜索技术,将种群代表一组问题解,通过对父种群施加选择,交叉和变异等遗传操作来产生子种群,如此循环下去逐步使种群进化到包含最优解的状态。
1.2 BP神经网络
BP神经网络是一种按照误差逆向传播训练修正网络连接权值的多层前馈神经网络。BP神经网络一般由输入层、隐含层、输出层及层间节点组成,该算法的主要思想是输入m个学习样本x1,x2,…,xm,在已知与其对应的n个输出样本为t1,t2,…,tn的情况下,用网络的实际输出y1,y2,…,yn与目标向量t1,t2,…,tn之间的误差来修正其连接权值,使yl(l=1,2,…,n)与其期望的tl(l=1,2,…,n)无限接近,即优化调整网络连接权值阈值使网络总误差最小。
1.3 串行式GA-BP预测模型的设计
1.3.1 GA对BP神经网络的优化流程
步骤1初始化BP神经网络并确定其拓扑结构及训练学习规则。
步骤2根据网络拓扑结构(输入层至隐含层,隐含层至输出层的权值个数及隐含层,输出层的阈值个数)确定GA中染色体长度。
步骤3初始化GA种群并对染色体进行编码。
步骤4确定BP神经网络误差平方和倒数为GA的适应度函数。
步骤5遗传操作(选择)。由个体适应度采取轮盘赌法选出父代染色体组。
步骤6遗传操作(交叉及变异)。对父代染色体组进行交叉及变异处理,产生子代染色体组。
步骤7重复步骤5~6,染色体得以不断进化,直到满足训练目标,寻得最优染色体,再进行解码操作即可得优化的初始参数。
1.3.2 串行式GA-BP预测模型的原理
短期电力负荷特性较为复杂,既受多因素影响,表现出一定的波动性与规律性,又具有一定的周周期性。综合以上特性,提出一种串行式预测模型。
1)训练学习阶段
(1)建立BP神经网络1。以实现多因素回归预测。输入量为河南省商丘市日全口径最大负荷的主要影响因素,例如该市4月份的主要影响因素为当日的平均相对湿度、气象状况、最高气温、最大风速、平均气温、星期类型和平均2 min风速等,其中气象数据源自国家气象局公布的实测数据;目标输出量设定为该市当日全口径最大负荷值,其源自市供电局的实测数据。在BP神经网络1的训练过程中,历史负荷作为目标输出量通过影响权值的修正来提高预测精度。
(2)建立BP神经网络2并与BP神经网络1进行串行式融合,以实现时间序列预测。BP神经网络2的训练集为BP神经网络1的输出序列。鉴于短期负荷呈现出一定的周周期性,故采用滑动窗法,确定BP神经网络2的输入量为BP神经网络1输出序列的连续7日数据,BP神经网络2的输出量为该序列中以上所指连续7日数据的后1日数据,具体如下。
假设BP神经网络1的输出序列为a1,a2,…,a20,则BP神经网络2的输入量、输出量见表1。
表1 BP神经网络2的输入量、输出量Tab.1 Input and output of BP neural network 2
串行式BP神经网络模型结构如图1所示。由图1可知,本文所创建的两个BP神经网络均为单隐层结构,隐含层节点数d和输入层节点数N之间近似符合d=2N+1;BP神经网络1的输入层节点数取决于影响因素个数,BP神经网络2的输入层节点数是由负荷的周期性规律决定的,因其呈现出的周周期性较为明显,故输入层节点数为7。
图1 模型结构Fig.1 Model structure
以上BP神经网络在进行训练学习前,均使用GA进行初始权值阈值的优化。
2)预测检验阶段
将未参与训练的检验数据输入至上述训练好的预测模型中进行预测效果的检验。
2 影响因素关联度分析
电力负荷影响因素较多,如气象状况、温湿度、星期等,而且不同类型、不同地区甚至不同季节的影响因素也存在差异,例如冬、夏两季的用电负荷要明显高于春、秋两季,工作日的负荷水平一般要高于节假日的负荷水平,故电力负荷主要影响因素的选取直接关系到预测模型的精度。在选取过程中,一定要摒弃主观性,否则主要影响因素的丢失或次要影响因素被选取,均会对预测精度产生影响。本文采用灰色关联分析确定负荷主要影响因素,具体步骤如下。
步骤1母序列与子序列的确定。本文要对日全口径最大负荷进行预测,故母序列为日全口径最大负荷值,子序列为各影响因素。
步骤2归一化处理。为减小各输入量绝对数值差异大带来的影响,此处对以上数据采取均值化处理,均值化公式为
步骤3计算灰色关联系数,即
步骤4计算灰色关联度,即
式中:ri为第i个子序列相对于母序列的灰色关联度;ζi(k)为灰色关联系数。
3 算例分析
3.1 数据选取及预处理
前述分析可知,季节更替也会引起短期负荷主要影响因素的改变,为验证本文所提预测模型的有效性,选取河南省商丘市2018年1月、4月、7月和10月(分别代表冬、春、夏、秋四季)各月前30 d的日全口径最大负荷及相应的影响因素为对象进行研究,负荷数据源自该市供电局,主要影响因素中的气象数据源自国家气象科学数据中心。其中,每个月前23 d的负荷数据及影响因素数据作训练数据,后7 d的数据作检验数据。
本文对数据所做的预处理如下。
(1)由于采集到的负荷数据存在个别点缺失情况,考虑到电力系统负荷曲线具有平滑特性,故缺失点的处理方法如下。
情况1缺失1个数据点。利用缺失点的上下相邻数据的平均值来填充丢失点,即
式中,Lmiss、Llast、Lnext分别为缺失点数据、缺失点上相邻数据及缺失点下相邻数据。
情况2连续缺失两个数据点。利用两个缺失点的上两个数据与下两个数据的平均值作为这两个缺失点的中心值,然后求取中心值和上缺失点的上相邻数据的平均值来填充上缺失点,下缺失点的填充方法与此类似,即
式中:Lcentre为两缺失点的中心值;Llast-1、Llast分别为上缺失点的上两个数据;Lnext、Lnext+1分别为下缺失点的下两个数据。
(2)该负荷预测模型所需数据均为数值化数据,故将影响因素中的星期类型,节假日类型及气象状况进行量化处理,处理方法如下:星期一—星期日分别量化为X={0.7,0.8,0.8,0.8,0.8,0.4,0.3};法定节假日、其后一天、其余日期分别量化为Y={3,2,1};晴天、阴天与多云、雨雪天分别量化为Z={1,2,3}。
3.2 主要影响因素的确定
对2018年1月、4月、7月和10月的负荷值与各影响因素关联度分别进行分析,四季的负荷数据与各影响因素的关联度分布见表2。(7月各日的节假日类型均相同,10月各日的降水量均相同,故予以剔除)
表2 四季的负荷值与影响因素关联度分布Tab.2 Distribution of correlation degree between load value and influencing factors in four seasons
本文选取关联度位于均值以上的影响因素作为主要影响因素,故冬季的主要影响因素有节假日类型、平均相对湿度、最大风速、星期类型、气象状况、平均2 min风速、降水量,其他月份的主要影响因素以此类推。
3.3 实例预测及结果分析
使用检验数据对串行式GA-BP预测模型及串行式BP预测模型分别进行验证,例如1月和7月检验集的预测结果如图2所示。
图2 串行式BP与串行式GA-BP负荷预测结果示例Fig.2 Examples of load forecasting results based on serial BP and serial GA-BP
由图2可知,串行式GA-BP的预测结果比串行式BP更接近于实际负荷曲线。
为精准评估两种模型的预测精度,采用平均绝对百分比误差MAPE(mean absolute percentage error)进行衡量,计算公式为
式中:Pi、Ti分别为负荷预测值及实际值;i为样本数量。
两种模型预测结果的EMAPE对比见表3。
表3 串行式BP与串行式GA-BP预测结果误差对比Tab.3 Comparison of prediction results between serial BP and serial GA-BP
由表3可得,串行式GA-BP预测结果的EMAPE明显小于串行式BP,其平均预测精度提高3.40%,说明遗传算法对BP神经网络的优化确有效果。其中7月份的检验数据预测结果的EMAPE较大,经查验,7月份负荷数据出现两次连续两个数据点缺失的情况。
本文所提方法较文献[10]和文献[11]的预测方法具有更高的预测精度,具体结果见表4。
表4 相关文献预测对比Tab.4 Comparison of prediction results in related references
4 结语
本文针对短期电力负荷预测,提出一种融合多因素回归预测与时间序列预测于一体的串行式GA-BP预测模型。首先使用灰色关联度分析确定不同季节情况下的主要影响因素,然后使用训练数据对串行式GA-BP模型进行训练。验证结果表明,GA对串行式BP网络的优化效果显著。与相关文献预测结果误差比较可知,本文所提方法的平均预测精度更高,具有较好的实用性。