当前位置:首页 期刊杂志

改进粒子群算法优化支持向量机的短期负荷预测

时间:2024-07-28

李 杰, 靳孟宇, 马士豪

(河北工业大学 经济管理学院,天津 300401)

短期电力负荷预测研究作为电力系统稳定运行的重要组成部分之一,为市场环境提供了高效、经济的发电计划和交易计划,对电力系统的可靠和经济运行意义重大[1]。短期电力负荷预测主要是指对未来7~30天内电力负荷数据进行预测,常用于大型发电机设备的优化调整和电力市场潮流方向的控制[2]。准确无误的电力负荷预测能够有效保障电力电网系统的健康高效运行,对增强电网运营效率、提升供电企业市场竞争力具有重要意义。

传统预测方法主要包括时间序列预测、专家预测系统和灰色模型等[3-4]。现代预测方法主要包括神经网络、小波分析、支持向量回归机[5]、粒子群算法[6]、极限学习机[7]等。由于电力负荷数据是非线性的,故传统方法已不再适用。支持向量回归(Support Vector Regression,SVR)能通过核函数将非线性数据映射到高维空间使数据变得线性可分,并采用结构风险最小化原则解决小样本数据,预测效果较好。其中,核函数参数对SVR的预测效果具有重要影响。粒子群优化(Particle Swarm Optimization,PSO)在SVR核参数选取中应用广泛,但是大部分改进还略有不足。

针对SVR参数选择的问题,笔者提出一种改进的混沌自适应粒子群优化(Chaotic Adaptive Strategy Particle Swarm Optimization,CASPSO)算法进行SVR参数选取,提高算法预测效果。针对算法存在的早熟收敛,容易陷入局部最小值等问题,用混沌映射方法保证种群粒子遍历整个种群空间。针对种群寻优过程中算法停滞问题,引入自适应策略,根据聚合度进行概率判断,检查产生的随机数是否满足混沌搜索条件。在考虑各种实际影响因素的基础上,将CASPSO算法应用于短期电力负荷预测建模,对SVR的学习参数在线优化,并与最常用的标准PSO方法进行对比。结果表明,CASPSO算法优化了SVR结构,改善了预测效果。

1 粒子群优化(PSO)算法

1.1 标准粒子群优化(PSO)算法

粒子群优化算法是经典的智能优化算法,描述如下[7]:设种群规模为n,搜索维数为m,第i个粒子位置为xi=(xi1,xi2,…,xiD),速度为vi=(vi1,vi2,…,viD),粒子最优位置pbesti=(pbesti1,pbesti2,…,pbestiD),种群粒子最优位置gbest=(gbest1,gbest2,…,gbestD)。粒子速度和粒子位置更新方式如下:

(1)

(2)

ω=ωmax-t×(ωmax-ωmin)/M

(3)

式中,c1和c2为学习因子,通常选取c1=c2=2[8];r1和r2都是[0,1]上Logistic混沌映射的随机数;ω为惯性权重系数,ωmax和ωmin分别为上下限,通常选取为0.8和0.3;t为第t代;M为迭代总次数。本文选用常用的线性递减惯性权重公式,同时用均方误差(Mean Square Error,MSE)评价粒子群适应度:

(4)

1.2 混沌初始化策略

粒子群随机初始化方法虽然在一定程度上能保证初始种群分布均匀,但是它无法让全部种群在解空间中均匀分布,部分群体可能会偏离最优解,影响算法收敛速度,降低种群的多样性。Logistic算法可以利用混沌运动的随机性、遍历性和初值敏感性来提高随机优化算法的效率[9]。本文将Logistic 映射方程(式(5))加入CASPSO算法中,提高种群的多样性和粒子搜索的遍历性,使算法能够更好地寻优。

Zn+1=uzn(1-zn),n=0,1,2,…N

(5)

式中,u为参数,u∈(0,4];zn为第n个变量,zn∈[0,1]。u=4时,系统为混沌状态,混沌空间是[0,1]。

1.3 混沌自适应粒子群优化算法(CASPSO)

由于种群粒子的空间位置能够通过适应度函数值体现,因此种群中全体粒子的适应度变化值可以反映粒子的聚合度和收敛程度[10]。为防止种群过早收敛,引入自适应判断策略,实现混沌搜索。

首先,根据粒子群适应值计算聚合度,计算公式为

(6)

(7)

式中,a取值大小为[2,4]。

最后,根据式(8)进行混沌操作:

(8)

式中,Zij为混沌变量。

CASPSO流程如下。

① 根据式(4)进行粒子群混沌初始化,得到粒子全局最优与个体最优,确定粒子速度和位置并限定粒子的位置和速度范围。

② 计算CASPSO各粒子的适应度MSE。若当前粒子的MSE值优于个体最优位置,则把当前粒子位置赋给自身的最优位置pbest;若当前种群粒子的MSE值优于全局最优,则把当前的粒子位置赋给群体最优值gbest。

③ 根据式(1)~式(3)对粒子速度、位置和惯性权重进行更新。

⑤ 根据混沌策略对粒子进行混沌操作并执行步骤②。

⑥ 判断CASPSO算法是否满足停止条件,若是则执行步骤⑤;否则执行步骤③和步骤④。

2 支持向量回归(SVR)

2.1 SVR预测原理

SVR 是人工智能领域中的一种自适应学习算法,它能通过核函数映射将非线性问题转换为线性可分的回归问题[11],并通过极小化和引入拉格朗日乘子将目标函数转化为下方的对偶极小问题:

(9)

(10)

(11)

2.2 参数优化和评价标准

惩罚系数C和RBF核系数g对SVR的性能有重要影响。其中,惩罚系数C用于权衡损失和分类间隔的权重;核系数g影响函数的径向作用范围,决定训练样本数据的范围和分布特性[12]。预测完成后,为了验证所建模型的准确性和精度,分别采用均方根差(Root Mean Square Error,RMSE)、平均绝对百分误差(Mean Absolute Percentage Error,MAPE)和平均绝对值误差(Mean Absolute Error,MAE)作为评价标准。

(12)

(13)

(14)

3 支持向量机预测模型建立

本文数据来源与文献[7]相同,为阿里巴巴天池大数据竞赛中的电力负荷预测竞赛数据。已知历史数据包括2015年3月—10月和2016年3月—8月共1416家当地企业的日用电总量、历史天气(降雨情况、温度、湿度)、节假日以及当地居民月消费总额。需要预测的内容为2016年9月的日总用电量。

3.1 数据预处理

为消除不同量纲数据对结果的影响,用式(15)对电力负荷数据进行归一化处理:

(15)

式中,xmin和xmax分别为历史最大用电量和最小用电量。最后,要对输出结果进行如下反归一化处理:

x=xmin+(xmax-xmin)x′

(16)

对输入数据进行如下处理:

① 当前日前10 d的历史日用电量D={d1,d2,…,d10}。

② 当地该月份的预测月经济消费额总值F。

③ 预测日的日气温T=(0~1),将当日的气温映射到0~1区间内,从而实现归一化。

④ 预测日的相对湿度S,以百分比表示。

⑤ 日期属性W={0.1,0.2,0.3,0.4,0.5,0.6,0.7},其中的数值对应于周一~周日,当遇到法定节日时标记为0.8。

⑥ 利用文献[7]中的方法处理降雨情况数据。降雨情况集合为{晴,多云,阴,阵雨,雷阵雨,小雨,中雨,大雨,暴雨},相对应的量化数据集合为{0,0.125,0.25,0.375,0.5,0.625,0.75,0.975,1}。

最后,得到改进预测模型SVR的输入数据为{d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,F,T,S,W,F}的矩阵,输出预测值为1维向量R,R是预测日的用电量。

3.2 预测模型构建

利用SVR模型对训练样本数据进行训练拟合,将15个特征输入量作为输入值xi,函数的输出为预测负荷值yi,训练样本集为{(xi,yi)},预测模型流程如图1所示。

图1 SVR预测模型

4 仿真实例

根据文献[7]和文献[13]进行参数设置,如表1所示。

表1 参数设置

在数据输入矩阵中将预测日降雨情况、预测日气温、相对湿度以及节假日日期信息和当月预测的消费总额、历史预测日前10 d的电力负荷等数据,作为影响预测结果的特征因素输入到矩阵中。图2为用训练好的标准PSO和CASPSO支持向量回归机模型的预测结果。

图2 电力负荷预测结果比较

结果显示,基于CASPSO算法建立的SVR模型预测拟合度更好,预测准确度更高且相对稳定。两种模型的评价指标比较如表2所示。通过比较可以看出,CASPSO预测模型的RMSE和MAE比PSO预测模型的指标低约40%和46%,MAPE比PSO预测模型低约42%,充分说明了CASPSO比PSO寻优效果更好。

表2 基于PSO和CASPSO的SVR模型预测结果

5 结束语

本文采用SVR建立预测模型,在对大规模用电数据研究分析的前提下,综合考虑天气(降雨、温度、湿度)、节假日和居民消费等因素的影响,提出了一种基于CASPSO的SVR参数优化方法,该方法避免了PSO算法的过早收敛,提高了种群粒子的多样性和全局搜索能力。仿真结果表明,CASPSO算法能够对SVR参数进行高精确搜索。同时,基于CASPSO算法建立的SVR短期预测模型具有更高的预测精度。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!