一种基于Dijkstra的多约束条件下智能飞行器航迹规划算法
程凝怡1, 刘志乾2, 李昱奇1     
1. 中国石油大学(北京) 安全与海洋工程学院, 北京 102249;
2. 中国石油大学(北京) 机械与储运工程学院, 北京 102249
摘要: 针对智能飞行器最优航迹快速规划问题,考虑误差约束及校正概率约束,构建多约束条件下智能飞行器航迹规划模型,并提出基于Dijkstra的全局搜索算法求解模型。所提算法通过计算剩余误差和约束飞行距离,对基础Dijkstra算法进行改进,使其在求解多约束条件下航迹规划问题时具有更好的适应性。同时,以航迹长度最短且满足误差约束为目标开展仿真实验,仿真实验结果为飞行器到达终点时共经过18个校正点,航迹长度144 287.932 m,垂直误差为17.254个单位,水平误差为6.420个单位,结果均满足误差要求,表明多约束条件下智能飞行器航迹规划模型和基于Dijkstra的全局搜索算法在解决此类问题方面具有一定的合理性。
关键词: Dijkstra算法    误差校正    航迹规划    误差约束    校正概率约束    

智能飞行器是在无人机技术基础上发展的一种高科技飞行设备, 最先用于军事侦查[1], 由于其体积小、质量轻、机动性强, 逐渐被广泛应用于人员搜救、航拍、物资输送等方面[2]。航迹规划技术是实现飞行器自主飞行并完成各种复杂飞行任务的关键[3], 其具体定义为在特定的飞行环境下, 在起点和目标点之间规划出基于约束条件的所有可能飞行路径, 它是一个包含多优化目标和多约束条件的非线性规划问题[4]

一方面, 随着智能飞行器的日渐发展, 多约束条件下无人机航迹快速规划算法已经成为飞行器快速规划航迹的核心研究内容, 诸多学者在这方面做了大量研究。其中解决航迹快速规划问题的常用算法有[5]:Dijkstra算法、人工势场法、模拟退火算法、A*算法、遗传算法、蚁群优化算法和粒子群优化算法。2008年沈延航和周洲[6]结合非线性规划方法、启发式搜索算法和最大值处理原理分别对攻击型无人机爬升、巡航、待机搜索阶段进行优化处理, 得到性能效益好、作战效益高的飞行航迹。2009年严江江等[7]针对三维航迹规划的实时性问题, 提出一种基于可行性优先的三维航迹规划方法。2012年李素娟[8]引入无人机飞行任务与战术目标约束, 建立系统的航路规划约束模型, 同时改进A*算法求解模型, 得到有效的三维规划航迹。2014年辛培源[9]将无人机航迹规划中的约束分为性能约束和威胁约束分别进行研究, 并改进A*算法得到最优航迹。2016年林鹏宏[10]融合RRT算法、模型预测及滚动优化等方法, 设计满足各种约束条件的飞行航迹规划策略。同年寇家勋[3]综合考虑静态和动态不确定性因素, 提出基于CC-RRT航迹规划方法与RR-GP轨迹估计算法的无人机在线航迹规划算法。2017年陶骥华[11]提出改进后的遗传算法、基于交互式多模型算法和模型预测控制算法的融合算法以及改进蚁群算法求解静态、动态、三维空间环境下的最优航迹。2018年Zhao等[12]研究了计算智能方法在求解无人机航迹规划时较数学和传统建模方法的优越性。2019年Wu[13]基于粒子群算法提出分阶段任务规划, 降低多约束条件算法求解难度。同年Shao等[14]提出了综合改进的粒子算法,提高了求解最优路径的快速性和最优性。

另一方面, 精确的导航定位技术是智能飞行器成功完成飞行任务的重要保证, 由于系统结构限制, 飞行器的定位系统存在一定误差, 当误差积累到一定程度将导致任务失败。所以, 许多学者针对多类型飞行器特征进行研究, 针对性地提出了新的导航系统以及误差补偿算法和误差修正技术, 使飞行器能精准地完成飞行任务[15-19]。为消除无人机定位的不规则误差, Wu等[20]引入RTS平滑算法进一步修正粒子群算法的无人机航迹规划最优解。

综上所述, 学者们的研究集中在考虑飞行环境和机动性能约束下的无人机航迹规划算法和导航技术的改进两方面, 但综合考虑误差修正和航迹规划的研究较少。基于此, 本文将结合飞行器飞行过程中定位误差的累积和修正约束, 对三维空间下静态环境中智能飞行器最优航迹规划问题进行研究。

1 智能飞行器多约束航迹规划模型

智能飞行器为执行任务需从A点飞往B点, 飞行区域三维空间如图 1所示。飞行器飞行过程中会出现定位误差, 影响任务执行, 为此, 依据地形设定误差校正点, 圆形为水平误差校正点, 方形为垂直误差校正点。

图 1 飞行器航迹规划区域示意图

飞行器初始状态下误差为0, 飞行过程中会产生随距离呈线性增长的垂直误差和水平误差, 但经过误差校正后要求到达终点时垂直误差和水平误差均在限定值θ内, 即满足(1)式约束。

(1)

式中:n表示飞行器经过校正点的数量; i表示飞行器从起点出发经过的第i个校正点(1≤in); L表示飞行器航迹长度; 下标v表示垂直方向; 下标h表示水平方向; di表示第i-1个误差校正点与第i个误差校正点之间的距离; ei表示飞行器在第i-1个误差校正点与第i个误差校正点之间所产生的误差; Ei, rEi, h分别表示飞行器在误差校正点Pi处的垂直和水平误差。

此外, 垂直误差校正点在垂直误差不大于α1个单位, 水平误差不大于α2个单位时可将垂直误差校正为零, 水平误差保持不变; 水平误差校正点在垂直误差不大于β1个单位, 水平误差不大于β2个单位时可将水平误差校正为零, 垂直误差保持不变。但由于飞行环境具有不确定性, 使得部分校正点成功将误差校正为零的概率为P, 且垂直误差校正点校正失败后的垂直误差为min(u, 5)个单位(u为校正前误差), 水平误差不变; 水平误差校正点校正失败后的水平误差为min(u, 5)个单位, 垂直误差保持不变。基于此, 将上述约束分为以下4种情况讨论,其中j表示校正点类型判断, j=1代表垂直校正, j=0代表水平校正; fi表示问题校正点判断, fi=1代表问题校正点, fi=0代表正常校正点; rk代表问题校正点成功校正的概率。

情况1  若满足Ek-1, v+ek, vα1, Ek-1, h+ek, hα2, j=1, fi=1, rk < P

(2)

情况2  若满足Ek-1, v+ek, vα1, Ek-1, h+ek, hα2, j=1, fi=0或满足Ek-1, v+ek, vα1, Ek-1, h+ek, hα2, j=1, fi=1, rkP

(3)

情况3  若满足Ek-1, v+ek, vβ1, Ek-1, h+ek, hβ2, j=0, fi=1, rk < P

(4)

情况4  若满足Ek-1, v+ek, vβ1, Ek-1, h+ek, hβ2, j=0, fi=0或满足Ek-1, v+ek, vβ1, Ek-1, h+ek, hβ2, j=0, fi=1, rkP

(5)

建立飞行器多约束条件下的航迹规划模型关键在于确定途径校正点的位置坐标及顺序, 由飞行器出发地、目的地以及所有校正点位置坐标信息, 并根据航迹长度尽可能小的优化目标可建立如下目标函数。

(6)
2 基于Dijkstra的全局搜寻算法

根据误差随距离的积累规律, 将误差约束转化为距离约束。结合点集与权值思想, 并对比O-D距离矩阵, 通过循环迭代得到距离约束矩阵, 最终以距离约束矩阵为基础, 设计基于Dijkstra的全局搜寻算法。

2.1 剩余误差计算

考虑误差校正点的约束条件, 以执行变量Pi, fb, gb, j作为校正点的功能判断依据, 如表 1所示, 以0-1变量fb, gb, j作为校正点的类型判断依据, 其中, b表示校正点编号。

表 1 校正点类型判断
0-1变量 fb gb j
0 正常校正点 执行校正功能成功 水平校正
1 问题校正点 随机概率rkP, 执行校正功能成功; 否则执行校正功能失败 垂直校正

若同时满足(fb=1)&&(gb=1)&&(rk < P), 则Pi, 1, 1, j点处误差校正失败, 其对应的剩余垂直误差和水平误差可表示为

(7)

否则Pi, 1, 1, j点处误差校正成功, 其对应的剩余垂直误差和水平误差可表示为

(8)
2.2 飞行距离约束

因误差与飞行距离呈线性关系, 故由第i个点飞往第i+1个点应满足相应距离约束Ci。其计算方式如(9)式所示。

(9)
2.3 算法求解步骤

根据航迹点坐标信息, 可得到各点之间的O-D距离矩阵, 以变量wij表示航迹点pipj之间的直线距离, 同时引入点集V={p1, p2, p3, …, pm}表示航迹点集合, 其中航迹点的个数|V|=m。以Q={qs}表示遍历点集合, 以权值集合D=[d(p1), d(p2), d(p3), …, d(pm)]表示从起点A到各个点的当前迭代过程中的最短路径。设误差校正矩阵具体算法步骤如下:

Step1   变量初始化

d(p1)=0;初始化距离约束矩阵Y, 令yij=wij。当满足w1jC1时, 令pjQ, 更新集合Q;

Step2  修正距离约束矩阵

以集合Q中首个元素pk为基准, 以距离约束Ck为参照量, 修正距离约束矩阵:若ykj>Ck, 则ykj=∞, 否则保持不变;

Step3  修正最短路径权值

选择集合Q中首个元素pk, 提取其对应权值d(pk), 修正最短路径权值:d(pj)=min{d(pj), d(pk)+ykj};

Step4  更新遍历点集

从集合Q中剔除Step2中已选用的元素, 其余元素依序保留。若Step2中最短路径权值d(pj)发生变化, 则将元素pj依序补充至集合Q中;

Step5   更新距离约束矩阵

单次迭代结束, 还原距离约束矩阵Y, 令yij=wij;

Step6   循环迭代

重复执行Step2~5, 若集合Q=, 则终止算法;

Step7   最短路径回溯

算法循环执行结束, d(pj)的终值即为从起点p1到其余各校正点的最短路径长度, 运用回溯算法可得到最短路径。

详细的算法流程如图 2所示。

图 2 考虑问题校正点下对飞行器航迹寻优的算法流程
3 算例仿真

根据上述建立的航迹规划模型以及提出的全局搜寻算法, 设置相关参数(参数取值可进行相关调整), 如表 2所示; 同时由MATLAB随机函数生成起点、终点以及325个误差校正点坐标, 部分坐标值如表 3所示。

表 2 模型参数值设置
参数 δ θ α1 α2 β1 β2 P/%
取值 0.001 20 20 10 15 20 80
表 3 误差校正点坐标
编号 X/m Y/m Z/m 校正点类型
0 0 50 000 5 000 起点A
1 76 009.85 9 788.11 9 121.90 1
2 2 448.20 71 599.88 1 877.13 0
3 27 800.93 15 218.07 8 345.41 0
324 63 645.56 71 435.22 6 263.13 0
325 19 134.86 85 017.87 2 434.51 0
326 100 000.00 74 860.55 5 499.61 终点B

利用MATLAB编程实现上述算法, 进行仿真实验, 仿真结果显示, 飞行器共经过校正点的数目为18, 所经过航迹长度为144 287.932 m。飞行器航迹三维视图如图 3所示, 图中圆形点为水平误差校正点, 正方形点为垂直误差校正点, 飞行器具体航迹如下:0→169→266→270→248→194→205→196→119→243→73→82→274→39→186→16→282→141→124→326。

图 3 飞行器飞行轨迹三维图

飞行器从起点出发经过的误差校正点编号及校正前后误差如表 4所示。由表 4可知, 飞行器在校正点进行误差校正时, 校正前后误差皆满足约束条件中α1, α2, β1β2的取值, 且飞行器到达终点B时, 垂直误差为17.254, 水平误差为6.420, 均在误差约束范围内, 表明飞行器可以正常完成飞行任务, 故该仿真结果具备一定合理性。

表 4 误差校正点编号及校正前后误差
校正点编号 校正前垂直误差 校正前水平误差 校正后垂直误差 校正后水平误差 校正点类型 F类
0 0 0 0 0 起点A 0
169 9.271 9.271 0 9.271 1 0
266 9.478 18.749 9.478 0 0 0
270 15.878 6.400 0 6.400 1 0
248 11.103 17.503 11.103 0 1 0
194 19.071 7.968 0 7.968 1 1
205 7.542 15.510 7.542 5 0 1
196 11.125 8.583 0 8.583 1 1
119 7.123 15.706 7.123 0 0 1
243 15.391 8.268 0 8.268 1 0
73 3.543 11.811 3.543 0 0 0
82 9.275 5.732 0 5.732 1 0
274 11.717 17.449 11.717 0 0 0
39 14.131 2.414 0 2.414 1 0
186 12.917 15.331 12.917 0 0 0
16 17.554 4.637 0 4.637 1 0
282 7.440 12.077 7.440 0 0 0
141 15.540 8.100 0 8.100 1 0
124 10.834 18.934 10.834 0 0 0
326 17.254 6.420 终点B 0
4 结论

针对智能飞行器航迹规划问题, 通过模型建立、算法设计以及实例仿真, 最终得出以下结论:

1) 以误差约束和基于随机概率的误差校正规律为研究重点, 建立多约束条件下智能飞行器航迹规划模型, 求解误差允许范围内最优航迹。

2) 基于Dijkstra设计“全局搜寻”算法对模型进行求解。利用遍历思想迭代求解最短路径, 回溯得到相应校正方案。

3) 利用MATLAB软件生成随机数据组进行实例仿真, 排除算法偶然性, 以此验证该算法的正确性与适用性, 最终实现航迹最短的优化目标。

本文未考虑飞行器水平转弯与垂直俯仰等问题, 鉴于此, 笔者将在之后对该问题进行深层次研究, 进而提高模型与算法的完善性和实用性。

参考文献
[1] 张涛然. 智能飞行器的结构设计[J]. 河南科技, 2018(26): 122-123.
ZHANG Taoran. Structural Design of Intelligent Aircraft[J]. Henan Science and Technology, 2018(26): 122-123. (in Chinese)
[2] 尚红, 李亦纲, 李岩峰, 等. 智能飞行器与灾害救援[J]. 中国应急救援, 2007(2): 26.
SHANG Hong, LI Yigang, LI Yanfeng, et al. Intelligent Aircraft and Disaster Rescue[J]. China Emergency Rescue, 2007(2): 26. (in Chinese)
[3] 寇家勋.不确定环境下无人机航迹规划研究[D].北京: 北京理工大学, 2016
KOU Jiaxun. Research on Route Planning for Unmanned Aerial Vehicles under Uncertain Environment[D]. Beijing: Beijing Institute of Technology, 2016(in Chinese)
[4] 王琼, 刘美万, 任伟建, 等. 无人机航迹规划常用算法综述[J]. 吉林大学学报, 2019, 37(1): 58-67.
WANG Qiong, LIU Meiwan, REN Weijian, et al. Overview of Common Algorithms for UAV Path Planning[J]. Journal of Jilin University, 2019, 37(1): 58-67. (in Chinese)
[5] 王磊.复杂地形环境下的无人机导航问题研究[D].哈尔滨: 哈尔滨工业大学, 2013
WANG Lei. Research on Navigation Technology for UAV in Complex Geografic Conditions[D]. Harbin: Harbin Institute of Technology, 2013(in Chinese)
[6] 沈延航, 周洲. 攻击型无人机协同作战控制方法研究[J]. 兵工学报, 2008(10): 1277-1280.
SHEN Yanhang, ZHOU Zhou. A Method of Cooperative Engagement Control for Attack Uninhabited Air Vehicles[J]. Acta Armamentarii, 2008(10): 1277-1280. (in Chinese)
[7] 严江江, 丁明跃, 周成平, 等. 一种基于可行优先的三维航迹规划方法[J]. 宇航学报, 2009, 30(1): 139-144.
YAN Jiangjiang, DING Mingyue, ZHOU Chengping, et al. 3D Route Planning Based on Feasible First Search[J]. Journal of Astronautics, 2009, 30(1): 139-144. (in Chinese)
[8] 李素娟.无人机航路规划及评价方法研究[D].南京: 南京航空航天大学, 2012
LI Sujuan. Research on UAV Route Planning and Evaluation Method[D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2012(in Chinese)
[9] 辛培源.基于三维环境复杂约束条件的无人机航迹规划方法研究[D].北京: 首都师范大学, 2014
XIN Peiyuan. Research on Route Planning Method of UAV Based on Complex Constraints of 3D Environment[D]. Beijing: Capital Normal University, 2014(in Chinese)
[10] 林鹏宏.四轴无人机多约束条件下的跟踪控制和轨迹规划方法研究[D].哈尔滨: 哈尔滨工业大学, 2016
LIN Penghong. Research on Tracking Control and Trajectory Planning of Quadrotor with Multi Constraints[D]. Harbin: Harbin Institute of Technology, 2016(in Chinese)
[11] 陶骥华.无人机航迹规划算法的研究[D].杭州: 杭州电子科技大学, 2017
TAO Jihua. Research on Path Planning Algorithms for Unmanned Aerial Vehicle[D]. Hangzhou: Hangzhou Dianzi University, 2017(in Chinese)
[12] ZHAO Yijing, ZHENG Zheng, YANG Liu. Survey on Computational-Intelligence-Based UAV Path Planning[J]. Knowledge-Based Systems, 2018, 158: 54-64.
[13] WU Yu. Coordinated Path Planning for an Unmanned Aerial-Aquatic Vehicle(UAAV) and an Autonomous Underwater Vehicle(AUV) in an Underwater Target Strike Mission[J]. Ocean Engineering, 2019, 182: 162-173.
[14] SHAO Shikai, YU Peng, HE Chenglong, et al. Efficient Path Planning for UAV Formation via Comprehensively Improved Particle Swarm Optimization[J/OL]. (2019-08-18)[2020-01-06]. https://doi.org/10.1016/j.isatra.2019.08.018
[15] 贾鑫, 杨树文, 张志华, 等. 搭载POS数据的无人机影像提高定位精度的方法[J]. 遥感信息, 2019, 34(4): 92-96.
JIA Xin, YANG Shuwen, ZHANG Zhihua, et al. A Method to Improve Positioning Accuracy of UAV Image Based on POS Data[J]. Remote Sensing Information, 2019, 34(4): 92-96. (in Chinese)
[16] 汤金.基于北斗的无人机高精度自主导航与监控技术研究[D].哈尔滨: 哈尔滨工程大学, 2019
TANG Jin. Research on High Precision Autonomous Navigation and Monitoring Technology of UAV Based on BDS[D]. Harbin: Harbin Engineering University, 2019(in Chinese)
[17] 葛昌利.高精度GPS定位方法及其在无人机定位系统中应用的研究[D].南京: 南京邮电大学, 2018
GE Changli. Investigation on High Precision GPS Positioning Method and Its Application in UAV Positioning System[D]. Nanjing: Nanjing University of Posts and Telecommunications, 2018(in Chinese)
[18] 张永明. 轻小型无人机遥感定位系统误差消除技术研究[J]. 计算机测量与控制, 2018, 26(5): 234-236.
ZHANG Yongming. Research on Error Elimination Technology of Remote Sensing and Positioning System for Light and Small UAV[J]. Computer Measurement & Control, 2018, 26(5): 234-236. (in Chinese)
[19] 杨哲.飞行器导航系统误差补偿技术[D].北京: 北京理工大学, 2016
YANG Zhe. The Error Compensation Technology of Aircraft Navigation System[D]. Beijing: Beijing Institute of Technology, 2016(in Chinese)
[20] WU Xiande, BAI Wenbin, XIE Yaen, et al. A Hybrid Algorithm of Particle Swarm Optimization, Metropolis Criterion and RTS Smoother for Path Planning of UAVs[J]. Applied Soft Computing, 2018, 73: 735-747.
Path Planning Algorithm of Dijkstra-Based Intelligent Aircraft under Multiple Constraints
CHENG Ningyi1, LIU Zhiqian2, LI Yuqi1     
1. College of Safety and Ocean Engineering, China University of Petroleum-Beijing, Beijing 102249, China;
2. College of Mechanical and Transportation Engineering, China University of Petroleum-Beijing, Beijing 102249, China
Abstract: Aiming at the rapid planning of the optimal flight path of the intelligent aircraft, considering the error constraints and correction probability constraints, a model for intelligent aircraft path planning under multiple constraints is constructed, and a global search algorithm based on Dijkstra algorithm is proposed to solve the model. By calculating the residual error and restricts flight distance, the basic Dijkstra algorithm is improved to make it more adaptable to solve the path planning under multiple constraints. At the same time, simulation experiment is conducted with the optimal goal of the shortest track length and satisfying the error constraints. The experimental results show that the aircraft passed a total of 18 correction points when it reached the destination. The total track length was 144 287.932 m, the vertical position error was 17.254 units, and the horizontal position error was 6.420 units. The results meet the error requirements. The results show that the intelligent aircraft path planning model and Dijkstra-based global search algorithm with multiple constraints are reasonable in solving such problems.
Keywords: Dijkstra algorithm    error correction    track planning    error constraint    correction probability constrain    
西北工业大学主办。
0

文章信息

程凝怡, 刘志乾, 李昱奇
CHENG Ningyi, LIU Zhiqian, LI Yuqi
一种基于Dijkstra的多约束条件下智能飞行器航迹规划算法
Path Planning Algorithm of Dijkstra-Based Intelligent Aircraft under Multiple Constraints
西北工业大学学报, 2020, 38(6): 1284-1290.
Journal of Northwestern Polytechnical University, 2020, 38(6): 1284-1290.

文章历史

收稿日期: 2020-01-16

相关文章

工作空间