一种具有分解机制电力负荷预测的数据驱动方法

文档序号:30218073发布日期:2022-05-31 19:15阅读:188来源:国知局
一种具有分解机制电力负荷预测的数据驱动方法

1.本发明属于电力负荷预测领域,特别是涉及一种具有分解机制电力负荷预测的数据驱动方法。


背景技术:

2.电力负荷预测对于电网未来调度规划、电力市场交易运营及电力系统的经济稳定运行具有重要作用。随着经济的不断发展,电力用户负荷结构日益复杂,电网峰谷差持续加大,这为精准的电力负荷预测造成了极大困难。因此,在含有多特征因素、强非线性和强波动性的负荷数据中,探究如何挖掘特征信息,提出有效提高负荷预测精度和效率的方法,并辨识负荷预测模型是具有意义的。
3.当前,针对仅基于一类时间跨度的电力负荷预测方法相对较多,主要有融合支持向量回归、灰色突变、神经网络和随机森林算法,对于短期电力负荷和中长期电力负荷分别预测,但是暂无对多时间跨度的负荷预测;在现有研究中,对于数据预处理的研究已取得一些成果,主要有利用卷积神经网络进行多维特征提取,改进熵互信息的特征选择方法进行数据预处理等;随着负荷预测算法泛化能力的改进,部分电力负荷预测模型可以同时适用两类时间跨度的负荷预测。例如将加权最小二乘状态估计与自适应神经模糊推理系统结合,构建了一种短期电力负荷预测的混合方法,并且适用于中期电力负荷预测。结合基于时间的卷积神经网络与基于周期的长短期记忆网络,辨识得出适用中、短期的电力负荷预测模型。将基于嵌套策略、状态转移算法与混合支持向量回归相结合的方法,建立的分层优化方法应用于中长期电力负荷预测中。这几种方式虽然实现了两种时间跨度同时预测的目的,但预测精度有待提高,且仍没有适用三种时间跨度的电力负荷预测。


技术实现要素:

4.本发明的目的是提供一种具有分解机制电力负荷预测的数据驱动方法,以解决上述现有技术存在的问题。
5.为实现上述目的,本发明提供了一种具有分解机制电力负荷预测的数据驱动方法,包括:
6.获取电力负荷数据,对所述电力负荷数据进行整理;
7.基于改进的自适应噪声的完备经验模态分解算法,对整理后的所述电力负荷数据进行分解处理,将分解后的所述电力负荷数据划分为训练集和测试集;
8.构建电力负荷预测模型,基于所述训练集对所述电力负荷预测模型进行训练,基于所述测试集对训练好的所述电力负荷预测模型进行测试;
9.获取待测电力负荷数据,对所述待测电力负荷数据进行整理和分解处理,将分解后的所述待测电力负荷数据输入通过测试的电力负荷预测模型,获得所述待测电力负荷数据的预测结果。
10.可选的,对所述电力负荷数据进行整理的过程包括,
11.获得所述电力负荷数据的缺失值和异常值,基于所述电力负荷数据的变化趋势或所述电力负荷数据的前后数值的中位数,对所述电力负荷数据的缺失值和异常值进行修补。
12.可选的,基于改进的自适应噪声的完备经验模态分解算法,对整理后的所述电力负荷数据进行分解处理的过程包括,
13.基于改进的自适应噪声的完备经验模态分解算法,将整理后的所述电力负荷数据通过若干步迭代分解成若干个固有模态分量和一个余量。
14.可选的,分解后的所述电力负荷数据包括平稳信号和非平稳信号,所述固有模态分量为所述平稳信号,所述余量为所述非平稳信号。
15.可选的,所述电力负荷预测模型包括,
16.基于最小二乘支持向量机算法,构建的第一电力负荷预测模型和基于长短期记忆神经网络,构建的第二电力负荷预测模型。
17.可选的,基于所述训练集对所述电力负荷预测模型进行训练的过程包括,
18.将所述训练集中的非平稳信号输入到所述第一电力负荷预测模型中进行训练,直到训练结束;将所述训练集中的平稳信号输入到所述第二电力负荷预测模型中进行训练,直到训练结束。
19.可选的,获得所述待测电力负荷数据的预测结果的过程包括,
20.将所述第一电力负荷预测模型和所述第二电力负荷预测模型的输出求和,得到输出结果;将所述输出结果进行反归一化,还原所述输出结果原量纲,获得所述待测电力负荷预测结果。
21.可选的,所述方法还包括,通过选择评价指标对所述电力负荷预测模型的拟合程度和预测准确度进行评价。
22.本发明的技术效果为:
23.本方法利用将改进的基于自适应噪声的完备经验模态分解算法、基于动态自适应加权最小二乘支持向量机算法和长短期记忆神经网络相结合的算法,设计新型电力负荷预测模型对电力负荷预测进行研究,并用实际数据验证该电力负荷预测模型具有适用短期、中期和长期三类时间跨度的电力负荷预测的泛化能力和高预测精度。
附图说明
24.为了更清楚地说明本技术的技术方案,下面对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
25.图1为本发明实施例中的iceemdan算法结构图;
26.图2为本发明实施例中的lstm的结构图;
27.图3为本发明实施例中的一种具有分解机制电力负荷预测的数据驱动方法流程图;
28.图4为本发明提供的预测方法与lstm、ls-svm和pso-svr在短期电力负荷预测结果的比较示意图;
29.图5为本发明提供的预测方法在短期电力负荷预测中实际值与预测值的相关曲线
示意图;
30.图6为本发明提供的预测方法与lstm、ls-svm和pso-svr在中期电力负荷预测结果的比较示意图;
31.图7为本发明提供的预测方法在中期电力负荷预测中实际值与预测值的相关曲线示意图;
32.图8为本发明提供的预测方法与lstm、ls-svm和pso-svr在长期电力负荷预测结果的比较示意图;
33.图9为本发明提供的预测方法在长期电力负荷预测中实际值与预测值的相关曲线示意图。
具体实施方式
34.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
35.为使本技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本技术作进一步详细的说明。
36.本发明利用将改进的基于自适应噪声的完备经验模态分解算法、基于动态自适应加权最小二乘支持向量机算法和长短期记忆神经网络相结合的算法,设计新型电力负荷预测模型对负荷预测进行研究,并用实际数据验证本方法具有适用短期、中期和长期三类时间跨度的电力负荷预测的泛化能力。
37.原始的电力负荷数据是电力负荷预测最完备的依据,然而,电力负荷数据值中存在的波动性及不确定性会对预测结果造成很大的影响,甚至会使预测结果与真实情况产生较大的偏差。因此,本发明采取基于自适应噪声的改进完备经验模态分解(iceemdan)的方式对电力负荷数据进行预先处理,并将电力负荷数据分解为平稳信号和非平稳信号,通过不同类别的神经网络结构对不同的信号进行训练,进而实现所提出电力负荷预测方案的超强泛化能力。
38.(1)基于自适应噪声的完备经验模态分解算法(complete ensemble empirical mode decomposition with adaptive noise,ccemdan)(用于处理分解数据)
39.ceemdan是基于经验模态分解(emd)发展得到的先进理论成果。传统的emd方法可以用来对非线性信号序列进行分析,并通过所分析的信号自适应地形成固有模态函数,实现对信号中固有模态函数与残差的分解。基于emd算法,在原始信号中添加有限的白噪声,可有效抑制emd的模态混叠现象。但随着白噪声频率的增加,算法的效率会逐渐降低,重建后的预测误差会增大。为解决这一问题,ceemdan将所添加的白噪声转变为自适应的白噪声,进而可使信号的重构误差接近于0。该方法可以将非线性及非平稳的信号自适应地分解为多个不同尺度的固有模态分量。设i(t)为原始信号序列,ξk,k=0,...,k为自适应系数,wi(t)为每次添加的白噪声序列,此处选取为零均值单位方差白噪声的实现,ek(
·
)为由emd产生的第k模态运算符。令ii(t)=i(t)+ξ0wi(t),ceemdan算法步骤如下所示:
40.步骤1:令第1个固有模态分量imf1(t),通过emd算法分解n次实验可以得到:
[0041][0042]
步骤2:计算第1个余量序列r1(t),可以得到:
[0043]
r1(t)=i(t)-imf1(t)
ꢀꢀꢀ
(2)
[0044]
步骤3:根据步骤2,计算第2个固有模态分量:
[0045][0046]
步骤4:对于k=2,...,k,重复上述计算,进而获得第k个余量序列rk(t)和第k+1个固有模态分量imf
k+1

[0047][0048]
步骤5:重复步骤4,直到余量序列无法再分解,此时极值点个数≤2,停止emd算法,并得到最终的余量序列r(t)和最终固有模态分量imfk(t)。最终,原始信号序列被分解为:
[0049][0050]
至此,完成了对原始信号的分解。然而,ceemdan算法在分解前期会产生伪模态,并存在一些残余噪声,从而降低了模态分解的性能。
[0051]
(2)如图1所示,改进的基于自适应噪声的完备经验模态分解算法(improved complete ensemble empirical mode decomposition with adaptive noise,iccemdan)(用于处理分解数据)
[0052]
为消除ceemdan产生的伪模态,提升模态分解算法性能,一种基于自适应噪声的改进完备经验模态分解(iceemdan)算法被提出。与ceemdan不同之处在于,iceemdan使用加性白噪声估计实现的局部平均值,而不是白噪声估计模态本身。定义m(
·
)为包络运算符,选取e1(i)=i-m(i),令wi(t)为具有零均值和单位方差的高斯白噪声的实现,然后,iceemdan算法步骤如下所示:
[0053]
步骤1:由于ii(t)=i(t)+ξ0e1(wi(t)),i=1,2,...l,因此可以得到第1个余量序列
[0054][0055]
步骤2:定义第一个模态为
[0056]
imf1=i(t)-r1ꢀꢀꢀ
(7)
[0057]
步骤3:计算第2个余量序列r2,获得第二个模态imf2[0058][0059]
步骤4:计算第k个余量序列rk,获得第k个模态imfk[0060][0061]
步骤5:重复步骤4,直到获得所有的固有模态分量。
[0062]
需要被注意的是,常数ξ
k-1
的选取可以改变余量与所添加噪声的信噪比,且满足ξ0=ε0std(i)/std(e1(wi)),ξk=ε0std(rk),其中ε0为输入信号i(t)与所添加第1个噪声的期望信噪比的倒数,std(
·
)为标准差运算符。
[0063]
(3)如图2所示,长短期记忆神经网络(long short-term memory network lstm)
[0064]
lstm作为循环神经网络(recurrent neural network rnn)的扩展,相比较原始的rnn网络进行了改进。rnn和lstm之间的主要区别在于lstm可以存储长期时间依赖信息,并且可以适当地映射输入和输出数据,在预测时间序列数据方面具有很强的能力。lstm网络结构与传统的感知器架构比较,增加了包含控制信息流的单元和三个门。这三个门分别是输入门、遗忘门、输出门。三个门作用不同,相互合作,达到最佳效果。lstm利用三个门对保留的信息进行控制,确保保留的信息是算法需要的。
[0065]
lstm的操作步骤如下:
[0066]
第一步,数据进入lstm的首要任务是被“遗忘门”检测,主要是确定数据中有哪些信息需要清除,也就是从单元中丢掉的信息。该策略通过一个被称为“遗忘门”的sigmoid层实现。
[0067]
f(ti)=σ(wfx(ti)+w
hf
h(t
i-1
)+bf)
ꢀꢀꢀ
(10)
[0068]
lstm的第二步是确定将数据中哪些新信息保存下来。该策略通过两个部分实现。
[0069]
第一部分,利用“输入门”的sigmoid层决定更新单元中的哪些值。
[0070]
a(ti)=σ(wax(ti)+w
ha
h(t
i-1
)+ba)
ꢀꢀꢀ
(11)
[0071]
第二部分,利用tanh层创建添加到单元中的新值,最后,结合遗忘门和输入门的结果创建状态更新,将旧的单元状态c(t
i-1
)更新为新的单元状态c(ti)。
[0072]
c(ti)=f
t
×
c(t
i-1
)+a
t
×
tanh(wcx(ti)+w
hc
(h(t
i-1
))+bc)
ꢀꢀꢀ
(12)
[0073]
lstm的最后一步是确定单元状态输出的结果。该策略通过两部分实现。
[0074]
首先,通过一个sigmoid层决定输出单元状态的哪些部分。
[0075]
o(ti)=σ(wox(ti)+w
ho
h(t
i-1
)+b0)
ꢀꢀꢀ
(13)
[0076]
然后,将单元的输出设置为tanh函数乘以sigmoid层的输出,以便只输出我们决定的部分。
[0077]
h(ti)=o(ti)
×
tanh(c(ti))
ꢀꢀꢀ
(14)
[0078]
其中,tanh是正切激励函数,
×
表示逐点乘法。
[0079]
lstm的使用步骤如下:
[0080]
步骤1:利用方程计算lstm输出。如公式(1)-(5)所示。
[0081]
步骤2:计算每一层的结果和输入之间的误差。
[0082]
步骤3:将误差反向输送到输入门、单元和遗忘门。
[0083]
步骤4:基于误差项,使用优化算法更新每个门的权重。
[0084]
对于给定的迭代次数重复上述四步过程,并获得权重和偏差的最佳值。
[0085]
其中x(ti)是输入;h(t
i-1
)和h(ti)分别是t
i-1
和ti时刻的输出值;c(t
i-1
)和c(ti)是
t
i-1
和ti时刻的细胞状态;b={ba,bf,bc,bo}分别是输入门、遗忘门、内部状态和输出门的偏差;w1={wa,wf,wc,wo}分别是输入门、遗忘门,内部状态和输出门的权重矩阵。w2={w
ha
,w
hf
,w
hc
,w
ho
}是循环权重;a={a(ti),f(ti),c(ti),o(ti)}分别是输入门、遗忘门、内部状态和输出门的输出结果;
[0086]
(4)最小二乘支持向量机(least squares support vector machine ls-svm)
[0087]
最小二乘支持向量机训练过程遵循结构风险最小化原则,与一般向量机相比具有计算复杂度低、运算速度高的优点。
[0088]
svm使用线性模型通过从输入向量到高维特征空间的非线性映射来预测样本数据。考虑给定的训练集x={(xi,yi),i=1,2...m},输入数据xi∈rn,输出数据yi∈r。ls-svm旨在找到一个平面w
t
x+b=0来分开两类样本,即求解如下二次规划问题:
[0089][0090][0091]
其中γ表示惩罚参数,ξ表示松弛变量。
[0092]
针对式(16),可引入拉格朗日算子α=(α1,α2,...α
l
)
t
,得到拉格朗日目标函数:
[0093][0094]
其中ai是拉格朗日乘数。令公式(17)各参数的偏导为零,得到求解的karush-kuhn-tucker(kkt)最优条件:
[0095][0096]
式(18)可表示成方程组:
[0097][0098]
其中ω
ij
=yiyjk(xi,xj).
[0099]
根据式(19)解出和,得到分类判别函数:
[0100][0101]
有几种不同类型的mercer核函数k(x,xi),例如sigmoid、多项式和径向基函数(rbf)。rbf是核函数的常用选项,因为需要设置的参数较少,并且整体性能优异。因此,本发明选择rbf作为核函数,如下式所示:
[0102]
k(x,xi)=exp{-||x-xi||2/2σ2}
ꢀꢀꢀ
(21)
[0103]
各跨度的电力负荷预测在电网规划调度中起到不同作用。一般的,短期负荷预测技术常用于监视电网的电能质量;中期负荷预测技术常用于制定发电计划,指导电能生产;长期负荷预测技术常用于电网建设规划。在本发明中,为同时解决短期、中期和长期,三类时间跨度的负荷预测问题,我们提出了一种将iceemdan、ls-svm和lstm相结合的算法。其中,iceemdan算法用于将原始的负荷数据分解为平稳信号和非平稳信号。将分解得到的两种信号作为输入,带入到两种回归算法中,得到电力负荷预测结果。
[0104]
如图3所示,本实施例中提供一种具有分解机制电力负荷预测的数据驱动方法,包括:
[0105]
步骤1:数据分析
[0106]
在步骤1中,为保证数据集的质量,将获得的历史电力负荷数据进行数据清洗。首先,需要检查和处理电力负荷数据中的缺失值和异常值,避免缺失值和异常值对预测精度的影响。将检测到的缺失值和异常值部分,按照历史电力负荷变化趋势或前后数值的中位数进行修补。若是多维度特征的数据集,还需挖掘特征关系,结合实际情况进行分析。然后,需要对电力负荷数据进行归一化处理,去除不同数据间的量纲,便于后续步骤的进行。
[0107]
步骤2:数据分解
[0108]
在步骤2中,将电力负荷数据通过iceemdan算法分解。根据公式(6)-公式(9)对iceemdan算法原理的叙述可知,负荷数据可通过k步迭代分解成k个imf模态,即imfk,和一个余量res。其中,imfk为分解得到的平稳信号部分,平稳信号即信号围绕一个值波动;余量res部分为分解得到的非平稳信号部分。结束上述步骤后,将分解后的电力负荷数据集划分为训练集和测试集,用以在步骤3和步骤4中训练及评估所建立的电力负荷预测模型。
[0109]
步骤3:电力负荷预测
[0110]
在步骤3中,将分解得到的两部分数据带入回归算法。我们将非平稳部分信号和平稳部分信号作为输入,分别带入到两种回归算法中。其中,将数据分解得到的非平稳信号部分带入到ls-svm算法中,将平稳信号部分带入lstm算法中,用于建立电力负荷预测模型及调整模型参数。然后,将两种回归算法的输出求和,得到输出结果。最后,将输出结果最终进行反归一化,还原数据原量纲,得到电力负荷预测结果。
[0111]
步骤4:模型验证
[0112]
在步骤4中,验证模型精度。为了评估所建立的电力负荷预测模型精度,通过选择评价指标对模型的拟合程度和预测准确度进行评价。
[0113]
本发明设计了一种将改进的基于自适应噪声的完备经验模态分解算法、基于动态自适应加权最小二乘支持向量机算法和长短期记忆神经网络相结合的方案,以解决预测算法同时适用于短期、中期和长期三类时间跨度的电力负荷预测问题。为验证所提出的预测算法,我们选择了以1分钟为间隔的历史负荷数据测量,以及中国北方某城市2018年至2020年的假日数据,构建了一个用python编写的电力负荷预测模型。在该模型中,数据集按3:1的比例划分为训练集和测试集。然后比较了基于lstm、ls-svm和粒子群-支持向量回归(pso-svr)的预测方法,并给出了仿真结果。为了评估该算法的准确性,选择了三个度量:平均误差(mae)、均方根误差(rmse)和平均绝对百分比误差(mape)。这三个指标的表达式为:
[0114][0115][0116][0117]
其中n是数据点的编号,ci是预测数据的结果,ri是实际数据(i=1,...,n)。
[0118]
为了预测2020年最后三天的电力负荷,如图4、5所示,在短期电力负荷预测中验证
了所提出的混合算法的有效性,并且训练集的长度是测试集的三倍。预测结果显示仅使用lstm或ls-svm的预测效果较差。将iceemdan、lstm和ls-svm相结合,可以显著改善预测结果。该算法在短期电力负荷预测中的平均误差(mae)、平均百分比误差(mape)和均方根误差(rmse)分别为21.5868%、0.4348%和27.7698,与lstm、ls-svm和pso-svr相比,平均误差(mae)分别减少了25.6881、42.3492和69.7490。
[0119]
如图6、7所示,利用2020年最后4周收集的电力负荷数据进行中期电力负荷预测,训练和预测数据集按3:1的比例划分。预测结果显示,随着预测序列的增加,该算法的预测性能略有下降。然而,我们提出的混合算法明显优于其他算法。与lstm、ls-svm和pso-svr相比,该方法的平均百分比误差(mape)分别降低了0.4444%、0.9266%和1.7647%。
[0120]
如图8、9所示,利用与短期电力负荷预测、中期电力负荷预测相同的预测模型,进行长期负荷预测。将9月至11月的电力负荷数据用于训练数据驱动模型,并预测12月的电力负荷。预测结果显示,与lstm、ls-svm和pso-svr相比,均方根误差(rmse)分别降低了16.5172、48.8732和69.7224。
[0121]
以上所述,仅为本技术较佳的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1