基于粒子群优化法的支持向量机回归对膛线加工切削力的预测
2022-04-19刘洋关世玺沙业典
刘洋,关世玺,沙业典
中北大学机电工程学院
1 引言
随着智能制造技术的不断发展,近些年对远射程、高命中率火炮的研究已成为行业发展趋势。加工膛线作为火炮试制过程中的重要环节之一,对目标打击精度和管身使用寿命都有着非常重要的影响[1]。其中,切削力预测在膛线加工中具有重要指导意义,其预测效果的准确性在很大程度上取决于预测算法与研究领域的匹配程度,因此,寻找适合的预测算法尤为重要。
常规的切削力预测算法主要有多元线性回归模型、人工神经网络模型、支持向量机模型以及响应曲面法等[2]。王殿龙等[3]、范胜波等[4]、陈远玲等[5]和毕进子等[6]运用BP神经网络很好地预测了切削力。赵庆等[7]和袁人炜等[8]用响应曲面法对切削力进行了预测。周文明等[9]和白冰等[10]运用支持向量机对切削力进行了预测。
多元线性回归模型较为常规,在智能化方面的应用稍弱;响应曲面法的拟合能力虽然强于多元线性回归模型,但在智能化方面的应用依旧处于劣势;虽然神经网络具有强大的学习能力、任意函数逼近能力和自组织和自适应能力,但网络结构的确定较复杂且较难优化,存在过拟合、易陷入局部最优和泛化能力较差等问题[11];支持向量机回归模型在一定程度上能避免局部最优解和泛化能力差等问题,但最优参数的选择是亟待解决的问题,本文将对此进行研究。
2 膛线加工有限元仿真及切削力预测过程
2.1 膛线加工的有限元仿真
在CATIA软件中建立刀具和工件模型后导入ABAQUS有限元仿真软件中,并设置合理的材料参数(本文以材料42CrMo为例),在“step模块”中采用力-热耦合模式(动力,温度-位移,显示),在边界条件中设置切削参数(如进给速度、切削深度等),在网格模块中选取六面体—扫略—中性轴算法网格,而单元类型选取温度-位移耦合,提交后得到的仿真见图1。
通过改变切削参数进行正交试验得出对应的切削力。其中,切削速度设为0.5~10m/min,相邻间隔为0.5m/min;切削深度设为0.05~1mm,相邻间隔为0.5m/min。如表1所示,将所有实验数据归一化处理。
图1 有限元仿真结果
表1 归一化后的数据
2.2 基于切削参数的切削力预测
切削力预测方式较为常规。通常是选择某种合适算法,并将所有输入参数和切削力(输出参数)数据分为2组,第一组为训练组(80%左右的数据),第二组为测试组(20%左右的数据)。将训练组数据输入对应的算法中训练模型;模型训练完毕后,将测试组中的输入参数输入模型并得出预测的切削力;将预测的切削力与测试组中的切削力作比较,计算出预测精度。
输入参数的种类可根据实验者的具体研究内容而定。文献[3]将切削深度、进给量和切削速度作为输入量,文献[4]采用轴向切深、主轴转速、进给量和曲面半径作为输入量,文献[1]是利用各种刀具角度对切削力进行预测。为了简化模型,本文通过切削参数(即切削深度与切削速度)预测切削力。
3 基于粒子群优化的支持向量机回归的基本原理
3.1 粒子群算法
本文采用基于非对称学习因子的改进粒子群算法。选取某个粒子,设该粒子第i步所在位置为x(i),其运动速度为v(i),则有
x(i)=x(i-1)+v(i-1)×t
(1)
式中,每步运动的时间t取1。
该粒子第i步的运动速度v(i)满足以下关系式
v(i)=w×v(i-1)+c1×r1(pbest(i)
-x(i))+c2×r2×(gbest(i)-x(i))
(2)
式中,w为惯性权重(惯性系数);c1为个体学习因子(个体加速学习因子);r1和r2为[0,1]上的随机数;pbest(i)该时刻下这一粒子历史最佳位置;c2为社会学习因子(社会加速因子);gbest(i)为当前时刻距最优解最近的例子的位置。
将上述学习因子c1和c2由静态转为动态,有
(3)
其理论依据在于:学习因子c1和c2会对寻优过程产生影响,倘若c1值设置过大,则会使粒子总体倾向于全局搜索;c2值过大会使粒子提前收敛,这样会导致问题陷入局部最优解。因此,需要粒子在搜索初期尽可能全局搜索,到了后期再进行局部搜索,使c1线性递增,c2线性递减,从而使粒子在全局最优解处收敛。
3.2 支持向量机回归基本原理
图2 构造硬超平面
已知支持向量机回归的原始最优化问题为
(4)
s.t. (ωxi)+b-yi≤ε,i=1,…,m
(5)
yi-(ωxi)-b≤ε,i=1,…,m
(6)
(7)
s.t. (ωxi+b)-yi≤ε+ξi,i=1,…,m
(8)
(9)
(10)
(14)
3.3 粒子群算法优化支持向量机回归
粒子群算法拥有极强的参数寻优能力。将粒子群算法的适应度函数替换为支持向量机回归预测的准确度函数(均方误差),输入变量替换为支持向量机回归函数的待优化参数。主要流程如图3所示,经过多次迭代训练,可得到支持向量机回归函数的最优参数。具体步骤如下:
(1)在MATLAB软件中建立一个子函数文件,其中包括数据归一化函数、支持向量机回归的模型训练函数SVMSTRAIN以及预测函数 SVMPREDICT,并将预测值的均方误差作为返回值。
(2)打开粒子群算法文件,设置合适的迭代次数以及粒子数,并将其中的适应度函数替换为该子函数文件。
(3)将惩罚系数C、EPSILON-SVR的损失函数p、允许的终止判据e设为粒子群算法中每个粒子对应的输入变量。
(4)运行程序即可得出返回值(适应度函数)最小情况下的SVR参数值。
图3 粒子群优化SVR算法流程
4 切削力预测实验
切削力预测模型是前文所述的新型支持向量机模型,即基于粒子群优化的支持向量机回归模型。具体方式为:
①将实验数据进行预处理,即在(0,1)区间内归一化得数据;
②将归一化后的实验数据分为训练组和测试组;
③将训练组和测试组的数据代入预测模型中进行训练;
④得到最优化的支持向量机模型参数;
⑤利用最优参数得出预测值;
经过上述步骤得出均方误差以及支持向量机回归模型的最佳参数(见表2)。将最优参数应用到模型中,得出预测值(见表3)。
表2 最佳参数
分析结果表明,模型的预测效果非常准确。其中,F1的预测值精度提高了87.34%,F2的预测值精度提高了86.23%,F3的预测值精度提高了90.2%。
5 结语
目前,膛线加工领域的智能化趋势已经越发明显,切削力的科学预测则是智能加工中不可缺少的一部分,并对改进加工策略、提高产品质量有较大的指导意义。本文通过切削力预测实验,得出下列结论。
表3 预测值
(1)结合粒子群优化的支持向量机回归模型,能够实现对膛线加工切削力的预测。
(2)该方法既模糊化了经验数据,减少了主观影响,又提高了预测精度。
(3)基于粒子群优化的支持向量机回归模型在膛线加工中具有良好的预测效果,预测准确性相较默认参数下的支持向量机回归算法提高85%以上。