Teach-Repeat-Replan: A Complete and Robust System for Aggressive Flight in Complex Environments 论文笔记

飞行走廊生成方法

围绕 teaching trajectory 教学轨迹构建飞行走廊,进行时空轨迹优化,提出了一种生成一系列大的凸多面体的方法构成安全飞行走廊,提出基于突集的方法:

  • 不假设凸簇的生长方向,根据密集占用图生成完全无碰撞的多面体。
  • 介绍几个精心设计的注意事项,这些注意事项将显著加快集群的速度。
  • 充分利用了该算法的并行结构,并在gpu中加速了一个数量级。
  • 从构建凸多面体集群到建立轨迹优化约束的完整轨迹。

凸多面体膨胀

构建飞行走廊的核心算法是在给定坐标处寻找最大的自由凸多面体。
使用栅格地图来表示环境,飞行走廊中的每个多面体都是一个体素集的凸包,我们将体素集命名为凸集群。在保持凹凸性的同时迭代膨胀这样一个集群的轨迹:
在这里插入图片描述
以上为迭代膨胀算法,表现为 原始的凸多面体一层一层地迭代膨胀,直到没有可能加入多面体凸集的体素网格。在迭代中,每一个 C+ 中的体素 p+ 需要通过CHECK_CONVEXITY(p+, C, M)判断是否能够保存在可用的凸集中,将光线从 p+ 投射到 C 中每个存在的体素上:
在这里插入图片描述
射线的产生方式如下图:
在这里插入图片描述
在(a)和(b)中,将所有符合条件的邻居体素添加到凸集中。在©和(d)中,由于被占用的体素遮挡了一条射线(绿色箭头)到其中一个体素上,因此测试体素(黄色)被排除在凸集之外。

CPU加速

对所有体素和射线进行迭代使得该多面体膨胀算法不可能实时运行,特别是当栅格地图有一个很好的分辨率(体素更多)。对实现进行了仔细的工程考虑,并提出了一些显著提高整体效率的关键技术:

  • 多面体初始化: 将每个凸集群初始化为一个轴向立方体,这可以非常快地完成膨胀。
  • 当一条射线从一个候选体素遍历到凸集中的一个体素时,当它到达一个标记为内的体素时(即在凸集群内部的体素),我们会提前终止射线投射。
  • 给定一个候选体素,只有外部体素被用来检查它的凸性

GPU加速

我们找到活动集合C *的所有邻居,并检查它们的射线都是同时进行的。
在这里插入图片描述
在并行集合中,同时检测的体素可能会将冲突的体素添加到集合中。因此,我们引入一个额外的变量r来记录体素的顺序信息:
在这里插入图片描述
算法中考虑到候选膨胀体素网格之间的影响,在遍历检验每一个体素网格时除了对凸集合中的体素进行射线连接检验,还需要对已经检验过的候选膨胀体素网格进行射线连接检验,候选膨胀体素网格之间的影响如下图:
在这里插入图片描述
如果只考虑与凸集合内的体素射线连接检查,体素A和体素B都会被加入凸集合,这样破坏了集合的凸优性,添加了对候选体素的检查后,如果A已经加入到凸集合,那么B就不再加入凸集合中,保证了集合的凸优性。

飞行走廊生成与环路消除

用户提供的轨迹可能是任意颠簸的并包含局部循环,我们引入了一种特别设计的机制来消除不必要的循环,排除可重复多面体。

在这里插入图片描述
在检查是否多面体重复时,如果它超出了最后一个多面体(G[−1]),我们进一步检查无人机是否发现了新的自由空间。如果无人机包含在倒数第二个多面体(G[−2])内,我们可以确定教学轨迹有一个环路。
如下图中:
在这里插入图片描述
在©中,无人机离开最后一个多面体并返回到倒数第二个多面体,因此最后一个多面体从走廊中删除。


时空全局轨迹优化

通过 空间和时间选择优化 来解决全局轨迹生成问题。

空间轨迹优化

使用Bernstein基将轨迹表示为分段Bézier曲线,因为它可以很容易地限制在飞行走廊通过加强控制点的约束。包含:

  • 边界约束
  • 连续性约束
  • 安全约束

时间轨迹优化

在空间优化中,给定固定的时间分配,生成走廊约束的空间轨迹。为了在时间上优化轨迹,我们设计了一个重计时函数 { t (τ) : τ→t }来将原始时间变量t映射到一个变量τ:
在这里插入图片描述

时间优化的效果。t 和 τ 为优化前后空间轨迹的时间配置。
一些约束包含:

  • 连续性约束:每一个轨迹片段的末端与下一个轨迹片段的初始转状态一致;
  • 动态可行性约束:速度v、加速度a的最大值约束。

在线局部重规划

在基于假设:

  • 地图环境完美创建并且保持不变;
  • 提供了全局一致的姿态估计。

条件下,一旦全局路径规划完成,无人机将不考虑其他因素执行轨迹。

然而,第一个假设并不总是成立的,特别是当新的障碍突然出现或环境发生变化时。对于第二个假设,我们的全局姿态估计依赖于环路闭合检测,这也不能保证极高的反应率。在姿态漂移明显但没有及时修正环路闭合的情况下,无人机可能会与障碍物发生碰撞。

局部重规划框架

采用快速滑动窗口重规划方法,**欧几里得符号距离场(ESDF)**及时更新。用于障碍规避。

迭代的改进 在每次迭代中,我们检查所有优化控制点的碰撞和可行性。如果检测到碰撞,我们通过增加 λ2 来增加碰撞项 Jc,再次解决优化问题。

由于我们封装局部轨迹以绕过障碍物,因此优化后轨迹总是被拉长。因此,使用原始的时间参数化将不可避免地导致更高的攻击性,这意味着四旋翼飞行器往往飞得更快。然后,它的速度和加速度将很容易超过预定义的限制。因此,我们调整局部轨迹的时间参数化,以挤出动力学上的不可行性。
在这里插入图片描述
通过上面的启发式方法略微扩大b样条的不可行的结点跨度,迭代延长时间,直到得到可行解或超过最大迭代极限。vm 和 am 分别是不可行的速度和加速度
如果调整时间后不存在可行解,则增大动态可行性惩罚的权重,再次优化轨迹。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: rrt*fn-replan 是一种基于Rapidly-exploring Random Trees (RRT) 的自适应路径规划算法。它是对传统RRT算法的改进和扩展,主要用于无人机、机器人等环境中的路径规划。 该算法结合了RRT*(RRT的改进版)和fn-replan(自适应路径规划)的思想,具有高效性和鲁棒性。 首先,RRT*算法是一种用于解决无人机、机器人在复杂环境中路径规划问题的算法。它通过随机采样方式建立一棵探索树,快速探索整个搜索空间。然后,它进行重连和优化操作,以改善树的质量,并生成近最优路径。 而fn-replan则是一种基于动态环境的自适应路径规划方法。它通过对环境变化进行监测,当环境变化时,重新规划路径,以适应新的环境。这种方法可以提供更高的安全保障和路径规划的准确性。 rrt*fn-replan结合了以上两种方法的优势。它在建立RRT探索树时,采用RRT*的思想,通过重连和优化操作获得近最优解;同时,它还能够动态地监测环境的变化,并在环境发生改变时,使用fn-replan进行路径的重新规划。 这种方法能够有效应对无人机、机器人等领域中动态环境下的复杂路径规划问题。它结合了RRT*和fn-replan的优势,既能保证路径质量,又能适应环境的变化。因此,rrt*fn-replan算法在无人机、机器人等领域中具有广泛的应用前景。 ### 回答2: rrt*fn-replan是一种基于Rapidly-exploring Random Tree (RRT) 结构的路径规划算法,用于在动态环境中重新规划路径。该算法的核心思想是通过生成和探索随机样本的方式来构建一棵树,以找到从起始点到目标点的最优路径。 RRT*算法通过在RRT中引入优化步骤,可以获得更加高质量的路径。而与RRT*相比,rrt*fn-replan结合了fn-replan的方法,将路径规划与目标检测相结合,实现了在动态环境中的路径规划。 在rrt*fn-replan算法中,当检测到环境中存在障碍物时,会使用fn-replan方法进行重新规划。fn-replan算法一般是通过将环境模型化为网格地图,并使用A*等搜索算法来规划路径。当环境发生变化时,fn-replan可以及时调整路径。 在rrt*fn-replan算法中,RRT*用于在动态环境中找到最优路径的大致方向,而fn-replan用于在局部区域中根据实时的障碍物信息进行路径优化。通过这种结合的方式,能够在一定程度上平衡全局路径规划和局部障碍物避难,使得路径更加灵活和可行。 总的来说,rrt*fn-replan算法是一种应对动态环境的路径规划方法,通过结合RRT*和fn-replan的思想,在全局和局部范围内进行路径规划和优化,以适应实时变化的环境。这种算法在自动驾驶、机器人导航等领域有着广泛的应用前景。 ### 回答3: rrt*fn-replan是一种用于路径规划的算法。在机器人或无人车等自主导航系统中,路径规划是一个重要的任务,它决定了如何从起始点到达目标点,并避免遇到障碍物。 rrt*fn-replan是一种基于Rapidly-exploring Random Trees(RRT)和动态重规划的改进算法。RRT是一种随机采样的树结构,用于快速构建路径并探索未知环境。而动态重规划是指在执行路径时根据感知信息重新规划路径,以适应环境的实时变化。 在rrt*fn-replan中,首先利用RRT算法生成一条初始路径。然后,在路径执行过程中,不断根据感知信息更新路径,以避免与障碍物碰撞。这个更新的过程是动态的,即在生成初始路径后,根据传感器等获取的环境信息进行重规划。这样可以实时应对环境的变化,提高路径规划的效果和安全性。 rrt*fn-replan的优势是在路径规划过程中结合了RRT和动态重规划,使得路径能够更好地适应变化的环境。与传统的固定路径规划相比,它更加灵活和鲁棒,能够应对突发情况和环境变化。通过不断重规划路径,可以避免与障碍物碰撞,大大提高了路径的安全性。 总之,rrt*fn-replan是一种基于RRT和动态重规划的路径规划算法,它的优势在于能够实时更新路径以适应环境变化,提高路径的安全性和鲁棒性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

聪明小張

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值