一种位置均衡的目标群运动过程仿真计算方法技术

技术编号:25637700 阅读:49 留言:0更新日期:2020-09-15 21:30
本发明专利技术提供了一种位置均衡的目标群运动过程仿真计算方法,包括如下步骤:1、预置目标群的描述文件,能详细定义目标群的成员数量、相对位置等信息;2、在运动过程中,选取目标群中的主要目标,计算其核心活动轨迹;3、根据目标群中的主要目标,计算其它目标的位置和姿态,并避免出现位置回退、相互重叠等现象;4、实现二三维效果可视化。本发明专利技术通过分析目标群的构成、相对位置、运动速度等信息,同时充分考虑目标群的实际性能与运动背景,较好的实现了目标群在运动过程中的仿真计算与显示。

【技术实现步骤摘要】
一种位置均衡的目标群运动过程仿真计算方法
本专利技术涉及一种位置均衡的目标群运动过程仿真计算方法。
技术介绍
如何更加真实地仿真经过组合的多目标的运动过程,是仿真领域比较关注的研究方向。各种群体性活动仿真计算中,如人群活动规划、车辆赛况模拟中,信息系统都开发了相关的预演和解读软件,在此过程中就涉及到目标群的运动过程仿真计算,并通过二三维平台进行展示,辅助操作人员设置预案和重温过程。在目标群的运动仿真计算方面,有静态计算和动态计算两种方法,静态计算是将所有目标群的效果预先处理好,包括目标群组成、相对位置、类型类别等,在运动过程中严格按照这种方式来行进,这种方法的好处是计算简单,但缺点是不够灵活,特别是在目标群转弯、机动或调整队形时,很容易发生变形;而动态计算,则完全是在目标群运动过程中通过数学方法推理计算,这种方法的好处是能充分考虑实际情况,包括目标本身的特性、运动模式、速度等,能实现快速的临机处置,仿真效果好,但缺点是计算压力较大,对资源的消耗较多。另外,在仿真效果显示方面,现在的显示方法更多的关注位置,对方向、横滚、俯仰等姿态信息考虑不足,在细节仿真显示方面能力有待提升。
技术实现思路
专利技术目的:针对现有应用的实际需求,本专利技术公开了一种位置均衡的目标群运动过程仿真计算方法,该方法基于目标群描述信息、目标群实际活动情况、目标实际机动特征和二三维实时显示技术,首先是用通用计算机语言严格定义目标群的描述文件,内容包括目标群的组成、相对位置、队形、数量等,据此形成目标群的静态轮廓;其次是在目标群中挑选出主要目标,以该目标为中心,刻画其运动轨迹与机动过程,形成骨干化的路径;其后是根据骨干航迹和目标群描述文件,计算目标群内其它目标的位置和姿态信息,该过程要充分考虑目标的活动特性,避免出现目标群成员倒退、位置散乱等问题,也是本专利技术的核心;最后是根据前述计算结果,在二三维图形上实现目标群运动过程的实景仿真。一种位置均衡的目标群运动过程仿真计算方法,其特征在于通过目标群信息描述、基于特征的活动过程计算和二三维仿真,较好的实现了目标群的运动过程仿真,本专利技术的一种位置均衡的目标群运动过程仿真计算方法,首先是将目标群的组成信息进行充分描述,通过语言定义刻画好目标群的基础内涵;挑选出目标群中的主要目标,对其轨迹进行综合分析,在此基础上,根据目标群的运动特征,再计算目标群中其它目标的位置和姿态;根据前两步的计算结果,在二三维上仿真显示。本专利技术具体提供了一种位置均衡的目标群运动过程仿真计算方法,其特征在于,包括如下步骤:步骤1,制定目标群描述文件,重点是对目标群的特征进行提取,本专利技术在对各种目标群进行充分分析的基础上,提出了具有一定普适性的描述,利于后续的计算;步骤2,从接入的活动数据中找出符合步骤1中目标群描述的目标,以所述目标为主要基准点,计算其骨干活动过程,形成一条具有关键特征描述信息的运动轨迹;步骤3,根据步骤1中的目标群描述文件和步骤2计算得到的运动航迹,计算目标群内其它目标的位置、姿态信息,并综合考虑运动特征与上下文背景,设计计算因子,得出目标群内部各目标的合理信息和相互关系;步骤4,根据步骤3的计算结果,进行二、三维仿真显示。步骤1包括:利用XML语言详细描述目标群的基本情况,目标群的基本情况包括组成、数量、相对位置、类型、名称,描述目标群的基本情况的XML语言的内容保存为目标群描述文件。步骤2包括:步骤2-1,定义当前时刻T,目标总的活动点数量Cnt,点信息描述向量Vector={Lng,Lat,Alt,Yaw,Pitch,Roll,T},Lng为经度,Lat为纬度,Alt为高度,Yaw为航向,Pitch为俯仰角,Roll为横滚角,历史点容器Vectors是成员均为Vector数据类型的数组;vCur为Vector类型的变量,用于记录获取到的位置和姿态;vPre为Vector类型的变量,用于记录前一个点的位置和姿态;步骤2-2,找到Vectors(Vectors是历史活动点数组,描述了历史活动信息)中距离T最近一个位置点Vectors[i]和前一个点Vectors[i-1],开始线性插值:定义浮点数fMulti=(T-Vectors[i-1].T)/(Vectors[i].T-Vectors[i-1].T),Vectors[i-1].T表示第i-1个点的时间;定义插值经度vCur.Lng=Vectors[i-1].Lng+(Vectors[i].Lng-Vectors[i-1].Lng)*fMulti,Vectors[i-1].Lng表示第i-1个点的经度;定义插值纬度vCur.Lat=Vectors[i-1].Lat+(Vectors[i].Lat-Vectors[i-1].Lat)*fMulti,Vectors[i].Lat表示第i个点的纬度定义插值高度vCur.Alt=Vectors[i-1].Alt+(Vectors[i].Alt-Vectors[i-1].Alt)*fMulti,Vectors[i].Alt表示第i个点的高度;定义浮点数k=180.0/3.1415926535897932384626433832795;步骤2-3,定义Vector的类型变量vec,为实现主目标的姿态平滑,做如下计算:vec.Yaw=(cos(Vectos[i-1].Yaw*0.5)+cos(Vectos[i].Yaw*0.5))/2;vec.Pitch=(cos(Vectos[i-1].Pitch*0.5)+cos(Vectos[i].Pitch*0.5))/2。vec.Roll=(cos(Vectos[i-1].Roll*0.5)+cos(Vectos[i].Roll*0.5))/2;当前点航向角vCur.Yaw=vec.Yaw*k;当前点俯仰角vCur.Pitch=vec.Yitch*k;当前点横滚角vCur.Roll=vec.Roll*k;Vectos[i].Yaw表示第i个点的航向角,Vectos[i].Pitch表示第i个点的俯仰角,Vectos[i].Roll表示第i个点的横滚角。步骤3包括:定义圆周率PI=3.1415926535897932384626433832795;定义地球半径ER=6378137;定义浮点数dLng=(vPre.Lng-vCur.Lng)*cos(vCur.Lat*PI/180.0);定义浮点数dLat=vPre.Lat-vCur.Lat;定义浮点数d0=ER*PI/180.0*sqrt(dLat*dLat+dLng*dLng),vPre.Lng表示前一个点的经度,vPre.Lat表示前一个点的纬度,vCur.Lng表示当前点的经度,vCur.Lat表示当前点的纬度,sqrt为标准的开根号运算;定义偏移描述信息Offset={xD本文档来自技高网...

【技术保护点】
1.一种位置均衡的目标群运动过程仿真计算方法,其特征在于,包括如下步骤:/n步骤1,制定目标群描述文件;/n步骤2,从接入的活动数据中找出符合步骤1中目标群描述的目标,以所述目标为主要基准点,计算其骨干活动过程,形成一条具有关键特征描述信息的运动轨迹;/n步骤3,根据步骤1中的目标群描述文件和步骤2计算得到的运动航迹,计算目标群内其它目标的位置、姿态信息,并综合考虑运动特征与上下文背景,设计计算因子,得出目标群内部各目标的合理信息和相互关系;/n步骤4,根据步骤3的计算结果,进行二、三维仿真显示。/n

【技术特征摘要】
1.一种位置均衡的目标群运动过程仿真计算方法,其特征在于,包括如下步骤:
步骤1,制定目标群描述文件;
步骤2,从接入的活动数据中找出符合步骤1中目标群描述的目标,以所述目标为主要基准点,计算其骨干活动过程,形成一条具有关键特征描述信息的运动轨迹;
步骤3,根据步骤1中的目标群描述文件和步骤2计算得到的运动航迹,计算目标群内其它目标的位置、姿态信息,并综合考虑运动特征与上下文背景,设计计算因子,得出目标群内部各目标的合理信息和相互关系;
步骤4,根据步骤3的计算结果,进行二、三维仿真显示。


2.根据权利要求1所述的方法,其特征在于,步骤1包括:利用XML语言详细描述目标群的基本情况,目标群的基本情况包括组成、数量、相对位置、类型、名称,描述目标群的基本情况的XML语言的内容保存为目标群描述文件。


3.根据权利要求2所述的方法,其特征在于,步骤2包括:
步骤2-1,定义当前时刻T,目标总的活动点数量Cnt,点信息描述向量Vector={Lng,Lat,Alt,Yaw,Pitch,Roll,T},Lng为经度,Lat为纬度,Alt为高度,Yaw为航向,Pitch为俯仰角,Roll为横滚角,历史点容器Vectors是成员均为Vector数据类型的数组;vCur为Vector类型的变量,用于记录获取到的位置和姿态;vPre为Vector类型的变量,用于记录前一个点的位置和姿态;
步骤2-2,找到Vectors中距离T最近一个位置点Vectors[i]和前一个点Vectors[i-1],开始线性插值:
定义浮点数fMulti=(T-Vectors[i-1].T)/(Vectors[i].T-Vectors[i-1].T),
Vectors[i-1].T表示第i-1个点的时间;
定义插值经度vCur.Lng=Vectors[i-1].Lng+(Vectors[i].Lng-Vectors[i-1].Lng)*fMulti,
Vectors[i-1].Lng表示第i-1个点的经度;
定义插值纬度vCur.Lat=Vectors[i-1].Lat+(Vectors[i].Lat-Vectors[i-1].Lat)*fMulti,
定义插值高度vCur.Alt=Vectors[i-1].Alt+(Vectors[i].Alt-Vectors[i-1].Alt)*fMulti,
Vectors[i].Alt表示第i个点的高度;
定义浮点数k=180.0/3.1415926535897932384626433832795;
步骤2-3,定义Vector的类型变量vec,为实现主目标的姿态平滑,做如下计算:
航向角vec.Yaw=(cos(Vectos[i-1].Yaw*0.5)+cos(Vectos[i].Yaw*0.5))/2;
俯仰角vec.Pitch=(cos(Vectos[i-1].Pitch*0.5)+cos(Vectos[i].Pitch*0.5))/2;
横滚角vec.Roll=(cos(Vectos[i-1].Roll*0.5)+cos(Vec...

【专利技术属性】
技术研发人员:李彭伟李文强阚凌志欧阳慈陈娜郑伟郭婉齐家琛周兆昕
申请(专利权)人:中国电子科技集团公司第二十八研究所
类型:发明
国别省市:江苏;32

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

1