譚佳斌,趙維濤
(沈陽(yáng)航空航天大學(xué) 航空宇航學(xué)院, 沈陽(yáng) 110136)
面對(duì)大多數(shù)復(fù)雜的工程結(jié)構(gòu)設(shè)計(jì)問(wèn)題,為獲取設(shè)計(jì)參數(shù)與結(jié)構(gòu)響應(yīng)之間的關(guān)系,工程技術(shù)人員往往采用代理模型。實(shí)踐表明,代理模型具有精度高、計(jì)算量小,低誤差等特點(diǎn)[1],可廣泛應(yīng)用于航空航天等領(lǐng)域。現(xiàn)有較為常用代理模型主要有:響應(yīng)面法[2]、神經(jīng)網(wǎng)絡(luò)法[3]、支持向量機(jī)[4]和Kriging模型[5-7]等。由于Kriging模型具有良好處理非線性預(yù)測(cè)能力,Kriging模型已成為最具代表的代理模型之一。
為完善Kriging模型,研究者已經(jīng)進(jìn)行了大量的研究工作。增強(qiáng)梯度Kriging模型[8],優(yōu)點(diǎn)在于通過(guò)利用梯度信息來(lái)提高Kriging模型的計(jì)算精度。Kennedy等人將協(xié)同Kriging模型[9]推廣到工程領(lǐng)域,該模型通過(guò)用容易抽樣的量替換較困難抽樣的量來(lái)進(jìn)行輔助預(yù)測(cè)。Joseph等人提出了盲Kriging模型[10-12],通過(guò)貝葉斯法識(shí)別趨勢(shì)函數(shù)。Kwon等人提出了趨勢(shì)Kriging模型[13],但趨勢(shì)函數(shù)求解過(guò)程不利于工程實(shí)際問(wèn)題的求解。
本文提出了一種改進(jìn)的Kriging模型。與以往的Kriging模型不同的是:
1) 在生成初始樣本后,本文通過(guò)響應(yīng)面法確定趨勢(shì)函數(shù)。考慮到實(shí)際工程問(wèn)題,本文使用一至三階不含交叉項(xiàng)的多項(xiàng)式函數(shù)作為備選趨勢(shì)函數(shù),通過(guò)回歸分析計(jì)算出趨勢(shì)函數(shù)的相關(guān)系數(shù),選取趨勢(shì)擬合程度較高的備選趨勢(shì)函數(shù)的階數(shù)作為Kriging模型整體趨勢(shì)函數(shù)的階數(shù)。
2) 在確定趨勢(shì)項(xiàng)的階數(shù)后,將整體趨勢(shì)函數(shù)中所忽略的交叉項(xiàng)重新加入Kriging模型中,通過(guò)遺傳算法重新篩選基函數(shù),排除對(duì)模型計(jì)算精度無(wú)影響或者影響極小的基函數(shù)項(xiàng),保留影響較大基函數(shù)項(xiàng),降低計(jì)算量的同時(shí)提高模型的精度。
經(jīng)典Kriging模型包含整體趨勢(shì)函數(shù)和隨機(jī)函數(shù)2個(gè)部分。已有研究表明,在樣本數(shù)量足夠多的情況下,整體趨勢(shì)函數(shù)對(duì)Kriging模型的預(yù)測(cè)精度影響較小[9-13]。然而足夠多的樣本必然帶來(lái)計(jì)算成本的增加,不利于工程實(shí)際。因此,在樣本數(shù)量有限的情況下,正確選取整體趨勢(shì)函數(shù)有助于提高Kriging模型的預(yù)測(cè)精度。本文首先利用響應(yīng)面方法確定Kriging模型整體趨勢(shì)函數(shù)的階次,然后通過(guò)遺傳算法對(duì)整體趨勢(shì)函數(shù)中的各項(xiàng)進(jìn)行優(yōu)化選取。
利用拉丁超立方抽樣方式生成初始樣本,并求得對(duì)應(yīng)樣本點(diǎn)的響應(yīng)值。由于在最佳基函數(shù)選擇中需要對(duì)全基函數(shù)進(jìn)行計(jì)算對(duì)比,因此初始樣本點(diǎn)的數(shù)量一定要大于等于全基函數(shù)的項(xiàng)數(shù),初始樣本點(diǎn)的數(shù)量為:
k1≥(n+p)!/n!×p!
(1)
式(1)中:k1為初始樣本點(diǎn)數(shù)量;n是函數(shù)的維數(shù);p是函數(shù)的階數(shù)。
響應(yīng)面函數(shù)設(shè)計(jì)思路應(yīng)當(dāng)形式簡(jiǎn)單,并使待定系數(shù)盡量少,以減小結(jié)構(gòu)分析的工作量,因此在建立整體趨勢(shì)函數(shù)時(shí)忽略交叉項(xiàng)。
考慮到實(shí)際工程問(wèn)題需求,本文建立一至三階不含交叉項(xiàng)的多項(xiàng)式作為備選趨勢(shì)函數(shù)。一階、二階、三階的響應(yīng)函數(shù)為:
(2)
式(2)中,a、bi、ci和di為待定系數(shù)。
通過(guò)回歸分析,計(jì)算出所有備選趨勢(shì)函數(shù)的相關(guān)系數(shù),選取趨勢(shì)擬合程度最高的趨勢(shì)備選函數(shù)的階數(shù)作為Kriging模型中趨勢(shì)函數(shù)的階數(shù)。相關(guān)系數(shù)為:
(3)
選取相關(guān)系數(shù)最趨近于1的備選趨勢(shì)函數(shù)的階數(shù)作為Kriging模型中趨勢(shì)函數(shù)的階數(shù)。
Martin等[14]開(kāi)發(fā)的二進(jìn)制編碼非支配排序遺傳算法,可以搜索基函數(shù)的最優(yōu)子集。二進(jìn)制編碼的生成一個(gè)(n+p)!/n!×p!位編碼,其中n是函數(shù)的維數(shù),p是函數(shù)的階數(shù)。全基函數(shù)中的每個(gè)多項(xiàng)式項(xiàng)都被分配給不同的編碼。是否使用指定的多項(xiàng)式項(xiàng)由二進(jìn)制數(shù)決定,其中1表示選擇多項(xiàng)式項(xiàng)作為候選項(xiàng),0表示沒(méi)有選擇多項(xiàng)式項(xiàng)??啥x目標(biāo)函數(shù)為均方根誤差最小,來(lái)比較每個(gè)基函數(shù)的適應(yīng)值,通過(guò)迭代選擇,直到滿(mǎn)足收斂條件,即可從全基函數(shù)項(xiàng)中找到基函數(shù)的最佳子集。
當(dāng)基函數(shù)選取后,利用主動(dòng)學(xué)習(xí)函數(shù)逐步增加具有重要意義的樣本,進(jìn)而更新已構(gòu)建的Kriging模型,直至滿(mǎn)足一定收斂條件。常見(jiàn)的學(xué)習(xí)函數(shù)有EEF函數(shù)、U函數(shù)和H函數(shù)。實(shí)踐表明[15],U函數(shù)和其他學(xué)習(xí)函數(shù)相比,在保持較高精度的同時(shí),所需的樣本數(shù)量較少,因此本文采用U函數(shù),U函數(shù)的表達(dá)式為:
(4)
學(xué)習(xí)函數(shù)的停止條件(即Kriging模型的收斂條件)為:
min.(U(X))>2
(5)
本文方法的基本流程如下:
1) 使用拉丁超立方抽樣方式生成初始樣本;
2) 通過(guò)響應(yīng)面法求得一至三階響應(yīng)面函數(shù),作為備選趨勢(shì)函數(shù);
3) 對(duì)所有備選趨勢(shì)函數(shù)進(jìn)行回歸分析,分別計(jì)算對(duì)應(yīng)R2值并判別,選取趨勢(shì)擬合程度較高的備選趨勢(shì)函數(shù)的階數(shù)作為Kriging模型整體趨勢(shì)函數(shù)的階數(shù);
4) 使用遺傳算法搜索趨勢(shì)函數(shù)的基函數(shù)最優(yōu)子集,目標(biāo)函數(shù)為均方根誤差最小;
5) 通過(guò)主動(dòng)學(xué)習(xí)函數(shù)訓(xùn)練已構(gòu)建的Kriging模型,直至滿(mǎn)足收斂條件。
本文給出3個(gè)數(shù)值算例,包括三角函數(shù)、二維函數(shù)和三維函數(shù),以驗(yàn)證本文提出的改進(jìn) Kriging模型(improved kriging model,IKM)的計(jì)算效率與計(jì)算精度。采用誤差均方根衡量計(jì)算精度,采用總樣本數(shù)量衡量計(jì)算效率,將IKM與經(jīng)典Kriging模型(classical kriging model,CKM)、泛Kriging模型(universal kriging model,UKM)和趨勢(shì)Kriging模型(trended kriging model,TKM)進(jìn)行對(duì)比。計(jì)算表格中的UKM1代表一階UKM、UKM2代表二階UKM、TKM1代表一階TKM、TKM2代表2階TKM,k是樣本的總數(shù)量。
k=k1+k2
(6)
式(6)中:k1是初始樣本點(diǎn)的數(shù)量;k2是由主動(dòng)學(xué)習(xí)函數(shù)篩選來(lái)的后續(xù)樣本點(diǎn)數(shù)量。
測(cè)試函數(shù)1來(lái)源于文獻(xiàn)[13],有:
(7)
圖1為測(cè)試函數(shù)1的真實(shí)響應(yīng)值的等高線圖,圖2為本文方法給出的響應(yīng)值等高線圖。對(duì)比圖1、圖2可知,IKM的響應(yīng)值與真實(shí)函數(shù)的響應(yīng)值總體趨勢(shì)吻合較好。
圖1 測(cè)試函數(shù)1真實(shí)響應(yīng)值等高線圖
圖2 基于IKM的測(cè)試函數(shù)1響應(yīng)值等高線圖
趨勢(shì)函數(shù)計(jì)算結(jié)果見(jiàn)表1,IKM與其他模型的總樣本數(shù)及對(duì)比見(jiàn)表2。通過(guò)表1可知,當(dāng)代理模型整體趨勢(shì)函數(shù)階數(shù)等于2時(shí),趨勢(shì)擬合程度最高。由表2可知,本文算法需要12個(gè)初始樣本和3個(gè)后續(xù)樣本點(diǎn),本文方法的計(jì)算效率和其他算法的計(jì)算效率相同,計(jì)算精度有顯著提升。
表1 趨勢(shì)函數(shù)的計(jì)算結(jié)果(測(cè)試函數(shù)1)
表2 各種計(jì)算結(jié)果(測(cè)試函數(shù)1)
測(cè)試函數(shù)2來(lái)源于文獻(xiàn)[13],有:
0.1(x1-3)2+0.1(x2-2)2
(8)
圖3為測(cè)試函數(shù)2的真實(shí)響應(yīng)值的等高線圖,圖4為本文方法給出的響應(yīng)值等高線圖。對(duì)比圖3、圖4可知,IKM的響應(yīng)值與真實(shí)函數(shù)的響應(yīng)值總體趨勢(shì)吻合較好。
圖3 測(cè)試函數(shù)2真實(shí)響應(yīng)值等高線圖
圖4 基于IKM的測(cè)試函數(shù)2響應(yīng)值等高線圖
趨勢(shì)函數(shù)計(jì)算結(jié)果見(jiàn)表3,IKM與其他模型的總樣本數(shù)見(jiàn)表4。由表4可知,本文算法需要20個(gè)初始樣本和5個(gè)后續(xù)樣本點(diǎn),計(jì)算效率比其他算法略低,但計(jì)算精度有顯著提升。
表3 趨勢(shì)函數(shù)的計(jì)算結(jié)果(測(cè)試函數(shù)2)
表4 各種計(jì)算結(jié)果(測(cè)試函數(shù)2)
測(cè)試函數(shù)3來(lái)源于文獻(xiàn)[16],有:
(9)
趨勢(shì)函數(shù)的計(jì)算結(jié)果見(jiàn)表5,IKM與其他模型的總樣本數(shù)見(jiàn)表6。通過(guò)表5可知,當(dāng)代理模型整體趨勢(shì)函數(shù)階數(shù)等于3時(shí),趨勢(shì)擬合程度最高。由表6可知,本文算法需要40個(gè)初始樣本和5個(gè)后續(xù)樣本點(diǎn),雖然計(jì)算效率比其他算法略低,但是計(jì)算精度有顯著提升。
表5 趨勢(shì)函數(shù)的計(jì)算結(jié)果(測(cè)試函數(shù)3)
表6 各種計(jì)算結(jié)果(測(cè)試函數(shù)3)
在Kriging模型構(gòu)建過(guò)程中,首先利用不含交叉項(xiàng)的多項(xiàng)式響應(yīng)面法確定趨勢(shì)函數(shù)的階次,然后將趨勢(shì)函數(shù)中忽略的交叉項(xiàng)重新加入Kriging模型的整體趨勢(shì)函數(shù)中,通過(guò)遺傳算法篩選趨勢(shì)函數(shù)的基函數(shù)項(xiàng),排除整體趨勢(shì)函數(shù)中不必要的項(xiàng),降低Kriging模型的計(jì)算量的同時(shí)提高模型的計(jì)算精度。
算例結(jié)果表明:由于本文考慮了整體趨勢(shì)函數(shù),在計(jì)算量增加不多的情況下,計(jì)算精度明顯高于其他方法。然而值得注意的是,為了便于最佳基函數(shù)的選取,本文選取的初始樣本點(diǎn)數(shù)量等于全基函數(shù)的項(xiàng)數(shù),這將導(dǎo)致樣本點(diǎn)數(shù)量隨著變量個(gè)數(shù)的增加出現(xiàn)急劇增加的現(xiàn)象。對(duì)于這一問(wèn)題,需對(duì)基函數(shù)選取方法進(jìn)行完善,將在后續(xù)工作中進(jìn)行改進(jìn)。