一架无人机要从仓库入口飞到指定货架,需要选择通道、绕过障碍、安排飞行速度,并根据途中获得的观测更新计划。这些决策共同决定了它将沿着怎样的路线、以怎样的方式完成任务。

无人机路径规划研究的就是这类问题:在任务目标、环境条件和飞行能力的约束下,设计满足任务要求的运动方案。本文先说明规划在自主飞行系统中的位置和核心技术,再概览主要研究方向,最后给出一条学习路线,并链接到本系列的对应文章。

一、路径规划在自主飞行中的位置

无人机自主飞行涉及感知、定位、建图、规划和控制。感知与建图描述周围环境,定位与状态估计描述无人机自身的运动,规划决定接下来的行动,控制根据反馈调整飞行状态:

传感器

感知与建图

定位与状态估计

规划:路径 → 轨迹

控制:推力与姿态

飞控执行

传感器

感知与建图

定位与状态估计

规划:路径 → 轨迹

控制:推力与姿态

飞控执行

其中,路径、轨迹和控制分别关注运动的不同层次。

概念 核心问题 例子
路径规划 从哪里经过? 沿右侧通道绕过货架,到达目标区域
轨迹规划 什么时候经过,以什么状态运动? 在直线段加速,转弯前减速,在目标处停止
控制 怎样让飞机执行计划? 根据位置与速度误差,调整推力和姿态

路径描述运动的几何形状,轨迹进一步给出时间安排。同一条路径可以采用不同的速度安排,形成不同的轨迹。

“运动规划”通常用于统称对机器人运动的规划,研究对象可以是几何路径,也可以是包含速度、姿态和控制输入的运动过程。

二、核心技术:从环境到运动

1. 环境表示与碰撞检测

规划首先需要一个可计算的环境模型。

占据地图记录空间的占据情况,例如空闲、被障碍物占据或尚未观测。三维地图常用小立方格划分空间,这些小格称为体素。在体素中还可以存储距离信息,例如 ESDF(欧氏符号距离场),为避障提供到障碍边界的距离及内外关系。

地图需要与无人机的几何模型配合使用。无人机具有机体尺寸,某些情况下还需要考虑姿态对通行空间的影响。使用球形包络描述机体时,可以相应膨胀障碍物,将机体的避障问题转化为中心点在剩余空间中的运动问题。

构型空间描述机器人所有可能配置的集合。对于仅考虑平移的模型,位置就可以作为构型;考虑机体朝向时,构型还包含姿态。结合障碍物,可以进一步划分出自由空间与障碍空间。

碰撞检测负责判断候选运动是否与障碍相交,检查对象包括位置点、连接线段和整段曲线。地图、机体模型与碰撞检测共同定义了规划中的几何可行性,详见《构型空间、地图与碰撞检测》。

2. 几何路径规划

在给定起点、终点和障碍物的条件下,几何路径规划寻找一条位于自由空间中的路线。图搜索与采样规划是两类基础方法。

图搜索将候选位置表示为节点,将可行连接表示为边,并给边设置距离等代价。Dijkstra 按已经找到的到达代价组织搜索;A* 加入对剩余代价的估计,引导搜索接近目标。

采样规划在连续空间中选取样本,通过碰撞检查建立连接。PRM 构建可供查询的路线图,RRT 通过不断扩展搜索树探索空间,RRT* 进一步调整连接以改善已有路径。

这两类方法可以组合使用。例如,PRM 生成路线图后,可以通过图搜索找到连接起终点的路径。

3. 动力学运动规划

飞行器的后续运动能力取决于当前状态。处于同一个位置时,高速前进与悬停对应不同的转弯、减速和避障需求。因此,动力学运动规划将位置、速度等量共同纳入状态,并根据运动模型寻找可行运动。

入门时可以从双积分器模型理解这种关系:加速度改变速度,速度改变位置。给定初始状态、加速度和持续时间,就可以计算一段运动及其终点状态。

这样的短时运动可以作为运动基元。Kinodynamic A* 将运动基元用于搜索扩展,使候选路径在生成过程中接受动力学约束检查。

多旋翼动力学进一步描述推力、姿态和运动之间的关系。微分平坦性则为位置、偏航及其导数与飞行状态、控制输入建立联系,帮助将轨迹设计与飞行动力学结合起来。

4. 连续轨迹生成

轨迹生成安排无人机随时间变化的运动,处理航点、起终状态、分段时间和段间连续性。

例如,飞过两个相连的通道时,轨迹需要逐渐改变运动方向,并安排合适的速度与加速度。常见表示包括分段多项式、Bézier 曲线和 B 样条。它们用有限个系数或控制点描述整条连续曲线。

Minimum Jerk 和 Minimum Snap 是常见的平滑轨迹生成方法。Jerk 表示加速度的变化率,Snap 表示 Jerk 的变化率。这类方法以相应导数的平方积分作为代价,在边界和连续性约束下求解轨迹。

生成轨迹时,还需要检查速度、加速度、推力等限制,使运动满足所采用模型的可行性要求。

5. 轨迹优化

轨迹优化通过调整曲线参数、分段时间或控制输入,综合处理飞行效率、平滑性和约束。

目标函数表达希望改善的性能,例如缩短飞行时间、减小运动变化或增加障碍间距。硬约束规定必须满足的条件,例如起终状态和输入范围。软惩罚通过代价反映约束违反程度,最终结果还需要进行可行性检查。

避障优化有两种常见思路。距离信息方法利用障碍距离及方向信息调整轨迹;安全飞行走廊方法在自由空间中构造相互衔接的凸区域,再将对应轨迹段约束在区域内。

优化既可以用于改善搜索结果,也可以直接参与轨迹生成。搜索通常提供路线或初值,优化进一步调整连续运动的形状与时间。

6. 在线重规划与安全执行

飞行过程中,地图和状态估计持续更新,规划器据此修正后续运动。

全局规划关注到达目标的整体路线,局部规划关注近期可执行的运动。局部规划会结合当前观测、已有路线和飞行状态,反复生成新的轨迹。

在线重规划需要处理计算延迟、新旧轨迹衔接和执行误差。例如,新轨迹开始执行时,无人机已经沿旧轨迹前进了一段距离,因此规划起始状态需要与接续时刻匹配。

安全执行还涉及感知范围、制动能力、跟踪误差和规划失败后的备用策略。无碰撞性由地图与机体模型定义,动力学可行性由运动模型与约束定义,可跟踪性取决于控制能力,整体安全则需要结合环境、误差与反应延迟共同分析。

这些技术在系统中相互配合。几何路线可以作为轨迹优化的初值,动力学搜索可以直接生成运动候选,在线规划则持续更新和验证后续计划。

三、主要研究方向

不同任务会改变规划的目标、可用信息和约束,从而形成不同研究方向。

研究方向 关注的问题 主要内容
局部运动规划 在复杂障碍环境中生成可执行轨迹 动力学搜索、轨迹优化、在线重规划
动态障碍规划 根据障碍物的运动安排通过时机 运动预测、时空规划、时间相关碰撞检测
自主探索 选择能够获取新信息的飞行目标 前沿、视点选择、可见性、信息增益
覆盖与巡检规划 按任务要求观察或服务一个区域 区域覆盖、传感器视野、访问顺序
多无人机协同 分配任务并协调多架无人机的运动 任务分配、冲突消解、协同轨迹规划
不确定性与安全规划 在定位、地图和预测误差下控制风险 鲁棒规划、概率约束、安全备用策略

以仓库为例,飞往已知货架属于目标导航;寻找尚未观测的通道属于探索;完成全部货架的观测属于覆盖与巡检;安排多架飞机分区作业则涉及任务分配与协同规划。

环境还可以从两个独立维度描述:已知与未知表示已经掌握多少环境信息,静态与动态表示环境是否随时间变化。一座尚未测绘、内部物体静止的仓库,就是未知的静态环境。

求解方法也具有不同侧重。图搜索组织离散候选,采样探索连续空间,优化调整运动参数,学习方法从数据或交互经验中获得决策能力。例如,可以学习障碍物运动预测,或根据传感器观测生成候选轨迹,再与规划和控制模块结合。

任务、环境和方法可以交叉组合。多无人机在未知环境中协同探索,就同时涉及目标选择、信息获取、机间协调和运动规划。

四、学习路线

学习可以沿着“描述问题—寻找路径—生成运动—研究具体任务”的顺序展开。

规划建模、地图与碰撞检测

图搜索与采样规划

运动模型、轨迹生成与基本优化

选择研究方向

阅读代表方法、实现与实验分析

规划建模、地图与碰撞检测

图搜索与采样规划

运动模型、轨迹生成与基本优化

选择研究方向

阅读代表方法、实现与实验分析

第一阶段:建立几何规划基础

从构型空间、自由空间、障碍物膨胀和碰撞检测开始,理解地图如何转化为规划问题(构型空间与碰撞检测)。随后学习 Dijkstra 与 A*,再对照学习 RRT 与 RRT*。

这一阶段需要掌握节点或状态的定义、候选连接的生成方式、路径代价与碰撞检查。理解启发函数如何影响搜索,以及采样如何帮助探索连续空间。

一个适合入门的练习是在二维栅格环境中实现 A*,再在相同障碍布局中实现 RRT,观察两者的扩展过程、规划耗时和所得路径。

第二阶段:建立轨迹与动力学基础

从位置、速度、加速度和双积分器模型出发,学习状态传播与运动约束(从路径到轨迹)。随后学习多项式轨迹、分段多项式以及 Minimum Jerk / Snap,理解如何生成带时间安排的轨迹。

在此基础上,用 Kinodynamic A* 连接搜索与运动模型,用基本的轨迹优化连接目标函数、约束和轨迹参数。同时了解轨迹跟踪与在线重规划,使生成的运动能够与执行过程衔接。

可以围绕一组航点生成轨迹,绘制位置、速度和加速度曲线,再调整分段时间,观察运动需求如何变化。

第三阶段:围绕任务深入

研究方向决定后续知识的侧重点。

局部飞行侧重动力学、轨迹参数化、避障优化与重规划;探索和巡检侧重可见性、视点价值与访问顺序;动态障碍和多机规划侧重时间关系、运动预测与冲突消解;不确定性规划侧重误差建模、风险表达和安全条件。

选择学习辅助规划时,需要进一步理解数据、训练目标与规划模块之间的关系,并通过新环境中的表现评估泛化能力。涉及反馈执行与约束控制时,可以继续学习最优控制和模型预测控制(MPC)。

这一阶段可以选定一个具体任务,明确环境信息、运动模型、评价指标和基准方法,围绕它组织理论学习与实验。

第四阶段:通过代表方法理解系统设计

局部规划方向可以研究 Fast-Planner 如何结合动力学搜索与 B 样条优化,研究 EGO-Planner 如何利用局部障碍信息构造避障优化,再通过 MINCO / GCOPTER 理解结构化轨迹参数化与时空联合优化。

其中,MINCO 是轨迹参数化方法,GCOPTER 是相关轨迹优化框架。探索方向可以研究 FUEL 中的访问路线和观测视点选择;未知环境安全导航可以研究 FASTER 中的备用轨迹设计。更多方法和代码入口见《无人机路径规划开源算法总结》。

阅读时,先整理输入、输出、建模假设和模块关系,再研究决定算法行为的核心公式。实现可以从单个模块开始,通过简单场景验证,再逐步增加障碍复杂度、地图变化和执行误差。

实验分析关注规划耗时、任务完成情况、路径或轨迹质量,以及具体失败原因。将结果与建模假设联系起来,可以进一步发现需要改进的环节。

五、相关基础知识

不同规划问题会用到不同的数学知识,本系列的数学基础部分(从线性代数开始)按这些需求整理:

应用内容 对应基础
空间位置、距离与几何关系 向量、范数、坐标变换
图搜索与采样规划 图结构、代价函数、基本概率
运动模型与状态传播 导数、积分、微分方程、离散化
多项式轨迹生成 线性方程组、二次型、等式约束优化
轨迹优化 梯度、链式法则、凸性、约束优化
不确定性建模 随机变量、概率分布、协方差

例如,学习多项式轨迹时,可以结合航点和连续性条件理解线性方程组;学习避障优化时,可以结合轨迹如何远离障碍理解梯度;学习状态传播时,可以结合速度和位置的变化理解积分。

随着问题从几何路线发展到连续运动,再扩展到信息获取、协同与风险控制,这些基础知识也会逐步联系起来。

小结

无人机路径规划以环境表示和运动建模为基础,通过搜索、采样、优化或学习生成运动方案,再通过反馈与重规划适应飞行中的变化。导航、探索、巡检和多机协同赋予这些技术不同的任务目标。

从几何规划进入,逐步学习轨迹、动力学和优化,可以建立共同基础;围绕具体任务阅读方法、实现算法和分析实验,则能够进一步形成对研究问题的理解。