Theta*: 连续环境下平滑的任意角度的路径规划

本文介绍了Theta*算法,一种基于A*的搜索算法,用于寻找连续环境中的平滑、真实感的短路径。Theta*不同于A*,它允许路径不限于图的边,提供更接近于最短路径的解决方案,无需后处理平滑。通过视线算法,Theta*在游戏开发和导航中表现出色,尤其是在路径规划的真实性和效率方面。
摘要由CSDN通过智能技术生成

  此文翻译自这篇文章Theta*: Any-Angle PathPlanning for Smoother Trajectories in Continuous Environments,简单介绍了Theta*算法,这是一种基于A*的搜索算法。笔者翻译不妥的地方,还望谅解。


游戏AI的中心问题之一就是寻找一条看起来真实的短路径。路径规划通常可以分为两部分:简化一个连续的环境为一个离散化的图,并且通过搜索这个图来得到一条从给定的起始点到目标点的路径。视频游戏开发者(和机器人专家)为了解决这个离散问题开发了许多种方法:2D网格(正方形网格),六角形或三角形格子,3D网格(立方体网格),可视图,路点图,空间填充体(spacefilling volumes),导航网格,分层方法像是四叉树,概率道路图(PRMs)和快速探索随机树(RRTs)。

然而,由于A*的简单性和最优性,几乎总是会选择它作为搜索算法。这是因为A*能确保在图中找到一条最短的路径。A*的问题是虽然它能在图中找到一条最短的路径,但是这条路径并不是真实、连续的环境中的最短路径。A*通过图中的边来传播信息和约束路径的形成,图中的边会智能的约束路径的方向。插图1和2是一个连续环境分别离散化为2D网格和导航网格。2D网格和导航网格上的最短路径(插图1和2左侧)比连续环境中的最短路径(插图1和2右侧)更长,看上去更不真实。


插图1:2D网格中路径对比真实路径


插图2: 导航网格中路径对比真实路径


  实际上A*的这种搜索到看上去不真实的较长路径的特性在视频游戏开发者社区中已经被很好的理解了。对于这个问题的一个通常的解决方式是施加一个后处理平滑技术来平滑所得到的路径。然而,选择这种后处理技术来找到一条看上去真实的路径是十分困难的。一个原因是A*搜索只保证找到最短路径的其中一条,然而一些路径可能会比其他路径更有效率的来执行平滑处理。比如A*能非常有效率的在2D网格中找到一条路径,它找到的路径是非常难以做平滑处理的且看起来非常不真实,因为它偏向于找对角线的路径。见插图3中红色的路径。


插图3:使用了平滑处理的A*寻路

  • 13
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值