【LSSVM数据预测】基于matlab灰狼算法优化LSSVM数据预测【含Matlab源码 433期】
一、灰狼算法优化LSSVM简介
灰狼优化算法是一种新型的群体智能优化算法,它是通过模拟狼群的种群地位、跟踪猎物、包围猎物和攻击猎物而设计出来的.假设搜索空间是D维,那么第k个个体的位置可以表示为xk=(xk1,xk2,…,xkD),其中xky表示第k只个体在第y维上的位置.算法在初始化的过程中按照狼群地位等级从高到低的顺序将狼群个体划分4类,定义为地位第1的狼α、地位第2的狼β、地位第3的狼η和普通狼θ,分别代表最优解、优解、次解和其他解.假定α、β、η能够预知猎物的位置,则算法在迭代初期均需找出目前为止的最优个体位置,而后通过狼群捕猎的种群习性更新普通灰狼的位置,以此迭代结束,最终捕获猎物.灰狼优化算法的主要数学模型及其更新规则如下:
其中:t为当前迭代数;Dp(t)(p=α、β、η)为灰狼与猎物之间的距离;A和C为系数向量;Xp为当前猎物位置;Xl(l=1,2,3)为普通灰狼根据Xp更新的位置;a为控制距离参数,为由2-0的线性递减量;r1和r2为[0 1]随机数.
综上,灰狼优化算法的主要步骤如下:
Step 1.参数初始化.
Step 2.初始化种群个体并计算函数目标值,选择最优个体α、β和η.
Step 3.计算a、A和C的值,按照式(7)计算种群个体与最优个体的距离并根据式(8)-式(9)更新个体位置.
Step 4.更新最优个体位置.
Step 5.判断是否达到要求.如果达到设定值,则运行结束,否则转至Step 3继续迭代.
GWO算法在寻优过程中能自动调整控制距离参数a,且自身的参数具有良好的鲁棒性能,能够较好地平衡算法中种群的全局搜索能力和局部搜索能力[25,25].因此,控制距离参数a的设计,在一定程度上会影响到算法的全局搜索能力与局部搜索能力之间的平衡性.通常情况下,控制距离参数a随着迭代次数的增大,从2-0线性递减.当算法处于寻优初期时,搜索步长较大,全局搜索能力较强,不易陷入局部最优,且随机参数r1在一定范围时,|A|≥1,表明算法进行全局搜索;而当算法处于寻优后期时,搜索步长较小,局部搜索能力较强,易于收敛,且随机参数r1在一定范围时,|A|<1,表明算法进行局部搜索。
二、部分源代码
%% 初始化
clear
close all
clc
- 1
- 2
- 3
- 4
- 5
三、运行结果
四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
[3]周品.MATLAB 神经网络设计与应用[M].清华大学出版社,2013.
[4]陈明.MATLAB神经网络原理与实例精解[M].清华大学出版社,2013.
[5]方清城.MATLAB R2016a神经网络设计与应用28个案例分析[M].清华大学出版社,2018.
[6]戴丽珍,付涛杨,刚杨辉,徐芳萍.一种改进灰狼算法优化LSSVM的交通流量预测[J].小型微型计算机系统. 2020,41(12)
文章来源: qq912100926.blog.csdn.net,作者:海神之光,版权归原作者所有,如需转载,请联系作者。
原文链接:qq912100926.blog.csdn.net/article/details/124366255
- 点赞
- 收藏
- 关注作者
评论(0)