3. 编队几何与队形描述方法

要让多架无人机保持一个队形,第一步不是设计控制器,而是把“队形”这件事用数学语言说清楚。只有把队形写成可计算、可比较、可传递的量,控制器才知道每架无人机应该飞向哪里、偏差有多大。本节围绕五种描述手段展开:队形参数化、相对位置向量、图论描述、邻接矩阵与拉普拉斯矩阵、队形误差定义。它们不是并列的五个知识点,而是一条从“几何形状”到“代数工具”再到“控制指标”的递进链条。

一、队形参数化:把形状压缩成少数几个量

队形参数化是指用一组参数来刻画整个编队的几何形状,而不是逐架记录坐标。最常见的参数化方式是“参考点 + 形状向量”。设编队有一个虚拟参考点 p_c = (x_c, y_c, z_c),它可以是编队几何中心、领航机位置或任务航路点。每架无人机相对参考点的期望偏移记为 d_i,则期望位置为 p_i^d = p_c + d_i。这样,编队的平移由 p_c 决定,形状由集合 {d_i} 决定,旋转和缩放则可通过一个旋转矩阵 R(ψ) 和尺度因子 s 作用在 d_i 上实现。

举例来说,一个四机菱形编队,若相邻间距为 10 m,可令参考点为菱形中心,四个期望偏移取 (0,10,0)、(10,0,0)、(0,-10,0)、(-10,0,0)(单位:m,机体系 x 向前、y 向右、z 向下)。当编队需要整体转向 30° 时,只需对四个偏移统一左乘旋转矩阵,而不必重新设计队形。参数化的价值就在这里:形状与运动解耦,改变航向、间距、队形类型时只改少量参数。

二、相对位置向量:描述“谁相对谁”

参数化给出的是绝对期望位置,而编队控制中更常用的是相对位置向量。对无人机 i 和 j,定义 p_ij = p_i - p_j,它表示 i 相对 j 的位置。期望相对位置记为 d_ij = d_i - d_j。相对位置向量的好处是天然消去了参考点:只要每架无人机与邻居保持正确的相对位置,整个编队即使没有全局定位也能维持形状。这正是编队控制区别于单机轨迹跟踪的关键——约束的是“关系”,而不是“绝对坐标”。

需要注意的是方向约定。本文统一采用 p_ij = p_i - p_j,即“从 j 指向 i”。若在代码中写成 p_j - p_i,则所有期望相对向量和误差符号都要同步取反,否则控制器会朝相反方向修正。参照系切换时必须显式说明,这是编队实现中最容易出错的地方之一。

三、图论描述:节点与边

把每架无人机看作一个节点,把“需要保持相对位置”的一对无人机看作一条边,编队就变成一个图 G = (V, E)。节点集 V = {1,2,...,N} 对应 N 架无人机,边集 E 表示通信或感知关系。若 i 能获得 j 的信息且 j 也能获得 i 的信息,则为无向边;若只有 i 能获得 j 的信息,则为有向边。边的存在意味着一条约束:p_i - p_j → d_ij。

图的结构直接决定编队能否被唯一确定。一个连通图若包含足够多的独立边,使所有相对位置约束能固定整个形状,则称该队形是刚性(rigid)的。直观地说,三角形是刚性结构,而四边形若只连四条边则可以“压扁”,需要增加一条对角线才刚性。因此设计队形时,除了画形状,还要检查图的刚性,否则控制器可能收敛到一个被扭曲的形状。

编队图论描述与矩阵对应关系 图 G=(V,E):节点与边 1 2 3 4 实线:刚性边 虚线:附加约束边 邻接矩阵 A 1 2 3 4 1 2 3 4 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 拉普拉斯矩阵 L 1 2 3 4 1 2 3 4 3 -1 -1 -1 -1 3 -1 -1 -1 -1 3 -1 -1 -1 -1 3 L = D − A:对角元为节点度,非对角元为 −1;L 的零特征值个数 = 连通分量数

四、邻接矩阵与拉普拉斯矩阵

图可以用矩阵精确表示。邻接矩阵 A 的元素定义为:若 i 与 j 之间有边,则 a_ij = 1,否则为 0;无向图满足 A = A^T,且对角元为 0。度矩阵 D 是对角矩阵,d_ii 等于节点 i 的邻居数。拉普拉斯矩阵定义为 L = D - A,其对角元为节点度,非对角元在存在边时为 -1。

拉普拉斯矩阵之所以重要,是因为它把“图结构”和“一致性协议”直接联系起来。考虑一阶积分模型 ṗ_i = u_i,若取控制律 u_i = -Σ_j a_ij (p_i - p_j - d_ij),则整个编队的误差动态可写成 ė = -L e(e 为堆叠误差向量)。L 的特征值决定了收敛速度:连通无向图的 L 有且仅有一个零特征值,其余特征值均为正,最小非零特征值 λ₂ 称为代数连通度,λ₂ 越大,编队收敛越快、抗扰越强。因此,设计通信拓扑时,增加关键边以提高 λ₂,是提升队形保持性能的直接手段。

五、队形误差定义

有了期望相对位置,就可以定义误差。对每条边 (i,j),相对位置误差为 e_ij = (p_i - p_j) - d_ij。整个编队的队形误差可用所有边误差的平方和衡量:E_form = Σ_{(i,j)∈E} ||e_ij||²。这个标量指标适合在仿真或飞行日志中观察队形保持的整体质量。

实际工程中还需要区分两类误差:一是队形形状误差,即相对位置偏差,反映“队形有没有变形”;二是编队跟踪误差,即编队参考点与期望航路的偏差,反映“整个队形有没有飞偏”。两者要分开评估,否则无法判断问题出在队形控制器还是航路跟踪器。一个常用的判据是:若 E_form 收敛到小值而参考点误差较大,说明队形保持正常但航路跟踪有问题;反之则说明队形本身在发散。

教学示例:四机菱形编队,间距 10 m,取 d_1=(0,10,0)、d_2=(10,0,0)、d_3=(0,-10,0)、d_4=(-10,0,0)。若某时刻实测 p_1-p_2=(1,9,0),则 e_12=(1,9,0)-(0,10,0)=(1,-1,0),该边误差模长为 √2≈1.41 m。逐边计算后求和,即可得到当前队形误差。

把上述工具串起来看:参数化定义“期望形状”,相对位置向量定义“约束内容”,图论定义“约束在谁之间”,邻接矩阵与拉普拉斯矩阵把约束变成可运算的代数对象,队形误差则给出“当前离目标有多远”的量化指标。这五者共同构成编队控制问题中“描述—建模—评估”的完整基础,后续的一致性协议、编队控制器和队形切换都建立在这一套描述之上。