基于PINN的極少監(jiān)督數(shù)據(jù)二維非定常圓柱繞流模擬
2022年10月16日-19日,亞洲計算流體力學會議在韓國九州舉辦。會議涌現(xiàn)了不少結(jié)合人工智能技術(shù)進行流體力學模擬的論文成果,這說明人工智能技術(shù)逐漸滲透流體力學模擬領(lǐng)域。百度與西安交通大學的研究人員一起,利用飛槳框架和科學計算工具組件PaddleScience,首次實現(xiàn)了基于物理信息約束神經(jīng)元網(wǎng)絡(luò)(PINN)方法,利用極少量監(jiān)督點模擬二維非定常不可壓縮圓柱繞流,將同等條件的CFD流場求解耗時降低了3個數(shù)量級。因為會議論文在網(wǎng)上無法下載,因此附上該論文的詳細介紹(圖1為論文封面),方便感興趣的研究人員了解論文情況以及飛槳和PaddleScience的能力。
會議論文代碼下載地址:https://github.com/tianshao1992/PINNs_Cylinder。

研究背景
計算流體力學(Computational Fluid Dynamics, CFD)是研究流體力學問題的一種有效方法。CFD模擬通過在表示流體區(qū)域的網(wǎng)格上求解流體力學納維-斯托克斯方程組(一種偏微分方程)來實現(xiàn)。在過去的幾十年中,CFD模擬在模擬不同工程領(lǐng)域的流體問題方面取得了巨大進展,并已成為流體力學中的重要工具。
然而,CFD模擬存在一定的限制。當流體域和流場復(fù)雜時,網(wǎng)格生成可能是一項困難的任務(wù)。更細的網(wǎng)格可以給出更準確的結(jié)果,但它在時間和資源上的計算成本很高。通常,學者們會通過局部網(wǎng)格加密在精度和計算成本之間進行權(quán)衡[1]。然而,這會導致另一個問題,即如果在相鄰的局部網(wǎng)格塊的交界處,網(wǎng)格尺寸變化太快,則交界處網(wǎng)格的質(zhì)量可能會變差,因此即使進行了局部網(wǎng)格加密,也需要兼顧不同網(wǎng)格塊之間的網(wǎng)格尺寸過渡。此外,不同物理現(xiàn)象需要不同的網(wǎng)格尺寸。例如,在CFD-DEM模擬中,需要對網(wǎng)格進行特殊的處理來適合細小顆粒的模擬[2]。因此,如果CFD模擬不需要網(wǎng)格,則能從本質(zhì)上克服上述挑戰(zhàn)。物理信息約束的神經(jīng)元網(wǎng)絡(luò)(PINN)[3]的出現(xiàn),給無網(wǎng)格CFD模擬提供了一種可行方案。
本論文利用飛槳框架和科學計算工具組件PaddleScience,首次實現(xiàn)了基于物理信息約束神經(jīng)元網(wǎng)絡(luò)(PINN)方法,利用極少量監(jiān)督點模擬二維非定常不可壓縮圓柱繞流。通過與基于有限體積法(FVM)的CFD求解方法對比,證明PINN方法在求解精度上能夠達到FVM方法同等的精度。同時利用預(yù)先訓練好的網(wǎng)絡(luò)模型,每個時間步的結(jié)果預(yù)測只需8ms,遠遠快于FVM方法計算速度,這是因為PINN方法可以在GPU上實現(xiàn)不同時間步的并行計算。但是PINN模型的訓練較為耗時,未來需要開發(fā)更高效的算法來解決訓練耗時長的問題。
研究方法
01 二維非定常不可壓圓柱繞流問題描述
二維非定常不可壓縮圓柱繞流是一種典型的非定常不可壓縮流體現(xiàn)象,包含了流動邊界層、流動分離、逆壓梯度、粘性耗散等典型的流動現(xiàn)象,常常被用來驗證數(shù)值求解算法。在本論文中,我們也選用圓柱繞流作為驗證案例,選取的圓柱繞流幾何和邊界設(shè)置如圖2所示。
整體流動為長方形區(qū)域,左側(cè)為速度入口,右側(cè)為壓力出口,上下界面為無限遠界面(即不設(shè)置邊界條件),中間放置了一個直徑為D=1cm的圓柱。圓柱表面滿足無滑移條件,速度為0m/s。左側(cè)入口的速度為1m/s,右側(cè)的壓力為0Pa。流體的運動粘性系數(shù)為0.4cm2/s,密度為1kg/m3。根據(jù)上述參數(shù),可以確定流動的雷諾數(shù)Re=250。流動的初始時刻狀態(tài)由CFD軟件OpenFOAM進行非定常模擬結(jié)果得到,其中OpenFOAM的時間步長設(shè)置為0.5ms。這里說明下,OpenFOAM采用的是有限體積方法(FVM)去求解下列納維-斯托克斯方程組:


其中方程(1)為連續(xù)性方程, μ?代表速度矢量,▽·μ表示進出控制體的質(zhì)量差,因為本案例采用不可壓縮流動,因此進出控制體的質(zhì)量差為0;方程(2)為動量方程,ν?表示流體運動粘性系數(shù),ρ?表示流體密度,T?表示控制體上的靜壓,f?表示作用在控制體上的體積力(本案例里為0)。

02 物理信息約束神經(jīng)元網(wǎng)絡(luò)(PINN)
區(qū)別于OpenFOAM的有限體積法(FVM),物理信息約束神經(jīng)元網(wǎng)絡(luò)(PINN)利用神經(jīng)元網(wǎng)絡(luò)能逼近任意光滑函數(shù)的能力,來進行無網(wǎng)格求解納維-斯托克斯方程組。本文構(gòu)建的PINN網(wǎng)絡(luò)結(jié)構(gòu)示意圖如圖3所示。
神經(jīng)元網(wǎng)絡(luò)為一個全連接層網(wǎng)絡(luò),輸入為3個神經(jīng)元節(jié)點,分別對應(yīng)流動的時間(t)和坐標(x,y),輸出為3個神經(jīng)元節(jié)點,分別對應(yīng)流動的橫向速度(u)、縱向速度(v)和靜壓(p)。在圖3中,為了簡便表達,采用速度矢量形式(u)來展示。
為了求解納維-斯托克斯方程組,在神經(jīng)元網(wǎng)絡(luò)的損失函數(shù)項引入了物理信息約束,使得神經(jīng)元網(wǎng)絡(luò)既可以在數(shù)據(jù)層面得到訓練,也可以在物理規(guī)律層面得到訓練。具體損失函數(shù)的定義方式見下一節(jié)。
本文采用的神經(jīng)元網(wǎng)絡(luò)參數(shù)見表1。除了輸入和輸出的神經(jīng)元節(jié)點,一共有6層隱藏層,每層包含64個神經(jīng)元節(jié)點,激活函數(shù)為tanh,優(yōu)化器為Adam,初始學習率為0.001,訓練迭代步數(shù)為40萬。


03 PINN的損失函數(shù)
神經(jīng)元網(wǎng)絡(luò)的訓練過程,是通過損失函數(shù)的反向傳遞來實現(xiàn)網(wǎng)絡(luò)參數(shù)的更新。本文中,損失函數(shù)包含數(shù)據(jù)項和物理規(guī)律項:

其中, J?是神經(jīng)元網(wǎng)絡(luò)的總損失函數(shù),Jd是數(shù)據(jù)項損失函數(shù),Jp是物理規(guī)律項損失函數(shù),ω是物理規(guī)律項的權(quán)重。
當ω=0時,該神經(jīng)元網(wǎng)絡(luò)就是普通的神經(jīng)元網(wǎng)絡(luò)。通過設(shè)置ω≠0,在損失函數(shù)中引入物理規(guī)律的影響,增強神經(jīng)元網(wǎng)絡(luò)對物理規(guī)律的擬合能力。物理規(guī)律損失函數(shù)項通過神經(jīng)元網(wǎng)絡(luò)自身的微分傳遞鏈計算得到。
數(shù)據(jù)項損失函數(shù)(Jd)定義為預(yù)測數(shù)值與真實數(shù)值之間的均方差(MSE):

其中,Nd代表用來構(gòu)造數(shù)據(jù)項損失的監(jiān)督點數(shù)目,Y表示用來比較的物理量,真實數(shù)值為OpenFOAM計算結(jié)果;監(jiān)督點指已知流場物理量數(shù)值的點,值得注意的是,監(jiān)督點數(shù)目可以比OpenFOAM里的網(wǎng)格點數(shù)少。
物理項損失函數(shù)(Jp)定義為:

其中,JPDE代表了流體偏微分方程的損失函數(shù)項,這也是PINN網(wǎng)絡(luò)必不可少的一項;JBC代表了流體系統(tǒng)的邊界條件損失函數(shù)項,JIC代表了流體系統(tǒng)的初始條件損失函數(shù)項。
JPDE,JBC和JIC的定義如下:

其中,Nf是用于計算流體偏微分方程損失函數(shù)的數(shù)據(jù)點數(shù)量,NBC是用于計算流體系統(tǒng)邊界條件損失函數(shù)的數(shù)據(jù)點數(shù)量,NIC是用于計算流體系統(tǒng)初始條件損失函數(shù)的數(shù)據(jù)點數(shù)量,G代表了流體系統(tǒng)的即納維-斯托克斯方程組的隱式格式,理想的情況下G=0。
流體系統(tǒng)的總損失函數(shù)定義為:

其中,ω1,ω2,ω3,ω4?是各損失函數(shù)項的權(quán)重。區(qū)別與方程(3),方程(9)提供了一個更方便調(diào)節(jié)各損失函數(shù)項權(quán)重的定義。
本文中,ω1=ω3=ω4=10,ω2=1。
04 PINN的監(jiān)督點分布
結(jié)合之前我們已經(jīng)實現(xiàn)的基于大量監(jiān)督點的PINN方法準確求解二維度非定常圓柱繞流[4],本文我們進一步探索了監(jiān)督點數(shù)量對PINN求解的影響,因為監(jiān)督點的數(shù)目既影響模型的計算速度,也影響模型對數(shù)據(jù)的依賴性。減少監(jiān)督點數(shù)量,既可以提高模型計算速度,也可以降低模型對數(shù)據(jù)的依賴性。為此,我們設(shè)計了6種不同的監(jiān)督點分布,監(jiān)督點數(shù)量從4到68,如圖4所示。
Nd=68的監(jiān)督點分布存在兩種方式,a方案在圓柱前緣也布置一些點,b方案則所有點均在圓柱后方。Nd=34的監(jiān)督點分布存在兩種方式,a方案集中在圓柱近后方,b方案則分散在圓柱近和遠后方。Nd=16和Nd=4的監(jiān)督點分布的區(qū)別在于Nd=4僅在圓柱表面均分分布4個監(jiān)督點。

研究結(jié)果
01 PINN的訓練過程
根據(jù)表1給的參數(shù),在NVIDIA V100-32GB顯卡上進行了不同監(jiān)督點布局的模型訓練。在訓練40萬步后,各損失函數(shù)項均收斂,其中一個模型的訓練損失函數(shù)下降曲線如圖5所示。

02 PINN與FVM對比
利用訓練好的模型,我們將PINN計算的結(jié)果與OpenFOAM的FVM方法計算結(jié)果對比,如圖6和圖7所示??梢钥吹剑谒械谋O(jiān)督點布局情況下,對全流場信息(u, v, p)PINN均能取得與OpenFOAM的FVM方法接近的計算結(jié)果,兩者的絕對誤差從全流場來看也較低。對于
?的監(jiān)督點布局,PINN的計算結(jié)果也能較好的捕捉到圓柱后渦的脫落現(xiàn)象。
進一步的,圓柱表面的升力和阻力也進行了對比,見圖8。從對比結(jié)果來看,PINN可以在只需要4個監(jiān)督點的情況下,得到與OpenFOAM類似的結(jié)果。
表2對比了訓練好的PINN與OpenFOAM的FVM方法的計算耗時,可見在類似計算配置的情況下,PINN方法比OpenFOAM的FVM減少了3個數(shù)量級的計算耗時。




結(jié)果討論
通過二維非定常不可壓縮圓柱繞流這個典型案例的論證,本文的結(jié)論表明PINN方法可以應(yīng)用在求解非定常不可壓縮流體力學,可以取得接近CFD方法類似的精度,同時在計算耗時上可以提升3個數(shù)量級。
但是PINN方法也有一定的局限性,一個關(guān)鍵的限制是目前采用的PINN方法依賴于CFD模擬產(chǎn)生的監(jiān)督數(shù)據(jù)。盡管本論文的研究表明,只多4個監(jiān)督點數(shù)據(jù)就可以滿足PINN求解的需求,但是為了生成這4個監(jiān)督點的數(shù)據(jù),需要進行全流場的CFD模擬,而CFD模擬仍然面臨網(wǎng)格質(zhì)量、求解速度等問題。未來需要開發(fā)完全不依賴監(jiān)督點的PINN方法,才能克服依賴CFD模擬數(shù)據(jù)的限制。
參考文獻
[1] Teigland, R., & Eliassen, I. K. (2001). A multiblock/multilevel mesh refinement procedure for CFD computations. International journal for numerical methods in fluids, 36(5), 519-538.
[2] Volk, A., Ghia, U., & Stoltz, C. (2017). Effect of grid type and refinement method on CFD-DEM solution trend with grid size. Powder Technology, 311, 137-146.
[3] Raissi, M., Perdikaris, P., & Karniadakis, G. E. (2017). Physics informed deep learning (part i): Data-driven solutions of nonlinear partial differential equations. arXiv preprint arXiv:1711.10561.
[4]?https://aistudio.baidu.com/aistudio/projectdetail/4178470