百度飞桨利用 NVIDIA Modulus 加速 AI 预测汽车风阻

作者 英伟达中国

案例简介

NVIDIA 与百度飞桨双方技术团队通过在数据、算法、模型等多个方面的合作,共同打造了一款适用于车辆空气动力学数值模拟的 3D 高精度汽车风阻预测模型——DNNFluid-Car。经过训练的 DNNFluid-Car 模型的计算速度比传统数值计算的速度快至少 2-3 个数量级,有效减少了对数以千计的 CPU 计算资源的依赖。

使用 AI 方法提升仿真效率

自汽车行业诞生之初,降低风阻系数一直是行业的重要目标之一。数据显示,汽车行驶过程中为克服气动阻力而消耗的能量占整车能耗的 20% 左右。通常工程师会利用计算流体力学(CFD)软件来计算不同汽车外形的流场信息,识别并改进高阻力区域,如车身前端、车顶和尾部。而通常 CFD 通过外流场空气动力学模拟计算风阻需要大量的计算时间和计算资源,以一个千万级网格计算为例,完成一个设计版本的模拟使用约 2000 CPU 核*时的计算资源。

当前汽车行业车型高速迭代的趋势对整车气动阻力优化工作提出了更高的效率要求,快速提供高精度的 CFD 数值模拟结果是满足这一需求的重要途径。基于物理模型和传统数值计算方法的低阶矩湍流模型在实际工程 CFD 计算中得到了广泛的应用,但其仿真速度不足以有效支撑当前汽车外形快速概念设计和全空间气动优化的需求。

值得我们关注的是,近年来,AI 模型等相关技术在科学和工程领域的快速发展为满足这一需求注入了希望。NVIDIA 和百度飞桨团队通过 AI 的方法,基于工业级汽车空气动力学仿真数据,训练出可以秒级计算任意车型几何设计的风阻系数模型,为加速汽车设计仿真提供新的方案。

NVIDIA Modulus 助力风阻预测模型实现

近些年,利用 AI 模型预测风阻已有很多探索,但之前的模型绝大部分未考虑太多物理信息。NVIDIA Modulus正是基于物理的机器学习神经网络框架,其中集成了可以处理流体力学、传热学、结构力学等物理问题的神经网络模型、算子等。

DNNFluid-Car 正是基于 NVIDIA Modulus,其中核心模型基于几何信息神经算子(Geometry-informed neural operator, GINO)网络,通过纯数据驱动的方法实现对汽车表面压力和壁面剪切应力分布的预测,进而预测相应几何的汽车的风阻系数。GINO 网络解决了以往单纯卷积神经网络(CNN)和傅立叶神经算子(FNO)难以适应大规模汽车不规则几何外形的难题。另外,与 CNN 相比,FNO 具有全局感受野、高效性和网格无关性,这使得基于 FNO 中间层的 GINO 网络具有更好的泛化性和更高的精度、计算效率及空间分辨率。

在 DNNFluid-Car 模型开发过程中,NVIDIA 和百度一起,结合 DNNFluid-Car 模型特点,基于飞桨进行了端到端的深度加速,模型训练效果与优化前相比,训练速度提升了 10 倍,显存占用降低了 50%。事实上,基于飞桨框架适配的 Modulus,能够充分利用飞桨的高阶自动微分机制和编译优化技术,部分案例在飞桨后端的训练和推理效率已初步超越了 PyTorch 后端。

另外,作为纯数据驱动的模型,DNNFluid-Car 模型的训练数据为 CFD 数值模拟数据,该数据的生成过程包括几何生成、网格划分、数值模拟和后处理。DNNFluid-Car 针对以上内容分别进行了汽车几何生成和修复、数据下采样优化。

利用 DNNFluid-Car 模型能够实现对未知车型的表面压力预测,在 NVIDIA Tensor Core GPU 环境下,数秒内即可得到汽车表面的压力分布、风阻系数等关键信息。如果仅考虑模型推理时间,DNNFluid-Car 模型的计算速度比传统数值计算的速度快至少 2-3 个数量级,有效减少了对数以千计的 CPU 计算资源的依赖。

百度杰出架构师胡晓光表示:“DNNFluid-Car 模型充分利用了百度飞桨深度学习框架及 NVIDIA Modulus 在模型训练和模型开发等方面的便捷性与高性能的特点,为当前快速预测汽车风阻系数提供了可行的解决方案。”

持续优化 AI 精度和推理速度

当前,NVIDIA 和百度飞桨团队正在携手与高校科研和汽车工业用户共同优化现有模型。提升模型在用户实际场景下的精度和实用性要求。同时,针对模型推理与部署中计算资源需求大的问题,研发团队基于框架推理优化技术,也将进行模型剪枝、量化等相应的优化,使 DNNFluid-Car 模型能更加灵活地应用到多种部署环境中。未来,结合 NVIDIA Omniverse 数字孪生平台,可以打造交互式、实时汽车气动力学仿真应用。

准备好开始了吗?
欢迎访问 NVIDIA Modulus 页面,了解更多信息:developer.nvidia.cn/modulus