Science子刊|浙大高飞团队实现无人机「完全自主特技飞行」,成功率100%碾压人类顶尖飞手!

导读

特技飞行涉及复杂的飞行动作,这些动作通常在常规飞行操作中不会执行,因为它们需要不稳定的姿态,本质上具有危险性。然而,这些空中特技对许多飞行动物的生存至关重要,往往是本能行为。例如,雀鹰和猎鹰能够通过垂直或倒置飞行迅速改变速度和方向,以追捕猎物或避开障碍物。蝙蝠擅长在空中翻转并倒挂在洞穴顶部,而乌鸦则展示令人印象深刻的特技来吸引同类。对这些物种而言,特技动作提供了在复杂环境中增强适应性和敏捷性的关键生存技能,用于捕食、栖息和交配。

这引发了一个问题:航空器是否也能通过特技技能获益,提高其飞行能力和适应性?

©️【深蓝AI】编译

论文题目:Unlocking aerobatic potential of quadcopters: Autonomous freestyle flight generation and execution

论文作者:Mingyang Wang, Qianhao Wang, Ze Wang, Yuman Gao, Jingping Wang, Can Cui, Yuan Li, Ziming Ding, Kaiwei Wang, Chao Xu, Fei Gao

论文地址:https://www.science.org/doi/10.1126/scirobotics.adp9905

1、研究背景

目前,学界关于无人机的研究主要涉及敏捷飞行而非特技飞行。而将原本用于敏捷飞行的轨迹优化方法直接扩展到特技动作中仍然存在两个未解决的问题。首先,敏捷飞行的姿态约束仍然依赖于位置,这与用于指定航点及其姿态的传统方法在本质上没有区别。虽然轨迹优化可以确保动力学可行性,但它不能任意组合所需的特技动作。其次,上述方法在规划和控制中都利用了多旋翼飞行器的微分平坦性映射。这种映射已被证明在三维旋转空间SO(3)中存在奇异点,这些奇异点通常发生在无人机倒置或呈现90°俯仰或滚转角度时。虽然普通无人机飞行(最大姿态角60°)通常避开奇异点,但跨越整个SO(3)空间的特技动作必然会接近这些奇异点,这为生成动力学可行的特技轨迹带来了新的挑战。

本研究通过引入一种全面系统来研究四旋翼飞行器的特技潜力,该系统能够在存在障碍物的情况下生成任何所需的特技动作,同时规避微分平坦性奇异点带来的问题。

首先,本文提出了特技轨迹的通用表示方法,支持任何特技动作的组合,如图1A所示。具体来说,作者将这些轨迹的两个基本特征界定为:空间拓扑和姿态变化。前者可简化为一系列关键拓扑航点,而后者可概括为一系列关键姿态,在本文中统称为"特技意图"。用户可以基于设想的动作简明表达他们的特技意图,避开复杂和困难的调整过程。

其次,作者精心设计了一系列考虑特技意图、安全性和动力学可行性的可微分度量(见图1C)。利用这些度量,将特技轨迹的基本要求转化为数值优化过程,即使初始指定的航点不可行,也能高效求解以生成所需的特技动作。

第三,作者广泛分析了由微分平坦性映射引起的奇异点附近的敏感性问题(见图1D)。为避开这一问题,开发了一种称为偏航补偿映射(YCM)的策略。这种方法避免了可能的数值不稳定性,确保特技轨迹满足动力学可行性要求。

图1:对特技飞行动作的表示、生成和执行所提出的策略的说明

该系统部署在两种不同的经典FPV无人机模型上,它们具有不同的轴距和飞行能力(图2B)。地面站提供了环境的可视化表示并生成特技轨迹,用户提供了预期的特技动作(见图2C)。该系统还使用已知地图作为输入(图2A),为用户提供飞行轨迹生成的直观演示。这对FPV特技飞行是自然需求,因为即使是最熟练的飞行员也需要在执行特技动作前熟悉飞行环境。无人机配备嵌入式计算设备,承载完全自主的导航算法,负责轨迹规划、定位和控制(图2D)。广泛的模拟和物理实验证实,该系统实现了以前其他模型无法实现的完全自主特技飞行,使无人机能够超越人类飞行员的表现。

图2:硬件和系统架构规范

结果部分表明,该系统的可行性通过模拟和在真实环境中进行的两种不同飞行挑战进行了评估。第一个实验旨在验证所提出系统在真实特技场景中的实际适用性,而第二个实验则验证了在受限空间中极端动作的稳定性。除了这两个实验外,作者还与中国顶级无人机飞行员之一进行了飞行比较。结果表明,所提出的系统执行的特技动作与专业飞行员相当,同时在测试场景中持续获得更高的成功率。相应的模拟说明了基于指定意图生成轨迹的过程,并通过消融分析定量验证了关键系统模块的必要性。

2.  方法简介

2.1 系统架构

如图2所示,作者开发了一种用于特技动作意图输入、轨迹生成和执行的全面策略。类似于有经验的特技飞行员在执行特技动作前喜欢熟悉新环境的方式,事先构建环境的3D地图是必要的(见图2A)。这些环境细节不仅作为轨迹生成的拓扑参考和障碍约束,还为高速无人机飞行提供定位辅助,详细内容在图1B和补充方法的"走廊生成"部分。特技动作基于特技意图,如图1A所示,并在"特技参数化"部分解释。我们创建了一个基于Unity的视觉交互程序用于地面站操作。图2C和辅助视频S4展示了人机界面如何促进用户输入特技意图并可视化轨迹结果以供用户微调。我们系统的主要特点是特技规划模块,它生成高质量的轨迹(图1C)。因此,在"轨迹表示"和"问题公式化"部分给出了全面的解释。如图1D所示,解决了特技飞行中的偏航敏感性问题,"偏航补偿映射"部分和补充方法提供了基本信息。此外,补充方法包含关于系统控制、定位和硬件相关系统方面的更多细节。

2.2 特技参数化

如引言中所讨论的,特技动作展现出明显且可识别的特征,称为特技意图。我们使用环境中的轨迹拓扑和动作过程中实现的姿态变化对这些特征进行分类,可以进一步定义为关键航点和姿态序列。这两个特征可以表示如下:

$\sigma = \{\sigma_1, \ldots, \sigma_K\}$
$P^\sigma = \{p^\sigma_1, \ldots, p^\sigma_K\}$

其中$K$是输入意图的数量,$\sigma_k \in S^2$是世界坐标系中的向量,表示四旋翼飞行器的推力方向。$P^\sigma$是关键航点,可用于在已知环境$\mathcal{E}$中生成飞行走廊序列$\mathcal{F}$。以功率环为例,这种轨迹通常涉及围绕障碍物沿俯仰轴进行360°翻转,如图1A所示。根据这一描述,环境中障碍物周围的轨迹代表了轨迹在环境中的拓扑结构,可以通过一系列特定航点进一步说明。沿俯仰轴的360°翻转代表了这一动作中的姿态变化,也可以用几个关键姿态概括。

2.3 偏航补偿映射

偏航补偿涉及特定的数学公式和证明。本节简要介绍导致此问题的背景("微分平坦性"部分)、驱动机制("奇异点周围的敏感性"部分)和我们解决问题的主要方法("偏航补偿策略"部分)。

微分平坦性

多旋翼飞行器展现微分平坦性特性,允许飞行器的状态$x$和输入$u$表示为精心选择的平坦输出及其导数的代数函数$\zeta(t)$。四旋翼飞行器的微分输出通常表示为:
$\zeta(t) = \{p(t), \gamma(t)\} = \{p_x(t), p_y(t), p_z(t), \gamma(t)\}$
其中$p \in \mathbb{R}^3$是四旋翼飞行器的位置,$\gamma \in SO(2)$表示影响四旋翼飞行器z轴的旋转角度。微分平坦性映射消除了系统动力学方程中的微分约束,并减少了轨迹表示空间的维度,从而便于无人机的轨迹生成。因此,微分平坦性在规划和控制模块中常用,实现了令人印象深刻的飞行结果。
 

奇异点周围的敏感性

微分平坦性的一个缺点是存在奇异点。Watterson等人证明了构建不引入奇异点的微分平坦性映射是不可能的。因此,常规技术将这些奇异点重新定位到远离正常飞行的区域。例如,当机器人从悬停位置倾斜90°角度时,或当机器人完全倒置时,会出现奇异点。在特技动作中,无人机可达状态跨越整SO(3)空间,这就需要解决这些问题。奇异点对微分平坦性映射的影响包括两个方面:首先,在奇异点处无法计算四旋翼飞行器的状态和输入;其次,奇异点附近的数值不稳定性可以产生不必要的无人机偏航旋转(偏航敏感性问题),即使对于平滑规划

轨迹也是如此。虽然奇异点在数学上是不可避免的,但某些工程实践可以通过条件检查避免未定义的状态。我们提出的技术主要解决这些点附近的数值不稳定性问题。

偏航补偿策略

奇异点周围的敏感性

微分平坦性的一个缺点是存在奇异点。Watterson等人证明了构建不引入奇异点的微分平坦性映射是不可能的。因此,常规技术将这些奇异点重新定位到远离正常飞行的区域。例如,当机器人从悬停位置倾斜90°角度时,或当机器人完全倒置时,会出现奇异点。在特技动作中,无人机可达状态跨越整SO(3)空间,这就需要解决这些问题。奇异点对微分平坦性映射的影响包括两个方面:首先,在奇异点处无法计算四旋翼飞行器的状态和输入;其次,奇异点附近的数值不稳定性可以产生不必要的无人机偏航旋转(偏航敏感性问题),即使对于平滑规划的轨迹也是如此。虽然奇异点在数学上是不可避免的,但某些工程实践可以通过条件检查避免未定义的状态。我们提出的技术主要解决这些点附近的数值不稳定性问题。

偏航补偿策略

从根本上说,$\gamma$表示从四旋翼飞行器z轴延伸的旋转角度,虽然它不能被视为欧拉偏航角。先前的研究倾向于将微分平坦性中的角与欧拉偏航角混淆,因为在低速稳定飞行期间两者几乎等同。然而,随着飞行角度的增加,使飞行器接近奇异点范围,它们之间的差异变得更加明显。因此,我们在特技动作规划过程中避免简单地将视为偏航角。在这里,我们引入变量$d(t) \in \mathbb{R}^3$来表示四旋翼飞行器的航向(而不是角度$\gamma$)如下:
$\gamma(t) = \mathcal{D}(d(t), p(t))$

这种表达允许我们将微分平坦性变量$\zeta(t)$表示为$\tilde{\zeta}(t) = \{p(t), d(t)\}$的函数。通过约束和优化具有物理意义的变量($d$),我们可以确保奇异点周围的敏感性问题不影响特技飞行中的航向。值得注意的是,$d$$p$完全解耦,表明引入$d$后,绕z轴的旋转保持不受限制。在特技动作中,四旋翼飞行器的头部方向始终与前进方向一致。因此,我们直接将航向方向定义为速度方向(即$d = \dot{p}$)。
 

2.4 轨迹表示

使用3D的M段多项式样条$p(t) = \{p_1(t), \ldots, p_M(t)\} \in \mathbb{R}^3$来表示平坦输出轨迹。这里,$T = \{T_1, \ldots, T_M\} \in \mathbb{R}^M_{>0}$表示所有段的持续时间,$T_\Sigma = \sum_{i=1}^{M} T_i$表示整个轨迹的总时间。我们将第i段样条定义为D阶多项式:$p_i(t) = c_i^T \beta(t), \forall t \in [0, T_i]$

其中$D = 2s - 1$$s$是相关积分器链的阶数,$c_i \in \mathbb{R}^{2s \times 3}$是每段的系数矩阵,$\beta(t) = [t^0, t^1, \ldots t^D]^T$是自然基。轨迹的空间和时间轮廓在优化过程中通过采用最小控制努力(MINCO)作为轨迹表示方法被有效变形。MINCO的核心特点是一个线性复杂度平滑映射$c = \mathcal{M}(q, T)$,其中$q = \{q_1, \ldots, q_{M-1}\}$是中间航点。这种映射直接构建了使用任何指定初始和终端条件的积分器链的最小控制轨迹。通过这种方式,优化轨迹参数($q$$T$),可以在空间和时间维度上改变轨迹的形状。

2.5 问题公式化

轨迹优化问题可以公式化如下:

其中优化目标公式中的函数表示控制努力和时间分配。我们可以调整权重$\lambda_t$来实现轨迹平滑性和激进性之间的权衡。公式第一个约束和第二个约束表示与轨迹参数($q$$T$)相关的不等式和等式约束,具体包括动态约束、走廊约束等。第三个约束确保符合特技约束,其中$t^\sigma_k$表示整个轨迹上特技意图的时间,$\mathcal{T} = \{t^\sigma_1, \ldots, t^\sigma_K\}$。我们通过制定惩罚函数或替代变量来移除优化目标公式的所有约束。因此,轨迹生成问题可以重新公式化为无约束优化问题:
$\min_{q,T,\mathcal{T}} H = \sum_{\star} \lambda_\star \mathcal{J}_\star $

其中$\lambda_\star$是惩罚函数$\mathcal{J}_\star$的权重,这个无约束问题可以使用称为L-BFGS(有限内存BFGS)的高效优化器求解。所有约束的详细定义,以及转换为无约束优化函数的过程,可以在补充方法中找到。

2.6 统计分析

我们使用了三种统计分析方法:条形图(图7B)、箱线图(图4C和补充图S6C)和小提琴图(补充图S7B)。条形图显示数据的平均值。箱线图通过显示中位数和四分位距(IQR)总结数据分布,须状延伸到1.5倍IQR;超过这个范围的数据点被视为离群值并在图中表示。小提琴图是一种混合可视化方法,结合了核密度估计的分布信息和箱线图的关键汇总统计信息。每个"小提琴"形状有两个对称的半部分,表示数据在不同值处的概率密度,较宽的部分表示更高的概率集中。

3.  实验与分析

3.1 大规模特技飞行

所提出的系统确保无人机在广阔、非结构化环境中安全自主执行特技飞行。如图3A和3B所示,这项实验涉及一个非结构化环境,包括人工物体和自然植被,跨越一个100米×40米×20米的大体积空间。这个经典场景非常适合人类飞行员展示他们的特技技能,桥梁和众多树木提供了丰富的视觉参考,在飞行过程中需要视觉上复杂的动作。通过预先绘制环境地图并输入特技意图,作者生成了一条220米长的特技轨迹,无缝结合了三种经典动作。图3C展示了每种动作的飞行轨迹和相关姿态变化。所包含的偏航补偿策略使无人机在整个过程中保持朝向飞行方向,防止姿态完全反转时出现任何多余的偏航旋转。图3D中平滑连续的角速度曲线进一步验证了这一效果。

图3:大规模特技飞行结果

此外,为避免可能导致坠毁的过度跟踪误差,所提出的系统旨在生成尽可能平滑渐进的特技轨迹,消除由推力或角速度急剧变化引起的过载。在这个实验中,轨迹规划中的净推力上限仅设置为重力加速度的1.5倍,而最大角速度限制为4弧度/秒。几乎任何四旋翼飞行器都能轻松达到这些物理参数。受益于对特技轨迹施加的严格动态约束,整个规划轨迹中的推力和角速度被严格限制在各自区间内。图3D描绘了关键飞行数据,包括位置和姿态跟踪误差、净推力和三轴角速度。作者使用额外的彩色带来突出这些特技动作执行的时间间隔。在2至4秒、8至10秒和16至18秒的时间间隔内(执行动作期间),位置误差不超过15厘米,姿态跟踪误差保持在12°内。这些跟踪误差与特技动作之间的过渡阶段(即4至8秒和10至16秒的时间间隔)相比没有明显增加。轨迹优化严格限制净推力和角速度保持在动态参数的宽松上限内,确保无人机能够轻松执行特技动作。

3.2 受限空间中的连续特技动作

前面讨论的实验突显了所提出系统在大规模特技飞行场景中取得的令人印象深刻的性能。相比之下,图4所示的实验旨在评估系统在受限空间中生成特技轨迹的能力,这需要无人机在障碍物附近执行动作。如图4C所示,实验将特技飞行限制在仅3.5米高的运动捕捉系统狭窄范围内。隧道、圆形门和旗帜被战略性地放置在环境中作为障碍物。特技意图被纳入系统中,生成了设计用于避开障碍物的敏捷特技轨迹。这包括倒退穿过圆形门和频繁穿过隧道(见图4B和辅助视频S3)。

图4:受限空间中的连续特技动作

值得注意的是,用户只需指定特技意图的大致位置和姿态,无需精细调整具体位置细节。这是因为规划器协助用户自主调整整个轨迹上特技意图的时间和位置。图4B描绘了一个场景,其中用户输入的原始意图过于接近。因此,如果严格遵循现有方法建立的规则,所得轨迹可能不可行。相比之下,所提出的系统逐步调整特技意图朝向更合理的位置,确保生成的动作动力学可行。由于对动态变量施加的严格约束,所提出的模型还能确保高度动态轨迹的稳定执行。在这个实验中,轨迹上大多数位置的飞行速度超过4米/秒,但位置跟踪误差通常保持在0.15米以下(见图4A)。此外,这条特技轨迹在复杂环境中重复了八次。在每次飞行期间,在特技意图点计算了位置和姿态跟踪误差(见图4C)。飞行数据确认了所生成的特技轨迹可以可靠安全地执行。

3.3 特技意图的组合

在前面的部分中,我们简要讨论了特技意图及其相应生成的动作。在本节中,我们进一步描述各种类型的特技意图以及它们可以灵活组合以产生飞行轨迹的各种动作。如图1A描述中所提到的,特技动作的关键组成部分包括空间拓扑和姿态变化,每一个都可以用离散位置和姿态表示。具体来说,如图5所示定义了三种类型的用户意图。第一种意图仅包括位置信息,整个意图序列中的位置按顺序连接以表示相关拓扑。第二和第三种意图还包括姿态方向,为轨迹添加姿态约束,并旨在达到对应姿态的位置。这两种情况的区别在于,第二种意图不限制姿态位置,而第三种意图要求轨迹在保持靠近当前位置的同时达到特定姿态。

尽管这三种意图类型很简单,但它们的组合可以表示各种特技动作(见辅助视频S4)。这里,我们展示了一些经典特技动作对应的意图。在图5B中,每个动作由五个意图表示,不包括起点和终点,其中三个意图提供姿态信息。为强调空间拓扑和姿态的重要性,我们确保五个意图的位置信息完全相同。通过重新排列五个意图的顺序并改变姿态方向,我们有效地生成了表现各种拓扑和姿态变化的特技轨迹。此外,图5B中显示的第一和第三个意图具有相同的位置和姿态方向。然而,由于第三个意图添加了位置约束,轨迹形状被扁平化以在特技意图指定的位置实现倒置姿态。

离散意图不仅允许对不同特技动作进行明确表示,还提供了组合它们的多种可能性。图5A展示了此类轨迹的复杂组合,每个子动作如图5B所示。通过连接离散的特技意图,我们可以轻松地从单个组件组装特技动作,创造更复杂和精细的结果。我们还可以使用图5C所示的三种意图类型的偶然组合,创造出意想不到的特技动作。

图5:各种特技飞行意图及其对应的轨迹

3.4 超越人类飞行员

所提出的系统通过与一位拥有5年专业飞行经验的职业飞行员进行比较进行了进一步评估。S. Zhao在中国无人机竞速比赛中获得过第二名和多次前八名的成绩。虽然主要是赛车手,但他在特技飞行方面也很有技巧,尤其是功率环。在这次比较实验中,他被允许操作自己的无人机和与我们自主平台相同的无人机。飞行员在比赛前有充分的练习机会,使他熟悉环境并根据自己的操作偏好调整无人机。随后,人类飞行员和所提出的系统执行相同的特技动作,具体是倒退穿过一系列1.2米×1.2米的门。在飞行过程中,我们仅关注功率环(飞行员的首选项目),除了门外不引入任何障碍物。

图6A展示了功率环10次成功执行的轨迹形状和姿态变化。颜色和形状表明,人类飞行员保持倒置姿态的时间更长,需要更大的水平和垂直距离恢复到安全姿态。相比之下,所提出系统生成的轨迹将姿态倒置动作限制在更紧凑的区域。这表明当门前存在障碍物时,人类飞行员更容易发生碰撞和坠毁,因为难以纠正飞行器的方向。

我们进一步设计了一个具有挑战性的动作,涉及六个连续的功率环,其中无人机需要倒退穿过六个平行的门。图6C提供了这些尝试的统计数据。虽然人类飞行员单个环的成功率相对较高(约70%),但在连续飞行条件下的整体成功率明显下降,24次尝试中只有3次成功。相反,算法展示了显著的稳定性,五次飞行中取得了100%的成功率。图6B提供了人类飞行员最佳飞行轨迹与算法轨迹的比较。显然,人类飞行员难以在整个飞行过程中保持连续性。飞行员经常需要减速并调整无人机的姿态和方向以对准即将到来的门,导致如图6B所示的轨迹特征是急转弯。最终,图6(A和B)表明人类飞行员难以与门保持安全距离,使他们比自主无人机更容易发生碰撞。

图6:和人类飞行员的比较

4.  结论

本研究旨在开发自主无人机特技飞行系统,通过时空轨迹优化实现复杂环境中的高难度机动。系统核心是通过解耦偏航和位置轨迹(YCM框架)生成安全可行的特技动作,同时支持用户自定义飞行意图。实验表明该系统能生成多样化的避障轨迹,但需依赖已知环境地图进行全局规划。当前系统采用经典几何控制器,未来结合高阶动力学模型可提升控制精度。研究突破了现有轨迹规划算法在复杂环境中的可行性限制,但完全自主的未知环境实时特技飞行仍需在感知-规划-控制全链条取得系统性突破,这将成为下一代无人机机动能力发展的关键方向。

### 基于Patch的MLP在长时间序列预测中的实现与技术 长时间序列预测是一个复杂的问题,通常涉及处理高维数据并捕捉时间依赖关系。基于 Patch 的多层感知机 (MLP) 方法通过将输入序列分割成多个区域(即 patches),从而能够更高效地提取局部特征并减少计算负担。 #### 数据预处理 为了适应基于 Patch 的方法,在进行长时间序列预测之前,需对原始时间序列数据进行分块操作。这可以通过滑动窗口机制完成,其中每个窗口对应一个 patch[^1]。例如: ```python import numpy as np def create_patches(data, window_size): """ 将一维时间序列切分为固定大小的patches。 参数: data: 输入的时间序列数组 window_size: 每个patch的长度 返回: patches: 切分后的二维矩阵,形状为(n_samples, window_size) """ n_patches = len(data) - window_size + 1 patches = np.zeros((n_patches, window_size)) for i in range(n_patches): patches[i] = data[i:i+window_size] return patches ``` 此函数可以用于生成适合后续模型训练的数据集结构。 #### 模型架构设计 对于基于 Patch 的 MLP 架构而言,其核心在于如何有效地利用这些 patches 来构建网络层次。一种常见的方式是先定义一个多层全连接神经网络来分别学习各个 patch 上的空间特性;之后再引入额外的全局聚合层以综合所有局部信息形成最终表示形式。 以下是简化版 PyTorch 实现的一个例: ```python import torch.nn as nn class PatchBasedMLP(nn.Module): def __init__(self, input_dim, hidden_dims, output_dim): super(PatchBasedMLP, self).__init__() layers = [] prev_dim = input_dim # 定义隐藏层 for dim in hidden_dims: layers.append(nn.Linear(prev_dim, dim)) layers.append(nn.ReLU()) prev_dim = dim # 输出层 layers.append(nn.Linear(prev_dim, output_dim)) self.network = nn.Sequential(*layers) def forward(self, x): return self.network(x) ``` 在此基础上还可以加入注意力机制或者残差连接进一步提升性能表现。 #### 训练策略和技术细节 当涉及到长期未来值估计任务时,除了标准回归损失外还可能考虑其他辅助目标比如正则化项等帮助稳定优化过程以及防止过拟合现象发生。另外值得注意的是由于此类问题往往存在较强的自相关性因此合理设置批量大小(batch size),学习率调整计划等因素也至关重要。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值