一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于K视界蚁群算法的焊接机器人路径规划方法

2022-11-12 22:51:08 来源:中国专利 TAG:

一种基于k视界蚁群算法的焊接机器人路径规划方法
技术领域
1.本发明涉及机器人路径规划技术领域,具体是一种基于k视界的改进蚁群算法(k vision improve ant colony algorithm,kv-iaco)的焊接机器人路径规划方法。


背景技术:

2.路径规划技术是焊接机器人研究领域的一个重要组成部分,主要目的是在一个存在多个焊接节点的三维环境中,根据一定的准则(如路径最短,安全性最好,用时最短等),寻求一条从焊接起始节点开始并连接所有焊接节点的最优或次优安全无碰路径。
3.路径规划技术的发展在一定程度上标志着焊接机器人智能水平的高低,而路径规划方法的优劣直接影响路径规划效果。
4.目前,国内外许多专家学者都在致力于路径规划算法的研究,常用的优化算法主要有人工势场算法、免疫算法、蚁群优化算法、神经网络、a-star算法等。
5.其中,蚁群算法作为一种基于种群的概率选择算法,由于该算法与其它启发式算法相比,在求解性能上,具有很强的鲁棒性和较好解的搜索能力,且容易与多种启发式算法结合,以改善算法性能,所以蚁群算法在路径规划领域中得到了广泛的应用。但蚁群算法在具备了种种优点的同时,也包含了一些缺点,诸如收敛速度慢,容易陷入局部最优解等。针对这些不足,国内外诸多学者都尝试着对传统的蚁群算法进行改进,虽然大量的仿真结果表明了一些对基本蚁群算法上的改进策略是可行且有效的,但是,其中依旧存在一些缺陷需要弥补,比如在蚁群算法的迭代过程中,蚂蚁选择节点是通过距离启发函数以及信息素浓度两个标准来确定的,其中,距离启发函数使得蚂蚁偏向选择与当前节点较近的节点作为移动目标,而信息素浓度是将当代蚂蚁的路径转化为信息素浓度来为子代蚂蚁提供方向选择,路径越短,信息素浓度越高。虽然这两种参考信息能使得蚂蚁在每次移动时,都能有较大的概率选择较优的节点,但蚂蚁的转移概率公式规定了蚂蚁有机会选择任何一个节点,尽管一些节点显然不可能构成最优解。虽然在不断地迭代后,蚂蚁能通过信息素浓度筛选出这些节点,但这无疑会增加算法的收敛速度,造成额外的时间成本。


技术实现要素:

6.本发明的目的在于提供一种基于k视界蚁群算法的焊接机器人路径规划方法,该方法能够克服传统蚁群算法中蚂蚁可能选择一些明显的无效节点进行构造解,从而增加了蚁群算法的迭代周期的缺陷。
7.在蚁群算法的迭代过程中,蚂蚁选择节点是通过距离启发函数以及信息素浓度两个标准来确定的,其中,距离启发函数使得蚂蚁偏向选择与当前节点较近的节点作为移动目标,而信息素浓度是将当代蚂蚁的路径转化为信息素浓度来为子代蚂蚁提供方向选择,路径越短,信息素浓度越高。虽然这两种参考信息能使得蚂蚁在每次移动时,都能有较大的概率选择较优的节点,但从蚂蚁的转移概率公式(1)可以看出,蚂蚁有几率选择任何一个节点,尽管一些节点显然不可能构成最优解,虽然在不断地迭代后,蚂蚁能通过信息素浓度筛
选出这些节点,但在迭代前期,信息素浓度还无法反映节点优劣时,这无疑会导致蚂蚁产生许多次优解,从而增加算法的收敛速度,造成额外的时间成本。
[0008][0009]
其中,是由迭代次数t时的第k只蚂蚁由节点i转移至节点j的选择概率,τ
ij
(t)是距离启发函数,η
ij
(t)是信息素浓度启发函数,α和β分别是距离启发因子以及信息素浓度启发因子,allowedk为可行节点列表。
[0010]
为了使得蚂蚁在移动时,能有效地避免被那些无法构造出最优解的节点干扰,针对此提出基于k视界策略来改进蚁群算法。首先,为所有的节点初始化一个视界值k,其值为所有节点的总数目,蚂蚁在任一节点进行移动决策时,其选择的节点必须位于所处节点的视界范围内,即在距离当前节点最近的k个节点内,当一代蚂蚁寻路结束时,根据算法目前所得的最优路径,设路径节点列表为p1,p2,p3...pn,根据公式(2)计算出每个节点的理论视界,之后对每个节点的实际视界按照公式(3)进行更新。
[0011][0012][0013]
上式中,为pi节点对应的理论视界,d为一列表,为pj节点与pi节点的欧氏距离,sort()函数将参数列表中的元素从小到大排列,index()方法将返回参数变量在列表中的序号。为第m代中pi节点对应的实际视界,λ为收缩系数,影响实际视界向理论视界靠拢的速度。
[0014]
为验证本发明的可行性,在图1简单模型下进行仿真验证。图1中,节点a为起止点,bcdef为5个焊接节点,现用本发明的kv-iaco算法进行仿真实验,相关算法参数见表1,仿真结果如图2~4所示。
[0015]
表1算法相关参数
[0016][0017]
通过观察图3,可以看出a~f节点的视界范围从初始值6依次渐渐分别收敛于1,1,2,1,2,5,显然,按照本发明对节点视界的定义,满足视界约束条件下的路径解数目小于1*1*2*1*2*5=20,显然,这远远小于整个解空间的大小5*4*3*2*1=120,因此,实验结果表明了本发明的改进思路是可行的。
[0018]
本发明解决其技术问题所采用的技术方案是:
[0019]
一种基于k视界蚁群算法的焊接机器人路径规划方法,包括以下步骤:
[0020]
s1、采用栅格法创建机器人工作环境地图,定义起始点与目标点;
[0021]
s2、初始化节点的实际视界矩阵v_matrix,所有元素为k,k取值为所有节点的总数,最优路径长度lb为无穷大,最优路径节点列表nodeb为空列表,包括距离启发因子α,信息素启发因子β,蚂蚁数量m,最大迭代次数t、挥发系数e、收缩系数λ以及其它算法参数;
[0022]
s3、算法迭代开始:
[0023]
s3.1、将第i(i=1,2...m)只蚂蚁放至起点开始寻路;
[0024]
s3.2、按照当前所处节点的视界范围筛选节点,根据公式(1)计算节点的选择概率,使用轮盘赌法选择下一节点并移动;
[0025][0026]
其中,是由迭代次数t时的第k只蚂蚁由节点i转移至节点j的选择概率,τ
ij
(t)是距离启发函数,η
ij
(t)是信息素浓度启发函数,α和β分别是距离启发因子以及信息素浓度启发因子,allowedk为可行节点列表;
[0027]
s3.3、判断当前节点是否为终点,若是,则执行s3.4,否则执行s3.2;
[0028]
s3.4、记录所有的寻路结果,保存路径节点信息与路径长度信息,若所有蚂蚁都完成了寻路任务,执行s3.5,否则执行s3.1;
[0029]
s3.5、按照传统蚁群算法相关流程更新信息素浓度矩阵;
[0030]
s3.6、判断当代最优路径长度lb是否小于lb,若是,则更新lb与nodeb为当代最优解;
[0031]
s3.7、以nodeb节点列表为依据,使用公式(2)和公式(3)对所有节点的实际视界进行更新;
[0032][0033][0034]
上式中,为pi节点对应的理论视界,d为一列表,为pj节点与pi节点的欧氏距离,sort()函数将参数列表中的元素从小到大排列,index()方法将返回参数变量在列表中的序号。为第m代中pi节点对应的实际视界,λ为收缩系数,影响实际视界向理论视界靠拢的速度;
[0035]
s3.8、若当前迭代次数小于最大迭代次数,则执行s3.1;否则,执行s4;s4、循环t代后结束循环,输出全局最优解。
[0036]
本发明的有益效果是,通过为每个焊接节点绑定一个视界,让蚂蚁能更有效且快速的筛除一部分劣质的可行节点,从而减少蚂蚁需要遍历的解空间范围,提高遍历的质量,使得算法更加充分地利用了所得路径数据进行节点移动选择,克服了传统蚁群算法在迭代前期主要仅依赖距离启发函数时,需要通过长期迭代才能判断出节点的优劣,从而增加了蚁群算法的迭代周期的缺陷。仿真结果表明,采取本发明的kv-iaco算法在解决焊接机器人路径规划问题上的效果进步明显,整体性能优于基本蚁群算法和改进的蚁群算法。
附图说明:
[0037]
图1可行性实验仿真案例模型;
[0038]
图2本发明kv-iaco算法仿真结果;
[0039]
图3各节点的视界变化曲线;
[0040]
图4迭代结束时各节点的视界范围可视化;
[0041]
图5本发明kv-iaco算法流程图;
[0042]
图6传统蚁群算法仿真结果;
[0043]
图7本发明kv-iaco算法仿真结果;
[0044]
图8各节点的视界变化曲线;
[0045]
图9本发明kv-iaco算法仿真结果。
具体实施方式
[0046]
本发明提供的一种基于k视界蚁群算法的焊接机器人路径规划方法,如图5所示,包括以下步骤:
[0047]
s1、采用栅格法创建机器人工作环境地图,定义起始点与目标点;
[0048]
s2、初始化节点的实际视界矩阵v_matrix,所有元素为k,k取值为所有节点的总数,最优路径长度lb为无穷大,最优路径节点列表nodeb为空列表,包括距离启发因子α,信息素启发因子β,蚂蚁数量m,最大迭代次数t、挥发系数e、收缩系数λ以及其它算法参数;
[0049]
s3、算法迭代开始:
[0050]
s3.1、将第i(i=1,2...m)只蚂蚁放至起点开始寻路,;
[0051]
s3.2、按照当前所处节点的视界范围筛选节点,根据式公(1)计算节点的选择概率,使用轮盘赌法选择下一节点并移动;
[0052][0053]
其中,是由迭代次数t时的第k只蚂蚁由节点i转移至节点j的选择概率,τ
ij
(t)是距离启发函数,η
ij
(t)是信息素浓度启发函数,α和β分别是距离启发因子以及信息素浓度启发因子,allowedk为可行节点列表;
[0054]
s3.3、判断当前节点是否为终点,若是,则执行s3.4,否则执行s3.2;
[0055]
s3.4、记录所有的寻路结果,保存路径节点信息与路径长度信息,若所有蚂蚁都完成了寻路任务,执行s3.5,否则执行s3.1;
[0056]
s3.5、按照传统蚁群算法相关流程更新信息素浓度矩阵;
[0057]
s3.6、判断当代最优路径长度lb是否小于lb,若是,则更新lb与nodeb为当代最优解;
[0058]
s3.7、以nodeb节点列表为依据,使用式公(2)和公式(3)对所有节点的实际视界进行更新;
[0059][0060][0061]
上式中,为pi节点对应的理论视界,d为一列表,为pj节点与pi节点的欧氏距离,sort()函数将参数列表中的元素从小到大排列,index()方法将返回参数变量在列表中的序号。为第m代中pi节点对应的实际视界,λ为收缩系数,影响实际视界向理论视界靠拢的速度;
[0062]
s3.8、若当前迭代次数小于最大迭代次数,则执行s3.1;否则,执行s4;
[0063]
s4、循环t代后结束循环,输出全局最优解。
[0064]
本发明的有益效果是,通过为每个焊接节点绑定一个视界,让蚂蚁能更有效且快速的筛除一部分劣质的可行节点,从而减少蚂蚁需要遍历的解空间范围,提高遍历的质量,使得算法更加充分地利用了所得路径数据进行节点移动选择,克服了传统蚁群算法在迭代前期主要仅依赖距离启发函数时,需要通过长期迭代才能判断出节点的优劣,从而增加了蚁群算法的迭代周期的缺陷。
[0065]
本发明的效果可以通过以下仿真实验进一步说明:
[0066]
为验证本方法的正确性和合理性,在ubuntu20.04系统上运用python语言编程,以某焊接企业的实际焊接任务数据为测试集进行仿真,仿真参数见表2,焊点坐标数据见表3,仿真结果如图6、图7、图8和表4所示。
[0067]
表2算法仿真参数
[0068][0069][0070]
表3焊点坐标数据
[0071][0072]
表4两种算法仿真数据对比
[0073][0074]
从仿真结果数据中可以看出,传统蚁群算法虽然也能找到一个次优解4841.3104mm,但这花费了76次迭代,而本发明kv-iaco仅在17次迭代就得到了最优解4657.3972mm,且各节点的视界范围最终依次收敛于1,6,13,1,1,4,6,1,1,3,1,2,1,2,1,2,1。因此,综合来看,本发明的mc-iaco效果更好。
[0075]
为了进一步验证本发明提出的改进算法的有效性,将本发明与另外一种改进的iaco算法进行比较,另一种改进的iaco算法为2021年华东交通大学硕士学位论文《基于虚拟仿真的焊接机器人无碰撞路径及轨迹优化研究》中记载的改进iaco算法,在该文章的第3.1节中,对文中的iaco进行仿真实验的焊点数据集下利用本发明方法进行仿真,并将实验结果与文献数据进行对比,如图9以及表5所示。
[0076]
表5三种算法仿真数据对比
[0077][0078]
通过分析仿真结果数据可知,本发明mc-iaco算法所得最优路径结果为8127.3381mm,具体电焊序列为1,2,11,13,12,10,9,8,3,7,6,4,28,27,26,25,24,23,22,15,14,5,21,20,19,16,18,17,32,31,30,29,优于传统蚁群算法的所得结果9456.1193mm以及文献iaco算法的所得结果8234.0100mm,虽然文献iaco算法的首次获得最优解代数为100代,明显优于传统aco算法,但本发明mc-iaco算法仅花费了12代,因此,本发明改进蚁群算法无论是优化效果还是搜索速度皆优于传统aco算法和文献iaco算法,这说明了本发明提出的kv-iaco算法在焊接机器人的路径规划方面的具备一定的可行性与实用性。
[0079]
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制;任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同替换、等效变化及修饰,均仍属于本发明技术方案保护的范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献