ML自适应网格细分化
ML自适应网格的理论基础
自适应循环中哪一环可以交给学习
经典的自适应网格加密(AMR)是"SOLVE(求解)→ESTIMATE(误差估计)→MARK(选出待加密单元)→REFINE(加密)"的反复(基础参见h加密)。机器学习的切入点主要有三处。
| 路线 | 学习对象 | 目的 |
|---|---|---|
| ①学习误差指示器 | 由局部特征回归单元误差(标签=与细密解之间的真误差,或DWR指标) | 用廉价推理替代昂贵的误差估计(伴随分析等) |
| ②直接预测尺寸场 | 由形状·边界条件给出最优网格尺寸分布 | 不做反复,"第一版就生成好网格" |
| ③用强化学习学加密策略 | MARK策略本身(状态=解与网格,动作=加密/粗化) | 获得"误差×成本"意义下长期最优的加密顺序 |
为什么这项任务适合用学习来做
误差指示器本来就有成熟理论,特意换成学习模型有意义吗?
有两个理由。第一是成本——面向目标量的误差估计(DWR)需要额外求解一个伴随问题,其代价与正问题相当;而学习模型的推理只要毫秒级。第二是把手艺显性化——实务中好网格是靠老手的经验法则(这类形状这里要细)做出来的,光靠理论指标复现不了。组织里沉淀下来的历史分析(形状·网格·结果),恰恰就是这些经验法则的训练数据。也就是说,ML-AMR与其说是"替代理论",不如说有两个方向的价值:把昂贵的理论指标蒸馏出来,以及把隐性知识数据化。
网格该怎么表示——图是自然的选择
网格的单元数与连接关系都是可变的,因此比起作用在定长向量上的MLP,图神经网络(GNN)是更自然的表示。把节点/单元当作图节点、相邻关系当作边,再挂上局部特征(解的梯度、Hessian矩阵的近似、单元形状、到边界的距离、材料界面标志),用消息传递汇聚邻域信息。基于CNN的做法(把解场图像化后输出尺寸场)在结构化网格·二维上很省事,但要扩展到非结构三维的实务,主流已是GNN一系。
学习的设计
训练数据的做法(路线①②)
- 题库的设计——把目标类别的形状·载荷·物性随机化,准备数百个问题(分布设计与代理模型的一般规矩相同)
- "标准答案"的生成——每个问题都用过分细密的参考网格求解,以其与粗网格解之间的局部误差分布、或收敛后自适应历史的最终尺寸场作为标签
- 特征的提取——只用能从粗网格解算出的量来构成(不要把推理时拿不到的信息混进训练特征)
- 训练与校准——若是误差指示器的回归,比起绝对值,排序(哪个单元最差)算准才更重要。把秩相关纳入验证指标
强化学习的定式化(路线③)
状态=当前的网格与解,动作=逐单元的加密/维持/粗化,奖励=误差下降−计算成本上升;以这样的定式化,把"按什么顺序加密才能以最小总成本达到目标精度"学成一个策略。它与回归型的区别在于能处理序贯决策(早期的加密会改变之后解的质量),但训练的稳定化与奖励设计(真误差怎么测)都要花代价,因此研究先行、实务先从回归型做起的阶段论才现实。
把泛化的边界设计出来
ML-AMR的真实水平,取决于"能离开训练过的问题类别多远"。有助于泛化的设计是:①无量纲化的特征(用归一化梯度而不是解的绝对值),②局部性(收窄图的感受野,减少对全局形状的依赖),③按物理类别拆分模型(结构/热/流体分开)。反过来,"一个模型通吃全部物理·全部形状"以当前技术而言是过高的期待,经验法则是类别收得越窄,越容易达到实用精度。
如何带入实务
现实的落地形态是"初始网格推荐"
比起全自动的学习型自适应循环,更早产生实务价值的用法是"把第一版网格做聪明"。由形状与分析条件预测尺寸场,交给网格生成器的尺寸控制——单是这一点,就能减少"太粗要重算""过细白等待"的来回折腾。预测出的尺寸场终究只是初值,最终确认仍由经典的收敛性检查来做——这样的构成下,机器学习出错也不会直接演变成质量事故。
质量保证的原则——验证仍用经典手法
即便用了ML-AMR,原则依然是解的质量保证要靠网格收敛性确认(GCI等)这一经典验证来完成。学习模型是"快速找到好网格的工具",而不是"网格好的证明"。评审该问的问题与以往一样——"这张网格再加密一级,结果会动多少?"回答这个问题的方式,不因有没有机器学习而改变。
效果的度量方式
导入效果要用"达到同一精度所需的总成本"来度量。①在目标量误差处于同一水平时比较单元数(ML推荐网格 vs 均匀/人工网格),②自适应反复次数(求解器执行次数)的减少,③工程师做网格的工时。报告中要连失败例(加密得很奇怪的形状)一并写上,并把适用范围写明。"平均减少30%单元,但薄壁筋板形状不在对象之内"这种带条件的主张,才是可信的导入报告该有的样子。
工具与实现的现状
商用·研究的现状
| 分类 | 现状 |
|---|---|
| 商用CAE的AI功能 | 各家都在扩充解预测AI(Ansys SimAI·Altair physicsAI等)与网格辅助。"分析条件→推荐网格"这类功能正处在产品化推进中的领域,需要逐版本确认功能 |
| 网格生成器侧的自动化 | 基于形状识别的自动尺寸控制(特征检测)已经成熟。ML型正作为它的上位兼容被整合进来 |
| 研究实现 | 基于GNN的误差估计、强化学习加密都有多份公开实现(建立在FEniCS/Firedrake·deal.II等研究生态之上)。可作为用自有数据重训的出发点 |
| 自研构建 | 只要历史分析的(形状·网格·结果)配对有所沉淀,尺寸场回归用标准的GNN/CNN就能搭起来。数据整备才是主体工作 |
先从自有数据资产的盘点开始
导入ML-AMR的第一项工作不是选模型,而是历史分析数据的盘点。①最终采用的网格(=老手给出的答案)是否与形状·工况绑定着留存下来;②哪些项目做到了收敛性确认、即属于"已质量保证";③格式是否机器可读。能当标签用的只有②——拿没做过收敛确认的历史网格当标签,就会把过去的毛病(过密·过疏)一并学进去。"数据治理决定模型性能上限"这条机器学习通则,在这里同样成立。
前沿研究动向
强化学习AMR的进展
把逐单元加密当作多智能体来处理的定式化、以目标量误差为奖励的目标导向RL、策略在不同形状间泛化的研究,都在推进。数值实验中,成本效率超过经典指标(基于梯度)的报告越来越多,但向各向异性加密(边界层那种有方向性的加密)的扩展以及训练成本的回收,仍是走向实务应用的主要课题。
可微分网格与端到端学习
已经出现把网格生成·加密的操作做成可微分,从而由"最终解的误差"直接对网格操作做梯度学习的研究(属于可微分仿真的一个分支)。r加密(节点移动)是连续操作,因此契合度尤其好,已有把"与解同时优化网格"的Movement类方法与神经网络融合的报告。包含h型离散操作在内的完整端到端,目前仍处于研究阶段。
与算子学习的分工·融合
在FNO等算子学习朝着"直接预测解本身"推进的同时,ML-AMR处在"预测为了算准所需的离散化"这一互补位置上。作为融合形态,已经开始出现相互利用:用算子学习的粗略预测去估计误差大的区域、提前加密;反过来,把自适应完成的网格上的解拿去当算子学习的训练数据。作为"预测够用的场合就预测,需要保证的场合就用好网格去解"这一两段式布局的中间层,ML-AMR的定位今后预计会越来越重。
故障排查
按症状的原因与对策
| 症状 | 可能原因 | 对策 |
|---|---|---|
| 对新形状做出明显不自然的加密 | 形状特征落在训练分布之外 | 用分布外检测(特征的重构误差等)触发回退。把该形状类别补进训练集 |
| 结果不如经典误差指示器 | 标签质量(未做收敛确认的网格)·特征不足 | 把训练数据限定在已质量保证的项目上。用秩相关来诊断 |
| 按预测尺寸场生成时出现劣质单元 | 尺寸场变化过急(没有梯度限制) | 把尺寸场的增长率限制(相邻比1.2~1.5)作为必做的后处理 |
| 强化学习不稳定·策略退化 | 奖励的量级·成本项的平衡 | 做奖励归一化;用模仿学习(经典指标的策略)来初始化 |
| 在边界层等各向异性区域没有效果 | 只学了各向同性的尺寸场 | 把输出扩展为各向异性度量(分方向的尺寸),或把边界层用规则单独管理 |
| 导入效果在评审中不被认可 | 对比条件不完备 | 以同一精度基准、多个形状、连失败例一起重新评估(见正文"效果的度量方式") |
关于导入判断的一句话
我们部门到底该不该上ML自适应网格?
判断标准是"同类分析一年跑多少件"。如果是形状变体众多的定型分析(支架强度·机箱散热·风道压损等)大量在跑的部门,历史数据就能当标签,节省效果还会按件数相乘——投入产出比很清楚。若一年只有几件一次性的分析,那就先把经典的自适应功能与网格规范整备好。ML-AMR是"把网格的经验变成数据资产"的技术,所以它在资产能周转的地方才发光。这一点与迁移学习一样,是CAE×ML共通的导入原则。
相关文章:h加密(经典)、用GCI做收敛性验证、ML×网格文章一览。
帮助
更多
错误