1. 引言
近年来,随着无人机技术的不断发展,各类型无人机在人们的生活生产中得到了愈加广泛的应用。国家也提出了《通用航空装备创新应用实施方案(2024~2030年)》《中国制造2025》等政策,为推动无人机产业化和实现其管理体系建设、促进生产生活发展做出了理论指南。各行各业积极顺应时代潮流,使无人机在农业、运输、测绘工作以及消防工作(如图1)中得到广泛应用,极大地提高了工作效率,降低人力资源的浪费。
(a) (b)
(c) (d)
Figure 1. The application of drones in production and daily life. (a) Drones irrigate crops; (b) Drones transport supplies; (c) Aerial mspping by drones; (d) Disaster prevention and relief by drones
图1. 无人机在生产生活中的应用。(a) 无人机浇灌作物;(b) 无人机运输物资;(c) 无人机航拍测绘;(d) 无人机防灾救灾
无人机的广泛应用使得越来越多的研究者关注到无人机路径规划问题,以寻求耗能最少、路径最短、运行最安全或最适合环境需要的最佳飞行路径。而良好路径的选择也具有重要的现实性意义,如在运输业中无人机运输能有效地降低运输成本、减少等候时间,在灾难救援中无人机救灾能显著地提升救援速度、减少灾害伤亡等。
关于无人机的路径规划现已有多种可操作算法。常见的方法有Dijkstra算法、A*算法、D*算法等。Dijkstra算法擅长于解决栅格化地图中模拟最短路径的问题,具有可行性高且运算结果较为准确的特征[1]。但是在实际操作过程中,在较为复杂的环境条件下,容易产生路径自交的现象,可能违背寻找最短路径的初衷。A*算法基于Dijkstra算法,并在此基础上附加了启发函数,在运算的准确性方面的性能明显优于Dijkstra算法。但是当环境较为复杂时,A*算法的搜索时间会明显变长、存在消耗内存较大的问题,也更有可能产生局部不平滑的情况[2]。D*算法则在适应复杂环境并搜索得到最优路径方面优于A*算法,但是其运算效率较低,且路径易产生转弯的情况[3]。三种算法不断优化,提升了路径规划策略的有效性,但这三种算法均易出现连接不光滑的问题不容忽视。该问题可能会直接导致作业效能低、无法保证路径安全以及运行时间较长等问题。故路径光滑拼接问题的解决对获得较优路径具有至关重要的作用。
为有效解决路径平滑性问题、获得光滑连接最佳路径,本文采取传统D*算法结合有理Bézier曲线以及无人机自身约束进行路径规划,并根据有理Bézier曲线的相关性质进行光滑性判断。该方法能有效解决传统D*算法路径不平滑的问题,又能较大程度上彰显D*算法路径规划能力较强的特性,故具有较强的可操作性和合理性。
2. D*算法
D*算法又称动态A*算法,它通过“从目标点出发探寻可行的起点的搜索”方法进行路径规划研究,D*算法的兼顾全局和局部的规划特性使其具有节约运算成本的显著优势。
2.1. D*算法启发函数
D*算法的启发函数可以表示为:
. (1)
其中
是从初始点到某一中间节点
的总代价估测值,
是从初始点到某节点
的实际代价,
是从节点
到最终的目标状态的启发代价估计[4]。
启发代价
的计算公式为:
. (2)
其中
为目标终止点,
是
点的扩展节点,
是相邻节点之间的代价值。
2.2. D*算法核心流程(如表1所示):
Table 1. D* Algorithm flow
表1. D*算法流程
算法核心阶段 |
算法核心操作 |
第一阶段:
在全局范围内
进行路径规划 |
步骤1:实验环境数据预处理 根据实际情况,对目标场景中的障碍物以及可行驶区域进行存储,障碍物节点记作1,可运行空间记作0,以便后续搜索操作。 |
步骤2:启发函数初始值设置 确定运行的初始值与终止值,将启发函数的初始值设置为0,以保证后续操作数据的统一性。 |
|
步骤3:数据点迭代操作测试 在可能节点中探寻每一步的最短路径,设为下一步的目标节点,进行路径搜索然后从
原始数据中移除该点,重复上述步骤。 |
步骤4:迭代结束的条件限制 将再次出现初始点的情况,设置为迭代结束情况。 |
第二阶段:
在局部范围内
进行路径规划 |
步骤5:障碍节点标记 将遇见的第一个障碍物标记成为初始障碍物,将其作为父节点,并将它的启发函数初始值
设置为无穷大(
)。 |
步骤6:子节点筛选迭代 遍历所有的子节点,筛选出所有代价值呈降低趋势的节点,选取最短路径对应的节点,作为下一迭代过程的初始点,并进行下一步迭代操作,之后重复该步骤。 |
步骤7:局部更新操作 对局部运算进行更新计算,以保证寻求的路径是符合环境限制的最佳路径。 |
3. Bernstein基函数与Bézier曲线
3.1. Bernstein基函数及性质
称函数
为Bernstein基函数,其表达式为:
. (3)
Bernstein基函数的常用性质有:非负性、单位分解性、对称性质以及变差缩减性等。
有理Bernstein基函数则是对Bernstein基函数的一种推广,其表达形式为:
. (4)
其中
是第
个基函数所对应的权重,
是Bernstein基函数[5]。类似于Bernstein基函数,当
时,有理Bernstein基函数具有非负性、单位分解性和端点性质等常见特性。
3.2. Bézier曲线及性质
3.2.1. n次Bézier曲线的定义及性质
称参数曲线段
. (5)
为一条n次Bézier曲线,其中
为n次Bernstein基函数,空间向量
称为控制顶点[5]。n次Bézier曲线具有凸包性质、几何不变性与仿射不变性、对称性质、变差缩减性等显著特性。
3.2.2. 有理Bézier曲线的定义及性质
有理Bézier曲线是对n次Bézier曲线的常见推广形式。相较于n次Bézier曲线,有理Bézier曲线在控制曲线形状,充分发挥控制定点的控制作用具有更加显著的效果。下面介绍有理Bézier曲线的定义。称有理多项式参数曲线段
. (6)
为一条n次有理Bézier曲线,其中
为n次有理Bernstein基函数,
为控制顶点,
为权因子[5]。
综合考虑
次Bézier曲线和有理Bernstein基函数的性质,可以得到,有理Bézier曲线所具备的性质有:
(1) 凸包性质:如果给出有理Bézier曲线的控制顶点,那么曲线一定在控制顶点所形成的闭包之中。
(2) 几何不变性与仿射不变性:有理Bézier曲线的形状不受几何空间的变换及旋转、平移等仿射变换所影响,它仅与控制顶点和对应的权因子有关。
(3) 退化性质:当所有权因子
相等且非零时,原来的有理Bézier曲线将会变化为n次Bézier曲线。这也说明了有理Bézier曲线与n次Bézier曲线之间的变换与练习。
(4) 几何连续性:对于两条给定的
次和
次有理Bézier曲线
和
,其对应的控制顶点为
和
。
或
处二者连续的条件如表2所示:
Table 2. Continuous situations and the conditions they satisfy
表2. 连续情况及满足的条件
连续情况 |
满足的条件 |
C0连续 |
的起点能与
的终点相连,即:
. |
C1连续 |
连接点
与附近的控制顶点
和
共线,且
和
分别位于连接点的两侧,即:
. |
C2连续 |
在满足
连续条件的基础上,向连接点两端分别延伸两点,使得这五个点满足共面条件,即:
. |
4. 数值实验
4.1. 目标函数设置
根据无人机运行过程中可能的影响因素,本文将目标函数设置为:
. (7)
其中
为路径长度函数,
为路径平滑度函数,
为能量消耗函数[6],
分别为三个主要函数的权重参数,
且
。
该主函数主要由路线长度、平滑性以及能量消耗三部分函数组成,
的参数设置有利于综合考量三种约束条件的作用,并且通过调整三个参数的比重,能有效展现出各个影响因素对实际运行的影响效果的显著程度。
4.2. 约束条件设置
(1) 预防碰撞约束
为防止无人机与虚拟环境中人为设定的障碍物发生碰撞,本文设定一个避障约束,即
. (8)
其中
为曲线点A到障碍物M的最短距离,在实验中,将障碍物均设计成截面半径长度不同的圆柱体,故
可看做无人机到圆柱体边界的最短距离。
(2) 有理Bézier曲线连续性约束:
根据本文3.2.3中(6)的分析,本文采取
连续和
连续对无人机飞行过程中的连续性进行约束,防止飞行过程中出现折点,增加能量损耗。
(3) 控制顶点位置约束:
该过程中为保证无人机在模拟仓库范围内运行,只需要求控制顶点在该范围内即可,故对其控制顶点的位置进行约束,即:
(9)
在实际操作中,为保证无人机飞行空间足够大,将
设置为0.2个单位长度。
(4) 无人机的动力学约束:
无人机自身的构造及其发动机的性能,都导致其自身在速度、加速、加加速度方面具有动力学性能约束[7],即:
(10)
其中
为最大速度,
为最大加速度,
为最大加加速度。
(5) 高度约束:
该约束能有效保证无人机在虚拟空间高度范围内运动,即:
. (11)
其中,根据实验设定,
。
4.3. 环境设定与实验结果
4.3.1. 实验环境设定
该实验选取工商业环境下广泛使用的四旋翼无人机进行模拟实验。首先,构造一个长、宽、高均为20单位长度的空间以模拟空旷的车库环境,以车库一角为原点,正交于该点的长、宽、高所在直线分别为X轴、Y轴、Z轴,建立空间直角坐标系,将坐标为
的点设置为无人机飞行的起点,将坐标为
的点设置为无人机飞行的终点,无人机完全在该三维空间环境中进行飞行活动。假设在该环境中,除下述实验过程中设置的圆柱体障碍物以外不存在其他障碍物的干扰。
4.3.2. 实验过程
该实验的实验过程如下:
(1) 基础环境探究
在三维空间中生成两个水平截面半径为2的圆柱体障碍物,记作障碍物1和障碍物2,生成所有的控制顶点,使得无人机先绕过障碍物1再绕过障碍物2,并保证这两段路线能够进行C1连续光滑拼接。设定目标函数中的参数值为
,进行模拟运行,实验结果如图2所示,该情况下的代价值为
。
下面将本文方法与传统D*算法进行对比分析。两种方法在相同环境条件设置下的图像、代价曲线以及相关数据如图2及表3所示,根据数据可以发现,本文所采用的方法在相同条件下,具有明显较低的总代价值和能量消耗。虽然具有略长的飞行路径及飞行时间,但与D*算法得出结果相差不大,对飞行过程无明显影响。综合考量,本文采用的方法整体具有较强的优越性,实用性更强。
Table 3. The method proposed in this paper is compared with the data under the traditional D* algorithm
表3. 本文方法与传统D*算法下的数据对比
|
本文方法 |
传统D*算法 |
目标函数总代价J |
13.9289 |
20.6070 |
路径长度L |
36.5001 |
34.6410 |
平滑性代价S |
1.0596 |
0.0000 |
能量消耗E |
94.3120 |
171.4286 |
飞行总时长t |
18.2501 |
17.3205 |
(a)
(b)
(c)
(d)
Figure 2. A comparison of images between the method proposed in this paper and the traditional D* algorithm. (a) The main view of the running path of the method proposed in this paper; (b) The costs under the method proposed in this paper; (c) Main view of the running path of the D* algorithm; (d) D* algorithm cost
图2. 本文方法与传统D*算法下的图像对比。(a) 本文方法运行路径主视图;(b) 本文方法的代价;(c) D*算法运行路径主视图;(d) D*算法代价
(2) 目标函数参数影响探究
在(1)的设定下改变
的取值,以探究目标函数各部分对运行结果的影响。由于三个参数满足和为1的条件,故采取分别将一个参数增大,另外两个参数减小的方法进行模拟,在众多实验中,较有代表性的为以下四种情况(如图3所示)。根据结果显示,当选取参数值不当时,容易出现路径折返或代价增加等较差的结果,故选取D*算法收敛速度最快、代价较低的一组参数,即(1)中所设定的一组参数值,即
的值分别为0.1,0.8,0.1。
Figure 3. A comparison of the operation paths and costs under four parameter settings
图3. 四种参数设置情况下的运行路径及代价对比
(3) 障碍物情况下的路径规划研究
在(1)的环境下,设置了两个障碍物。事实上,无人机绕过这两个障碍物进行飞行的过程是将分别绕过两个障碍物的两端曲线利用有理Bézier曲线进行光滑拼接的结果,所以当障碍物数量增多时,只需分别得到绕过相关障碍物的曲线,再利用相同的方法把相连的路径进行光滑拼接即可,如图4所示为有六个障碍物情况下的运行路径,其对应的目标函数总代价J = 17.9695。可以发现,当障碍物逐渐增加时,总代价呈缓慢增大趋势,但不会出现快速攀升现象。故该算法具有较好的稳定性。
(a)
(b)
(c)
Figure 4. Schematic diagram of path planning in the case of five obstacles. (a) The main view of path planning under five obstacles; (b) The top view of path planning under five obstacles; (c) Convergence curve under five obstacles
图4. 五个障碍物情况下的路径规划示意图。(a) 五个障碍物情况路径规划主视图;(b) 五个障碍物情况路径规划俯视图;(c) 五个障碍物情况下的收敛曲线
5. 结论
本文采取传统D*算法,结合有理Bézier曲线的性质和特征,综合考虑四旋翼无人机的飞行特性,设置了适合环境需求的目标函数方程,在正方体模拟仓库环境中进行了多组飞行测试,最终选取了较为合适的目标函数的参数组,得到了代价较小、收敛速度较快的最优飞行路径。该实验对路径的光滑拼接问题进行了有效解决,同时具有代价较小,路径更加优越的优势。
基金项目
辽宁师范大学2025年大学生创新创业训练计划项目(项目编号:S202510165062;项目名称:“神机·妙算”——基于有理Bézier曲线自交问题的无人机路径规划方法研究)。