一种基于MAML的气动建模方法及系统与流程

文档序号:30083894发布日期:2022-05-18 05:07阅读:142来源:国知局
一种基于MAML的气动建模方法及系统与流程
一种基于maml的气动建模方法及系统
技术领域
1.本发明属于飞行器气动设计领域,具体涉及一种基于maml的气动建模方法及系统。


背景技术:

2.目前工程上广泛应用的非线性非定常气动力建模方法主要有两类研究方法:一类是建立气动力和飞行物理量相关的传统数学类的气动模型(如代数模型、阶跃响应模型等),另一类是智能学习类的气动模型(如模糊逻辑法、支持向量机(svm)等)。其中传统数学类方法是进行大量的气动数据来进行分段线性气动建模,模型精度较低,参数辨识难度大,已逐渐无法满足现有工程需求。智能学习类方法可以建立较高精度的多输入多输出非线性气动模型,非常适合非线性非定常气动力建模,但由于此类方法主要为数据驱动,普遍存在数据需求量大、学习时间长、易出现过拟合、小样本泛化能力较弱的问题,这大大限制了智能学习类气动建模方法的工程化应用。所以需要利用智能学习类方法建模精度高的优势,同时进一步增强模型小样本泛化能力,兼顾学习效率与精度,提高智能化气动建模的功能性、实用性。
3.现阶段运用较多的智能学习类气动建模方法,主要思路是通过机器学习获得模型参数,使得最终参数能够在训练集上达到最佳精度,损失最小,此种方法面向的是学习的结果。maml方法(model-agnostic meta-learning,模型无关元学习法)是一种基于深度学习发展出来的面向学习过程的方法。通过此方法能建立气动模型框架,能够学习出一个非常好的模型初始化参数,有了这个初始化参数之后,面对相似场景的非线性非定常物理问题,只需要少量的学习样本就可以快速在模型中收敛,从而提高少样本下的泛化能力,兼顾精度与学习效率,具有较强工程应用背景,对于我国未来战斗机的非线性非定常气动建模具有重要意义。


技术实现要素:

4.本发明的目的是提供一种基于maml的气动建模方法及系统,提高气动模型少样本下的泛化能力,提高精度与学习效率。
5.为了实现上述目的,一方面,本发明提供一种基于maml的气动建模方法,包括以下几个步骤:
6.s1:生成用于机器学习的气动力数据集;
7.s2:基于所述气动力数据集,建立基学习过程;
8.s3:以基学习过程为基础,获得元学习过程。
9.可选地,s1的步骤包括:
10.s11:获取初步气动力与初步流场;
11.s12:基于模拟飞行器在不同攻角下的所述初步流场,获取静态气动力与静态流场;
12.s13:以所述静态流场为基础,基于模拟飞行器在不同攻角、振荡频率下的大振幅运动,获取所述气动力数据;
13.s14:以获取的所述气动力数据为基础,生成用于机器学习的气动力数据集。
14.可选地,s11步骤包括:
15.s111:生成气动计算网格;
16.s112:根据不同种类飞行器流动特点选取空间离散格式、时间推进格式、湍流模型、预处理、熵修正等气动设置项进行初步气动计算,获得初步气动力与初步流场;
17.s113:将所述初步气动力与初步流场,并通过所述气动计算网格进行加密。
18.可选地,生成所述气动计算网格采用的是pointwise网格生成软件,在气动计算网格生成时,在具有分离流动的区域进行加密。
19.可选地,所述初步流场包括压力、密度、温度、能量、速度等。
20.可选地,s2步骤包括:
21.s21:将所述气动力数据集的80%的数据形成训练集,将剩余20%的数据形成验证集;
22.s22:基于深度神经网络,形成初步机器学习模型,所述深度神经网络主要包括输入层、隐含层和输出层,并初步设定学习层数、每层神经元个数、损失函数等参数;
23.s23:将所述训练集输入所述初步机器学习模型中,评估机器学习效率以及精度;
24.s24:调整学习层数、神经元个数、损失函数等参数,形成基于maml的内部循环,并计算基学习器的参数完成基学习过程。
25.可选地,所述训练集是通过数值模拟手段得到的非线性气动力数据。
26.可选地,s3步骤包括:
27.s31:根据基学习器的参数获取元学习器的参数;
28.s32:通过获取的元学习器的参数完成元学习过程。
29.可选地,s31步骤包括:
30.s311:计算基学习器的参数;
31.s312:根据基学习器的参数获取元学习器参数。
32.另一方面,本发明还提供一种气动建模系统,包括:
33.数据集模块:生成用于机器学习的气动力数据集;
34.基学习器模块:基于所述气动力数据集,建立基学习过程;
35.元学习器模块:以基学习过程为基础,获得元学习过程。
36.本发明的有益效果:
37.通过本发明能够学习出一个较好的基学习器和元学习器的参数,有了这个参数之后,面对相似场景的非线性非定常物理问题,只需要少量的学习样本就可以快速在模型中收敛,从而提高少样本下的泛化能力,兼顾精度与学习效率,具有较强的工程应用背景。
38.本发明的其它特征和优点将在随后具体实施方式部分予以详细说明。
附图说明
39.通过结合附图对本发明示例性实施方式进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,其中,在本发明示例性实施方式中,相同的参考标号
通常代表相同部件。
40.图1示出了本发明实施例1的bp方法和maml方法测试数据集示意图;
41.图2a和图2b示出了本发明实施例1的bp方法数据拟合结果示意图;
42.图3示出了本发明实施例1的maml方法在0步计算时的模拟曲线示意图;
43.图4示出了本发明实施例1的bp网络与maml方法损失函数收敛对比示意图;
44.图5a和图5b示出了本发明实施例1的计算500步拟合效果对比示意图;
45.图6示出了本发明实施例1的maml方法小样本泛化能力测试示意图。
具体实施方式
46.下面将更详细地描述本发明的优选实施方式。虽然以下描述了本发明的优选实施方式,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。
47.一方面,本发明提供一种基于maml的气动建模方法,包括以下几个步骤:
48.s1:生成用于机器学习的气动力数据集;
49.s2:基于所述气动力数据集,建立基学习过程;
50.s3:以基学习过程为基础,获得元学习过程。
51.通过本发明能够学习出一个较好的基学习器和元学习器的参数,有了这个参数之后,面对相似场景的非线性非定常物理问题,只需要少量的学习样本就可以快速在模型中收敛,从而提高少样本下的泛化能力,兼顾精度与学习效率,具有较强的工程应用背景。
52.可选地,s1的步骤包括:
53.s11:获取初步气动力与初步流场;
54.s12:基于模拟飞行器在不同攻角下的所述初步流场,获取静态气动力与静态流场;
55.s13:以所述静态流场为基础,基于模拟飞行器在不同攻角、振荡频率下的大振幅运动,获取所述气动力数据;
56.s14:以获取的所述气动力数据为基础,生成用于机器学习的气动力数据集。
57.需要说明的是,获得的初步流场与初步气动力,需要进行网格加密,直至初步气动力几乎不变,证明此网格规模为合理可信。在网格加密时,应重点加密分离流动较为剧烈的区域,同时应在i,j,k三个方向都进行适当加密。模拟飞行器在不同攻角下的初步流场,获取飞行器静态气动力与飞行器在不运动情况下的非定常流场,记录每一个时间点下的流场,作为流动模态分解的输入文件,在记录非定常流动计算结果时,由于计算结果文件较大,可适当延长记录的时间步长,只要满足流动模态分解需求即可。以静态流场作为初场,模拟飞行器在不同攻角、振荡频率下的大振幅运动,并记录气动力随姿态变化。在气动/运动耦合计算过程中,采用全局同步亚迭代的求解策略,同步推进流体力学方程和刚体动力学方程,获得高的耦合时间精度,从而获取气动力数据。以获得气动力数据为基础,将气动力数据整理成机器学习框架所需的气动力数据集。
58.可选地,s11步骤包括:
59.s111:生成气动计算网格;
60.s112:根据不同种类飞行器流动特点选取空间离散格式、时间推进格式、湍流模型、预处理、熵修正等气动设置项进行初步气动计算,获得初步气动力与初步流场;
61.s113:将所述初步气动力与初步流场,并通过所述气动计算网格进行加密。
62.需要说明的是,根据不同种类飞行器的特点生成cfd数值模拟所需的气动计算网格,在生成气动计算网格时采用的是pointwise网格生成软件,网格形式为结构网格,在网格生成时,应在具有较多分离流动的区域进行加密。首先生成connector,然后连接connector形成domain,集合domain形成网格block,从而形成最后的网格。根据不同种类飞行器流动特点选取空间离散格式、时间推进格式、湍流模型、预处理、熵修正等气动设置项进行初步气动计算,获得初步气动力与初步流场,初步流场应包含压力、密度、温度、能量、速度等基本信息。对于分离流动较为剧烈的研究工况,还应采用rans/les方法来提高对分离流动的模拟精度。
63.可选地,生成所述气动计算网格采用的是pointwise网格生成软件,在气动计算网格生成时,在具有分离流动的区域进行加密。
64.可选地,所述初步流场包括压力、密度、温度、能量、速度等。
65.可选地,s2步骤包括:
66.s21:将所述气动力数据集的80%的数据形成训练集,将剩余20%的数据形成验证集;
67.s22:基于深度神经网络,形成初步机器学习模型,所述深度神经网络主要包括输入层、隐含层和输出层,并初步设定学习层数、每层神经元个数、损失函数等参数;
68.s23:将所述训练集输入所述初步机器学习模型中,评估机器学习效率以及精度;
69.s24:调整学习层数、神经元个数、损失函数等参数,形成基于maml的内部循环,并计算基学习器的参数完成基学习过程。
70.需要说明的是,训练集采用的是通过数值模拟手段得到的非线性气动力数据,利用现有的数据,分析数据规模、气动特性等特点,确定适合于描述大攻角非线性/非定常特性的神经网络方法。现阶段最常用的网络训练方法是基于反向传播的网络训练算法和径向基函数网络训练方法,两类方法对强非线性的非定常气动建模具有非常高的建模精度。基于深度神经网络形成初步机器学习模型。深度神经网络结构主要分为三个部分,输入层、隐含层和输出层,初步设定学习层数、每层神经元个数、损失函数优化方法等关键参数;将形成的训练集带入初步机器学习模型中,评估机器学习效率、精度。在深度神经网络的应用中,为了确定网络隐藏层结构,需要多次迭代调整深度神经网络的层数和隐藏层神经元个数,从而探索基于深度神经网络模型在飞行器气动力建模中的应用,表征飞行器的气动力/力矩与飞行状态和控制输入之间的函数关系。调整学习层数、神经元个数、损失函数优化方法,直至学习效率、精度达到最优,对气动参数辨识模型和验证集数据进行对比,分析辨识模型能否达到预定辨识准则,则形成基于maml的气动建模内部循环。
71.可选地,所述训练集是通过数值模拟手段得到的非线性气动力数据。
72.可选地,s3步骤包括:
73.s31:根据基学习器的参数获取元学习器的参数;
74.s32:通过获取的元学习器的参数完成元学习过程。
75.可选地,s31步骤包括:
76.s311:计算基学习器的参数;
77.s312:根据基学习器的参数获取元学习器参数。
78.需要说明的是,在内部循环外加入元学习循环,使得模型在不同组的训练集之间来回学习。maml的关键是新任务下的初始参数的获得,该阶段分两步完成:分别为基学习器和元学习器。基学习阶段,在已知模型参数θ的条件下,遍历当前批次下每个任务,计算当前任务支持集损失梯度,根据损失梯度一步更新中间变量,然后计算当前任务验证集关于模型参数的损失,并记录损失累加。通过机器学习,获得元学习的损失函数,直至损失函数降到最低,如收敛,则形成了基于maml的气动模型,如学习发散,尝试调整参数,直至损失函数收敛。
79.另一方面,本发明还提供一种气动建模系统,包括:
80.数据集模块:生成用于机器学习的气动力数据集;
81.基学器模块:基于所述气动力数据集,建立基学习过程;
82.元学习器模块:以基学习过程为基础,获得元学习过程。
83.实施例1
84.参考图1,本发明提供一种基于maml的气动建模方法,本次方法测试采用的学习数据集是10组类正弦气动力随时间变化曲线,气动力幅值范围从1到10,每组数据包含100个数据点,共1000个数据点,。
85.参考图2a和图2b,为了体现maml方法的优势,首先采用较为常用的bp网络进行数据拟合,获得基学习器下的神经网络模型。为了测试基学习器下的神经网络模型的泛化能力,分别采用振幅2.5(内插)与振幅20(外插)的目标数据进行拟合测试。对于振幅2.5(内插)的拟合效果较好,如图2a所示;通过对数据集的神经网络学习,该数据模型能够较好的模拟振幅较小情况下(振幅小于10)的数据,但对与较大振幅下(振幅大于10)的数据,如图2b所示,,能够明显看到,该模型已经不能做到很好的拟合效果,如需对较大振幅算例进行拟合,则需要对重新进行学习,体现出了传统神经网络泛化能力偏弱的缺点。
86.参考图3,,采用基于maml的气动建模方法进行建模,图3是采用maml方法建立的模型框架在计算0步情况下的模拟曲线,图中显示,即使在0步计算的前提下,该框架就已经能够体现出比较明显的周期性趋势。
87.参考图4,采用maml框架进行回归计算500步,并将其与传统神经网络的拟合进行对比,图4为损失函数的收敛曲线,我们能够看到,该模型收敛速度大大加快,500步以内就能得到很好的效果(正常回归计算要20000步左右)。
88.擦考图5a和图5b,图5a和图5b是传统神经网络与maml方法在计算500步下的拟合效果对比,图中显示,maml方法拟合更好。
89.参考图6,为了测试maml得到的模型框架在较少样本下的拟合能力,在原样本中只取少量的点(9个样本),如图6,计算500步,也能够得到好的拟合效果,体现出了通过maml方法的得到的模型框架具有较强的新任务适应能力,提高了神经网络模型的小样本泛化能力。
90.以上是对maml方法的初步测试,从测试结果中我们可能够看到maml方法所建立的模型框架具有较强的小样本泛化能力,能够对新任务进行快速学习,提高机器学习效率,降低机器学习成本。
91.以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1