技术领域
本发明属于无人机应用技术领域,具体涉及多约束条件下无人机快速航迹规划方法,用于复杂环境下无人机的智能航迹快速规划。
背景技术
在复杂环境下,无人机的快速航迹规划是新型智能无人机飞行控制一个很难攻克的课题。由于无人机的结构限制,定位系统无法对其自身进行精准定位,一旦定位误差积累到一定程度可能会导致航迹规划失败。因此,在飞行过程中对定位误差进行校正是智能无人机航迹规划中一项重要任务。
发明内容
为克服上述现有技术的不足,本发明的目的在于提供多约束条件下无人机快速航迹规划方法,通过考虑限制无人机的主要因素和限制无人机飞行的环境因素,通过改进的Dijkstra算法对无人机设计了一个快速航迹规划;具有简单、快速、动态及智能的特点。
为实现上述目的,本发明采用的技术方案是:多约束条件下无人机快速航迹规划方法,其特征在于,包括以下步骤:
步骤1,将无人机飞行环境中的各校正点简化为无向图中的0-1模型,简化无人机对校正点的选取;
步骤2,无人机航迹规划,设置无人机飞行网络的无向结构图,得到各校正点之间的距离;
步骤3,根据校正节点的数据处理得到无人机飞行网络图S,无人机在航迹上要求尽可能经过少的飞行误差校正节点,将无人机的航迹规划简化为一个多目标动态规划问题,即选择最优路线和最佳误差点数量和的问题,将航迹规划转化为了0-1整数规划问题;
步骤4,采用改进的Dijkstra算法将设置的目标函数求解,得到的结果就是最优的航迹规划路径。
所述的步骤1,具体做法是:设智能无人机的出发点为A点,目的地为B点,其航行需要满足如下约束条件:
1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差,无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,设定航迹达标条件为到达终点时垂直误差和水平误差均应小于θ个单位,即当垂直误差和水平误差均小于θ个单位时,无人机仍能够按照规划路径飞行;
2)无人机在飞行过程中需要对定位误差进行校正,飞行区域中存在一些校正点可用于误差校正,当无人机到达校正点即可根据该位置的误差校正类型进行误差校正,矫正点的位置可根据地形在航迹规划前确定;可校正的飞行区域分布位置依赖于地形,无统一规律,若垂直误差、水平误差都能得到及时校正,则无人机可以按照预定航线飞行,通过若干个校正点进行误差校正后最终到达目的地。
所述的步骤2,具体做法是:
首先,将无人机飞行区域中的A、B及校正点的坐标进行数据处理,构建无人机飞行邻接距离矩阵,邻接距离矩阵的基本原理是将图中n个顶点的数据存放在一组一维数组中,用一个n×n矩阵的形式来表示各个顶点间的邻接关系,并在邻接距离矩阵中剔除不满足条件的校正节点关系,构建无人机飞行网络图;设置一个无向图D,根据无向图D的各个顶点之间是否可以直接连接,编写一个矩阵,1表示可以直接连接,0表示不能直接连接,定义如下:
A=(a
因为任何顶点自身不能相连,所以在任何无向图的邻接矩阵中,主对角线一定为0,其余可以相连的顶点皆为1,由此可得,每个无向图的邻接矩阵皆为关于主对角线对称的n×n的矩阵,邻接矩阵中包含了图的一切性质,邻接矩阵与它所唯一对应的图成一一对应关系;
将无向图转化为无人机飞行网络图,即测量出各个可以相连的校正点之间的距离,将无向图邻接矩阵中的1用实际距离代替,并在邻接距离矩阵中剔除不满足条件的校正节点关系,构建出无人机飞行网络图,其中针对相连的各个顶点之间的距离不满足最大允许调整的水平和垂直误差,用∞表示,即将无向图邻接矩阵中的0用∞代替,得到S=(s
所述的步骤3,又包括如下步骤:
步骤3.1:先规划从起点A到终点B的最短路径,再找出满足约束条件的最优路径使得无人机在从起点A到终点B飞行过程中需要满足飞行路程最短的同时,尽可能经过少的飞行误差校正节点,
首先对所有校正点进行编号:
1)校正点集:C=[c
2)水平校正点集:U=[u
3)垂直校正点集:V=[v
其中校正点集C、水平校正点集U和垂直校正点集V之间的关系为:U∪V=C,
首先假设无人机从一个校正节点到另一个校正节点之间始终匀速直线运动,忽略转弯引起的轨迹变化,无人机从起点A到终点B的飞行过程中需要依次选择水平校正节点和垂直校正节点进行误差校正,以满足能够在误差允许的范围内到达各个水平或者垂直校正节点进行水平和垂直误差校正,其中需要注意的是无人机到达终点B允许误差和到达各校正节点的允许误差值是不一致的,这是一个多目标航迹规划问题,多目标规划的优化目标是获得在从起点A到终点B的飞行中,航迹路程最小的同时,经过的飞行误差调整点u
无人机经过水平或者垂直误差校正点的目标函数为:
式中,x
无人机飞行路程目标函数为:
起点or校正点到终点or校正点的路程长度:
式中,X
其中无人机的约束条件包括:
1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差,无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,则无人机从起点或者校正点c
因为任意一个误差校正点c
其中P
P
其中P
步骤3.2,设无人机的垂直误差不大于α
P
P
其中P
当无人机的垂直误差不大于β
P
P
其中P
无人机在飞行过程中会根据最优路径和节点数选择经过水平误差补偿和垂直误差补偿点,在实际计算中常常需要直接约束任意两个水平或者垂直误差的阈值,约束条件如下所示:
其中
无人机经过水平或者垂直误差校正点的目标函数为:
无人机飞行路程目标函数为:
所述的步骤4,具体做法是:
飞行网络图中有n个顶点,现需要求从校正节点A至校正节点B的最短路径,设S=(s
其中,c
x
采用Dijkstra算法和动态规划方法求解。
所述的Dijkstra算法和动态规划方法求解,具体包括以下步骤:
Step1:对c
其中c
Step2:对每个c
其中c
Step3:若i=n-1,停止计算;若i Step4:将得到的路径中的每一个c 其中c Step5:对路径中的水平或者垂直误差校正点进行约束优化,约束优化条件如下:
其中 Step6:若满足约束条件,则跳转至Step7,否则跳转至Step2; Step7:结束。 本发明的有益效果是, 1)通过简化无人机飞行环境中的校正点为0-1模型,将无人机的飞行环境简化为一些可用和不可用的节点集合,简化了飞行环境。 2)将选取最优航迹规划的问题,简化为选择最优路线和最佳误差点数量和的问题,可以简化航迹规划的目标函数,便于求解。 附图说明 图1是无人机的飞行区域; 图2是无人机航迹规划流程图; 图3是改进Dijkstra算法流程图。 具体实施方式 下面结合附图和具体实施方式对本发明进行详细说明。 多约束条件下无人机快速航迹规划方法,其特征在于,包括以下步骤: 步骤1,将无人机飞行环境中的各校正点简化为无向图中的0-1模型,简化无人机对校正点的选取; 步骤2,无人机航迹规划,设置无人机飞行网络的无向结构图,得到各校正点之间的距离; 步骤3,根据校正节点的数据处理得到无人机飞行网络图S,无人机在航迹上要求尽可能经过少的飞行误差校正节点,将无人机的航迹规划简化为一个多目标动态规划问题,即选择最优路线和最佳误差点数量和的问题,将航迹规划转化为了0-1整数规划问题; 步骤4,采用改进的Dijkstra算法将设置的目标函数求解,得到的结果就是最优的航迹规划路径。 所述的步骤1,具体做法是:设智能无人机的出发点为A点,目的地为B点,其航行需要满足如下约束条件: 1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差,无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,设定航迹达标条件为到达终点时垂直误差和水平误差均应小于θ个单位,即当垂直误差和水平误差均小于θ个单位时,无人机仍能够按照规划路径飞行; 2)无人机在飞行过程中需要对定位误差进行校正,飞行区域中存在一些校正点可用于误差校正,当无人机到达校正点即可根据该位置的误差校正类型进行误差校正,矫正点的位置可根据地形在航迹规划前确定;可校正的飞行区域分布位置依赖于地形,无统一规律,若垂直误差、水平误差都能得到及时校正,则无人机可以按照预定航线飞行,通过若干个校正点进行误差校正后最终到达目的地。 所述的步骤2,具体做法是: 首先,将无人机飞行区域中的A、B及校正点的坐标进行数据处理,构建无人机飞行邻接距离矩阵,邻接距离矩阵的基本原理是将图中n个顶点的数据存放在一组一维数组中,用一个n×n矩阵的形式来表示各个顶点间的邻接关系,并在邻接距离矩阵中剔除不满足条件的校正节点关系,构建无人机飞行网络图;设置一个无向图D,根据无向图D的各个顶点之间是否可以直接连接,编写一个矩阵,1表示可以直接连接,0表示不能直接连接,定义如下: A=(a
因为任何顶点自身不能相连,所以在任何无向图的邻接矩阵中,主对角线一定为0,其余可以相连的顶点皆为1,由此可得,每个无向图的邻接矩阵皆为关于主对角线对称的n×n的矩阵,邻接矩阵中包含了图的一切性质,邻接矩阵与它所唯一对应的图成一一对应关系; 将无向图转化为无人机飞行网络图,即测量出各个可以相连的校正点之间的距离,将无向图邻接矩阵中的1用实际距离代替,并在邻接距离矩阵中剔除不满足条件的校正节点关系,构建出无人机飞行网络图,其中针对相连的各个顶点之间的距离不满足最大允许调整的水平和垂直误差,用∞表示,即将无向图邻接矩阵中的0用∞代替,得到S=(s
所述的步骤3,又包括如下步骤: 步骤3.1:先规划从起点A到终点B的最短路径,再找出满足约束条件的最优路径使得无人机在从起点A到终点B飞行过程中需要满足飞行路程最短的同时,尽可能经过少的飞行误差校正节点, 首先对所有校正点进行编号: 1)校正点集:C=[c 2)水平校正点集:U=[u 3)垂直校正点集:V=[v 其中校正点集C、水平校正点集U和垂直校正点集V之间的关系为:U∪V=C, 首先假设无人机从一个校正节点到另一个校正节点之间始终匀速直线运动,忽略转弯引起的轨迹变化,无人机从起点A到终点B的飞行过程中需要依次选择水平校正节点和垂直校正节点进行误差校正,以满足能够在误差允许的范围内到达各个水平或者垂直校正节点进行水平和垂直误差校正,其中需要注意的是无人机到达终点B允许误差和到达各校正节点的允许误差值是不一致的,这是一个多目标航迹规划问题,多目标规划的优化目标是获得在从起点A到终点B的飞行中,航迹路程最小的同时,经过的飞行误差调整点u 无人机经过水平或者垂直误差校正点的目标函数为:
式中,x 无人机飞行路程目标函数为:
起点or校正点到终点or校正点的路程长度:
式中,X 其中无人机的约束条件包括: 1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差,无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,则无人机从起点或者校正点c
因为任意一个误差校正点c
其中P P 其中P 步骤3.2,设无人机的垂直误差不大于α P P 其中P 当无人机的垂直误差不大于β P P 其中P 无人机在飞行过程中会根据最优路径和节点数选择经过水平误差补偿和垂直误差补偿点,在实际计算中常常需要直接约束任意两个水平或者垂直误差的阈值,约束条件如下所示:
其中 无人机经过水平或者垂直误差校正点的目标函数为:
无人机飞行路程目标函数为:
所述的步骤4,具体做法是: 飞行网络图中有n个顶点,现需要求从校正节点A至校正节点B的最短路径,设S=(s
其中,c
x 采用Dijkstra算法和动态规划方法求解。 所述的Dijkstra算法和动态规划方法求解,具体包括以下步骤: Step1:对c
其中c Step2:对每个c 其中c Step3:若i=n-1,停止计算;若i Step4:将得到的路径中的每一个c 其中c Step5:对路径中的水平或者垂直误差校正点进行约束优化,约束优化条件如下:
其中 Step6:若满足约束条件,则跳转至Step7,否则跳转至Step2; Step7:结束。 在复杂环境下,考虑无人机在自身条件的约束下对其飞行路径进行规划。首先将无人机飞行的飞行环境中的各校正点简化为无向图中的0-1模型,这样可以简化无人机对校正点的选取;然后将选取最优航迹规划的问题简化为选择最优路线和最佳误差点数量和的问题,可以将航迹规划的目标函数简化;最后采用改进的Dijkstra算法将设置的目标函数求解,得到的结果就是最优的航迹规划路径。 多约束条件下无人机快速航迹规划方法,包括以下步骤: 步骤1,设智能无人机的出发点为A点,目的地为B点。其航行需要满足如下约束条件: 1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差。无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,设定航迹达标条件为到达终点时垂直误差和水平误差均应小于θ个单位,即当垂直误差和水平误差均小于θ个单位时,无人机仍能够按照规划路径飞行。 2)无人机在飞行过程中需要对定位误差进行校正。飞行区域中存在一些校正点可用于误差校正,当无人机到达校正点即可根据该位置的误差校正类型进行误差校正。矫正点的位置可根据地形在航迹规划前确定(如图1中黄色的点为水平误差校正点,蓝色的点为垂直误差校正点,黑色曲线代表规划的一条航迹)。可校正的飞行区域分布位置依赖于地形,无统一规律。若垂直误差、水平误差都能得到及时校正,则无人机可以按照预定航线飞行,通过若干个校正点进行误差校正后最终到达目的地。 步骤2,图2为无人机航迹规划流程图。首先将无人机飞行区域中的A、B及校正点的坐标进行数据处理,构建无人机飞行邻接距离矩阵。邻接距离矩阵的基本原理是将图中n个顶点的数据存放在一组一维数组中,用一个n×n矩阵的形式来表示各个顶点间的邻接关系。并在邻接距离矩阵中剔除不满足条件的校正节点关系,从而构建无人机飞行网络图。设置一个无向图D,根据D的各个顶点之间是否可以直接连接,编写一个矩阵,1表示可以直接连接,0表示不能直接连接,定义如下: A=(a
因为任何顶点自身不能相连,所以在任何无向图的邻接矩阵中,主对角线一定为0,其余可以相连的顶点皆为1。由此可得,每个无向图的邻接矩阵皆为关于主对角线对称的n×n的矩阵。邻接矩阵中包含了图的一切性质,邻接矩阵与它所唯一对应的图成一一对应关系。 将无向图转化为无人机飞行网络图,即测量出各个可以相连的校正点之间的距离,将无向图邻接矩阵中的“1”用实际距离代替,并在邻接距离矩阵中剔除不满足条件的校正节点关系,构建出无人机飞行网络图。其中针对相连的各个顶点之间的距离不满足最大允许调整的水平和垂直误差,用“∞”表示,即将无向图邻接矩阵中的“0”用“∞”代替。得到S=(s
步骤3:根据校正节点的数据处理得到无人机飞行网络图S,无人机在航迹上要求尽可能经过少的飞行误差校正节点,将无人机的航迹规划简化为一个多目标动态规划问题,即选择最优路线和最佳误差点数量和的问题,无人机在飞行过程中经过校正节点c 步骤3.1:先规划从起点A到终点B的最短路径,再找出满足约束条件的最优路径使得无人机在从起点A到终点B飞行过程中需要满足飞行路程最短的同时,尽可能经过少的飞行误差校正节点。 首先对所有校正点进行编号: 1)校正点集:C=[c 2)水平校正点集:U=[u 3)垂直校正点集:V=[v 其中校正点集C、水平校正点集U和垂直校正点集V之间的关系为U∪V=C, 首先假设无人机从一个校正节点到另一个校正节点之间始终匀速直线运动,忽略转弯引起的轨迹变化。无人机从起点A到终点B的飞行过程中需要依次选择水平校正节点和垂直校正节点进行误差校正,以满足能够在误差允许的范围内到达各个水平或者垂直校正节点进行水平和垂直误差校正;其中需要注意的是无人机到达终点B允许误差和到达各校正节点的允许误差值是不一致的,这是一个多目标航迹规划问题。多目标规划的优化目标是获得在从起点A到终点B的飞行中,航迹路程最小的同时,经过的飞行误差调整点u 无人机飞行路程目标函数为:
无人机经过水平或者垂直误差校正点的目标函数为:
式中,0-1变量: 起点or校正点到终点or校正点的路程长度:
其中无人机的约束条件包括: 1)无人机在空间飞行过程中需要实时定位,其定位误差包括垂直误差和水平误差。无人机每飞行1m,垂直误差和水平误差将各增加δ个单位,则无人机从起点或者校正点c
式中(a,b)为1×2维矩阵,因为任意一个误差校正点c
其中P P 步骤3.2:设无人机的垂直误差不大于α1个单位,水平误差不大于α2个单位时才能进行垂直误差校正,即: P P 当无人机的垂直误差不大于β1个单位,水平误差不大于β2个单位时才能进行水平误差校正,即: P P 无人机在飞行过程中会根据最优路径和节点数选择经过水平误差补偿和垂直误差补偿点,在实际计算中常常需要直接约束任意两个水平或者垂直误差的阈值,约束条件如下所示:
其中 综上所述,无人机飞行航迹的多目标规划为: 无人机经过水平或者垂直误差校正点的目标函数为:
无人机飞行路程目标函数为:
步骤4:通过改进Dijkstra算法和动态规划方法对上述模型求解。图3为改进Dijkstra算法流程图。 飞行网络图中有n个顶点,现需要求从校正节点A至校正节点B的最短路径。设S=(s
当x 采用Dijkstra算法和动态规划方法求解,具体步骤如下: Step1:对c
其中c Step2:对每个c 其中c Step3:若i=n-1,停止计算;若i Step4:将得到的路径中的每一个c 其中c Step5:对路径中的水平或者垂直误差校正点进行约束优化,约束优化条件如下:
其中 Step6:若满足约束条件,则跳转至Step7,否则跳转至Step2。 Step7:结束。
机译: 多约束下的路线规划系统及方法
机译: 在多个约束条件下快速规划智能飞机尾行的方法
机译: 在多个约束条件下快速规划智能飞机尾行的方法