APP下载

基于遗传算法的焊接机器人路径规划

2021-07-19刘良斌刘德玉

电脑与电信 2021年5期
关键词:焊点适应度交叉

刘良斌 刘德玉

(湖南工业职业技术学院,湖南 长沙 410208)

1 研究背景

机器人近年来的发展十分迅速[1],在工业生产、空间探索、军事等领域中的应用非常广泛[2,3]。焊接机器人,特别是点焊机器人在汽车制造领域有着非常重要的地位,研究工业机器人技术对提高我国自主设计制造能力、提高我国的科技水平有着非常重要的意义[4]。

白车身侧围机器人路径规划是指在白车身侧围焊接工位上,在考虑焊接过程中的工艺、节拍、碰撞等问题的基础上,寻找较为合适的机器人路径规划方法,以达到机器人在焊接过程中,移动的路径最短的效果,使得焊接机器人在节拍、耗能、效率等方面最优[5,6]。这是一个带限制条件的路径规划问题,一直是国内外学者的重点研究方向。

点焊机器人在工作中面临的主要问题是焊点过多和焊接轨迹的规划问题。例如,汽车的有些部件上的焊点可能达到几十个,从如此多的焊点中,规划一条合适的路径,是复杂而又费时的。现阶段大部分人员是通过自身经验、参考技术文档以及类似焊接任务的焊接流程,粗略估计并设计出焊接路径。这种焊接路径的规划方式耗时较长,会大量占用设备的生产时间,规划方案很难保证合理性,故研究工业机器人焊接路径规划有其重要的意义。

本文以白车身制造中常用的点焊机器人工作站作为研究对象,拟采用改进的遗传算法实现对机器人焊接路径的规划,以解决焊接机器人在焊接规划过程中,焊接的路径规划问题。

2 设计分析

2.1 将机器人的轨迹规划问题转换为旅行商问题

机器人焊接的轨迹规划,可以假设需要焊接的点为C=(c1,c2,…cN),其中,ci为第i个需要焊接的点。那么,我们也可以将d(ci,cj)定义为第i个需要焊接的点ci和第j个需要焊接的点cj之间的距离。因机器人对某个点进行焊接的时间是固定的,我们需要解决的问题就变成了:找到一条最佳的路径π=(c1,c2,…cN),使得机器人在焊接过程中经过的总路径最短。机器人走过的路径可以表示为下式:

在以往的焊接过程中,如果焊接点位不多,可以由有经验的工人,对点位进行分配和规划。但在点位较多的焊接任务中,点位的分配和轨迹的规划难度就会成指数增长。我们需要找到一种合适的方式来自动规划路径。

将机器人需要焊接的点C=(c1,c2,…cN)认为是旅行商需要遍历的城市;将焊接机器人从焊接点ci到达cj点所要经过的路径长度d(ci,cj)认为是旅行商从第i个城市到达第j个城市所需要经过的距离,机器人完成所有的焊点所需要经过的距离为s(π)。于是,就将焊接机器人的焊点的焊接顺序规划问题转换为了TSP(旅行商)问题。

2.2 遗传算法解决TSP问题的原理概述

遗传算法是一种以自然现象总结出来的一种算法,该算法将遗传过程中的基因突变、基因交换和基因保留等方式,将信息进行保留和变异。

主要步骤为:

①对起始个体进行编码;

②计算并得出个体的目标函数;

③利用轮盘赌等方法选出N 个个体,作为下一代的变异对象;

④对通过第三步得到的变异对象进行交叉和变异,能够得到新的种群;

⑤比较现有的个体,如果新个体比现有个体更为优秀,则将原有最优个体替换掉。

重复以上过程,经过足够次数后,会收敛于一个近似的最优解,算法结束。

2.3 机器人的焊接路径规划

(1)焊点编码设计

选取一个平面薄板焊接工件,先将其所有的焊点记录在表格中,见表1。

表1 焊接点位信息

在c1,c2,…c30这30 个变量中,分别存储第1 个、第2 个……第30个需要焊接的点位。

(2)目标函数的确定

遗传算法需要设计一个目标函数,通过对比个体的目标函数的大小,将较差个体进行剔除,并保留适应度较优的个体。

显然,目标函数应该反映焊接路径的长度,长度越短,个体就更为优秀,保存下来的概率应该越高。

ci点到ci+1点之间的路径长度可以通过d(ci,ci+1)来表示。焊接完所有的焊点所经过的路径认为是目标函数的值,为:

在选择下一代种群时,应对种群被选择的概率进行计算,通过上式可以认为,目标函数值越大,被选中的概率就越低。故只需要设计一个合适的适应度函数即可。

设当前代的种群共有N个个体,该代的第i个个体用Zi表示。对于第i个个体,即为:

(3)适应度函数的确定

针对本文所需要解决的机器人焊接路径规划问题。可以得出:机器人在焊接过程中,走过的路径越短,则该焊接路径越为优秀。可以将机器人需要焊接完所有的点,走过的路径的倒数表示。

于是得到适应度函数:

可以得到第i个个体被选中的概率为

可以得到:

(4)随机竞争选择

随机生成2 个不相同的0-1 的数,通过轮盘赌的选择方式,将这两个随机数所指向的位置作为被选择的个体。对比通过轮盘赌得出的两个个体的适应度函数,将相对更优的个体作为下一代个体。重复以上工作,选出的个体作为下一代的N个个体。

(5)交叉

将选出的N 个个体的染色体进行交叉。这里选择部分交叉匹配交叉策略。部分匹配交叉能够让种群中出现以往没有出现过的基因,这里将c2位置和c6位置之间的区域进行交换,如下所示:

故,经过交叉后的结果为

其中,c1到c30中包含的数据为机器人的焊点。本文提到的焊点为依次编号得到,故需要对交换后数据进行冲突性检查,对于冲突的数据进行更换。

(6)变异

交叉的过程只是对个体进行了位置的移动,并没有对个体的组合方式进行新的方式的排列,故引入低概率的变异因子对容易形成局部最优的结果加入扰动,以跳出局部最优的现象。

本文采用均匀变异方式实现:生成2 个1-30 的随机数,假设分别为i和j,将Ci中的数与Cj中的数进行交换,将得到的新个体替换原来的个体。

3 实验过程

将进化次数设置为3000 次,交叉点固定为3,将交叉点个数分别取即15即10即6;即3;即1。通过matlab进行验证,可以分别得到适应度进化曲线,如图1。

图1 不同交叉情况下的目标函数变化

可以看到交叉长度为1 的时候可以得到目标函数值最优,最优方式得到的最短路径为776mm,如图2。

4 结果分析

根据图2 可以看到,交叉长度为1 情况下的最短路径基本符合经验设置方法中的轨迹规划规律。可以认为交叉长度越短,进化速度越快。

图2 交叉长度为1情况下最短路径

在实验中也发现,交叉长度较短的情况下,更容易出现陷入局部最优的情况。故在设置交叉长度时,应综合考虑。

5 结语

汽车生产过程中,需要通过机器人对白车身的焊点进行焊接,因焊接数量非常大,如何对焊接顺序进行规划,是亟待解决的问题。本文将机器人的焊接问题转换为旅行商问题,然后通过遗传算法,对焊接机器人的路径进行规划。通过对遗传算法中不同交叉长度情况下算法的进化速度进行了对比,得到交叉长度越短,进化速度会越快的结论。

猜你喜欢

焊点适应度交叉
改进的自适应复制、交叉和突变遗传算法
“六法”巧解分式方程
一种基于改进适应度的多机器人协作策略
连数
连一连
焊盘尺寸对SMT焊点可靠性的影响
基于空调导风板成型工艺的Kriging模型适应度研究
DH36钢摩擦叠焊焊点分布规律研究
基于特征聚集度的FCM-RSVM算法及其在人工焊点缺陷识别中的应用
双线性时频分布交叉项提取及损伤识别应用