基于空间压缩和查表计算的无人机三维航路规划方法技术

技术编号:13286650 阅读:106 留言:0更新日期:2016-07-09 02:37
本发明专利技术提供了一种基于空间压缩和查表计算的无人机三维航路规划方法,主要涉及航路规划领域,尤其是无人机的三维航路规划领域,给出了一种无人机在线快速三维航路规划方法,在标准A*算法的基础上,采用类似稀疏A*算法的跳跃扩展,子节点改为平面离散化分布,并通过在高度方向上优选压缩的方式,将子节点与父节点间的相对关系事先计算并制表存储,每次扩展时查表取值,改进了搜索空间数据结构,多次航路规划时,规划空间可以重复使用,节省了重新初始化时间,本发明专利技术在保留原算法优点的基础上,大大减小了节点数目,提高了算法效率,提高了算法的重规划能力。

【技术实现步骤摘要】

本专利技术涉及航路规划领域,尤其是无人机的三维航路规划领域。
技术介绍
无人机拥有机动性能好、生存能力强、成本低、效费比高并且无人员伤亡风险的特点,能够执行空中侦察、对地打击、对地监视和窃听、电子干扰等多种任务,是保卫领空领海、维护国土安全、增强国防力量的重要组成部分。无人机航路规划是指在空间内寻找一条从无人机当前点到目标点的航路,该航路必须满足航路约束条件和安全条件,并使航程尽可能短,它是实现无人机自主导航和任务保障的关键。无人机航路规划问题是典型的NP问题,当前已经有很多智能算法被应用到无人机航路规划中,例如A*算法、可视图法、Voronoi法、遗传算法,蚁群算法、粒子群算法和人工势场法等,在具有各自优点的同时也存在诸多问题,例如计算复杂度大、预处理耗时长、易陷入局部最优或存在搜索陷阱等。特别是近年来随着制造技术的快速发展,无人机性能不断增强,工作半径不断增大,航路规划问题的复杂度随着问题规模呈爆炸式增长。受限于机载计算机的计算能力和存储空间,目前常用的三维航路规划方法很难满足无人机在线航路规划的需求。本专利技术根据无人机在线航路规划特点,提出了一种基于空间压缩和查表计算的航路规划算法,能够把三维空间航路规划问题通过二维映射空间来解决,大大减小了规划所需的运算时间和存储空间,并具有较好的重规划能力。
技术实现思路
为了克服现有技术的不足,本专利技术给出了一种无人机在线快速三维航路规划方法,该方法在标准A*算法的基础上,采用类似稀疏A*算法的跳跃扩展,但子节点改为平面离散化分布,并通过在高度方向上优选压缩的方式,将子节点与父节点间的相对关系事先计算并制表存储,每次扩展时查表取值,而不必重新计算,同时改进了搜索空间数据结构,多次航路规划时,规划空间可以重复使用,节省了重新初始化时间。本专利技术解决其技术问题所采用的技术方案的详细步骤如下:步骤一:初始化与环境建模将无人机活动范围的水平面投影均匀分割为Maxrow×Maxcol栅格,栅格大小与所采用的地形数据文件精度保持一致,栅格行数Maxrow和栅格列数Maxcol由无人机活动范围除以栅格大小获得,构建并初始化一个Maxrow×Maxcol的规划空间矩阵M作为实际三维搜索空间的映射,其中Maxrow和Maxcol分别为规划空间矩阵M的最大行数和最大列数,构建一个空的完全最小二叉堆作为A*算法的Open列表,初始化规划空间矩阵M的全局变量重用标识符;其中,规划空间矩阵M每个栅格点代表启发式搜索的一个搜索节点,其横坐标和纵坐标代表节点水平位置,每个节点存储信息包括实际代价值g、剩余代价估计值h、总代价估计值f、重用标识pointmode、无人机当前航向角Φ、俯仰角θ、父节点信息、最优高度besth以及栅格点地形高度dem,其中除地形高度dem外其余参数全部初始化为0,dem取该点处地形高度,但如果某节点处有障碍或威胁,则该节点的dem取障碍或威胁在该节点处影响范围的上边界高度;Open列表中每一个元素均通过指针对应规划空间矩阵M中的一个搜索节点,并初始化为空表,设置全局变量matrixflag作为规划矩阵的重用标识符,并初始化其为0,如果某个节点将来被访问,则该节点的重用标识符pointmode将会被赋值为matrixflag+1,如果某个节点被扩展,则该节点的重用标识符pointmode将会被赋值为matrixflag+2;步骤二:规划任务参数更新更新规划矩阵重用标识符matrixflag,根据任务参数,计算更新规划参数,并制表存储;详细步骤如下:本专利技术在规划空间矩阵M中为每个节点赋予重用标识符值pointmode,同一类节点的重用标识符pointmode相同,通过检查节点的重用标识符来确认节点状态,每次规划任务的重用标识符值不同,约定本次规划中每个已扩展节点close点标记为pointmode=matrixflag+2,并记matrixflag+2的值为pointclose;每个已访问但未扩展节点或需重新扩展节点的open点标记为pointmode=matrixflag+1,并记matrixflag+1的值为pointopen,这样所有满足pointmode≤matrixflag的节点自动识别为本次规划尚未访问的新节点new节点;根据起始点、目标点水平位置将其映射到规划空间矩阵M中,并用其起始点、目标点高度替代对应点最优高度besth;计算本次规划参数,当任务要求的航路点精度为Np,则单航段长度ΔL为:ΔL=2×dis(start,goal)/Np]]>其中start为起始点,goal为终点,dis(start,goal)为起始点与目标点间直线距离;当任务要求方向精度为Na,无人机在长度ΔL航段内的最大转弯角为φmax,则计算并存储水平偏移离散表:da=floor(0.5×Na×φmax/π)Δrow(i)=floor[ΔL×cos(i×2π/Na)/rowheight]Δcol(i)=floor[ΔL×sin(i×2π/Na)/colwide]]]>其中da为单次扩展在水平方向上最大半跨度,floor为向下取整函数,Δrow(i)为单次扩展第i方向上的子节点相对于父节点在行数上相对偏移量,Δcol(i)为单次扩展第i方向上的子节点相对于父节点在列数上相对偏移量,i=0,1,2,3…Na,rowheight为规划空间行间距,colwide为规划空间列间距;当任务要求高度精度为Nh,最大爬升/下滑角为θmax,无人机升限高度为maxh,则计算并存储高度偏移离散表:Δh=floor(maxh/Nh)dh=floor[ΔL×tan(θmax)/Δh]dish(k)=ΔL2+(k×Δh)2]]>其中Δh为规划高度间隔,dh为单次扩展在高度方向上最大跨度,diah(k)为单次扩展特定方向上第k离散高度处的子节点与父节点的欧氏距离近似值,k=0,1,2,3…Nh;步骤三:路径搜索迭代执行A*搜索算法,直至找到结果路径并输出,详细步骤为:首先把起始点标记为open节点并放入Open列表,总代价估计值f取起始点与目标点间直线距离,搜索时,每次从Open列表中取出总代价估计值f代本文档来自技高网...

【技术保护点】
一种基于空间压缩和查表计算的无人机三维航路规划方法,其特征在于包括下述步骤:步骤一:初始化与环境建模将无人机活动范围的水平面投影均匀分割为Maxrow×Maxcol栅格,栅格大小与所采用的地形数据文件精度保持一致,栅格行数Maxrow和栅格列数Maxcol由无人机活动范围除以栅格大小获得,构建并初始化一个Maxrow×Maxcol的规划空间矩阵M作为实际三维搜索空间的映射,其中Maxrow和Maxcol分别为规划空间矩阵M的最大行数和最大列数,构建一个空的完全最小二叉堆作为A*算法的Open列表,初始化规划空间矩阵M的全局变量重用标识符;其中,规划空间矩阵M每个栅格点代表启发式搜索的一个搜索节点,其横坐标和纵坐标代表节点水平位置,每个节点存储信息包括实际代价值g、剩余代价估计值h、总代价估计值f、重用标识pointmode、无人机当前航向角Φ、俯仰角θ、父节点信息、最优高度besth以及栅格点地形高度dem,其中除地形高度dem外其余参数全部初始化为0,dem取该点处地形高度,但如果某节点处有障碍或威胁,则该节点的dem取障碍或威胁在该节点处影响范围的上边界高度;Open列表中每一个元素均通过指针对应规划空间矩阵M中的一个搜索节点,并初始化为空表,设置全局变量matrixflag作为规划矩阵的重用标识符,并初始化其为0,如果某个节点将来被访问,则该节点的重用标识符pointmode将会被赋值为matrixflag+1,如果某个节点被扩展,则该节点的重用标识符pointmode将会被赋值为matrixflag+2;步骤二:规划任务参数更新更新规划矩阵重用标识符matrixflag,根据任务参数,计算更新规划参数,并制表存储;详细步骤如下:本专利技术在规划空间矩阵M中为每个节点赋予重用标识符值pointmode,同一类节点的重用标识符pointmode相同,通过检查节点的重用标识符来确认节点状态,每次规划任务的重用标识符值不同,约定本次规划中每个已扩展节点close点标记为pointmode=matrixflag+2,并记matrixflag+2的值为pointclose;每个已访问但未扩展节点或需重新扩展节点的open点标记为pointmode=matrixflag+1,并记matrixflag+1的值为pointopen,这样所有满足pointmode≤matrixflag的节点自动识别为本次规划尚未访问的新节点new节点;根据起始点、目标点水平位置将其映射到规划空间矩阵M中,并用其起始点、目标点高度替代对应点最优高度besth;计算本次规划参数,当任务要求的航路点精度为Np,则单航段长度ΔL为:ΔL=2×dis(start,goal)/Np]]>其中start为起始点,goal为终点,dis(start,goal)为起始点与目标点间直线距离;当任务要求方向精度为Na,无人机在长度ΔL航段内的最大转弯角为φmax,则计算并存储水平偏移离散表:da=floor(0.5×Na×φmax/π)Δrow(i)=floor[ΔL×cos(i×2π/Na)/rowheight]Δcol(i)=floor[ΔL×sin(i×2π/Na)/colwide]]]>其中da为单次扩展在水平方向上最大半跨度,floor为向下取整函数,Δrow(i)为单次扩展第i方向上的子节点相对于父节点在行数上相对偏移量,Δcol(i)为单次扩展第i方向上的子节点相对于父节点在列数上相对偏移量,i=0,1,2,3…Na,rowheight为规划空间行间距,colwide为规划空间列间距;当任务要求高度精度为Nh,最大爬升/下滑角为θmax,无人机升限高度为maxh,则计算并存储高度偏移离散表:Δh=floor(maxh/Nh)dh=floor[ΔL×tan(θmax)/Δh]dish(k)=ΔL2+(k×Δh)2]]>其中Δh为规划高度间隔,dh为单次扩展在高度方向上最大跨度,diah(k)为单次扩展特定方向上第k离散高度处的子节点与父节点的欧氏距离近似值,k=0,1,2,3…Nh;步骤三:路径搜索迭代执行A*搜索算法,直至找到结果路径并输出,详细步骤为:首先把起始点标记为open节点并放入Open列表,总代价估计值f取起始点与目标点间直线距离,搜索时,每次从Open列表中取出总代价估计值f代价最小的节点作为父节点,如果该节点为目标点,则搜索结束,...

【技术特征摘要】
1.一种基于空间压缩和查表计算的无人机三维航路规划方法,其特征在于包括下述
步骤:
步骤一:初始化与环境建模
将无人机活动范围的水平面投影均匀分割为Maxrow×Maxcol栅格,栅格大小与所
采用的地形数据文件精度保持一致,栅格行数Maxrow和栅格列数Maxcol由无人机活动
范围除以栅格大小获得,构建并初始化一个Maxrow×Maxcol的规划空间矩阵M作为实
际三维搜索空间的映射,其中Maxrow和Maxcol分别为规划空间矩阵M的最大行数和
最大列数,构建一个空的完全最小二叉堆作为A*算法的Open列表,初始化规划空间
矩阵M的全局变量重用标识符;
其中,规划空间矩阵M每个栅格点代表启发式搜索的一个搜索节点,其横坐标和
纵坐标代表节点水平位置,每个节点存储信息包括实际代价值g、剩余代价估计值h、
总代价估计值f、重用标识pointmode、无人机当前航向角Φ、俯仰角θ、父节点信息、
最优高度besth以及栅格点地形高度dem,其中除地形高度dem外其余参数全部初始
化为0,dem取该点处地形高度,但如果某节点处有障碍或威胁,则该节点的dem取
障碍或威胁在该节点处影响范围的上边界高度;Open列表中每一个元素均通过指针对
应规划空间矩阵M中的一个搜索节点,并初始化为空表,设置全局变量matrixflag作
为规划矩阵的重用标识符,并初始化其为0,如果某个节点将来被访问,则该节点的
重用标识符pointmode将会被赋值为matrixflag+1,如果某个节点被扩展,则该节点的
重用标识符pointmode将会被赋值为matrixflag+2;
步骤二:规划任务参数更新
更新规划矩阵重用标识符matrixflag,根据任务参数,计算更新规划参数,并制表
存储;
详细步骤如下:
本发明在规划空间矩阵M中为每个节点赋予重用标识符值pointmode,同一类节
点的重用标识符pointmode相同,通过检查节点的重用标识符来确认节点状态,每次
规划任务的重用标识符值不同,约定本次规划中每个已扩展节点close点标记为
pointmode=matrixflag+2,并记matrixflag+2的值为pointclose;每个已访问但未扩展
节点或需重新扩展节点的open点标记为pointmode=matrixflag+1,并记matrixflag+1
的值为pointopen,这样所有满足pointmode≤matrixflag的节点自动识别为本次规划尚
未访问的新节点new节点;
根据起始点、目标点水平位置将其映射到规划空间矩阵M中,并用其起始点、目
标点高度替代对应点最优高度besth;
计算本次规划参数,当任务要求的航路点精度为Np,则单航段长度ΔL为:
ΔL=2×dis(start,goal)/Np]]>其中start为起始点,goal为终点,dis(start,goal)为起始点与目标点间直线距离;
当任务要求方向精度为Na,无人机在长度ΔL航段内的最...

【专利技术属性】
技术研发人员:张安李冲毕文豪
申请(专利权)人:西北工业大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1