APP下载

切线法加工非球面的轨迹控制方法设计

2021-08-06贺海霞尚春民李新

新型工业化 2021年4期
关键词:非球面遗传算法种群

贺海霞,尚春民,李新

(长春理工大学,吉林 长春 130022)

0 引言

目前,计算机技术与现代机床数控系统的结合使加工制造技术达到一个全新的高度[1]。现如今数控加工技术正在向高的质量、高的效率和高的智能方向发展。在数控机床控制系统中,数控插补算法精度将在机床加工过程中占据主导作用,决定了机床加工的精度和效率,这是因为数控插补算法在一定程度上可以弥补工件精度的缺陷[2]。针对非圆曲线轨迹控制方法有:单圆弧插补、双圆弧插补、等间隔插补、自适应步长插补以及混合插补等。但是大多数插补方法均是采用直线段或圆弧线段等去逼近零件轨迹曲线,类似这种利用直线或圆弧逼近得到的曲线并不是光滑连续的。

由于上述传统插补方法对非圆曲线插补时存在一定的局限性。在对子午截面曲线插补时,上一个插补周期的信息,能够预测下一个插补周期的信息,能构成非线性函数的映射关系,为此在切线法理论基础上引入神经网络,在非球面工件加工中,为了改善神经网络的函数收敛速度较慢和容易出现局部极优的问题,对其连接阈值和权值使用遗传算法优化,提高了神经网络的插补性能[3]。

1 神经网络轨迹控制插补模型的建立

1.1 切线法轨迹成形原理

如图1所示,切线法加工光学工件轨迹成形原理,该加工方法是先将值分成份,得到函数值,然后将得到值代入非球面曲线方程中得到相对应的值,这样就得到非球面成形轨迹曲线上个节点。在非曲面轨迹曲线上对给定的任意一点,可用这一点的切向法线长度,法线与对称轴的交点到曲线顶点的距离和点绕X轴的转角来表示成形轨迹曲线的特性。这种控制方法的核心是使磨轮在加工过程中始终与非球面理想面形轮廓轨迹相切,同时加工系统控制磨轮在工件表面移动过程中,需要协调移动平台沿X轴和Y轴的位移量配合磨轮轴的旋转平台移动的角位移量来实现切线法加工轨迹控制[4]。因此为了使磨轮能准确沿非圆曲线运行,实现轨迹曲线的光滑连续性,在切线法理论基础上引入遗传-神经网络数控轨迹控制方法。

图1 切线法加工非球面原理

1.2 基于神经网络的预测模型

神经网络非线性插补模型中每一插补周期插补坐标是前一插补信息的非线性映射函数。建立网络模型时引入多个插补信息,可以提高插补的精度,同时网络的初始权值选择是否合适将决定BP网络的收敛速度及精度。因此,在进行零件加工时,执行机构的进给速率是给定的,但进给速度的方向不断变化,使得在各轴上的分速度不断变化。为了完成插补,要计算插补点位置坐标、各轴速度及初始权值的确定。

(1)输入层、隐层和输出层选取。为了提高插补精度引入多个控制信息,经过综合考虑切线法成形原理X、Y轴速度单调性,神经网络结构模型输入层节点数设置为4个,分别为插补点位置坐标xi-1、yi-1,X、Y轴速度v(xi-1)、v(yi-1),输出层节点有4个,分别为下一个插补点位置坐标xi、yi,切线角θi、法距ρi。依据Kolmogrodv定理,隐层节点数是2m+1,其中m=4为输入层的节点数,所以隐层节点数是9。

(2)初始权值选取。由于BP网络自身选取缺陷,不能快速定位到全局出现的最优解区域。所以运用遗传算法自身全局性优点定位最优解区域范围,使得神经网络在收敛速度和精度上显著提高。

(3)激活函数选择。因为BP神经网络是运用在非球面运动轨迹非线性函数逼近,所以为了保证隐层输入值在[-1,1]中,在输入层和隐层两者中用Sigmoid激活函数;在隐层和输出层中用purelin激活函数,取值范围为任意值。图2是建立的BP神经网络网络结构模型。

图2 BP神经网络网络结构模型

本文为了提高收敛速度和插补精度,应用Matlab软件编程在线训练神经网络数据样本,下面对网络参数进行设定。

(1)学习速率的选择:选择恰当的学习速率,能够保证神经网络的稳定性和收敛性。选择较大的学习速率,网络稳定性差。反之,较小的学习效率,将会使其收敛速度减小。因此,一般取值范围在[0.01,0.7]中选用学习速率,综合考虑整个计算过程,本文的学习速率选为0.4。

(2)期望误差值的确定:期望误差值是在Matlab编程过中,依据具体非球面零件的技术要求而确定。经过比较几个不同的期望误差值训练结果,在考虑机床所得达到的加工精度要求,本文最终确定最佳的网络期望误差值为。

(3)网络训练最大步数的确定:若训练误差不能符合期望误差精度值或已达到训练最大步数时,最大训练步数将终止网络在线样本训练。由于本文已经在BP网络训练之前,已经提前优化了网络连接权值,所以在线训练次数控制在400次范围之内都能使得网络收敛。为了提高本文的非球面轨迹插补精度,所以选择在线网络训练次数为400次。

1.3 基于遗传算法优化的神经网络模型

遗传算法是一种并行随机搜索,在选择的训练样本数据中寻找出最优解,并且是模拟基因遗传学和生物进化论的方法[5]。

遗传算法的目的是优化BP神经网络连接层之间的权阈值,所得最优的权阈值将直接赋值于BP神经网络中,然后在对其进行预测,能够有效补偿BP神经网络局部极值的自身缺陷[6],预测精度得以显著提升,在一定程度上缩短训练时间,从而实现了优化神经网络模型的目的。

遗传算法优化的主要设计步骤如下。

(1)初始参数设定。种群规模为20100,交叉概率一般取值范围为0.250.9,变异概率一般取值范围为0.0010.2,算法终止代数为3001000。

(2)适应度函数。因为遗传-神经网络最后目标是使目标函数值最小,所以建立与神经网络目标函数相对应的适应度函数即:

(3)选择运算。目前,在遗传学中,比较常见遗传选择算子主要有二种[7]。一是适应度比例方法,它是运用随机采样的方式,并且是有放回的,虽有自身的缺点容易产生误差,但也有其自身优势简单方便,所以被广泛运用。二是最优保存方法,虽然可以找出群体中的最优个体,但在这种片面的,因为其只寻找最优个体的同时破坏掉整个种群的多样性,将一些不是最优的同时对种群有用的个体抛弃掉,这样操作会导致最终解陷入局部收敛中[8-10]。基于二种选择算子原理,本文采用另一种新颖思想算子,可以在选择出最优解得同时不会陷入局部极值。具体分析步骤如下:

第一,首先计算出每个个体适应度值的初始种群;

第二,接下来就是按照上一步计算出的适应度值的大小由小到大对个体进行排序操作;

第三,将上一步计算排序好的个体再进行均分成四段;

第四,因为上一步分成的四段质量由前到后是依次变好的。所以按照优多劣少的原则由前到后每段按照0.4、0.6、0.8和1的比例进行选择,这样就可以在保存最优个体的同时还兼顾了种群的多样性问题;

第五,将上一步选择出的四段种群再重新组合成个新的种群;

第六,因为新种群的选择方法不是按照百分之百的比例进行筛选的,自然个体数量会有所较少,所以可以从末段中选择个体数量等于原种群损失的个数;

第七,将末段中选择出的个体补足到第五步中新组合的种群中得出最终的新种群。以便于对上述思想具有有效的理解下面以个体数为20的种群为例对其思想进行图形表示。

第一,初始种群数20

8 5 6 12 3 9 15 2 4 10 20 7 14 21 11 13 25 22 17 19 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

第二,对种群个体适应度进行从小到大排序

2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 19 20 21 22 25 8 5 9 2 3 12 1 6 10 15 4 16 13 7 19 20 11 14 18 17

第三,对排序好的个体进行分段

2 3 4 5 6 8 5 9 2 3

7 8 9 10 11 12 1 6 10 15

12 13 14 15 17 4 16 13 7 19

19 20 21 22 25 20 11 14 18 17

第四,每段分别按比例随机选择得到个体数量

6 4 11 9 7 3 9 15 6 12

17 15 13 12 19 7 16 4

19 20 21 22 25 20 11 14 18 17

第五,选择出的个体

6 4 11 9 7 17 15 13 12 19 20 21 22 25 3 9 15 6 12 19 7 16 4 20 11 14 18 17

第六,确定由于不完全选择而丢掉的从末端选择个体

17 19 20 21 22 25 19 20 11 14 18 17

第七,组合得到新的种群

6 4 11 9 7 17 15 13 12 19 20 21 22 25 17 19 20 21 22 25 3 9 15 6 12 19 7 16 4 20 11 14 18 17 19 20 11 14 18 17

经过这种选择算子,可以提高算子的选择最优个体能力,收敛速度由于计算量的减少而得到提高,收敛性也得到提高。

(4)交叉运算。在生物学原理的基础上,交叉运算是在模仿生物染色体基因重组过程。在生物学中,交叉是指不同的种群个体进行交配,子代可以拥有双方有利于子代生存的遗传物质。具体运算是不同的可行解通过交换部分编码得到下一代可行解编码的过程,并且同时可以保留上一代的优秀可行解。

(5)变异运算。变异(Mutation):生活在大自然中的生物,他们会随着生活环境的改变而发生变化。在遗传算法模仿生物特性中,他属于最基本遗传进化操作的其中之一,专业术语称其为变异运算操作。在遗传算法中,变异是指下一代可行解编码发生突变,产生不同与上一代的可行解编码的过程,从而使得遗传算法自身赋有自动并行全局随机搜索及其不断更新最优解列表的能力。图3是GA-BP算法的具体流程图。

图3 GA-BP算法的具体流程图

2 仿真结果及分析

用上述的遗传-神经网络对函数进行拟合操作,然后与BP神经网络模型函数拟合插补结果进行比较,检验其算法训练过程、插补曲线与原曲线拟合以及插补误差曲线情况。以一种二次非圆曲线进行网络训练,从[0,4]作为数据样本区间。然后选择几个有代表性的样本点组加入网络,在样本集中选择具有样本所有特征的点进行训练。遗传算法参数:变异概率,交叉概率,种群个体20。综合上述,BP网络模型结构的输入层为4,隐层为9,学习率为0.4,最大训练终止次数为400次,训练精度。机床进给速度为。运用Matlab软件对学习网络进行优化和样本训练并对待插补曲线检验。表1为部分训练数据。

表1 第一象限部分训练数据样本

图4 BP算法训练过程

图5 遗传-神经网络算法训练过程

表2 训练结果比较

仿真结果表明,采用未提前优化样本的BP神经网络算法,经过800步迭代训练最后达到的误差结果是,网络运行时间为75s,该算法网络训练的误差曲线下降趋势缓慢,收敛速度慢,训练时间长。因此相反,遗传-神经网络算法经过300步的迭代训练最后达到的误差结果是,达到了允许精度,网络运行时间为43s,该算法网络训练收敛速度快,缩短了网络训练时间,减少了迭代次数,降低了训练误差。有效验证了该算法在切线法加工非球面轨迹控制插补的准确性和优越性。

由图6可以知道,遗传-神经网络算法可以有效的控制非球面曲线的轨迹,实现对非圆曲线的插补。由图7可知,该算法经过网络训练后所得到的数据与实际曲线数据之间存在一定的偏差,从曲线误差值可以看出,最大训练误差小于0.4,达到切线法加工非球面零件误差补偿加工技术要求。

图6 遗传-神经网络插补数据与原曲线

图7 误差插补曲线图

3 结语

首先初步确定神经网络的插补模型,再利用遗传算法对神经网络连接权重优化,从而使得网络收敛速度加快,最后完成遗传-神经网络非球面加工轨迹控制插补模型。通过实例仿真可以看出,运用BP神经网络算法的训练误差下降趋势比遗传-神经网络算法缓慢或出现过度吻合,并且误差下降过程中存在多个局部极值点。而遗传-神经网络算法训练误差曲线坡度大下降趋势明显,全局搜索能力强,未见出现多个局部极值点,缩短插补周期,收敛速度加快,训练误差更低,有效验证了该算法在切线法加工非球面轨迹控制插补的准确性和优越性。

猜你喜欢

非球面遗传算法种群
山西省发现刺五加种群分布
中华蜂种群急剧萎缩的生态人类学探讨
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
航天相机非球面光学元件的离子束抛光工艺研究
基于改进的遗传算法的模糊聚类算法
非球面塑料透镜注射成型与注塑压缩成型工艺的对比分析
微小非球面纳米抛光工艺研究
岗更湖鲤鱼的种群特征