【技术实现步骤摘要】
一种动态场景下的跳点搜索路径规划方法
[0001]本专利技术涉及人工智能与无人系统领域,具体涉及自动驾驶路径规划
,尤其涉及一种动态场景下的跳点搜索路径规划方法。
技术介绍
[0002]在无人系统领域无人车的自动驾驶中,路径规划是关键的技术之一,针对这一技术,截止至今已经开展了大量的研究工作。无人车路径规划可以分为静态路径规划和动态路径规划。其中A*算法、Dijkstra算法等目前主要应用于已知的静态场景中,而人工势场法、D*算法等则大多应用于环境未知动态场景中。其中跳点搜索(JumpPointSearch,JPS)是对A*搜索算法的优化,通过剪枝规则,打破栅格的对称性,减少无效节点的访问,保留关键“跳点”,能让搜索在栅格上直线长“跳跃”,具有较好的路径寻优性能。但是,跳点搜索算法依然只能处理静态路径规划问题。对于复杂化且实时更新的动态栅格地图,若仍想利用在静态场景下效率更高的跳点搜索算法进行寻路工作,则需反复不停的调用静态的跳点搜索算法,会在节点搜索和跳点识别阶段会消耗大量时间,且每次寻路后的计算结果不会被保存,在下一次刷新地图后仍需重新进行起点到终点的探索,所耗时间过长,无法处理无人车的动态避障问题,需做大量优化处理。
[0003]针对上述问题,文献《面向未知环境的机器人动态路径规划算法研究》提出面对动态地图的跳点搜索算法,存在如下问题:
[0004](1)该文章中,仅将障碍物可能出现的情况分为“直线型障碍物”以及“凹形障碍物”,并以此设计出两种应对策略,策略分别为“指定动态跳点策略”和“重 ...
【技术保护点】
【技术特征摘要】
1.一种动态场景下的跳点搜索路径规划方法,其特征在于,包括以下步骤:S1、采用栅格法将地图划分区域,扫描障碍物所在位置,将对应栅格标记为不可行走区域;S2、运行静态JPS算法,完成初次寻路探索;S3、重新扫描地图中障碍物位置变化,更新对应栅格中的障碍物位置信息;S4、调用动态JPS算法,对更新后的地图进行路径更新,扫描在原始路径上的障碍物变化,判断是否在原始路径上出现新的障碍物,以及扫描路径附近的邻接点,判断是否出现了新的“近路”并实现路径优化过程;具体S4包括以下步骤:S41、从终点开始对PathList中所有跳点进行循环探测,判断当前跳点是否更新为障碍物,如果检测到其被更新为障碍物,则调用“跳点
‑
障碍物”处理函数对当前节点进行处理,循环检测直到检测完起点为止;“跳点
‑
障碍物”处理函数:(1)沿当前节点到其子节点方向,对于两者之间的中间节点依次发起探索,搜索不为障碍物的节点,将被探索到的首个不为障碍物的节点,更新为跳点,并标记名为“新起点”,将当前节点的父节点的子节点更换为被探索的节点;(2)沿当前节点到其子节点方向,对于两者之间的中间节点依次发起探索,搜索不为障碍物的节点,将被探索到的首个不为障碍物的节点处,更新为跳点,并标记名为“新终点”,将当前节点的子节点的父节点更换为被探索的节点;(3)以“新起点”为起点,向“新终点”发起探索,进行单层循环的限制长度的JPS探索;(4)依次遍历在首次JPS寻路时得到的OpenList中的节点,找到OpenList中代价值f(n)最小的节点,其父节点必然已存于CloseList,并且沿着父节点方向进行探索,必然能搜索到首次寻路时的起点,而将其连起来所得路径,即为除了得到的最优路径以外,首次探索时没有完成寻路工作的最优的“废弃路径”;(5)令当前OpenList中的节点,递归调用步骤S41至S42中的程序,以检验“最优的废弃路径中”有无障碍物更新的情况,如果检测到了障碍物更新,则会优先处理“最优的废弃路径”中的路径更新;如果未检测到障碍物更新,则跳转至步骤(6);(6)比较步骤(3)中选中的New_OpenList中的跳点的代价值f(n),以及步骤(4)中选中的OpenList中的跳点中的代价值f(n),选择代价值更小的一方,继续执行下一轮的“单层循环的限制长度的JPS探索”,循环执行步骤(3)至(6),每次都选择代价值更小的一方来执行下一轮的“单层循环的限制长度的JPS探索”,直到一方先找到终点为止;如果New_OpenList中的跳点先找到“新终点”,则跳转至步骤(7);如果OpenList中的跳点先找到终点,则跳转至步骤(8);如果New_OpenList中的跳点先一步搜索完毕...
【专利技术属性】
技术研发人员:栾添添,尹昭然,孙明晓,胡占永,王万鹏,甄立强,王楠,张景睿,
申请(专利权)人:哈尔滨理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。