首页/文章/ 详情

Simcenter ROM案例01:静态样本

2小时前浏览3

Simcenter降阶建模工具允许使用降阶模型将高维系统表示为低维系统。目前支持多种降阶方法,每种方法都采用其独特方法构建适用于不同仿真类型的模型。

本教程将探索Simcenter降阶建模的重要概念与工作流程。案例所涉及的模型是一个高频高保真模型,用于表征四缸汽油发动机的空气动力学和燃烧物理特性。由于该模型提供曲轴角度精度,因此它能在极短时间内模拟结果。为缩短仿真时间,案例提供了平均值发动机模型,该模型计算每次发动机旋转的平均空气和燃烧行为,便于集成到整车模型中。

平均值发动机模型基于从四个输入变量(发动机转速、负荷、点火提前角和空燃比)在不同工况下的燃烧效率图创建而成。该模型输出三种效率:

  • 容积效率,衡量气缸压缩气体的效果。
  • 指示效率,对应曲轴上指示功率与燃烧可用能量之比。
  • 排气效率,以燃料的低热值乘以燃料能量的净焓来度量。

这些效率对于辅助内燃机设计至关重要。随着发动机日益先进,排放法规愈发严格,设计工程师拥有能够精确且迅速模拟这些参数的工具显得尤为重要。本教程旨在通过四个输入变量构建一个静态模型,以生成三种效率。

输入文件分为训练集和验证集两部分。训练数据集用于建立简化阶模型的样本集 合;而验证数据在模型构建过程中被排除,以便后续对模型拟合度进行无偏评估。

1 启动ROM项目并导入数据

Simcenter降阶建模功能允许根据输入数据的类型创建降阶模型,每种类型都有其特定的要求。本教程将使用.data文件创建一个静态样本项目。

开始之前,建议创建一个工作目录。从[INSTALL]\rombuilder\demo\static_samples目录中复 制源文件engine_mappingT.dataengine_mapping_V.data到工作目录中。

此ROM项目的首步是选择Static Samples输入类型,并导入发动机效率.data文件。这些文件包含了用于训练降阶模型的发动机效率参数。

  • 启动Simcenter Reduced Order Modeling。从File菜单中选择New → New project
  • 使用 File > Save as将项目命名为demo_engine。
 

注:保存项目并非强制性要求,但建议进行此操作。Simcenter降阶建模会创建新项目并将其打开至 input页面.

  • input页面,点击Add data
  • 在文件浏览器中,将File of type过滤器更改为XY Table(*.data *.dat),并选择两个文件:engine_mapping_T.dataengine_mapping_V.data,然后点击Open

inport data对话框中,可以预览文件中所包含的数据列信息。其中, engine_mapping_T 包含15102个样本,而 engine_mapping_V 包含3352个样本;两者均含有7个变量。

  • 点击 OK 按钮导入数据.

原始输入数据集被随机分为两部分。较大的数据集用于训练ROM模型,较小的数据集则用于后续验证ROM模型。验证过程至关重要,其确保了该模型能够处理与训练时不同的其他数据,并且依然能给出有效结果。

  • 在Model input分组中,通过单选按钮将engine_mapping_T设为Training,并将engine_mapping_V设为Validation

2 构建与测试响应面模型

响应面模型用于通过多项式方程建模响应变量与一个或多个预测变量之间的关系。由于响应面模型采用回归分析拟合,这意味着RSM更适用于近似线性或多项式关系的情况。

在生成响应面之前,必须明确哪些变量是输入项,哪些是输出项。

  • 进入Model选项卡,点击按钮 Create Model > Response Surface Model.
  • Model Inputs-Outputs 对话框中,指定 engine speed [rpm], engine load, spark advance, air-fuel ratio (AFR)Input ,指定Volumetric, Indicated, Exhaust efficiencyOutput

2.1 使用Quadratic RSM方法

  • Model setup 面板中,将 Response surface type 设为 Quadratic RSM
  • Training 面板中,点击按钮Start fitting RSM Model。此操作将启动响应曲面模型的拟合过程。
  • 点击按钮Save model保存模型,并将模型命名为rsm_quad。
 

模型训练完毕后,可以查看响应面模型的保真度。

可以在右下角的Model Results面板中看到总体结果输出,训练集和验证集的准确率均达到92%。体积效率和指示效率保证度分别为93%和96%,而排气效率的保真度指数较低,为88%。

可以选择图形窗口中的Output下拉框中的变量查看各变量的保真度,如下所示为体积效率。

可以查看指示效率保真度。

排气效率保真度。

2.2 使用Cubic RSM方法

在验证了二次响应面法的结果后,现在采用三次响应面法再次进行分析将具有指导意义。

  • 选择 Create Model > Response Surface Model
  • Model setup 面板中,将 Response surface type 设为 Cubic RSM
  • Training 面板中,点击按钮Start fitting RSM Model

训练结果如图所示。

cubic RSM在所有输出方面均提供了比二次RSM更高的保真度。

尽管三次响应面模型相较于二次响应面模型在拟合效果上有所提升,但通过启用最小尺寸选项的高阶响应面模型,仍可寻求更佳的拟合结果。当最小尺寸选项被激活时,ROM构建器会在设定的限制范围内找出最优的阶数和单项式组合以实现最高精度。

2.3 使用自定义模型

  • 选择 Create Model > Response Surface Model
  • Model Setup面板中指定TypeCustom… ,激活选项 Minimize mode size
  • 点击Setup按钮打开设置对话框
  • Training 面板中,点击按钮Start fitting RSM Model

训练结果如图所示。

3 构建与测试神经网络

神经网络是一种适用于非线性关系的降阶建模灵活方法。输入数据通过执行数学运算的节点产生输出,激活函数引入非线性以捕捉这种关系,并通过迭代调整节点来最小化模型预测与验证数据之间的差异。

  • 点击菜单 Create Model > Neural Network.
  • 输入输出变量定义如下图所示
  • 设置Model Setup面板中的参数,如下图所示。点击按钮Apply Template...打开设置对话框
  • 选择模型复杂度为 Medium
  • Training面板中,点击按钮 Start neural network training 开始神经网络训练
 

一个Epoch表示模型对整个数据集的一次完整迭代。在每个Epoch中,模型参数会根据预测输出与实际输出的对比进行更新。增加Epoch的数量有助于拟合过程收敛到更精确的解。如果在训练过程结束时,训练损失曲线仍在急剧下降,可以尝试增加Epoch的数量。在本教程中,训练损失曲线在150个Epoch后趋于平稳。需要注意的是,设置过高的Epoch会导致模型过拟合,即它虽然能很好地适应原始数据集,但在其他数据集上无法产生可靠结果;相反,设置过低的Epoch则会导致模型欠拟合,由于参数不足而未能捕捉到数据的特征或模式。

  • 保存模型并将其命名为net_med.

训练和验证的保真度指标在两个参数上均提升至98.8%,从而更准确地反映了模型所用数据。先前的响应面模型中,排气效率范围为86.7%至96.1%,而今该指标达到98.7%,显示出与三种效率更高的相关性。

4 构建与测试高斯过程模型

高斯过程模型采用概率方法建模,通过捕捉输入与输出间的统计依赖关系,实现高精度的预测。由于该模型利用高斯分布和贝叶斯推断来估计其超参数,因此特别适用于系统分析。

  • 选择Create Model > Gaussian Process
  • 输入输出变量选择如下图所示
 
  • 指定Kernel typeAuto
  • 点击按钮 Start training 开始训练

模型保真度如下图所示。

结果与神经网络模型的保真度指数相似。由于数据点超过1000个,根据拟合方法的指示,采用了回归子集近似法。

  • 保存模型gp_auto

5 导出ROM

既然已拥有一系列简化模型,它们能很好地反映发动机效率,便可导出选定的模型。

  • 切换至Export选项卡
  • 如下图所示,选择想要导出的模型,并指定导出路径信息,点击按钮 Export models 即可导出模型

此时可以在Amesim中导入模型。

6 比较模型

  • 右键选择模型树节点Models下的任意子节点,点击弹出菜单项 Information… 打开设置对话框
  • 点开Models下拉框,如下图所示选择需要参与比较的模型

模型比较结果如图所示。

  • 使用Models下拉列表选择要比较的模型,并使用Sorting下拉列表选择Per validation fidelity

在保真度方面,神经网络模型现阶段是最佳选择,但训练速度最慢。高斯过程的平均准确率几乎相同,且训练速度快得多。在前两个输出上表现优于神经网络,而排气效率略逊一筹。

响应面法(RSM)表现相当不错且计算迅速。可以看到,经过尺寸最小化的高阶RSM仅有44个系数,少于普通二次RSM(45个系数)。这表明只需少数高次项即可最大化精度。

 

注:本文为Simcenter ROM的随机案例。


静态模型比较简单,属于典型的有监督学习模型,可以通过编程的方式很容易实现。Simcenter ROM中提供了神经网络、响应面以及高斯过程方法用于处理此类问题。用于此类方法的模型还有很多,比如支持向量机SVM,以及最近比较火的XGBoost,我个人比较喜欢使用支持向量机。


来源:CFD之道

Fidelity非线性燃烧UMAMESim曲面
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-09-25
最近编辑:2小时前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2540粉丝 11038文章 713课程 27
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈