电力系统运行过程中,负荷的短期预测具有十分重要的意义。可以将影响负荷的多种因素如气象,待预测日前几天的负荷数据,以及日平均负荷等作为BP神经网络的输入节点,输出负荷值作为网络的输出。本文先将BP神经网络运用到电力负荷的短期预测中,但网络的训练效果受其初始权值、阈值的影响较大,预测效果并不理想。鉴于海豚群算法(DPO)具有收敛速度快、鲁棒性好等优点,将其运用到BP神经网络的权值、阈值优化问题上,并与PSO-BP算法相比,证明了其在短期负荷预测中优越性。 The short-term load forecasting is of great significance for the power system operation. The factors such as weather, load data and average load before forecasting, etc., have been used as the input nodes of the neural network, and the output load value has been used as the output of the network. In this paper, the BP neural network is applied to short-term load forecasting, but the training effect of the network is influenced by the initial weights and thresholds, and the generalization ability is poor. Because of the advantages of fast convergence, good robustness, the Dolphin Partners Optimization Algorithm (DPO) is applied to the BP neural network weights and threshold optimization. The practical experiment results show that the results of DPO-BP are superior to the results of PSO-BP.
王仁丽,代月明,韩成春,徐康耀
徐州工程学院,江苏 徐州
收稿日期:2017年7月24日;录用日期:2017年7月31日;发布日期:2017年8月3日
电力系统运行过程中,负荷的短期预测具有十分重要的意义。可以将影响负荷的多种因素如气象,待预测日前几天的负荷数据,以及日平均负荷等作为BP神经网络的输入节点,输出负荷值作为网络的输出。本文先将BP神经网络运用到电力负荷的短期预测中,但网络的训练效果受其初始权值、阈值的影响较大,预测效果并不理想。鉴于海豚群算法(DPO)具有收敛速度快、鲁棒性好等优点,将其运用到BP神经网络的权值、阈值优化问题上,并与PSO-BP算法相比,证明了其在短期负荷预测中优越性。
关键词 :BP神经网络,海豚群算法,短期,负荷预测
Copyright © 2017 by authors and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
电力对国家的安全、社会的稳定发展以及人民生活有着重大的影响。电能的主要特点就是不能存储,要求随发随用,因此,电能的产生过程要求较高,既不能发电多于用户所需,也不能发电少于用户所需。电力负荷预测即要求能通过对历史负荷数据的全面分析,根据所得到的预测的负荷数据,可以用来提前安排发电计划,提高电网的可靠性和安全性。随着社会的发展,电力负荷的预测方法也越来越多,从最初的手工计算,到如今众多学者提出了越来越多的方法,负荷的预测精度也越来越高。电力系统负荷的预测,一方面与负荷本身的历史规律有关,如节假日,季节,地区的影响,同时,还受到气象、经济等因素的影响 [
设待预测的日期为DAY,要预测的数据为该天1~24小时的整点负荷值。可以通过两种方法构建预测模型:1) 构建多输入,24个输出的网络,对预测日的24小时负荷进行预测;2) 构建多输入,单输出的网络,对预测日指定时刻t的负荷分别进行预测,但是,要预测一天24小时的负荷,就要分别构建24个这样的网络。考虑到第一种方案输出变量过多,相应输入变量要比第一种方案多很多,网络结构太大,为了减少网络计算量,本文采用后一种预测方案。
因此,样本的输出变量为预测日t时刻的负荷,取时间
采用欧洲某地区的样本数据,该数据来源于http://neuron.tuke.sk/competition/index.php,对该地区指定日期的电力负荷进行24小时预测。预测之前先要对历史负荷数据进行数据预处理,以去掉影响负荷预测的伪数据。首先,相邻日相同时刻的历史负荷具有相似性,若某一天某一时刻的负荷数据波动超过了前后七天同一时刻的一定范围,就可以认为是伪数据,根据所设定的最大波动范围,取设定的最大值或最小值。同时,在每一天的负荷历史数据中,前后两时刻的负荷不应出现特别大的波动,设定前后两时刻负荷数据为基准值,设定数据的最大的横向波动范围,若某点负荷数据与前一时刻的数据和后一时刻的数据差都超过阀值,就认为该点是伪数据,可以用前一天三个时刻的数据和当天的前后数据对当天时刻的负荷数据进行修正。
样本数量从 1998 年 7 月 6 日 到 8 月 6 日 共选取为32组。通过前面多组数据预测 8 月 6 日 的指定时刻t的负荷
其中:
BP网络是一种多层次的前馈结构型神经网络。BP神经网络主要的特点是信号的前向传播,误差的反向传递。在前向传播过程中,输入信号起始于输入层经隐含层逐层向后传播,最后终止于输出层。每一层神经元状态只影响其下一层的神经元状态。如果输出层得不到期望的输出,则开始进行反向传播,依据预测误差值来调整网络权值或阈值,从而使BP神经网络预测结果不断地逼近期望输出。本文使用的BP神经网络的层次结构如图1所示。
图1中
输入 | 日期DAY-3的t-2, t-1,t 时刻实际负荷值 | |
---|---|---|
日期DAY-2的t-2, t-1,t 时刻实际负荷值 | ||
日期DAY-1的t-2, t-1,t 时刻实际负荷值 | ||
日期DAY-3,DAY-2,DAY-1日平均负荷值 | ||
日期DAY-3,DAY-2,DAY-1的日平均气温 | ||
日期DAY的日平均气温 | ||
输出 | 日期DAY 的 |
表1. 输入变量和输出变量
图1. 本文使用的BP神经网络的拓扑结构
数为1,该BP神经网络可视作从16个自变量到1个因变量的非线性函数的映射关系。隐含层通过试凑法确定为11个。同时,将样本分为训练样本和测试样本,测试样本为1组,即 8 月 6 日 的24小时负荷值分别作为每个网络的测试样本。网络实际训练时,发现当训练样本个数太多时,24小时的最大预测误差较大,当训练样本增加到30个时,24小时的最大预测误差达到了8.4%。原因应该是电力短期负荷自身特点导致,由于电力负荷的短期预测直接受近期负荷影响,当训练样本过多时,容易使网络训练过度,网络记住了个别特征如较远时期以前样本的影响从而导致预测误差增加 [
DPO算法采用海豚觅食过程中从个体到种群的设计方案和分工明确的互助式探索路径的结构。如图2所示,通过海豚个体对自身位置和食物位置的感知和判断、群体间的信息共享,自主进行个体的角色定位,选择首领,以期获得靠近食物的最优位置 [
传统BP神经网络这个单一的算法,各网络层的阈值以及各层网络间的连接权值都是随机生成的,虽然BP网络自身也有对网络的连接权值、阈值进行更新,但是这种更新的效果并不理想 [
启发式DPO算法,在总结海豚觅食行为的基础上,通过位置初始化、适应度(目标)函数值计算、群体交流、位置更新等步骤,逐代择优,最终获得海豚群体的位置。将DPO算法用于BP网络初始权值、阈值的优化上,再将优化后得到的一组最优权值和阈值作为BP网络的初始权阈值,运用于测试样本的预测可以取得不错的效果。
图2. 海豚群觅食的流程
将DPO算法与BP神经网络这两者相结合,运用DPO算法确定一组BP网络的最优权阈值,可兼具DPO算法的全局寻优及局部细致搜索能力与人工神经网络的映射泛化能力。
DPO算法优化BP神经网络的基本步骤为:
Step1:设定DPO参数。初始化海豚群的位置
其中,
Step2:构造虚拟团队。海豚个体都会自发地选择各自的伙伴,组成虚拟团队。为了达到满意的寻优精度,定义以每只海豚
Step3:选取合适的适应度函数。在确定一组最优的BP神经网络的权值、阈值过程中,选择合适的目标(适应度)函数
Step4:确定海豚群最优位置。根据各海豚团队中海豚个体的BP预测仿真值,由适应度函数公式确定每个团队的最优解
Step5:更新海豚位置。海豚确定彼此间的伙伴关系后,还需不断的更新自己的位置,以期望获得“食物”的准确信息。由理论可知,前期需要快速了解“食物”的位置,因此,海豚可以快速的找到“食物”的大概位置,伙伴间形成包围式的搜索,而到了后期,“食物”的位置已经基本锁定,就应该细致搜索,最终确定“食物”的准确位置。数学描述为前期大范围搜索,易跳出局部最优解,后期细致搜索,为精确找出最优解。故引入一个动态的权值变量
Step6:若迭代寻优次数达到Maxgen,则网络训练结束,得出海豚群最优位置(即一组最优权阈值),否则跳转Step2。
Step7:用此权值和阈值构建BP用于接下来的样本评价。
该组合算法DPO-BP在负荷预测中的具体流程见下图3所示。
1) 网络初始化
仍选取上述数据作为网络的训练样本和测试样本,取训练样本个数为10个,即7月23到 8 月 5 日 (仅保留工作日)的10个样本数据, 8 月 6 日 的数据作为网络的测试样本。网络结构选取为3层,输入层的节点数为16,隐含层的节点数选取为11,输出层的节点数为1。
2) DPO算法参数初始值
设定海豚群的整体大小为
为了判断及证明DPO-BP算法预测模型的优越性,与PSO-BP相对比,对24个网络分别使用DPO-BP算法与PSO-BP算法进行训练,得到 8 月 6 日 的0:00~24:00点的负荷预测对比如图4所示。
图3. DPO-BP组合算法短期负荷预测流程
图4. 两种方法预测24小时对比
预测结果表明DPO-BP算法和PSO-BP的预测结果都要优于前述未经优化的BP算法。由图4可见,其中,PSO-BP的24小时负荷预测的最大误差出现在7点,误差是4.10%,DPO-BP的24小时负荷预测的最大误差出现在6点,误差是3.42%。比1.3节所述BP神经网络的24小时的预测误差最大5.7%相比,预测效果明显更优。经计算,PSO-BP算法的24小时平均绝对误差为2.41%,DPO-BP算法的24小时平均绝对误差为1.92%。DPO-BP的短期负荷预测误差要小于PSO-BP的预测误差,预测效果更好。
本文将人工海豚算法用于BP神经网络的优化,对指定日期的24小时电力负荷分别进行预测。由于人工海豚算法具有较高的收敛速度、寻优精度,将DPO-BP用于负荷的短期预测上的结果与PSO-BP算法进行对比分析。结果发现,DPO-BP算法的求解精度更高,预测效果更好。
王仁丽,代月明,韩成春,徐康耀. DPO—BP在电力负荷短期预测中的应用Application of DPO—BP in Short-Term Load Forecasting[J]. 输配电工程与技术, 2017, 06(03): 35-41. http://dx.doi.org/10.12677/TDET.2017.63005