APP下载

基于PSO-WPESN的短期电力负荷预测方法

2017-12-20周红标王乐卜峰应根旺

电测与仪表 2017年6期
关键词:波包适应度神经网络

周红标,王乐,卜峰,应根旺

(淮阴工学院 自动化学院,江苏 淮安223003)

0 引 言

电力系统短期负荷预测主要是预测未来几小时、一天或几天的负荷,对机组优化组合、安全调度、故障检修和电网商业化运作具有重要的指导意义。由于电力负荷数据主要依赖于生产生活的规律性变化,并受气象、节假日等影响,往往是具有周期性、随机性等特点的复杂非线性时间序列。传统的负荷预测完全凭调度员主观判断,后来发展了时间序列法、回归分析法[1-2]。随着人工智能技术的发展,小波理论、神经网络、支持向量机等智能算法被引入短期电力负荷预测当中[3]。由于线性回归模型难以拟合非平稳负荷时间序列,前馈型BP神经网络又存在训练耗时长、易陷入局部解等缺陷,一些学者尝试建立反馈型神经网络预测模型,如Elman、回声状态神经网络等[4]。

回声状态神经网络(Echo State Network,ESN)是Jaeger和Haas于2001年提出的一种新型递归神经网络,并于2004年在Science上发表了相关研究成果[5]。ESN的核心是隐含层内大量以完全随机和稀疏方式互连的神经元构成的动态神经元池(Dynamic Neurons Reservoir,DNR)。ESN的输入、内部和递归连接权重均在学习之前确定,在整个训练过程中保持不变,即ESN只需训练输出权重,大大简化了训练过程;同时,采用凸优化学习算法,有效解决了陷入局部最优解的问题,引起了越来越多研究者的兴趣和重视,已成为时间序列预测领域的研究热点之一[6]。文献[7]利用传统ESN对短期电力负荷进行预测,结果表明ESN预测效果优于前馈神经网络。文献[8]利用相空间理论构建模块化回声状态网络(modular echo state network,MESN)对大客户实时电力数据进行预测,结果表明MESN的预测效果优于RBF、LS-SVM神经网络。文献[9]利用小波对混沌时间序中的噪声进行降噪处理,然后建立ESN预测模型,结果表明所建模型在单步和5步时间序列预测上取得较好精度。文献[10]采用小波回声状态网(wavelet echo state network,WESN)搭建了北美某电厂的电力负荷预测模型,结果显示WESN在1小时和1天内的短期负荷预测上取得较好预测效果。

尽管ESN在许多应用中取得了不错的效果,但它自身存在难以克服的缺陷,尤其状态矩阵的病态解问题,影响模型的泛化能力和预测精度,这困扰了包括Jaeger在内的许多专家学者。针对这一问题,陆续提出了正则化[11]、岭回归[12]、奇异值分解[13]、稀疏贝叶斯[14]等方法(核心思想是引入噪声项)来解决病态矩阵问题,但是改善的效果并不明显,反而增加了算法学习的复杂度。近两三年,有学者引入因子分析和小波分析,构建因子回声状态网[15]和小波回声状态网[16]对时间序列进行动态分析,预测效果得到明显改善。文章考虑小波变换不能对低频空间继续分解的缺陷,而小波包变换具有对高频和低频空间同时细分的优势,提出小波包回声状态网模型(wavelet packet echo state network,WPESN),同时,考虑采用粒子群算法优化ESN储备池参数。PSOWPESN通过小波包分解将时间序列分解成一系列的高频分量和低频分量,然后同时输入到各自PSO优化的ESN模型中。这不仅能够降低问题的学习难度,提高网络的预测精度,而且更为重要的是能够通过高频分量的正则化作用来缓解传统ESN中普遍存在的病态解问题。因此,文章以某市61天的电力负荷数据为对象,建立PSO-WPESN短期电力负荷预测模型,并通过仿真测试与BP、Elman、传统ESN等模型比较,验证了该模型的有效性。

1 回声状态神经网络

回声状态网是一种新型的递归神经网络,包括输入层、动态神经元池和输出层,其中动态神经元池是网络结构的核心,它是由以完全随机和稀疏方式连接的成百上千个神经元构成,这也是网络具备记忆能力的关键。ESN网络结构如图1所示[15-16]。

图1 回声状态网结构图Fig.1 Echo state network structure diagram

设网络输入为 u(n)=[u1(n),…,uK(n)]T,状态为 x(n)=[x1(n),…,xN(n)]T,输出为 y(n)=[y1(n),…,yL(n)]T,其中 K为输入维数,N为内部神经元个数,L为输出维数。则:

式中Win,W,Wb分别为输入、内部状态、输出到内部状态的连接权值矩阵;Wo为内部状态到输出的连接权值矩阵;f=(f1,…,fN)为内部神经元激活函数,一般取为sigmoid函数;fo是输出函数,一般取为线性函数。ESN的Win、W和Wb都是随机生成的,且一经生成在学习过程中就不再改变,在储备池网络的训练过程中只需调整Wo的值即可[17]。

ESN学习算法如下(令L=1):设训练样本个数为 Ns,期望输出为 Y*=[d1,…,dNs]T。则有:

式中 X+=(XTX)-1X为 X的 Moore_Penrose逆,X为训练过程中内部神经元状态序列矩阵。其基本思想是首先通过输入信号激发储备池网络的状态响应信号,即“回声信号”,然后由“回声信号”的线性组合逼近期望输出信号[18]。

2 粒子群优化小波包回声状态网

2.1 小波包分解

在多分辨分析小波理论的基础上,将尺度函数φ(t)记为 u0(t),小波函数 φ(t)记为 u1(t),于是有二尺度方程:

定义的函数集合{un(t)}n∈Z称为由u0(t)=φ(t)所确定的小波包,其中 h(k)、g(k)是共轭滤波器系数。

设x(t)为 L2(R)空间函数,对其离散采样序列{x(p)}p=1,2,…,N’,小波包分解算法为:

由式(4)可知,小波包分解过程实质就是通过一组低、高通组合的共轭正交滤波器h、g,将信号x(p)分解到不同的频带上[19]。

小波包的空间划分是同时对尺度空间和细节空间进行再分解,提高了频率分辨率,克服了小波不能对低频空间进行分解的局限,能够获得更丰富的频域局部化信息,尤其适合动态时间序列数据的预处理。

2.2 小波包回声状态网

WPESN基本思想是通过小波包分解将时间序列分解成低频分量和高频分量,其中低频分量可以很好地反应时间序列的趋势信息,而高频分量可以有效缓解传统ESN模型中存在的病态解问题。假设进行小波包三层分解的话,可以得到低频和高频总共八个分量,将其输入到ESN中激发出状态响应信号,最后通过各状态响应信号间的线性组合逼近期望输出。WPESN的网络结构如图2所示。

图2 WPESN网结构图Fig.2 WPESN network structure diagram

2.3 粒子群优化小波包回声状态网

从图2可知,PSO-WPESN的预测步骤可描述如下[16,20]:

Step1:对原始时间序列进行小波包分解,得到高、低频系数各e个,然后对各系数进行重构,得到数据集(ESN)i(i=D1,D2,…,De,C1,C2,…,Ce);

Step2:对(ESN)i划分训练数据集和测试数据集,并进一步细分输入和输出;为避免数据过大造成神经网络输出饱和,对训练集输入输出数据、测试集输入数据进行归一化处理,归一化公式为:

式中xi和yi分别为原始数据和归一化后数据;xmax和xmin分别为数据的最大值和最小值;

Step3:对(PSO)i进行参数设置,如迭代次数、种群规模、速度更新参数等;对(ESN)i预测模型待优化参数包括储备池神经元规模(N)i,谱半径(SR)i,稀疏度(SD)i,输入单元尺度(IS)i、输入单元位移(ID)i,输出单元尺度(TS)i,输出单元位移(TD)i等进行初始值产生和范围设定。对上述参数取值进行多次试验尝试,以确定适应不同数据集的较好参数;

Step4:根据(PSO)i中初始值建立 ESN模型,处理(ESN)i的训练数据,计算种群内所有粒子适应度,寻找个体极值和群体极值,适应度计算公式为:

Step5:对粒子更新自身的速度和位置,更新公式为:

式中ω为惯性权重;c1和c2为加速度因子;r1和r2为[0,1]区间的随机数;

Step6:个体极值更新。对每个粒子,将其适应度值gbest与个体极值进行比较,若比gbest更优,则重新记gbest位置;

Step7:群体极值更新。当前粒子群每个粒子的历史最优位置的适应度值gbest再与粒子群最优位置的适应度值 zbest进行比较,若 gbest的位置优于zbest,则记 gbest为 zbest;

Step8:重复Step5至Step7,直至满足迭代次数,最终得到整个粒子群的最优位置pbest;

Step9:根据(PSO)i得到的最优解 pbest建立(ESN)I模型,将(ESN)i数据集中训练集输入、测试集输入送入预测模型,得到训练集和测试集预测输出反归一化后的和,反归一化公式为:

Step10:重复Step2至Step8,完成小波包重构后的个时间序列数据的PSO-ESN建模和预测,得到(i=D1,D2,…,De,C1,C2,…,Xe);

3 结果分析

3.1 数据来源

文章连续采集了某市2个月的电力负荷数据,每隔15分钟采样一次,每天可采集96个点的数据,共计5 856点,如图3所示。

图3 某市61天负荷数据Fig.3 Historical load data

3.2 评价指标

为了评价所建PSO-WPESN模型的有效性,将其与BP、WNN、Elman、传统 ESN等神经网络的预测效果进行对比,并选择归一化均方根误差(Normalized rootmean square error,NRMSE)、均方误差 (Mean square error,MSE)和平均绝对百分比误差(Mean absolute percentage error,MAPE)作为判断预测效果的依据,计算公式为:

式中 T为预测样本点的总数;y(t)为预测值;yd(t)为期望值。

3.3 结果分析

对61天共采集到的5 856点数据,每6天的数据作为输入,第7天的数据作为输出,这样就得到了55个样本。前54个样本作为训练集,第55个样本作为测试集(第54天到第60天的数据作为测试集输入,第61天的数据为测试集输出)。首先建立常规的BP和Elman神经网络观察预测情况。BP和EL-man预测结果如图4所示。

由于每6天有576个点的数据,第61天有96个点的数据,即输入为576点,输出为96点,故建立的网络结构为576-n-96。模型隐含层传递函数选用sigmoid函数,训练函数采用traingdx。对n取不同值时的预测误差进行分析,运行10次求取平均值,BP的n=8时平均总误差为4.75×104MW,Elman的n=55时平均总误差为3.045×104MW。进一步尝试改变数据序列结构和扩展BP网络为双隐含层,对误差数据统计发现,平均总误差都在3 MW~7×104MW之间,误差比较大,难以满足电力负荷精准预测的需求。

图4 BP和Elman预测结果(每6天预测第7天)Fig.4 Forecasting results based on BP and Elman

对结果进行分析,多输出预测精度不高的原因在于网络结构过于复杂,泛化能力大幅降低。因此研究改变样本数据构成,尝试单点输出预测。对于5 856点数据,每10个点作为输入,紧随的第11点作为输出,这样就得到5 846个样本。前5 750个样本作为训练集,后96个样本作为测试集,能够完成第61天的电力负荷逐点预测要求。

由于每个样本输入为10个数据点,输出为1个数据点,故以下建立的各模型网络结构都为10-n-1。对n取不同值时的预测误差进行分析,运行10次求取平均值,BP的n=8时平均总误差为3.126×103MW,Elman的n=30时平均总误差为10.121×103MW,WNN的 n=15时平均总误差为6.073×103MW。各模型预测精度得到大幅提高,尤其是BP神经网络预测效果最好。预测结果和误差百分比如图5和图6所示,其中误差百分比采用的公式为÷y。

图5 BP、Elman、WNN预测结果Fig.5 Forecasting results based on BP,Elman and WNN

图6 BP、Elman、WNN预测误差百分比Fig.6 Forecasting error percentage of BP,Elman,WNN

进一步,利用文章建立的PSO-WPESN模型对负荷数据进行处理,并与 GA-BP、常规 ESN、PSO-ESN等模型相比较。GA-BP中遗传操作的参数选取为:种群规模为20,迭代次数为20,交叉概率0.2,变异概率0.1。传统ESN的储备池节点数取为350,谱半径取为0.65,稀疏度取为0.03,输入单元尺度取为0.15,输入单元位移取为0,输出单元尺度取为17.15,输出单元位移取为-0.1。PSO-ESN中粒子群参数选取为:速度更新参数c1、c2都取为1.3,迭代次数取为20,种群规模取为20,个体中储备池神经元个数、谱半径、稀疏度、尺度因子(输入、输出)、位移因子(输入、输出)等依次取10-1 000、0.1-0.9、0.01-1、-2-2(经过多次尝试,输出尺度因子取为0-50时精度普遍较高)、-1-1。PSO-WPESN中采用db9小波、3层分解,其他参数设置与上述模型一致。

为了能够对预测结果进行清晰比较,这里的ESN、PSO-ESN在学习和预测过程中丢弃了数据序列的初始10个点。适应度进化情况如图7所示,可见经过PSO优化的平均适应度值和最优适应度值的进化情况明显优于GA。由于PSO-WPESN是对小波包分解和重构后的8个系数进行的建模仿真,这里并没有给出其适应度变化曲线。

图7 GABP、PSOESN适应度进化情况Fig.7 Fitness of GABP and PSOESN

上述模型的预测结果如图8所示,粗略地看,各模型的预测效果都比较好。但是通过第32点的局部放大图可以看出PSO-WPESN与实际值几乎重叠,预测效果最好,PSO-ESN其次,而ESN和GA-BP精度较差。图9所示为第11-25点的局部图,可以清晰地看到,PSO-WPESN的预测效果要优于 GA-BP和ESN,而PSO-ESN效果较差。这是由于PSO-ESN过学习导致输出矩阵Wo过大,从而造成早期阶段的个别点预测精度急剧下降,这种情况从第25个点后才得到有效抑制。

图8 PSO-WPESN等模型预测结果Fig.8 Forecasting results based on PSO-WPESN

图9 第11-25点的预测结果Fig.9 Forecasting results of 11-25 data points

图10 PSO-WPESN等模型预测误差百分比Fig.10 Forecasting error percentage of PSO-WPESN

图11 第11-25点的预测误差百分比(取绝对值)Fig.11 Forecasting error percentage of 11-25 data points

上述模型的预测误差百分比如图10所示,可以看出,GA-BP模型误差百分比在-2%~6.5%之间,ESN模型误差百分比在-2.5%~5.5%之间,PSOESN模型误差百分比在-2.5%~3%之间,而PSOWPESN模型误差百分比仅在-0.1%~0.1%之间。图11显示的是第11-25点误差百分比绝对值,可以清晰看到,PSO-WPESN的误差百分比绝对值要远小于其他模型。这说明通过采用小波包分解,WPESN能够有效消除病态解。可见,正是由于小波包的多分辨率分析特性,通过高、低频等频率划分,降低了模型学习难度,利用高频分量的正则化作用有效克服了传统ESN普遍存在的不适定问题,表明了小波包对提高预测精度的可行性。

表1列出了各模型训练集、测试集的NRMSE、MSE、MAPE和测试集的总误差以及建模耗时。

表1 各模型预测结果(取10次平均值)Tab.1 Forecasting results of each model(average of 10 times)

从表1不难看出,PSO-WPESN算法给出了最佳的预测精度,对于训练集,NRMSE、MSE、MAPE分别为0.001、0.76、0.019,对于测试集,NRMSE、MSE、MAPE分别为0.001、1.08、0.021;测试集总误差分别为0.07×103MW,预测精度和泛化能力得到明显提高,当然,由于嵌套PSO优化,CPU耗时达到9 766 s。在实际应用中可以通过减少训练数据集规模以及改变数据集生成方式来减少学习时间,以适应电力负荷快速精确的预测需求。

4 结束语

文章针对前馈BP和递归Elman等网络在时间序列预测中的不足,选用ESN神经网络建立短期电力负荷模型,但经典ESN由于解奇异造成病态矩阵且储备池参数难以精确确定,使得网络的稳定性和泛化能力大为降低。因此,采取小波包分解构建局部型小波包ESN神经网络,缓解了病态解,采取粒子群优化ESN储备池的谱规模、半径、稀疏度、尺度和位移等参数,提高了模型的预测精度。基于所提出的PSO-WPESN模型,采用某地区实测的电力负荷数据进行验证,证明了该模型与 BP、Elman、常规ESN等相比,具有更高的预测精度。下一步研究工作是协调数据规模、学习时间和预测精度三者之间的关系。

猜你喜欢

波包适应度神经网络
神经网络抑制无线通信干扰探究
基于小波包Tsallis熵和RVM的模拟电路故障诊断
一种基于改进适应度的多机器人协作策略
基于空调导风板成型工艺的Kriging模型适应度研究
基于小波包变换的电力系统谐波分析
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
小波包理论与图像小波包分解
基于支持向量机回归和RBF神经网络的PID整定
基于小波包的全信息解调方法及其应用