【技术实现步骤摘要】
一种基于冲突分类搜索的多机器人路径规划方法
[0001]本专利技术属于多机器人路径规划
,特别涉及一种基于冲突分类搜索的多机器人路径规划方法。
技术介绍
[0002]多机器人路径规划是多机器人领域的重要研究问题之一,合理高效的多机器人路径规划方法能够提高多机器人系统的工作效率和经济收益。多机器人路径规划在多机器人协同控制、智能仓储以及交通控制等领域都有实际应用。
[0003]多机器人路径规划问题受到研究者的广泛关注并提出了许多研究方法。中国专利CN113985880A公开了“多机器人路径规划方法、多机器人系统及机器人”,该专利所述方法能够避免两个或两个以上的机器人在同一段窄道中相向而行造成拥堵,提高多机器人系统的工作效率,但该方法依赖环境的特殊性,适用范围有限。中国专利CN112362063A公开的“基于碰撞类型划分的多机器人路径规划方法和系统”,根据两个机器人的相对位置划分冲突类型,该方法优点是能够快速重规划出避免冲突的新路径,实现简单,但是无法保证算法最优性。
[0004]基于冲突搜索(conflict
‑
based search,CBS)算法及其部分改进算法是能够为多机器人路径规划问题求得最优解的一类算法。基于冲突搜索算法具有两层结构,高层构建一棵二分结构的约束树,约束树的节点包括约束、解和代价三部分。高层按代价值由低到高的顺序选择并扩展约束树中的节点。对于选中的当前节点若其解是一组无冲突路径,则将当前节点作为目标节点;否则,针对当前节点中的冲突,分别添加约束并扩展出左右 ...
【技术保护点】
【技术特征摘要】
1.一种基于冲突分类搜索的多机器人路径规划方法,其特征在于,包括步骤如下:步骤1,在已知的环境地图中使用A*算法为机器人规划出从起始点位置到目标点位置的最短路径集合;使用最短路径集合作为根节点的解;步骤2,将根节点标记为当前子节点,按时间顺序检测当前子节点的最短路径集合中是否存在冲突;若不存在冲突,则直接转到步骤10;若存在冲突,则转到步骤3进一步检测冲突的关键属性;步骤3,依据关键属性冲突分为关键冲突和非关键冲突;若冲突是关键冲突则转到步骤4,若冲突不是关键冲突,即是非关键冲突,则转到步骤9,进行冲突消解;当关键冲突和非关键冲突同时存在时,优先消解关键冲突;步骤4,关键冲突依据类型属性,分为关键顶点冲突和关键边冲突;若为关键顶点冲突转向步骤5,进行再分类;若为关键边冲突转向步骤8,进行冲突消解;步骤5,关键顶点冲突依据方向属性,分为关键相向顶点冲突和关键交叉顶点冲突;若为关键相向顶点冲突,转向步骤6进行冲突消解;若为关键交叉顶点冲突,转向步骤7进行冲突消解;若存在多个关键顶点冲突时按时间顺序进行消解;步骤6,扩展节点,消解关键相向顶点冲突,完成子节点扩展后转到步骤10;步骤7,更新节点,消解关键交叉顶点冲突,完成子节点更新后转到步骤10;步骤8,扩展节点,消解关键边冲突,完成子节点扩展后转到步骤10;步骤9,扩展节点,消解非关键冲突,完成子节点扩展后转到步骤10;步骤10,在扩展出的全部新一代子节点中选择代价值最小的节点作为当前子节点,返回步骤2,直到得到具有无冲突路径集合的目标节点G,目标节点G的解即为多机器人路径规划问题的解决方案。2.根据权利要求1所述的基于冲突分类搜索的多机器人路径规划方法,其特征在于,步骤2所述冲突表示为(a
i
,a
j
,X,t),即机器人a
i
和a
j
在t时刻共同占用元素X,其中元素X为一个顶点v或一条边(u,v)。3.根据权利要求2所述的基于冲突分类搜索的多机器人路径规划方法,其特征在于,步骤3所述关键冲突定义为:若在冲突(a
i
,a
j
,X,t)中机器人a
i
全部代价为c
i
的路径都在t时刻占用元素X,并且机器人a
j
全部代价为c
j
的路径都在t时刻占用元素X,则冲突(a
i
,a
j
,X,t)为关键冲突。4.根据权利要求3所述的基于冲突分类搜索的多机器人路径规划方法,其特征在于,步骤5所述关键相向顶点冲突为:若机器人a
i
在t
‑
1和t+1时刻分别占用顶点u和w,机器人a
j
在t
‑
1和t+1时刻分别占用顶点w和u,即机器人a
i
和a
j
交换彼此在t
‑
1和t+1时刻占用的顶点,则将关键顶点冲突(a
i
,a
j
,v,t)确定为关键相向顶点冲突(a
i
,a
j
,u,v,w,t);步骤5所述关键交叉顶点冲突为:若机器人a
i
在t
‑
1和t+1时刻分别占用顶点u和w,但机器人a
j
在t
‑
1时刻不占用顶点w或机器人a
j
在t+1时刻不占用顶点u,即机器人a
i
和a
j
不交换彼此在t
‑
1和t+1时刻占用的顶点,则将关键顶点冲突(a
i
,a
j
,v,t)确定为关键交叉顶点冲突5.根据权利要求4所述的基于冲突分类搜索的多机器人路径规划方法,其特征在于,步骤6所述消解关键相向顶点冲突,具体为:
步骤6.1,高层针对关键相向顶点冲突(a
i
,a
j
,u,v,w,t)添加约束(a
i
,u,v,t)即机器人a
i
在t时刻禁止占用顶点u和v,扩展出左子节点;添加约束(a
j
,w,v,t)即机器人a
j
在t时刻禁止占用顶点v和w,扩展出右子节点;步骤6.2,低层为机器人a
i
重新规划从起始位置s
i
到目标位置g
i
并且满足约束(a
i
,u,v,t)的最短路径p
i
';将路径p
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。