基于PCA-GA-BP算法的风力发电功率预测
2022-10-19朱传奇
朱传奇
(安徽理工大学,安徽 淮南 232001)
0 引 言
基于风力发电的能源正在成为住宅、商业和工业应用中最有前途的能源之一。风力发电由于其非理想的特性,已经引起了广大研究人员的关注。准确预测风力发电短期输出功率,对于电网生产、输送、存储的日/时效管理,以及能源市场决策具有重要意义。近年来,有许多研究人员对风力发电功率进行了预测。赵海琦等使用BP神经网络算法预估了风电运行表现。郭志刚研究了如何使用BP神经网络算法准确预测风电功率,却没有考虑使用单一BP神经网络算法可能会导致训练的权值阈值局部最优。贾蒙蒙使用蚁群算法寻找最优的BP神经网络结构参数,对短期风速进行了预测。何廷一使用蜂群算法寻找神经网络最优权值和阈值,但没有考虑对初始数据进行优化。
PCA主成分分析是对数据进行分析降维的一种方法,BP神经网络是一种通过数据训练并不断反馈修正的多层神经网络,是预测分析中使用较为广泛的神经网络算法。遗传算法是一种群智能搜索算法,能够对参数较多或较难选取的算法进行参数寻优等。结合以上研究进展和技术手段,提出先使用PAC降维,再使用GA优化神经网络建立模型,从而快速准确的根据天气数据对风电输出功率进行短期预测的构想。
1 算法结构
1.1 PCA主成分分析
PCA主成分分析就是用数据里最主要的成分代替原始数据。对于×维的数据矩阵:
样本量为,为数据的维数,先将进行中心化:
得到的中心化矩阵为:
求得协方差矩阵为:
求的个特征向量按照特征值大小排列组成矩阵,只取前列:
将×维数据降维到×维。
1.2 GA-BP神经网络算法
GA-BP神经网络算法使用遗传算法得到最优的BP神经网络结构参数,再进行神经网络的训练,选取测试集进行测试。算法流程如图1所示。
图1 GA-BP算法流程
2 实验分析
测试所用数据来自于西北某风电厂一风力涡轮机一年的数据,数据集每一小时记录一次涡轮机功率、风速、风向等数据,数据集数据较多,维数较大,直接带入模型训练时间较长,使用PCA主成分分析法可以降低数据维数,加快训练速度。
使用PCA主成分分析法计算可以得到主成分贡献率表,见表1所列。
表1 前四主成分贡献表
可以发现前4个主成分就可以描述数据的93.004 97%,我们选取前4个主成分数据进行训练,将数据集维数降为4维。将功率输出分为4个区间,使用PCA主成分分析可以得到如图2所示的PCA置信图。
图2 PCA置信图
首先根据4维数据输出和单数据输出确定BP神经网络的拓扑结构,隐含层神经元个数和输入层元关系为:
可以得到神经网络结构为4-9-1,共有45个权值,9个阈值,遗传算法优化的参数为54个,使用降维训练集样本进行训练,再使用测试集样本进行误差测试。使用误差的范数衡量网络能力,通过误差范数计算适应度。遗传算法进化的适应度曲线如图3所示。
图3 遗传算法适应度曲线
神经网络的隐含层传递函数采用S型正切函数,输出层使用S型对数函数,将输出区间固定为0~1,将遗传算法优化的初始权值和阈值交给BP神经网络进行训练,最后将预测结果和测试集数据进行比较。可以发现,图4所示的预测结果和真实值几乎保持一致,达到了算法的目的。
图4 预测结果
GA-BP的预测误差百分比如图5所示,可以看到,误差保持在10%以内。
图5 误差百分比
选用算法运行速度、决定系数和算法准确度3个评价指标分别对本算法和其他传统算法进行评价,指标的计算公式如下。
算法准确度越高,算法性能越好,决定系数在0~1之间,越接近1性能越好。
PCA-GA-BP与传统算法的性能比较见表2所列。
表2 PCA-GA-BP与传统算法的性能比较
可以发现,使用主成分分析后的算法准确率下降,但运行时间缩短,使用主成分分析的遗传神经网络算法达到了最佳性能。
3 结 语
本文基于PCA-GA-BP神经网络算法对采集的风力涡轮机天气数据和对应的功率输出数据进行训练,再使用测试集数据进行测试,结果发现,使用PCA-GA-BP算法的短时风力涡轮机可以快速准确地预测输出功率。相比传统的BP、GA-BP、PSO-BP算法预测精度更高、预测时间更短。