一种改进的混合灰狼优化支持向量机预测算法及应用 下载: 1061次
1 引言
灰狼优化(GWO)算法[1]是元启发式智能优化算法,模拟了自然界中灰狼种群的社会等级和捕食行为。具有基础设置参数少、便于编程等优点,已成功应用于电力系统、无人机路径规划、自动控制、PI控制器优化、机器学习、车间调度等领域中。
标准的GWO算法探测能力弱、容易陷入局部最优、收敛速度慢、优化精度低,为解决这些问题,国内外学者对GWO算法进行了多次改进[2]。龙文等[3]通过正切三角函数描述的非线性控制方法调整位置更新公式改进GWO算法;徐松金等[4]利用遗传算子对灰狼种群进行多样性变异,避免陷入局部最优的问题,提高了算法的性能;张贾奎等[5]通过Tent混沌映射改进GWO算法,增加了种群个体的多样性;Rodríguez等[6]使用模糊逻辑动态自适应调整灰狼个体的权重,提高了灰狼优化算法的性能;Rodríguez等[7]结合混合差分进化算法和灰狼优化算法,求解了全局优化问题。
上述研究对GWO算法的改进是通过修改控制参数、位置更新方程或结合其他的优化算法引入新的算子等,虽然改善了算法的性能,但仍存在早熟收敛、局部和全局搜索全局能力不平衡、会陷入局部最优的缺陷。而支持向量机(SVM)用于分类预测小样本、高维度、局部极小点和非线性问题时,在核函数参数γ和罚因子C的优化中也存在许多问题,导致预测结果误差偏大。同时由于焦炉区域环境恶劣、行人相对较少、运动类型特殊,推焦车惯性大且刹车距离相对较长。用现有的预测方法对轨道推焦车进行轨迹预测,实际中无法保证正常安全生产。
为改善上述问题,增强算法的性能、提高算法的预测精度,在文献[ 8]提出的标准差分进化优化混合灰狼(DE-GWO)预测算法的基础上进行改进。考虑到差分算法的性能及控制参数之间存在的相关性较大,对变异算子、交叉算子和变异策略进行自适应调整和改进,避免陷入局部最优,提高了算法的自适应收敛能力。结合莱维飞行扩大灰狼优化算法的搜索范围,获得最优的SVM核函数参数γ和惩罚因子C并进行分类预测等操作。使用该算法预测了推焦车运行区域运动物体的轨迹,实验结果表明,该算法在恶劣环境中依然具有良好的实用性能。
2 改进的混合灰狼优化SVM算法
2.1 差分进化算法及自适应改进的GWO算法
差分进化(DE)是在种群演化过程中,根据个体间的差异重新组合,得到竞争力较强的中间种群,后代和父代通过竞争获得下一代种群,更具竞争力[9]。DE算法结构简单、参数少,主要通过变异、交叉和选择三个步骤进行计算,文献[ 8]的DE-GWO算法具体步骤如下。
1) 变异:选取任意两个相异的个体Xr2(t)和Xr3(t)经差值缩放后,与待变异个体Xr1(t)组合,组合后的中间个体Di(t+1)可表示为
式中,t为当前迭代次数,Di(t+1)为第t+1代种群中第i个种群,F为[0,2]内的变异算子,r1,r2和r3为[1,N]内随机不相等且不为i的整数,N为种群大小。
2) 交叉:利用前种群个体Xi(t+1)的部分分量与变异的中间体Di(t+1)的对应分量按照二项交叉进行交换生成交叉种群,针对每个分量产生一个0到1的随机小数与交叉算子进行比较,交叉操作可表示为
式中,XCR为[0,1]内的交叉算子,Xrand为[0,1]内的随机数,与交叉算子比较,D为解空间的维数,j为[1,D]内的随机整数,Dij(t+1)为变异中间体Di(t+1)的第j个分量;Xij(t+1)为当前种群个体Xi(t+1)的第j个分量;。
3) 选择:经变异、交叉操作得到第t+1代种群中第i个交叉个体Ui(t+1)与第i个当前种群个体Xi(t+1)竞争,若父代个体优于新获得的子代,则将父代个体保留给下一代,否则将子代个体保留给下一代,即通过适应值函数f,将种群的个体映射为一个实数。
式中,Ui(t+1)为第t+1代种群中第i个交叉个体,Xi(t+1)为第t+1代种群中第i个当前种群个体。可以发现DE受N,F和交叉算子XCR以及变异策略的影响,实验通过优化F、XCR和变异策略提高种群的平均性能,得到最优的参数值。
2.1.1 自适应改进变异算子
由(1)式可以发现,F的大小对算法的搜索范围和变异目标矢量的计算有很大的影响。若F取值过大,会使算法的搜索效率降低,影响求解全局最优解的精度;若F取值过小,会降低种群的多样性,容易早熟[10]。传统DE算法中,F为常数,不能平衡全局搜索能力和收敛速度。本算法可自适应地改进变异算子F,使算法整体具有更好的全局收敛能力和速度,可表示为
式中,F0为改进前的变异算子,T为最大进化代数。可以看出,改进后的F初期较大,但随进化次数的增加会逐渐减小。
2.1.2 自适应改进交叉算子
从(2)式和(3)式中可以看出,XCR较大时有利于增强算法的局部搜索能力,XCR较小时有利于维护种群多样性。算法运行前期要避免出现局部最优的情况,后期要注意加强局部收敛的能力。本算法使XCR先小后大,可表示为
式中,XCR的变化趋势与F相反,单调递增,取值范围为[0,0.8]。自适应调整XCR的取值范围,可保证算法在运行前期有较大的种群多样性,后期有较快的收敛速度。
2.1.3 改进变异策略
标准差分进化通常使用DE/rand/1变异策略,即产生一个试验个体,差分和交叉建立新的变异试验个体,并决定哪一个个体能够进入下一代。本算法对其进行了调整和改进[11],围绕Xr2(t)进行差值缩放,但结果有局限性,不具有向最优解进行快速收敛的能力,局部搜索能力有待提高。因此添加了随机扰动进行扩容,对差值进行一个范围内的上下浮动,以增加数据量,全局寻优,在一定程度上修正算法运行中不可避免的误差,使结果更加精确、算法收敛速度更快、更趋向最优解。改进的变异策略可表示为
式中,Xrand为[0,1]之间的随机取值,Xrandn为方差为1均值为0正态分布的任意数,通过改进后的差分进化优化GWO算法,提高了算法的收敛和局部搜索的能力。
2.2 灰狼优化算法
GWO算法是一种新的优化算法,源于自然界中灰狼种群的社会等级和捕食行为[1],灰狼群体的等级结构如
式中,Xp(t)为猎物的位置,X(t)为当前迭代ω狼的位置,D=2m1为协同系数向量,m1为[0,1]之间的随机向量。
灰狼种群捕食位置更新公式为
式中,A为协同系数向量,a为距离控制参数,取值为[0,2],m2为[0,1]之间的随机向量。狼群中其他灰狼个体将α、β和δ狼视为搜索的3个最优解,利用(7)式更新ω狼所处的位置。
式中,Xα(t)、Xβ(t)、Xδ(t)分别为α、β、δ狼的位置向量,dα、dβ、dδ分别为当前狼趋向3个最优解的距离,根据α、β、δ狼的位置,了判断猎物和灰狼个体ω的位置关系。
2.3 莱维飞行改进位置更新公式
莱维飞行[13]是一种搜索方法,本算法利用莱维飞行对灰狼种群的更新位置进行改进,扩大了GWO算法的搜索范围,避免了出现局部最优线性,改进后的位置更新可表示为
式中,Xalpha为步长控制量,取0.01,为点对点乘法,XLevy(v)为随机搜索路径,可表示为
式中,v的取值区间为[1,3],实验中取v=1.5,Xstep=
式中,Γ为伽玛函数。本算法在GWO算法更新灰狼种群位置公式的基础上,结合莱维飞行扩大了搜索范围,再代入(7)式~(9)式中,分析猎物与灰狼个体位置之间的关系,提升了算法搜索的灵活性,加强了算法的性能。
3 改进的HGWO-SVM预测算法
3.1 参数选择
考虑到推焦车大车道环境恶劣,影响因素较多,运动对象数量少且类型特殊,选择具有非线性映射能力的径向基函数(RBF)作为SVM[14]预测算法的核函数。均方误差(MSE)是预测值与实际值差的平方期望值,MSE越小,表明预测算法的精确度越高,因此选择为适应度函数。由(4)式可以看出,SVM的核函数参数γ和惩罚因子C对算法预测输出有很大的影响。本算法结合改进的差分进化算法、莱维飞行、GWO算法对γ和C进行优化,以减小恶劣环境对预测算法的影响,获取SVM参数的最优解,可准确预测推焦车车道恶劣环境中运动对象的轨迹,从而控制推焦车实现自动安全运行。
3.2 HGWO-SVM算法
将自适应改进的差分算法融入GWO算法中,可避免算法陷入局部最优。在更新Xα(t)、Xβ(t)和Xδ(t)时,引入莱维飞行,避免了GWO算法早熟收敛,提高了算法的搜索能力,得到最佳适应度函数下的C和γ。对SVM进行优化,建立了基于自适应差分和莱维飞行改进的HGWO-SVM轨迹预测算法。具体步骤如下。
1) 初始化灰狼种群、灰狼个体的位置和目标函数值C、γ。
2) 遍历狼群全部个体,计算出狼群个体适应度的MSE,最优适应度作为α狼群,其次作为β狼群,剩下作为δ和ω狼群。
3) 更新狼群位置,根据(7)式~(11)式对灰狼种群进行全局搜索,更新a、A、D等参数的值。
4) 对每个狼在新位置上的适应度进行计算,如果新个体适应度优于旧个体,则用新个体的位置替换原来的位置,同时更新适应度,反之保留旧个体,保持原有的适应度不变。
5) 依据(1)式~(6)式,选择灰狼父代个体通过(1)式产生变异中间体种群,得到下一代子代种群。计算个体适应度,再经过(3)式比较父代种群与子代种群的适应度,选出较优的个体组成下一代种群,由适应度函数决定下一代狼群种群。结合(12)式~(16)式扩大搜索范围,更新α、β和δ狼的位置。
6) 根据(6)式添加随机扰动策略,计算新产生个体的适应度,若新个体适应度值优于旧个体,则更新该个体。
7) 令t=t+1,转至步骤2)继续运行,达到最大迭代次数后,输出全局最优目标函数值。
8) 输出α狼的位置,即最优参数C、γ。
9) 采用最优参数C、γ进行SVM建模,对测试集进行预测和结果分析。
4 实验结果及分析
4.1 实验数据集
为验证本算法在推焦车车道环境中的可行性和优越性,将本算法应用在宝钢四焦炉大车道内运动对象的轨迹预测中。通过激光点云进行目标跟踪操作[15-18],扫描推焦车运行区域,对运动目标(人和物体)的实时位置进行定位,观察发现运动目标大致可分为行人、自行车、电瓶车、电动三轮车、大中小型四轮汽车五类。用改进的HGWO-SVM算法预测运动目标轨迹的实用性,现场得到的扫描图如
4.2 实验环境和开发工具箱
实验选用RS-LiDAR-16激光雷达,进行轨迹数据采集,采集数据作为物体的实际运动轨迹。实验的硬件为Microsoft Windows 7操作系统,软件平台为Matlab R2014a,工具箱为林智仁开发设计的LIBSVM,操作简便。
图 2. 现场扫描图。(a)行人;(b)自行车;(c)电瓶车;(d)电动三轮车;(e)四轮汽车
Fig. 2. Scanning scene. (a) Pedestrian; (b) bicycle; (c) battery car; (d) electric tricycle; (e) four-wheel vehicle
4.3 样本数据选择和基础参数设置
在推焦车的大车道平面进行实验,推焦车在固定轨道上直行,因此不需要预测运动轨迹坐标的X轴,仅对运动目标每一帧的Y轴位置进行预测。每类运动目标轨迹选取50 frame数据代入改进后的HGWO-SVM算法中对物体运动轨迹进行预测,行人为第1组,自行车为第2组,电瓶车为第3组,电动三轮车为第4组,四轮汽车为第5组。训练集为各组的1~32 frame,测试集为各组的33~50 frame。灰狼种群大小为30,迭代次数为300,自变量维数为2,即对两个参数进行优化,C和γ的寻优范围分别为[0.1,100]和[0.01,1000],缩放比例因子范围为[0.2,0.8],交叉概率XCR的初始值为0.2。
4.4 推焦车车道现场行人轨迹预测实验
为验证改进后的HGWO-SVM算法在预测推焦车恶劣环境中运动对象轨迹方面的有效性和优越性,用改进的HGWO-SVM算法对五组数据进行训练实验,与DEGWO-SVM算法预测的位置进行比较,结果如
从
现场实验得到1~5组的MSE值分别为0.0631732、0.0746209、0.0438458、0.0587132、0.0646481 m,这表明HGWO-SVM算法具有较好的精确度。
从
图 3. 运动轨迹预测图。(a)行人;(b)自行车;(c)电瓶车;(d)电动三轮车;(e)四轮汽车
Fig. 3. Prediction graph of motion trajectory. (a) Pedestrian; (b) bicycle; (c) battery car; (d) electric tricycle; (e) four-wheel vehicle
表 1. 改进后的算法运行时间
Table 1. Run time of the improved algorithmunit: s
|
表 2. 运动目标位置预测的相对误差
Table 2. Relative error of the position prediction of moving targetunit: %
|
5 结论
以DEGWO-SVM算法为参考,自适应地改进算法的变异算子,交叉算子和变异策略,结合莱维飞行优化SVM算法的核函数参数γ和惩罚因子C,训练SVM。在宝钢四焦炉大车道进行现场试验,结果表明,与DEGWO-SVM算法的预测结果相比,改进后的算法建立的预测算法可以准确预测推焦车车道内对象(行人与车辆)的运动轨迹,且运行时间更短、预测值与实际值的相对误差更小,可应用于预测推焦车运行区域内运动对象的轨迹。
[1] Mirjalili S, Mirjalili S M, Lewis A. Greywolf optimizer[J]. Advances in Engineering Software, 2014, 69: 46-61.
[2] Wei Y, Liu DY, et al. An improved grey wolf optimization strategy enhanced SVM and its application in predicting the second major[J]. Mathematical Problems in Engineering, 2017, 2017: 1-12.
[3] 龙文, 伍铁斌. 协调探索和开发能力的改进灰狼优化算法[J]. 控制与决策, 2017, 32(10): 1749-1757.
Long W, Wu T B. Improved grey wolf optimization algorithm coordinating the ability of exploration and exploitation[J]. Control and Decision, 2017, 32(10): 1749-1757.
[4] 徐松金, 龙文. 嵌入遗传算子的改进灰狼优化算法[J]. 兰州理工大学学报, 2016, 42(4): 102-108.
Xu S J, Long W. Improved grey wolf optimization algorithm embedded with genetic operators[J]. Journal of Lanzhou University of Technology, 2016, 42(4): 102-108.
[5] 张贾奎, 崔利杰, 郭庆, 等. 基于Tent混沌序列的灰狼优化算法[J]. 微电子学与计算机, 2018, 35(6): 11-16.
Zhang J K, Cui L J, Guo Q, et al. Grey wolf optimizer based on tent chaotic sequence[J]. Microelectronics & Computer, 2018, 35(6): 11-16.
[6] RodríguezL, CastilloO, SoriaJ. Grey wolf optimizer with dynamic adaptation of parameters using fuzzy logic[C]//2016 IEEE Congress on Evolutionary Computation, July 24-29, 2016. Vancouver, BC, Canada. New York: IEEE, 2016: 3116- 3123.
[7] Rodríguez L, Castillo O, Soria J, et al. A fuzzy hierarchical operator in the grey wolf optimizer algorithm[J]. Applied Soft Computing, 2017, 57: 315-328.
[8] Deng S H, Wang X L, Zhu Y S, et al. Hybrid grey wolf optimization algorithm-based support vector machine for grout ability prediction of fractured rock mass[J]. Journal of Computing in Civil Engineering, 2019, 33(2): 04018065.
[9] 张新明, 涂强, 康强, 等. 灰狼优化与差分进化的混合算法及函数优化[J]. 计算机科学, 2017, 44(9): 93-98, 124.
Zhang X M, Tu Q, Kang Q, et al. Hybrid optimization algorithm based on grey wolf optimization and differential evolution for function optimization[J]. Computer Science, 2017, 44(9): 93-98, 124.
[10] 袁亦川, 杨洲, 罗廷兴, 等. 求解动态优化问题的多种群竞争差分进化算法[J]. 计算机应用, 2018, 38(5): 1254-1260.
Yuan Y C, Yang Z, Luo T X, et al. Multi-population-based competitive differential evolution algorithm for dynamic optimization problem[J]. Journal of Computer Applications, 2018, 38(5): 1254-1260.
[11] 毕晓君, 王佳荟. 基于混合学习策略的教与学优化算法[J]. 浙江大学学报(工学版), 2017, 51(5): 1024-1031.
Bi X J, Wang J H. Teaching-learning-based optimization algorithm with hybrid learning strategy[J]. Journal of Zhejiang University(Engineering Science), 2017, 51(5): 1024-1031.
[12] 龙文, 蔡绍洪, 焦建军, 等. 求解高维优化问题的混合灰狼优化算法[J]. 控制与决策, 2016, 31(11): 1991-1997.
Long W, Cai S H, Jiao J J, et al. Hybrid grey wolf optimization algorithm for high-dimensional optimization[J]. Control and Decision, 2016, 31(11): 1991-1997.
[13] 莫艳红, 聂慧, 刘振丙, 等. 基于莱维飞行的灰狼优化算法[J]. 微电子学与计算机, 2019, 36(4): 78-83.
Mo Y H, Nie H, Liu Z B, et al. Grey wolf optimization algorithm based on levy flight[J]. Microelectronics & Computer, 2019, 36(4): 78-83.
[14] 杨钟瑾. 粒子群和遗传算法优化支持向量机的破产预测[J]. 计算机工程与应用, 2013, 49(18): 265-270.
Yang Z J. Bankruptcy prediction based on support vector machine optimized by particle swarm optimization and genetic algorithm[J]. Computer Engineering and Applications, 2013, 49(18): 265-270.
[15] 钱其姝, 胡以华, 赵楠翔, 等. 基于激光点云全局特征匹配处理的目标跟踪算法[J]. 激光与光电子学进展, 2020, 57(6): 061012.
[16] 陈向宇, 云挺, 薛联凤, 等. 基于激光雷达点云数据的树种分类[J]. 激光与光电子学进展, 2019, 56(12): 122801.
[17] 卢晓艺, 云挺, 薛联凤, 等. 基于树木激光点云的有效特征抽取与识别方法[J]. 中国激光, 2019, 46(5): 0510002.
[18] 童祎, 夏珉, 杨克成, 等. 基于激光雷达强度值的目标反射特征提取[J]. 激光与光电子学进展, 2018, 55(10): 102802.
Article Outline
方晓玉, 李晓斌, 郭震. 一种改进的混合灰狼优化支持向量机预测算法及应用[J]. 激光与光电子学进展, 2020, 57(12): 122801. Xiaoyu Fang, Xiaobin Li, Zhen Guo. Improved Hybrid Grey Wolf Optimization Support Vector Machine Prediction Algorithm and Its Application[J]. Laser & Optoelectronics Progress, 2020, 57(12): 122801.