首页> 中国专利> 基于人工蜂群优化LSSVM的脉动风速预测方法

基于人工蜂群优化LSSVM的脉动风速预测方法

摘要

本发明提供一种基于人工蜂群优化LSSVM的脉动风速预测方法,其包括以下步骤:首先用ARMA数值模拟法模拟生成垂直空间点的脉动风速时程样本,并将空间点的脉动风速时程样本分为训练集、测试集两部分,分别对其进行归一化处理;建立最小二乘支持向量机脉动风速预测模型,采用人工蜂群算法寻找最优的LSSVM模型参数组合使得模型预测误差最小。并采用均方根误差、相关系数以及收敛次数作为评价指标,并与最小二乘支持向量机和粒子群优化的最小二乘支持向量机(PSO-LSSVM)数据驱动技术的结果进行比较。

著录项

  • 公开/公告号CN105447510A

    专利类型发明专利

  • 公开/公告日2016-03-30

    原文格式PDF

  • 申请/专利权人 上海大学;

    申请/专利号CN201510764766.1

  • 发明设计人 张永康;李春祥;

    申请日2015-11-11

  • 分类号G06K9/62;

  • 代理机构上海上大专利事务所(普通合伙);

  • 代理人陆聪明

  • 地址 200444 上海市宝山区上大路99号

  • 入库时间 2023-12-18 15:12:07

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-10-28

    未缴年费专利权终止 IPC(主分类):G06K 9/62 专利号:ZL2015107647661 申请日:20151111 授权公告日:20190222

    专利权的终止

  • 2019-02-22

    授权

    授权

  • 2016-04-27

    实质审查的生效 IPC(主分类):G06K9/62 申请日:20151111

    实质审查的生效

  • 2016-03-30

    公开

    公开

说明书

技术领域

本发明涉及一种基于数据驱动的脉动风速预测方法,具体的说是一种基于人工蜂 群优化LSSVM(LeastSquaresSupportVectorMachine,最小二乘支持向量机)的脉动风 速预测方法。

背景技术

对支持向量机(SupportVectorMachine,SVM)是基于VC维和结构风险最小化原 理基础上发展而来的基于数据的机器学习算法,具有小样本、非线性、高维度,预测精度高 的特点。SVM在处理函数逼近或者预测问题时,把问题用一个凸优化问题来描述,基于 Mercer定理,通过非线性映射将输入样本点从输入空间非线性地映 射到高维特征空间,然后选择损失函数,在高维特征空间中求解该损失函数的最小化值,在 特征空间中可以应用线性学习机的方法解决样本空间中的高度非线性回归问题。

随着对支持向量机研究的深入,支持向量机存在着训练算法速度慢、算法复杂而 难以实现等问题,尤其是在非线性支持向量机中,随着拉格朗日算子、核函数等因素的引 入,使得其计算过程更加复杂,造成这些的主要原因是二次型优化技术解决对偶问题时可 能存在训练速度慢的问题。因为在寻优过程中,存在着大量的矩阵计算,占用了算法的大部 分时间。

最小二乘支持向量机(LeastSquaresSupportVectorMachine,LSSVM)是 SuyKensJ.A.k提出的一种新型SVM,引入了最小二乘的思想,LSSVM在目标函数中采用平方 和误差损失函数代替传统SVM中的不敏感损失函数,用等式约束代替SVM中的不等式约束, 使标准SVM求解二次规划问题转化为求解一组线性关系式,LSSVM的优化函数只需解线性等 式方程组,计算量小,最重要的是避免了SVM中惩罚因子C的选择问题,从而极大的简化了问 题,提高了学习速率。

LSSVM性能的好坏在很大程度上取决于所选的核函数参数。RBF核函数有着极高的 性能,因此本项发明选择的是RBF核函数,而基于RBF核函数的LSSVM的参数主要涉及到核参 数σ和正则化参数γ,这两个参数选择直接影响到LSSVM的性能。传统的粒子群(Particle SwarmOptimization,PSO)算法、遗传算法(GeneticAlgorithm,GA)以及人工神经网络 (ArtificalNeuralNetwork,ANN)算法等智能提取LSSVM参数组合(γ,σ)的优化算法都存 在容易陷入局部最优、收敛速度慢、耗时等缺点,而人工蜂群算法(ArtificialColony Bee,ABC)是基于蜜蜂群体的觅食行为而提出的一种新的优化算法,具有收敛速度快、精度 高、实用、可靠、等优点。为了提高LSSVM的性能,引入人工蜂群算法,运用基于人工蜂群智能 优化算法对LSSVM的核函数进行参数优化选择,以提高LSSVM模型的性能。

发明内容

本发明的目的在于提供一种基于人工蜂群优化LSSVM的脉动风速预测方法,解决 LSSVM的预测精度不高,收敛速度慢等问题。通过ARMA法数值模拟获得脉动风速时程样本, 作为原始脉动风速样本数据。将样本数据划分为训练集和测试集,利用LSSVM数据驱动技 术,对样本数据进行学习,利用ABC优化算法智能提取LSSVM的最优参数组合(γ,σ),并建立 预测模型,预测出其它时间序列脉动风速。

根据上述发明构思,本发明采用下述技术方案:一种基于人工蜂群优化LSSVM的脉 动风速预测方法,其特征在于,其包括以下步骤:

第一步:通过ARMA法数值模拟出脉动风速时程样本,作为原始脉动风速样本数据, 将某一个空间点的脉动风速时程样本分为训练集、测试集两部分,设置风速时间序列数据 预测的嵌入维数m,分别对训练集、测试集进行归一化处理;

第二步:建立LSSVM回归预测模型,选择RBF函数作为LSSVM的核函数,运用Matlab 软件运行LSSVM模型程序,对训练集进行学习;

第三步:将人工蜂群算法引入LSSVM回归预测模型中,设置LSSVM预测模型核函数 参数σ和正则化参数γ的范围σ∈[σminmax]和γ∈[γminmax]、蜜源个数SN、最大循环次 数MCN、放弃阈值Limit;

第四步:随机产生初始解集xij,以预测风速与目标风速的均方根误差作为人工蜂 群算法的适应度,并计算各个初始解xij的适应度;

第五步:引领蜂在初始解邻域搜索产生新解vij,根据贪心选择原则,即若vij的适 应度大于xij的适应度,则xij=vij,否则保持xij不变;

第六步:计算所有xij的适应度,并计算概率值Pi

第七步:跟随蜂根据计算概率值Pi选择蜜源,然后在所选择的蜜源进行邻域搜索 产生新解vij,计算适应度,再次根据贪心选择原则,若vij的适应度大于xij的适应度,则xij= vij,否则保持xij不变;

第八步:经过Limit次循环后,判断是否有要丢掉的解,若存在,则由侦察蜂产生一 个新解xij代替它;并存储到目前为止找到的最好的解;

第九步:若当前迭代次数大于最大次数MCN,则停止迭代;否则转到第四步,Cycle =Cycle+1;

第十步:输出最优参数组合(γ,σ),并建立LSSVM预测模型,预测出其它时间序列 的风速数据。

优选地,所述第一步中ARMA法的公式如下:

U(t)=Σi=1pAiX(t-iΔt)+Σj=0qBjX(t-iΔt)

式中:U(t)为脉动风速;Ai、Bj分别是M×M阶AR和MA模型的系数矩阵;X(t)为M×1阶 正态分布白噪声序列;P为自回归阶数、q为滑动回归解数;相关函数由功率谱通过维纳—辛 钦公式下式算出:

Ruuij(iΔt)=0Sij(n)cos(2πniΔt)dt

通过对ARMA模型公式的矩阵变换,分别求解自回归系数Ai和滑动回归系数Bi,建立 脉动风速表达式;

归一化处理公式为:

f:xy=x-xminxmax-xmin

式中,xmin是x的最小值,xmax是x的最大值,利用此式把x的范围整到[0,1]。

3、根据权利要求1所述的基于人工蜂群优化LSSVM的脉动风速预测方法,其特征在 于,所述第二步LSSVM回归预测模型选择的核函数为高斯核函数,RBF核函数的表达式为:

K(xi,xj)RBF=exp(-(xi-xj)2γ)

式中,xi、xj为训练样本第i,j个元素;γ为RBF核函数参数。

优选地,所述第四步随机产生初始解集xij及第八步中产生新解的公式如下:

xij=xminj+rand(0,1)(xmaxj-xminj)

其中j∈{1,2,……D}为D维可行解的某个分量。

优选地,所述第五步引领蜂在初始解邻域搜索产生新解vij的公式如下:

其中j∈{1,2,……D},k∈{1,2,……SN},k为随机生成且k≠i,为[-1,1]之间的 随机数。

优选地,所述第六步适应度及概率值的计算公式如下:

fiti=11+fi,fi>01+abs(fi),fi<0

Pi=fitiΣi=1SNfiti

fiti是第i个可行解的适应度,对应食物源的丰富程度;fi对应目标函数值。

与现有的技术相比,本发明具有以下显著的优点:传统的SVM较好的解决了以往学 习方法中存在的小样本、非线性、过学习、高维数、局部极小值等问题,这使它在解决模式识 别和函数估计问题中表现出了极佳的性能。但标准的SVM训练复杂度高,而且要求解一个带 约束的二次规划问题,并且样本数据越大,求解二次规划问题越复杂,训练的时间越长。 LSSVM是在标准SVM的基础上发展而来的,它用二次损失函数取代SVM中的不敏感损失函数, 将不等式约束变为等式约束,避免了求解二次规划问题,提高了训练速度。正则化参数γ和 RBF函数的核宽度σ直接影响LSSVM的学习和泛化能力,因此对其参数选择很重要。传统的对 LSSVM参数提取的方法有网格搜索法,交叉验证法,基于PSO(粒子群算法)的参数选择法,基 于GA(遗传算法)的参数选择方法,但这些算法费时又费力,精度也不能得到保证。人工蜂群 算法(ABC)作为一种基于群体智能的新兴优化算法,其收敛速度快且精度高,将其引入到 LSSVM中,提取最优的(γ,σ)参数组合,以提高LSSVM性能,从而提高预测模型的精度。

附图说明

图1为30米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速对比图;

图2(a)、图2(b)分别为30米处PSO-LSSVM、ABC-LSSVM风速预测的适应度对比图;

图3为30米处ABC-LSSVM预测风速与实际风速相关性对比图;

图4为30米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速功率谱对比图;

图5为50米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速对比图;

图6(a)、图6(b)分别为50米处PSO-LSSVM、ABC-LSSVM风速预测的适应度对比图;

图7为50米处ABC-LSSVM预测风速与实际风速相关性对比图;

图8为50米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速功率谱对比图;

图9为60米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速对比图;

图10(a)、图10(b)分别为60米处PSO-LSSVM、ABC-LSSVM风速预测的适应度对比图;

图11为60米处ABC-LSSVM预测风速与实际风速相关性对比图;

图12为60米处ABC-LSSVM、PSO-LSSVM预测风速与实际风速功率谱对比图;

图13为ABC-LSSVM风速预测流程图。

具体实施方式

以下结合附图对本发明的实施进一步详细说明。

人工蜂群算法(ArtificialBeeColony,ABC)是一种元启发式智能算法,它受启 发于蜜蜂的觅食行为,用来求解数值优化问题。ABC主要由以下三个部分组成:引领蜂 (EmployedBees)、跟随蜂(Onlookers)和侦察蜂(Scouts)。在每次循环中,引领蜂数量=跟 随蜂数量=群体中解的数量SN,侦察蜂的个数为1。

ABC算法在求解优化问题时,食物源的位置表示待优化问题的一个可行解,蜜蜂采 蜜的过程也就是搜寻最优解的过程。算法中,首先初始化生成SN个解,且每一个解xi(i=1, 2,……SN)都是一个D维向量。算法开始时,引领蜂先对初始食物源进行一次领域搜索,比较 搜索前后花蜜质量,如果搜索到的食物源花蜜质量优于以前的,则用新的食物源位置代替 旧的食物源位置,否则保持食物源位置不变。当所有引领蜂完成搜索以后,通过跳摇摆舞在 舞蹈区把食物源花蜜质量传达给跟随蜂。跟随蜂根据引领蜂提供的信息按照一定得概率选 择引领蜂进行跟随,越丰富的食物源被选择的概率越大。跟随蜂选中引领蜂后,也进行一次 邻域搜索,并保留较好的解。Limit或者称为放弃阈值是ABC算法中的一个重要控制参数。假 定一个食物源经过给定的循环次数Limit之后花蜜质量没有提高,表明这个解陷入局部最 优,那么与这个解相对应的引领蜂转变为侦察蜂。假设被放弃的解是xi,那么就由侦察蜂通 过式(1)随机产生一个新的解来代替xi。ABC算法就是通过重复的搜索,最终找到最优解。

初始化时,随机产生可行解的公式如下式(1):

xij=xmini+rand(0,1)(xmaxi-xminj)...(1)

其中j∈{1,2,……D}为D维可行解的某个分量。

蜜蜂记录自己到目前为止的最优位置,并在当前蜜源附近展开邻域搜索,产生一 个新位置代替前一位置的公式为如下式(2):

其中j∈{1,2,……D},k∈{1,2,……SN},k为随机生成且k≠i,为[-1,1]之间的 随机数。

ABC算法中按照如下公式计算适应值:

根据fi是否大于零,如下式(3):

fiti=11+fi,fi>01+abs(fi),fi<0......(3)

ABC算法中跟随蜂选择引领蜂的概率公式为如下式(4):

Pi=fitiΣi=1SNfiti......(4)

fiti是第i个可行解的适应度,对应食物源的丰富程度;fi对应目标函数值。

风速序列数据是一组随时间变化的数据序列,对于给定的风速时间序列数据{X (t),t=1,2,…,m},最小二乘支持向量机在选择输入输出数据前,需对数据序列进行空间 重构,即把时间序列组转化为矩阵形式来寻找数据间的关系。例如,t时刻的风速X(t)可由 (t-1,t-2,…,t-m)时刻的历史风速数据X(t-1),X(t-2),…,X(t-m)进行预测,m为嵌入维 数,预测模型可以表示为:X(t)=f[X(t-1),X(t-2),…,X(t-m)],本专利中嵌入维数m=10。 根据上述风速预测模型可以建立一个多输入单输出的LSSVM风速回归预测模型。

本发明基于人工蜂群优化LSSVM的脉动风速预测方法包括以下步骤:

第一步:通过ARMA(Auto-RegressiveandMovingAverageMode,自回归滑动平 均模型)法数值模拟出脉动风速时程样本,作为原始脉动风速样本数据,将某一个空间点的 脉动风速时程样本分为训练集、测试集两部分,设置风速时间序列数据预测的嵌入维数m, 分别对训练集、测试集进行归一化处理;比如,采用ARMA数值模拟某200米超高层沿高度方 向取每隔10米的20个空间点的10000步的时间步长t=0.5s的脉动风速时程样本,取其中某 一个空间点的1400个数据,前1000个数据为训练集,后400个数据为测试集。本实施例分别 取30米、50米、60米处空间点的风速时程样本曲线进行训练、测试,最大迭代次数200次,嵌 入维数m=10。

上述第一步中,所述第一步中ARMA法的公式如下式(5):

U(t)=Σi=1pAiX(t-iΔt)+Σj=0qBjX(t-iΔt)...(5)

式中:U(t)为脉动风速;Ai、Bj分别是M×M阶AR和MA模型的系数矩阵;X(t)为M×1阶 正态分布白噪声序列;P为自回归阶数、q为滑动回归解数;相关函数由功率谱通过维纳—辛 钦公式下式算出,如下式(6):

Ruuij(iΔt)=0Sij(n)cos(2πniΔt)dt...(6)

通过对ARMA模型公式的矩阵变换,分别求解自回归系数Ai和滑动回归系数Bi,建立 脉动风速表达式;

上述第一步中,进行归一化处理公式为,如下式(7):

f:xy=x-xminxmax-xmin...(7)

其中,xmin是输入的最小值,xmax输入的最大值,x为输入值,上式把x的范围调整到 [0,1]。

第二步:建立LSSVM回归预测模型,选择RBF函数作为LSSVM的核函数,运用Matlab 软件运行LSSVM模型程序,对训练集进行学习;

其中,第二步LSSVM预测模型选择的核函数为高斯核函数(RBF),RBF核函数的表达 式为如下式(8):

K(xi,xj)RBF=exp(-(xi-xj)2γ)...(8)

式中,xi、xj为训练样本第i,j个元素;γ为RBF核函数参数。

第三步:把人工蜂群算法(ABC)引入LSSVM回归预测模型中,设置LSSVM预测模型核 函数参数σ和正则化参数γ的范围σ∈[σminmax]和γ∈[γminmax]、蜜源个数SN、最大循 环次数MCN、放弃阈值Limit;

第四步:根据式(1)随机产生初始解集xij,以预测风速与目标风速的均方根误差 (RMSE)作为ABC算法的适应度,并根据式(3)计算各个解xij的适应度;

第四步随机产生初始解集xij及第八步中产生新解的公式如下式(9):

xij=xminj+rand(0,1)(xmaxj-xminj)...(9)

其中j∈{1,2,……D}为D维可行解的某个分量。

第五步:引领蜂根据式(2)在初始解邻域搜索产生新解vij,根据贪心选择原则,若 vij的适应度大于xij的适应度,则xij=vij,否则保持xij不变;

所述第五步引领蜂在初始解邻域搜索产生新解vij的公式如下式(10):

其中j∈{1,2,……D},k∈{1,2,……SN},k为随机生成且k≠i,为[-1,1]之间的 随机数。

第六步:计算所有xij的适应度,根据式(4)计算概率值Pi

所述第六步适应度及概率值的计算公式如式(3)和式(4)。

第七步:跟随蜂根据Pi选择蜜源,根据式(2)邻域搜索产生新解vij,计算适应度,据 贪心选择原则,若vij的适应度大于xij的适应度,则xij=vij,否则保持xij不变;

第八步:经过Limit次循环后,判断是否有要丢掉的解,若存在,则侦察蜂根据式 (1)产生一个新解xij代替它;存储到目前为止找到的最好的解;

第九步:若当前迭代次数大于最大次数MCN,则停止迭代;否则转到第四步,Cycle =Cycle+1。

第十步:通过输出的最佳参数组合(γ,σ)并建立LSSVM预测模型,对测试集进行预 测,预测出其它时间序列的风速数据,得到预测的脉动风速时程谱;并采用均方根误差 (RMSE)、相关系数(R)以及收敛速度对LSSVM,PSO-LSSVM,ABC-LSSVM进行比较分析,如表1以 及表2:

表1三种方法预测结果对比表

表2ABC-LSSVM、PSO-LSSVM收敛速度对比表

表1显示的结果可以看出,基于人工蜂群(ABC)优化最小二乘支持向量机(LSSVM) 的预测模型预测出的脉动风速值与真实值更接近。与LSSVM,PSO-LSSVM相比,ABC-LSSVM的 均方误差最小且相关系数最大(R>0.9,通常认为相关系数大于0.9,认为具备很强的相关 性)。

表2显示的结果可以看出,在迭代次数设置在200次时,基于人工蜂群(ABC)优化最 小二乘支持向量机(LSSVM)的风速预测模型收敛速度与基于粒子群(PSO)优化最小二乘支 持向量机(LSSVM)的风速预测模型收敛速度相比要高出8-10倍以上,而且基于人工蜂群 (ABC)优化最小二乘支持向量机(LSSVM)的风速预测模型大多都在10次以内收敛,表明人工 蜂群优化算法(ABC)有很强的鲁棒性。

上述第二步中,LSSVM回归预测算法描述如下:

设给定l个训练样本:T={(x1,y1),……(xl,yl)},其中xi∈Rn,yi∈Rn,i=1,2,..l, 通过非线性映射把训练输入数据映射到一个高维特征空间H中,在特 征空间H中构建最优超平面,对样本数据进行拟合,并使预测值与目标值的误差最小,LSSVM 回归拟合问题的表达式为如下式(11):

min[12||ω||2+12CΣi=1lξ2]s.t.[yi-(ω·Φ(xi)+b)=ξi],i=1,2,3,...l...(11)

其中,ω是权向量,ξi是松弛因子,b是偏差值,C是惩罚因子,用于对目标函数进行 控制。

引入Lagrange函数,定义函数形式如下式(12):

L(ω,b,e,α)=12||ω||2+12CΣi=1lei2-Σi=1lαi(ω·ψ(xi)+b+ei-yi)...(12)

其中,αi,i=1,2,3,……l,是拉格朗日乘子。根据KKT条件,分别对L进行ω,b,ξi, αi偏导求解,并使得偏导数等于零,得到如下等式和约束条件,如下式(13):

ω=Σi=1lαiyiΦ(xi)Σi=1lαiyi=0αi=iω·Φ(xi)+b+ξi-yi=0...(13)

最后得到LSSVM回归预测模型,如下式(14)::

f(x)=Σi=1lαiK(x,xi)+b...(14)

本发明引入了人工蜂群优化算法对最小二乘支持向量机的回归预测模型进参数 优化选择,提高了预测精度以及收敛速度。因此可以得到结论:基于人工蜂群优化最小二乘 支持向量机的脉动风速预测(ABC-LSSVM)与基于粒子群优化最小二乘支持向量机的脉动风 速预测方法(PSO-LSSVM)以及LSSVM相比有一定的优势。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号