牛津大学的一项研究表明,与传统的物理求解器相比,机器学习模型可以将物理模拟的速度提高多达20亿倍。离成功又近了一步。1929年,英国著名量子物理学家保罗狄拉克曾说:“大部分物理学和整个化学的数学理论所需要的物理基本定律是完全已知的,困难的只是这些定律的精确应用导致了方程太大,复杂且无法求解”。狄拉克相信所有的物理现象都可以模拟到量子,从蛋白质折叠到材料失效和气候变化。唯一的问题是控制方程过于复杂,无法在现实的时间尺度上求解。这是否意味着我们永远无法实现实时物理模拟?随着研究、软件和硬件技术的进步,在经典极限下进行实时模拟已经成为可能,这在视频游戏的物理模拟中最为明显。碰撞、变形、断裂和流体流动等物理现象需要大量计算,但已经开发出可以在游戏中实时模拟此类现象的模型。当然,要实现这个目标,需要对不同的算法进行大量的简化和优化。最快的方法之一是刚体物理。这假设大多数游戏中的物理模型都基于可以碰撞和弹跳而不变形的对象。对象由围绕对象的凸碰撞框表示。当两个物体发生碰撞时,系统会实时检测到碰撞并施加适当的力来模拟碰撞。此类表示不会发生变形或破损。视频游戏“Teardown”可能是刚体物理学的巅峰之作。然而,刚体物理学虽然适用于模拟不可变形的碰撞,但不适用于头发和衣服等可变形材料。在这些场景中,需要应用软体动力学。以下是模拟可变形物体的4种方法(按复杂程度排序):弹簧质量模型顾名思义,此类物体由通过弹簧相互连接的质点系统表示。将其视为3D设置中的1D胡克定律网络。该模型的主要缺点是在建立质量-弹簧网络时需要大量的手工工作,并且材料属性与模型参数之间没有严格的关系。尽管如此,该模型在“BeamNG.Drive”中得到了很好的实现,这是一种基于弹簧质量模型来模拟车辆变形的实时车辆模拟器。基于位置的动力学(PBD):一种更适合软体变形模拟运动学的方法通常是基于力的模型。在基于位置的动力学中,通过求解涉及一组约束方程的准静态问题来直接计算位置。的。PBD速度更快,非常适合游戏、动画电影和视觉效果中的应用程序。游戏中头发和衣服的运动一般都是用这个模型来模拟的。PBD不仅限于可变形固体,还可以用于模拟刚体系统和流体。Nvidia的Flex引擎基于PBD方法。对象表示为由物理约束连接的粒子集合有限元法(FEM):非实时、高精度该方法基于弹性场理论,用于应力-应变方程的数值解。它本质上解决了3D中的3D胡克定律。将材料分成有限元,通常是四面体,通过求解线性矩阵方程计算每个时间步长顶点处的应力和应变。FEM是一种基于网格的软体动力学仿真方法。它非常准确,模型参数与杨氏模量和泊松比等材料特性直接相关。实际工程应用的FEM模拟通常不是实时的,但最近,AMD发布了一个名为FEMFX的游戏多线程FEM库,可以实时模拟材料变形。质点法(MPM):高精度、慢速MPM是一种高精度的无网格方法,比基于网格的方法更适合模拟大尺度变形、裂纹、多材料复合系统和粘性流体,提高仿真效率和精度。MPM是目前最先进的无网格混合欧拉/拉格朗日方法,MPM模拟不是实时的,对于涉及多达100万个点的系统,最先进的模拟每次大约需要半分钟框架。AI辅助模拟1100万MPM粒子撕裂一片面包,物理模拟速度提升20亿倍。在仿真计算中,总是需要在计算速度和精度之间进行权衡。由于物理求解器在过去几十年中得到了极大的优化,因此几乎没有增量改进的空间。这就是机器学习发挥作用的地方。牛津大学、育碧、DeepMind和苏黎世联邦理工学院的最新研究表明,深度神经网络可以学习物理交互并以更快的速度模拟它们多个数量级。这种改进是通过生成数百万模拟数据、训练神经网络并使用训练模型模拟物理求解器来实现的。尽管离线过程需要花费大量时间来生成数据和训练模型,但经过训练的神经网络在模拟物理模型时要快得多。牛津大学的研究人员开发了一种称为深度仿真器网络搜索(DENSE)的方法,可将模拟速度提高多达20亿倍,他们在10个科学案例研究中证明了这一点,包括天体物理学、气候、聚变和高温能量物理学。在游戏方面,UbisoftLaForge的团队使用了一个简单的前馈网络,该网络在三个后续时间帧上训练3D网格对象的顶点位置,并学习预测下一帧。该模型本质上是将预测与模拟数据集中的已知位置进行比较,并使用反向传播来调整模型参数,以最大限度地减少预测中的错误。该团队使用Maya的nCloth物理求解器生成模拟数据,这是一种针对布料优化的高级弹簧质量模型。他们还实施了主成分分析(PCA)以仅在最重要的基础上进行训练。因此,神经网络模拟物理的速度比物理求解器快5,000倍。布料和柔性材料的快速数据驱动物理模拟视频:https://www.youtube.com/watch?v=yjEvV86byxgDeepMind团队最近的另一项工作在图网络上取得了惊人的成果。与传统的神经网络不同,图神经网络具有类似图的结构。该团队使用图形网络来模拟各种材料,包括沙子、水、粘性物质和刚性固体。该模型不是预测粒子的位置,而是预测加速度,并使用欧拉积分来计算速度和位置。模拟数据是使用一系列物理求解器生成的,包括PBD、SPH(平滑粒子流体力学)和MPM。它并不比物理求解器快多少,因为它针对速度进行了优化,但它展示了当机器学习遇到物理时可以实现的目标。复杂物理的真实世界模拟与深度学习预测的对比视频:https://www.youtube.com/watch?v=h7h9zF8OO7E目前,这个领域还处于起步阶段,但未来一定会发现基于机器的学习新技术。从量子力学和分子动力学到微观结构和经典物理学,有许多模型可以模拟各种规模和复杂性的物理现象。机器学习和物理学创造价值的潜在机会无疑是巨大的。
