基于矩阵Hadamard乘积运算的空域冲突检测方法与流程

文档序号:35056424发布日期:2023-08-06 14:18阅读:519来源:国知局
基于矩阵Hadamard乘积运算的空域冲突检测方法与流程

本发明涉及基于矩阵hadamard乘积运算的空域冲突检测方法。


背景技术:

1、随着航空业的不断发展,各用空单位用空需求快速增长,空域飞行冲突频繁。各类任务的用空计划来源不同,相互之间的协调不够及时,容易导致多个空域在不同的高度、时间以及空间范围上相互叠加,造成飞行时的飞行冲突、危险接近甚至空中相撞,极大的影响飞行安全以及任务的完成。

2、空域间冲突检测的传统解决方法为对空域的经纬度范围进行交叉运算,即通过每个空域使用计划所需空域的边进行交叉判定是否有空域冲突。该方法虽然可以准确计算得到空域使用计划冲突以及冲突空域的范围,但这种方法计算复杂,运算量大,耗费时间长,仅适用于小规模空域冲突之间的检测。无法为后续的空域冲突消解提供数据支持。


技术实现思路

1、发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供基于矩阵hadamard乘积运算的空域冲突检测方法,包括以下步骤:

2、步骤1、采集空域信息,进行空域分级;

3、步骤2、构建空域数据矩阵;

4、步骤3、进行空域冲突检测。

5、步骤1中,所述包括:按照空域任务优先级进行分类,由空域开始时间,从早到晚依次排序录入,按照由高到低依次分组,根据空域用空实际,录入空域边界点经纬度坐标信息,进行经纬度坐标系统向格网坐标系统的转化,将空域顶点编码分为菱形码、区位码和坐标码三个部分,即[a0,b,(i,j)]。

6、其中a0表示菱形码,即初始的10个菱形单元,由0至9进行编号,p0、p1、p2、p6组成的菱形编号为0,p0、p2、p3、p7组成的菱形编号为1,以此类推;

7、b表示区位码,编码共分为4位,每位均为0至3中的一个数;

8、(i,j)为坐标码,它表示的是格网的行列号,是指在第4层剖分的基础上剖分至第10层,也就是将第四层的格网单元再划分为4096个小菱形格网,即第四层菱形格网单元的各边均进行64等分,i和j的取值均为0至63,以菱形格网单元的左顶点为原点,建立格网坐标系。

9、步骤2包括:

10、步骤2-1,设点的经纬度坐标g(λ,φ),地球赤道半径r,对应的三维直角坐标为c(x,y,z),λ表示经度,φ表示纬度,由空间几何关系建立从球面经纬度坐标向三维直角坐标转换的关系;

11、步骤2-2,已知格网边界点坐标p1,p2,p3,p4和待求点p坐标,连接格网对边中点,得到中点坐标m1,m2,m3,m4,将格网划分为四个象限;判断待求点p所在象限,依次进行层级剖分直至第10层级;

12、步骤2-3,由空域顶点的编码得到空域边界点的坐标,坐标连线后得到空域的边界,计算出空域所占用的格网,并赋值为1,任务区内其他格网赋值为0,得到一个由0、1构成的64×64数据矩阵,为空域数据矩阵。

13、步骤2-2中,根据点所在的初始菱形单元编号,得到菱形码a0,即初始的10个菱形单元,由0至9进行编号。

14、步骤2-2中,根据b的定义,判断一点所在格网的区位码,只需进行至多16次判定,即能够在256个编号中确定点的区位码。

15、步骤2-2中,所述确定数据矩阵(i,j),包括:

16、步骤2-2-a1,记n=6为剖分次数,将第四层剖分下的菱形格网单元进行一次剖分,直至剖分至第十层,四个小菱形格网分别记为0、1、2、3号,如果目标点位于0号,则i1=0,j1=0,如果位于1号,则i1=2n-1,j1=0,如果位于2号,则i1=2n-1,j1=2n-1,如果位于3号,则i1=0,j1=2n-1;其中i1,j1分别为第一次剖分后的行标号和列标号;

17、步骤2-2-a2,进行第二次剖分,如果目标点位于0号,则i2=0+i1,j2=0+j1,如果位于1号,则i2=2n-2+i1,j2=0+j1,如果位于2号,则i2=2n-2+i1,j2=2n-2+j1,如果位于3号,则i2=0+i1,j2=2n-2+j1;其中i2,j2分别为第二次剖分后的行标号和列标号;

18、步骤2-2-a3,进行第三次剖分,如果目标点位于0号,则i3=0+i2,j3=0+j2,如果位于1号,则i3=2n-3+i2,j3=0+j2,如果位于2号,则i3=2n-3+i2,j3=2n-3+j2,如果位于3号,则i3=0+i2,j3=2n-3+j2;其中i3,j3分别为第三次剖分后的行标号和列标号;

19、步骤2-2-a4,根据步骤2-2-a1~步骤2-2-a3,共进行六次剖分,最后得到的i6、j6,i6,j6分别为剖分结束的行标号和列标号,即为目标点对应的数据矩阵(i,j);

20、根据得到的[a0、b、(i,j)],得到格网的三元组编码。

21、步骤2-2中,所述判断目标点位置,包括:将目标点与菱形的每个顶点相连,形成四个曲面三角形,如果四个曲面三角形的面积相加与菱形面积相等,则目标点位于菱形内,如果四个曲面三角形面积之和大于菱形面积,则目标点在菱形格网外;

22、对面积和判别法进行改进,具体计算方法如下:

23、记菱形格网的四个顶点分别为a、b、c、d,a点三维直角坐标(a1,a2,a3),b点三维直角坐标(b1,b2,b3),c点三维直角坐标(c1,c2,c3),o为地球球心,点m为目标点,r为地球半径;

24、面oab的法向量为面oac的法向量为ap1为弧线的切线,ap2为弧线的切线;

25、

26、

27、

28、

29、

30、记菱形abcd的面积为s1,得到:

31、s1=sδabc+sδbcd

32、sδabc=(∠a+∠abc+∠acb-π)r2

33、sδbcd=(∠cbd+∠bcd+∠d-π)r2

34、其中sδabc表示三角形abc的面积,sδbcd表示三角形bcd的面积;

35、再分别计算得到δmab、δmac、δmbd、δmcd的面积,记四个球面三角形的面积和为s2,则点m对于菱形abcd的面积差δs1=s2-s1,点m对其他菱形的面积差为δs2,比较点m对不同菱形的面积差δs,面积差越小,则说明点m越可能落在菱形格网内,由此得出点m所在格网的位置编号;

36、在确定了空域顶点所在格网之后,确定空域所占格网位置编号:比较四个顶点的格网行列式(i,j),记i的最小值为m,最大值为n,j的最小值为p,最大值为q;遍历m<<i<<n,p<<j<<q范围内每个格网的中心点,判断点m是否在空域范围内,将点m与空域各顶点相连形成三角形,比较三角形面积之和与空域面积的大小,三角形面积之和大于空域面积则说明点在空域外,否则在空域内;如果格网中心点在空域内,则格网被空域占用。

37、步骤3包括:

38、步骤3-1,不同的空域用户向航空管制部门提出空域申请,在到达时限后,由航管部门对空域统一进行空域冲突检测,此时进行多空域的冲突判定;

39、步骤3-2,当有空域临时申请或突发紧急情况需要使用空域,需要将空域与步骤3-1已经处理好的空域组进行冲突检测,将该空域组看做一个整体,再与后加入空域进行比较,此时进行单空域与多空域的冲突判定。

40、步骤3-1包括:

41、步骤3-1-1,时间冲突检测:比较各空域的时间段之间是否存在重合,首先对各个空域的开始时间进行排序,记排序后空域a的开始时间为start1,结束时间为end1,空域b的开始时间为start2,结束时间为end2,当start1≤end2且start2≤end1时,两空域存在时间冲突;如果存在冲突,则将相应空域保留进入下一步检测,不与其他空域存在时间冲突的空域则退出检测,并归类为无冲突空域;

42、步骤3-1-2,高度冲突检测:检测方法同时间冲突检测,记空域a的高度下限为min_h1,高度上限为max_h1,记空域b的高度下限为min_h2,高度上限为max_h2,当min_h1≤max_h2且min_h2≤max_h1时,两空域存在时间冲突。将经过步骤3-1-2检测结束后的空域集合分别进行高度检测,保留存在高度冲突的空域,进入下一步检测,不存在高度冲突的空域则退出检测;

43、步骤3-1-3,范围冲突检测:进行矩阵hadamard乘积运算,向数据矩阵(i,j)内赋值,按照任务优先级由高到低将空域进行排序,优先级最高的空域编号101,当空域占用一格网时,向占用格网赋值其编号,未被占用格网赋值为0;第一个空域占用的格网赋值为101,形成矩阵a1,第二个空域占用的格网赋值102,形成矩阵a2,第n个空域占用的格网赋值10n,形成矩阵an,则每个空域对应一个由0和其编号构成的64×64矩阵;

44、步骤3-1-4,矩阵运算:记判断矩阵为tn,各个空域对应矩阵依次为a1至an,得到:

45、t2=1000a1+a2

46、t3=1000t2+a3

47、……

48、tn=1000tn-1+an

49、步骤3-1-5,记判断矩阵内的元素为tij,遍历所有元素,分别对其进行取整与取余处理:

50、a1=[tij÷1000],b1=tij-1000a1

51、a2=[a1÷1000],b2=a1-1000a2……

52、an=[an-1÷1000],bn=an-1-1000an

53、an=0时结束运算,当n=1时,空域无冲突;当n≥2时,存在空域冲突,此时b的不为0值即是冲突空域编号;

54、步骤3-1-6,输出最终结果,所有空域矩阵经过运算后得到空域组,空域组整体视为一个矩阵,与后续临时添加的单空域进行冲突检测。

55、步骤3-2包括:

56、步骤3-2-1,向数据矩阵(i,j)内赋值,数据矩阵(i,j)内数值默认为0,当空域占用一格网时,向数据矩阵(i,j)对应位置的元素赋值;输入空域计划时,按顺序输入空域顶点坐标,形成的矩阵即为空域对应矩阵,记为b1;时间和高度均与后加入空域有冲突的空域所对应的矩阵直接相加,记为b2;

57、步骤3-2-2,矩阵运算:记判断矩阵为b3:

58、b3=1000b1+b2;

59、步骤3-2-3,记判断矩阵内的元素为tij,遍历所有元素,分别进行取整与取余处理:

60、a1=[tij÷1000],b1=tij-1000a1

61、a2=[a1÷1000],b2=a1-1000a2

62、……

63、an=[an-1÷1000],bn=an-1-1000an

64、an=0时结束运算,当n=1时,空域无冲突;当n≥2时,存在空域冲突,此时b的不为0值即是冲突空域编号。

65、本发明具有如下有益效果:

66、1.通过采取全球三元组的编码方式,可以快速得到空域坐标点在全球的位置信息,便于空域数据的处理、检索和保存;

67、2.菱形格网形变较小,且菱形格网天然类似矩阵,有利于进行下一步的矩阵hadamard乘积计算;

68、3.针对大规模用空需求,实现快速空域冲突检测,并得到冲突空域编号,为下一步空域冲突消解减少数据查找,降低后期计算量。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1