基于改进花粉算法优化的神经网络负荷预测研究
2021-02-25赵珍玉段睿钦周彬彬高洪洋
赵珍玉,蒋 燕,段睿钦,周彬彬,高洪洋
(1.云南电力调度控制中心,云南 昆明 650011; 2.北京清软创新科技股份有限公司,北京 102200)
世界经济的快速发展,对能源的需求不断增长。出于对未来时段负荷需求的考量,对负荷预测的研究引起了国内外大量学者的关注,经过几十年的发展成为一个热门研究方向。其中短期预测研究,在计算速度和预测准确率的方向上,前人做了很多研究工作[1-5]。
1991年,Park等[6]首次在电力预期上用神经网络来预测电量;Fan等[7]将未来负荷和日期、温度、历史负荷等相关因素关联进行研究;Schachter等[8]用前馈式传播的人工神经网络方法对短期负荷的预计进行了研究;师彪等[9-11]将智能进化算法和神经网络组合起来,可以优化神经网络结构,从而提高预测精度。
针对算法的收敛不够快、搜寻的结果不够精确等不足,导致结合的神经网络预测能力低下,本文主要对智能进化算法中花粉算法(Flower pollination algorithm,FPA)进行改进来更好地帮助神经网络搜索权值和阈值,并从多方位评判改进算法的效果。
1 粒子群优化BP神经网络
1.1 神经网络结构
以“误差反向传播(Back Propagation,BP)网络”为例,其本质是结果误差在神经网络内反向传播训练。具体为信息正向传播,比较输出的预期,未达预期的误差结果反向传输并改善该网络的结构参数(包含神经网络的权值和阈值),以达到提高预测精度的目的。
通用的神经网络组织结构通常包含输入层、隐含层、输出层3层结构,如图1所示。预测需求的历史负荷数据、节假日、温度、天气等输入可按照输入类型数对应设置为输入神经元的数量。而隐藏层神经元的数量并未有明确的计算法则,需要根据经验反复试验得到较为合适的数量,输出层是未来需要得知的数据链,这里指未来时间段内负荷即单个输出神经元。
图1 神经网络拓扑构造Fig.1 Neural network topology
1.2 PSO优化神经网络结构
为了配置更优良的神经网络结构,避免过大的预测误差,可采用进化计算优化网络结构。例如用粒子群(Particle Swarm Optimization,PSO)优化BP,可采用如图2所示的流程来实施。常规的进化计算算法都可采用此模式优化神经网络结构。
在实际应用中,采取深圳市某地某楼层的相关负荷和当地气象数据共8组数据作为输入,隐含层根据经验公式设置为5个节点,输出层为单节点。因此,该神经网络共有45个权值和6个阈值需要优化,粒子群算法中将个体的维度设置为51。把作为训练用的数据的均方差作为算法内个体的优化值,求得的值越小,该个体越优,相应的神经网络结构也更优良。
1.3 PSO优化案例分析
从表1、图3和图4可以看出,经过PSO优化过的BP神经网络预测精度提高不少,具有实际应用意义。
图2 PSO优化BP算法流程Fig.2 Flowchart of the PSO optimization BP algorithm
表1 两种方法预测指标Tab.1 Prediction indicators for the two methods
图3 PSO-BP与BP预测值对比Fig.3 Comparison of PSO-BP and BP prediction
为进一步提高神经网络预测能力,可通过其他搜索能力更优的算法或改进某些算法,避免求解陷入局部最优。
图4 PSO-BP与BP绝对误差百分比对比Fig.4 Comparison of absolute error percentage between PSO-BP and BP
2 改进的花粉算法
2.1 花粉算法
花朵授粉算法是自然界植物花朵的繁殖授粉的启发而来。该算法包括局部概率p转换和全局概率转换授粉。将最优个体依据概率进行位置更新,然后不断迭代进化。
(1)
(2)
2.2 局部搜索增强策略的花粉算法及其测试
为增强该算法的搜索能力,将更新公式(2)变换为(3)。个体花粉搜索过程中会不断分享种群内最优个体信息素,使搜寻全局最优解更具效率。
(3)
为了测试改进的进化计算花粉算法(IFPA)的搜索能力、计算时间、收敛速率等,选择12个测试函数进行测试。表2列举了12个常规基准函数的测试公式、空间搜索区域以及该公式的理论最优值。第1—第7个函数都是单一局部最优且高维问题,能够适合神经网络优化的单目标单峰问题,这类问题的设置主要针对该算法的收敛速率和寻优能力。第8—第12个函数属于多个局部最优即多峰问题,这类问题多是非线性问题,对应神经网络中需优化的多峰类型函数。
表2 基准测试函数Tab.2 Benchmark test function
2.3 实验参数设置
将IFPA与FPA[12]、EFPA[13]、tFPA[14]、MFPA[15]和PSO算法比较。PSO参数设置c1=c2=2,惯性权重w=0.729 8。FPA类的算法的转换概率的设置p=0.8。整体算法的种群规模保持为30。
对相同迭代数情况下不同算法进行分析。首先,设置一定的迭代次数为500,个体的维度采用30维和100维进行算法对维度复杂性求解能力测试,每种算法在同样运行环境下独立运行50次,然后统计各类指标。
测试结果见表3。从表3中可以看出,经过多次优化求解测试函数的作为对比的各类算法的各项指标中,结果都不优良,甚至有的无法搜寻到理论最优,因此性能相对较差。而IFPA算法可以搜寻到的解属于精度很高的优良解。对于函数f8和f10,IFPA算法可以搜寻到理论最优值。同时,在2种不同维度下,IFPA算法也优于相比较算法的结果。另外,神经网络需要优化的多峰类型的函数f8—f12,IFPA也拥有更为优秀的搜索能力。
表3 算法在固定迭代次数下在30维和100维的测试结果Tab.3 Test results of the algorithm in 30 and 100 dimensions for a fixed number of iterations
续表
3 结论
在预测电力负荷的方法中,神经网络结构通过进化算法优化后,拥有更优良的结构,对提升预测精度有很大的帮助。本文针对花粉算法进行了适应性策略上的改进,对比其他花粉算法的改进及PSO算法,实验结果证明IFPA能够使其避免局部最优的搜寻,进而能搜寻全局最优的结果,拥有改善神经网络结构的能力。