一種優化CFD網格的深度強化學習框架-MeshDQN



1.背景介紹

計算流體動力學(Computational Fluid Dynamics,CFD)中的網格生成是實現穩定、準確模擬的關鍵步驟。然而,網格生成和自適應仍然是CFD工作流程中一個重要瓶頸。自適應網格劃分技術允許網格自動更新,為當前問題提供準確的解決方案。現有的經典自適應網格劃分技術要么需要求解器之外的附加計算,要么需要許多次的CFD模擬計算。當前基于機器學習技術的網格生成和優化技術通常需要大量的計算成本來生成訓練數據,并且在范圍上受限于訓練數據流機制。為了解決上述問題,卡內基梅隆研究團隊開發了一個基于圖神經網絡的通用深度強化學習(Deep Reinforcement Learning,DRL)框架,以不斷迭代的方式來優化CFD的網格。該框架通過粗化CFD網格減小CFD模擬計算量的同時保持CFD模擬的計算精度。


2.方法方案

本文提出的用于CFD網格優化的深度學習框架是一種強化學習框架,在該框架中,智能體通過動作與環境交互。當智能體進入狀態s后,選擇動作a,并導致新的狀態s’。此外,每次行動后都會給予獎勵r。學習的目標是找到一個行動選擇策略,使獎勵最大化。度量智能體的狀態-動作質量并學習Q函數的一種方法稱為Q學習。Q函數的定義如下式所示。因此本研究開發的通用深度強化學習網絡被稱為深度Q網絡(Mesh Deep Q Network,MeshDQN)。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖1

MeshDQN的具體框架如圖1所示。該框架僅需要一次傳統的CFD模擬,即可實現對網格文件的優化,當CFD模擬計算完成后,從模擬的結果數據中提取壓力、速度、網格的坐標和邊等數據。然后,將這些數據傳遞到屬性計算模塊中,以第t個迭代步驟為例,這一環節里計算如阻力或升力等屬性指標并據此計算出獎勵值rt。然后將獎勵值rt和狀態變量st輸入到圖神經網絡,圖神經網絡做出判斷并去除網格中的某個節點(如圖1中的紅色節點)并對剩余的網格節點進行局部平滑。將原來的速度、壓力等數據插值到新的網格階段得到新的狀態st+1。最后將新狀態下的速度、壓力、網格的坐標和邊等數據傳送到屬性計算模塊實現下一步的迭代計算。經過多次計算迭代即可實現對CFD網格文件的優化。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖2

圖1每一步都是從將當前狀態st轉換為上述圖示開始的。狀態和獎勵rt傳遞到DQN中,通過動作at選擇一個頂點,然后移除選擇的頂點,使用局部平均法對網格進行平滑處理,直到收斂,將速度和壓力插值到新的網格中,創建下一個狀態st+1。使用新的速度和壓力來計算目標屬性,其中計算出獎勵rt+1。這個工作流程創建了雙DQN訓練所需的元組(st, at, st+1, rt+1)。[1]

CFD模擬生成的網格數據可以用一張由節點和邊組成的圖結構來表示,因此MeshDQN框架中采用圖神經網絡,其具體結構如圖2所示。該網絡的主體結構由多層GraphSAGE層和GCN層構成。其中GraphSAGE層主要用于對節點的編碼、GCN層主要用于對節點的分類。各層之間通過Top-K池化層操作后進行數據傳輸。GraphSAGE層和GCN層的輸出均經過最大池化和平均池化層之后拼接得到一個特征表示向量,將各層輸出的特征表示向量相加之后輸入到由全連接層構成的神經網絡分類器中得到最終的輸出結果。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖3

圖2 MeshDQN中的深Q網絡。[1]


3.討論

如圖3所示,MeshDQN能夠改進所選翼型,保持YS930翼型移除的44個頂點的阻力的目標屬性的準確性。在使用Delaunay三角測量和平滑生成網格后仍能保持這種精度。在每個頂點移除后,阻力也大致保持不變,這表明MeshDQN在每一步都選擇了保持阻力的頂點。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖4

圖3阻力結果。計算的阻力的軌跡用紅色表示,在每個頂點移除后都會運行完整的模擬。在移除5%的頂點后,阻力會保持不變。[1]

升力結果如圖4所示。由該圖可知,在移除5%的頂點后,升力保持得相當好。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖5

圖4 升力結果。計算出的升力軌跡用紅色表示,在每個頂點移除后運行完整的模擬。[1]

插值是MeshDQN快速估算目標屬性值的關鍵,對于精確的網格改進軌跡至關重要。圖5比較了阻力和升力的計算結果和插值結果。綠色軌跡是每個頂點移除后的插值結果,紅色軌跡是通過完整數值模擬得到的計算結果。在上圖中,我們看到插值結果和計算結果彼此相關性很好,通常顯示在同一位置的上下移動。然而移動的幅度不同。在下圖中,對于訓練中未使用的升力,插值結果和計算結果之間幾乎沒有相關性。

一種優化CFD網格的深度強化學習框架-MeshDQN的圖6

圖5阻力和升力的計算結果(紅色)和插值結果(綠色) 比較。[1]


綜上所述,MeshDQN成功地獲得了精細網格,并且選擇性地去除了頂點,同時保持了非結構化網格的二維粘性層流的目標屬性精度。MeshDQN能夠改善多個翼型的網格,同時不對求解器方案,網格類型,流態或尺寸做出任何假設。雖然此框架已經在給定的任務中取得了成功,但提高插值精確度至關重要,是當前精確度的瓶頸。




4.參考文獻

[1] Cooper Lorsung & Amir Barati Farimani. Mesh deep Q network: A deep reinforcement learning framework for improving meshes in computational fluid dynamics [J]. AIP Advances 13, 015026 (2023).


更多精彩,敬請期待

文章來源:晟視科創

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

1
1