【技术实现步骤摘要】
本专利技术属于机器人避障
,具体涉及一种机器人避障中的最短路径规划方法。
技术介绍
机器人避障路径规划是指在给定的环境障碍条件下,选择一条从起始点到目标点的路径,使机器人可以安全、无碰撞地通过所有的障碍。这种自主地躲避障碍物并完成作业任务的方法,是机器人研究和应用中的一个重要内容。目前,为了能够快速地找到一条从起始点到目标点的最优或最短路径,研究者们已经开发出很多不同的算法,例如A*算法、Dijkstra算法、遗传算法、粒子群算法和人工势场法等。与A*算法相比,Dijkstra算法、遗传算法和粒子群算法都存在数据复杂、计算量大等缺点。A*算法是在Dijkstra算法基础上加了约束条件的最好优先算法,在搜索中加入了与问题有关的启发性信息,指导搜索朝最有希望的方向进行,用于搜索状态空间的最短路径,这比无方向性的Dijkstra算法理论上更加迅速。然而,采用A*算法规划出的最优路径往往与障碍物紧挨,与机器人之间缺少缓冲地带。人们更希望略微增加路 ...
【技术保护点】
一种机器人避障中的最短路径规划方法,其包括以下步骤:采用卷积运算获得概率栅格地图;对原始的A*算法进行改进,得到改进后的A*算法的代价函数为:f(n)=k1*g(n)+k2*h(n)+k3*k(n),式中,g(n)表示从起点S到节点n之间的实际代价,代表了搜索广度的优先趋势;h(n)表示从节点n到目标点D之间的最佳路径的估计代价,包含了搜索中的启发信息;k(n)表示概率栅格地图中栅格对应的概率值;k1为代价g(n)对应的权重,k2为代价h(n)对应的权重,k3为概率值k(n)对应的权重,其中0<ki<1(i=1,2,3);在概率栅格地图的基础上,采用改进后的A*算法进行从起 ...
【技术特征摘要】
1.一种机器人避障中的最短路径规划方法,其包括以下步骤:
采用卷积运算获得概率栅格地图;
对原始的A*算法进行改进,得到改进后的A*算法的代价函数为:
f(n)=k1*g(n)+k2*h(n)+k3*k(n),
式中,g(n)表示从起点S到节点n之间的实际代价,代表了搜索广度的优先
趋势;h(n)表示从节点n到目标点D之间的最佳路径的估计代价,包含了搜
索中的启发信息;k(n)表示概率栅格地图中栅格对应的概率值;k1为代价
g(n)对应的权重,k2为代价h(n)对应的权重,k3为概率值k(n)对应的
权重,其中0<ki<1(i=1,2,3);
在概率栅格地图的基础上,采用改进后的A*算法进行从起点到终点的最短
路径搜索。
2.如权利要求1所述的一种机器人避障中的最短路径规划方法,其特征在
于:所述采用卷积运算获得概率栅格地图的过程为:
(1)利用二维数组定义栅格地图,其包括:
自定义栅格地图中的栅格类型为:FREE、OBSTACLE、START、END和
PROBABILITY;FREE代表表示完全没有障碍物,OBSTACLE表示确定有障碍
物,START表示起点,END表示终点;PROBABILITY从高到低表示障碍物存
在的可能性大小,PROBABILITY的值越大表示障碍物存在的可能性越大;
自定义二维数组的数据类型如下:
其中,s_x和s_y表示某个栅格在地图中的坐标,s_g和s_h表示A*算法规
划中的两个代价距离,s_style表示栅格类型;structAStarNode*s_parent定义了
一个相同类型的指针;ints_is_in_closetable和ints_is_in_opentable表示某一个
栅格在搜索过程中是否已经遍历过,如果已经遍历过,则s_is_in_closetable=1,
s_is_in_opentable=0;否则,s_is_in_closetable=0,s_is_in_opentable=1;
根据自定义的二维数组的数据类型,将二维数组表示为:
AStarNodemap_maze[ROW][COLUMN];
(2)对栅格地图做卷积运算,得到概率栅格地图,其具体过程为:
对于栅格地图中非边缘部分进行栅格概率化,其具体过程为:
选择一个行数和列数均为m且m为奇数的权矩阵作为卷积核,卷积核表示
为:
R = R 11 R 12 ... R 1 m R 21 R 22 ... R 2 m . . . R m 1 R m 2 ... ...
【专利技术属性】
技术研发人员:王玉亮,王晓刚,乔涛,王巍,薛林,
申请(专利权)人:北京进化者机器人科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。