一种大规模导弹集群攻防对抗仿真加速方法及系统

文档序号:32166039发布日期:2022-11-12 04:38阅读:151来源:国知局
一种大规模导弹集群攻防对抗仿真加速方法及系统

1.本发明涉及导弹集群攻防对抗仿真技术领域,具体涉及一种大规模导弹集群攻防对抗仿真加速方法及系统。


背景技术:

2.由于多弹协同作战能够提高导弹智能化水平和整体作战效能,弥补了现有单枚导弹作战模式的缺点,因此逐步成为军事领域关注的热点。导弹攻防对抗仿真是评估导弹作战效能的重要技术手段之一。因此,有必要对导弹集群的攻防对抗进行仿真模拟。大规模导弹集群数量庞大,任务复杂性高,如果在仿真中针对每一个体都采用真实模型进行模拟,则会产生巨大的计算开支。所以在大规模导弹集群攻防对抗仿真中可以使用代理模型技术来近似拟合真实模型。
3.代理模型技术是数据驱动的。待模拟对象的内部精确过程常常是未知的,代理模型技术通过选取待模拟过程的有限组输入输出,使用预先选取的代理模型对待模拟过程进行拟合,这样得到的代理模型是一种黑箱模型,着重对模拟对象的输入输出特性进行模拟。常使用的代理模型有多项式响应曲面法,克里金法,梯度增强克里金法(gek),支持向量机,空间映射,和人工神经网络等。但在导弹大规模集群对抗的场景中,导弹规模庞大,代理模型的输入变量的维数很大,需要提供大量的样本数据,并且求解代理模型的过程和用代理模型生成近似数据的过程中都需要大量计算,客观上会降低大规模集群对抗的仿真速度。


技术实现要素:

4.鉴于以上问题,本发明提出一种大规模导弹集群攻防对抗仿真加速方法及系统,用以解决传统的线性代理模型无法在保证模拟精度的同时有效加速大规模导弹集群攻防对抗仿真过程的问题。
5.根据本发明的一方面,提供一种大规模导弹集群攻防对抗仿真加速方法,该方法包括以下步骤:
6.步骤一、建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真模拟器,以获取高维导弹集群对抗飞行数据;
7.步骤二、对所述高维导弹集群对抗飞行数据进行降维处理,获取低维导弹集群对抗飞行数据;
8.步骤三、将所述低维导弹集群对抗飞行数据输入线性代理模型进行训练,获得训练好的线性代理模型;
9.步骤四、训练基于神经网络的误差拟合模型,以修正线性代理模型的预测误差;
10.步骤五、将待预测的导弹攻防对抗集群的初始高维飞行数据经过降维处理后,输入训练好的线性代理模型中,并利用训练好的误差拟合模型对线性代理模型的预测误差进行修正,获取待预测的导弹攻防对抗集群的飞行预测结果。
11.进一步地,步骤一的具体步骤包括:
12.利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹;
13.根据进攻弹和拦截弹的初始位置,根据动力学与制导模型求解数值积分,获得进攻弹和拦截弹每一时刻的位置和速度;
14.基于所述目标分配算法和动力学与制导模型构建导弹集群对抗仿真模拟器,所述导弹集群对抗仿真模拟器输出每一时刻的飞行数据,所述飞行数据包括多个进攻弹和拦截弹的位置速度矢量。
15.进一步地,步骤一中利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹的具体过程包括:计算m个拦截弹与n个进攻弹之间的距离,获得距离矩阵d
mn

16.1)当m=n时:在距离矩阵d
mn
中求取最小项,最小项所对应的行数和列数即为分配的一组拦截弹和进攻弹编号;将最小项在距离矩阵d
mn
中删除,获得新的距离矩阵;重复上述步骤,直至所有拦截弹和进攻弹一一对应分配为止;
17.2)当m大于n时:将所有进攻弹距地表高度按从低到高排序,将排序中前一半距地表高度所对应的进攻弹确定为第一组,将排序中后一半距地表高度所对应的进攻弹确定为第二组;根据拦截弹距地表高度、进攻弹与拦截弹相对距离,为第二组进攻弹一对一分配个拦截弹,将剩余的个拦截弹分给第一组进攻弹;计算第一组进攻弹每个进攻弹最多能分配的拦截弹个数k以及剩余的拦截弹与第一组进攻弹每个进攻弹之间的距离,获得对应的距离矩阵;基于相对距离最小原则,为第一组进攻弹每个进攻弹分配k个拦截弹,分配过程中距地表高度低的进攻弹优先分配。
18.进一步地,步骤二中采用主成分分析法对所述高维导弹集群对抗飞行数据进行降维处理。
19.进一步地,步骤四的具体步骤包括:
20.步骤四一、初始化t=0、t=1时刻的低维导弹集群对抗飞行数据为其中分别表示导弹集群中t=0、t=1时刻的实际对抗飞行数据;
21.步骤四二、在t>1时刻,利用训练好的线性代理模型对低维导弹集群对抗飞行数据进行预测:
[0022][0023]
式中,ξ、ζ表示线性代理模型的模型参数;表示向量的分量乘法;分别表示t-1、t-2时刻的实际对抗飞行数据;
[0024]
步骤四三、使用神经网络φ修正线性代理模型的预测误差,获得修正后的低维导弹集群对抗飞行数据
[0025][0026]
式中,θ表示神经网络φ的网络参数;表示t时刻利用线性代理模型预测的低维
导弹集群对抗飞行数据;
[0027]
步骤四四、使用平均绝对误差计算损失函数,并更新网络参数θ;
[0028]
步骤四五、迭代执行步骤四二至步骤四四,直至达到最大迭代次数停止执行,获得训练好的误差拟合模型。
[0029]
进一步地,步骤五中在获取待预测的导弹攻防对抗集群的飞行预测结果之后,将飞行预测结果中低维导弹集群对抗飞行数据恢复为高维导弹集群对抗飞行数据。
[0030]
根据本发明的另一方面,提供一种大规模导弹集群攻防对抗仿真加速系统,该系统包括:
[0031]
飞行数据获取模块,其配置成建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真模拟器,以获取高维导弹集群对抗飞行数据;
[0032]
降维处理模块,其配置成对所述高维导弹集群对抗飞行数据进行降维处理,获取低维导弹集群对抗飞行数据;
[0033]
线性代理模型训练模块,其配置成将所述低维导弹集群对抗飞行数据输入线性代理模型进行训练,获得训练好的线性代理模型;
[0034]
误差修正模型训练模块,其配置成训练基于神经网络的误差拟合模型,以修正线性代理模型的预测误差;
[0035]
预测模块,其配置成将待预测的导弹攻防对抗集群的初始高维飞行数据经过降维处理后,输入训练好的线性代理模型中,并利用训练好的误差拟合模型对线性代理模型的预测误差进行修正,获取待预测的导弹攻防对抗集群的飞行预测结果,并将飞行预测结果中低维导弹集群对抗飞行数据恢复为高维导弹集群对抗飞行数据。
[0036]
进一步地,所述飞行数据获取模块中获取高维导弹集群对抗飞行数据的具体过程包括:
[0037]
利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹;
[0038]
根据进攻弹和拦截弹的初始位置,根据动力学与制导模型求解数值积分,获得进攻弹和拦截弹每一时刻的位置和速度;
[0039]
基于所述目标分配算法和动力学与制导模型构建导弹集群对抗仿真模拟器,所述导弹集群对抗仿真模拟器输出每一时刻的飞行数据,所述飞行数据包括多个进攻弹和拦截弹的位置速度矢量。
[0040]
进一步地,所述飞行数据获取模块中利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹的具体过程包括:计算m个拦截弹与n个进攻弹之间的距离,获得距离矩阵d
mn

[0041]
1)当m=n时:在距离矩阵d
mn
中求取最小项,最小项所对应的行数和列数即为分配的一组拦截弹和进攻弹编号;将最小项在距离矩阵d
mn
中删除,获得新的距离矩阵;重复上述步骤,直至所有拦截弹和进攻弹一一对应分配为止;
[0042]
2)当m大于n时:将所有进攻弹距地表高度按从低到高排序,将排序中前一半距地表高度所对应的进攻弹确定为第一组,将排序中后一半距地表高度所对应的进攻弹确定为第二组;根据拦截弹距地表高度、进攻弹与拦截弹相对距离,为第二组进攻弹一对一分配
个拦截弹,将剩余的个拦截弹分给第一组进攻弹;计算第一组进攻弹每个进攻弹最多能分配的拦截弹个数k以及剩余的拦截弹与第一组进攻弹每个进攻弹之间的距离,获得对应的距离矩阵;基于相对距离最小原则,为第一组进攻弹每个进攻弹分配k个拦截弹,分配过程中距地表高度低的进攻弹优先分配。
[0043]
进一步地,所述误差修正模型训练模块中训练基于神经网络的误差拟合模型的过程包括:
[0044]
步骤四一、初始化t=0、t=1时刻的低维导弹集群对抗飞行数据为其中分别表示导弹集群中t=0、t=1时刻的实际对抗飞行数据;
[0045]
步骤四二、在t>1时刻,利用训练好的线性代理模型对低维导弹集群对抗飞行数据进行预测:
[0046][0047]
式中,ξ、ζ表示线性代理模型的模型参数;表示向量的分量乘法;分别表示t-1、t-2时刻的实际对抗飞行数据;
[0048]
步骤四三、使用神经网络φ修正线性代理模型的预测误差,获得修正后的低维导弹集群对抗飞行数据
[0049][0050]
式中,θ表示神经网络φ的网络参数;表示t时刻利用线性代理模型预测的低维导弹集群对抗飞行数据;
[0051]
步骤四四、使用平均绝对误差计算损失函数,并更新网络参数θ;
[0052]
步骤四五、迭代执行步骤四二至步骤四四,直至达到最大迭代次数停止执行,获得训练好的误差拟合模型。
[0053]
本发明的有益技术效果是:
[0054]
本发明提出了一种大规模导弹集群攻防对抗仿真加速方法及系统。首先建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真模拟器,获取导弹集群对抗下的飞行数据;然后采用主成分分析法(principal component analysis,pca)对模拟器数据进行压缩,获得低维数据;之后建立初始线性代理模型对低维导弹集群对抗仿真数据进行粗略拟合,并训练一个神经网络来拟合初始线性代理模型的残差,最终得到导弹集群对抗的代理模型;最后使用代理模型实时模拟导弹集群对抗仿真数据的生成过程。
[0055]
本发明使用主成分分析法对数据进行降维,加速了神经网络的训练速度;由神经网络训练出来的代理模型比使用真实模型的仿真模拟器生成数据速度更快,提高了攻防对抗的仿真速度。
附图说明
[0056]
本发明可以通过参考下文中结合附图所给出的描述而得到更好的理解,所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步
举例说明本发明的优选实施例和解释本发明的原理和优点。
[0057]
图1是本发明实施例一种大规模导弹集群攻防对抗仿真加速方法的流程图;
[0058]
图2是本发明实施例中导弹集群对抗场景的示意图;
[0059]
图3是本发明实施例中不同压缩维度下低维数据误差的示意图;
[0060]
图4是本发明实施例中原数据与降维后数据分析评价指标对比示意图;
[0061]
图5是本发明实施例中原数据与初始模型数据分析评价指标对比示意图;
[0062]
图6是本发明实施例中神经网络训练过程损失值变化示意图;
[0063]
图7是本发明实施例中原数据与代理模型数据分析评价指标对比示意图;
[0064]
图8是本发明实施例一种大规模导弹集群攻防对抗仿真加速系统的结构示意图。
具体实施方式
[0065]
为了使本技术领域的人员更好地理解本发明方案,在下文中将结合附图对本发明的示范性实施方式或实施例进行描述。显然,所描述的实施方式或实施例仅仅是本发明一部分的实施方式或实施例,而不是全部的。基于本发明中的实施方式或实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式或实施例,都应当属于本发明保护的范围。
[0066]
本发明实施例提出一种大规模导弹集群攻防对抗仿真加速方法,如图1所示,该方法包括以下步骤:
[0067]
步骤一、建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真模拟器,以获取高维导弹集群对抗飞行数据;
[0068]
步骤二、对所述高维导弹集群对抗飞行数据进行降维处理,获取低维导弹集群对抗飞行数据;
[0069]
步骤三、将所述低维导弹集群对抗飞行数据输入线性代理模型进行训练,获得训练好的线性代理模型;
[0070]
步骤四、训练基于神经网络的误差拟合模型,以修正线性代理模型的预测误差;
[0071]
步骤五、将待预测的导弹攻防对抗集群的初始高维飞行数据经过降维处理后,输入训练好的线性代理模型中,并利用训练好的误差拟合模型对线性代理模型的预测误差进行修正,获取待预测的导弹攻防对抗集群的飞行预测结果。
[0072]
本实施例中,可选地,步骤一的具体步骤包括:
[0073]
利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹;
[0074]
根据进攻弹和拦截弹的初始位置,根据动力学与制导模型求解数值积分,获得进攻弹和拦截弹每一时刻的位置和速度;
[0075]
基于所述目标分配算法和动力学与制导模型构建导弹集群对抗仿真模拟器,所述导弹集群对抗仿真模拟器输出每一时刻的飞行数据,所述飞行数据包括多个进攻弹和拦截弹的位置速度矢量。
[0076]
本实施例中,可选地,步骤一中利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹的具体过程包括:计算m个拦截弹与n个进攻弹之间的距离,获得距离矩阵d
mn

[0077]
1)当m=n时:在距离矩阵d
mn
中求取最小项,最小项所对应的行数和列数即为分配的一组拦截弹和进攻弹编号;将最小项在距离矩阵d
mn
中删除,获得新的距离矩阵;重复上述步骤,直至所有拦截弹和进攻弹一一对应分配为止;
[0078]
2)当m大于n时:将所有进攻弹距地表高度按从低到高排序,将排序中前一半距地表高度所对应的进攻弹确定为第一组,将排序中后一半距地表高度所对应的进攻弹确定为第二组;根据拦截弹距地表高度、进攻弹与拦截弹相对距离,为第二组进攻弹一对一分配个拦截弹,将剩余的个拦截弹分给第一组进攻弹;计算第一组进攻弹每个进攻弹最多能分配的拦截弹个数k以及剩余的拦截弹与第一组进攻弹每个进攻弹之间的距离,获得对应的距离矩阵;基于相对距离最小原则,为第一组进攻弹每个进攻弹分配k个拦截弹,分配过程中距地表高度低的进攻弹优先分配。
[0079]
本实施例中,可选地,步骤二中采用主成分分析法对所述高维导弹集群对抗飞行数据进行降维处理。
[0080]
本实施例中,可选地,步骤四的具体步骤包括:
[0081]
步骤四一、初始化t=0、t=1时刻的低维导弹集群对抗飞行数据为其中分别表示导弹集群中t=0、t=1时刻的实际对抗飞行数据;
[0082]
步骤四二、在t>1时刻,利用训练好的线性代理模型对低维导弹集群对抗飞行数据进行预测:
[0083][0084]
式中,ξ、ζ表示线性代理模型的模型参数;表示向量的分量乘法;分别表示t-1、t-2时刻的实际对抗飞行数据;
[0085]
步骤四三、使用神经网络φ修正线性代理模型的预测误差,获得修正后的低维导弹集群对抗飞行数据
[0086][0087]
式中,θ表示神经网络φ的网络参数;表示t时刻利用线性代理模型预测的低维导弹集群对抗飞行数据;
[0088]
步骤四四、使用平均绝对误差计算损失函数,并更新网络参数θ;
[0089]
步骤四五、迭代执行步骤四二至步骤四四,直至达到最大迭代次数停止执行,获得训练好的误差拟合模型。
[0090]
本实施例中,可选地,步骤五中在获取待预测的导弹攻防对抗集群的飞行预测结果之后,将飞行预测结果中低维导弹集群对抗飞行数据恢复为高维导弹集群对抗飞行数据。
[0091]
本发明另一实施例提出一种大规模导弹集群攻防对抗仿真加速方法,该方法包括以下步骤:
[0092]
步骤一:建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真
模拟器,获取导弹集群对抗下的飞行数据;
[0093]
根据本发明实施例,首先拦截方需要对进攻方导弹进行目标分配。采用目标与每个拦截弹的距离和目标据地表的高度作为依据进行目标分配。首先计算第m个拦截弹与第n个进攻弹之间的距离d
mn
和第n个进攻弹距地面的高度hn,得到距离矩阵d
mn
和高度矩阵hn:
[0094][0095][0096]
根据拦截弹和进攻弹的数量关系以及实际情况,目标分配算法主要可以分为以下两种:
[0097]
1)拦截弹数量m等于进攻弹数量n;
[0098]
此时的d
mn
为m维方阵。在d
mn
中求取最小项,对应的行数i和列数j即为分配为一组的拦截弹和进攻弹编号。然后将矩阵d
mn
中该分配对应的行和列所有元素删掉,得到新的距离矩阵,按照同样的步骤进行下一次分配,直到所有拦截弹和进攻弹一一对应为止。
[0099]
2)拦截弹数量m大于进攻弹数量n;
[0100]
首先按照各进攻弹距地表高度将进攻弹分为两组,一组为距地面高度最低的个进攻弹,剩余距地面高度高的个进攻弹为另一组。然后根据拦截弹高度,为两组进攻弹中高度高的一组按与拦截弹相对距离一对一分配个拦截弹。然后将剩余的个拦截弹分给高度低的进攻弹组。先计算该组每个进攻弹最多能分配的拦截弹个数k以及剩余拦截弹与进攻弹之间的距离d
mn
,得到的d
mn
为维矩阵,然后按照相对距离最小的原则,为每个进攻弹分配k个拦截弹,分配过程中高度低的进攻弹先进行分配。若剩余拦截弹不足,则应优先保证每个进攻弹至少分配一个拦截弹。
[0101]
根据上述目标分配算法,每枚拦截弹都会获得分配到需要拦截的进攻弹id。
[0102]
接下来需要根据所有导弹的初始位置,根据动力学模型求解数值积分,获得每一时刻的位置速度。进攻弹和拦截弹的动力学模型可以统一在以各自发射点为原点的发射坐标系下,表示为:
[0103][0104]
式中:g为重力加速度,p为发动机推力,r为气动力,fa为科氏惯性力,fe为离心惯性力,dmi为第i级发动机的秒耗量。r和v是当前时刻的位置速度。
[0105]
拦截弹需要根据当前位置和目标位置计算制导律,将拦截弹导引到目标位置。这里制导律采用比例导引法。导弹和目标的相对运动方程为:
[0106][0107]
r为拦截弹与目标的距离,q为目标视线角,θ和θm分别为拦截弹和目标速度相对基准方向的夹角。v和vm分别为拦截弹和目标速度大小。比例导引法的导引律为结合下式可以计算导弹需用过载,进而计算当前时刻导弹所需的推力p。
[0108][0109]
按照上述算法与模型构建导弹集群对抗仿真模拟器。模拟器将每一时刻获得的数据整理为如下形式:
[0110][0111]
式中,ra和va为进攻弹的位置速度矢量,rd和vd为拦截弹的位置速度矢量。
[0112]
将导弹集群对抗仿真模拟器中还会计算红蓝两方的集群中心位置和导弹存活率作为导弹集群对抗效果的分析与评价指标。
[0113]
步骤二:采用主成分分析法(principal component analysis,pca)对模拟器数据进行压缩,获得低维数据;
[0114]
根据本发明实施例,设仿真模拟器采集的数据中共有c个导弹实体,则每一时刻获得数据的维度为6c。主成分分析法的过程如下:
[0115]
(1)将仿真模拟器n个时刻的数据整理成一个矩阵,得到联合状态矩阵为:
[0116][0117]
(2)将x的每一行进行零均值化,即减去这一行的均值,得到矩阵
[0118]
(3)求出协方差矩阵
[0119]
(4)求出协方差矩阵的特征值及对应的特征向量;
[0120]
(5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵p;
[0121]
(6)即为降维到k维后的数据。
[0122]
依据以上算法可以将高维数据转化为低维数据,并尽可能地保留原有数据的信息。
[0123]
步骤三:建立初始线性模型对低维导弹集群对抗仿真数据进行粗略拟合,并训练一个神经网络来拟合初始线性模型的残差,得到导弹集群对抗的代理模型;
[0124]
根据本发明实施例,首先,根据导弹集群对抗系统特性建立一个初始线性模型,用于描述整个攻防对抗集群的运动模型。采用线性模型如下:
[0125][0126]
式中,ξ,ζ为模型的参数,表示分量乘法。以上参数可通过求解线性最小二乘方程获得。
[0127]
然后,训练神经网络拟合残差去近似初始模型的残差,即:
[0128][0129]
这里神经网络采用全连接网络,分为输入层、隐藏层、输出层。采用relu函数作为输入层和隐藏层的激活函数。神经网络的训练过程如下所示。
[0130][0131][0132]
得到导弹集群对抗的代理模型为:
[0133][0134]
需要说明的是,虽然本发明实施例采用的神经网络为全连接网络,但本发明实现过程不依赖于采用何种神经网络,除了全连接网络,也可以采用其他神经网络模型对线性代理模型进行误差修正。
[0135]
步骤四:使用代理模型实时模拟导弹集群对抗仿真数据的生成过程,具体包括以下步骤:
[0136]
(1)使用初始模型预测集群状态:
[0137][0138]
(2)使用神经网络修复初始模型预测误差:
[0139][0140]
(3)将低维集群数据恢复到高维集群数据:
[0141]
[0142]
通过以上步骤,可以使用集群代理模型实时模拟集群状态数据的生成过程。
[0143]
进一步采用以下实验验证本发明的技术效果。
[0144]
采用数字仿真的方式验证本发明的正确性以及合理性。首先在python环境下搭建导弹集群对抗仿真模拟器。实施例的设定场景中有20枚进攻弹和40枚拦截弹。根据特定场景初始化这些导弹的初始位置,给定时间停止攻防对抗仿真并记录数据。从仿真模拟器中生成100组不同的攻防对抗场景及其相应的数据。其中一组导弹集群对抗场景如图2所示。而后进行pca降维、建立初始模型、神经网络训练、代理模型实时运行等操作。仿真测试软件环境为windows 10+python3.8,硬件环境为amd ryzen 7 4800u cpu+16.0gb ram。
[0145]
实验首先搭建了导弹集群对抗仿真模拟器并生成了100组攻防对抗场景,计算各组场景的分析评价指标如图3所示。仿真模拟器中每个时刻的数据维度为360维。分别令降维后的数据维度依此为30,60,
……
,330,计算降维前后每一时刻数据的平均误差,如图3所示。依据此结果并考虑实际情况,选取降维后的数据维度k=200。将降维后的数据恢复到原有的数据维度并计算分析评价指标如图4。可以看出,降维后的数据基本保持了原有数据的集群与攻防对抗性质,可以用该低维数据代替高维数据,加速神经网络训练和代理模型数据生成的过程。接下来利用最小二乘法处理低维数据得到初始模型,并将初始模型预测得到的数据恢复到高维空间上,计算分析评价指标如图5所示。可以看出,初始模型预测的数据与原数据相比误差较大,拟合效果较差,所以需要训练神经网络进一步拟合残差。这里采用5层全连接网络,第1层为输入层,第2、3、4层为隐藏层,第5层为输出层。输入层和隐藏层各有500个单元。100组攻防对抗场景对应的低维状态矩阵构成数据集,共计训练500轮。训练过程中的损失值变化如图6所示。可以看到,损失值在前几个训练轮次内急速下降,而后缓慢下降并趋于稳定,神经网络最后收敛,训练成功。利用初始模型和神经网络构建代理模型,实时运行后得到低维数据。恢复数据维度并计算分析评价指标如图7所示。可以看到,由神经网络拟合后的代理模型生成数据的精度与pca降维后的数据精度接近,能够满足导弹集群攻防对抗仿真的需要。
[0146]
根据本发明的方法可加速神经网络的训练速度和导弹攻防对抗的数据,为大规模导弹集群攻防对抗仿真的实现方式提供了新的技术思路。
[0147]
本发明另一实施例还提出一种大规模导弹集群攻防对抗仿真加速系统,如图8所示,该系统包括:
[0148]
飞行数据获取模块10,其配置成建立进攻弹与拦截弹各自的动力学与制导模型,搭建导弹集群对抗仿真模拟器,以获取高维导弹集群对抗飞行数据;
[0149]
降维处理模块20,其配置成对所述高维导弹集群对抗飞行数据进行降维处理,获取低维导弹集群对抗飞行数据;
[0150]
线性代理模型训练模块30,其配置成将所述低维导弹集群对抗飞行数据输入线性代理模型进行训练,获得训练好的线性代理模型;
[0151]
误差修正模型训练模块40,其配置成训练基于神经网络的误差拟合模型,以修正线性代理模型的预测误差;
[0152]
预测模块50,其配置成将待预测的导弹攻防对抗集群的初始高维飞行数据经过降维处理后,输入训练好的线性代理模型中,并利用训练好的误差拟合模型对线性代理模型的预测误差进行修正,获取待预测的导弹攻防对抗集群的飞行预测结果,并将飞行预测结
果中低维导弹集群对抗飞行数据恢复为高维导弹集群对抗飞行数据。
[0153]
本实施例中,可选地,所述飞行数据获取模块10中获取高维导弹集群对抗飞行数据的具体过程包括:
[0154]
利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹;
[0155]
根据进攻弹和拦截弹的初始位置,根据动力学与制导模型求解数值积分,获得进攻弹和拦截弹每一时刻的位置和速度;
[0156]
基于所述目标分配算法和动力学与制导模型构建导弹集群对抗仿真模拟器,所述导弹集群对抗仿真模拟器输出每一时刻的飞行数据,所述飞行数据包括多个进攻弹和拦截弹的位置速度矢量。
[0157]
本实施例中,可选地,所述飞行数据获取模块中利用目标分配算法对进攻弹和拦截弹进行目标分配,使得每个进攻弹至少被分配到一个拦截弹的具体过程包括:计算m个拦截弹与n个进攻弹之间的距离,获得距离矩阵d
mn

[0158]
1)当m=n时:在距离矩阵d
mn
中求取最小项,最小项所对应的行数和列数即为分配的一组拦截弹和进攻弹编号;将最小项在距离矩阵d
mn
中删除,获得新的距离矩阵;重复上述步骤,直至所有拦截弹和进攻弹一一对应分配为止;
[0159]
2)当m大于n时:将所有进攻弹距地表高度按从低到高排序,将排序中前一半距地表高度所对应的进攻弹确定为第一组,将排序中后一半距地表高度所对应的进攻弹确定为第二组;根据拦截弹距地表高度、进攻弹与拦截弹相对距离,为第二组进攻弹一对一分配个拦截弹,将剩余的个拦截弹分给第一组进攻弹;计算第一组进攻弹每个进攻弹最多能分配的拦截弹个数k以及剩余的拦截弹与第一组进攻弹每个进攻弹之间的距离,获得对应的距离矩阵;基于相对距离最小原则,为第一组进攻弹每个进攻弹分配k个拦截弹,分配过程中距地表高度低的进攻弹优先分配。
[0160]
本实施例中,可选地,所述误差修正模型训练模块40中训练基于神经网络的误差拟合模型的过程包括:
[0161]
步骤四一、初始化t=0、t=1时刻的低维导弹集群对抗飞行数据为其中分别表示导弹集群中t=0、t=1时刻的实际对抗飞行数据;
[0162]
步骤四二、在t>1时刻,利用训练好的线性代理模型对低维导弹集群对抗飞行数据进行预测:
[0163][0164]
式中,ξ、ζ表示线性代理模型的模型参数;表示向量的分量乘法;分别表示t-1、t-2时刻的实际对抗飞行数据;
[0165]
步骤四三、使用神经网络φ修正线性代理模型的预测误差,获得修正后的低维导弹集群对抗飞行数据
[0166]
[0167]
式中,θ表示神经网络φ的网络参数;表示t时刻利用线性代理模型预测的低维导弹集群对抗飞行数据;
[0168]
步骤四四、使用平均绝对误差计算损失函数,并更新网络参数θ;
[0169]
步骤四五、迭代执行步骤四二至步骤四四,直至达到最大迭代次数停止执行,获得训练好的误差拟合模型。
[0170]
本发明实施例一种大规模导弹集群攻防对抗仿真加速系统的功能可以由前述一种大规模导弹集群攻防对抗仿真加速方法说明,因此系统实施例未详述部分,可参见以上方法实施例,在此不再赘述。
[0171]
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1