CN106649821B - 空间目标索引构建、碰撞预警、区域和最近邻查询方法 - Google Patents
空间目标索引构建、碰撞预警、区域和最近邻查询方法 Download PDFInfo
- Publication number
- CN106649821B CN106649821B CN201611247355.6A CN201611247355A CN106649821B CN 106649821 B CN106649821 B CN 106649821B CN 201611247355 A CN201611247355 A CN 201611247355A CN 106649821 B CN106649821 B CN 106649821B
- Authority
- CN
- China
- Prior art keywords
- space
- target
- grid
- spatial
- targets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明涉及一种空间目标索引构建、碰撞预警、区域和最近邻查询方法,属于空间目标数据处理技术领域。本发明对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号;针对每个空间网格建立一个对应的目标列表,用于存储经过该空间网格的空间目标;计算空间目标所经过的所有空间网格编号,并在每个空间网格所对应的目标列表中记录落入该空间网格中的空间目标,以建立空间目标的时空索引。本发明采用球面等间隔经纬网格进行构建,结构简单,邻接关系清晰,实现了对高速运动目标的稳定索引,为空间目标的各类查询打下了基础。
Description
技术领域
本发明涉及一种空间目标索引构建、碰撞预警、区域和最近邻查询方法,属于空间目标数据处理技术领域。
背景技术
随着人类太空活动的日益频繁,地球轨道上的航天器和空间碎片等空间目标不断增多,如图1所示,截止2015年1月7日,NORAD发布的编目空间目标已经超过4万个,其中仍有17000多个空间目标在轨,其中有接近4000个左右的卫星目标,包括仍在工作的1300多个卫星。另据美国国家航空航天局估计,除了目前能被监测到的部分直径1cm以上的空间目标外,直径在1cm-10cm之间的全部空间目标超过50万个,直径小于1cm的空间目标更是数以万。如何对海量的空间目标进行管理,建立有效的时空索引,以便快速的实现有关空间目标的时空查询与应用,是维护间资产安全、感知空间态势的基础。
空间目标时空数据模型主要指空间目标的时空索引技术。运行在太空的目标属于运动目标,近年来发展起来的运动目标时空索引技术可以借鉴,目前提出的众多运动目标时空索引,从实现原理上可以分为三类:R树及其变形树、四叉树及其变形树和网格结构及其变形算法。目前这些索引方法的提出都具有一定的针对性,尚未有适应各种情况的公认方法,并且空间目标是一类特殊的运动目标,其既不同于地面上无约束的运动目标,也不同于地面上受路网约束的运动目标,空间目标的运行受到轨道动力学约束,必须在特定的轨道上运行,如果按照现有运动目标直接对空间目标的位置建立索引,由于空间目标的高速运动特性和轨道约束特点,索引结构将变得复杂、低效并且需要频繁更新,如采用目前应用较多的TPR树的索引结构,由于空间目标的轨道参数不同导致的空间目标的运行方向及速度差异,会使TPR树的最小外接矩形(Minimum Bounding Rectangle,MBR)迅速增大,加重重叠问题,出现目标的重复搜索,查询性能迅速下降。
发明内容
本发明的目的是提供一种空间目标索引构建方法,以解决目前按照运动目标直接对空间目标的位置所建立的索引结构复杂、低效的问题;本发明提供了一种空间目标的区域查询方法,以解决目前区域查询性能低的问题;本发明提供了一种空间目标的最近邻查询方法,以快速的筛选出可能与待查目标最近的目标集合;本发明提供了一种空间目标的碰撞预警方法,以解决目前的碰撞预警计算复杂,筛选慢的问题。
本发明为解决上述技术问题提供了一种空间目标时空索引构建方法,构建方法的方案一:该方法包括以下步骤:
1)对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号;
2)针对每个空间网格建立一个对应的目标列表,用于存储经过该空间网格的空间目标;
3)按照设定轨道预报步长预报的空间目标位置计算空间目标所经过的所有空间网格编号,并在每个空间网格所对应的目标列表中记录落入该空间网格中的空间目标,以建立空间目标的时空索引。
构建方法的方案二:在构建方法的方案一基础上,当空间目标的轨道发生变化时,需对空间目标索引结构进行更新,更新时,获取需要更新的空间目标所经过的所有网格编号,在所有经过网格中删除对应的空间目标编号,并获取更新后的空间目标所经过的所有空间网格编号,将该空间目标插入索引结构,完成更新。
构建方法的方案三:在构建方法的方案一或的二基础上,所述步骤3)中空间目标所在网格编号的计算公式为:
其中,α和β分别为空间目标在地心惯性系-J2000球坐标系下的赤经坐标和赤纬坐标,Δα为网格赤经方向的间隔,Δβ为网格赤纬方向的间隔,col为网格的赤经编号,row为网格赤纬编号,[]为向下取整符号。
构建方法的方案四:在构建方法的方案三基础上,所述的轨道预报步长确定的最佳原则是在不遗漏所穿网格的前提下,轨道预报步长越大越好。
本发明还提供了一种空间目标的区域查询方法,区域查询方法方案一:该区域查询方法包括以下步骤:
1)计算查询区域内过境空间目标在查询时刻所对应的惯性系下的区域,以确定查询区域的边界点在地心惯性系中的赤经、赤纬;
2)确定与查询区域相交的空间网格,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
3)利用空间目标时空索引提取相交网格中的目标编号,所述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标;并在给定的时刻,根据轨道预报模型计算所提取目标的星下点坐标,并判断所述目标的星下点是否在查询区域内。
区域查询方法方案二:在区域查询方法方案一的基础上,当查询一段时间内指定区域的空间目标时,将查询时间区间按照一定的步长进行离散化,将连续的时间转变为一系列时间片,将相应时间区间的空间目标查询转换为一系列时间片空间目标查询的综合。
区域查询方法方案三:在区域查询方法方案一的基础上,所述的步骤2)中查询区域与空间球面索引网格相交的判断过程如下:
A.将网格映射到(α,β)参数坐标系中,将球面网格变为二维网格;
B.确定查询区域的外包围矩形,所述的外包围矩形的四个角点坐标分别是:(αmin,βmin)、(αmax,βmin)、(αmax,βmax)和(αmin,βmax);
C.依次判断查询区域外包围矩形内的网格是否与查询区域相交,并记录下相交的网格编号。
区域查询方法方案四:在区域查询方法方案一的基础上,所述步骤1)中查询区域边界点计算过程如下:
a.计算查询时间中起始时刻查询区域的边界点在地心惯性系中的赤经、赤纬;
b.利用地球的平均自转角速度计算其它查询时刻的查询区域边界点所对应的赤经、赤纬。
本发明提供了一种空间目标的最近邻查询方法,最近邻查询方法方案一:该查询方法包括以下步骤:
I.利用轨道预报模型计算待查空间目标在给定时刻的空间位置;
II.利用空间目标时空索引确定空间目标所在网格,所述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
III.根据空间目标时空索引确定空间目标所在网格中所有的空间目标,并计算所确定的所有空间目标位置与待查空间目标的距离;
IV.依次比较所述网格中各空间目标与待查空间目标的距离,选出距离最近的K个空间目标,以实现对空间目标的最近邻查询。
最近邻查询方法方案二:在最近邻查询方法方案一的基础上,当待查询空间目标所在的网格中的空间目标数小于K时,以待查询空间目标所在网格为中心,由内向外对近邻的网格进行扩展索引,直到近邻网格空间目标数大于K。
最近邻查询方法方案三:在最近邻查询方法方案一的基础上,当待查询空间目标所在的网格中的空间目标与待查询空间目标的距离大于待查询空间目标与其邻近网格中空间目标的距离时,以待查空间目标所在网格为中心,由内向外对近邻的网格进行扩展索引,从待查询空间目标所在的网格及其邻近网格中选出距离最近的K个空间目标。
本发明提供了一种空间目标的碰撞预警方法,碰撞预警方法方案一:该预警方法的步骤如下:
I.利用空间目标时空索引确定查询目标所经过的网格,述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
II.根据空间目标时空索引确定空间目标所在网格中所有的空间目标,依次判断获取的空间目标与待查询目标经过该网格时高度的最大和最小值是否满足设定条件,并依次判断不满足设定条件的空间目标与待查询目标过该网格的时间有没有交集,并记录时间的交集;
III.根据得到时间交集内,按照一定的时间步长,计算不满足设定条件的空间目标之间的距离以及碰撞概率,若得到碰撞概率大于设定的阈值,则发出碰撞预警。
碰撞预警方法方案二:在碰撞预警方法方案一的基础上,所述的设定条件为:Hmin-hmax>ΔH或hmin-Hmax>ΔH
其中Hmin和Hmax分别为待查空间目标经过该网格时的最小和最大高度,hmin和hmax是网格中待比较的空间目标过该网格时的最小和最大高度,ΔH是碰撞的高度阈值。
碰撞预警方法方案三:在碰撞预警方法方案一的基础上,当空间目标出现在两个相邻但不同的网格内时,将搜索范围向待查目标所在网格的周围网格进行扩展。
本发明的有益效果是:本发明对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号;针对每个空间网格建立一个对应的目标列表,用于存储经过该空间网格的空间目标;计算空间目标所经过的所有空间网格编号,并在每个空间网格所对应的目标列表中记录落入该空间网格中的空间目标,以建立空间目标的时空索引。本发明采用球面等间隔经纬网格进行构建,结构简单,邻接关系清晰,实现了对高速运动目标的稳定索引,为空间目标的各类查询打下了基础。
附图说明
图1是空间目标数量增长图;
图2是网格索引对空间的划分示意图;
图3是轨道六根数示意图;
图4-a是球面网络划分示意图;
图4-b是球面网格的二维投影示意图;
图5是SKYMAP Pro Version 11过境分析界面图;
图6是参与过境预报的空间目标数目与消耗时间的关系图;
图7是查询区域外包围矩形示意图;
图8是查询区域切分示意图;
图9是测试周期为三天的赤经计算误差示意图;
图10是测试周期为五天的赤经计算误差图;
图11是测试周期为七天的赤经计算误差图;
图12-a是空间目标远近示意图;
图12-b是网络扩展搜索示意图;
图13是近地点-远地点筛选示意图;
图14是轨道间最小距离筛选示意图;
图15是网格高度比较示意图;
图16是预报轨迹遗漏网格示意图;
图17是所穿过网格数和插值的点数的关系图;
图18是所穿网格数与轨道倾角的关系图;
图19是轨道倾角为90度示意图;
图20-a是GPS 2F-4所穿网格数与轨道倾角的关系图;
图20-b是TDRS11所穿网格数与轨道倾角的关系图;
图21是插值点数和轨道倾角的关系图;
图22是遗漏网格处理示意图;
图23是查询区域内网格分类示意图;
图24是靠近两极区域的网格扩展示意图;
图25是网格中空间目标分布图;
图26是区域查询时间和查询区域所占网格数目的关系图。
具体实施方式
下面结合附图对本发明的具体实施方式做进一步的说明。
目前空间目标的时空数据主要包括两类,一类是形式为或的实际监测数据,另外一类是通过顶轨技术记录的轨道数据,这两类数据直接存储在关系数据库中,并没有构建必要的时空数据索引,这导致对空间目标进行时空查询变得复杂费时,对于未来时刻的时空查询主要依据轨道根数预报相应时刻的位置,做相应的分析,因此本发明提供了一种基于轨道约束的空间目标数据索引构建方法,该方法根据空间目标的时空分布特点采用球面网格的方式构建数据索引。
本发明空间目标时空索引构建方法的实施例
下面首先介绍二维平面上网络索引的基本原理,目前的网格索引主要用于对点目标的索引,如图2所示,首先将空间按照一定的间隔进行划分,然后按位置信息将点目标映射到所划分的网格中,网格中记录了其所包含的目标的指针。索引查询点目标时,首先判断其所在的网格,然后在该网格中顺序查找该目标的指针。根据点目标的位置信息查找对应的网格是一个哈希(Hash)过程,例如,设所划分的每个网格的长度是L,宽度是W,用一个二维数组grid[col][row]表示格网,其中0<col<N-1,0<row<N-1,给定一个点目标,其位置为(x,y),则其所属的网格编号col=[x/L],row=[y/W],其中[]为向下取整符号。
本发明关注的是绕地球运动的空间目标,受轨道力学约束,这些空间目标在地心惯性空间中,其运动轨迹是以地球为焦点的椭圆,该椭圆可以由轨道椭圆半场轴a、偏心率e、轨道倾角i、升交点赤经Ω、近地点角距ω和真近点角f六个参数确定,如图3所示,其中半长轴a和偏心率e用来确定轨道的大小和形状,真近点角f用于确定卫星在轨道上的瞬时位置,轨道倾角i、升交点赤经Ω和近地点角距ω则用来确定轨道面的姿态。
对于一个特定的空间目标,虽然其空间位置随着时间在高速变化,但是其运行的轨道在一定时间内相对于惯性空间是稳定的,即球面网格索引的思想就是在惯性空间中对空间目标的运行轨道进行索引。本发明所采用的网格索引方法是在惯性空间,将地球的外层空间进行球面网格剖分,计算各空间目标的轨道所经过的网格,并将该目标编号记录到对应的网格剖分,计算各空间目标的轨道所经过的网格,并将该目标编号记录到对应的网格中,实现对高速运动目标的稳定索引。
本发明采用球面等间隔经纬网格来构建空间目标的时空索引,具体步骤如下:
1.在地心惯性系-J2000球坐标系下对地球外层空间进行球面等经纬网格剖面。
如图4所示,球面网络依照赤经、赤纬方向划分,赤经从春分点开始,逆时针为正,顺时针为负,依次对网格进行编号,实际应用中为了不出现负的网格编号,需要对赤经方向编号进行规则化处理,将原来的网格编号范围[-180,180]规划为[0,360];赤纬方向以南极开始向北级极端网格编号,每个网格用grid[col][row]来表示,每个网格对应的赤经赤纬范围为[αcol,αcol+1,βrow,βrow+1],其中
αcol=Δα×col
αcol+1=Δα×(col+1)
βcol=Δβ×row
βcol+1=Δβ×(row+1)
其中Δα为网格赤经方向的间隔,Δβ为网格赤纬方向的间隔。
2.按照一定的步长预报一个周期内空间目标的位置,并依次确定各目标所经过的所有网格编号。
本发明研究的数据只要是两行轨道根数(Two Line Elements,TLE)数据,因此,本发明采用SGP4/SDP4轨道预报模型进行轨道预报。首先计算空间目标在给定时刻J2000坐标系下的空间直角坐标,然后将得到空间直角坐标转换到对应的天球坐标系下,转换过程中需注意象限的判断及分母为0时的处理,具体采用的坐标转换公式为:
其中[]为向下取整符号。
3.为每个空间网格建立一个目标列表,用于存储落入空间网格中的空间目标,若某一个空间目标在其预报周期内有点落在该网格中,则将该目标编号记录在对应的网格的目标列表中。
本发明采用的目标列表形式为:
grid[col][row]:<num,ID1,ID2,...,IDn>
其中grid[col][row]表示编号为(col,row)的网格,<num,ID1,ID2,...,IDn>为经过对应网格的目标列表,num为目标数,ID1,ID2,...,IDn为详细的目标编号。
4.更新索引结构。
由于受到地球扁率、大气阻尼等摄动因素的影响,空间目标的轨道会发生变化,为此需要对空间目标索引结构进行更新,本发明建立一个空间目标编号的Hash表,Hash表记录了对应的空间的目标所经过的网格,需要更新时,首先获取需要更新目标所经过的所有网格编号,然后在所有经过网格的目标列表中删除对应的目标编号,最后按照步骤2和步骤3重新将该目标插入索引结构,完成更新。其中Hash表的结果如下:
ID:grid1,grid2,...,gridn
其中ID表示目标编号,grid1,grid2,...,gridn为该目标所穿过的网格。
通过上述过程即可完成空间目标球面网格索引的构建,从中可以看出,基于轨道约束的球面等经纬网格的空间目标时空索引构建简单易行。
本发明空间目标的区域查询方法的实施例
区域查询指的是在指定空间目标经过某区域的时间和在指定的时间内,经过某区域的空间目标有哪些,对于指定空间目标的过境查询,方式是对选定的空间目标按照一定的步长预报其空间目标的位置,计算其进入和离开指定区域的时间,经过某区域的空间目标时,则需要将所有目标依次进行过境预报时是有效的。当查询指定的时间内,经过某区域的空间目标时,则需要将所有目标依次进行过境预报,这样将耗费巨大的计算资源和时间,如SKYMAP Pro,SKYMAP Pro是由英国SKYMAP公司开发的一款受到业界公认的天文仿真分析软件,其提供的空间目标过境分析模块,可以根据用户输入的空间目标轨道数据进行过境分析,SKYMAP Pro Version 11过境分析的界面如图5所示,其对不同数目的空间目标进行过境分析所消耗的时间如表1和表2所示,参与过境预报的空间目标数目与过境预报所消耗时间的关系如图6所示。
表1
目标数目 | 500 | 600 | 700 | 800 | 900 | 1000 |
过境分析用时(秒) | 7.90 | 10.52 | 13.33 | 16.07 | 18.37 | 19.66 |
表2
目标数目 | 1100 | 1200 | 1300 | 1400 | 1500 | 1600 |
过境分析用时(秒) | 22.62 | 26.07 | 28.75 | 32.45 | 35.82 | 39.33 |
图6的预报周期24小时,具体预报时间为2013年6月3日12时整到2013年6月4日12时整,轨道预报步长是15秒。
从测试结果中可以看出,随着空间目标数量的增加,其过境预报所消耗时间呈线性增长,这一测试结果印证了其查询某段时间内过某区域的空间目标的方法是采用逐个目标分别判断的方法。结果显示SKYMAP Pro软件进行24小时内的过境预报时,平均每个目标需耗时0.02秒左右,按照目前在轨工作的1300多个空间目标算,进行一次24小时内过某区域的空间目标查询时,需要消耗超过26秒的时间,如果算上目前能观测的空间碎片,空间目标超过17000个,这时消耗的时间将达到340秒,显然这样的查询速度不能满足需求。因此本发明提供一种空间目标的区域查询方法,该查询方法以所建立的空间目标时空索引为基础,该查询方法的具体步骤如下:
1.对于给定的区域,计算其在查询时刻所对应的惯性系下的区域。
假设区域范围的边界点在大地坐标系下的坐标为(L1,B1),(L2,B2),…,(Ln,Bn),则首先将其换算到J2000坐标系下的空间直角坐标,然后计算出其对应的J2000地心球坐标系下的坐标(α1,β1),(α2,β2),…,(αn,βn)。
2.计算查询区域与空间球面索引网格的相交情况,相交情况可以用下面的方法进行计算。
①首先将球面网格映射到(α,β)参数坐标系中,这样球面网格变为二维网格,如图7所示。
②求取查询区域的外包围矩形,如图7所示,外包围矩形的四个角点坐标分别是(αmin,βmin)、(αmax,βmin)、(αmax,βmax),(αmin,βmax),其中:
αmin=min{α1,α2,...,αn}
αmax=max{α1,α2,…,αn}
βmin=min{β1,β2,...,βn}
βmax=max{β1,β2,...,βn}
③依次判断查询区域外包围矩形内的网格是否与查询区域相交,记录下相交的网格编号grid1′,grid2′,...,gridk′,图7中左斜线填充部分表示查询区域外包围矩阵内的网格,叉线填充部分为与查询区域相交的网格。
④查询区域跨边界问题的处理,如果查询区域跨越边界,则需要按照边界将查询区域切分成多个子查询区域,分别计算各个子查询区域与网格的相交情况,图8是几种切分示意图。
3.取出相交网格中的目标编号,在给定的时刻,根据轨道预报模型计算这些目标的星下点坐标,并判断这些目标的星下点是否在查询区域内。
以上步骤只给出了在指定时刻、指定区域内的过境空间目标的查询方法,要查询一段时间内指定区域的空间目标过境情况,需要将查询时间区间按照一定的补偿进行离散化,将连续的时间转变为一系列时间片,相应的时间区间内的过境情况按前面给出的步骤1到步骤3执行。
地球绕自转轴自西向东的转动,转动的平均角速度为7.2921159弧度/秒,20世纪50年代从天文测时的分析发现,地球自转速度有季节性的周期变化,春天变慢,秋天变快,此外还有半年周期的变化。周年变化的振幅约为20~25毫秒,主要是由风的季节性变化引起,另外地球自转还存在原因不明的不规则变化。虽然地球自转并非匀速,但是其速度值短时间内变化较小,考虑到本发明所用的TLE的SGP4/SDP4预报模型预报时间在5天以内时精度较高,受预报精度限制,区域查询时间范围不能太大,结合实际的应用情况,区域查询的时间范围在未来5天以内可以满足需求,因此可以利用地球的平均自转角速度简化步骤1中边界点在地心球坐标系下的坐标计算方法,减少计算时间,提高查询效率,改进后的查询区域边界点计算方法可按下面步骤进行:
步骤2:对于其它查询时刻Tk时的查询区域边界点所对应的赤经、赤纬的计算公式如下式所示:
计算完查询时刻Tk时的查询区域边界点所对应的赤经、赤纬后,即可按照指定时刻区域查询步骤的步骤2和步骤3进行查询。
为了测试这种改进方法的性能和精度,本发明做了如下实验:以大地坐标(100.0,10.5)为例进行测试,测试周期为3天、5天和7天,起始时刻为2013年6月3日12时。图9到图11是测试结果,其中横轴是从开始时刻起算的结果序号,纵轴是两种方法计算的测试点赤经的误差,以角度为单位,两种方法赤纬计算结果相同。图9和图10的时间间隔是1分钟,图11的时间间隔为1小时。
从测试结果可知,随着预报时间的增加,计算误差在增加,但是误差都控制在很小的范围内,测试周期为3天的,最大误差只有,平均误差也只有;测试周期为5天的,最大误差值达到平均误差为测试周期为7天的,最大误差值达到,平均误差为,可见改进方法精度方面能满足需求。时间方面,测试周期为3天时,计算了4320次,原来的方法用时39毫秒,改进后方法用时8毫秒,提速近5倍,当查询区域比较复杂,边界点较多时,改进方法的优势将突显出来。
本发明空间目标的最近邻查询方法的实施例
当需要查询在给定的时间距离给定目标最近的K个目标时,可采用空间目标KNN查询方法,该方法能够高效地定位目标,进而分析不同目标间的邻近关系,辅助空间任务分析,如空间目标天基监视系统中目标成像时机、机动重构等,还可用于卫星故障诊断,当卫星出现故障时,查询最近的卫星有哪些,以便分析故障是否为敌方卫星所为。该方法是在本发明空间目标时空索引构建的基础上实现的,具体步骤如下:
1)利用轨道预报模型计算出待查空间目标在给定时刻的空间位置。
2)按照一定的步长预报一个周期内空间目标的位置,利用空间目标时空索引确定空间目标所在网格,空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标,空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到。
3)根据空间目标时空索引确定空间目标所在网格中所有的空间目标,并计算所确定的所有空间目标位置与待查空间目标的距离。
4)依次比较网格中空间目标与待查目标的距离关系,找出最近的K个空间目标。
由于本发明的网格索引并非对空间位置进行索引,二是对空间目标轨道进行索引,因此有可能出现如图12-a所示,在图12-a中,A是待查目标,B和C是另外两个空间目标,其中B和A同属一个格网,但是C和A的距离比B与A的距离更短,为此需要以A所在的网格为中心,由内向外对近邻的网格进行扩展索引,如图12-b所示。另外,当A所在网格中空间目标数少于K时,同样需要进行扩展搜索,直到近邻网格空间目标数大于K为止,图12中的曲线是空间目标A的轨迹线。
上面给出的是某一时刻空间目标KNN查询方法,对于一段时间,同样采用将时间段按一定步长离散成一系列时间片进行查询的方法,离散后按照步骤1)到步骤4)进行KNN查询,从而实现一段时间内的KNN查询,该方法能够快速的筛选出可能与待查目标最近的目标集合,从而减少不必要的位置、距离以及远近判断,从而提高查询速度。
本发明空间目标的碰撞预警方法的实施例
空间目标的球面网格索引建立了空间目标的邻近关系,本发明依据这样的邻近关系提出一种新的空间目标碰撞预警方法。空间目标的碰撞预警可以描述为:在某段时间内与指定空间目标相关的可能碰撞事件有哪些,和某段时间内所有可能的碰撞事件有哪些,后者可以由循环判断每个空间目标的碰撞事件获得。
碰撞预警最原始的方法是按照一定的步长计算每一时刻待检测空间目标与其它所有已经编目的空间目标的空间位置,通过比较它们在同一时刻的空间距离以及计算碰撞概率来判断是否会发生碰撞。由于空间目标数目巨大,即使当前的高性能计算机也不能及时的给出碰撞结果。因此目前主要使用筛选法首先去除哪些绝不可能与待检测空间目标发生碰撞的空间目标,常规的筛选条件有:近地点-远地点条件,几何条件,时间条件。
(1)近地点-远地点条件
如图13所示,当某一空间目标的远地点高度Ha小于待检测空间目标A的近地点高度hp(Ha<hp),或者近地点高度Hp大于待检测空间目标A的远地点高度ha(Hp<ha)时,该空间目标显然不可能与待检测空间目标发生碰撞。通过近地点-远地点筛选,可以去除70%左右的空间目标,后面只需要在剩余的空间目标中进行检测。
(2)几何条件
任何两个非共面的空间目标发生碰撞只有可能发生在两个目标轨道面的交线附近,如图14所示,两个空间目标可能碰撞的位置矢量相差180度。根据球面三角理论和矢量分析方法可以确定两个空间目标过交点的位置和过交点时地心距之差为rmin1和rmin2,rmin1和rmin2是两个空间目标的有可能的最小距离,通过给定预警阈值Δd1对空间目标进行进一步筛选,通过下式判断目标是否发生碰撞,当满足下式时则有可能发生碰撞。
min(|rmin1|,|rmin2|)<Δd1
经过几何筛选,剩余空间目标的数量已不到空间目标总数的。
(2)时间条件
对于没有通过几何条件排除的空间目标,还可以通过时间条件进行排除,两个空间目标要发生碰撞,必须尽可能同时经过接近点,即可以利用两个空间目标过轨道面交线的时间差来进行筛选。
一般而言,空间目标在飞过轨道平面交线前后有一个短暂的危险时间区间,利用空间目标到另一目标轨道面的垂直距离|z|和|z|<Δd2,解析地估计该时间区间,Δd2为垂直距离阈值。这样在每个周期内可以形成两个时间区间,进而在预警时间段[Ts,Te]内形成一个时间区间序列,同理另一个空间目标也可以得到一个时间区间序列,如果这两个时间区间序列没有交集,则排除此空间目标。时间筛选一般可以排除掉大量目标,对于没有排除掉的目标,所关心的时间区间也缩短到一个小子集。
经过上面三个条件的筛选后,绝大部分空间目标被排除在外,剩下的空间目标,在交会时间的一定区间内,按一定时间步长,进行高精度轨道预报,计算出空间目标与待检测空间目标的距离及碰撞概率,根据给定的阈值进行碰撞预警。当采用TLE数据进行预报时,由于TLE数据的预报模型SGP4/SDP4的精度随时间增长逐渐下降,因此在前面的三个筛选条件下,还需要增加历元筛选,即剔除久未更新的数据。
目前的这种筛选方法中,交会点位置和交会时间的计算涉及到复杂的三角函数和迭代运算等。本发明依据建立的球面网格索引,提供了了一种新的碰撞预警方法,该方法无需复杂的三角函数和迭代计算即可快速的完成筛选,该方法的具体步骤如下:
1.查询目标Hash表,获取该目标所经过的网格。
2.依次对所经过的网格做如下处理:
1)利用所构建的空间目标时空索引获取该网格所包含的目标列表,从而得到经过该网格的空间目标;
2)依次判断所获取的目标与待查询目标经过该网格时高度的最大和最小值是否满足下式:
Hmin-hmax>ΔH或hmin-Hmax>ΔH
每个网格里有很多待比较的目标,他们的高度用h来表示,而待查询的空间目标高度用H表示,Hmin和Hmax分别为待查空间目标经过该网格时的最小和最大高度,hmin和hmax是网格中待比较的空间目标过该网格时的最小和最大高度,如图15所示,前一个公式的意思是待查询目标经过网格时的最低高度值比网格里某一待比较目标经过网格时的最大高度值还要高出△H,很明显表明两者没有碰撞的可能性,依次比较下去进行排除;后一个公式的意思恰好相反,满足任意一个公式都说明,相比较的两者没有可能碰撞,△H为碰撞的高度阈值,其中经过网格最小最大高度记录方法:建立索引时,记录下轨道预报点的高度,并且在相邻两个网格处进行加密插值;
3)依次判断不满足上述判断条件的空间目标与待查询目标过该网格的时间有没有交集,如果有交集则该目标是备选碰撞目标,并同时记录下时间的交集:
{(ts1,te1),(ts2,te2),...,(tsn,ten)}
其中tsi表示时间集中一段的开始时间,tei表示结束时间,其中tsi和tei的计算方法是:建立索引时,记录下轨道预报的时间,并且在相邻两个网格处进行加密插值得到。
3.根据步骤2中所求出的时间交集内,按照一定的时间步长,计算空间目标之间的距离以及碰撞概率,如果大于一定的阈值,则发出碰撞预警。
由于两个目标最近点在两个空间目标的轨道面交线附近,不一定在两个目标的轨道面交线上,如图14所示,因此,虽然两个空间目标的轨道面交线上的点应该出现在同一网格内,但是有可能出现:距离最近时,空间目标出现在两个相邻但不同的网格内的情况,加上轨道数据本身存在的误差,为了不漏判空间目标,本发明在进行筛选判别时,将搜索范围向待查目标所在网格的周围网格进行扩展,如图12-b所示,以保证筛选的准确率。
本发明基于轨道约束的空间目标数据索引性能受到很多因素的影响,如索引构建时的轨道预报步长、索引构建高度维和时间维、地球静止轨道空间目标及两极变形等。下面针对各影响因素给出对应的优化方式。
(1)轨道预报步长
轨道预报步长指的是在索引建立时,计算轨道所穿过的网格时的轨道预报步长,如果轨道预报步长过大,有可能出现目标实际穿过的网格被遗漏的情况,如果轨道预报步长过小,会增加计算的时间,影响索引创建和更新性能,因此轨道预报步长确定的最佳原则是在不遗漏所穿网格的前提下轨道预报补偿越大越好。
本发明采用STK网站公布的2013年6月8日国际空间站(International SpaceStation,ISS)的TLE数据进行测试,ISS参数如表3所示,将网格划分为360*180,赤经和赤纬方向网格的间隔都是1度,如表4和表5所示,一个轨道周期插值的点数和计算出的目标ISS所穿过网格数的实验结果如图17所示。从中可以看出,当预报步长变短时,所计算出的空间目标所穿网格数目在增大,但是到一定数值后,补偿进一步变小,所穿网格数不再变化,实验中每一个周期内插值点数增加到10000以后,计算出的所穿网格数为569左右,不再继续增加。
表3
ISS |
1 25544U 98067A 13158.90522786 .00006137 00000-0 11254-3 0 9596 |
2 25544 51.6474 154.3697 0010594 45.4535 17.9325 15.50702194833262 |
表4
插值点数 | 1000 | 2000 | 3000 | 4000 | 5000 | 6000 | 7000 |
所穿网格数目 | 502 | 539 | 547 | 559 | 563 | 564 | 564 |
表5
插值点数 | 8000 | 9000 | 10000 | 15000 | 20000 | 50000 | 100000 |
所穿网格数目 | 564 | 566 | 569 | 568 | 569 | 570 | 569 |
对于不同的空间目标,其轨道倾角不同,所穿过的网格数目也不相同,为此本发明做了以下模拟实验,模拟一组轨道倾角由0度到179度变化的空间目标,变化间隔为1度,所使用的轨道参数仍然是2013年6月8日ISS的TLE数据(如表3所示),改变其轨道倾角产生180条模拟TLE数据,每条TLE唯一的不同就是轨道倾角,按照上面的方法分别计算了其所穿网格数目,轨道周期内插值点数为50000次,实验结果如图18所示,其中网格数目为360*180。从中可以看出随着轨道倾角的增大,空间目标所穿网格呈直线增长,当轨道倾角接近90度时,所穿网格数目达到最大719之后又直下降;当倾角为90度时,出现一个低谷,如图19所示;当轨道倾角接近0度时,所穿过的网格是363而不是360,原因是所求解轨道周期大于实际的轨道周期,目标结束和开始的地方出现部分重叠,由于索引构建中,网格中记录的是目标的编号,这种重复穿过同一网格的情况并不会对构建结果产生影响,为了验证结果是否具有通性,本发明又采用同一时间公布的GPS 2F-4和TDRS 11卫星的TLE数据进行同样的模拟实验,结果分布情况同ISS的一致,实验结果如图20-a和图20-b所示。造成这种分布的原因主要有以下两个方面:一方面与赤道有夹角的轨道必然比平行与赤道的轨道所穿的网格要多,另一方面是球面上从赤道开始越靠近球面两极网格越密,倾角较大的轨道所穿的网格必然增多。
为了更准确计算所穿网格,倾角越大的轨道,对应的轨道预报步长需要相应的变小,通过实验建立的目标所穿网格数目和轨道倾角的经验公式,在建立索引时,根据得到的经验公式来判断当前轨道预报步长所计算出来的空间目标所穿网格数是否达到应有的数目,以便进行调整,在保证不遗漏网格的前提下,尽量采用较大的插值补偿,减少计算量。所采用的经验公式为:
其中numG是一个轨道周期内轨道插值点数,i是轨道倾角。在此基础上,本发明建立周期内需要插值点数numG和轨道倾角i的映射表,依据插值映射表能够大大减少插值的次数。部分插值点数与轨道倾角的对应关系如表6所示,插值点数和轨道倾角的关系如图21所示。
表6
轨道倾角范围 | [0,1] | (1,2] | (2,3] | (3,4] | (4,5] | (5,6] | (6,7] | (7,8] | (8,9] |
插值点数 | 360 | 360 | 460 | 720 | 720 | 1020 | 910 | 1140 | 1270 |
经过上面的优化后,建立13864个空间目标索引的时间由213999毫秒减少到67623毫秒,优化前方法的轨道周期插值数为20000,从结果看,优化后计算速度提速比为3.16。以上实例中的的网格划分方案是360×180,如果调整网格方案,相应的插值映射表做等系数调整即可。
该方法能量尽量不遗漏网格的情况下减少不必要的计算,但是仍然不能保证不遗漏网格,但此时遗漏的网格数目非常少。当相邻的两个预报点落在不同两个网格时加上如下处理:分别在赤经赤纬方向上判断,这两个点之间是否既有赤经方向网格分界线,又有赤纬方向网格分界线,如果都有,则有网格遗漏,如果只有一条分界线,则没有网格遗漏。遗漏时,采用下面方法确定哪个网格被遗漏:设相邻的两个预报点分别为预报点1和预报点2,如图22所示,其所落的网格编号分别为(col1,row1)和(col2,row2),在平面的局部区域上,相邻两点用直线代替原来的弧线,求出赤纬方向分界线与直线的交点,以赤经分界线为界,判断该交点在哪个预报点一侧,如果交点在预报点1的一侧,则遗漏的网格编号为(col2,row1),如果交点在预报点2的一侧,则遗漏的网格编号为(col1,row2)。
(2)高度维
前面的划分方式只是在赤经、赤纬方向进行划分,在高度方向并没有进行划分,但是进行KNN查询时,会出现一个空间网格中的目标由于高度悬殊实际相距很远的情况。因此本发明在空间网格加上高度一维,以免出现一个网格中的空间目标距离很远的情况。本发明关注的空间范围是120~50000km,如果按高度均匀分层,会造成格网数目巨大,由第二章的空间目标分布特性可知,空间目标在高度上并不是均匀分布,因此在高度方向上不采用均匀分层的方法,而是根据空间目标高度分布特点,在空间目标密集的地方,分层间隔变小,空间目标稀少的地方,间隔变大。
由统计结果可知,空间目标的轨道半长轴集中分布在[6700km,8000km]、[25000km,27000km]、[41000km,43000km]几个区间,本发明取地球的平均半径为6380km,将以上区间从轨道半长轴换算成高度,则空间目标主要分布在[320km,1620km]、[18620km,20620km]、[34620km,36620km]几个高度区间。根据实际轨道数据,结合碰撞预警范围,确定密集区域间隔为20km,非密集区域中320km以下间隔为100km,其它区域间隔为5000km,37000km高度到50000km分为一层,总计分276层,其中高度区间对应的编号范围如表7和表8所示。
表7
高度区间 | [120,320] | [320,1620] | [1620,18620] | [18620,20620] |
编号范围 | [0,1] | [2,66] | [67,70] | [71,170] |
表8
高度区间 | [20620,34620] | [34620,36620] | [36620,37000] | [37000,50000] |
编号范围 | [171,173] | [174,273] | [274,274] | [275,275] |
加上高度一维后,每个网格可以用<col,row,h>来表示,h的取值范围从0到275。
对于碰撞预警,在高度方向的网格划分可以剔除部分不可能碰撞的目标,但是因为高度方向网格划分的间隔不等,从20km到几万千米都有,用于碰撞预警高度方向的检测显然不够精确,为此将网格索引结构变为下面的形式:
grid[col][row]:<num,Target1,T arg et2,...,T argetn>
其中Target的结构为<ID,Hmin,Hmax>,Hmin和Hmax分别为目标经过每个网格时的最小和最大高度值,这两个值的获取方法是:建立索引时,记录下轨道预报点的高度,并且在相邻两个网格处进行加密插值,获得Hmin和Hmax。当进行碰撞预警时可以采用上式进行高度方向的判断,当进行KNN查询时则需要采用<col,row,h>的网格索引形式。
(3)时间维的影响
前面建立的空间索引,主要用于快速判断哪些目标符合查询条件,初步获取符合条件的目标后,还需要对在查询时间内对这些目标进行轨道预报,进一步确定是否满足条件,这一定程度影响了查询的性能,为此对索引结构进行如下优化:
记录经过网格的时间,时间的记录形式是(ts+nT,te+nT),其中T是空间目标的轨道周期,其值可以由轨道根数得到,ts,te的计算方法是:建立索引时,记录下轨道预报的时间,并且在相邻两个网格处进行加密插值,获得ts和te,这两个值以儒略日形式记录,n是整数值,相应的网格索引结构要发生变化,即加上时间维,Target的结构变为<ID,Hmin,Hmax,ts,te,T>。
相应的查询过程变为:
1)区域查询
区域查询的第2步中,求查询区域与网格相交情况时,进一步将相交网格分为查询区域内网格和查询区域边界线所穿网格(如图23所示),查询区域内网格中的目标无须再根据轨道预报模型计算这些目标的星下点是否在这些区域,只需判断目标中记录的过该网格的时间区间(ts+nT,te+nT)和查询时刻是否有交集即可;查询区域边界线所穿过的网格在利用时间维去除不可能满足条件的目标后,在剩下的目标中还需要进行点位计算以判断该查询时刻目标是否在查询区域内。
2)KNN查询
对KNN查询,需要在步骤3前加上一个时间判断步骤,判断这些空间目标过网格的时间范围在给定的查询时间区间内有没有可能有交集,如果没有交集,则排除该目标,无需进行后续的判断。
基于空间目标时空索引的碰撞预警已经考虑了时间维的影响。
(4)地球静止轨道空间目标的影响
地球静止轨道(GEO)空间目标的轨道周期和地球自转周期相同,轨道面和赤道面重合,在地固系下,其星下点轨迹固定在一点,因此在区域查询中,无需将GEO空间目标在惯性球面网格中建立索引,只需记录GEO空间目标星下点位置,查询时直接判断GEO空间目标的星下点位置是否在查询区域范围内即可,这样可以减少参与索引构建的目标,降低索引的复杂度,增加查询性能。截止2015年1月7日,SpaceTrack网站公布的地球同步轨道(GSO)空间目标数目已经达到764个,其中GEO空间目标约300个左右。
(5)球面网格南北极处理
球面网格在到达两极时,网格会退化成三角形,网格所对应的面积也逐渐变小,因此在进行查询处理,查询区域靠近两极时需要增加查询区域的网格扩展范围,尤其是靠近两极方向的网格,如图24所示。
实验验证
为了验证本发明的优越性,在笔记本电脑上,配置见表9,基于Windows平台,在Qt开发环境中,利用OpenGL图形开发包实现了本发明提出的方法。实验数据采用STK网站公布的数据,数据下载的时间为2013年06月08日,该数据收录了13864个空间目标的两行根数,实验中采用SGP4/SDP4预报模型进行轨道预报。
表9
CPU | Intel(R)Core(TM)i5-2430M CPU@2.40GHz 2.40GHz |
内存 | 4G |
显卡 | NVIDIA NVS 4200M(1G内存) |
1.对本发明空间目标数据索引构建方法的实验。
为了分析建立的球面网格索引中空间目标的分布规律,本实验构建了360×180的网格索引,统计各个网格中的空间目标,统计结果绘制成分层设色图后的效果如图25所示,所有网格中目标最多的为769,对应的网格编号为(168,9),最少为4,对应的网格编号为(186,5),(201,5),(232,5),(6,174),(21,174),(52,174),(294,177),(299,177),最多和最少都在两极附近。
从图25中可以发现:空间目标较多的网格主要集中在赤道和两极附近,赤道附近网格空间目标多主要是因为地球同步轨道空间目标较多,并且其轨道倾角较小,所穿网格则主要集中在赤道附近;两极附近网格空间目标多则主要因为倾角接近于98°的太阳同步轨道空间目标较多的原因。两极处一定范围内很少有空间目标经过这里,这一定程度上减轻了球面网格南北极变形所带来的影响。从网格中空间目标的分布数量来看,其特点符合空间目标分布规律的统计。
索引结构中维护了一个目标Hash表,因此可以快速定位到需要更新的网格,而不需要像TPR树那样采用自顶向下的方法进行搜索,因此可以实现索引中空间目标的快速删除。索引更新主要包括空间目标删除和插入操作,由前面实验可知:网格划分方案为360×180时,建立13864个空间目标索引的时间为67623毫秒,平均每个目标插入耗时4.9毫秒。为了测试索引删除目标的性能,将13864个目标从建立的索引中依次删除,统计其用时为6624毫秒,平均每个目标的删除时间只有0.48毫秒。
2.对本发明空间目标区域查询方法的实验。
理论上,基于空间目标时空索引的区域查询不需要对所有目标进行遍历,只需判断与查询区域相交的网格中的目标是否满足条件皆可,设网格中的平均数目是N,查询区域包含M个网格,则如果每个网格中包含的目标不重复,则需要判断的目标是N×M,相邻查询时间片的间隔与传统的空间目标插值间隔相同,则本发明查询一个时刻指定区域内空间目标所消耗的时间是N×M×Δt,而传统方法则需要消耗Nall×Δt,Nall是所有的空间目标数量,Δt是判断某一空间目标在某一时刻是否在指定区域内所用的平均时间。本实验中采用的空间目标数目Nall为13864,采用360×180网格划分方案时,平均每个网格中的目标数目N是129,则当查询区域所占网格数M达到107时,二者所用时间应该相当,但是本发明的球面网格索引,可以利用时间维剔除部分在查询时刻不会出现在网格中的目标,并且不同网格中包含的目标不可避免的会出现大量重复,因此实际查询时间应该比理论分析结果要少,并且在实际应用中,尤其是空间目标防侦照,主要关注我国境内的某一地区,我国的疆域范围主要分布在东经73度40分到东经135度2分30秒、北纬3度53分到北纬53度33分之间,由图25网格中空间目标分布特点可知,该纬度范围内的网格中空间目标分布均匀,且数目较少,因此实际所消耗的时间应该比理论分析少得多,下面结合实际数据进行区域查询实验,实验中仍然采用了360×180的网格索引,实验(1)和实验(2)中没有加入时间维。
(1)同一区域不同时间段实验
测试时间分为两组,如表10所示,时间插值的步长为60秒,测试的查询区域为一矩形区域,范围为经度[50,115],纬度[25,30]。
表10
起始时间 | 结束时间 | |
时间段1 | 2013/6/8 15:32:23 | 2013/6/8 15:43:23 |
时间段2 | 2013/6/8 15:32:23 | 2013/6/9 15:43:23 |
区域查询所用的时间如表11所示,其中方法指的是采用所有目标逐个判断的传统方法,方法2为本发明的区域查询方法。
表11
方法1用时(毫秒) | 方法2用时(毫秒) | 方法2用时/方法1耗时 | |
时间段1 | 1266 | 586 | 0.46 |
时间段2 | 153798 | 93445 | 0.61 |
时间段1时,方法1和方法2所查询的过境空间目标具体情况如表12所示,其中第一列时刻指查询时离散化的时间片,这里以儒略日的形式给出,第二列给出了方法1在对应时刻所查询出的过境空间目标数量,第三列给出了方法2在对应时刻所查询出的过境空间目标数量,第四列给出了两种方法所查询到的过境目标数量差值。
表12
序号 | 时刻(儒略日) | 方法1 | 方法2 | 差值 |
1 | 2456452.147488 | 77 | 77 | 0 |
2 | 2456452.148183 | 64 | 64 | 0 |
3 | 2456452.148877 | 55 | 55 | 0 |
4 | 2456452.149572 | 68 | 68 | 0 |
5 | 2456452.150266 | 75 | 75 | 0 |
6 | 2456452.150961 | 78 | 78 | 0 |
7 | 2456452.151655 | 70 | 70 | 0 |
8 | 2456452.152350 | 58 | 58 | 0 |
9 | 2456452.153044 | 69 | 69 | 0 |
10 | 2456452.153738 | 81 | 81 | 0 |
11 | 2456452.154433 | 75 | 75 | 0 |
12 | 2456452.155127 | 71 | 71 | 0 |
从表11的结果可以看出,查询相同时间内过同一区域的过境目标,方法2所用时间大概是方法1的一半左右,实验中查询区域所占网格数为325,大于107,但所用时间仍然小于方法1,印证了前面的理论分析。从表12的实验结果可以看出,方法2查询的过境目标数量和方法1的结果相同,并且本实验仔细比对了具体的过境目标,二者完全一致,从而充分说明了基于空间目标时空索引的区域查询的结果是准确的。
(2)同一时间不同区域实验
由前面分析可知,查询区域的面积不同时,基于空间目标时空索引的区域查询所消耗的时间也不同,为此本实验固定查询时间,变化查询区域来测试基于空间目标时空索引的区域查询所用的时间,查询时间如表10中的时间段1,步长仍然为60秒。查询区域及对应的查询时间分别如表13和14所示,其中查询区域都采用矩形,并且这些查询区域的经纬度范围都在中国所在的经纬度范围之内,两种方法区域查询时间和查询区域所占网格数目的关系如图26所示。
表13
表14
从该实验结果可知,基于空间目标时空索引的区域查询中,当查询区域所占网格增加时,区域查询所用的时间呈线性增长,而传统方法则恒定在1250毫秒左右,实验结果与前面理论分析相符,基于空间目标时空索引的区域查询受查询面积影响较大,但是当所占格网数小于2750时,所用的查询时间仍然小于传统方法,而此时查询区域与我国的疆域面积相当,这一结果表明,在我国进行特定区域的空间目标过境分析时,基于空间目标时空索引的区域查询效率必定优于传统方法。实际应用当中,区域查询面积大部分情况都会远远小于我国的疆域面积,只限定在小面积敏感区域,此时基于球面网格索引的区域查询优势就可以得到发挥,尤其是查询时间较长时,所节约的时间会非常可观,如表中,时间段2查询时,方法2比方法1节约了1分钟左右。
另外,由于球面网格索引中每个网格中空间目标的数目不同,所以即使两个面积相同的不同查询区域,区域查询所消耗的时间也不同,如表11中,查询区域所占网格数为325,所用的时间为586毫秒,表13中查询区域所占网格数为600,所用的时间仅456毫秒。
(3)加入时间维的影响
为了测试时间维加入网格索引对区域查询的影响,做了如下实验:查询时间同表10中的时间段1,查询区域为经度[85,135],纬度[8,54],区域查询中加上过网格时间判断,查询所用的时间如表15所示,方法3指在方法2中加入时间维判断后的方法,方法3查询的过境目标详细情况如表16所示。
表15
方法1 | 方法2 | 方法3 | |
区域查询用时(毫秒) | 1280 | 1365 | 935 |
表16
从该实验结果可知,加入时间维后,区域查询的时间有所减少,但是此时会出现部分空间目标被遗漏的情况,主要原因是空间目标在空间运动时会受到各种摄动因素的影响,其运行的周期不再是一个恒定值,因此在时间判断时,出现了错误的剔除,为此进行时间判断时需要在轨道周期中加入摄动的影响。
3.对本发明空间目标最近邻查询方法的实验。
基于空间目标时空索引的KNN查询时,可以根据空间目标所在网格快速确定一批候选空间目标,而不需要遍历所有的空间目标,为了验证其性能,本实验以卫星编号(Satellite Catalog Number)为27620的空间目标为例进行KNN查询实验,查询时间为2013/6/8 15:32:23至2013/6/9 15:43:23(UTC),查询步长为1小时,K取值为3,了采用本发明方法和传统的所有目标遍历法的实验结果如表17和表18所示。
表17
所有目标遍历法 | 本发明方法 | |
KNN查询用时(毫秒) | 4857 | 714 |
表18
由该实验结果可知,本实验的方法和采用目标遍历方法的查询结果一致,但是查询时间只是其15%左右,即本发明的KNN查询方法可以在不损失查询准确率的情况下,极大的提高KNN查询的速度。
4.对本发明空间目标碰撞预警方法的实验。
为了测试基于空间目标时空索引的碰撞预警方法的有效性,在低轨、中轨、高轨、闪电轨道、地球静止轨道等几种有代表性的轨道类型中,各随机选取两个空间目标进行碰撞预警实验,所选目标编号如表19所示,查询的时间为2013/6/8 08:32:23至2013/6/9 09:32:23(UTC)。逐点计算方法、STK中Close Approach模块及本发明的碰撞预警方法三种方法所用到的阈值如表20所示,其中STK中Close Approach模块使用的是常规的筛选法碰撞预警,这几种方法的碰撞预警结果如表21和22所示。
表19
表20
表21
表22
目标编号 | 逐点计算方法 | STK方法 | 本发明方法 |
27437 | 36 | 36 | 36 |
38261 | 2 | 2 | 2 |
28914 | 2 | 2 | 2 |
33464 | 2 | 2 | 2 |
24282 | 0 | 0 | 0 |
33519 | 0 | 0 | 0 |
26867 | 0 | 0 | 0 |
37171 | 0 | 0 | 0 |
33595 | 0 | 0 | 0 |
38551 | 0 | 0 | 0 |
碰撞预警时间结果如表21所示,从中可以看出,逐点计算的方法耗时巨大,很难在实际的碰撞预警任务中使用,本实验的碰撞预警方法平均每个目标耗时1315毫秒,STK中每个目标平均耗时1539毫秒,虽然是用秒表记录STK的碰撞预警时间,结果有一定的误差,但是这足以说明本发明的碰撞预警方法与STK所使用的碰撞预警方法耗时是在同一个量级上。三种碰撞预警方法所筛选出的危险目标的数目如表22所示,三种方法筛选出的危险目标数目相同,另外,本实验对危险目标编号也进行了对比,三种碰撞预警方法筛选出的危险目标编号也是相同的。由实验结果可知,本发明的碰撞预警方法可以在不损失准确率的情况下,达到与STK同一量级的速度。
本发明能够对高速运行的空间目标进行有效的时空索引,构建的索引,并能基于该时空索引进行空间目标区域查询、KNN查询和碰撞预警。通过上述一系列的实验可知,本发明所构建的基于轨道约束的空间目标索引更新速度快,建立13864个空间目标的索引,所用时间只需要1分钟左右,单个空间目标索引更新只需要5.4毫秒左右,由于SGP4/SDP4预报精度在5天内较好,因此理论上构建一次空间目标索引可以使用5天时间,构建索引的1分钟时间可以换来5天内的各类快速查询。基于空间目标时空索引的区域查询能够在保证准确率的前提下,提高区域查询速度和时间,尤其是实际应用中的小区域查询优势更加显著。基于空间目标时空索引的KNN查询可以快速定位不同目标间的邻近关系,为各种空间分析任务提供支撑。基于空间目标时空索引的碰撞预警方法,能够在保证准确率的前提下达到与STK相当的预警速度,并且实现简捷,无需复杂的迭代运算。
Claims (8)
1.一种空间目标时空索引构建方法,其特征在于,该方法包括以下步骤:
1)对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号;
2)针对每个空间网格建立一个对应的目标列表,用于存储经过该空间网格的空间目标;
3)按照设定轨道预报步长预报的空间目标位置计算空间目标所经过的所有空间网格编号,并在每个空间网格所对应的目标列表中记录落入该空间网格中的空间目标,以建立空间目标的时空索引;
当空间目标的轨道发生变化时,需对空间目标索引结构进行更新,更新时,获取需要更新的空间目标所经过的所有网格编号,在所有经过的网格中删除对应的空间目标编号,并获取更新后的空间目标所经过的所有空间网格编号,将该空间目标插入索引结构,完成更新;
所述步骤3)中空间目标所在网格编号的计算公式为:
col=[(α+π)/△α]
row=[{β+(π/2)}/△β]
其中,α和β分别为空间目标在地心惯性系-J2000球坐标系下的赤经坐标和赤纬坐标,△α为网格赤经方向的间隔,△β为网格赤纬方向的间隔,col为网格的赤经编号,row为网格赤纬编号,[]为向下取整符号。
2.一种空间目标的区域查询方法,其特征在于,该查询方法包括以下步骤:
1)计算查询区域内过境空间目标在查询时刻所对应的惯性系下的区域,以确定查询区域的边界点在地心惯性系中的赤经、赤纬;
2)确定与查询区域相交的空间网格,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
3)利用空间目标时空索引提取相交网格中的目标编号,所述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标;并在给定的时刻,根据轨道预报模型计算所提取目标的星下点坐标,并判断所述目标的星下点是否在查询区域内。
3.根据权利要求2所述的空间目标的区域查询方法,其特征在于,当查询一段时间内指定区域的空间目标时,将查询时间区间按照一定的步长进行离散化,将连续的时间转变为一系列时间片,将相应时间区间的空间目标查询转换为一系列时间片空间目标查询的综合。
4.根据权利要求2所述的空间目标的区域查询方法,其特征在于,所述的步骤2)中查询区域与空间球面索引网格相交的判断过程如下:
A. 将网格映射到(α,β)参数坐标系中,将球面网格变为二维网格;
B. 确定查询区域的外包围矩形,所述的外包围矩形的四个角点坐标分别是:(αmin,βmin)、(αmax,βmin)、(αmax,βmax)和(αmin,βmax);
C. 依次判断查询区域外包围矩形内的网格是否与查询区域相交,并记录下相交的网格编号。
5.一种空间目标的最近邻查询方法,其特征在于,该查询方法包括以下步骤:
I. 利用轨道预报模型计算待查空间目标在给定时刻的空间位置;
II. 利用空间目标时空索引确定空间目标所在网格,所述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
III. 根据空间目标时空索引确定空间目标所在网格中所有的空间目标,并计算所确定的所有空间目标位置与待查空间目标的距离;
IV. 依次比较所述网格中各空间目标与待查空间目标的距离,选出距离最近的K个空间目标,以实现对空间目标的最近邻查询。
6.根据权利要求5所述的空间目标的最近邻查询方法,其特征在于,当待查询空间目标所在的网格中的空间目标数小于K时,以待查询空间目标所在网格为中心,由内向外对近邻的网格进行扩展索引,直到近邻网格空间目标数大于K。
7.一种空间目标的碰撞预警方法,其特征在于,该预警方法的步骤如下:
I.利用空间目标时空索引确定查询目标所经过的网格,所述的空间目标时空索引为空间目标所经过的所有空间网格编号以及每个空间网格所落入的空间目标,所述的空间网格是通过对地球外层空间进行球面等经纬网格剖分,并对每个空间网格进行编号得到;
II.根据空间目标时空索引确定空间目标所在网格中所有的空间目标,依次判断获取的空间目标与待查询目标经过该网格时高度的最大值和最小值是否满足设定条件,并依次判断不满足设定条件的空间目标与待查询目标经过该网格的时间有没有交集,并记录时间的交集;
III.根据得到时间交集内,按照一定的时间步长,计算不满足设定条件的空间目标之间的距离以及碰撞概率,若得到碰撞概率大于设定的阈值,则发出碰撞预警。
8. 根据权利要求7所述的空间目标的碰撞预警方法,其特征在于,所述的设定条件为:Hmin-hmax>△H或hmin-Hmax>△H
其中Hmin和Hmax分别为待查空间目标经过该网格时的最小高度和最大高度,hmin和hmax是网格中待比较的空间目标过该网格时的最小和最大高度,△H是碰撞的高度阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611247355.6A CN106649821B (zh) | 2016-12-29 | 2016-12-29 | 空间目标索引构建、碰撞预警、区域和最近邻查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611247355.6A CN106649821B (zh) | 2016-12-29 | 2016-12-29 | 空间目标索引构建、碰撞预警、区域和最近邻查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106649821A CN106649821A (zh) | 2017-05-10 |
CN106649821B true CN106649821B (zh) | 2020-04-03 |
Family
ID=58836356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611247355.6A Active CN106649821B (zh) | 2016-12-29 | 2016-12-29 | 空间目标索引构建、碰撞预警、区域和最近邻查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106649821B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239559B (zh) * | 2017-06-12 | 2020-03-31 | 中国电子科技集团公司第二十八研究所 | 一种基于矢量网格进行空间动目标位置计算的方法 |
CN108287907B (zh) * | 2018-01-31 | 2019-03-15 | 吉林大学 | 卫星数据查询方法、系统、设备及计算机可读存储介质 |
CN108413903B (zh) * | 2018-02-07 | 2020-07-03 | 中国人民解放军战略支援部队信息工程大学 | 一种空间目标过境区域位置检测方法及系统 |
CN109269526B (zh) * | 2018-07-16 | 2022-06-17 | 哈尔滨工程大学 | 基于阻尼网络的旋转式格网惯导水平阻尼方法 |
CN110287392B (zh) * | 2019-06-20 | 2022-12-23 | 沈阳航空航天大学 | 一种基于安全划分树的安全空间网络查询方法 |
CN110426562B (zh) * | 2019-06-24 | 2021-06-04 | 乐山师范学院 | 基于分层搜索和距离空间投影的高精度闪电三维定位方法 |
CN111898819B (zh) * | 2020-07-24 | 2021-05-25 | 盈嘉互联(北京)科技有限公司 | 空间网格划分方法及装置 |
CN112749244A (zh) * | 2020-12-30 | 2021-05-04 | 苏州美房云客软件科技股份有限公司 | 基于虚幻引擎的数字孪生城市空间坐标系实现方法、装置及存储介质 |
CN112711590A (zh) * | 2020-12-30 | 2021-04-27 | 百果园技术(新加坡)有限公司 | 国家代码存储、查询方法、装置、电子设备和存储介质 |
CN114547860B (zh) * | 2022-01-18 | 2022-09-27 | 宁波天巡科技有限公司 | 一种基于敏捷筛选策略的空间目标碰撞预警方法 |
CN114359876B (zh) * | 2022-03-21 | 2022-05-31 | 成都奥伦达科技有限公司 | 一种车辆目标识别方法及存储介质 |
CN114494651B (zh) * | 2022-04-18 | 2022-09-02 | 龙芯中科(合肥)技术有限公司 | 曲面细分处理方法、装置、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5333815B2 (ja) * | 2008-02-19 | 2013-11-06 | 株式会社日立製作所 | k最近傍検索方法、k最近傍検索プログラム及びk最近傍検索装置 |
CN102004793B (zh) * | 2010-12-08 | 2013-09-04 | 厦门雅迅网络股份有限公司 | 一种设计和生成网格空间索引文件的方法及进行信息查询的方法 |
CN102289466B (zh) * | 2011-07-21 | 2013-11-13 | 东北大学 | 一种基于区域覆盖的k近邻查询方法 |
CN103413355B (zh) * | 2013-07-31 | 2016-08-10 | 中国科学院遥感与数字地球研究所 | 一种双地理经纬网格切分方法 |
CN103823826A (zh) * | 2013-09-05 | 2014-05-28 | 中国科学院空间科学与应用研究中心 | 一种基于球面剖分的天球数据多分辨率模型组织方法 |
CN106055563B (zh) * | 2016-05-19 | 2019-06-25 | 福建农林大学 | 一种基于网格划分的并行空间查询方法及其系统 |
-
2016
- 2016-12-29 CN CN201611247355.6A patent/CN106649821B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106649821A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106649821B (zh) | 空间目标索引构建、碰撞预警、区域和最近邻查询方法 | |
CN110264709B (zh) | 基于图卷积网络的道路的交通流量的预测方法 | |
CN105975763B (zh) | 一种多源海面风场的融合方法和装置 | |
CN104865353B (zh) | 基于无人机的工业园区大气污染数据采集方法 | |
CN103324916B (zh) | 基于建筑轮廓的车载和航空LiDAR数据配准方法 | |
CN106597416A (zh) | 一种地面GPS辅助的LiDAR数据高程差的误差修正方法 | |
CN111369436A (zh) | 一种顾及多元地形特征的机载LiDAR点云抽稀方法 | |
CN110866015B (zh) | 一种基于局部网格的动目标活动范围记录方法 | |
CN105067120A (zh) | 星载微波辐射计观测亮温的动态滤波重采样方法及装置 | |
CN112305559A (zh) | 基于地面定点激光雷达扫描的输电线距离测量方法、装置、系统和电子设备 | |
CN113325422B (zh) | 天基测雨雷达目标定位及降雨信息三维处理方法和系统 | |
CN115795399B (zh) | 一种多源遥感降水数据自适应融合方法和系统 | |
CN113776534A (zh) | 一种基于立体剖分网格的无人机三维时变空域导航方法 | |
CN105974418A (zh) | 基于天气雷达反射率特征匹配的降水估测方法 | |
Ali et al. | Sentinel-1 data cube exploitation: Tools, products, services and quality control | |
CN106846247B (zh) | 空间环境数据多尺度显示方法、模型建立方法及装置 | |
CN106546958B (zh) | 一种优化的雷达数据同化方法 | |
CN113887058B (zh) | 一种考虑距海岸线距离和风速影响的氯离子沉积率预测方法 | |
CN115018973A (zh) | 一种低空无人机点云建模精度的无靶标评估方法 | |
Wang et al. | DEM Construction Method for Slopes Using Three-Dimensional Point Cloud Data Based on Moving Least Square Theory | |
Hao-Nguyen et al. | A new algorithm for viewshed computation on raster terrain | |
CN110543535A (zh) | 一种基于网约车检索请求数据的交通小区划分方法 | |
CN111914396A (zh) | 基于高分辨率dem数据的次网格地形三维地表太阳辐射强迫效应快速参数化方法 | |
Yang et al. | Unmanned Aerial Vehicle conflict detection based on spatiotemporal data grid | |
Li et al. | Design and implementation of trajectory data management and analysis technology framework based on spatiotemporal grid model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |