深度學習正改變物理系統模擬,速度最高提升20億倍那種
本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。
如果經常玩大型游戲的話應該會發現,游戲里的物理引擎效果越來越好了。
比如育碧公司的新游戲《極限國度》中自行車濺起的泥點、受到滑板沖擊改變的雪道和飛濺的雪花、隨著角色姿勢不斷變化的衣服褶皺等逼真細節,都讓玩家更能感到身臨其境。
但這里面有一個問題越來越突顯:
玩家對游戲畫面的要求永遠在提高,物理解算器的發展卻遇到了瓶頸,從算法上可以優化的余地已經不多了,以后還有什么辦法能加速物理模擬?
育碧公司其實已經找到辦法了,用AI。
育碧的AI研發部門La Forge早在2017年就已成立,在AI技術應用于游戲開發中已經做出不少成果。
他們用強化學習優化游戲NPC的尋路行為,用GAN生成豐富的NPC臉型(知道《看門狗軍團》號稱有900萬個可招募NPC怎么來的了吧)。
對了,La Forge還開發了一個AI能快速尋找代碼中的Bug(但Bug還是很多啊)。
在物理模擬上,他們把要模擬的物體在前3幀的位置作為輸入,喂給神經網絡來預測下一幀,還用主成分分析法(PCA)簡化計算,最終把不同類型物理模擬的速度提高了300-5000倍。

雖然還沒聽說有在哪款游戲里大規模實際應用上,但光憑這個數據就足以讓人期待了。
尤其是那些經歷過打開模擬頭發運動的“海飛絲特效”游戲就變卡的玩家。

畢竟小孩子才做選擇,大人畫質和幀數全都要。
預測代替計算
游戲與電影最大的不同就是有玩家的參與。
電影可以在制作時使用大規模機群消耗大量時間渲染好固定的畫面。
但游戲要根據玩家的操作實時計算并反饋結果,還只能靠玩家自己的機器的計算能力。
育碧團隊的神經網絡用預測代替了密集的計算,訓練好后只需要很少的資源就能快速給出結果。

在布料模擬中,只消耗了不到10mb的內存和顯存,每秒可以給出2000多幀。
但是神經網絡的訓練不是需要很長時間嗎?
沒錯,除了訓練過程消耗時間,生成訓練所需的大量數據要消耗更多時間。
不過這些都是一次性的工作,可以在游戲開發階段由游戲公司的計算資源完成。
也就是把計算的重擔從運行時(Runtime)玩家自己的機器轉移到了訓練服務器上。
對于游戲角色的動作,用物理解算器給出精準數據的速度只能達到每秒3幀,而神經網絡的預測卻可以做到每秒2000多幀。
看這拳擊動作,有點《刺客信條》那味了。
除了游戲公司育碧,DeepMind也對用神經網絡做物理模擬感興趣。
他們用的是圖神經網絡,而且預測的不是物體的位置而是加速度,再用歐拉積分計算出相應的速度和位置。

通過這個模型,DeepMind成功模擬了水、沙子和黏稠物的運動。
不過可惜的是這項研究更注重展示深度學習方法能做什么,在預測速度上和傳統解算方法相比沒有太大優勢。
獲諾獎的復雜系統也需要模擬
無論是計算還是預測的方法,既然都把物體的運動過程模擬出來了,除了做游戲和影視特效以外是不是還能有點別的用處?
沒錯,物理模擬算法同時也是科學研究的有力工具。
尤其是像今年的諾貝爾物理獎頒給了氣候和材料學領域的復雜系統,以及高能物理、天體物理學這些領域。
它們研究的對象要么特別宏觀要么特別微觀,還有的需要等很長時間才能觀察到一次,想拿實物去做實驗會遇到很多困難。
為此,牛津大學開發了一套Deep Emulator Network Search(DENSE)系統,在10個科學研究場景中把物理模擬速度最高提高到20億倍。
你沒看錯,是20億倍。
原來在此之前,科研模擬中主流的做法還是用隨機森林和高斯過程等傳統機器學習方法來構建模型。
這些方法首先需要的數據量就非常龐大,還要人工去提取特征。
在很多科學領域數據并不像圖像識別或NLP里那么好獲得,所以用機器學習來做科研模擬這事進展一直緩慢。
牛津大學為了在數據有限的情況下搞模擬,首先想到的就是用卷積來自動提取數據特征。
不過從微觀粒子到氣候變化再到天體運行,數據類型不同適合的網絡結構也大不相同。
他們最終設計出了一套神經網絡超架構,相當于一個模版,在訓練時同時進行更新網絡的權重和搜索出適合特定問題的結構。
△CNN超架構
在實驗中選取了10個科學模擬領域,其中就包括這次獲得諾貝爾物理獎的氣候模擬:
1、高能物理學中的彈性X射線湯姆遜散射(XRTS)
2、實驗室天體物理學中的光學湯姆遜散射(OTS)
3、聚變能科學中的托卡馬克邊緣局域模診斷(ELMs)
4、等離子體中的3倍射線發射光譜(XES)
5、天體物理學中的星系暈中心分布建模
6、沙茨基上升海洋高原地震層析成像(SeisTomo)
7、氣候科學中使用大氣環流模型(GCM)的全球氣溶膠氣候建模
8、生物地球化學中的海洋中上層化學計量建模(MOPS)
9、中子成像(ICF JAG)
10、慣性約束聚變實驗中的標量測量(ICF JAG Scalars)
最終的結果,比傳統物理解算的方法速度提高了10萬-20億倍不等。

與手工設計的神經網絡相比,搜索出來的網絡結構收斂速度也都有所提高。

這么厲害的方法,也不是沒有缺點。
牛津大學認為DENSE目前最大的兩個局限是不適用于多維數據輸入,以及在輸出可變性高的區域學習效果不好,不過也算是為很多需要快速計算的研究領域提供了新的解決方案。
這次獲諾貝爾物理獎的三位科學家的主要研究發表于上世紀60至80年代,那時候的計算機速度要比現在慢上太多,算法也都是直接解算為主。
即便如此他們也都在各自領域做出了突破性的成果。
現在有了AI物理模擬的幫助,希望更多的研究成果能不斷涌現出來。
育碧論文:https://dl.acm.org/doi/10.1145/3309486.3340245
視頻演示:https://www.youtube.com/watch?v=yjEvV86byxg
DeepMind論文:https://arxiv.org/abs/2002.09405
視頻演示:https://www.youtube.com/watch?v=h7h9zF8OO7E
牛津論文:
https://arxiv.org/abs/2001.08055