黃小光, 徐國強, 孫 峰, 許金泉
(1.中國石油大學(華東) a.儲運與建筑工程學院; b.文學院,山東 青島266580; 2. 上海交通大學 船舶海洋與建筑工程學院,上海 200240)
材料力學行為試驗與分析是工程力學專業(yè)研究生的一門選修課程,其任務是使研究生學習并掌握材料力學行為試驗與分析的基本知識和技能,培養(yǎng)實際操作能力和分析、解決問題的能力,為其將來走上工作崗位或者從事科學研究工作打好基礎。隨著材料科學的發(fā)展,各式各樣的新材料不斷問世,而這些材料能否滿足現(xiàn)代工業(yè)需要、能否從實驗室走向?qū)嶋H應用,對這些問題的探索使得評價材料性能參數(shù)的試驗方法和檢測技術更加必要,同時也促進材料力學行為試驗與分析課程內(nèi)容不斷更新,以適應實驗技術、分析方法的發(fā)展[1-2]。本文以材料腐蝕疲勞專題為例,結合腐蝕疲勞實驗,提出了一種基于BP神經(jīng)網(wǎng)絡的腐蝕疲勞實驗分析方法。
目前金屬與合金的腐蝕疲勞實驗標準主要包括循環(huán)失效實驗與預裂紋試樣裂紋擴展實驗。一般而言,腐蝕疲勞具有很強的材料-環(huán)境依存性,材料類型、載荷因素(應力振幅、應力比及載荷頻率、波形等)和環(huán)境因素(溶液成分、濃度及pH值)等都能很大程度影響材料的腐蝕疲勞壽命。由于影響因素較多,材料腐蝕疲勞壽命難以顯式表達,至今仍未形成較為通用的預測模型。同時,由于影響因素隨機性大,載荷與環(huán)境參數(shù)稍有變化,就難以根據(jù)實驗數(shù)據(jù)預測相應的腐蝕疲勞壽命,大大限制了腐蝕疲勞實驗結果的推廣[3-6]。
人工神經(jīng)網(wǎng)絡(ANN)是由大量的人工神經(jīng)元經(jīng)廣泛互連形成的網(wǎng)絡,用以模擬人類神經(jīng)系統(tǒng)的結構和功能。ANN系統(tǒng)具有模擬復雜的高度非線性映射的能力,目前已成功應用于結構分析和設計、模式識別、以及優(yōu)化控制等研究領域。BP神經(jīng)網(wǎng)絡是一種按誤差逆?zhèn)鞑ニ惴ㄓ柧毜亩鄬忧梆伻斯ど窠?jīng)網(wǎng)絡,是目前應用最廣泛的神經(jīng)網(wǎng)絡模型之一。BP神經(jīng)網(wǎng)絡能學習和存貯大量的輸入—輸出模式映射關系,無需事前揭示描述這種映射關系的數(shù)學方程。它的學習規(guī)則是使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡的權值和閾值,使網(wǎng)絡的誤差平方和最小。理論證明,當隱層神經(jīng)元數(shù)目足夠多時,BP神經(jīng)網(wǎng)絡能夠以任意精度逼近任何一個具有有限間斷點的非線性函數(shù)。所以采用BP神經(jīng)網(wǎng)絡方法預測腐蝕疲勞壽命,只要有足夠的已知數(shù)據(jù)來對網(wǎng)絡進行訓練,就可以建立諸多影響因素與腐蝕疲勞壽命之間的映射網(wǎng)絡,相當于獲得了腐蝕疲勞壽命表達式。然后設定待測試樣的載荷及環(huán)境參數(shù),輸入到已訓練好的神經(jīng)網(wǎng)絡中,就可以獲得待測試樣的腐蝕疲勞壽命[7-9]。
本文以7075鋁合金材料的循環(huán)失效實驗為例,分析基于BP人工神經(jīng)網(wǎng)絡的分析方法在材料腐蝕疲勞實驗中的應用。實驗參照金屬和合金的腐蝕-腐蝕疲勞實驗(GB/T20120.1—2006)[10]。腐蝕疲勞實驗設備采用MTS809電液伺服高頻(50~300 Hz)疲勞試驗機。腐蝕疲勞實驗試樣采用標準的漏斗形試樣,試樣加載如圖1所示,腐蝕溶液則采用標配的中性3.5%NaCl(pH 7.0)溶液。
圖1 試樣加載示意圖
本次實驗主要考慮最大應力、應力比、頻率、加載波形等因素對腐蝕疲勞裂紋擴展的影響。實驗中選取以上4個參數(shù)的組合作為載荷參數(shù),記錄對應的試樣循環(huán)失效次數(shù)(壽命),共獲取了7075鋁合金的16組實驗數(shù)據(jù)。隨機選取12組樣本數(shù)據(jù)作為訓練數(shù)據(jù),為便于神經(jīng)網(wǎng)絡樣本輸入,正弦波加載用0表示,三角波加載用1表示,如表1所示。載荷參數(shù)作為輸入(其中最大應力與載荷頻率數(shù)據(jù)需歸一化處理),循環(huán)失效次數(shù)歸一化處理后作為輸出。將訓練樣本輸入到BP神經(jīng)網(wǎng)絡進行訓練。
表1 腐蝕疲勞樣本
神經(jīng)網(wǎng)絡訓練好之后,將剩余的4組實驗數(shù)據(jù)作為測試樣本,對訓練好的神經(jīng)網(wǎng)絡進行仿真。獲得的仿真結果與實驗誤差如表2所示。
Matlab及其所帶的神經(jīng)網(wǎng)絡工具箱NNT(NeuralNetwork Toolbox)在實際應用中具有較大的優(yōu)越性。NNT的可視化接口便于用戶明確和理解神經(jīng)網(wǎng)絡的結構,同時能夠很快地產(chǎn)生、初始化、訓練和仿真神經(jīng)網(wǎng)絡[11]。但是NNT用戶圖形界面直觀性差,NNT數(shù)據(jù)交換的能力相對較弱,對大部分學生而言可操作性不強。Visual Basic語言是最常用的編程語言之一,具有易學易用、界面可視化等優(yōu)點,但VB在矩陣計算、數(shù)值分析方面的能力相對較弱。為充分發(fā)揮Matlab神經(jīng)網(wǎng)絡工具箱和VB開發(fā)圖形用戶界面好的優(yōu)勢,采用ActiveX自動化技術實現(xiàn)Matlab和VB混合編程方法[12-13]。以VB語言編寫用戶界面,從后臺調(diào)用Matlab-BP神經(jīng)網(wǎng)絡工具箱,實現(xiàn)腐蝕疲勞樣本數(shù)據(jù)的訓練、測試及腐蝕疲勞壽命的預測?;旌暇幊碳夹g實現(xiàn)了樣本數(shù)據(jù)操作的可視化,便于學生理解與接受;該技術實用性強,可以在類似的實驗分析中進行推廣應用[14-16]。
表2 網(wǎng)絡測試結果
(1) 網(wǎng)絡訓練。輸入腐蝕疲勞壽命預測模塊訓練樣本,給出訓練樣本的輸入層變量個數(shù)及樣本組數(shù)。設置神經(jīng)網(wǎng)絡參數(shù):網(wǎng)絡中間層(隱含層)神經(jīng)元個數(shù)一般取“2×輸入層變量個數(shù)+1”;網(wǎng)絡目標誤差原則上越小越好,但不能太小,否則可能導致訓練過程不收斂;網(wǎng)絡的最大訓練次數(shù)可隨意選??;學習效率范圍為0.01~0.90。設定好網(wǎng)絡參數(shù)之后,點擊訓練,模塊能自動從后臺啟動Matlab-BP網(wǎng)絡工具包,將訓練樣本輸入到BP工具包中,進行網(wǎng)絡訓練,如圖2所示。
圖2 模塊調(diào)用Matlab-BP工具包示意圖
(2) 網(wǎng)絡測試及預測。進入網(wǎng)絡測試模塊。手動輸入或從文本文件中讀取測試樣本,點擊測試,模塊自動輸出腐蝕疲勞壽命,并與測試樣本的實際壽命進行對比,判斷測試結果的可信度。如果測試結果可以接受,可直接進行壽命預測,否則通過增加樣本數(shù)量、修改網(wǎng)絡控制參數(shù)(包括中間神經(jīng)元個數(shù)、目標誤差等)重新訓練網(wǎng)絡。
(3) 直接預測模塊。該模塊封裝了BP神經(jīng)網(wǎng)絡的訓練過程(包含12組訓練樣本)。輸入所要預測的試樣組數(shù),并完成輸入層樣本,每組樣本對應一個試樣,每組樣本內(nèi)容應包括最大應力(歸一化)、應力比、頻率(歸一化)和加載波形,點擊預測就可以得到所需預測的每組試樣的腐蝕疲勞壽命。
模塊各環(huán)節(jié)數(shù)據(jù)樣本輸入均支持兩種方法:鍵盤輸入與打開數(shù)據(jù)文件讀取樣本數(shù)據(jù)。但鍵盤輸入比較繁瑣,一般都由文件讀取。選擇讀取數(shù)據(jù)文件時,模塊能自動判別訓練樣本的輸入層變量個數(shù)及樣本組數(shù)。為便于樣本數(shù)據(jù)輸入,可以在計算機上建立各個環(huán)節(jié)需要樣本的文本文件,如果增加樣本,可以直接修改文本文件,便于數(shù)據(jù)樣本的更新及維護。
以上研究中腐蝕疲勞的影響因素僅考慮最大應力、應力比、頻率、加載波形4個參數(shù),如需增加其他影響因素,可以直接在數(shù)據(jù)文件中增加相關實驗數(shù)據(jù),避免分析過程中反復輸入。
高科技的發(fā)展為包括材料實驗在內(nèi)的材料力學行為研究開辟了新的領域,也提出了更高的要求。電液伺服技術與計算機技術結合可以實現(xiàn)前人操作不可能完成的實驗,將材料力學行為研究推進到一個新的水平。利用計算機技術建立材料性能與行為數(shù)據(jù)庫及分析手段,能有效降低實驗重復率,實現(xiàn)對材料力學性能與行為的預測、評估。人工神經(jīng)網(wǎng)絡與材料力學行為試驗與分析相結合,可以在有限的實驗數(shù)據(jù)中發(fā)現(xiàn)有用的信息,拓寬材料力學行為試驗的工程應用領域。將這種方法引入到研究生的材料力學行為試驗與分析課程教學中,能有效提高教學效果,激發(fā)學習興趣,啟發(fā)學生進行更深層次的思考。
[1] 王習術.先進材料力學行為實驗指南[M].北京:清華大學出版社,2010.
[2] 王習術.材料力學行為試驗與分析[M].北京:清華大學出版社,2007.
[3] 黃小光,腐蝕疲勞點蝕演化與裂紋擴展機理研究[D].上海交通大學,2013.
[4] Engelhardt G R, Macdonald D D. Modelling the crack propagation rate for corrosion fatigue at high frequency of applied stress[J]. Corrosion Science, 2010, 52: 1115-1122.
[5] Ishihara S, McEvily AJ, Sato M,etal. The effect of load ratio on fatigue life and crack propagation behavior of an extruded magnesium alloy[J]. International Journal of Fatigue, 2009, 31:1788-1794.
[6] 紀冬梅,周昌玉,汪 蕊.基于人工神經(jīng)網(wǎng)絡和Monte-Carlo方法的腐蝕疲勞剩余壽命及其可靠度計算[J].壓力容器,2002,19(6):23-25.
JI Dong-mei, ZHOU Chang-yu, WANG Rui. Application of artificial neural network in calculation of residual life and reliability in corrosion fatigue[J]. Pressure Vessels, 2002, 19(6): 23-25.
[7] 胡金濱,唐旭清.人工神經(jīng)網(wǎng)絡的BP算法及其應用[J].信息技術,2004,28(4):1-4.
HU Jin-bin, TANG Xu-qing. BP algorithm and its application in artificial neural network[J]. Information Technology, 2004, 28(4): 1-4.
[8] 傅應強,王飛虎,陶庭先.人工神經(jīng)網(wǎng)絡在儀器分析實驗數(shù)據(jù)處理中的應用[J].大學化學,2011,26(6):45-47.
FU Ying-qiang, WANG Fei-hu, TAO Ting-xian. The application of artificial neural network in experimental data processing of instrument analysis[J]. University Chemistry, 2011, 26(6): 45-47.
[9] 曹旭帆,葉 舟,萬 俊,等.基于BP神經(jīng)網(wǎng)絡的函數(shù)逼近實驗及Matlab實現(xiàn)[J].實驗室研究與探索,2008,27(5):34-38.
CAO Xu-fan, YE Zhou, Wan Jun,etal. The experiment of function simulation based on backpropagation neuron network[J]. Research and Exploration in Laboratory, 2008, 27(5): 34-38.
[10] GB/T 20120.1-1998,金屬與合金的腐蝕-腐蝕疲勞實驗第1部分:循環(huán)失效實驗[S].北京:中國標準出版社,1998.
[11] 陳 明.Matlab神經(jīng)網(wǎng)絡原理與實例精解[M].北京:清華大學出版社,20013.
[12] 程 鈴,徐冬冬.Matlab仿真在通信原理教學中的應用[J].實驗室研究與探索,2010,29(2):117-119.
CHENG Ling, XU Dong-dong. Application of Matlab simulation in communication principle teaching[J]. Research and Exploration in Laboratory, 2010, 29(2): 117-119.
[13] 何 強,何 英.Matlab 擴展編程[M].北京:清華大學出版社,2002.
[14] 孟力力,楊其長,聞 婧,等.MATLAB和VB在溫室環(huán)境模型構建中的混合編程研究[J].中國農(nóng)學通報,2012,28(6):262-268.
MENG Li-li, YANG Qi-chang, WEN Jing,etal. Hybrid programming with MATLAB and VB in building visual simulation model for thermal environment in Chinese solar greenhouse[J]. Chinese Agricultural Science Bulletin, 2012,28(6): 262-286.
[15] 梁艷萍,劉 超.基于VB 與Matlab 混合編程永磁同步電動機電磁設計方法[J].哈爾濱理工大學學報,2010,15(6):25-29.
LIANG Yan-ping, LIU Chao. Electromagnetic design method for permanent magnet synchronous motor based on Matlab and VB mixed programming[J]. Journal of Harbin University of Science and Technology, 2010, 15(6):25-29.
[16] 侍孝虎.VB與Matlab混合編程研究與實現(xiàn)[J].軟件導刊,2012,11(9):33-35.
SHI Xiao-hu. The research and realization of hybrid programming of VB and Matlab[J]. Software Guide, 2012, 11(9): 33-35.