范 鵬
(遼寧省水利水電勘測設計研究院有限責任公司,遼寧 沈陽 110006)
重力壩結構設計較為復雜,需要滿足經濟和安全的要求。目前常用的重力壩設計方法為數值模擬[1]和理論計算[2]的方法,兩者計算量均較大,設計效率較低。因此,有人提出使用代理模型的方法,代替數值模擬模型進行重力壩結構優化設計。目前,較為常用的代理模型方法為克里金插值法;該方法在結構設計方面已經有了較多的使用,如液壓閥結構設計[3]、土地景觀利用穩定性評價[4]、鋼橋結構優化[5]等方面有較多的使用并取得了較好的效果,使用代理模型進行結構優化設計是可靠的。粒子群算法是一種優化算法,可以較快的速度獲取全局最優值,在無人機航程規劃[6]、電磁態勢預測[7]、水庫優化調度[8]、植物冠層圖像分割[9]等方面有較多的使用,優化方案準確可靠。
結合前人研究,提出使用PCE近似模型代替數值模擬計算,結合改進粒子群算法對重力壩結構優化設計進行研究。
在數學上已經證明任何函數盡可以使用多項式進行展開,且展開精度是可靠的。使用隨機展開是一個隨機計算的過程,可以將系統響應近似為隨機變量的展開,從而對系統的響應規律進行概率統計。該方法在不確定分析中具有較多的使用。
建立概率空間Ω內的一個不確定模型:
y=Y(x,t)
(1)
式中,x—不確定因素參數,取值范圍為Ω;定義一個N組獨立的不確定因素輸入變量:x=(x1,x2,…,xN)T,第i個變量邊緣部位的概率密度為:fi(xi);則聯合概率密度如下:f(x)=f1(x1)f2(x2)…fN(xN)。因此,原模型式(1)可以使用多項式進行展開:

(2)
式(2)可簡化為:
(3)
式中,ξ—滿足隨機分布的變量形式;a—確定系數;Φ—P階多項式。
在進行多項式展開時,基函數是所有變量產生的正交多項式的乘積,滿足正交關系:
(4)
式中,E—數學期望;δ—Kronecher算式。
(5)
前P階多項式階段形式為:
(6)
保留P階多項式計算方法如下:
(7)
根據式(4)計算每一項的展開式
ai(t)=E[Y(x,t)Φi(ξ)]
(8)
可根據多項式的混沌系數求取各階矩。
E[y′(x,t)]=a0
(9)
(10)
使用高斯投影法進行混沌系數分配

(11)
式中,ξi1—各個變量的高斯積分點;ωiN—各變量的權重。
以實際工程中遇到的重力壩設計為例,選取非溢流斷面作為優化設計斷面。重力壩設計高為25m,頂寬為4.5m。設計斷面如圖1所示,澆筑材料見表1。

圖1 重力壩壩體斷面圖

澆筑位置材料號彈性模量E/GPa泊松比容重/(KN/m3)抗壓強度/MPa抗拉強度/MPa壩體125.50.172013.41.54壩基4200.2525//
根據表1的澆筑材料參數屬性,建立關于重力壩安全系數、重力壩斷面面積和壩體斷面最大寬度的近似模型。近似模型建立方法如下:使用數值模擬計算的方法,確定輸入變量和輸出結果之間的關系,選取一種方法進行數學關系擬合,對近似模型的計算精度進行精度檢驗,滿足設計要求,則可對新輸入變量所的輸出結果進行預測分析。
建立近似模型之前,首先需要選取足夠代表性的、均勻分布的樣本點數據。目前,選取樣本點常用的方法為拉丁超立方法,使用該方法選取的樣本點具有均勻分布、具有代表性和計算快速收斂的特點。樣本點選取個數的要求如下:當變量個數為n個時,樣本點選取個數應該大于(n+1)(n+2)/2個。選取上游邊坡系數(C1)、下游邊坡系數(C2)、上游折點度與壩高比值(C3)、下游折點高度與壩高比值(C4)一共4個變量作為重力壩結構設計變量。使用拉丁超立方的方法選取樣本點55個,用來建立近似模型,使用15組數據進行精度檢驗。
3.2 重力壩安全系數、斷面面積、斷面最大寬度近似模型建立
使用ANSYS作為數值模擬計算軟件,該軟件是目前較為常用的一種有限元數值模擬計算軟件,在各行業內有較為廣泛的使用[10- 11]。使用MATLAB將ANSYS計算結果進行調用,獲取壩體安全系數和輸入變量之間的關系,根據上述方法建立近似模型,并進行精度檢驗。
通常使用下式來判斷近似模型精度。
δ1=Max{|fi-f|}(i=1,…,N)
(12)
(13)
式中,δ1、δ2—分別代表最大誤差和均方根誤差;N—檢測點個數;i—第i個檢測點。
式(12)、式(13)的值越小表示代理模型精度越高。
精度評價結果見表2。

表2 KRIGING代理計算模型精度評價
根據表2的計算精度檢驗結果可以得出最大誤差僅為4.13%,均方根誤差為0.23%,近似型精度滿足工程精度要求。可以使用所建立的近似模型代替ANSYS數值模擬計算結果。
基礎的粒子群算法具有局部最優值的局限性,因此引入交叉因子、學習因子和動態慣性因子克服粒子群算法的局限性。

(14)
式中,randj(0,1)—在[0,1]范圍內隨機的一個數;jrand—[1,D]范圍內隨機的一個整數;p—兩個粒子之間產生交叉的概率。
計算完成后對粒子的最優位置進行更新,更新結果如下:
(15)

(2)動態慣性因子
對于復雜的問題,慣性權重并非簡單的按照線性衰減。因此,在進行粒子群算法獲取最優值時可以使用動態慣性因子對粒子群算法進行改進。計算動態慣性權重,需要明確粒子進化度和聚合度兩個含義:
(16)
式中,m—粒子進化度;n—粒子聚合度;Pg,i、Pg,i-1—當前時刻全局最優值和上一時刻的歷史全局最優值;Ps—粒子群的規模,即總數。
慣性權重是一個與粒子進化度和粒子聚合度密切相關的參數,計算方法如下:
ω=f(m,l)=ω0-0.6m+0.15n
(17)
式中,ω0—初始慣性權重。
設計變量采用向量的形式表示,Z=[C1,C2,C3,C4],各參數意義如下:上游邊坡系數(C1)、下游邊坡系數(C2)、上游折點高度與壩高比值(C3)、下游折點高度與壩高比值(C4)。
Z1=[0,0.60,0.32,0.86];Z1=[0.21,0.80,0.66,0.93];K≥3;D≥25m
(18)
式中,Z1、Z2—分別表示各設計變量的最小值和最大值;K—壩體安全系數;D—壩體橫斷面最大寬度。
設計目標函數時需要引入懲罰函數,懲罰函數的引入可以加快運算速率提高計算精度。建立新的目標函數如下:
F=f(A)·e[f(a)+f(b)]
(19)
式中,f(a)、f(b)—懲罰函數;F—建立的新的目標函數。
使用MATLAB編寫粒子群算法基于近似模型(PCE)的模型,使用電腦進行多次計算,獲取重力壩結構最優設計方案,初始設計變量值初始和優化后的變量取值結果見3。

表3 結構設計優化前后各變量參數
通過重力壩結構優化設計,在滿足安全系數的要求下,斷面面積減小率為(337.55-313.6)/474=7.1%。根據近似模型優化設計結果建立數值模擬模型,計算得到安全系數K=6.51,滿足重力壩安全設計要求。
(1)使用PCE方法建立的數值模擬近似模型具有較高的計算精度,可以滿足工程設計要求,同時可以有效減少數值模擬在重力壩設計中的計算量。
(2)使用粒子進化度和粒子聚合度對慣性權重進行優化設計可以提高粒子群基本算法的穩定性;通過重力壩結構優化,斷面面積減小7.1%,具有較好的經濟效益,同時安全系數為6.51滿足工程安全要求。