APP下载

基于改进栈式自编码算法的中期负荷预测研究∗

2021-11-13宣菊琴郑洁云陈晓彬林婷婷

电子器件 2021年5期
关键词:模糊化编码负荷

宣菊琴,郑洁云,陈 波,陈 强,陈晓彬,林婷婷

(1.国网福建省电力有限公司,福建 福州 350003;2.国网福建省电力有限公司经济技术研究院,福建 福州 350012;3.国网福州供电公司,福建 福州 350009;4.国网龙岩供电公司,福建 龙岩 364031)

如今,国民经济正处于飞速发展阶段,人们的生活质量也不断提升,同时对电能质量的要求也越来越高。电网系统的负荷预测是电能质量的保障,也是电能管理的重要环节[1]。负荷预测精准性为电力系统智能化水平运行提供重要支撑,对电力系统状态进行实时动态评估与增加发电经济效益均有重要作用[2]。由于负荷存在波动性与复杂性特征,因此根据负荷特点构建负荷预测模型是提升负荷预测精准度的关键[3]。因此,亟待提出一种电力负荷预测的新方法,从而进一步提高负荷预测准确度,满足实际需求。

目前,用于电力系统负荷预测的方法主要有线性回归法、卡尔曼滤波法、人工神经网络法及支持向量机时间序列建模等[4]。其中,传统的时间序列法主要将负荷拟成时间序列信号,并通过不同的时间序列对负荷展开预测,还能够在该模型基础上构建负荷预测的卡尔曼滤波模型、负荷预测的自回归模型以及自回归积分滑动平均模型等[5-7]。上述模型主要以线性模型为基础,其建立的预测模型较为简单,并对负荷序列的平稳性要求较高,因此在复杂条件因素下,预测精度会大大降低。为了弥补此不足,人工神经网络与支持向量机等浅层机器学习算法被广泛研究[8-11]。其具有良好的非线性函数拟合特征,能够有效提高负荷预测的精度。但是该模型还存在浅层预测模型对非线性负荷的隐藏特征认知不够,受外界干扰影响大等问题。

随着计算机技术的不断发展,深度学习理论成为了智能化的热点,其具有良好的自适应学习能力以及认知能力。基于深度神经网络的负荷预测模型通过训练学习,其预测结果比传统预测模型的误差低,精度高[12-14]。随着模糊理论的普及,引入该理论进行负荷预测也获得了一定效果[15-16]。然而,目前基于深度学习或模糊理论对电力负荷进行预测的模型尚未成熟。仍存在训练效率低以及迭代次数多等问题,降低了负荷预测的精准性。因此,亟待研究一种能够综合考虑各影响因素的电网中期负荷预测方法,对电网系统安全经济运行至关重要。

本文为了提高以居民、学校为主地区的中期电网负荷预测效果,针对基于改进栈式自编码算法的中期负荷预测方法展开了一系列研究。首先构建独立分量分析法(independent component analysis,ICA)的数学模型并对影响电力系统负荷的因素进行筛选和归一化处理;利用参数自适应微分进化算法对栈式自编码算法参数展开在线优化,通过将影响因素进行模糊化并构造其隶属度函数;栈式自编码算法通过样本训练和参数微调改善组合预测模型,并将该算法与传统方法进行预测结果对比,进而对所提算法的有效性进行验证。

1 独立分量分析法模型

在电力负荷预测中,考虑过多影响因素会引起噪声,且对主导的因素分析不足,将会造成预测结果的精度降低。在针对不同的负荷类型以及预测时期,因素影响程度不同,而且数据维度大最终也会造成拟合度存在失真现象。为了提高负荷预测结果的准确度,减少预测模型影响因素的数量,需要对各类数据实施降维处理进而根据预测对象获得其主导影响因素。

独立分量分析法(Independent Component Analysis,ICA)的特征提取依据初始数据的潜在规律和特征展开解析,进而使处理后的数据可以更好反馈初始数据的信息,同时不会改变数据的潜在规律和特征[17]。标准ICA 的数学模型为:

式中:相量y为观测信号,是多元随机混合信号,即[y1,y2,…,yN]T;A为M×N的常数固定的混合矩阵;相量x为有N个未知的源信号构成的一个列向量,且分量彼此统计独立,即[x1,x2,…,xN]T。对观测向量y进行中心化和白化处理,即:

式中:向量B表示白化矩阵。经过预白化处理后,将观测信号y转成了信号向量v,该信号向量具有单位方差,且各分量间两两正交。

ICA 的目的是在只知道混合信号y的情况下,获得M×N解混矩阵WT,使式(3)u的各分量尽可能统计独立。所获得u为恢复信号,即为目的源信号。

通过信息最大化法对ICA 模型进行处理,信息熵表示了数据内包含的平均信息量,且其为一个标量。一个离散信源的熵则能够被定义为:

式中:参数Pi表示x与xi相等的先验概率;参数N为一个离散信号的输出拥有N种不一样的取值结果;参数C表示一个固定值,值为2;E表示值的数学期望。

当概率密度函数的协方差矩阵一样时,其高斯分布信号中有最大的熵。负熵的表达式为:

式中:参数gG表示与y具有相同协方差矩阵的高斯分布向量。然而,在实际中源信号的概率分布是未知的,传统对负熵的评估是通过高阶矩阵,利用一个对照函数G展开近似分析,其表达式为:

式中:wi表示分离矩阵W的第i行向量。令J(gi)获得最优解时,符合下述条件:

式中:参数α代表一个常数。为了避免出现计算饱和现象,先对负荷数据进行归一化处理:

通过ICA 算法对影响电力系统负荷的因素进行筛选,减少数据的输入量。将对负荷影响较小的因素进行筛除,根据预测的对象保留气候环境、历史负荷等对负荷预测影响较大因素,进而增强预测的准确性和效率。

在针对本文以居民、学校为主地区的用电负荷预测时,各项影响因素中气温对负荷的影响最为显著,然而由于现实条件里温度因素是不确定的。为了提高负荷预测的精度,针对此输入的非模糊集合构造特有的隶属度函数,引入模糊化的处理过程,将明确的数据转换成模糊集合。模糊理论能够反映数据非线性特征以及具有较强的结构表现能力。本文将每日的平均气温t作为输入模糊变量,且在模糊划分时,应在保证每个空间有些许重叠的情况下分别对应相应的隶属度函数。根据福建省气候特性将该输入变量的模糊划分为三个温度区间,分别为:0~10 ℃的低温段、5 ℃~25 ℃的中温段以及20 ℃~40 ℃的高温段。为了使各温度区间的隶属度函数在模糊化处理后其输出函数仍能保持原来形态,将三个温度区间均使用三角形型隶属度函数进行表示。

针对0~10 ℃的低温段通过偏小型三角形隶属度函数,其公式为:

对于5~25 ℃的中温段采用中间型三角形分布,其公式为:

对于20~40 ℃的高温段采用偏大型三角形分布,其公式为:

2 改进栈式自编码组合算法

2.1 参数自适应微分算法

微分进化算法(Differential Evolution,DE)是一种基于种群进化的实数编码的优化算法。该算法有较高的鲁棒性以及全局搜索特性,其主要有初始化、变异、交叉以及选择四个内容:

(1)种群初始化。在解空间的全部范围内进行种群初始化,从而构造优化搜索的初始点。令解空间的初始化种群定义为Y0,即[y1,y2,…,yNd],其中,Nd为表示种群数量。种群的进化个体定义为,即,参数D表示优化问题的维数。

式中:参数s1,s2以及s3均为一个正整数,且三者不相等;参数F表示变异率,为一个实数。

(3)种群交叉。把种群变异后所得到的个体与当前个体展开二项分布交叉计算,得到新的个体,其过程被定义为:

式中:参数i和j是一个随机数值,参数CR表示交叉概率;且j和CR值均在0~1 的范围内;参数S(i)表示[1,D]中的一个随机量。

式中:参数f表示了个体对应的目标函数。

微分进化算法的搜索效果受到算法参数的影响较大,且该参数在实施过程内不易明确。结合自适应算法能够大大增强系统全局搜索的效率,并依据搜索结果确定算法中的参数。如果变异率值偏大,微分算法的搜索效率接近随机搜索,造成其效率不高。自适应算法先引入变异因子,被定义为:

式中:参数Q0表示初始的变异参数。在初始阶段,即第一代时,Q等于2Q0,变异率较大,保障个体的丰富多样,防止早熟;随着计算深入,变异率慢慢下降不断靠近于Q0,从而保障解的完整性。此外,若交叉概率越大,则变异个体的作用越大,其局部搜索特性以及算法收敛速率也越佳,能够有效地保障良好的种群丰富性以及全局搜索特性。根据惯性权重思想,其交叉概率因子计算公式为:对交叉个体

式中:Km表示最大迭代次数;参数CRm以及CRmin分别表示了微分进化算法的最大交叉概率和最小交叉概率。通过迭代,随迭代次数K的增大,参数CR也将会从小变大。进而,在初始阶段提高个体对交叉个体的作用,在后期阶段提高变异个体对交叉个体的作用,进而实现加快算法收敛速率,让全局搜索以及局部搜索达到相对平衡的情况,使得该算法计算效率和准确性大幅度提升。

2.2 改进栈式自编码算法

(1)自编码式深度学习基本结构

自编码式深度学习(SAE-NN)的基本原理是将数据向一个恒定的函数持续靠近,进而使得输出结果不断趋于输入数据,其与三层神经网络结构相似,分别为第一层的可视层、第二层的隐藏层以及最后的重构可视层,具体如图1 所示。其中,从可视层到隐藏层使用其编码功能,从隐藏层到重构可视层使用其解码功能。

图1 自编码式深度学习结构

令栈式自编码式深度学习模型的输入数据与输出数据形式、结构相同,把气象条件、日类型、地方政策以及历史负荷等数据进行同构,形成一个训练样本集合X={x1,x2,…,xi,…,xN},其中N为训练样本集合所拥有的样本数,子集合xi为{xi,1,xi,2,…,xi,d},而且可视层中的每个元素均能和集合xi中元素一一对应。把集合xi作为特征向量,通过编码过程将其输入至隐藏层里,其编码过程被定义为:

式中:{w1,b1}表示可视层与隐藏层的连接权值和偏置值矩阵。利用该式完成特征提取后,对一阶特征进行重构,其表达式为:

式中:{w2,b2}表示隐藏层与重构可视层的连接权值和偏置值矩阵。

(2)栈式自编码式深度学习模型设计

栈式自编码神经网络主要由底层的栈式自编码器模型(SAE)和顶层的逻辑回归模型(LR)两个部分构成。其中,SAE 模型为数个稀疏自编码器累积构成。该模型主要承担将当前l层的自编码隐藏层输出结果h(l)传输至下一层,并作为该层的自编码可视层的输入,其过程表示为:

式中:l取值为1,2,…,n-1;n表示层的栈式自编码器模型内自编码器的数量。

由于对电力负荷特性的造成影响的因素有很多,包括自身特性影响和外部条件干扰,如气象条件、工作日、周末、历史负荷、地方相关扶持政策等。因此,将这些影响因素的数据也作为栈式自编码式深度学习模型的输入数据,其多输入单输出SAE 模型结构如图2 所示。为了能够对中期负荷进行预测,在SAE 模型的上层构建一个LR 模型进行预测。

图2 栈式自编码式深度学习模型结构

初始输入的样本x(1)通过SAE 模型多次非线性变换后获得赋有多个负荷预测的重要信息的n阶特征,用h(n)来表示。接着n阶特征h(n)又成为顶层LR 模型的输入数据展开负荷预测。将经过SAE模型学习的深层样本特征代替原始向量成为负荷预测的样本输入数据,能够提升网络的泛化能力。

(3)栈式自编码式深度学习模型训练

栈式自编码式深度学习模型为一种半监督式的学习方式,一般通过由下往上的无监督预训练实现SAE 模型的参数初始化,其次通过从上往下的有监督训练对整体网络的参数进行微调。栈式自编码式深度学习模型的基础是利用将整体代价函数进行最小化,不断对{w,b}的值进行调整,进而拟合输入数据和输出数据的关系,其整体代价函数的表达式为:

式中:参数yi表示目标函数的输出值;参数fi表示目标函数的预测值。

底层的栈式自编码器模型是通过逐层贪婪学习算法进行学习训练,此算法一次只针对含有一个隐藏层的自编码器进行训练。当此自编码器达到最佳时去掉重构可视层,并把隐藏层的输出结果当作下一个自编码器的输入,从而对下一个自编码器进行训练,直到最后一层自编码器也达到最佳时即完成SAE 模型的无监督预训练。在此逐步深入的训练过程中,样本数据通过单个自编码器得到一个输出,接着通过最小化代价函数对{w,b}的值进行更替,其更替方式为:

式中:参数k表示迭代次数;l取值为1,2,…,n-1;λ表示每次迭代的学习步长。CS(w,b)表示自编码器的误差代价函数,具体表达式为:

式中:参数d和参数n分别为输入层所含有的节点数量以及隐藏层中的神经元数量;参数θ和参数μ分别为权重的衰减参数以及稀疏项的权重值;KL(ρ‖ρk)则表示稀疏项的惩罚因子,其中ρ的值通常取0.05。通过无监督预训练后,底层的栈式自编码器模型已设定初始权值,再利用顶层的逻辑回归模型对整体进行有监督参数微调,此时的代价函数为J(w,b)。利用梯度下降法对代价函数J(w,b)的参数进行多次迭代和更新,从而获得最佳的中期负荷预测模型。

3 改进组合栈式自编码算法的预测流程

通过利用基于改进栈式自编码算法模型对负荷潜在变化特点及其和外部干扰因素间的关系进行分析和提取,进而实现对电网系统中期负荷的预测,其实施流程如图3 所示,具体步骤如下:

图3 改进栈式自编码负荷预测算法流程

(1)首先把各类数据进行修正,分析预测电力负荷的主要影响因素,如天气因素、日类型等,利用ICA进行特征提取,从而筛选主导的影响因素并对数据进行归一化处理,并作为负荷预测模型的输入量;

(2)将筛选出的主要影响因素利用模糊理论获得其隶属度关系,并对样本数据进行重构,以满足预测模型的输入输出要求;

(3)利用自适应微分算法对栈式自编码算法的预测模型进行参数优化,并输出最优参数。

(4)将学习样本和优化参数输入至栈式自编码式深度学习模型中展开特征训练,从而获得气象、日类型、经济水平以及历史负荷等高阶特征数据,并通过样本逐层训练以及模型参数微调进而匹配最佳组合预测模型;

(5)把需要测试的样本数据输入至最佳预测模型中进而展开针对不同时期的负荷预测,并依据预测结果对该模型的有效性和可靠性进行评价。

4 误差评价指标

为了能够对中期负荷预测效果展开有效评价,本文选取相对误差ε、平均绝对百分误差(εMAPE)、平均百分误差(εMPE)以及最大误差(εME)作为评价指标,具体公式为:

式中:参数fk和Fk分别表示预测点的负荷真实值和组合模型的预测值,参数n表示预测点的个数。

5 算例分析

算例涉及的负荷训练数据均来源于福建电网某地区实际的负荷数据,该地区以居民和学校为主,包括一些高新企业。选取该地区2017 年以及2018 年1 月、2 月的数据作为预测2019 年1 月负荷的训练集。将输入特征向量的数据进行预处理,提取主要的影响因素如历史负荷、气温以及星期属性,并进行编码分别定义成L、T以及W。

令历史负荷L表示预测日期之前的M天的日最大负荷数据,并以星期为周期表现出周期变化趋势,令一周的负荷定义为L1,L2,……,L7。气温T因素在模糊化后,将其三个温度段,低温、中温以及高温分别编号为0、0.5、1。星期属性则是利用二进制编码,从周一至周日分别定义为[0 0 1,0 1 0,0 1 1,1 0 0,1 0 1,1 1 0,1 1 1]。本文使用的组合深度模型含有3 个隐藏层,主要有关参数设定为:参数μ初始值设为0.1,参数λ初始值为0.3,参数ρ初始值设为0.5,参数θ初始值为0.1。

5.1 负荷预测结果

本文采用滚动预测模式,即把前预测值作为后续预测的输入数据,直至完成所有负荷预测。通过对2018 年12 月25 日至31 日的数据进行分析并得到2019 年1 月1 日的预测结果;然后其数据样本更新为2018 年12 月26 日至2019 年1 月1 日的数据,并得到2019 年1 月2 日的预测结果,依次类推,直到预测得到该月的预测数据。通过MATLAB 仿真,其结果如表1 所示。

从表1 数据可看出,基于自适应改进栈式自编码组合算法的预测结果最大相对误差为4.62%,预测结果能够跟踪实际值的变化,误差也符合工程应用的范围,说明了本文所提改进方法对中长期负荷预测具有较高预测精度。

表1 2019 年1 月的负荷预测结果

5.2 气候数据模糊化处理后预测精度的变化

气候因素作为影响中长期负荷预测精度的重要因素,获取准确的气候数据对于中长期负荷预测工作而言尤为重要。但实际收集的气候数据缺失度很高,很难达到预期效果。因此,本文预测模型开展训练之前先对气候数据采取了模糊化处理,弱化了一些苛刻气候对模型训练的影响,具体结果见图4 所示。

图4 气温模糊化前后预测结果比较

图4 给出了采用自适应优化后,改进栈式自编码算法中气温因素在模糊化前后的所得到的结果对比。通过分析可以得出气温在模糊化后使得负荷预测结果精度大幅度提升,并且效果在后半阶段尤为显著,预测效果比未进行模糊化更加的贴近和接近实际值。

5.3 本文算法的优势对比

为了进一步验证所提基于改进栈式自编码算法的准确性,表2 给出了对比算法PSO-SVM、栈式自编码及改进栈式自编码算法在气温模糊化前后的预测结果对比,通过对比分析平均绝对百分误差(εMAPE)、平均百分误差(εMPE)以及最大误差(εME)的误差评价指标,得到基于改进栈式自编码算法预测精度优于PSO-SVM 算法,且在自适应算法优化的基础上,使气温经过模糊化后预测结果的准确性得到了进一步提高。

表2 不同算法的负荷预测结果对比

为了充分论证本文算法在全年的负荷预测中同样具有很高的预测精度,对全年的预测结果进行对比,见图5 所示。

图5 全年不同月份的负荷预测结果

从图中可以看出,在气温较低的1 月和12 月以及气温较高的7 月、8 月和9 月,分别由于取暖和制冷设备的使用造成其负荷水平较高;在气温较为舒适的3 月至5 月份其用电负荷则处于最低水平。此外,由于2 月份有春节和元宵假期,造成其负荷也处于较低水平。改进栈式自编码算法能够综合考虑气温和节假日等因素,其预测结果与实际情况较为符合,而PSO-SVM 算法虽然能够表现负荷随气温变化的大致趋势,但未表现出秋季的用电低谷,也未考虑到2 月份的假期因素,其与实际情况偏差较大。因此负荷预测效果比PSO-SVM 方法效果更为显著。

6 结论

在构造基于改进栈式自编码的中期负荷预测模型时,为了能够进一步提高预测精度,提出利用自适应微分进化算法并结合气温因素进而匹配最佳的中期负荷预测模型,得到以下结论:利用ICA 算法对因素进行筛选,再通过自适应微分进化算法进而对改进栈式自编码算法的参数进行最佳匹配,不仅能够有效减少传统方法在参数选择上的无目的性,还可以提高预测结果准确性。该算法的预测结果误差比常用的PSO-SVM 算法的小,而且更为稳定;将影响负荷的重要因素气温值展开模糊化分析,有效地降低基于改进栈式自编码预测模型输入变量处理对预测结果精度的影响,进一步提高负荷预测准确度。通过对全年不同月份负荷预测结果表明,改进栈式自编码算法能够综合考虑气温和节假日等因素,其预测结果更为准确可靠,也比常用的PSO-SVM 算法预测精度高。因此,该改进算法的综合预测效果较为显著。负荷预测模型有效克服了因梯度弥散而陷入局部最优的缺陷,经过逐层提取负荷、气象数据间隐含的非线性特征,挖掘出负荷数据流的深层变化规律,以实现对未来负荷更加准确的预测。

猜你喜欢

模糊化编码负荷
([0,1],[0,1])-模糊拟阵的基和秩函数
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
餐饮娱乐空间的“边界模糊化”态势探讨——餐饮娱乐空间设计专辑
子带编码在图像压缩编码中的应用
三角模糊数去模糊化对VIKOR妥协解的影响研究
Genome and healthcare
防止过负荷时距离保护误动新判据
主动降负荷才是正经事
负荷跟踪运行下反应堆一回路控制系统仿真与验证