基于支持向量机的机床切削比能预测方法*
2019-03-01朱培宇赵国勇梁振春
朱培宇,赵国勇,梁振春,赵 勇,苏 宇
(山东理工大学 机械工程学院,山东 淄博 255049)
0 引言
随着中国节能减排战略的实施,加工生产过程中能耗的分析和预测已成为现代绿色制造领域不可回避的问题。Li等[1]通过数控铣削实验测得机床能量效率在18%以下。谢东等[2]利用MATLAB软件搭建了基于BP神经网络的能耗预测模型,通过获取的切削实验数据进行训练,最后得到目标函数,然后用遗传算法寻找最优方案,为加工过程能耗提供了一个良好的方案。张华等[3]利用支持向量机理论建立了风速预测模型对风速进行短期预测,验证了支持向量机预测模型在风速预测中的可行性。
切削比能作为一种量化工具,是能耗分析的重要组成部分,但其预测方面的研究还比较匮乏,并且一些预测研究需要以大量实验数据作为参考基础来建立模型,费时费力。而支持向量机能很好的解决小样本、非线性、局部极小点等实际问题,并且具有适应性强和泛化能力优秀的特点。本文将支持向量机应用于切削比能的预测研究,既利用了支持向量机的优越性,又填补了切削比能预测研究的空白,对节能减排、实现绿色制造意义重大。
1 铣削加工实验设计
利用某厂生产的XD-40A数控铣床进行铣削加工实验。以背吃刀量、侧吃刀量、进给速度、主轴转速为实验输入,机床加工功率为实验输出。实验工件材料为45号钢,工件尺寸为200×150×30 mm。刀具采用直径为20 mm的直齿圆柱立铣刀,齿数为2,主偏角kr=90°。实验平台如图1所示。
图1 实验平台简图
为了保证铣削实验顺利进行,我们根据铣削实验中各加工参数的取值要求及加工经验,对每组参数取四个水平的数值,如表1所示。
表1 各因素参数表
根据表1,全部实验因素的组合有44=256次,完成全部组合的实验是不现实的。为了简化实验次数,又不影响实验的有效性与准确度,本文使用正交试验法设计实验。根据实验加工参数及取值水平设计正交试验表,并随机选取15组数据用于后期支持向量机预测方法的研究,如表2所示。
表2 使用正交序列表设计的实验及其结果
2 基于支持向量机的切削比能预测
支持向量机(Support Vector Machine, SVM)以统计学习理论为理论基础,主要用于解决分类和回归问题。SVM在解决小样本、非线性及高维模式识别问题中表现极佳。它基本上不涉及概率测度和大多数定律问题。
2.1 支持向量机算法
支持向量机理论上的模型结构相似于三层BP神经网络,相当于“一个隐含层”的三层结构BP网格。通过使用非线性映射将低维输入空间的样本映射到高维属性空间,使其变成线性情况,从而在高维属性空间采用线性算法对样本的非线性进行分析。相比神经网络,SVM在训练过程中其支持向量会随着每组样本数据的变化而变化,进而使得模型会根据支持向量数的变化自动寻找最优模型。
设训练样本集:
D={(xi,yi)|i=1,2,…},xi∈Rn,yi∈R
回归函数由式(1)所示线性方程来表示:
(1)
求解式(2)所示的优化问题:
(2)
约束条件:
(3)
其中,ε为回归允许最大误差,惩罚因子C>0。
进一步将式(2)所示的优化问题转化为对偶形式如下:
(4)
约束条件:
(5)
则支持向量机的输出为:
(6)
(7)
2.2 切削比能预测
(1)处理实验数据获取模型参数。在本次实验中利用功率分析仪测得的实验输出为机床加工的实时功率,经过公式计算使之转变为我们所需要的机床切削比能。每组实验结果总结在表2中。在进行支持向量机建模时,首先要对数据进行归一化处理,该步骤在MATLAB软件中进行,利用MATLAB自带的映射函数mapminmax进行归一化处理。
图2 最佳参数c&g选择结果等高线图
图3最佳参数c&g选择结果3D视图
(3)建立预测模型。LIBSVM工具箱的主要函数有训练函数和预测函数,调用格式如下:
model=libsvmtrain(train_y,train_x,options);
[predict_y,accuracy/mse,dec_calue]=libsvmpredict (test_y,test_x,model);
其中:
train_x为n×m的训练集属性矩阵同时也叫做自变量;
train_y为n×1的训练集标签同时也叫做因变量或者目标变量;
options为参数选项,比如“-c1 -g0.1”;
model为训练得到的模型,是一个结构体;test_x为N×m的测试集属性矩阵(自变量);
test_y为N×1的测试集标签(因变量);
model为libsvmtrain训练得到的模型;
predict_y为预测的测试集标签(目标变量);
accuracy/mse为一个3×1的列向量,第一个数表示分类准确率(分类问题使用),第二个数表示mse(回归问题使用),第三个数表示平方相关系数(回归问题使用);
dec_value为决策值。
根据上述函数在MATLAB中建立基于支持向量机理论的切削比能预测模型,选择径向基RBF核函数作为数控机床切削比能预测模型的核函数。利用上面得到的最佳参数c和g对SVM进行训练,然后再对原始数据进行回归预测。具体程序如下:
cmd=[’-c’,num2str(bestc),’-g’,num2str(bestg),’-s 3 -p 0.01’];
model=libsvmtrain(TS,TSX,cmd);
[predict,mse,devalue]=libsvmpredict(TS,TSX,model);
predict=mapminmax(’reverse’,predict’,TSps);
predict=predict’;
其中:
TS表示输出数据矩阵;
TSX表示实验输入参数矩阵;
-s 3表示选择SVM类型为适用于回归的
epsilon-SVR类型;
-p表示设置epsilon-SVR中损失函数的值。
2.3 实验结果
利用所建立的SVM预测模型,把背吃刀量、侧吃刀量、进给速度、主轴转速设为样本输入,机床切削比能为样本输出。
对表2数据进行预测,运行结果为:均方误差MSE=0.00938781,相关系数R=93.5017%。同时,通过可视化原始数据和预测值的对比,发现:只有几个预测点偏离原始数据点较远,大部分预测点的位置都比较靠近原始数据点,如图4所示。实验结果证明了支持向量机理论在数控机床切削比能预测中的有效性。
图4 原始数据与回归预测数据对比结果
3 结论
针对数控机床能耗特性,提出了一种基于支持向量机理论的数控机床切削比能预测方法。利用MATLAB软件及其结合加载的LIBSVM工具箱建立了支持向量机预测模型,对数控铣床铣削工件时的切削比能进行预测。实验结果证明了该模型预测机床切削比能的有效性。该研究对数控机床节能加工和工艺优化具有重要意义。只是在部分加工参数影响下,针对一种加工材料的切削比能进行了预测,影响数控机床切削比能的因素尚有很多,并且可加工材料多样,数控机床切削比能预测有待全面进行。