2. 北京中电普华信息技术有限公司, 北京 100192
2. Beijing China Power Information Technology Co. Ltd., Beijing 100192, China
近年来, 电力市场结构发生了较大变化, 考虑经济调度、竞价策略、机组组合等其他活动, 进行可靠准确的负荷预测非常必要。各种分布式能源的出现与发展, 给电力市场的需求带来更多的变化[1-2]。因此, 负荷预测在市场参与者的决策活动中起着非常重要的作用。
电力市场的负荷和结构具有波动性, 导致指数平滑模型、回归和时间序列等传统算法预测可靠性不佳[3]。此外, 神经网络、支持向量机以及模糊系统等人工智能技术也已应用到电力负荷预测中。例如, 文献[4]提出基于一阶最小二乘法的多时间序列方程模型来预测负荷, 并与非线性和非参数方法进行比较。文献[5]提出一种预测负荷的方法, 称为高精度递归极值学习机, 用于单层递归神经网络的训练。文献[6]提出一种基于II型模糊逻辑系统的方案, 并将其应用到主动学习理论中, 对电力负荷进行预测。
随着市场竞争的加剧、基础设施的日益老化、可再生能源的集成化以及电力市场越来越活跃且难以预测, 市场参与者对概率负荷预测产生了浓厚的兴趣。与点预测技术相比, 概率负荷预测提供了关于电力负荷序列的可变性和不确定性的附加信息。实现概率负荷预测的一种形式是预测区间。该方法以点预测和不确定度误差为基础进行电力负荷预测。例如, 文献[7]分别采用半参数回归模型、多变量时间序列仿真模型和重采样策略进行电力负荷点预测。文献[8]提出一组预测点的分位数回归平均法来预测概率, 可充分发挥点预测的能力。文献[9]提出一种应用在日负荷预测中的基于高斯过程的扩散异方差预测方法。上述方法虽然可获得较好的效果, 但是在电力市场负荷预测中预测可靠性不佳, 同时并未考虑到算法的计算复杂性。
由于神经网络在负荷预测中的广泛应用及其外推和估计能力, 本文选择小波神经网络(Wavelet Neural Network, WNN)进行负荷预测。在此基础上, 设计实现了WNN和广义极值学习机(Generalized Extreme Learning Machine, GELM)的应用框架, 考虑非迭代训练机的数据噪声不确定性, 结合GELM、小波处理和抽样技术对电力需求进行预测。
1 小波算法的GELM模型 1.1 小波预处理本文利用小波变换将电力需求序列划分为一组性能良好的生产子序列, 通过逆小波变换产生最终的预测负荷, 荷载系列的分度系数计算如下[10]:
$ p_{RL}^W = {2^{ - \left( {\frac{R}{2}} \right)}}\sum\limits_{t = 0}^{T - 1} {{p_t}W\left( {\frac{{t - L \cdot {2^R}}}{{{2^R}}}} \right)} = {2^{ - \left( {\frac{R}{2}} \right)}}\sum\limits_{t = 0}^{T - 1} {{p_t}{W_{RL}}\left( t \right)} $ | (1) |
其中, W(·)是小波函数, pt是在时刻t的负载量, T是序列的长度, pRLW是分辨率水平R和位置L的系数。
根据荷载系列数学性质, 本文选择正交小波函数进行计算。因此, 近似集AR(R=1, 2, …, R*)以及细节集DR(R=1, 2, …, R*)由正交小波函数定义。基准负荷序列pt(t=1, 2, …, T)可表示为:
$ {p_t} = {D_1} + {D_2} + \cdots + {D_{{R^ * }}} + {A_{{R^ * }}} $ | (2) |
最常见的小波函数是Daubechies和Morlet。在通常情况下, Daubechies小波函数具有更好的效率。
1.2 小波神经网络与传统的激活函数相比, WNN具有较强的泛化能力。图 1为本文的WNN结构。
![]() |
Download:
|
图 1 WNN结构 |
在隐藏层中, 神经元的激活函数如下[11]:
$ {F_i}\left( {{x_1}, {x_2}, \cdots , {x_n}} \right) = \prod\limits_{j = 1}^n {{\tau _{{a_i}, {b_i}}}\left( {{x_j}} \right)} $ | (3) |
$ {\tau _{{a_i}, {b_i}}}\left( {{x_j}} \right) = \tau \left( {\frac{{{x_j} - {b_i}}}{{{a_i}}}} \right) $ | (4) |
其中, ∀i=1, 2, …, L, L是隐藏神经元的数量, τ(x)是Morlet函数, 其定义如下:
$ \tau \left( x \right) = {{\rm{e}}^{ - 0.5{x^2}}}\cos \left( {5x} \right) $ | (5) |
其中, ai和bi分别是Morlet函数的位移和尺度系数。神经网络的输出如下:
$ y = \sum\limits_{i = 1}^L {{w_i}{F_i}\left( {{x_1}, {x_2}, \cdots , {x_n}} \right)} + \sum\limits_{j = 1}^n {{v_j}{x_j}} $ | (6) |
其中, wi是第i个隐藏神经元的系数, vj是第j个输入系数。
1.3 广义极值学习机GELM作为单层前馈神经网络的一种快速训练方法, 可采用极值学习机方式进行学习。假设有N个不同的训练数据案例
$ {Y_j}\left( {{\mathit{\boldsymbol{x}}_j}} \right) = \sum\limits_{i = 1}^L {\left( {{F_i}\left( {{\mathit{\boldsymbol{x}}_j}} \right){\mathit{\boldsymbol{w}}_i}} \right)} + \sum\limits_{i = l}^n {\left( {{\mathit{\boldsymbol{x}}_j}{\mathit{\boldsymbol{v}}_i}} \right)} = {\mathit{\boldsymbol{t}}_j} $ | (7) |
其中, j=1, 2, …, N, wi=[wi1, wi2, …, wim]T是第i个隐藏神经元的系数向量, vi=[vi1, vi2, …, vim]T是第i个输入的系数向量, Fi(xj)是通过应用第j个输入的第i个隐藏神经元的输出。式(7)可以改写成如下矩阵形式:
$ \mathit{\boldsymbol{FW}} + \mathit{\boldsymbol{VX}} = \mathit{\boldsymbol{T}} $ | (8) |
其中, F、W、V和X的有关定义参见文献[10]。训练数据集X的第i个数据被用作输入, 则矩阵F的第i行表示隐藏神经元的输出。通过式(9)和式(10), 式(8)可以改写为式(11)形式。
$ \mathit{\boldsymbol{H}} = {\left[ {\mathit{\boldsymbol{F}}\left| \mathit{\boldsymbol{X}} \right.} \right]_{N \times \left( {L + n} \right)}} $ | (9) |
$ \mathit{\boldsymbol{\beta }} = {\left[ {\frac{\mathit{\boldsymbol{W}}}{\mathit{\boldsymbol{V}}}} \right]_{\left( {L + n} \right) \times m}} $ | (10) |
$ \mathit{\boldsymbol{H\beta }} = \mathit{\boldsymbol{T}} $ | (11) |
在训练过程中, 随机抽取系数ai和bi。β是下三角形式的训练变量的矩阵。此外, 矩阵T是一个正定矩阵, 通过广义逆, 矩阵β计算如下:
$ \mathit{\boldsymbol{\beta }} = {\mathit{\boldsymbol{H}}^\dagger }\mathit{\boldsymbol{T}} $ | (12) |
其中, H
神经网络的结构和参数的不确定性, 造成了预测区间模型的不确定性。而预测模型的不确定性是导致负荷预测不确定性的主要因素。预测不确定性的另一个原因是训练数据的噪声。事实上, 数据回归的随机行为产生了模型不确定性, 会导致算法出现较大的预测误差, 因此如果对于模型的区间进行事先的划定, 对于降低算法的模型预测误差具有较大的益处。如果考虑一组不同的数据对
$ {t_i} = r\left( {{x_i}} \right) + \varepsilon \left( {{x_i}} \right) $ | (13) |
其中, ε(xi)表示高斯噪声, 其均值为0, r(xi)为真实数据的回归平均值。学习神经网络
$ {t_i} - \hat r\left( {{x_i}} \right) = \left[ {r\left( {{x_i}} \right) - \hat r\left( {{x_i}} \right)} \right] + \varepsilon \left( {{x_i}} \right) $ | (14) |
其中, r(xi)-
$ \hat \sigma _t^2\left( {{x_i}} \right) = \hat \sigma _r^2\left( {{x_i}} \right) + \hat \sigma _\varepsilon ^2\left( {{x_i}} \right) $ | (15) |
假设时间序列为
$ \left\{ {\begin{array}{*{20}{l}} {L_r^{(\delta )}\left( {{x_i}} \right) = \hat r\left( {{x_i}} \right) - {z_{1 - \delta /2}}\sqrt {\hat \sigma _t^2\left( {{x_i}} \right)} }\\ {U_r^{(\delta )}\left( {{x_i}} \right) = \hat r\left( {{x_i}} \right) + {z_{1 - \delta /2}}\sqrt {\hat \sigma _t^2\left( {{x_i}} \right)} } \end{array}} \right. $ | (16) |
其中, z1-δ/2是标准正态分布临界值, 它取决于给定的置信水平。预期区间ti处于标称可能性为(1-δ)×100%的预测区间结构中, 因此可以得出如下结论:
$ P\left( {{t_i} \in \left[ {L_r^{(\delta )}\left( {{x_i}} \right), U_r^{(\delta )}\left( {{x_i}} \right)} \right]} \right) = (1 - \delta ) \times 100\% $ | (17) |
样本容量是指在实验中选取的样本所具有的抽样数量。抽样数量越大, 则模型构建的精度越高, 但计算复杂度也越大。因此, 样本容量的选取对于模型的性能影响较大。但在真实的模型构建过程中, 样本容量无法有效地确定, 为此, 本文设计一种迭代自适应抽样技术, 以实现对模型不确定性的有效估计, 其具体步骤如下:
步骤1(模型训练)基于数据{(xi, ti)}对GELM进行训练, 得到模型的评估值
步骤2(误差计算)结合式(13)以及步骤1得到的模型评估值
步骤3 (降噪处理)为降低噪声对算法的影响, 选择中心转移指标对原有步骤2计算得到的误差进行处理。误差的中心转移指标计算公式如下:
$ {\hat e_i} = {\hat e_i} - \sum\limits_i {{{\hat e}_i}} /N。$ |
步骤4 (数据更新)用步骤3结果替换步骤2结果, 对式(13)进行改进:
$ {\tilde t_i} = \hat r\left( {{x_i}} \right) + \tilde e\left( {{x_i}} \right) $ |
新的训练数据形式为
步骤5
(抽样自适应)对于新的训练数据, 在第q次抽样迭代中, 预测
步骤6 (预测输出)重复步骤2到步骤5更新q, 得到最终迭代次数B。根据生成的对应数据, 使用式(18)计算神经网络输出的平均值。
$ \hat{r}\left(x_{i}\right)=\left(\sum\limits_{q} \hat{r}_{q}\left(x_{i}\right)\right) / B $ | (18) |
模型不确定性的方差计算如下:
$ \hat{\sigma}_{r}^{2}\left(x_{i}\right)=\left(\sum\limits_{q}\left(\hat{r}_{q}\left(x_{i}\right)-\hat{r}\left(x_{i}\right)\right)^{2}\right) /(B-1) $ | (19) |
通过上述步骤, 实现了样本容量的自适应迭代计算, 从而减少在计算过程中参数选取的不确定性对算法鲁棒性的影响, 并可有效降低算法的复杂度。
2.3 不确定性噪声模型构建在传统的神经网络中, 由于重复的噪声具有消失效应而无需考虑数据噪声。然而, 在GELM中, 需要考虑数据噪声。迭代自适应抽样技术虽然采用了中心转移指标对计算得到的误差进行处理, 但是其针对的是白噪声。在实际的样本数据中, 噪声的影响往往具有不确定性, 会对模型的构建精度产生较大的影响。因此, 必须获得噪声数据的方差来模拟数据的噪声。本文采用剩余误差方式对训练数据噪声方差模型进行训练, 实现对模型输出噪声的有效预测和消除。根据式(13)和式(19), 计算得到噪声数据的方差:
$ \hat{\sigma}_{s}^{2}=E\left[(t-\hat{r})^{2}\right]-\hat{\sigma}_{r}^{2} $ | (20) |
则剩余误差平方计算公式如下:
$ R^{2}\left(x_{i}\right)=\max \left(\left[t_{i}-\hat{r}\left(x_{i}\right)\right]^{2}-\hat{\sigma}_{r}^{2}\left(x_{i}\right), 0\right) $ | (21) |
输入xi和剩余误差平方的训练数据集被定义为
为了系统地验证预测区间, 本文以可靠性指标对算法模型的性能进行评价。
可靠性指标:预测区间估计验证的关键指标是可靠性。根据预测区间的定义, ti在预测区间的标称概率即预测区间的名义置信度(Prediction Interval Nominal Confidence, PINC)为(1-δ)×100%。基于Nt测试样本, 相关预测区间的实际覆盖概率由预测区间覆盖概率(Prediction Interval Coverage Probability, PICP)表示, 其定义如下:
$ P I C P=\frac{1}{N_{t}} \sum\limits_{i=1}^{N_{t}} I_{i}^{(\delta)} $ | (22) |
其中, Ii(δ)是PICP的索引, 计算如下:
$ I_{i}^{(\delta)}=\left\{\begin{array}{l}{1, t_{i} \in\left[L_{r}^{(\delta)}\left(x_{i}\right), U_{r}^{(\delta)}\left(x_{i}\right)\right]} \\ {0, t_{i} \notin\left[L_{r}^{(\delta)}\left(x_{i}\right), U_{r}^{(\delta)}\left(x_{i}\right)\right]}\end{array}\right. $ | (23) |
预测区间的可靠性程度直接由PICP表示。为了获得高可靠性, 所获得的预测区间应该渐近地达到相关的PICP。然后, 计算控制偏差(Area Control Error, ACE), 定义为PICP和PINC之间的差值, 并用于评价预测区间的可靠性:
$ A C E=P I C P-P I N C $ | (24) |
ACE的值越接近0, 可靠性越好。
2.5 算法描述为了获得数据的噪声不确定性, 首先要确定负荷预测和模型不确定性的方差。图 2为概率负荷预测算法的流程。在开始时, 应根据预测周期选择训练数据。本文的目标是预测一周的每小时的电力需求, 训练数据为预测周期前一年的小时负荷数据。为了对算法性能进行测试和验证, 将训练数据划分为训练、验证和测试3个子数据集。这些子序列被用作神经网络训练、参数调节和模型的性能评估。
![]() |
Download:
|
图 2 概率负荷预测算法流程 |
在图 2中, 不确定性模型部分给出了基于GELM的神经网络训练过程以及采用抽样技术实现对数据的更新计算, 预测器部分对1个小时内的数据进行预测。基于2.3节所设计的噪声模型训练方式对不确定性噪声模型进行构建, 并实现对预测区间的精确评估。最后, 根据模型收敛情况对算法的运行和终止进行判断。
除了神经网络自身的复杂性之外, 使用1 a的数据还会导致增加计算负荷和预测时间, 同时降低预测准确度。预测准确度降低的原因是与负荷预测数据的不相关性。因此, 可利用自相关函数(Autocorrelation Function, ACF)来减少预测模型的复杂度和计算量, 并通过削减不相关数据来提高预测模型的精度。下一步, 利用Daubechies函数将数据进行小波变换, 划分为近似子域A1和3个细节子域D1、D2和D3。用这4个子序列训练神经网络, 并通过逆小波变换将神经网络的4个输出返回到原始负载状态。如前所述, 为了获取预测模型的不确定性, 需要用4B神经网络进行抽样。利用初始数据和预测模型不确定区间的输出, 训练与数据噪声相关的神经网络。如图 3所示, 电力系统小时负荷预测需要4B+1神经网络。
![]() |
Download:
|
图 3 基于抽样的负荷预测神经网络模型 |
本文实验的计算机配置为CPU Intel 5-6400k @3.0 GHz, 内存8 GB。实验数据选取法国2014年—2015年一个时期内的电力负荷实测数据, 数据延续时间是100周, 该数据可采自Yacine的私人网站(http://www.princeton.edu/~yacine/)。将这100周的电力负荷实测数据前70周的数据作为训练数据, 剩余30周的数据作为测试数据, 用于提前24 h预测电力系统的负荷。
选取平均绝对百分比误差(Mean Absolute Percentage Error, MAPE)作为电力负荷预测算法的性能评估指标, 计算如下[17-18]:
$ MAPE = 100\left[ {\sum\limits_{i = 1}^n {\left| {\left( {{L_i} - {{\hat L}_i}} \right)/\left( {n \cdot {L_i}} \right)} \right|} } \right] $ | (25) |
其中,
本文选取灰度值预测(GM)[19]电力负荷预测算法以及比率估计(RME)[20]电力负荷预测算法作为对比算法。图 4为算法预测输出负荷最大取值与真实值的对比及其对应的MAPE。
![]() |
Download:
|
图 4 预测精度对比 |
由图 4可知, 相对于GM和RME 2种算法, 本文算法的预测输出曲线更加趋近于真实电力负荷值, 其MAPE值更小, 即电力负荷值预测精度更高。
图 5为3种电力负荷预测算法在每天固定时刻的电力负荷预测的MAPE指标对比情况。
![]() |
Download:
|
图 5 固定时刻的电力负荷预测 |
由图 5可知, 在选取的8:00和22:00 2个固定时刻, 算法的电力负荷预测的MAPE指标随着预测周期的增加而增大, 说明预测周期越长算法的预测精度越低。此外, 本文算法对2个固定时刻的电力负荷预测, 其MAPE值要显著小于其他2种对比算法。因篇幅限制, 本文仅采用2个固定时刻进行算法的预测精度实验, 但是其结果具有一定的普适性。
4 结束语在GELM、WNN和抽样技术的基础上, 本文提出一种高性能组合预测方法, 以概率区间形式输出电力负荷预测结果。提前24 h预测电力系统的最大负荷以及对每天固定时刻进行电力负荷预测, 其结果表明, 相较于GM与RME方法, 本文方法的MAPE值更小, 并且随着预测周期的增加, 预测精度降低。下一步考虑将天气信息等数据作为神经网络的输入并将GELM推广到多层神经网络, 以提高电力负荷预测精度。
[1] |
GARULLI A, PAOLETTI S, VICINO A. Models and techniques for electric load forecasting in the presence of demand response[J]. IEEE Transactions on Control Systems Technology, 2015, 23(3): 1087-1097. DOI:10.1109/TCST.2014.2361807 ( ![]() |
[2] |
REGO L, SUMAILI J, MIRANDA V, et al. Mean shift densification of scarce data sets in short-term electric power load forecasting for special days[J]. Electrical Engineering, 2017, 99(3): 881-898. DOI:10.1007/s00202-016-0424-z ( ![]() |
[3] |
计鹿飞, 江琦, 唐昊. 基于半马尔可夫控制过程的智能电网最优储能控制[J]. 电力系统自动化, 2015, 39(6): 24-27. ( ![]() |
[4] |
NIU Dongxiao, MA Tiannan, LIU Bingyi. Power load forecasting by wavelet least squares support vector machine with improved fruit fly optimization algorithm[J]. Journal of Combinatorial Optimization, 2017, 33(3): 1122-1143. ( ![]() |
[5] |
WOLFS P, EMAMI K, LIN Yufeng, et al. Load forecasting for diurnal management of community battery systems[J]. Journal of Modern Power Systems and Clean Energy, 2018, 6(2): 215-222. DOI:10.1007/s40565-018-0392-6 ( ![]() |
[6] |
SUN Hongbin, PAN Xin, MENG Changxin. A short-term power load prediction algorithm of based on power load factor deep cluster neural network[J]. Wireless Personal Communications, 2018, 102(2): 1073-1084. DOI:10.1007/s11277-017-5140-0 ( ![]() |
[7] |
BALLINI R, YAGERR R. OWA filters and forecasting models applied to electric power load time series[J]. Evolving Systems, 2014, 5(3): 159-173. DOI:10.1007/s12530-014-9112-2 ( ![]() |
[8] |
LI Yiyan, HAN Dong, YAN Zheng. Long-term system load forecasting based on data-driven linear clustering method[J]. Journal of Modern Power Systems and Clean Energy, 2018, 6(2): 306-316. DOI:10.1007/s40565-017-0288-x ( ![]() |
[9] |
SAXENA N K, SHARMA A K. Estimation of composite load model with aggregate induction motor dynamic load for an isolated hybrid power system[J]. Frontiers in Energy, 2015, 9(4): 472-485. DOI:10.1007/s11708-015-0373-7 ( ![]() |
[10] |
庞清乐. 基于粗糙集理论的神经网络预测算法及其在短期负荷预测中的应用[J]. 电网技术, 2010, 34(12): 168-173. ( ![]() |
[11] |
GORSKⅡ E R, AGLIULIN S G, BARAKIN K A, et al. Organization of load shedding in thermal power plants with cross-links[J]. Power Technology and Engineering, 2017, 50(6): 630-631. DOI:10.1007/s10749-017-0762-7 ( ![]() |
[12] |
GAN Dahua, WANG Yi, YANG Shuo, et al. Embedding based quantile regression neural network for probabilistic load forecasting[J]. Journal of Modern Power Systems and Clean Energy, 2018, 6(2): 244-254. DOI:10.1007/s40565-018-0380-x ( ![]() |
[13] |
WOJCICKI J, BIANCHI G. Electric load management in spindle run-up and run-down for multi-spindle machine tools via optimal power-torque trajectories and peak load synchronization[J]. The International Journal of Advanced Manufacturing Technology, 2018, 95(5): 1819-1835. ( ![]() |
[14] |
WANG Jianjun, CHEN Shanben, SHAO Yufeng. Research on maximum power point tracking in redundant load mode for photovoltaic system[J]. Journal of Shanghai Jiaotong University (Science), 2016, 21(3): 257-262. DOI:10.1007/s12204-016-1720-5 ( ![]() |
[15] |
YUAN Liu, ZHOU Jianzhong, MAI Zijun, et al. Random fuzzy optimization model for short-term hydropower scheduling considering uncertainty of power load[J]. Water Resources Management, 2017, 31(9): 2713-2728. DOI:10.1007/s11269-017-1657-y ( ![]() |
[16] |
葛少云, 贾鸥莎, 刘洪. 基于遗传灰色神经网络模型的实时电价条件下电力负荷预测[J]. 电网技术, 2012, 36(1): 224-229. ( ![]() |
[17] |
LI Cunbin, LI Shuke, LIU Yunqi. A least squares support vector machine model optimized by moth-flame optimization algorithm for annual power load forecasting[J]. Applied Intelligence, 2016, 45(6): 1166-1178. ( ![]() |
[18] |
CHEN Yang, LUH P B. Short-term load forecasting:similar day-based wavelet neural networks[J]. IEEE Transaction on Power System, 2010, 25(1): 322-330. ( ![]() |
[19] |
JOUNEGHANI F G, BABAZADEH M, BAYRAMZADEH R. Erratum to:investigation of commuting hamiltonian in quantum markov network[J]. International Journal of Theoretical Physics, 2014, 53(12): 4421-4430. DOI:10.1007/s10773-014-2351-y ( ![]() |
[20] |
CHAKHCHOUKH Y, PANCIATICI P, MILI L. Electric load forecasting based on statistical robust methods[J]. IEEE Transactions on Power Systems, 2011, 26(3): 982-992. ( ![]() |