戰(zhàn)慶亮 白春錦 葛耀君
* (大連海事大學交通運輸工程學院,遼寧大連 116026)
? (同濟大學土木工程防災(zāi)國家重點實驗室,上海 200092)
流動特征的識別是一類復(fù)雜的數(shù)學物理問題,是流體力學研究中亟待解決的難點[1].非定常流場降階模型(reduced-order model,ROM)是一種重要的研究方法,能夠?qū)嶒灮蛴嬎銟颖緮?shù)據(jù)建立提取模型,實現(xiàn)系統(tǒng)辨識[2]及流場的特征提取[3]等.
傳統(tǒng)的流場降階模型研究對象,均針對實驗或計算的快照(snapshot)開展研究,建立一系列不同時刻的樣本數(shù)據(jù)集,進行流場特征的分離與提取.然而這類方法在數(shù)據(jù)采集、特征提取和分析等方面存在著諸多困難,尤其是實驗中流場快照的獲取極為困難.例如在風洞和水洞試驗中,為了確定流場的形態(tài)需要采用顯示技術(shù)進行流場顯示,如煙流法[4]、氫氣泡法[5]等,雖然通過觀察能夠得到剪切層和卡門渦等流動現(xiàn)象[6],但是無法獲取定量的流場數(shù)據(jù).再如激光多普勒測速儀(laser doppler anemometer,LDA)[7]、PIV[8]等方法利用示蹤粒子的散射特性計算流場的速度分布,然而粒子類方法大多針對流場中固定切面進行,容積內(nèi)全場三維測量仍難實現(xiàn).
隨著計算機和大數(shù)據(jù)方法的發(fā)展,深度學習在流體力學問題的研究中得到了越來越多的應(yīng)用[9-10],如計算網(wǎng)格的生成[11]、基于神經(jīng)網(wǎng)絡(luò)模型的雷諾應(yīng)力模型[12-13]、渦激振動的流動控制[14]、尾流狀態(tài)的流動控制[15]、高精度流場預(yù)測方法[16]、流場狀態(tài)的自動識別[17]等.同時,深度學習也為流場特征識別提供了新的思路.如Murata 等[18]用深度學習方法對瞬態(tài)流場進行模態(tài)分解,得到了比傳統(tǒng)模態(tài)分解精度更高的結(jié)果.Omata和Shirayama[19]提出了基于自編碼模型的瞬態(tài)流固耦合分析方法,同樣采用數(shù)據(jù)驅(qū)動的方案得到了流場的低維表示.Fukami 等[20]提出了基于卷積神經(jīng)網(wǎng)絡(luò)的自動編碼器,進行流場的非線性自動編碼模式提取特征,同時保持不同特征的能量關(guān)系.
上述的流場特征識別研究都基于瞬態(tài)的全場流場快照開展,對多個時間序列的瞬態(tài)數(shù)據(jù)進行處理,從矩陣理論出發(fā)得到流場的模態(tài)特征.這些方法所采用的數(shù)據(jù)有著共同的不足:其空間維度的分辨率遠遠高于時間維度的分辨率.這些方法在處理復(fù)雜湍流等問題仍有很多不足[21-22],很大一部分原因是其難以實現(xiàn)更高時間分辨率的數(shù)據(jù)處理,而這恰恰是復(fù)雜湍流特征研究中的關(guān)鍵.
針對上述難點和問題,本文提出了流場特征識別的新方法:基于一點處流場物理量的時程為特征提取對象,采用基于卷積自編碼方法的深度學習模型進行時程數(shù)據(jù)的抽象特征提取,獲得降維后的原始時程的表征編碼,對編碼進行聚類分析從而得到具有不同特征狀態(tài)的流場分布規(guī)律,實現(xiàn)流場特征分析.并利用本方法進行了低雷諾數(shù)圓柱繞流流場特征的自動分類,進行基于一點時程信息的流動狀態(tài)的特征分析.
流場中不同位置處的流動特征既相關(guān)又不同,傳統(tǒng)特征工程等研究方法難以從復(fù)雜系統(tǒng)中識別并區(qū)分其中的關(guān)鍵流動特征.本文方法的整體流程如圖1 所示,通過基于流場時程自動編碼(flow time history auto encoder,FTH-AE)的方法對流場系統(tǒng)進行特征提取與降維,以流場中不同位置處測點的時程作為研究對象,提取出不同位置處時程關(guān)鍵特征的低維表征[23],并實現(xiàn)基于不同特征的流場區(qū)域識別與分類.
圖1 流場特征分析方法Fig.1 Methodology of flow feature analysis
FTH-AE 模型的具體實現(xiàn)原理如圖2 所示,模型包含輸入層、卷積編碼層、特征代碼層、卷積解碼層、輸出層和分類器共6 部分組成.輸入層輸入流場中不同位置處的時程數(shù)據(jù)x,通過編碼器進行特征提取與壓縮,得到低維空間中的特征代碼λ;特征代碼通過卷積解碼器對代碼進行還原,使得輸出與輸入的時程信號x′相同.
圖2 流場特征分析方法及FTH-AE 模型結(jié)構(gòu)示意圖Fig.2 Structure of FTH-AE model
根據(jù)FTH-AE 模型的計算原理,在訓練過程中是無監(jiān)督的訓練方式,即不需要輸入流場樣本所屬類型或者特征,因此適用于任意復(fù)雜的流動問題.進而時程分類器對低維空間中的特征代碼進行聚類(K-Means)運算,得到低維空間中樣本的分類標簽,完成輸入流場時程的特征分類.
為保證時程特征分類的準確性,FTH-AE 模型設(shè)計中要滿足以下條件(1)根據(jù)流場及其樣本特征,選擇合適的卷積編碼器結(jié)構(gòu)(2) 為保證特征代碼λ能夠準確表征輸入x的特征,編碼器與解碼器需滿足下式的變換
其中Fe表示編碼部分,Fd表示解碼部分,x為輸入的流場時程數(shù)據(jù),λ為流場時程的特征編碼.由FTHAE 模型結(jié)構(gòu)可知,其輸入與輸出數(shù)據(jù)類型是相同的,模型無監(jiān)督學習的目標是使得輸入與輸出盡量保持相同.如果模型在訓練后滿足式(1),那么模型的編碼層與解碼層中就自動提取得到了訓練數(shù)據(jù)的關(guān)鍵特征,也即整個流場域內(nèi)流場樣本的特征,并將這些特征對應(yīng)到了模型的特征代碼空間中,可以針對降維后的模型編碼進行進一步的特征分類計算.卷積層中對輸入數(shù)據(jù)的計算過程為
其中T為輸入數(shù)據(jù)的長度,l為卷積核的大小,K為當前層的卷積通道個數(shù).在計算過程中,各通道采用了“共用權(quán)值參數(shù)w”的方法,減少了模型參數(shù)個數(shù),同時共享了偏置矩陣bn.
為保證輸入數(shù)據(jù)的特征的準確表征,模型中采用全卷積形式進行數(shù)據(jù)的壓縮與還原.如果模型已成功訓練到輸出數(shù)據(jù)與輸入數(shù)據(jù)近似相等,表明高維數(shù)據(jù)已成功映射到低維特征向量λ中.
本文以低雷諾數(shù)圓柱繞流場為例驗證方法的可行性與準確性,數(shù)據(jù)采用數(shù)值模擬方法[24]獲取,計算域如圖3 所示,雷諾數(shù)ReD=200.圓柱的直徑D=1,圓心為坐標原點.計算域順流長度為44D,上、下游長度均為22D;橫向長48D,上下均為24D.圓柱周圍矩形區(qū)域內(nèi)使用較密集的非結(jié)構(gòu)化三角形網(wǎng)格,距離圓柱較遠的區(qū)域的網(wǎng)格劃分比較稀疏.左側(cè)入口邊界為速度入口,右側(cè)出口處的邊界為壓力出口,其余為對稱邊界.
圖3 整體及局部的網(wǎng)格劃分Fig.3 Global and local meshes
在圓柱繞流模擬中,圓柱壁面附近及尾流區(qū)域的流場受到干擾,流場特征豐富,適于選做研究對象.在圓柱周圍選取了7122 個測點隨機均勻分布在網(wǎng)格密集的矩形區(qū)域內(nèi),捕獲該范圍內(nèi)流場的時程數(shù)據(jù),測點分布如圖4.
圖4 測點位置示意圖Fig.4 Location of sampling points
考慮到所選測點較多覆蓋范圍較大,樣本所包含的特征各不相同.為了直觀展示樣本集中數(shù)據(jù)特征的多樣性與復(fù)雜性,在圓柱周圍的流場中隨機選取6 條流向速度時程曲線進行展示,如圖5 所示.圖中時程曲線的振幅、頻譜分布等特征均不相同,這表明流場中不同位置的時程曲線所包含的流場特征存在差異.
圖5 典型測點的流場流向速度時程Fig.5 Time history of flow field x-velocity at typical measuring points
圖5 典型測點的流場流向速度時程(續(xù))Fig.5 Time history of flow field x-velocity at typical measuring points(continued)
為了有效提取流場中不同位置的時序特征,本文的“FTH-AE”模型結(jié)合一維卷積進行時程信號的特征提取.其中“Encoder”可以對數(shù)據(jù)進行壓縮,利用一維卷積在保留數(shù)據(jù)原始特征的同時對數(shù)據(jù)進行降維,得到原始數(shù)據(jù)的低維度特征.使用“Flatten”層對降維后的數(shù)據(jù)進行拼接,再通過“Dense”層將數(shù)據(jù)輸出為所需的維度.“Decoder”可以根據(jù)壓縮后的低維度特征將數(shù)據(jù)還原成原始數(shù)據(jù),其輸入為“Encoder”的輸出再使用一維反卷積層實現(xiàn)數(shù)據(jù)的解碼還原.具體參數(shù)如表1 所示,其中“Conv”表示卷積層,Conv_T 表示反卷積層,激活函數(shù)采用ReLU 函數(shù)表示自動編碼特征分類模型參數(shù).
表1 FTH-AE 模型參數(shù)Table 1 FTH-AE model parameters
模型中所有卷積核的尺寸均為9 的偏大尺寸的卷積核,獲得較大范圍的局部時程信息,有利于模型的收斂.卷積層的卷積核個數(shù)分別為32,16 與10,經(jīng)過系列卷積變換的輸出尺寸為1000 × 10,為了保留卷積權(quán)重與時程序列之間的對應(yīng)關(guān)系,本文使用“Flatten”層附加10 層全連接層進行降維,最終將單個時程樣本壓縮為10 維空間中的一點.模型的解碼部分各參數(shù)與編碼部分相對應(yīng),順序相反.
本模型訓練采用的是無監(jiān)督訓練模式,數(shù)據(jù)集中沒有指定的標簽,且所有數(shù)據(jù)都為訓練集.采用ADAM 方法加速模型收斂,參數(shù)選為1.0×10-4.訓練的批量大小(Batch_size)為8,輸入與輸出之間的差異用MSE 損失函數(shù)(loss)來衡量,訓練次數(shù)設(shè)置為500 次.同時設(shè)置“Earlystopping”為40,即在訓練過程中若損失值在40 步內(nèi)無下降則網(wǎng)絡(luò)自動停止訓練.經(jīng)過計算得到了迭代過程中損失函數(shù)曲線如圖6所示,模型的最終損失值為1.0×10-4.
圖6 自動編碼特征分類網(wǎng)絡(luò)損失值Fig.6 Loss of FTH-AE with respect to epoches
自編碼模型結(jié)構(gòu)為無監(jiān)督學習模型沒有測試集,殘差值即為輸入數(shù)據(jù)被模型編碼與解碼前后的差異,損失值越小說明網(wǎng)絡(luò)對輸入數(shù)據(jù)特征提取得越精準.為了驗證模型的準確性,選取了6 個測點處順流速度U的原始樣本及深度學習模型的還原曲線進行比較,如圖7 所示.由圖中原始時程與模型結(jié)果比較可知,原始數(shù)據(jù)與根據(jù)低維編碼還原的時程曲線差異很小,兩條曲線幾乎重合說明模型可以準確的提取到流場中各個測點處數(shù)據(jù)的低維度特征.因此,模型的中間的特征編碼層包含了所訓練數(shù)據(jù)的降維后的特征,且可根據(jù)編碼準確還原出原始曲線的特征,因此可利用這些低維空間中的編碼進行原始曲線的特征區(qū)分與識別.
圖7 原始時程與FTH-AE 模擬的時程Fig.7 Original samples and FTH-AE result
對FTH-AE 模型所得到的低維空間中的編碼特征進行K-Means 計算,即對整個流場的低維表征進行自動分類,可以得到流場中不同特征時程的分類結(jié)果,進一步將分類結(jié)果按照流場測點的位置進行顯示,所得結(jié)果如圖8 所示.其中圖8(a)表示不考慮流場均值的特征分類結(jié)果,可見根據(jù)深度學習模型所提取的測點的特征,可以將整個流場分為3 類區(qū)域:綠色區(qū)域、藍色區(qū)域和橙色區(qū)域.圖8(b)為對應(yīng)的不考慮流場均值的模態(tài)分解結(jié)果,比較兩圖可以發(fā)現(xiàn)深度學習模型成功得到了流場的主要模態(tài),即流場的最重要的“特征”.不同的是,DMD 方法基于矩陣理論進行了特征提取與分解,而本文則直接根據(jù)流動特征進行了自動的特征提取與識別.
圖8 尾流特征識別結(jié)果Fig.8 Feature recognition of wake
為了明確流場特征分類的物理意義,闡述“深度學習究竟學習到了流場的哪種特征”,進一步對不同分類區(qū)域內(nèi)的流場測點處時程進行了舉例分析,結(jié)果列于圖9.
圖9 不同類型的時程特征分析Fig.9 Feature analysis of different class
為方便結(jié)果分析,定義綠色區(qū)域內(nèi)的流場時程為第1 類特征,藍色區(qū)域內(nèi)的流場時程為第2 類特征,橙色區(qū)域內(nèi)為第3 類特征.分別在3 類特征的測點中選擇6 個測點,測點位置見圖9(a),圖9(c)和圖9(e),對應(yīng)位置處的順流速度時程見圖9(b),圖9(d)和圖9(f).通過觀察,可以發(fā)現(xiàn)3 類時程的明顯特征差異:第1 類特征的曲線振幅都偏小,這些測點位于渦脫區(qū)域外部;第2 類曲線與第3 類曲線振幅均較大,但是相位相反,即第2 類曲線達到極大值的時刻對應(yīng)的第3 類曲線均位于極小值,這些測點均位于尾流中的對稱渦脫區(qū).由于本算例所研究的流場簡單,因此對應(yīng)特征容易通過人為觀察發(fā)現(xiàn)其中的規(guī)律,同時也可驗證本文的模型自動識別結(jié)果是準確的.
本文提出了基于時程數(shù)據(jù)的自編碼流場特征識別方法,通過對流場時程進行特征提取,得到復(fù)雜流動數(shù)據(jù)的低維表征,并對低維編碼聚類分析獲得不同特征的流場分布.作為研究算例,對低雷諾數(shù)圓柱繞流流場進行了驗證,結(jié)果表明模型能夠準確還原空間不同位置處的時程曲線,驗證了模型的準確性.進一步,對低維的模型編碼進行了聚類分析,得到具有不同特征的流場區(qū)域分布,與模態(tài)分析方法得到了一致的流動特征識別結(jié)果,同時對深度學習分類的結(jié)果進行了物理解釋.本方法從流動的時程特征角度實現(xiàn)了流動特征識別,是一種全新的流場分析方法.雖本文研究的計算算例流場特征相對較簡單,但本方法同樣適用于復(fù)雜流場特征的自動識別研究,借助深度學習強大的特征提取能力,可實現(xiàn)復(fù)雜流場的深度特征分析.