碧波液压网 欢迎你,游客。 登录 注册

再论基于遗传算法的圆度误差评价

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  1 问题的提出

  圆度误差的评价是一个多极值的非线性最优化问题,测量残差为圆心坐标及圆半径的非线性函数,因此不易直接求解[1~3]。对圆度误差测量的数据处理方法的选定,直接影响圆度误差的计算精度。采用传统优化迭代算法如单纯形法、Gauss-New-ton法、Levenberg-Marquart法等,由于这些算法均为局域算法,算法的成功依赖于初始点的选择。遗传算法是一种基于生物自然选择与遗传机理的随机搜索算法,与传统的搜索算法不同,它是一种全局收敛算法,可以很好地应用于圆度误差的评价[4]。但是由于遗传算法搜索策略采用的是种群进化的随机搜索机制,故而使得解的最优性是随着进化代数的增加而逐步得到保证的[5,6]。而进化代数一般是根据经验和被求解问题的特点确定的,具有一定的随意性。在实际应用中,往往出现这样的情况,即遗传算法进化到规定的代数所得到的解,尽管已接近最优解,但不是最优解,我们在运用遗传算法评价圆度误差时,即碰到上述情况。一种解决办法就是取尽可能大的终止进化代数,但其缺点是大大的增加了计算机的计算时间。

  本文利用遗传算法与传统优化算法结合来进行圆度误差评价,即先采用遗传算法,取较少的终止代数,得到一个近似最优解,以该近似最优解作为初始点,采用传统优化算法再一次对圆度误差进行评价,得到真正的最优解,从而解决了遗传算法收敛终止条件的问题。本文的结果可以看作是对文献[4]的一个补充。

  2 遗传算法与传统优化算法的比较

  粗略地讲,遗传算法是一种全局算法,而大多数传统优化算法均为局域收敛的算法。但是遗传算法和传统优化算法各有其优缺点,通过比较,可以将两者结合起来,扬长避短,更好地解决实际问题。遗传算法的处理对象不是参数本身,而是对参数进行了编码的个体。此编码操作,使得遗传算法可直接对结构对象进行操作。所谓的结构对象泛指集合、序列、矩阵、树、图、链和表等各种一维或二维甚至三维结构形式的对象。而传统的优化算法必须针对一定的数学模型,包括设计变量、约束条件和目标函数等。相比较而言,遗传算法可应用于更广泛的对象。遗传算法是用点群进行寻优,具有隐含并行算法的特点,即同时对搜索空间中的多个解进行评估。更形象地说,遗传算法是并行地爬多个峰。这一特点使遗传算法具有较好的全局搜索性能,减少了陷入局部最优解的风险。但是这一特点使得遗传算法在实现时将占用更多的计算机内存。而许多传统搜索方法都是单点搜索算法,即通过一些变动规则,问题的解从搜索空间中的当前解(点)移到另一解(点)。这种点对点的搜索方法,对于多峰分布的搜索空间常常会陷入局部的某个单峰的最优解。在标准的遗传算法中,基本上不用搜索空间的知识或其它辅助信息,而仅用适应度函数值来评估个体,并在此基础上进行复制、交叉,变异操作。适应度函数一般由目标函数来构造,因此,遗传算法只利用了目标函数值的信息,要得到最优解必须占用更多的计算时间。而相当多的传统优化算法不仅利用目标函数值的信息,还利用目标函数梯度甚至二阶导数(海塞矩阵)的信息,因此,具有更快的收敛速度。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论