改进粒子群算法与fmincon函数混合寻优的平面度、垂直度误差评定

2019-09-10 07:22许家赫陈岳坪
广西科技大学学报 2019年4期

许家赫 陈岳坪

摘    要:平面度、垂直度误差是检验几何产品互换性的重要参考指标,对使用性能检测及产品品质的评价有着重大影响.最小二乘法虽然使用广泛,却只能适用于对测量精度需求度不高的应用场合.为使平面度、垂直度误差评定值精准度更高,依据新一代产品几何技术规范与验证为框架,采用最小区域法,建立平面度、垂直度误差评定数学模型.运用一种根据粒子早熟收敛程度进行自适应调整权重的PSO算法与fmincon函数混合寻优的方法实现对平面度、垂直度误差的优化与评定.通过测量箱体尺寸数据分析计算,对比文献数据结果进行验证,证明了该评定方法的有效性及评定结果精确性.

关键词:平面度误差;垂直度误差;fmincon函数;自适应调整权重;混合寻优

中图分类号:TG83          DOI:10.16375/j.cnki.cn45-1395/t.2019.04.016

0    引言

随着社会生产对产品使用要求日趋增高,平面度和垂直度作为评价几何产品位置精度的重要影响因素,是产品应用性能的重要参考指标.国外研究起步早,提出了引入垂直度偏转参数,进而校正补偿[1]等方法.国内则多用最小二乘法(Least Square Method,LSM)构建基准直线[2]的方法.最小二乘法由于应用便捷,目前广泛应用,缺点是误差精度不高,结果不稳定.考虑到产品生产和社会应用的实际情况,对平面度、垂直度误差精准而有效计算的需求更为迫切.

利用最小区域法[3],根据新一代产品几何技术规范(Geometrical Product Specification and verification,GPS)體系标准,计算平面度误差和线对面的垂直度误差,把一种以粒子的早熟收敛程度为调整权重依据[4]的自适应性PSO算法与fmincon函数进行混合寻优,并且运用计算基准要素与被测要素之间的最大变化范围为最小的原则,用以对测量数据进行有效评定.

1    构建目标函数模型

1.1   建立基准平面

因加工误差无法消除,导致实际工作表面非理想状态,实际表面不能有效且完整表达,以新一代GPS误差体系标准为依据,应用前需要对实际表面进行检测、拟合、操作、认定[5],并用认证表面代替实际工作面.平面评定过程中运用此方法时,因基准无法直接获取理想要素,所以误差基准要素评定的精准度最为关键,故可使用分离、提取等操作手法[6],用以高效分析和研究误差基准选取的正确与否,将基准理想化,从而达到使用要求.

按照平面度的定义,用两平行平面将被测区域中所有点完全包围,两平面的最小间距即称作平面度误差.若被测平面内所有距离的最大值与最小值的绝对值之差为最小,则根据定义该平面就是要被创建的基准平面,上述计算所得差值的大小便是所求平面度的误差值.

设空间坐标oxyz的基准拟合平面方程为:

[z=ax+by+c]                                                                         (1)

式中,a、b、c为待定系数.

被测轮廓上的点则设为[Pi(xi,  yi,  zi)],[(i=1,  2,  3,  …,  n)],接着需要计算该点到基准平面距离d:

[di=z-axi-byi-ci1+a2+b2]                                                                  (2)

最后得到满足最小区域法的平面的目标函数:

[f(a,  b,  c)=min(dmax-dmin)]                                                            (3)

使目标函数[fa,  b,  c]的函数值寻优为最小,即将计算拟合平面问题转化为优化[a、b、c]值的问题.

1.2   基准平面坐标变换

任取基准平面上某一点[P0(x0,  y0,  z0)]作原点,创建新坐标系[OXYZ],且令[ox//OX],设[XOY]新坐标平面同[xoy]坐标平面的夹角α,坐标系转换如图1所示.

将原坐标系[o,  x,  y,  z]与新坐标系([O],X,Y,Z)按照转换矩阵作如下变换[7]:

[XYZ=-ac1-c2     -bc1-c2   1-c2 b1-c2 -a1-c2 0           a         b cx-x0y-y0z-z0]                                             (4)

其中,[x0、  y0、  z0]为原坐标系原点坐标.实测点[Pj(xj, yj, zj)],[(j=1, 2, 3,…, n)]则通过矩阵转换得到坐标系理论新测点[Pj(Xj,  Yj,  Zj)],[(j=1, 2, 3,…, n)].

1.3   关于轴线相对平面的任意方向上的垂直度误差评定

设向量[S={p,  q,  r}]作拟合直线方向向量.参数[p、q、r]是其分量表现形式,利用最小区域法作拟合依据,计算被测直线的测点集.可知其理想直线就是以被测直线的测点集算术平均中心点为基点的最小区域拟合直线.根据上述已知,运用被测直线算术平均中心点P0(X0,Y0,Z0)为原点,计算出最小区域拟合直线方程:

[X-X0p=Y-Y0q=Z-Z0r]                                                            (5)

任意测点[PjXj,  Yj,  Zj]与拟合直线间距离D:

[Dj=qXj-X0-pYj-Y02+rXj-X0-pZj-Z02+r(Yj-Y0)-q(Zj-Z0)2p2+q2+r2]      (6)

最后计算直线度误差:

[f(p,  q,  r)=Dmax]                                                             (7)

要求得滿足最小区域拟合直线的p、q、r值,需要将式(6)优化计算取得最大值后再代入式(7)寻求最小值.

所求任意方向的倾斜度误差值可以根据定向误差评定理论知,是以拟合直线为轴线的,满足最小条件的圆柱面直径值.通过对理想正确角度α进行设置,例如α=0°或90°时,线对面倾斜度误差则会转化成为平行度误差及垂直度误差,因此垂直度误差为:

[F(p,  q,  r)=max(2Dj)]                                                                      (8)

2   自适应粒子群优化与fmincon函数混合寻优操作步骤

2.1   粒子群算法和fmincon优化函数

粒子群优化算法(Particle Swarm Optimization,PSO),其特点是将解的值初始随机化,利用适应度评价解的品质,迭代寻求最优解.每个粒子均“配置”有适应值和速度矢量,通过跟随当前空间里搜索到的最优值来搜寻全局最优[8].

将随机产生N个粒子当做一个部落,每次迭代粒子会通过跟踪两个极值自我更新,分别是个体极值pbest,和全局极值gbest.搜索到最优值后,粒子依照如下公式更新速度和位置[9]:

[vβd=ωvβd+c1r1(pβd-xβd)+c2r2(pgd-xβd)]                                             (9)

[xβd=xβd+vβd]                                                                     (10)

其中,[vβd]表示粒子[β]在d维时的速度,[pβd]表示粒子[β]在d维时的位置,[ω]为惯性权重. fmincon函数通过MATLAB优化系统工具箱提供,运行时首先检查有无梯度表达提供,从而对目标函数进行不同的算法迭代运算.因此对非线性有约束优化问题可以快速且高效的解决.

2.2   以早熟收敛程度作权重调节依据的自适应粒子群算法[10]

该算法根据种群里早熟收敛情况和个体适应值为参考依据,动态调节权重变化.设定粒子[pi]的适应值为[fi],最优粒子适应度[fm],则平均适应值[favg=1ni=1nfi],计算中将优于平均适应值粒子的适应值求平均记为([favg]),定义[Δ=fm-favg].根据适应值不同可将群体分成3部分,可将惯性权重[ω]作如下调节:

1)若[fi]优于[favg],则

[ω=ω-(ω-ωmin)·fi-favgfm-favg]                                                            (11)

2)若[fi]优于[favg]小于[fm],惯性权重不变.

3)若[fi]小于[favg],则

[ω=1.5-11+k1·exp(-k2·Δ)]                                                              (12)

其中,k为控制参数,k1控制[ω]的上限,k2控制权重的调节能力.若粒子处于疏散状态,[Δ]则较大,[ω]变小,此时算法局部搜索能力加强,使群体趋于收敛;若粒子表现为高度聚集状态,[Δ]则较小,[ω]变大,从而快速有效跳出局部最优解的情况.

该方法能使粒子具有更强适应性,提高了局部搜索能力,通过与fmincon优化函数进行混合寻优,更显著提高了收敛速度与计算精度,增强了粒子多样性,提供了自我调节能力,并且优化了粒子全局搜索能力.

2.3   基本實现步骤[11]

Step1  随机化种群中粒子位置和速度.

Step2  计算各粒子适应值的大小,并对每个粒子进行评价.同时将相关粒子的位置和适应值的信息存储于个体极值pbest中,将最优的个体位置和适应值保存在全局极值gbest中.

Step3  根据式(9)、式(10)更新位置和速度.

Step4  根据式(11)、式(12)更新权重.

Step5  比较当前所有的pbest和gbest,并更新gbest.

Step6   若达到停止条件,停止搜索并输出结果,否则返回Step3继续搜索,直到满足停止准则为止.

Step7   为防止搜索的结果有局部最优解的情况出现,将粒子群优化结果值输入fmincon函数进行处理,进行最小值寻优运算.

Step8   通过output指令输出最终优化值.

3    实例验证

实验采用三坐标测量机作为检测工具,将箱体任意放置于工作台上,进行测量前,先创立基于工件位置的测量坐标系,录入坐标值时是用手动采点,最后通过数据处理系统提取测点坐标.箱体尺寸数据来源文献[11].

平面的优化目标函数为:

[f(a,b,c)=max(z-axi-byi-c)-min(z-axi-byi-c)1+a2+b2]                                   (13)

设平面[z=a0x+b0y+c0]为初始平面,[Δa、Δb、Δc]为对应参数增量,优化目标函数[f]则又可表示为[f(a0+Δa, b0+Δb, c0+Δc)],令粒子编码表示为[T(Δa, Δb, Δc)],问题搜索维数[D=3],可将该优化目标函数转换成[dΔa, Δb, Δc]计算,目标优化函数采用适应度函数:

[f(T)=d(Δa, Δb, Δc)=min(dmax-dmin)]                                               (14)

初始化种群粒子个数[N=50],其中粒子维数D=3,令学习因子c1=c2=2,随机产生初始加速权重,最大迭代次数M不超过算法要求的最大值.输入初始基准平面数值,a=﹣0.000 09,b=﹣0.000 49,由于平面度误差跟基准位置无关,c值只是起偏置作用,c值可以任意选取,这里设c=﹣1.经过混合寻优计算,优化后基准平面参数为:a=﹣0.000 091 335 529,b=﹣0.000 381 215 095,c=﹣1.将上述结果代入可得

f =0.058 950 905 044 mm.

根据文献[5]和文献[11]中几种不同的算法评定所得结果值进行分析比较,结果如表1所示.

根据数据对比得出:对于拟合基准平面,运用混合寻优算法,使所得基准平面计算精度更高更准确,误差值更小,创建的基准平面拟合效果更好,寻优值更加稳定.

图2为运行算法时,平面度误差收敛曲线.观察收敛数值发现,从第3代到第10代误差值均为23.844 406 099 134 mm,短暂陷入了局部极值的情况.当误差计算到22代0.092 960 135 913 mm时,达到稳定状态,直到运行到72代,得到最小误差         0.058 950 846 983 mm,算法结束.图中也明显可以看出,这种混合寻优快速稳定的特点,能够有效摆脱局部最小值困境且没有大范围震荡现象发生,不仅适应性强而且相比文献精度高.

接着对垂直度误差进行计算,垂直度误差值寻优迭代过程的情况如图3所示.通过观察迭代计算值,可以发现当运行到第2代到第9代时误差值均为0.804 020 151 392 mm,陷入了局部最小值情况,当计算到第14代,误差为0.506 726 534 095 mm时基本稳定,直到55代,达到最优值0.499 839 967 830 mm.从图中也能明显看出当寻优迭代到15代时,垂直度误差值基本稳定在0.5  mm左右,等到了20代以后迭代后续过程平稳,没有突变值的发生,直到算法结束.

4    总结

本文建立了满足最小区域法的平面度和垂直度误差评定模型,通过使用粒子群算法与fmincon函数混合寻优的方法,有效地解决了非线性约束优化问题.该方法能精准地计算出基准平面拟合所需各项参数值,同时提高了计算结果的精度,并拟合出了精度更高的基准平面,最后实现了平面度和线对面垂直度误差的评定.

参考文献

[1]     ZHAO G Y,WANG S J,SUI W T.Compensation approach to error of perpendicularity and mismatch error of position loop gains in CNC machine[J].Applied Mechanics and Materials, 2012(121﹣126):3190﹣3194.

[2]     郭谊.直线垂直度误差的一种评定方法[J].计量与测试技术,2008(5):21﹣22.

[3]     黄富贵.平面度误差各种评定方法的比较[J].工具技术,2007(8):107﹣109.

[4]     温正,孙克华.MATLAB智能算法[M].北京:清华大学出版社,2017.

[5]     李向前. 基于新一代GPS的形状公差规范设计方法研究[D].桂林:桂林电子科技大学,2010.

[6]     马利民. 新一代产品几何量技术规范(GPS)理论框架体系及关键技术研究[D].武汉:华中科技大学,2006.

[7]     周东栋,樊军.基于改进粒子群算法的垂直度误差评定[J].现代制造工程,2017(2):25﹣29.

[8]     赵乃刚,邓景顺.粒子群优化算法综述[J].科技创新导报,2015 (26):216﹣217.

[9]     張顶学,关治洪,刘新芝.一种动态改变惯性权重的自适应粒子群算法[J].控制与决策,2008,23(11):1253﹣1257.

[10]   杜振鑫,王兆青.一种改进的动态改变惯性权重的粒子群算法[J].微电子学与计算机,2011,28(3):85﹣88.

[11]   高明,鲍家定,周晴伦.基于粒子群算法的线对面的垂直度误差评定[J].中小企业管理与科技,2012(6):203﹣205.

Evaluation of planarity and verticality errors for mixed optimization of improved particle swarm optimization and fmincon function

XU Jiahe, CHEN Yueping*

(School of Mechanical and Traffic Engineering, Guangxi University of Science and Technology,

Liuzhou 545006,China)

Abstract: Flatness and verticality errors are important reference indicators for testing the interchangeability of geometric products, which have a significant impact on performance testing and product   quality evaluation. Although the least squares method is widely used, it can only be applied to             applications where the measurement accuracy is not required. In order to improve the accuracy of     flatness and verticality error evaluation, a mathematical model for flatness and verticality error        evaluation was established based on the framework of new generation product geometry specification and verification by using the minimum area method. In this paper, a mixed optimization method of PSO algorithm and fmincon function is used to optimize and evaluate the flatness and verticality errors       according to the degree of premature convergence of particles. The validity and accuracy of the        evaluation method are proved by analyzing and calculating the measurement box size data and        comparing the results of literature data.

Key words: flatness error; verticality error; fmincon function; adaptive weight adjustment; hybrid      optimization

(责任编辑:黎   娅)