摘 要:提出通過人工神經網絡擬合極限狀態函數的方法來解決結構可靠性問題。根據多層神經網絡映射存在定理,對于任何在閉區間內的一個連續函數都可以用含有一個隱含層的BP網絡來逼近。應用此定理,通過人工神經網絡擬合極限狀態方程,借助神經網絡的函數映射關系產生大量的極限狀態函數值,作為下一步的分析數據。此過程并不像Monte Carlo法對每一點都做確定性計算,因而達到減少計算工作量的目的。該方法僅采用Monte Carlo法隨機抽樣的思路,對大范圍的數據進行概率分析,通過概率分析得到極限狀態函數值的均值和標準差,以便求得結構系統的可靠性指標,進行結構系統可靠性分析。
關鍵詞:BP神經網絡; Monte Carlo法; 結構可靠性; 極限狀態函數
中圖分類號:TB114.3;TP183 文獻標識碼:A
文章編號:1004-373X(2010)12-0059-03
Structure Reliability Analysis Based on BP Neural Network Monte Carlo Method
ZHANG Liang1, ZHAO Na2
(1. Propaganda Department, China University of Petroleum, Dongying 257061, China;
2. Safety Supervision Station, Jiaonan Municipal and Rural Construction Bureau, Jiaonan 266400, China)
Abstract:The method of fitting the limit state functions through an artificial neural network is put forward to solve the problem of structure reliability. According to the existence theorem of multilayer neural network mapping, any continious function in the closed interval can be approached with BP network containing a hidden layer.Many limit state function values, which are acted as the analysis data in the next step, are generated with the theorem and the fitting of the limit state equations by the aid of the function mapping relationship of neural network. The probability analyses for a wide range of data are performed only by the thought of random sampling with Monte Carlo method. carry on to the data of the large range, receive the mean value and standard deviation of the limit state function values are obtained by the probability analyses to derive the reliability index of the structure system to carry on the reliability analysis of the structure system.
Keywords:BP neural network; Monte Carlo method; structure reliability;limit state function
0 引 言
在進行結構可靠性分析中,常遇到某些結構的極限狀態函數不能明確給出,或者有些更為復雜結構的極限狀態函數根本不能寫出來,此時,直接應用大多數可靠性方法都會遇到困難。因此,可以利用數值模擬或實驗等手段得到結構的多組輸入及響應,以此作為神經網絡的訓練數據對神經網絡進行訓練。經適當訓練的神經網絡能夠較好地逼近結構的極限狀態函數,在此基礎上可以十分方便地利用Monte Carlo法模擬結構的可靠度。
1 基本原理
1.1 Monte Carlo法
Monte Carlo法[1]是通過隨機模擬和統計實驗來求解結構可靠度的近似數值方法。
根據大數定律,設X1,X2,…,Xn是n個獨立的隨機變量,來自同一母體,有相同的分布,且具有相同的有限均值和方差,分別用μ,σ2表示,則對于任意ε>0有:
limn→∞ P(|(1/n)∑xi-μ|≥ε)=0 (1)
另有,若隨機事件A發生的概率為P(A),在n次獨立的實驗中,事件A發生的頻率為m,頻率為W(A)=m/n,則對于任意ε>0有:
limn→∞ P(|(m/n)-P(A)|<ε)=1 (2)
由式(1)和(2)可知,當n足夠大時,(1/n)∑xi依據概率收斂于μ,而頻率m/n依據概率1收斂于P(A),就是Monte Carlo法的理論基礎。
1.2 BP網絡
BP網絡[2-4](back-propagation neural network)是一種監督式的學習算法,通過連續不斷在相對于誤差函數斜率下降的方向上計算網絡權值和偏差的變化而逐漸逼近目標。
一般的L層BP網絡如圖1所示。
假設神經網絡的原始輸入向量為 X =(x1,x2,…,xn)T,則第k(k≥2)層的輸入值向量為netk= W Tk O k-1,輸出向量為 O k=fk(netk)。
BP網的學習就是要確定權矩陣 W k,使理想輸出 Y 與實際輸出 O m的誤差 E 最小。
圖1 BP網絡結構圖
E =1/2‖ O m- Y ‖=1/2( O m- Y )T( O m- Y ) (3)
利用誤差的負梯度來調整連接權,即計算其對各層權矩陣的偏導數,因而可以表示成:
E W k= O k-1( O m- Y )T O mnetm W Tm O m-1netm-1×…×
W Tk+2 O k+1netk+1 W Tk+1 O knetk,k=m,m-1,…,1 (4)
由 O k=fk(netk),可得式(4)中的Jacobi矩陣為:
JO k Z k = O knetk=diag[d O k1d netk1,d O k2d netk2,…,d O k1d netkm]=
diag[fk1′( Z k1),fk2′( Z k2),…,fkk′( Z kk)]
k=1,2,…,m (5)
網絡每得到一個樣本,就會學習并更新連接權,對于第t+1個樣本的權矩陣可以修正成:
W (t+1)k= W (t)k+δ W (t)k,k=m,m-1,…,1 (6)
按照最速下降法,為了使 E 達到極小點,應該有:
δ W (t)k=-ηt E (t) W (t)k (7)
BP神經網絡的學習步驟為:
(1) 選定學習的樣本集{ X (t), Y (t)}(t=1,2,…,S),隨機確定初始權矩陣 W (0)k(k=1,2,…,m),用學習樣本 X (t)計算 O (t)k,(k=1,2,…,m);
(2) 利用式(4)和式(5)反向計算偏導數 E (t) W (t)k(k=m,m-1,…,1);
(3) 利用式(6)和式(7)反向修正 W (t)k以得到 W (t+1)k(k=m,m-1,…,1);
(4) 重復步驟(2)~(4),直到學習完所有S組樣本。
2 基于BP神經網絡-Monte Carlo的Matlab實現[5-9]
2.1 網絡結構的確定
(1) 輸入層與輸出層設計。本文應用BP網絡擬合結構的極限狀態函數,所以輸入層神經元個數應該為影響結構可靠度不同參數的個數,輸出層只代表極限狀態函數值,所以輸出層神經元為l。
(2) 隱藏層的數目。可以通過增加隱含層中的神經元數目來提高精度,并且其訓練效果也比增加層數更容易觀察和調整,本文設計隱藏層為2層(m=2)。
(3) 隱藏層單元數目的確定。通常,隱藏層單元數目的選擇原則是:在能夠解決問題的前提下,在加上1到2個神經元以加快誤差的下降速度即可。
(4) 激活函數的選取。用于做函數映射的BP網絡,BP網中的神經元所用的激活函數必須是處處可導的,隱藏層神經元常采用sigmoid函數,其函數表達式為:
f(x)=1/[ 1+exp(-x)](8)
輸出層激活函數采用線性Purelin型傳遞函數,可以使整個網絡的輸出范圍為任意值。
2.2 網絡的初始化
通過函數init實現,當newff在創建網絡對象的同時,自動調動初始化函數init,權值一般取得隨機數。對于輸入的樣本數據同樣希望能夠進行歸一化處理,使那些比較大的輸入仍然在神經元激活函數梯度大的那些地方。
2.3 樣本數據的處理
為了適應BP算法的需要,輸入/輸出數據必須進行歸一化和規范化處理,采用下式將其映射到[0.2,0.8]之間。其變化方式為:
X*=0.2+X-XminXmax-Xmin×0.6 (9)
Matlab中提供了對數據進行歸一化處理的函數:[pn,minp,maxp]=permnmx(p),訓練后相應的處理函數為:P=postmnmx(p,minp,maxp)
2.4 網絡的仿真輸出
當網絡訓練收斂后,應用Matlab提供的前向網絡仿真函數sim(),對BP神經網絡進行仿真輸出。此時,整個人工神經網絡就相當于一個復雜的非線性函數,可以對他進行函數的一切操作。
3 分析實例
本例參考了文獻[10]中的簡單門式框架,各單元的彈性模量均為 E =2.0×106 kN/m2,截面慣性矩與截面積的關系為Ii=αiA2i(i=1,2)。隨機變量為單元的截面積A1(單位:m2),A2(單位:m2)以及外荷載P(單位:kN),其隨機特征見表1所示。
表1 門式框架隨機變量的統計特征
隨機變量均值變異系數分布類型αi
A10.360.1對數分布1/12
A20.180.1對數分布1/6
P200.25正態分布
有結構力學知識可以解得:
u3=[(48k+32)/(18k+3)][P/(EI1)]
k=I2/I1 (10)
在確定建立了正確的映射關系之后,抽樣選取10 000個樣本點,采用三層BP神經網絡模型,本例用式(9)代替數值分析或實驗,建立極限狀態方程如下:
Z =0.01-u3=0 (11)
形成訓練數據{xi,zi}(1,2,…,10 000)。計算失效概率為pf=2.384 9×10-3,用重要性抽樣方法得到的失效概率為pf=2.322 3×10-3。兩種計算結果相近,說明基于神經網絡的蒙特卡羅法的結構可靠性分析是可靠的。
4 結 語
結構可靠性分析由于受多種不確定因素的限制,所求解的極限狀態方程往往是非線性的。神經網絡具有強大的函數擬合和泛化功能,具有一個隱含層的三層神經網絡能夠精確擬合任意的連續函數。基于BP神經網絡-Monte Carle法充分利用了神經網絡高度的非線 性、容錯性和魯棒性以及自學習功能,相比直接的Monte Carle法更加適合復雜結構的可靠度計算。
參考文獻
[1]李奎明.工程結構可靠度基礎理研究[D].阜新:遼寧工程技術大學,2003.
[2]蔣宗禮.人工神經網絡導論[M].北京:高等教育出版社,2001.
[3]楊建剛.人工神經網絡實用教程[M].杭州:浙江大學出版社,2002.
[4]張明.結構可靠度分析 方法與程序[M].北京:科學出版社,2009.
[5]梁利端,李玲玲.淺談構件可靠度基于Matlab的蒙特卡羅法[J].蘭州工業高等專科學校學報,2008,15(1):7-9,15.
[6]許永江,邢兵,吳進良.基于有限元神經網絡Monte-Carlo的結構可靠度計算方法[J].重慶交通大學學報:自然科學版,2008,27(2):188-190,216.
[7]侯國祥,徐凱,朱梅林.應用神經網絡-蒙特卡羅法的可靠度分析方法[J].華中科技大學學報:自然科學版,2002,30(4):84-86.
[8]羅成漢.基于Matlab神經網絡工具箱的BP網絡實現[J].計算機仿真,2004,21(5):109-111,115.
[9]從爽.面向Matlab工具箱的神經網絡理論與應用[M].合肥:中國科學技術大學出版社,2003.
[10]佟曉利,趙國藩.一種與結構可靠度分析幾何法相結合的響應面方法[J].土木工程學報,1997,30(4):51-57,74.