博客專欄

EEPW首頁(yè) > 博客 > 機(jī)器學(xué)習(xí)如何徹底改變游戲中的物理模擬

機(jī)器學(xué)習(xí)如何徹底改變游戲中的物理模擬

發(fā)布人:大數(shù)據(jù)文摘 時(shí)間:2021-09-20 來(lái)源:工程師 發(fā)布文章

大數(shù)據(jù)文摘授權(quán)轉(zhuǎn)載自AI科技評(píng)論

編譯:琰琰

編輯:王曄

量子力學(xué)奠基者之一、英國(guó)理論物理學(xué)家保羅·狄拉克(Paul Dirac)在1929年說(shuō)過(guò):“大部分物理和化學(xué)所需要的數(shù)學(xué)理論的定律都是已知的,但這些定律的方程太復(fù)雜無(wú)法求得精確解”。他認(rèn)為,從蛋白質(zhì)折疊、材料失效到氣候變化,所有的物理現(xiàn)象都可以模擬為量子計(jì)算。但由于控制方程太復(fù)雜,科學(xué)家無(wú)法在現(xiàn)實(shí)的時(shí)間尺度上求解。

那么,這是否意味著我們永遠(yuǎn)無(wú)法實(shí)現(xiàn)實(shí)時(shí)物理模擬?

以前物理學(xué)家通過(guò)模型開(kāi)發(fā)、求近似解等方法可以在較短時(shí)間內(nèi)達(dá)到預(yù)期的結(jié)果。然而,隨著研究、軟件和硬件技術(shù)的進(jìn)步,實(shí)時(shí)仿真只能在極限條件下才能夠?qū)崿F(xiàn),這一點(diǎn)在視頻游戲物理學(xué)中最為明顯。

模擬物理現(xiàn)象(如碰撞、變形、破裂和流體流動(dòng))屬于密集型計(jì)算。在游戲中實(shí)時(shí)模擬此類現(xiàn)象需要對(duì)不同的算法進(jìn)行了大量的簡(jiǎn)化和優(yōu)化。目前最先進(jìn)模擬方法是剛體物理學(xué)(rigid body physics),它可以確保兩個(gè)物體在碰撞和反彈的過(guò)程中不會(huì)發(fā)生變形或斷裂,這是模擬虛擬游戲的基礎(chǔ)。當(dāng)兩個(gè)物體碰撞時(shí),算法能夠進(jìn)行實(shí)時(shí)檢測(cè)并采用適當(dāng)?shù)牧δM碰撞。

如下,電子游戲中的“摧毀”可能是剛體物理學(xué)應(yīng)用的最佳示例。

微信圖片_20210920105046.gif

需要說(shuō)明的是,剛體物理學(xué)可用于模擬不變形物體的碰撞,但虛擬游戲中往往存在著大量可變形物體,比如頭發(fā)、衣服。而要想解決這個(gè)問(wèn)題就需要用到柔體動(dòng)力學(xué)(soft-body dynamics)。

以下是模擬可變形物體的四種方法(按復(fù)雜度排序)

彈簧質(zhì)量模型(Spring-Mass Model)

由命名可知,彈簧相互連接的點(diǎn)的質(zhì)量系統(tǒng)代表模型檢測(cè)的目標(biāo),我們可將其視為三維胡克定律網(wǎng)絡(luò)。胡克定律是力學(xué)彈性理論中的一條基本定律,它表明受力固體材料中的應(yīng)力與應(yīng)變(單位變形量)之間成線性關(guān)系。

該模型的主要缺點(diǎn)是建立質(zhì)量彈簧網(wǎng)絡(luò)時(shí)需要大量的人力成本,并且材料特性與模型參數(shù)之間沒(méi)有嚴(yán)密的邏輯關(guān)系。但盡管如此,該模型在“BeamNG.Drive”賽車游戲中也達(dá)到了非常不錯(cuò)的效果,如下圖,基于彈簧-質(zhì)量模型的實(shí)時(shí)車輛模擬器,可用于模擬車輛變形。

2.gif

基于位置的動(dòng)力學(xué)(Position-bsed Dynamics,PBD)

運(yùn)動(dòng)學(xué)模擬的方法通?;诹W(xué)模型,如粒子加速度遵循牛頓第二定律計(jì)算,通過(guò)積分計(jì)算獲取每個(gè)時(shí)刻的速度和位置。

在基于位置的動(dòng)力學(xué),通過(guò)求解約束方程的準(zhǔn)靜態(tài)問(wèn)題來(lái)計(jì)算位置。PBD方法的精確度較低,但計(jì)算速度優(yōu)于基于強(qiáng)制的方法,因此非常適合游戲、動(dòng)畫(huà)電影等視覺(jué)場(chǎng)景。游戲中人物的頭發(fā)、衣服的運(yùn)動(dòng)通常都是采用該模型來(lái)實(shí)現(xiàn)。PBD不僅局限于可變形固體,還可用于模擬剛體物體和流體。更多內(nèi)容可參考這篇關(guān)于PBD方法的綜述[2]。

3.png

有限元法(finite element method ,F(xiàn)EM)

有限元方法計(jì)算變形材料是基于彈性場(chǎng)理論求解應(yīng)力-應(yīng)變方程。

它本質(zhì)上遵循3D胡克定律,首先將材料劃分為四面體的有限元,通過(guò)求解線性矩陣方程,獲得每個(gè)時(shí)刻步長(zhǎng)上頂點(diǎn)上的應(yīng)力和應(yīng)變。FEM是一種基于網(wǎng)格的軟體動(dòng)力學(xué)模擬方法,它的優(yōu)點(diǎn)是精確度高,且模型參數(shù)與材料特性(如楊氏模量和泊松比)直接相關(guān)。一般而言,F(xiàn)EM模擬在工程應(yīng)用方面不能實(shí)時(shí)運(yùn)行,但最近知名半導(dǎo)體公司AMD發(fā)布多線程FEM庫(kù),表明FEMFX在游戲中可實(shí)時(shí)模擬變形材料。

圖片

AMD的實(shí)時(shí)有限元解算器FEMFX模擬木材斷裂

5.gif

AMD的FEMFX模擬塑性變形

材料點(diǎn)法(Material Point Method ,MPM)

MPM是一種高精度的無(wú)網(wǎng)格方法,它比基于網(wǎng)格的方法更適合模擬變形、斷裂、多材料系統(tǒng)和粘彈性流體,因?yàn)檫\(yùn)行效率和分辨率更高。MPM是目前最先進(jìn)的無(wú)網(wǎng)格混合歐拉/拉格朗日的方法,是細(xì)胞內(nèi)粒子(PIC)和流體隱式粒子(FLIP)等傳統(tǒng)方法的升級(jí)。

MPM模擬不是實(shí)時(shí)運(yùn)行的,在一個(gè)含有一百萬(wàn)個(gè)點(diǎn)的系統(tǒng)中,MPM每幀大約需要半分鐘。詳細(xì)內(nèi)容可見(jiàn)MPM綜述文章[3]。

6.png

一片面包的撕裂模擬需要1100萬(wàn)MPM粒子

機(jī)器學(xué)習(xí)與物理模擬

以上四種方法與機(jī)器學(xué)習(xí)有什么關(guān)系呢?

我們注意到,基于傳統(tǒng)方法,模型的計(jì)算速度、精度/分辨率等指標(biāo)已經(jīng)陷入了一種瓶頸。物理解算器經(jīng)過(guò)過(guò)去幾十年的優(yōu)化,其發(fā)生階躍式改進(jìn)的空間已所剩無(wú)幾。而在此背景下,機(jī)器學(xué)習(xí)就派上了用場(chǎng)。

最近,牛津大學(xué)[5]、Ubisoft La Forge實(shí)驗(yàn)室[6]、DeepMind公司[7,8]以及蘇黎世聯(lián)邦理工學(xué)院[9]的研究表明,深度神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)物理間的相互作用并實(shí)現(xiàn)模擬,重點(diǎn)是速度可以提高多個(gè)數(shù)量級(jí)。其過(guò)程大致為:生成數(shù)以百萬(wàn)計(jì)的模擬數(shù)據(jù)——通過(guò)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練——使用經(jīng)過(guò)訓(xùn)練的模型模擬物理解算器。

其中,生成數(shù)據(jù)和訓(xùn)練模型階段會(huì)耗費(fèi)大量時(shí)間,但經(jīng)過(guò)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型在模擬物理階段速度會(huì)非常快。例如,牛津大學(xué)的研究人員[5]開(kāi)發(fā)了一種被稱為:深度仿真器網(wǎng)絡(luò)搜索(Deep Emulator Network Search,DENSE)的方法,該方法將模擬速度提高了20億倍,并通過(guò)了10個(gè)科學(xué)案例的驗(yàn)證,包括天體物理學(xué)、氣候、聚變和高能物理學(xué)。

在游戲領(lǐng)域,Ubisoft La Forge研究團(tuán)隊(duì)開(kāi)發(fā)的模型使用簡(jiǎn)單的前饋網(wǎng)絡(luò),通過(guò)在三個(gè)時(shí)間幀中對(duì)3D網(wǎng)格對(duì)象的頂點(diǎn)位置進(jìn)行訓(xùn)練來(lái)學(xué)習(xí)預(yù)測(cè)下一幀[6]。該模型本質(zhì)上是將預(yù)測(cè)與模擬數(shù)據(jù)集中的已知位置進(jìn)行對(duì)比,并通過(guò)反向傳播來(lái)調(diào)整模型參數(shù),以最小化預(yù)測(cè)誤差。

該團(tuán)隊(duì)使用Maya的nCloth物理解算器生成模擬數(shù)據(jù),這是一種針對(duì)布料優(yōu)化的高級(jí)彈簧質(zhì)量模型。他們還實(shí)施了主成分分析(PCA),實(shí)驗(yàn)表明,僅在最重要的基礎(chǔ)上進(jìn)行訓(xùn)練,神經(jīng)網(wǎng)絡(luò)模擬物理的速度比物理解算器快5000倍。

7.png

數(shù)據(jù)驅(qū)動(dòng)下的布料和粘性材料的物理模擬

相關(guān)視頻: 

https://www.youtube.com/watch?v=yjEvV86byxg

同樣,DeepMind的團(tuán)隊(duì)近期在圖形網(wǎng)絡(luò)方面的工作也取得了驚人的成果[7]。與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的每一層節(jié)點(diǎn)相連不同,圖神經(jīng)網(wǎng)絡(luò)直接具有類似于圖的網(wǎng)絡(luò)結(jié)構(gòu)。利用圖網(wǎng)絡(luò)模型,該研究團(tuán)隊(duì)成功地模擬了各種剛性、柔性材料,如沙子、水、黏液等。

該模型預(yù)測(cè)的不是粒子的位置,而是加速度。它使用歐拉積分計(jì)算速度和位置;使用一系列物理解算器(包括PBD、SPH和MPM)生成模擬數(shù)據(jù)。由于沒(méi)有針對(duì)速度進(jìn)行特殊優(yōu)化,該模型沒(méi)有明顯快于物理解算器,但它證明了機(jī)器學(xué)習(xí)與物理可以進(jìn)行有效的結(jié)合。

8.gif

復(fù)雜物理模擬與深度學(xué)習(xí)預(yù)測(cè)之間的比較

相關(guān)視頻: 

https://www.youtube.com/watch?v=h7h9zF8OO7E

雖然該研究領(lǐng)域仍處于初級(jí)階段,但我們觀察到基于深度學(xué)習(xí)的技術(shù)進(jìn)一步增強(qiáng)了物理模擬。從量子力學(xué)、分子動(dòng)力學(xué)到微觀結(jié)構(gòu)以及經(jīng)典物理,各種規(guī)模和復(fù)雜度的物理現(xiàn)象都有很多模擬模型,我們相信,機(jī)器學(xué)習(xí)和物理學(xué)二者結(jié)合將創(chuàng)造巨大的潛在價(jià)值。

相關(guān)研究

[1] Paul Dirac, Quantum Mechanics of many-electron systems, Proc. R. Soc. Lond. A 123, 714 (1929)

[2] J. Bender et al., A Survey on Position Based Dynamics, EUROGRAPHICS (2017)

[3] Chenfanfu Jiang et al., The Material Point Method for Simulating Continuum Materials, SIGGRAPH courses (2016)

[4] J. Wolper et al., CD-MPM: Continuum Damage Material Point Methods for Dynamic Fracture Animation, ACM Trans. Graph. 38, 119 (2019)

[5] M. Kasim et al., Building high accuracy emulators for scientific simulations with deep neural architecture search, arXiv (2020)

[6] D. Holden et al., Subspace Neural Physics: Fast Data-Driven Interactive Simulation, SCA Proc. ACM SIGGRAPH (2019)

[7] A. Sanchez-Gonzalez et al., Learning to Simulate Complex Physics with Graph Networks, Proc. 37th Int. Conf. ML, PMLR, 119 (2020)

[8] T. Pfaff et al., Learning Mesh-based Simulations with Graph Networks, arXiv (2021)

[9] B. Kim et al., Deep Fluids: A Generative Network for Parameterized Fluid Simulations, Computer Graphics Forum, 38, 59 (2019)

編譯連接:

hppts://www.reddit.com/r/MachineLearning/comments/phvgzb/r_how_machine_learning_will_revolutionise_physics/

*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉