System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种面向多机器人协同遍历的任务节点划分方法技术_技高网

一种面向多机器人协同遍历的任务节点划分方法技术

技术编号:40277985 阅读:11 留言:0更新日期:2024-02-02 23:05
本发明专利技术公开一种面向多机器人协同遍历的任务节点划分方法,包括以下步骤:S1、算法参数初始化,如聚类数量K、任务节点的数量M、任务节点坐标数据等;S2、根据式(3)计算各个任务节点的r'跟θ';S3、将所有任务节点由空间域映射到角度域;S4、根据式(6)计算节点的权重系数;S5、根据式(5)计算K‑means算法的聚类中心;S6、调用基本TSP算法如蚁群算法对不同类别的任务节点进行路径规划;S7、返回算法运行结果,程序结束。本发明专利技术的有益效果是,通过将待分配的任务节点映射到角度域,并通过引入权重系数来微调分类结果的规模平衡性,从而在保证了机器人负载均衡性的基础上降低任务的整体用时。

【技术实现步骤摘要】

本专利技术涉及机器人路径规划,具体是一种面向多机器人协同遍历的任务节点划分方法


技术介绍

1、多机器人路径规划技术简单来说就是为多个移动机器人寻找到一种满足需求路径的一项技术。随着路径规划技术的研究不断深入,应用情景的复杂性逐渐提高,单一机器人渐渐无法满足实际任务的需求,因此,针对多机器人的路径规划进行研究是具有十分价值的价值。而现有的多机器人路径规划方法研究主要有两条研究思路,其一是将多个机器人作为一个整体进行规划研究,其二是将整个机器人集群的规划任务划分为若干个独立的规划任务,通过分治思想将多机器人路径规划任务转化为单机器人任务。在前面两个方法中,第二个方法因为是基于单机器人规划技术,因此对于现有的研究成果具备良好的迁移效果,从而降低研究难度。目前众多国内外学者专家们在该方面取得了许多突破,也提出了很多算法以及对算法进行改进来解决路径规划技术在应用中存在的问题。但其中还存在许多问题还需要研究,如对于任务节点的划分问题,目前主流是通过聚类算法来实现分类,但一般聚类算法缺乏对于不同类别之间任务负载的均衡性的考虑,所以如何在划分节点时考虑任务负载平衡是个值得研究的方向。

2、目前,国内外许多专家学者在针对多机器人路径规划问题的任务节点划分的研究过程中,通常是使用聚类算法来进行分类,常用的聚类算法主要有k-means算法、支持向量机和贪婪算法等。

3、k-means算法是一种常用的聚类算法,用于将样本分成k个不同的类别。k-means算法的目标是最小化每个样本与所属类别中心点之间的距离的总和。算法的基本步骤可概括为:初始时选择k个随机位置的类别中心点,然后将每个样本点分配给与其最近的类别中心点,对于每个类别,计算其样本的位置平均值,并将该平均值作为新的类别中心点的位置。重复前面的步骤,直到达到收敛条件(如类别中心点不再发生变化)或达到预定的迭代次数。相比较其他同类算法,该算法因为简单且高效的优点而被广泛应用于各种分类问题中。但同时,k-means算法在用于解决多机器人的任务分类时也存在一些缺点需要去改进,首先,k-means算法对于任务节点的分类是基于任务节点与类别中心点额欧式距离来判定的,这点从逻辑上无法保证执行任务的机器人的路径较短。其次,算法在整个分类过程中,并不会干扰类别之间任务数量差别,可能无法保证机器人集群负载的均衡性。


技术实现思路

1、本专利技术的目的在于提供一种面向多机器人协同遍历的任务节点划分方法,该方法能够有效克服传统k-means算法在解决多机器人任务节点的划分问题时存在的机器人集群负载不均衡,任务用时整体较大的缺点,从而提高路径规划任务的效率。

2、本专利技术的主要思路是:

3、首先,将所有任务节点放置于角度域来考虑,具体的行为是以agv的初始位置为原点,将所有任务节点映射到r-θ坐标系中,再将r-θ坐标系中的任务节点降维至r轴上,然后对r轴上的任务节点使用k-means算法进行初步的聚类。其次,为保证不同的类群的规模大致相同,本专利技术使用一种自适应方法进一步的调整聚类结果,具体的做法是根据任务节点与机器人起点的相对欧氏距离计算一种权重系数,迫使规模较小的类别中心向规模较大的类别中心进行一定的偏移。

4、多机器人的路径规划问题可被描述为,在空间中存在着n个需要机器人遍历的任务节点j1,j2,...,jn,每个任务节点有且仅有一次被遍历的需求,多个机器人于某一个定点出发,对于其中任意一个机器人来说,其需要按照一定规则遍历完所有分配到的任务节点,然后,回到出发点。假设移动机器人速度为1m/s,设第m个机器人遍历的n'个任务节点为则其完成任务的时间为tm,定义如式(1)所示,其中为机器人起点s与任务节点之间的欧式距离;整个机器人集群完成遍历的任务的总时间t定义如式(2)所示。

5、

6、t=max(t1,t2,...,tm)                                              (2)

7、在传统k-means算法中,分类的指标主要为任务节点与类别中心点之间的欧式距离,虽然能保证分类结果在空间分布上聚集在类别中心点周围,但这无法保证多机器人之间的负载的优劣性与均衡性,本专利技术首先提出一种基于角度域的映射方法。

8、以图1所示案例为例,假定在某平面内存在8个任务节点,如图1(a),节点的坐标见表1:

9、表1任务节点坐标值

10、

11、

12、图1(b)为k为2时的k-means算法的分类结果,尽管基于该分类结果调用相关的路径规划算法也能解决相关的路径规划问题(假定原点为机器人的起点),如图1(c)所示,但从图1(d)所示的机器人的负载图来看,机器人1的负载为44.01s,而机器人2的负载为20.25s,两者的负载明显差距过大。

13、从逻辑上来看,明显地,{a1、a2、a3、a4}与{b1、b2、b3、b4}分别位于两个类别中更为合理,因为两个机器人在完成a4以及b4的时候,顺路解决了其他的任务节点,此时机器人的效率最高。

14、为实现上述的分类,首先分析同类别节点的共性,显然同一类节点与原点的角度具备高度的相似性,且此时对于某一类别的任务节点来说,影响该类别任务用时的主要因素与所有任务节点与原点的欧式距离的最大值相关,因为较小距离的节点一般都能顺路解决。

15、基于上述思路,本专利技术所提的一种基于角度域的映射方法主要步骤为:设某任务节点j的坐标为(x,y),机器人起点坐标(xs,ys),则根据式(3)计算其与原点的连线的长度r'以及该连线与水平轴的夹角θ'。

16、

17、然后将节点j映射到r-θ坐标系中,设结果为j',考虑上述内容中,r'对于聚类的帮助不大,因此,将任务节点j'再向θ轴进行投影,设结果为j”,至此,实现了将任务节点由空间域向角度域进行映射的步骤,图2为角度域映射过程示意图。

18、图3为使用本专利技术方法解决图1所示简化案例的仿真结果,从图3(b)可以看到,{a1、a2、a3、a4}与{b1、b2、b3、b4}成功地被分别划分为两个类别,且通过分析图3(d)中的数据,机器人的负载分别是35.77s与39.59s,相比于图1所示的k-means的结果来看,负载的均衡性得到了极大的提升,同时,根据式(2)可以计算出k-means方法与本专利技术方法的任务完成时间分别为44.01s与39.59s实验验证了本文方法的有效性。

19、为了解决可能出现的不同类别的任务节点分布不均而带来的负载不均衡问题,本专利技术重写了k-means算法的类别中心点坐标计算公式。图4为一分类结果不均匀导致的负载不均衡的案例,观察图4(b)所示的分类结果,可以发现,尽管分类结果看似符合顺路性质,但是类别2中的节数量相对于类别1中来说相对较少,这也导致了机器人1的负载较大,从而加大了整体任务的完成时间。在传统k-means算法中,某类别的中心点坐标计算公式如式(本文档来自技高网...

【技术保护点】

1.一种面向多机器人协同遍历的任务节点划分方法,其特征在于包括以下步骤:

2.根据权利要求1所述的一种面向多机器人协同遍历的任务节点划分方法,其特征在于:

3.根据权利要求1所述的一种面向多机器人协同遍历的任务节点划分方法,其特征在于:所述步骤S6、调用解决TSP(Traveling Salesman Problem)问题的基本算法为采用蚁群算法,对不同类别的任务节点进行路径规划。

【技术特征摘要】

1.一种面向多机器人协同遍历的任务节点划分方法,其特征在于包括以下步骤:

2.根据权利要求1所述的一种面向多机器人协同遍历的任务节点划分方法,其特征在于:

3.根据权利要求1所述的...

【专利技术属性】
技术研发人员:王雷李东东蔡劲草张泽宇寿林熊媛
申请(专利权)人:安徽工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1