CN110851911B - 终端状态计算模型训练方法、控制序列搜索方法及装置 - Google Patents
终端状态计算模型训练方法、控制序列搜索方法及装置 Download PDFInfo
- Publication number
- CN110851911B CN110851911B CN201810849572.5A CN201810849572A CN110851911B CN 110851911 B CN110851911 B CN 110851911B CN 201810849572 A CN201810849572 A CN 201810849572A CN 110851911 B CN110851911 B CN 110851911B
- Authority
- CN
- China
- Prior art keywords
- terminal state
- control sequence
- calculation model
- training
- terminal
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种终端状态计算模型训练方法、控制序列搜索方法及装置,包括:利用目标计算模型得到多个预测终端状态,然后根据给定的目标终端状态利用PSO算法进行搜索,从而得到满足条件的控制序列。目标计算模型的获取方法包括:得到由随机的初始状态和控制序列构成的输入量,利用蒙特卡洛法得到对应的终端状态,输入量与对应的终端状态构成样本数据,由此得到样本集;对样本集进行归一化操作,并划分为训练集和测试集;构建基于多层神经网络的终端状态计算模型;利用训练集训练终端状态计算模型,并利用测试集测试终端状态计算模型,重复训练与测试的步骤,直至满足精度要求。本发明能够快速计算常微分方程,并提高PSO算法搜索控制序列的速度。
Description
技术领域
本发明属于神经网络拟合复杂系统运算的领域,更具体地,涉及一种终端状态计算模型训练方法、控制序列搜索方法及装置。
背景技术
作为任务规划技术的重要内容,轨迹规划技术有利于提高飞行器的飞行品质以满足既定任务要求。飞行器轨迹规划可以抽象为一个包含微分方程、代数方程和不等式约束等条件的最优控制问题。直接打靶法是求解这类问题的有效方法之一,并且易于实现,与PSO算法(Particle Swarm Optimization,粒子群算法)结合后,表现出更大的灵活性和适应性,因而得到广泛应用。
直接打靶法是采用参数化方法,将连续空间的最优控制问题转化为离散的非线性规划问题,通过数值方法求解非线性规划问题,从而得到轨迹。根据直接打靶法的基本思路可知,其求解过程涵盖两个基本内容:离散参数化问题和优化求解问题。直接打靶法只对控制量进行离散化,而描述飞行器运动轨迹的状态量,则需要根据参数化的控制量对运动方程进行数值积分获得。数值积分是求解常微分方程的过程,工程上一般使用四阶Runge-Kutta积分。转换为非线性规划问题后,再使用PSO算法对性能指标寻优,以搜索最优的控制序列。
对飞行器的飞行轨迹进行在线规划时,存在时间受限的问题。通过算法耗时分析,发现时间受限的主要原因在于RungeKutta积分的过程可能耗时较长;这与PSO算法流程有关,比如设置50个粒子为一个种群,迭代10次,种群数乘以迭代次数为500,代表最多求解500次常微分方程。因此,使用Runge-Kutta法求常微分方程以得到积分终点的状态量,当积分时间段比较长时,产生的计算时间开销会很大,而且求解的次数越多,总的时间开销越多,这会严重影响PSO算法搜索可行控制序列的速度。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种终端状态模型训练方法、控制序列搜索方法及装置,其目的在于,构建并训练基于神经网络的模型以求解飞行器的终端状态,从而在对飞行器的飞行轨迹进行在线规划时快速计算常微分方程,进而提高PSO算法搜索可行控制序列的速度。
为实现上述目的,按照本发明的第一方面,提供了一种终端状态计算模型训练方法,包括:
(1)在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;
(2)对样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
(3)根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
(4)利用训练集训练终端状态计算模型;
(5)利用测试集测试终端状态计算模型,若测试结果不满足精度要求,则调整优化算法、训练参数或二者的结合,并转入步骤(4);否则,将已训练的终端状态计算模型作为目标计算模型,训练结束;
其中,N1和N2均为正整数。
进一步地,步骤(2)中,对样本集进行归一化操作,包括:
对于任意一个样本数据,将其初始状态x0归一化为:将控制序列umny归一化为:将终端状态量xf归一化为:其中,x0min和x0max分别为预设的有效范围的下界和上界,umin和umax分别为控制序列中包含的离散的控制量的下界和上界,xfmin和xfmax分别为终端状态的下界和上界且xfmin和xfmax均通过蒙特卡洛法得到。
进一步地,步骤(3)中构建的终端状态计算模型依次包括:输入层、第一隐含层、第二隐含层和输出层,层与层之间的连接为全连接;输入层的维数为nx+mny,第一隐含层的维数为nx+mny+10,第二隐含层的维数为nx+2,输出层的维数为nx;第一隐含层和第二隐含层的激活函数为sigmoid函数,输出层的激活函数为线性函数;其中,nx为初始状态及终端状态的维数,mny为控制序列的维数;
通过设置第一隐含层的维数为nx+mny+10且第二隐含层的维数为nx+2,既保证了所构建的终端状态计算模型的刻画能力,也避免了因网络参数过多而降低计算速度。
进一步地,本发明第一方面所提供的终端状态计算模型训练方法还包括:
对样本集中的终端状态和控制序列进行统计回归分析,并判断终端状态与控制序列是否满足线性关系。
更进一步地,步骤(4)中,利用训练集训练终端状态计算模型,包括:
(41)从训练集中随机选取N个样本数据,作为一个批次;
(42)对于批次中的任意一个样本数据,将其输入量作为终端状态计算模型的输入,得到对应的预测终端状态;若样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与预测终端状态之间的均方误差;否则,对预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与预测终端状态之间的均方误差;
(43)将批次中每个样本数据的均方误差求和,得到损失函数MSE;
(44)根据损失函数MSE,利用Adam优化算法更新权值;
(45)重复执行步骤(42)~(44),直至达到训练迭代次数上限或精度要求;
其中,N为正整数,且N<N1×N2。
更进一步地,步骤(5)中,判断利用测试集测试终端状态计算模型的测试结果是否满足精度要求的方法包括:
依次取测试集中的样本数据,将其输入量作为终端状态计算模型的输入,得到对应的预测终端状态;若样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与预测终端状态之间的相对误差;否则,对预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与预测终端状态之间的相对误差;
计算测试集中所有样本数据的相对误差的算数平均值和标准差,由此来判断终端状态计算模型是否满足精度要求。
按照本发明的第二方面,提供了一种控制序列搜索方法,包括:
将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与初始状态构成M个输入量;
分别对M个输入量进行归一化操作;
分别以M个已归一化的输入量作为输入,利用本发明第一方面所提供的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
若目标计算模型的样本集中终端状态与控制序列不满足线性关系,则对M个预测终端状态中的非线性误差进行补偿后,对于给定的目标终端状态,利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列;否则,对于给定的目标终端状态,直接利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列。
进一步地,对于给定的目标终端状态,利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列方法包括:
根据给定的目标终端状态,计算每一个预测终端状态的适应值;获得适应值最低的预测终端状态所对应的控制序列,从而得到满足条件的控制序列。
按照本发明的第三方面,提供了一种终端状态计算模型训练装置,包括:样本集生成模块、样本集归一化模块、模型构建模块、模型训练模块以及模型测试模块;
样本集生成模块用于在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;
样本集归一化模块用于对样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
模型构建模块用于根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
模型训练模块用于利用训练集训练终端状态计算模型;
模型测试模块用于利用测试集测试终端状态计算模型,并判断测试结果是否满足精度要求;
其中,N1和N2均为正整数。
按照本发明的第四方面,提供了一种控制序列搜索装置,包括:输入量获取模块、输入量归一化模块、终端状态计算模块、误差补偿模块以及优化搜索模块;
输入量获取模块用于将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与初始状态构成M个输入量;
输入量归一化模块用于分别对M个输入量进行归一化操作;
终端状态计算模块用于分别以M个已归一化的输入量作为输入,利用本发明第一方面所提供的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
误差补偿模块用于在样本集中终端状态与控制序列不满足线性关系时对M个预测终端状态中的非线性误差进行补偿;
优化搜索模块用于在目标计算模型的样本集中终端状态与控制序列满足线性关系时,对于给定的目标终端状态,利用PSO算法在由终端状态计算模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;优化搜索模块还用于在目标计算模型的样本集中终端状态与控制序列不满足线性关系时,对于给定的目标终端状态,利用PSO算法在由误差补偿模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;
其中,M为正整数。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明所提供的控制序列搜索方法,利用基于神经网络的模型求解飞行器的终端状态,能够在对飞行器的飞行轨迹进行在线规划时快速计算常微分方程,进而提高PSO算法搜索可行控制序列的速度。
(2)本发明所提供的控制序列搜索方法,由基于神经网络的模型解决离散参数化问题,并进一步由PSO算法解决优化求解的问题,从而完成直接打靶法,由于本方法基于模型数据驱动,通过模型产生的数据训练了基于多层神经网络的模型,数据驱动的方式适应性强,不受限于具体模型,只需要获得模型的输入与输出关系,即可训练代理模型。因此,本发明所提供的控制序列搜索方法,能够增强直接打靶法的适应性,使得直接打靶法不受限于具体的模型。
附图说明
图1为本发明实施例提供的终端状态计算模型训练方法流程图;
图2为本发明实施例提供的终端状态计算模型示意图;
图3为本发明实施例提供的控制序列搜索方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提供了一种终端状态计算模型训练方法,如图1所示,包括如下步骤:
(1)在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;N1和N2均为正整数;在本实施例中,所得到的样本集中共包含10000个样本数据;
根据飞行器的历史飞行轨迹可得到飞行器在飞行过程中其状态变化的范围,将此预设为初始状态的有效范围;
在一个可选的实施方式中,利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的终端状态后,还会对对样本集中的终端状态和控制序列进行统计回归分析,并判断终端状态与控制序列是否满足线性关系;
(2)对样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
在一个可选的实施方式中,对样本集进行归一化操作,包括:
对于任意一个样本数据,将其初始状态x0归一化为:将控制序列umny归一化为:将终端状态量xf归一化为:其中,x0min和x0max分别为预设的有效范围的下界和上界,umin和umax分别为控制序列中包含的离散的控制量的下界和上界,xfmin和xfmax分别为终端状态的下界和上界且xfmin和xfmax均通过蒙特卡洛法得到;
将已归一化的样本集划分为训练集和测试集时,训练集的占比为70%,故本实施例中,训练集中包含7000个样本数据,测试集包含3000个样本数据;
(3)根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
在本实施例中,所构建的终端状态计算模型依次包括:输入层、第一隐含层、第二隐含层和输出层,层与层之间的连接为全连接;输入层的维数为nx+mny,第一隐含层的维数为nx+mny+10,第二隐含层的维数为nx+2,输出层的维数为nx;第一隐含层和第二隐含层的激活函数为sigmoid函数,输出层的激活函数为线性函数;其中,nx为初始状态及终端状态的维数,mny为控制序列的维数;
通过设置第一隐含层的维数为nx+mny+10且第二隐含层的维数为nx+2,既保证了所构建的终端状态计算模型的刻画能力,也避免了因网络参数过多而降低计算速度;
如图2所示,终端状态计算模型构建完成后,将初始状态x0以及控制序列{u0,u1,…,um-1}构成的输入量输入终端状态计算模型,即可得到该输入量所对应的预测终端状态NN0;其中,初始状态x0和预测终端状态NN0的维数均为nx,控制序列{u0,u1,…,um-1}的维数为mny,共包含个控制量,每个控制量的维数均为ny;
(4)利用训练集训练终端状态计算模型;
在一个可选的实施方式中,步骤(4)具体包括:
(41)在[0,6999]的整数范围内,生成50个随机下标,并根据这50个随机下标从训练集中随机选取50个样本数据,作为一个批次;
(42)对于批次中的任意一个样本数据,将其输入量作为终端状态计算模型的输入,得到对应的预测终端状态;若样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与预测终端状态之间的均方误差;否则,对预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与预测终端状态之间的均方误差;
(43)将批次中每个样本数据的均方误差求和,得到损失函数MSE;损失函数的表达式为:
其中,NNi为利用批次中第i个样本数据的输入量作为输入时终端状态计算模型输出的预测终端状态,xif为批次中第i个样本数据的终端状态;
(44)根据损失函数MSE,利用Adam优化算法更新权值;
(45)重复执行步骤(42)~(44),直至达到训练迭代次数上限;
利用batch方式,即采用分批次进行模型训练,利用批次中50个样本数据的均方误差之和作为损失函数,能够提高模型训练的效率;
(5)利用测试集测试终端状态计算模型,若测试结果不满足精度要求,则调整优化算法、训练参数或二者的结合,并转入步骤(4);否则,将已训练的终端状态计算模型作为目标计算模型,训练结束;
在一个可选的实施方式中,判断测试结果是否满足精度要求的方法包括:
依次取测试集中的样本数据,将其输入量作为终端状态计算模型的输入,得到对应的预测终端状态;若样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与预测终端状态之间的相对误差;否则,对预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与预测终端状态之间的相对误差;
计算测试集中所有样本数据的相对误差的算数平均值和标准差,由此来判断终端状态计算模型是否满足精度要求;
若测试结果不满足精度要求时,可进行如下调整:更换优化算法、调整优化参数、增加每个批次的训练数目、加大网络训练次数,或着其他可影响训练精度的因素。
本发明还提供了一种控制序列搜索方法,如图3所示,包括:
将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与初始状态构成M个输入量;
分别对M个输入量进行归一化操作;
分别以M个已归一化的输入量作为输入,利用本发明第一方面所提供的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
若目标计算模型的样本集中终端状态与控制序列不满足线性关系,则对M个预测终端状态中的非线性误差进行补偿后,对于给定的目标终端状态,利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列;否则,对于给定的目标终端状态,直接利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列;
在一个可选的实施方式中,对于给定的目标终端状态,利用PSO算法在M个预测终端状态中进行搜索,从而得到满足条件的控制序列方法包括:
根据给定的目标终端状态,计算每一个预测终端状态的适应值;获得适应值最低的预测终端状态所对应的控制序列,从而得到满足条件的控制序列。
本发明还提供了一种一种终端状态计算模型训练装置,包括:样本集生成模块、样本集归一化模块、模型构建模块、模型训练模块以及模型测试模块;
样本集生成模块用于在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;
样本集归一化模块用于对样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
模型构建模块用于根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
模型训练模块用于利用训练集训练终端状态计算模型;
模型测试模块用于利用测试集测试终端状态计算模型,并判断测试结果是否满足精度要求;
其中,N1和N2均为正整数;
在本发明实施例中,各模块的具体实施方式可以参考以上方法实施例中的描述,在此不做赘述。
本发明还提供了一种控制序列搜索装置,包括:输入量获取模块、输入量归一化模块、终端状态计算模块、误差补偿模块以及优化搜索模块;
输入量获取模块用于将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与初始状态构成M个输入量;
输入量归一化模块用于分别对M个输入量进行归一化操作;
终端状态计算模块用于分别以M个已归一化的输入量作为输入,利用本发明第一方面所提供的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
误差补偿模块用于在样本集中终端状态与控制序列不满足线性关系时对M个预测终端状态中的非线性误差进行补偿;
优化搜索模块用于在目标计算模型的样本集中,终端状态与控制序列满足线性关系时,对于给定的目标终端状态,利用PSO算法在由终端状态计算模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;优化搜索模块还用于在目标计算模型的样本集中,终端状态与控制序列不满足线性关系时,对于给定的目标终端状态,利用PSO算法在由误差补偿模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;
其中,M为正整数;
在本发明实施例中,各模块的具体实施方式可以参考以上方法实施例中的描述,在此不做赘述。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种飞行器的终端状态计算模型训练方法,其特征在于,包括如下步骤:
(1)在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的飞行器的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;
(2)对所述样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
(3)根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
(4)利用所述训练集训练所述终端状态计算模型;
(5)利用所述测试集测试所述终端状态计算模型,若测试结果不满足精度要求,则调整优化算法、训练参数或二者的结合,并转入步骤(4);否则,将已训练的终端状态计算模型作为目标计算模型,训练结束;
其中,N1和N2均为正整数;
所述步骤(3)中构建的终端状态计算模型依次包括:输入层、第一隐含层、第二隐含层和输出层,层与层之间的连接为全连接;所述输入层的维数为nx+mny,所述第一隐含层的维数为nx+mny+10,所述第二隐含层的维数为nx+2,所述输出层的维数为nx;所述第一隐含层和所述第二隐含层的激活函数为sigmoid函数,所述输出层的激活函数为线性函数;
其中,nx为初始状态及终端状态的维数,mny为控制序列的维数;
所述飞行器的终端状态计算模型训练方法,还包括:
对所述样本集中的终端状态和控制序列进行统计回归分析,并判断终端状态与控制序列是否满足线性关系;
所述步骤(4)中,利用所述训练集训练所述终端状态计算模型,包括:
(41)从所述训练集中随机选取N个样本数据,作为一个批次;
(42)对于所述批次中的任意一个样本数据,将其输入量作为所述终端状态计算模型的输入,得到对应的预测终端状态;若所述样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与所述预测终端状态之间的均方误差;否则,对所述预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与所述预测终端状态之间的均方误差;
(43)将所述批次中每个样本数据的均方误差求和,得到损失函数MSE;
(44)根据所述损失函数MSE,利用Adam优化算法更新权值;
(45)重复执行步骤(42)~(44),直至达到训练迭代次数上限或者精度要求;
其中,N为正整数,且N<N1×N2。
3.如权利要求1所述的飞行器的终端状态计算模型训练方法,其特征在于,所述步骤(5)中,判断利用所述测试集测试所述终端状态计算模型的测试结果是否满足精度要求的方法包括:
依次取所述测试集中的样本数据,将其输入量作为所述终端状态计算模型的输入,得到对应的预测终端状态;若所述样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与所述预测终端状态之间的相对误差;否则,对所述预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与所述预测终端状态之间的相对误差;
计算所述测试集中所有样本数据的相对误差的算数平均值和标准差,由此来判断所述终端状态计算模型是否满足精度要求。
4.一种控制序列搜索方法,其特征在于,包括:
将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与所述初始状态构成M个输入量;
分别对所述M个输入量进行归一化操作;
分别以M个已归一化的输入量作为输入,利用权利要求1-3任一项所述的飞行器的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
若所述目标计算模型的样本集中终端状态与控制序列不满足线性关系,则对所述M个预测终端状态中的非线性误差进行补偿后,对于给定的目标终端状态,利用PSO算法在所述M个预测终端状态中进行搜索,从而得到满足条件的控制序列;否则,对于给定的目标终端状态,直接利用PSO算法在所述M个预测终端状态中进行搜索,从而得到满足条件的控制序列。
5.如权利要求4所述的控制序列搜索方法,其特征在于,对于给定的目标终端状态,利用PSO算法在所述M个预测终端状态中进行搜索,从而得到满足条件的控制序列方法包括:
根据给定的目标终端状态,计算每一个预测终端状态的适应值;获得适应值最低的预测终端状态所对应的控制序列,从而得到满足条件的控制序列。
6.一种飞行器的终端状态计算模型训练装置,其特征在于,包括:样本集生成模块、样本集归一化模块、模型构建模块、模型训练模块以及模型测试模块;
所述样本集生成模块用于在预设的有效范围内随机生成N1个初始状态,并随机生成N2个控制序列;对于任意一个初始状态,分别与每一个控制序列组合为一个输入量,共得到N1×N2个输入量;利用蒙特卡洛法进行模拟打靶,得到每一个输入量所对应的飞行器的终端状态,共得到N1×N2个终端状态;将输入量及其对应的终端状态作为一个样本数据,由此得到由N1×N2个样本数据构成的样本集;
所述样本集归一化模块用于对所述样本集进行归一化操作,并将已归一化的样本集划分为训练集和测试集;
所述模型构建模块用于根据样本数据的输入量与终端状态的维数,构建基于多层神经网络的终端状态计算模型,用于根据输入量得到对应的预测终端状态;
所述模型训练模块用于利用所述训练集训练所述终端状态计算模型;
所述模型测试模块用于利用所述测试集测试所述终端状态计算模型,并判断测试结果是否满足精度要求;
其中,N1和N2均为正整数;
所述终端状态计算模型依次包括:输入层、第一隐含层、第二隐含层和输出层,层与层之间的连接为全连接;所述输入层的维数为nx+mny,所述第一隐含层的维数为nx+mny+10,所述第二隐含层的维数为nx+2,所述输出层的维数为nx;所述第一隐含层和所述第二隐含层的激活函数为sigmoid函数,所述输出层的激活函数为线性函数;
其中,nx为初始状态及终端状态的维数,mny为控制序列的维数;
所述飞行器的终端状态计算模型训练装置,还包括:统计回归分析模块,用于对所述样本集中的终端状态和控制序列进行统计回归分析,并判断终端状态与控制序列是否满足线性关系;
所述模型训练模块利用所述训练集训练所述终端状态计算模型,包括:
(41)从所述训练集中随机选取N个样本数据,作为一个批次;
(42)对于所述批次中的任意一个样本数据,将其输入量作为所述终端状态计算模型的输入,得到对应的预测终端状态;若所述样本集中终端状态与控制序列满足线性关系,则直接计算该样本数据的终端状态与所述预测终端状态之间的均方误差;否则,对所述预测终端状态中的非线性误差进行补偿,然后计算该样本数据的终端状态与所述预测终端状态之间的均方误差;
(43)将所述批次中每个样本数据的均方误差求和,得到损失函数MSE;
(44)根据所述损失函数MSE,利用Adam优化算法更新权值;
(45)重复执行步骤(42)~(44),直至达到训练迭代次数上限或者精度要求;
其中,N为正整数,且N<N1×N2。
7.一种控制序列搜索装置,其特征在于,包括:输入量获取模块、输入量归一化模块、终端状态计算模块、误差补偿模块以及优化搜索模块;
所述输入量获取模块用于将飞行器的当前状态作为初始状态;随机生成M个不同的控制序列,分别与所述初始状态构成M个输入量;
所述输入量归一化模块用于分别对所述M个输入量进行归一化操作;
所述终端状态计算模块用于分别以M个已归一化的输入量作为输入,利用权利要求1-3任一项所述的飞行器的终端状态计算模型训练方法得到的目标计算模型计算对应的M个预测终端状态;
所述误差补偿模块用于在所述目标计算模型的样本集中终端状态与控制序列不满足线性关系时对所述M个预测终端状态中的非线性误差进行补偿;
所述优化搜索模块用于在所述样本集中终端状态与控制序列满足线性关系时,对于给定的目标终端状态,利用PSO算法在由所述终端状态计算模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;所述优化搜索模块还用于在所述样本集中终端状态与控制序列不满足线性关系时,对于给定的目标终端状态,利用PSO算法在由所述误差补偿模块得到的M个预测终端状态中搜索,从而得到满足条件的控制序列;
其中,M为正整数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810849572.5A CN110851911B (zh) | 2018-07-28 | 2018-07-28 | 终端状态计算模型训练方法、控制序列搜索方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810849572.5A CN110851911B (zh) | 2018-07-28 | 2018-07-28 | 终端状态计算模型训练方法、控制序列搜索方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110851911A CN110851911A (zh) | 2020-02-28 |
CN110851911B true CN110851911B (zh) | 2021-07-27 |
Family
ID=69595157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810849572.5A Active CN110851911B (zh) | 2018-07-28 | 2018-07-28 | 终端状态计算模型训练方法、控制序列搜索方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110851911B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118020079A (zh) * | 2021-09-28 | 2024-05-10 | 罗伯特·博世有限公司 | 用于模拟用于执行任务的环境的方法和装置 |
CN114326759B (zh) * | 2021-12-06 | 2023-12-22 | 中国农业大学 | 多智能体编队控制方法、装置及多智能体系统 |
CN116720554B (zh) * | 2023-08-11 | 2023-11-14 | 南京师范大学 | 一种基于fpga技术的多段线性拟合的神经元电路实现方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6735500B2 (en) * | 2002-06-10 | 2004-05-11 | The Boeing Company | Method, system, and computer program product for tactile cueing flight control |
CN104020778A (zh) * | 2014-06-18 | 2014-09-03 | 哈尔滨工业大学 | 基于跟踪时间-能耗最优轨线的挠性卫星姿态机动控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10474789B2 (en) * | 2016-06-24 | 2019-11-12 | The Boeing Company | Prediction methods and systems for structural repair during heavy maintenance of aircraft |
-
2018
- 2018-07-28 CN CN201810849572.5A patent/CN110851911B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6735500B2 (en) * | 2002-06-10 | 2004-05-11 | The Boeing Company | Method, system, and computer program product for tactile cueing flight control |
CN104020778A (zh) * | 2014-06-18 | 2014-09-03 | 哈尔滨工业大学 | 基于跟踪时间-能耗最优轨线的挠性卫星姿态机动控制方法 |
Non-Patent Citations (3)
Title |
---|
Neural Network Modeling of Flight Control System;He Mingyi等;《IEEE》;19980930;第27-29页 * |
四轴无人机多约束条件下的跟踪控制和轨迹规划方法研究;林鹏宏;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20170215;第2017年卷(第02期);第C031-187页 * |
基于改进粒子群算法的再入飞行器轨迹优化;苏茂等;《计算技术与自动化》;20111231;第30卷(第4期);第55-59页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110851911A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111351488B (zh) | 飞行器智能轨迹重构再入制导方法 | |
Zhong et al. | Optimal control for unknown discrete-time nonlinear Markov jump systems using adaptive dynamic programming | |
CN110851911B (zh) | 终端状态计算模型训练方法、控制序列搜索方法及装置 | |
CN112114521B (zh) | 航天器智能预测控制进入制导方法 | |
CN108520325B (zh) | 一种基于多变环境下加速退化数据的集成寿命预测方法 | |
CN111158237B (zh) | 基于神经网络的工业炉炉温多步预测控制方法 | |
CN108537366B (zh) | 基于最优卷积二维化的水库调度方法 | |
CN104616060A (zh) | 基于bp神经网络和模糊逻辑的绝缘子污秽度预测方法 | |
CN104539601B (zh) | 动态网络攻击过程可靠性分析方法及系统 | |
CN114415735B (zh) | 面向动态环境的多无人机分布式智能任务分配方法 | |
CN110046408A (zh) | 基于bp神经网络微分与区间分析的区间不确定性优化方法 | |
CN108204944A (zh) | 基于apso优化的lssvm的埋地管道腐蚀速率预测方法 | |
CN110969295A (zh) | 列车区段延误预测误差控制方法 | |
CN111897240B (zh) | 一种基于核动力系统运行的仿真方法及系统 | |
CN112270442A (zh) | 一种基于ivmd-acmpso-cslstm组合电力负荷预测方法 | |
Gao et al. | Multi-UAV task allocation based on improved algorithm of multi-objective particle swarm optimization | |
CN109062040A (zh) | 基于系统嵌套优化的预测pid方法 | |
Zhang et al. | Hybrid evolutionary robust optimization-based optimal control for time-delay nonlinear systems | |
CN116933948A (zh) | 基于改进海鸥算法与反向传播神经网络的预测方法和系统 | |
CN116432539A (zh) | 一种时间一致性协同制导方法、系统、设备及介质 | |
CN113300884B (zh) | 一种基于gwo-svr的分步网络流量预测方法 | |
CN115775038A (zh) | 一种基于igwo优化lssvm的短期负荷预测方法 | |
CN114384931A (zh) | 一种基于策略梯度的无人机多目标最优控制方法和设备 | |
CN112329995A (zh) | 分布式储能集群的优化调度方法、装置和计算机设备 | |
Herzallah et al. | Robust control of nonlinear stochastic systems by modelling conditional distributions of control signals |
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 |