江守燕 萬 晨 孫立國 杜成斌
(河海大學力學與材料學院,南京 211100)
無損檢測技術于20 世紀50~ 60 年代開始得到廣泛應用,在無損檢測的初級階段,其技術和任務都較為簡單,在技術手段上可選擇的并不豐富,主要采用超聲、射線等技術;在任務上主要是檢測結構或試件是否存在缺陷或者異常,其基本任務是在不破壞結構或試件本身的情況下發現其中的缺陷,以滿足工程需要.隨著各方面技術的發展,人們越來越關注缺陷的位置、尺寸和形狀,結構的無損檢測技術需由定性階段向定量階段發展和提高[1].
智能優化算法與計算力學方法相結合已廣泛應用于缺陷檢測的定量反演問題中[2-12].文獻[2-4]將擴展有限元法與遺傳算法相結合進行缺陷反演,但傳統的遺傳算法在目標函數最小化迭代過程中效率低下并且容易陷入局部最優解;Nanthakumar 等[5]將擴展有限元法與多層坐標搜索方法相結合,用于檢測壓電材料中的缺陷;江守燕和杜成斌[6]將擴展有限元法與人工蜂群算法相結合進行結構內部孔洞狀和裂紋狀缺陷的反演;這些研究主要用于檢測單個缺陷.Sun 等[7]提出了一種基于擴展有限元法和改進的人工蜂群算法的結構多缺陷檢測與量化新算法,后來,Sun 等[8]進一步提出了一種新的多尺度算法來檢測結構中的多個缺陷,該方法在收斂速度上有了顯著地提高;為了研究建模誤差和測量噪聲對檢測結果的影響,Yan 等[9]提出了一種貝葉斯方法,可以有效地識別缺陷的數量,并量化每個缺陷的參數不確定性;王佳萍等[10-11]將擴展有限元法與遺傳算法和改進人工蜂群算法相結合進行結構內部多缺陷反演.最近,Zhao 等[12]和Ma 等[13]將擴展有限元法與蜂群和魚群算法相結合,通過引入聚類算法,顯著提高了反演分析的收斂性.然而,在這些研究中測量的響應被認為是靜態響應,即位移和應變.在實際無損檢測中,安裝在結構上的一組傳感器很難記錄靜態響應數據,實際操作性也困難.
相比之下,在實際問題中,傳感器較易測得結構的動態響應.文獻[14-17]為了檢測結構的內部缺陷,基于結構的動態響應構造了目標函數;在時域中使用計算力學方法來解決正問題的方法已用于非均勻介質中的缺陷檢測[14]以及壓電結構[15],動態載荷已被證明對裂紋檢測問題更有效[16].Du 等[18]最近的一項研究提出了一種基于時域動力擴展有限元法和改進的人工蜂群算法的多缺陷檢測新策略;Ma 等[19]開發了動態可變節點擴展有限元法,采用三步算法檢測多個復雜缺陷簇.雖然動態變節點擴展有限元法[19-20]大大減輕了正分析的計算工作量,但動力分析的時間需求仍然大大超過靜力分析,特別是在目標函數極小化迭代過程中計算工作量巨大,甚至難以迭代收斂.
為了降低計算成本,將計算力學方法和機器(深度) 學習相結合是一種行之有效的途徑,機器(深度)學習是人工智能和模式識別的一個快速發展的分支學科,其理論和方法已廣泛應用于解決工程和應用科學中的復雜問題[21-22].此外,超聲波檢測技術是結構無損檢測最重要的手段之一,已廣泛應用于各種工程領域[23-25],傳統的超聲波檢測技術主要通過對回波信號的分析定性地反映缺陷的存在[26],難以準確定量缺陷,且強信號中的反映結構微缺陷的信號成分較難提取[27].基于神經網絡模型的缺陷識別算法可有效提取結構中反映缺陷的信號成分[28],進而識別缺陷,但由于基于試驗的數據樣本有限,限制了缺陷識別正確率和精度的進一步提高.
本文提出一種將深度學習與比例邊界有限元法(scaled boundary finite element methods,SBFEM)相結合的裂紋狀多缺陷無損檢測方法,SBFEM僅需對結構邊界離散可最小化網格重劃分過程[29],大大提高了計算效率,用于解決與深度學習所需的大量輸入數據相關的問題.首先,在結構內部隨機地生成大量的模擬缺陷數據;其次,針對每個有效缺陷數據,采用SBFEM 模擬Lamb 波在結構內的傳播過程,SBFEM 分析結果生成的數據用于深度學習的訓練;最后,利用訓練后的深度學習模型,根據實測的結構動響應定量識別缺陷的位置和大小.建議的方法避免了傳統反分析問題的目標函數極小化迭代過程,為結構的無損檢測提供了一條新的有效途徑.
SBFEM 是一種半解析的數值方法,它的半解析性為斷裂問題的分析提供了很大的優勢,裂尖局部無需網格細化,也無需引入解析的改進函數,裂尖的應力奇異性在求解過程中能被解析地表征[29].對于有限域問題,SBFEM 和有限元法類似,先將S 域離散成一個或者多個S 單元,然后按照順序將各個S 單元組裝起來,進而求解方程的基本未知量.如圖1所示為SBFE 的S 域以及S 單元的示意圖,圖1(a)為含有裂紋的任意多邊形S 域,模型將S 域劃分為4 個多邊形S 單元,其中S 單元1 包含裂紋信息(即裂紋S 單元),裂紋S 單元的構造如圖1(b)所示.

圖1 比例邊界有限元S 域和S 單元示意圖Fig.1 Schematic diagram of S-domain and S-element in SBFEM
在比例邊界坐標系 ( ξ,η) 中,ξ 為徑向坐標,η 為環向坐標.在比例中心O點處,徑向坐標 ξ =0,環向坐標 η 沿著邊界,且在邊界上 η =1 .S 單元中的任意一點在笛卡爾坐標系下的坐標 (x,y) 可由 ξ 和 η 表示為

式中,N(η) 為形函數矩陣,與有限元中的形函數類似,但只與環向坐標 η 有關;xs和ys分別為S 單元結點x方向和y方向坐標向量.SBFEM 位移模式可以表示為

式中,u(ξ) 是沿徑向的位移,由N個解析函數組成.
由SBFEM 的位移模式式(2)并假定計算域為線彈性各向同性材料,根據虛功原理,不計阻尼,可推導出動力問題的SBFEM 控制方程為

式中,M為整體質量矩陣,K為整體勁度矩陣,F(t)為整體荷載向量.上述方程形式上與有限元法完全一致,但M,K和F(t) 的組裝方式與SBFEM 動力剛度矩陣有關,與有限元法不同.采用動力剛度矩陣S(ω,ξ)表示的SBFE 方程為[30]

式(4)是關于 ξ 的解析方程,系數矩陣E0,E1和E2與ξ無關,僅與子域幾何形狀和材料參數有關,M0類似有限元法中的質量矩陣,它們的表達式參見文獻[31],可采用連分式法[31]求解SBFEM 的動力剛度矩陣.
Lamb 波又稱板波,其物理實質是薄板對聲波波長的選擇特性和多頻率縱橫波的合成特性,通常是指在自由邊界固體板中的彈性波,當板的厚度與波長處于同一數量級時板中的縱波和橫波發生耦合,在固體介質中形成一種特殊形式的彈性應力波.這種彈性應力波必須要滿足板的兩個表面邊界條件,在板的兩表面和中部都有質點的振動,聲場遍及整個板的厚度.薄板兩表面的質點振動是縱波和橫波成分之和,運動軌跡為橢圓形,長軸與短軸的比例取決于材料的性質.Lamb 波在板中傳播時,即有振動方向與板面垂直的橫波,又有振動方向與板面平行的縱波,縱橫波的合成波質點的振動與板共振,并以特定的頻率振動并獲得最大能量的傳輸.
Lamb 波在傳播中會出現多個模態,這些模態可以根據板中質點振動的相位關系分為對稱模態Si和反對稱模態Ai兩類.在各向同性的板中,縱波和橫波的速度可根據拉梅常量計算.自由邊界條件時,對稱模態下波的頻率特征方程為

反對稱模態下為

式中,k為波數,h為板厚,cL為縱波波速,cT為橫波波速,ω 為圓頻率.
深度學習是一種表示學習[32-33],能夠學到數據更高層次的抽象表示,自動地從數據中提取特征[34].
卷積神經網絡(convolutional neural network,CNN)是一種具有局部連接、權重共享等特性的深層前饋神經網絡.CNN 被廣泛應用于分類和回歸問題的研究,其中一維CNN 在時間序列、電信號以及音頻信號等領域的分析有著出色的表現,故深度學習反演模型將采用一維CNN.CNN 的基本結構由輸入層、卷積層、池化層、全連接層及輸出層構成[35].


池化層主要作用是進行特征選擇,降低特征數量,從而減少參數數量,同時提高所提取特征的魯棒性.卷積層雖然可以顯著減少網絡中連接的數量,但特征映射組中的神經元個數并沒有顯著減少,很容易出現過擬合.為了解決這個問題,可以在卷積層之后加上一個池化層,從而降低特征維數,避免過擬合.常用的池化函數有兩種,最大池化和平均池化,最大池化變換函數如下所示

全連接層的每一個結點都與上一層的所有結點相連,用來把前邊提取到的特征綜合起來.全連接層一般負責分類或者回歸.
輸出層通常使用Sigmoid 函數,Sigmoid 函數的梯度平滑,且輸出值在0~ 1 之間,其函數表達式如下所示

缺陷反演的流程圖如圖2 所示,首先通過SBFEM 模擬Lamb 波在含有缺陷薄板中的傳播過程,將觀測點的動力響應作為深度學習神經網絡模型的輸入,缺陷信息作為模型的輸出,訓練神經網絡,最后使用訓練好的網絡識別薄板內部未知缺陷.

圖2 缺陷識別流程圖Fig.2 Flow chart of defect identification
論文結合SBFEM 數值模擬和深度學習算法,提出一種基于一維卷積神經網絡的缺陷識別模型,相對于結合普通的機器學習模型,該模型有以下的優點:(1)采用多個卷積層,能夠更好地學習到訓練數據的深層特征,有利于提高模型的泛化能力.(2)采用最大池化,降低訓練的計算量,提高收斂速度.(3)采用dropout,以一定的概率,隨機將某些神經元進行失效處理,降低網絡過擬合的風險,能夠提高整個網絡的魯棒性.(4)模型采用的一維卷積神經網絡可以直接接受原始信號的輸入,不需要對原始數據進行過多的前處理.基于Python 語言自主研制了相應的程序,具體的深度學習網絡結構如圖3 所示.先通過3 對卷積層和池化層學習輸入數據的深層特征,然后通過一個拉直層,將數據轉化為一維矩陣,最后通過兩個全連接層得到輸出.

圖3 深度學習網絡結構圖Fig.3 Deep learning network structure chart
搭建的卷積神經網絡模型結構參數如表1 所示,網絡的結構對計算結果具有一定影響,同時神經網絡的一些相關超參數也會影響到計算結果,這里的結構參數是通過對模型的相關參數進行研究并考察驗證集和測試集的準確率得出的優化組合.

表1 搭建的卷積神經網絡模型參數Table 1 Parameters of convolution neural network model
雖然設定最大迭代次數為24,但模型引入了early-stopping 機制,當模型的損失函數在一定步數內不再顯著變化時即停止模型訓練,用于防止深度學習的過擬合現象.
植物措施包括:栽植側柏1 776株,栽植爬山虎576株,種草3.63 hm2,自然恢復植被面2.3 hm2。
在本算例中,待研究的對象為二維均質薄板,板長L=180 mm ,板厚H=2 mm,其幾何尺寸如圖4(a)所示.板的邊界為自由邊界,板的材料參數:彈性模量E=200 GPa ,泊松比ν =0.3 ,質量密度ρ=7850 kg/m3.板的上表面處存在一單向開口裂紋,裂紋的位置和大小通過3 個參數確定,即:裂紋尖端坐標xc、裂紋的半開裂角 α、裂紋垂直向深度d.在板的最左端施加均勻分布的對稱荷載F(t) 激發Lamb 波,F(t)的表達式為

圖4 單缺陷板幾何尺寸及SBFEM 邊界離散Fig.4 Geometric dimension of single cracked plate and boundary discretization of SBFEM

式中,μ =6 μs,σ =2 μs,f=0.6 MHz .固定的信號觀測點P設置在板的下表面距離左邊界xP=90 mm 處,觀測點的位置對反演結果影響較小,因此,對于實際問題可根據現場實際情況、傳感器布置的方便性等影響因素選取合適的觀測點.
數值計算時,采用Gauss-Lobatto-Legendre 積分的高階單元,板邊界被離散成889 個結點,25 個子域,8984 個自由度,部分離散單元如圖4(b)所示.連分式展開階數取5,數值計算的總時間t為90 μs,每個時間步 Δt為0.03 μs.
建立缺陷預測模型時,將觀測點P的動位移作為神經網絡的輸入,對應的缺陷參數 (xc,α,d) 作為輸出.訓練過程中,暫用2000 組數據作為深度學習模型的訓練集,從訓練集中隨機劃分10%的數據對作為神經網絡的驗證集,根據驗證集準確率確定網絡模型參數后使用10 組待反演數據作為測試集.2000組訓練數據的生成過程包括:(1)在待檢測薄板域內隨機生成2000 組缺陷信息,即參數 (xc,α,d),本算例中xc∈(0 mm,180 mm),d∈(0 mm,1 mm),α ∈(0°,5°) ;(2)對于每組缺陷參數,在板的最左端施加式(12)給出的均勻分布的對稱荷載F(t) 激發Lamb波,采用SBFEM 計算觀測點xP的豎向動位移響應y(t) .每組缺陷參數與觀測點的動位移響應y(t) 構成一組訓練數據.
訓練結束后,將實測的觀測點處的動位移響應y(t)作為網絡模型的輸入,本算例中的實測響應通過SBFEM 數值計算獲取(圖5),在深度學習模型中進行一次正向傳播,得出相應的缺陷參數的預測值,該預測值就是薄板內未知缺陷的反演值.值得指出的是文中用于預測的缺陷信息都沒有用于訓練過程.圖6 給出了網絡的精度和損失函數隨訓練過程的變化曲線,從圖中可以看出,訓練集和驗證集經過約10 代訓練后,網絡模型的精度基本趨于穩定,且經過若干代訓練以后,訓練集和驗證集的損失函數亦迅速下降.

圖5 實測的觀測點動位移響應Fig.5 Measured dynamic displacement responses of observation point

圖6 網絡的精度和損失函數隨訓練過程變化曲線Fig.6 Accuracy and loss function varies as epoch increases
在實際的反演過程中,由于神經網絡初始化的隨機性,比如dropout 層的隨機性等,以及GPU 計算產生的隨機性,會導致每次反演的結果不同,為了解決隨機性對反演結果的影響,反演過程將獨立運行1000 次,然后運用統計學方法來獲得缺陷的反演值,測試集中10 組數據的反演結果如圖7 所示,其中某一次反演結果直方圖及正態分布擬合曲線如圖8 所示,橫坐標表示的是參數的反演值,縱坐標表示1000 次反演結果在一定范圍內的次數,同時對這1000 次反演的結果進行正態分布擬合,并繪制正態分布擬合曲線,圖8 中的實線就是正態分布擬合曲線,以正態分布擬合曲線的期望值 μ 作為反演的結果,該次缺陷參數的最終反演結果如表2 所示.

表2 單開口裂紋的反演結果和誤差Table 2 Inversion results and errors of single crack

圖7 測試集反演結果圖Fig.7 Inversion results of test sets

圖8 單裂紋1000 次反演結果正態分布擬合圖Fig.8 Fitting diagram of normal distribution of 1000 inversion results of single crack
為探究模型對裂紋尺度的反演能力,尤其是對淺表裂紋的反演能力,將待反演的裂紋深度比δ=d/H設置為:0.01,0.02,0.03,0.04,0.05,0.1,0.2,0.3,0.4 和0.5 共10 個不同水平.待反演裂紋位置仍為距離板左端90 mm 處,裂紋半開裂角為2.5°.不同深度反演裂紋的結果如圖9 所示,從圖中可看出,反演深度比 δ <0.05 時,裂紋位置的反演精度會降低,而裂紋的半開裂角和裂紋的深度反演精度仍較好.由此可見,裂紋的位置信息對模型反演精度的影響較大,建議的模型對反演深度比 δ >0.05 的裂紋具有較好的反演精度.深度比 δ <0.05 時,Lamb 波透過裂紋時發生的變化較小,導致觀測點測得的響應與健康板的響應相差不大,因而會影響模型的反演結果.

圖9 不同深度裂紋的反演結果Fig.9 Inversion results of cracks with different depths
在深度學習反演模型中,雖然對樣本的要求是盡可能大,但是過大的樣本數量會提高計算成本,同時會降低反演的效率.為了探究不同數量的樣本對反演能力的影響,將反演樣本數量設置為1000,1250,1500 和2000 共4 個不同水平.不同樣本數量下的缺陷反演結果如圖10 所示,從圖10 中可以看出,樣本的數量對反演精度有較大影響,樣本數量過少時,網絡出現過擬合的情況,反演結果與真實值相差較大,而當樣本數量達到1500 時模型能夠很好地反演出缺陷.

圖10 不同樣本數量的缺陷反演結果Fig.10 Inversion results with different training samples
為了研究模型反演多裂紋時的適用性,研究板中存在兩個開口裂紋情況下的反演效果.本算例中,板的尺寸、裂紋的參數范圍、邊界條件、材料參數以及荷載條件均與3.1 節相同,為了使Lamb 波充分地在裂紋邊界上反射,觀測點P處能夠捕獲反射信號,數值計算的總時間t為90 μs,每個時間步 Δt為0.03 μs.含兩個裂紋板的示意圖如圖11所示,兩裂紋的反演參數為:第一個裂紋尖端坐標xc1、裂紋的半開裂角 α1、裂紋垂向深度d1;第二個裂紋尖端坐標xc2、裂紋的半開裂角α2、裂紋垂向深度d2.觀測點P設置在板的下表面xP=90 mm 處.

圖11 多裂紋板示意圖Fig.11 Schematic diagram of multi crack plate
在本算例中,暫使用2000 組訓練數據,這些數據是由SBFEM 計算2000 個缺陷板得到的動力響應,2000 個缺陷板的缺陷信息及其對應的觀測點動力響應作為深度學習神經網絡模型的訓練集數據,驗證集從訓練集中隨機分配10%,根據驗證集準確率確定網絡模型參數后使用10 組待反演數據作為測試集.訓練結束后,用待反演板的動力響應作為輸入,在深度學習模型中進行一次正向傳播,得出相應的預測值,該預測值就是未知缺陷薄板的反演值.同樣地,使用統計學方法來獲得缺陷的反演值,測試集反演結果如圖12 所示,最終反演結果如表3 所示.

表3 多裂紋的反演結果和誤差Table 3 Inversion results and errors of multi cracks

圖12 多裂紋測試集反演結果圖Fig.12 Inversion results of multi crack on test sets

圖12 多裂紋測試集反演結果圖(續)Fig.12 Inversion results of multi crack on test sets (continued)
此外,為探究不同的樣本數對多裂紋反演結果的影響,研究了樣本數分別為1000,1250,1500 和2000 共4 個不同水平時反演的結果,如表4 所示.從表中可以看出,與單缺陷相同,樣本的數量對反演精度有較大影響,本節建立的多裂紋反演的模型,在樣本數量大于1500 時,能夠保證一定的反演精度,將多裂紋的相關參數準確地反演出來.

表4 不同樣本數量時多裂紋反演結果Table 4 Inversion results and errors of multi cracks with different training samples
在實際的問題中,由于傳感器的精度、實驗環境等問題,可能會導致測量的結果混入噪聲.為了分析噪聲的干擾對缺陷反演結果的影響,在待反演信號中混入不同程度的噪聲,來驗證文中提出的反演模型的魯棒性.本算例與3.2 相同,不同的是在觀測點P測得的動力響應真實值的基礎上,加入一定水平的高斯白噪聲,來模擬含有噪聲的數據.含有噪聲的動力響應計算公式如下所示

式中,Xclean表示通過SBFEM 計算的含有缺陷板的真實位移,ω 為高斯白噪聲變量,RMSX為真實位移的均方根,p為噪聲水平.
考慮到在實際工程中,如果測得的動響應中存在較大的噪聲干擾,會進行去噪處理,所以在本節的魯棒性分析中,最大的噪聲水平為10%.其他參數與3.2 節中相同,同樣運行1000 次,反演結果如表5 和表6.在待反演信號中添加不同程度的噪聲,模型能夠反演出缺陷.但隨著噪聲水平的增長,缺陷識別的精度會有所下降.

表5 引入5%噪聲的反演結果Table 5 Inversion results with 5% noise

表6 引入10%噪聲的反演結果Table 6 Inversion results with 10% noise
結合SBFEM 和深度學習建立了結構內裂紋狀缺陷的反演模型,可以定量識別結構內多裂紋的位置和尺度.SBFEM 僅需對結構邊界進行離散,通過設置比例中心的位置位于裂紋尖端可最小化網格重剖分,模擬波動問題時計算效率極高,可以快速地為深度學習模型提供足夠多的訓練數據.深度學習模型能夠學習到樣本的深層特征,大大提高了反演精度.Lamb 波在含缺陷薄板中傳播時,缺陷的存在對波傳播信號有明顯影響,僅采用一個觀測點的動位移響應便能得到較好的反演結果,相比于傳統的無損檢測方法為加快目標函數的最小化迭代過程需要布置較多的傳感器,文中建議的基于SBFEM 和深度學習的反演模型避免了傳統反分析問題的目標函數最小化迭代過程,同一結構模型的訓練數據可存儲為數據庫供多次反復使用.對含單裂紋和多裂紋板的數值算例進行分析,結果表明,建立的缺陷識別模型能夠準確地量化結構內部的缺陷,對淺表裂紋亦有很好的識別效果,且對于含噪信號模型仍具有較好的魯棒性.
當前的研究在進行多裂紋反演時是在預先已知裂紋數量的情況下,在后續的研究中將進一步拓展建議的模型用于未知裂紋數量情況下的缺陷反演.此外,后續的研究也將設計相關試驗,進一步驗證反演模型.