APP下载

基于改进粒子群算法的平面度误差评定研究

2022-07-13夏亚涛

工具技术 2022年5期
关键词:全局平均值粒子

夏亚涛

商丘职业技术学院机电工程学院

1 引言

平面是组成零件的参数指标,其特性影响零件的使用寿命,机械设备的稳定性,平面度是评定零件平面质量的重要指标[1],可通过人工观察千分表、水平仪、平尺等变化范围评定平面度误差,但这些工具在测量过程中受操作者熟练程度以及经验影响,存在效率低等缺点[2]。

三点评定法是取平面内距离相差最远的三点[3]组成基准平面,两个最小包容平面的距离即是平面度误差。最大直线度评定法以被测平面内最大直线度误差值作为平面度误差[4],该方法的测量精度和时效性较差。目前广泛应用的是最小二乘法(LSM),通过构建基准直线实行测量[5],测量误差大、精度低,结果不稳定。粒子群优化算法(PSO)和遗传优化算法(GA)精确性高[6,7],但由于算法后期收敛性差,无法获得稳定的平面度误差结果。浮点数编码改进遗传算法(FPCIG)通过浮点数基因编码,引入模拟退火思想,对各测量点数据进行基因优化和交叉变异[8],在一定的遗传代数内能有效提高平面度误差的计算精度。改进差分进化算法(IDE)在粒子群算法基础上融入差分进化算法的框架[9],调整粒子个体收敛,快速逼近最优值。改进粒子群算法与Fmincon函数(IPSOFF)混合算法对于基准平面来说,计算精度高[10],误差值较小。神经网络(NN)算法通过训练测量数据进行预测[11],由于需要大量测量数据作为支撑,导致无法在现实中广泛应用。分群粒子群算法(GPSO)能够通过设置的子群进行全局和局部搜索[12],同时无需增加寻优粒子的数量和维度,对平面度的评定精确度较高。

为了减小平面度评定的误差,本文采用改进粒子群算法(IPSO)构建链球复合型粒子空间结构,根据链球空间变化动态调整粒子搜索能力,并用实验案例验证了算法的有效性。

2 平面度误差模型

随着国家对智能制造的要求,制造业迫切需要通过算法快速、准确地求解平面度值,最小二乘法和最小包容区域法对平面度评定的误差较大,分别为实际误差的1.14倍和1.1倍。依据国标GB/T11337—2004,利用最小包容区域法获得平面度误差[13,14]。

已知三坐标机测量平面上的点pi(xi,yi,zi),计算测量点与基准平面方程z=Ax+By+C的差值为

Di=zi-Axi-Byi-C

(1)

利用Di的极值max(Di)和min(Di)计算差值,有

(2)

式中,f值仅与参数A,B有关,属于二维空间问题,可通过寻优组合求解A,B的值并获得最优解,记作f(A,B)。把平面度误差转变为搜求解(A,B)组合值,随着计算精度的提高,可接近平面度误差的真实值,这样平面度误差检测计算可转化为离散型优化问题。

利用最小求解法则,非线性优化目标函数fit(A,B)为

(3)

fit(A,B)优化需要满足如下准则:测量平面与包容平面平行且相距最短。根据二维函数特性,fit(A,B)为凸函数,全局一定存在唯一极小值。

3 改进粒子群算法

3.1 粒子群算法

粒子群算法是模拟鸟群寻食行为的优化算法,算法实现简单,易于编程。假设在M维空间存在N个粒子,粒子都会搜索空间中的最佳位置,全部粒子群也会往全局最优位置移动,粒子l在迭代t+1次的第d维空间速度和位置更新公式为

(4)

本文平面度误差模型需要寻优的参数A,B共有2个,因此粒子的搜索空间维数M=2。但粒子群算法在优化后期由于群体多样性消失,只能获得局部最优值,导致算法收敛性差。

3.2 改进过程

本文算法在改进过程中需构建粒子分布空间结构后再进行粒子搜索能力调整,这样可以提高算法速度,同时也提升了寻找全局最优解的精度。

3.2.1 基于链球复合型的粒子空间结构模型

把粒子群划分若干个链球复合型结构,链为粒子信息传输和共享的通道,粒子初始分布空间结构为类似圆球形,同时链球形大小可以根据进化迭代次数进行扩张和收缩,以跳出局部解的限制,避免搜索行为逐渐趋于同一性和收敛到局部极值。

复合型粒子空间结构分内、外部链球,内、外部链球上各分布若干粒子,各个粒子通过链通道互联互通。复合型链球的内部链球上分布的粒子由于空间小,更易收敛,主要进行小范围搜索;复合型链球的外部链球上分布的粒子,主要进行大范围搜索,以快速获得解的范围。复合型链球内、外部链球粒子协同优化,提高了收敛精度及速度。

链球复合型粒子空间结构如图1所示。链球复合型的内、外部链球上分布有若干粒子,内部链球上的粒子通过内部自身链球的链连接,外部链球上的粒子通过外部自身链球的链连接,用实线表示实现连接。通过自身链球的链实现了粒子寻优解的信息传输,有助于粒子快速获得其他粒子的寻优信息。内、外部链球上的粒子通过自身链球以外的若干链连接时,用虚线表示实现连接。

图1 链球复合型粒子空间结构

过多的链连接对粒子交流无促进作用,过少的链连接制约粒子交流,因此链连接的总数不超过内、外部链球上最少粒子总数的1/3,这样内、外部链球上的粒子实现了寻优解的信息共享,避免了内、外链球上的粒子因自身链球搜素局限性导致迭代后期出现数据坍塌现象。

3.2.2 粒子运动更新模型

(1)粒子链球形空间动态调整

为体现粒子寻优空间范围的变化,根据迭代次数动态调整粒子组成的链球形,内链球、外链球空间变化通过两个sigmoid型函数相乘实现

(5)

式中,R为调整前粒子内、外链球形对应的半径;R′为调整后粒子内、外链球形对应的半径,粒子内、外链球半径初始值为自身粒子相隔间距和;t′为迭代次数归一化值,t为迭代次数,tmax为最大迭代次数。

由于内链球上粒子相隔较近,则内链球半径初始值较小,而外链球上粒子相隔较远,则外链球半径初始值较大。R′随t′的变化见图2。

由图2可以看出,粒子组成的链球形空间R′随着迭代次数归一化值t′增大而逐渐扩张,此时内链球、外链球空间范围同时变大,具有双重优势效果,粒子能够在较大空间搜索,增加获取全局最优值的概率,同时加快算法收敛。当粒子迭代若干次数后,链球形半径R′增大后保持不变,同样可以长时间保持大范围空间搜索,有利于搜索的稳定性;到了迭代后期,由于群体跟随最优粒子分布在全局最优解附近,此时需要逐渐收缩搜索空间,内链球、外链球空间范围同时变小,以便获得更精确的全局最优解。因此,调整后的空间对迭代初期全局搜索和迭代后期局部搜索起平衡作用。

图2 R′随t′变化曲线

(2)搜索能力调整

在粒子组成的链球形空间中,当链球形空间变化时,w,c1,c2应随着粒子的链球形空间的变化而改变,开始时刻进行全局搜索时,需要较大w值,较小c1,c2值,以便加强搜索能力,能够在其他粒子组成的链球形空间中搜索;迭代后期,需要减小粒子的w值及增大c1,c2值,以便在原链球形空间区域内进行精细搜索。假设粒子搜索空间的体积V由若干链球形空间V1,V2,…,Vn组成[15,16],空间Vl的半径为RVl,则所有粒子空间半径的均值为μV1,μV2,…,μVn,方差为σV1,σV2,…,σVn,则V正态分布概率密度函数为

(6)

标准正态分布为

(7)

则w,c1,c2简化为

(8)

(3)链球粒子删除

在算法迭代到后期,大量相似的粒子围绕在全局最优解的周围[17],因此一些链球上的粒子对算法的影响已经十分微小,易浪费计算效率。为解决这一问题,需删除一些链球上的粒子。

链球在搜索过程的贡献度设为λ,λ较大时,表示全局最优解的改进性能较大;λ较小时,全局最优解的改进性能较小。种群中出现了大量相似粒子,需要删除链球上这些相似的粒子,减少迭代过程中对粒子的评价次数,提高效率。假设在算法迭代初始阶段λ0=1,迭代周期间隔一次计算λh为

(9)

式中,Fh-1为第h个迭代周期中最优个体的适应度值。

在种群进化过程中,当某个链球上两个相邻的贡献度λh-1与λh同时小于阈值ε时,则随机删除一半该链球内、外部链上的粒子,本文设置ε=0.15。

3.3 寻优终止条件

当粒子搜索到全局最优值附近[18],参数A,B对误差判定的贡献值为(x-x0)uA,(y-y0)uB。当A,B对误差分析的影响最小时,根据最小误差判决A,B的忽略条件为

(10)

式中,uA,uB为实际测量误差;uf为理论计算误差。

可得

(11)

式中,L为测量步长,本文选取0.2mm。

算法流程:①初始化粒子的速度和位置;②计算各链球上的粒子适应值fit(A,B),获得初始解;③根据式(5)对粒子链球形空间动态调整;④根据式(8)对w,c1,c2进行优化;⑤根据式(4)对粒子进行调整;⑥若达到最大进化代数或满足寻优最小搜索范围,进行步骤⑦,否则重复步骤③~⑥;⑦输出算法最优解。

4 实验仿真

初始化种群粒子总数400个,链球共计20个,每个链球最多20个粒子,最少10个粒子,每个内部链球上最少3个粒子,外部链球上最少4个粒子。采用DAISY 564型三坐标测量机,测量范围500mm×600mm×400mm,最大允许误差为2.2μm。

4.1 粒子、链球数量对算法收敛分析

(1)内、外部链球上粒子数

内、外部链球上粒子数影响算法执行,设内、外部链球上粒子数分别为W=3,Q=7;W=4,Q=8;W=6,Q=6;W=10,Q=8;W=12,Q=8;W=10,Q=10,对算法收敛影响的实验仿真结果见图3。

图3 内、外部链球上粒子数对算法收敛影响仿真

由图可以看出,内、外部链球上粒子数越多,越容易在较少的迭代次数下获得最优适应度。在内、外部链球上粒子总数一定情况下,当内部链球上粒子与外部链球上粒子相等时,可以较快地获得最优适应度,这是因为内、外部链球上粒子数量相等量更有利于算法协同和快速寻优,通过内、外部链球上粒子优势互补,从而提高整个粒子群收敛速度。

(2)链球数量

分析链球数量U对算法收敛影响,固定内、外部链球粒子数W=10,Q=10,分别设U=5,U=10,U=15,U=20,U=25,U=30,实验仿真见图4。

图4 链球数量对算法收敛影响仿真

由图可以看出,链球数量越多,越能增加种群的多样性,有助于获得最优解,有利于算法的执行。当链球数超过一定数量后,对算法性能提升不再明显。这是因为链球数量多在算法初始期具有优势,后期由于粒子出现相似性,导致粒子多样性下降,过多的链球数量会使算法出现坍塌现象。

4.2 平面度误差评定实例

测量某400mm×300mm(长×宽)的长方形平面工件。被测工件放置于三坐标测量机的测量平台上,要求工件长边平行于X轴,依据一级平板要求最大公差为0.009mm,在被测工件上确定检测点的x,y坐标,同时在X轴方向取40个点,每个点间隔1mm,提取的数据见表1。

表1 采样点测试数据 (mm)

采用MATLAB7.0软件对比分析平面度测量误差,涉及算法有PSO,GA,FPCIG,IDE,IPSOFF,NN,GPSO,IPSO,计算结果见图5。

图5 不同算法的平面度测量误差对比

由图可以看出,在40次实验中,PSO测量平均值为8.407μm,GA测量平均值为8.051μm,FPCIG测量平均值为7.898μm,IDE测量平均值为7.661μm,IPSOFF测量平均值为7.486μm,NN测量平均值为7.281μm,GPSO测量平均值为6.756μm。

相比其他算法,本文算法IPSO数据波动较小,测量较稳定,测量平均值为6.256μm,误差最小,比PSO,GA,FPCIG,IDE,IPSOFF,NN,GPSO算法测量误差分别减少了25.59%,22.30%,20.79%,18.34%,16.43%,14.08%,7.40%,较其他算法测量精度更高。

各算法完成平面度误差计算所需时间对比见图6。由图可得,在40次实验中,PSO所需时间平均值为5.48s,GA所需时间平均值为5.12s,FPCIG所需时间平均值为4.69s,IDE所需时间平均值为4.52s,IPSOFF所需时间平均值为4.35s,NN所需时间平均值为3.98s,GPSO所需时间平均值为3.51s。

图6 各种算法实验耗时对比

本文算法IPSO完成平面度误差计算所需时间平均值为2.62s,耗时最小,相比PSO,GA,FPCIG,IDE,IPSOFF,NN,GPSO算法,完成平面度误差计算所需时间分别减少了52.19%,48.83%,44.14%,42.04%,39.77%,34.17%,25.36%,处理速度明显优于其他算法。

5 结语

为了提高平面度误差评定的精度,对粒子群算法搜索空间优化设计,利用链球空间扩张、收缩变化动态调整粒子搜索能力。经实例验证结果表明,本文算法平面度测量误差最小,所需耗时最少,因此为平面度测量提供了一种新的参考方法。

猜你喜欢

全局平均值粒子
基于改进空间通道信息的全局烟雾注意网络
平均值的一组新不等式
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
基于膜计算粒子群优化的FastSLAM算法改进
Conduit necrosis following esophagectomy:An up-to-date literature review
落子山东,意在全局
记忆型非经典扩散方程在中的全局吸引子
高超声速飞行器全局有限时间姿态控制方法
问:超对称是什么?
变力做功时运用F=F1+F2/2的条件