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

移动机器人路径规划方法、装置、计算机设备和存储介质与流程

2022-02-20 13:48:24 来源:中国专利 TAG:


1.本技术涉及路径规划技术领域,特别是涉及一种移动机器人路径规划方法、装置、计算机设备和存储介质。


背景技术:

2.近几十年以来,移动机器人被广泛应用各个领域。路径规划对于移动机器人来说是一项关键技术和重大挑战。路径规划需要按照评价标准(如规划时间、路径长度等)搜索一条从给定起始点至目标点的最优或次优路径。路径规划可分为环境信息已知的全局路径规划和环境信息未知或部分已知的局部路径规划。
3.在基于采样的路径规划算法中,其中应用最广泛的为快速探索搜索树rrt(rapidly exploring random trees)算法。该算法在构型空间中进行均匀采样,具有概率完备性的特点。由于此方法在空间中随机采样,因此通过该算法生成的路径往往不是最优或者次优的。一些研究基于rrt算法的思想对其进行改进。
4.为了提高生成树的搜索速度,拉瓦勒(lavalle)等人在《rrt-connect:单一查询路径规划的高效方法(rrt-connect:an efficient approach to single-query path planning;proceedings)》中提出了双向探索的rrt-connect算法(如图1所示),该算法在构型空间中分别由起点向终点和终点向起点的两棵随机树进行扩展,进一步加快了搜索效率。康格(kang)等人利用三角不等式的原理提出了《基于三角不等式的机器人路径规划的改进型rrt-连接算法(improved rrt-connect algorithm based on triangular inequality for robot path planning)》,并在八种环境下进行了实验,对比原始的rrt-connect算法路径长度缩短了16%。
5.公开号为cn111238518a的中国专利公开了一种基于改进rrt算法的智能农业车辆路径规划方法,依据起始点qstart和目标点qgoal的位置,计算出中点,并判断中点是否属于自由区域;如果中点不属于自由区域,则设定迭代次数并设置具体步长,循环迭代直到确定中点。通过搜索路径的构建,共形成四棵树同时搜索的随机树。该方案使用了改进的rrt-connect,得到了四棵树的搜索方法,但这种搜索方式达成的路径规划结果优化程度依然不够高,并且迭代运算复杂影响算法的效率。
6.公开号为cn112904869a的中国专利公开了一种基于多树rrt的无人艇加权迭代路径规划方法及设备,该技术方案是基于rrt的基础上进行改进,在延展过程中,以上一棵随机树的节点列表为引导重新构建rrt随机树,同时考虑角度代价和长度代价选择父节点重新连线。该方案在节点搜索过程中,充分考虑了角度代价和长度代价,影响了算法的工作效率。
7.为了得到更优的路径,现有技术基于rrt算法或rrt-connect算法进行改进,如上述两个专利所公开的技术方案,前者路径规划的结果不够好,并且采用了迭代计算;后者采用角度代价和长度代价评估,同样进行了迭代计算。以上述两个专利为代表,现有技术的一些技术方案为了得到更优路径,改变了父节点选择的方式,采用代价函数来选取扩展节点
邻域内最小代价的节点为父节点,使算法达到渐进最优。但迭代速度较慢,牺牲了规划时间。


技术实现要素:

8.基于此,有必要针对上述技术问题,提供一种移动机器人路径规划方法。
9.本技术移动机器人路径规划方法,包括以下步骤:
10.制作起始点和目标点之间的连线,所述起始点和目标点分别为第一节点和第二节点;
11.选择在所述连线上的点作为第三节点;
12.每两个相邻节点之间采用双向快速随机搜索树算法进行路径规划。
13.可选的,当所述连线的中点不存在障碍物,所述第三节点为所述连线的中点;当所述连线的中点存在障碍物,所述第三节点为所述连线上靠近中点且不存在障碍物的点。
14.可选的,设定所述连线的长度为l,第三节点与所述中点的距离不大于l/4。
15.可选的,当所述连线的中点存在障碍物,选择距离中点l/2n的距离点作为第三节点,n为不小于2的自然数,并以n逐渐增加的方式进行选择。
16.可选的,所述双向快速随机搜索树算法采用目标偏向策略生成新的节点,所述目标偏向策略为:由搜索树的当前点n
nearest
通过连接新节点n
new
朝向搜索树的目标点x
end
不断扩展延伸;所述当前点n
nearest
与目标点x
end
之间的连线与横轴形成的角度用以修正确定新节点n
new
的位置。
17.可选的,所述新节点n
new
满足以下公式确定:
18.x=n
nearest
(x) dcosθ kcosα (1-k)sinα;
19.y=n
nearest
(y) dsinθ ksinα (1-k)cosα;
20.其中:
21.(x,y)为新节点n
new
的坐标;
22.n
nearest
(x)为当前点n
nearest
的横坐标;
23.n
nearest
(y)为当前点n
nearest
的纵坐标;
24.n
rand
为快速随机搜索树算法的随机采样点;
25.d为n
rand
与n
nearest
的两点间距与固定步长e的相对较小值;
26.θ为采样点n
rand
与当前点n
nearest
之间的连线与横轴形成的角度;
27.α为当前点n
nearest
与目标点x
end
之间的连线与横轴所形成的角度;
28.k为常数。
29.可选的,扩展时,任意一棵搜索树以另一棵搜索树的当前点n
nearest
作为目标点x
end
,当其中一棵搜索树遇到障碍物时,扩展另一棵搜索树。
30.本技术还提供一种移动机器人路径规划装置,所述装置包括:
31.第一模块,用于制作起始点和目标点之间的连线,所述起始点和目标点分别为第一节点和第二节点;
32.第二模块,用于选择在所述连线上的点作为第三节点;
33.第三模块,用于每两个相邻节点之间采用双向快速随机搜索树算法进行路径规划。
34.本技术还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本技术所述的移动机器人路径规划方法的步骤。
35.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本技术所述的移动机器人路径规划方法的步骤。
36.本技术移动机器人路径规划方法至少具有以下效果之一:
37.保证第三节点处于起始点和目标点之间的连线上,在避免了路径曲折的同时提高了计算效率;
38.通过目标偏向策略,避免了新节点n
new
的代价评估计算,在优化规划路径的同时进一步提高了计算效率;
39.在两棵相向的搜索树扩展过程中,当其中一棵搜索树遇到障碍物时,扩展另一棵搜索树,通过交换扩展的方式,使得搜索树快速脱离障碍物,进而最大可能地避免了路径曲折。
附图说明
40.图1为现有技术中双向快速随机搜索树算法路径规划的示意图;
41.图2为现有技术中双向快速随机搜索树算法路径规划的示意图;
42.图3本技术一实施例中移动机器人路径规划方法的第三节点选择示意图;
43.图4本技术一实施例中移动机器人路径规划方法的第三节点选择示意图;
44.图5本技术一实施例中移动机器人路径规划方法的第三节点选择流程示意图;
45.图6为本技术一实施例中移动机器人路径规划目标偏向策略的示意图;
46.图7为本技术一实施例中移动机器人路径规划方法与现有技术中的路径规划方法在环境1条件下的对比测试结果示意图;
47.图8为本技术一实施例中移动机器人路径规划方法与现有技术中的路径规划方法在环境2条件下的对比测试结果示意图;
48.图9为本技术一实施例中移动机器人路径规划方法与现有技术中的路径规划方法在环境3条件下的对比测试结果示意图;
49.图10为本技术一实施例中移动机器人路径规划方法与现有技术中的路径规划方法在环境1~3的迭代次数对比结果示意图;
50.图11为本技术一实施例中计算机设备的内部结构图。
具体实施方式
51.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本技术,并不用于限定本技术。
52.传统技术方案中,双向快速随机搜索树(rrt-connect)算法在快速探索搜索树rrt(rapidly exploring random trees)算法的基础做了两个重大改进:从起始状态点和终止状态点分别生成随机树,当两棵树相交时即规划完成,这样大大提高了算法的搜索速度;采用了节点贪婪扩展的策略,在每一次迭代生成节点时,算法会尝试将另一棵树的最近节点
作为这棵树的扩展方向,使得两棵树快速相交。同时,该算法在扩展节点时,如果向该扩展方向没有碰到障碍物,会继续向此方向扩展。如果遇上了障碍物,算法将使用一个交换函数,使另外一棵随机树进行扩展,这样做很大程度避免了算法陷入局部最优的困境。通过以上几种策略,rrt-connect的搜索速度和搜索效率有了大幅提高。图1为rrt-connect算法扩展过程,参阅图1,其中t1、t2为rrt-connect的两棵随机搜索树,n
earest
a和n
earest
b分别为两棵随机搜索树的当前点;n
new
a和n
new
b分别为两棵搜索树的新节点(下一节点);n
rand
a和n
rand
b分别为两棵搜索树的采样点。算法初始为以起点和终点为根节点的两棵树,以贪婪式的方式进行延伸,有效的减少了随机树对未知区域的扩展。然而,rrt-connect与rrt算法类似,虽然经过多次迭代后能得到一条可行的路径,但不能保证得到的路径是最优或者次优的。
53.现有技术对上述rrt-connect进行优化,如图2所示,在rrt-connect算法扩展的基础上选择中间的节点,其中,rrt-connect的起始点为q
start
,目标点为q
goal
,中间选择的节点为qm。该技术方案通过同时生成四棵随机树进行路径生成并基于滚动优化的方法进行动态避障提高其路径规划效率。该技术优先选择q
start
和q
goal
的中点作为qm。但当q
start
和q
goal
的中点处存在障碍物时,该技术方案以调整步长的方式迭代搜寻直到确定中点qm。但该技术首先通过迭代搜寻确定中点qm导致了迭代搜寻的效率降低;同时,该技术确定的中点qm有极大概率不处于q
start
和q
goal
的连线上,导致了最后生成的路径曲折。
54.为解决上述技术问题,参阅图3,本技术一实施例中提供一种移动机器人路径规划方法,包括:确定起始点和目标点,起始点和目标点分别为第一节点和第二节点;制作起始点和目标点的连线,在起始点和目标点连线上选择第三节点。第一节点和第二节点相邻,第二节点和第三节点相邻,每两个相邻的节点之间采用rrt-connect算法生成两棵相向的搜索树,共生成四棵搜索树,四棵搜索树不断扩展,进行移动机器人路径规划,以获得最终的移动机器人规划路径。本实施例中,通过保证第三节点始终处于起始点和目标点的连线避免了路径曲折。
55.参阅图3~5,在一个实施例中,在起始点和目标点连线上选择第三节点。具体包括:在起始点和目标点连线的中点或者靠近中点的位置选择第三节点。优选起始点和目标点连线的中点作为第三节点,当中点存在障碍物时,选择靠近中点的位置作为第三节点。
56.具体地,起始点和目标点连线长度为l,备选的第三节点与起始点和目标点连线中点的距离l/2n,n为不小于2(大于等于2)的自然数;以n逐渐增加的方式选择第三节点。当n取任意值时,判断备选的第三节点所在区域是否存在障碍物,如不存在则将其选择为第三节点;如存在,递增n的数值进行重新确定备选的第三节点。
57.可以理解,在n取任意值时,第三节点有两个备选。如果两个备选结点所述区域均不存在障碍物,则随机选择其中一个点,作为第三节点。例如,当n=2时,备选的第三节点与起始点和目标点连线中点的距离l/4。
58.在一个实施例中,基于上述方法得到两个候选的第三节点(备选的第三节点与起始点和目标点连线中点的距离l/2n),得到的节点如图4所示。接着将得到的两个节点进行判断,如果两个节点都不在障碍物上,那么将会随机选择其一作为有效的第三节点。如果两个节点其中一个在障碍物上,则选择另外一个不在障碍物上的节点作为有效的第三节点。如果生成的两个节点都在障碍物上,那么将根据这两个点继续向起始点和目标点连线的中点进行二分得到两个候选的第三节点。重复上述步骤,直至得到有效的第三节点。生成第三
节点的整个流程如图5所示。
59.在一个实施例中,以构型空间为例,基于rrt-connect算法从起点和终点构建两棵随机树优化路径搜索效率。在构型空间中,初始化起点(起始点)坐标为xstart(x1,y1),终点(目标点)坐标为x
end
(x2,y2)。当起始点和目标点连线的中点不存在障碍物,取连线的中点为第三节点,连线的中点(x
mid
,y
mid
)在构型空间中的坐标,分别由公式(1)获得x
mid
,公式(2)获得y
mid
,具体如下:
60.x
mid
=(x1 x2)/2
61.y
mid
=(y1 y2)/2
62.其中,x1,x2,和y1,y2分别为起点与终点在构型空间中的横坐标和起点与终点在构型空间的纵坐标;
63.通过上述方法生成第三节点在构型空间中可能存在两种情况。第一种情况为生成的第三节点所在的位置不包含障碍物,则说明只需进行一次迭代就能找到第三节点,该情况如图3所示。生成第三节节点后,算法将包括起点到第三节点的两棵随机树和第三节点到终点的两棵随机树一共四颗随机树进行扩展。大大提高了提出的路径规划算法的搜索的速度。
64.上述选择连线的中点作为第三节点为理想状态。在实际过程中,有可能出现起点到终点的连线的中点刚好处于障碍物上。在实施例中,为了继续保证算法的迭代效率,我们在上述生成的中点x
mid
的基础上采用二分的思想继续寻找有效的第三节点。具体操作为,首先取以起点x
start
和处于障碍物上的点x
mid
连线上的靠近处的点作为备选的有效节点。同时在以x
mid
和x
end
的连线上靠近处的点作为第二个备选节点。这两个备选的第三节点的生成公式,如公式(3)和公式(4)所示:
[0065][0066][0067]
其中,(x1,y1)和(x2,y2)分别为构型空间中的起点坐标和终点坐标。基于此种方法得到了两个候选的第三节点,得到的节点如图4所示。将候选的第三节点选择为第三节点如上述图5的判断方法。
[0068]
现有技术中,rrt-connect算法搜索为了获得优化结果,通过计算角度代价而评估搜索树延伸节点的可用性。例如,为了得到更优的路径,通过改变父节点选择的方式,采用代价函数来选取扩展节点邻域内最小代价的节点为父节点,使算法达到渐进最优。但这些算法迭代速度较慢,牺牲了规划时间。例如,公开号为cn112904869a的中国专利,通过计算规划路径的加权代价,若高于预设的期望代价,则返回步骤;若不高于预设的期望代价或者达到预设最大迭代次数。
[0069]
针对现有技术中迭代运算效率低下的技术问题,在一个实施例中,参阅图6,提供
一种基于双向快速随机搜索树(rrt-connect)算法生成新的节点的目标偏向策略。
[0070]
可以理解,本技术实施例中,共生成有两组相向扩展延伸的四棵搜索树。对任一棵搜索树而言,在扩展过程中,包括当前点n
nearest
、新节点n
new
、目标点x
end
。本实施例中所述的目标偏向策略,通过当前点n
nearest
与目标点x
end
之间的连线与横轴形成的角度(小于等于90度的角度)修正确定新节点n
new
的位置。
[0071]
可以理解,本实施例中,在确定新节点n
new
之前,通过当前点n
nearest
与目标点x
end
形成的角度对新节点进行重新规划使其对终点更加具有偏向性。在理想状态下,搜索树方向朝目标方向不断扩展延伸,现有技术选择迭代算法评估代价,大大降低了搜索树扩展延伸的效率。而本实施例中,由于在确定新节点n
new
使得n
new
具有偏向终点的偏向性,即目标偏向策略使得随机生成树每次生成新节点时都会考虑目标点方向,因此生成树在构型空间中的总体生长方向总是偏向于目标点。这一改进使得路径规划算法的搜索效率得到稳固的提高(尽可能减少迭代运算),并且保证了生成规划路径的优化程度。
[0072]
具体地,以构型空间为例,当前点n
nearest
与目标点x
end
之间的连线与横轴形成的角度用以修正确定新节点n
new
的位置的具体方式,包括获得n
new
的横坐标和纵坐标,新节点n
new
满足以下公式确定:
[0073]
x=n
nearest
(x) dcosθ kcosα (1-k)sinα;(公式5)
[0074]
y=n
nearest
(y) dsinθ ksinα (1-k)cosα;(公式6)
[0075]
其中:
[0076]
(x,y)为新节点n
new
的坐标;
[0077]nnearest
(x)为当前点n
nearest
的横坐标;
[0078]nnearest
(y)为当前点n
nearest
的纵坐标;
[0079]nrand
为快速随机搜索树算法的随机采样点;
[0080]
d为n
rand
与n
nearest
的两点间距与固定步长e的相对较小值;
[0081]
θ为采样点n
rand
与当前点n
nearest
之间的连线与横轴形成的角度;
[0082]
α为当前点n
nearest
与目标点x
end
之间的连线与横轴所形成的角度;
[0083]
k为常数。
[0084]
具体地,k为目标偏差因子,为获得更优的规划路径,在一个实施例中,常数k的取值为0.4-0.6;经实验测试,k取0.4的效果更优。
[0085]
在一个实施例中,为了使得rrt-connect路径规划算法搜索速度更快,搜索效率更高,通过引入上述生成第三节点和对新节点重规划的策略,对rrt-connect路径规划整个规划流程进行改进。随机树扩展生成新节点的improveextend函数伪代码如算法1所示。
[0086][0087][0088]
其中,
[0089]nrand
为搜索树采样点;
[0090]
t为随机搜索树;
[0091]
withoutobstacle函数为判断构型空间中的点是否在障碍物处;
[0092]
samplefree函数在构型空间中产生随机点作为采样点;
[0093]
nearest函数目的是为了找到在生成树上距离采样点n
rand
距离最近的节点;
[0094]
e为固定步长;
[0095]
distance函数用于判断生成两个节点之间的欧氏距离;
[0096]
可以理解,d为n
nearest
和n
rand
之间距离与固定步长e与的最小值,n
nearest
和n
rand
两点间距为第一距离;固定步长e为第二距离,取第一距离与第二距离相对更小的值为步长d。
[0097]
min为最小值函数;
[0098]nnew
为新节点,其横纵坐标获得的公式见上述实施列,不再赘述;
[0099]
add函数为增加新节点n
new
至搜索树。
[0100]
可以理解,算法1涉及的与上述相同的参数可以由上述实施例进一步解释,算法1中涉及的其他函数及参数为本领域技术人员常用的代码参数,例如if、ales、then、input、output等简单函数,在此不做赘述。
[0101]
为获得更优的规划路径,在一个实施例中,提供一种交换扩展策略,包括:相向扩展的搜索树在扩展时,相向扩展两棵搜索树中的其中任意一棵搜索树以另一棵搜索树的当前点n
nearest
作为目标点x
end
,当其中一棵搜索树遇到障碍物时,扩展另一棵搜索树。
[0102]
可以理解,相向扩展的搜索树的最终目标是相向扩展的搜索树相连,从而形成规划路径。所以,相向扩展的搜索树互相以对方的当前点n
nearest
作为目标点x
end
。在任意一棵
搜索树遇到障碍物时,通过扩展另一棵搜索树,使遇到障碍物的搜索树脱离障碍物,进一步使得路径得到优化,避免了路径曲折。
[0103]
在一个实施例中,同时应用确定第三节点的算法、目标偏向策略(角度偏向、或称增强对目标点的引导力)、以及交换扩展策略,改进后的算法的总的路径规划流程如算法2improverrt-connect伪代码所示:
[0104][0105]
本实施例中,improverrt-connect简称irrt-connect;首先通过函数searchthirdnode得到一个第三节点,该函数通过公式(1)(2)或(3)(4)实现。接着初始化四棵随机生成树并加入相信的初始化节点,t1和t2为起点与第三节点之间两棵相向的随机树,t3和t4为第三节点与终点之间两棵相向的随机树。在扩展过程中,使用connectwithoutobstacle函数用来判断生成树上的节点与新生成的节点之间是否有障碍
物,若有则重新生成新节点。在此算法中,同样也使用了贪婪扩展策略,即向某一方向扩展没有遇到障碍物时,继续向此方向扩展,直到遇到障碍物位置或两棵树相连,贪婪策略如伪代码15行到20行所示。为了加强算法探索效率,当两棵树进行相向扩展时,若其中一棵树障碍物与障碍物相遇,则使用swap函数进行交换扩展,扩展另外一个树使得算法快速脱离障碍物。当超过设置的最大迭代次数n时还没寻找到一条可行的路径即本次规划失败。算法2中涉及的其他函数及参数为本领域技术人员常用的代码参数,如path路径、init初始化、变量i、return以及算法1中已经解释过的代码参数等,在此均不做赘述。
[0106]
在一个实施例中,为了证明改进后的算法的有效性和优越性,比较了rrt,rrt-connect和改进后的rrt-connect算法(irrt-connect)在三种不同环境的情况下的执行效率。图7a为rrt算法测试结果,图7b为rrt-connect算法测试结果,图7c为irrt-connect测试结果(本技术一实施例中所述的算法2)。
[0107]
仿真使用的算法语言为python3.7,硬件平台为window 10操作系统,amd ryzen 4800u 1.8ghz cpu,内存为16gb。在实验过程中,保持三种算法的相应参数相同,统一的固定步长e为0.8。在所有三种环境中,实验的仿真地图横坐标范围为(0,50)米,纵坐标范围为(0,30)米。图7展示了三种算法在环境1下的表现。设置起点坐标在构型空间中为(2,2),终点坐标为(49,24)。由于基于随机采样的路径规划算法具有随机性,我们对每种算法进行了50次实验,图中展示的为每种算法在该环境下相对优良的结果。图7中所示的原始的rrt算法在该环境下执行的时间为0.062秒,迭代次数为405次,最终得到的路径长度65.39米。图中所示的原始的rrt-connect算法在改环境下的执行时间为0.011秒,83次迭代,路径长度为59.68米。最后一张图为改进后的算法在环境一下表现,整个路径规划时间为0.007秒,迭代次数仅为15次,并且路径长度减短到了54.84米。表1为三种算法在环境1下实验50次后得到三种算法评价的平均指标。通过加入合理的第三节点算法相对于改进前的rrt-connect算法迭代次数减少了51%,规划时间减少了36%,路径长度缩短了。通过观察图7并结合实验所得数据可知改进后的算法在环境1下迭代次数明显下降,并且路径也更加平滑。
[0108]
表1:三种算法在环境1下实验50次的平均结果
[0109][0110]
在一个实施例中,为了测试算法在不同环境下的通用性,本文尝试了不同环境和不同坐标点下算法性能的表现。三种算法在环境2中的表现如图8所示。其中,图8a为rrt算法测试结果,图8b为rrt-connect算法测试结果,图8c为irrt-connect测试结果(本技术一实施例中所述的算法2)。
[0111]
在环境2中,起始点和目标点的坐标为(2,26)和(47,5),算法由左上到右下寻找一条有效路径。为了说明本文提出的第三节点的有效性,在环境2中有意使用障碍物放置在起始坐标到终点坐标连线的中点上,使得本文提出的算法第一次迭代时根据公式(1)(2)寻找不到有效的第三节点,迫使算法继续迭代根据公式(3)(4)继续寻找有效的第三节点。与环境1相同,我们在环境2下也进行了50次实验,得到的三种算法的平均结果如表2所示。由表2数据可知,改进后的算法相较于rrt-connect平均规划时间和平均迭代次数分别降低了
36.8%和66.8%,在此基础上得到的路径长度也缩短了约4.84米。通过表2平均数据和图8的三种算法在环境二下的路径规划效果图可知,本文改进的算法最终生成了有效的第三节点并且得到的路径相对其他两种算法更优。
[0112]
表2:三种算法在环境2下实验50次的平均结果
[0113][0114]
在一个实施例中,为了测试算法在复杂环境下执行的效果,因此创建的环境3综合了环境1和环境2的障碍物分布与类型。在该环境下设置起点坐标与终点坐标为(2,2)和(49,24)。在此环境下的实验结果如图9所示,其中,图9a为rrt算法测试结果,图9b为rrt-connect算法测试结果,图9c为irrt-connect测试结果(本技术一实施例中所述的算法2)。
[0115]
rrt-connect算法对于遇到障碍物不能很好的沿着障碍物平滑过渡过去,并且生成树的遇上障碍物后进行树的交换进行贪婪扩展后,生成的路径较为曲折。虽然rrt-connect算法与本文改进后的算法都使用了贪婪扩展策略,但是我们在此基础上还引入了增加引导力的新节点的扩展策略,使得扩展方向更加偏向于目标点,具有方向性。因此得到的路径更加平直,并且遇上障碍物后也能快速寻找到一条有效路径。三种算法在环境3下的50次平均结果如表3所示。通过数据可以看出,本文所提出的改进算法相较于其他两种算法能够通过较少的迭代次数在更短的时间内得到更优的路径。
[0116]
表3:三种算法在环境3下实验50次的平均结果
[0117][0118]
在一个实施例中,为了对验证算法的稳定性,对三种算法在三种不同环境下分别取10次、20次、30次、40次、50次平均实验结果。比较了包括迭代次数,规划时间,和寻路长度三种性能指标用来反应算法的执行效率和质量。如图10(a)(b)为三种算法在三种环境下的迭代次数与寻路时间对比。本文通过生成有效的第三结点使得算法无论在简单环境条件和复杂环境条件下的迭代次数得到大幅降低,这也使得改进的算法搜索速度更快。因此,为了应对复杂环境下的路劲规划,这一改进是很有必要的。图10(c)为三种算法在三种环境下寻路长度对比,改进后的算法不论是经过少量实验(10次)还是大量实验(50次)寻找到的路径长度都比其他两种算法要短。这有可能是得益于我们重新规划了生成树在扩展新节点方法,使得每次迭代生成的新节点都朝着目标方向前进,提高了算法的搜索速度。结合图10可以说明改进后的路径规划算法在多种环境下搜索速度更快,探索效率更优。
[0119]
总结,复杂环境下移动机器人的路径规划是研究领域需要解决的关键问题之一。基于采样的路径规划算法具有简单性和快速搜索的能力,善于解决多维空间和复杂环境下的规划问题。本文以rrt-connect算法为基础,通过二分点的思想在构型空间中生成简单且效率高的第三节点,保证第三节点在起始点和目标点的连线上,使得算法以四棵树进行扩展,加快在复杂环境下的搜索速度。为减少rrt-connect算法的冗余搜索;通过增加引导力
的方式(目标偏向策略)重新规划生成树新节点的生成,使得算法每次扩展都偏向目标点方向,加快了算法的搜索效率。本技术在保证获得更优规划路径结果的同时(尽可能避免路径曲折),提高了计算效率(尽可能避免迭代运算和代价评估)。
[0120]
为了验证提出的算法的有效性和通用性,在实验中构建了三种复杂情况不同的环境地图并进行50次实验后取平均性能指标。对于较简单的环境1来说,改进后的算法的迭代次数比rrt和rrt-connect算法减少了91%和51%,寻路时间减少了88%和36%,并且所得的路径长度减少了13%和6%。在更复杂的环境3的条件下改进后的算法也能表现出优良的性能,验证了本文改进算法的有效性。
[0121]
本技术提供的技术方案针对二维静态环境下路径规划问题,可以理解,本技术所述的规划路径的应用场景可以是陆地、海洋等其他平面路径规划的场景;本技术所述的路径规划可以是单纯的规划路线,并不限于用于移动机器人行走,也可以用于其他自动或半自动的机械行走,例如农用机械,海洋无人艇等。可以理解,在二维空间平面或接近二维空间平面(如平原地带)的避障型(包括避开低于平面或高于平面的障碍)移动路径规划均处于本专利的保护范围之内。
[0122]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种移动机器人路径规划方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0123]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:制作起始点和目标点之间的连线,起始点和目标点分别为第一节点和第二节点;选择在连线上的点作为第三节点;每两个相邻节点之间采用双向快速随机搜索树算法进行路径规划。
[0124]
本领域技术人员可以理解,图11中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0125]
在一个实施例中,提供了一种移动机器人路径规划装置,包括:第一模块、第二模块和第三模块,其中:第一模块,用于制作起始点和目标点之间的连线,起始点和目标点分别为第一节点和第二节点;第二模块,用于选择在连线上的点作为第三节点;第三模块,用于每两个相邻节点之间采用双向快速随机搜索树算法进行路径规划。
[0126]
关于移动机器人路径规划装置的具体限定可以参见上文中对于移动机器人路径规划方法的限定,在此不再赘述。上述移动机器人路径规划装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0127]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:制作起始点和目标点之间的连线,起始点和目标点分别为第一节点和第二节点;选择在连线上的点作为第三节点;每两个相邻节点之间采用双向快速随机搜索树算法进行路径规划。
[0128]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0129]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。不同实施例中的技术特征体现在同一附图中时,可视为该附图也同时披露了所涉及的各个实施例的组合例。
[0130]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献