摘 要:針對實(shí)際復(fù)雜結(jié)構(gòu)優(yōu)化中計(jì)算量大的問題,提出將支持向量機(jī)代理模型和粒子群算法應(yīng)用于工程優(yōu)化設(shè)計(jì)。采用實(shí)驗(yàn)設(shè)計(jì)選取合適的樣本,通過實(shí)驗(yàn)或數(shù)值仿真獲得性能響應(yīng),利用支持向量機(jī)構(gòu)建目標(biāo)函數(shù)和約束的代理模型,重構(gòu)原始的優(yōu)化問題,采用粒子群優(yōu)化算法對重構(gòu)的優(yōu)化模型進(jìn)行尋優(yōu),從而得到最優(yōu)解。以典型電子裝備功分器的結(jié)構(gòu)尺寸優(yōu)化為例,采用拉丁方實(shí)驗(yàn)設(shè)計(jì)和高頻電磁場仿真軟件HFSS獲取代理模型的訓(xùn)練樣本,建立功分器模型的幅度比、相位差和駐波三個(gè)目標(biāo)函數(shù)模型,并對該多目標(biāo)優(yōu)化問題進(jìn)行尋優(yōu)。結(jié)果表明該方法準(zhǔn)確、高效,為結(jié)構(gòu)優(yōu)化設(shè)計(jì)提供了一種新的思路。
關(guān)鍵詞:支持向量機(jī);粒子群優(yōu)化算法;優(yōu)化設(shè)計(jì);代理模型
中圖分類號:H122文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2009)06-2059-03
doi:10.3969/j.issn.1001-3695.2009.06.018
Study and application of support vector machines and particle swarm algorithm in optimization design
XIANG Guo-qi1,2, HUANG Da-gui1, YAN Zhi-jian3
(1.School of Mechatronics Engineering, University of Electronic Science Technology of China, Chengdu 610054, China; 2.School of Mecha-nical Engineering, Panzhihua University, Panzhihua Sichuan 617000, China; 3. Southwest Institute of Electronic Technology, Chengdu 610036, China)
Abstract:Aiming at addressing the optimization design problems of computationally intensive simulation models with implicit objective performance functions,this paper proposed a framework based on the support vector machine and particle swarm optimization for structure optimization design.Selected appropriate design parameter samples by experimental design theories,obtained the response samples from the experiments or numerical simulations.Used the SVM method to establish the metamodels of the objective performance functions and other constraints, and reconstructed the original optimal problem.The reconstructed metamodels was solved by PSO algorithm.Adopted the structure optimization of the microwave power divider as an example to illustrate this methodology.Obtained the learning samples from uniform design theory and the high frequency electromagnetic field finite element analysis codes (HFSS).Obtained three metamodels of the magnitude, phase and VSWR of the microwave power divider performance and solved the multi-objective optimization problem.The results show that this methodology is feasible and highly effective, and thus can be used in the optimum design of engineering fields.
Key words:support vector machine(SVM); particle swarm optimization(PSO); optimization design; metamodeling
在優(yōu)化設(shè)計(jì)問題中常遇到性能目標(biāo)與設(shè)計(jì)變量之間不具有顯式的函數(shù)關(guān)系式,且通常表現(xiàn)為高度非線性、多參數(shù)、復(fù)雜的優(yōu)化問題。因此,直接運(yùn)用優(yōu)化方法都會遇到困難。傳統(tǒng)的設(shè)計(jì)主要依靠經(jīng)驗(yàn)反復(fù)調(diào)用數(shù)值仿真模型進(jìn)行計(jì)算,存在耗時(shí)多、效率低,難以得到全局最優(yōu)等缺點(diǎn)。
響應(yīng)面、Kriging模型和神經(jīng)網(wǎng)絡(luò)是目前研究中最常用的代理模型[1~3]。響應(yīng)面易于實(shí)現(xiàn),但是逼近非線性問題的能力較差;Kriging雖然對非線性問題有較高的準(zhǔn)確度,但模型的獲取和使用難度較大;神經(jīng)網(wǎng)絡(luò)存在過學(xué)習(xí)現(xiàn)象,模型的精度和泛化能力依賴其結(jié)構(gòu)和大量的學(xué)習(xí)樣本,且結(jié)構(gòu)的選取缺乏理論指導(dǎo)。支持向量機(jī)(SVM)[4~6]建立在統(tǒng)計(jì)學(xué)VC維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理基礎(chǔ)上,較好地解決了小樣本、非線性、高維數(shù)、局部極小點(diǎn)等實(shí)際問題,具有很強(qiáng)的泛化能力,是一種專門解決小樣本問題的非參數(shù)回歸建模技術(shù)的有效方法。
粒子群優(yōu)化算法[7,8]高度并行,公式表達(dá)簡潔明快,計(jì)算簡單有效,能很好地反映全局信息,具有很強(qiáng)的魯棒性,尤其適合處理傳統(tǒng)搜索方法難以解決的復(fù)雜的非線性問題。
本文利用支持向量機(jī)代理模型替代耗時(shí)的仿真計(jì)算或?qū)嶒?yàn),極大地減少了計(jì)算量;同時(shí),采用粒子群優(yōu)化算法實(shí)現(xiàn)了功分器的結(jié)構(gòu)優(yōu)化設(shè)計(jì)。
1 支持向量機(jī)回歸模型
給定樣本集D={(xi,yi)|i=1,2,…,l}。其中:xi∈Rn為n維輸入樣本;yi∈R為輸出樣本。支持向量機(jī)的目的是通過訓(xùn)練樣本,用回歸函數(shù)f(x)=wΦ(x)+b擬合輸入與輸出之間的關(guān)系。其中Φ(x)表示輸入數(shù)據(jù)到高維特征空間的映射函數(shù)。根據(jù)結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,系數(shù)w和b由式(1)(2)估計(jì)。
R(C)=Remp+1/2‖w‖2=C/lli=1L(yi, f(xi))+1/2‖w‖2(1)
L(yi, f(xi))=|y-f(x)|-ε|y-f(x)|≥ε
0其他(2)
引入非負(fù)松弛因子ξi、ξi,利用最優(yōu)化方法的對偶原理,這樣函數(shù)的擬合問題轉(zhuǎn)換為如下優(yōu)化問題:
maximize W(α,α)=-1/2ni, j=1(αi-αi)(αj-αj)K(xi,xj)+ni=1(αi-αi)yi-ni=1(αi+αi)ε(3)
subject to ni=1(αi-αi)=0;0≤αi,αi≤C;i=1,2,…,n(4)
通過求解二次規(guī)劃得出所有的αi、αi;然后通過訓(xùn)練樣本中的支持向量求解出b;最后得到的支持向量機(jī)擬合函數(shù)為
f(x)=ni=1(αi-αi)K(x,xi)+b
(5)
其中:核函數(shù)K(xi,xj)=Φ(xi)×Φ(xj)。
支持向量機(jī)參數(shù)C是在結(jié)構(gòu)風(fēng)險(xiǎn)和樣本誤差之間作出折中,較大的C值允許較小的誤差,較小的C值則允許較大的誤差。不敏感參數(shù)ε與噪聲水平相關(guān),實(shí)際應(yīng)用中常常根據(jù)預(yù)先估計(jì)的噪聲水平來確定。對于多變量回歸問題,參數(shù)ε取值范圍如下:
ε∈[0,5σ]
σ2=kl1/5/(kl1/5-1)li=1(yi-i)2(6)
其中:通常k=3;l為樣本數(shù)據(jù)數(shù)量;i為令ε=0時(shí)訓(xùn)練SVR回歸模型,得到對應(yīng)各輸入的輸出。
懲罰參數(shù)C按下式給定最小值向上取值
Cmin=max(|+3σ|,|-3σ|)(7)
其中:和σ是數(shù)據(jù)集中y的均值和方差。
2 粒子群優(yōu)化算法
粒子群優(yōu)化算法(PSO)是一種進(jìn)化計(jì)算技術(shù),已經(jīng)被證明是一種很好的優(yōu)化方法,可應(yīng)用于一切能應(yīng)用遺傳算法(GA)的場合,而且在編碼和尋優(yōu)策略方面,PSO比GA更簡單有效。
PSO求解優(yōu)化問題時(shí),問題的解對應(yīng)搜索空間粒子的位置。每個(gè)粒子的狀態(tài)由兩個(gè)量描述,即當(dāng)前位置xi=(xi1,xi2, …,xim)和飛行速度vi=(vi1,vi2,…,vim)。每個(gè)粒子都有一個(gè)由優(yōu)化目標(biāo)函數(shù)決定的適應(yīng)值,對于第i個(gè)粒子,其所經(jīng)過的歷史最好位置記為Pi=(pi1,pi2, …,pim),也稱為個(gè)體極值pbest;整個(gè)群體中所有粒子發(fā)現(xiàn)的最好位置記為Pg=(g1,g2, …,gm),也稱為個(gè)體極值gbest。粒子就是根據(jù)這兩個(gè)極值來不斷更新自己的位置和速度。基本粒子群算法的進(jìn)化方程可描述為
vij(k+1)=wvij(k)+r1c1(pi-xij(k))+r2c2(gj-xij(k))
xij(k+1)=xij(k)+vij(k+1)(8)
其中:i=1,2,…,n,n表示粒子的總個(gè)數(shù); j=1,2,…,m,m表示粒子的維數(shù),由具體的優(yōu)化問題而定;k表示第k代;w為慣性因子,取值在0.1~0.9;r1、r2為[0,1]之間的隨機(jī)數(shù);c1、c2為學(xué)習(xí)因子,通常取為[0,2]。
3 基于SVM-PSO的結(jié)構(gòu)優(yōu)化
3.1 優(yōu)化理論模型
一般多目標(biāo)結(jié)構(gòu)優(yōu)化模型的數(shù)學(xué)形式為
minimize f=[f1(x), f2(x),…, fi(x),…, fn(x)]
subject to gj(x)≤0,xk min≤xk≤xk max(9)
i=1,…,n; j=1,…,m; k=1,…,p
其中:fi(x)為第i個(gè)目標(biāo)函數(shù);gj(x)為第j個(gè)約束函數(shù);xkmin、xkmax為第k維設(shè)計(jì)變量xk的上下界。
目標(biāo)函數(shù)和約束函數(shù)是設(shè)計(jì)變量的函數(shù),一般不具有顯式的表達(dá)式,通常用實(shí)驗(yàn)或數(shù)值仿真方法計(jì)算。采用支持向量機(jī)回歸模型替代,則優(yōu)化模型表示為
minimizeF=[Y1,Y2,…,Yi,…,Yn],Yi=fi(x);i=1,2,…,n
gj(x)≤0; j=1,2,…,l
subject to {Gj=gj(x)}≤0;j=l,…,m
xk min≤xk≤xk max;k=1,2,…,p(10)
其中:Yi、Gj分別為第i個(gè)目標(biāo)函數(shù)和第j個(gè)約束函數(shù)的響應(yīng)面近似值,前l(fā)個(gè)約束為常規(guī)約束,后m-l個(gè)約束為支持向量機(jī)響應(yīng)面約束。
3.2 SVM-PSO在結(jié)構(gòu)優(yōu)化中的應(yīng)用流程
支持向量機(jī)代理模型建立之前,首先要選取樣本點(diǎn),并通過數(shù)值實(shí)驗(yàn)得到這些樣本點(diǎn)的響應(yīng)值。樣本點(diǎn)選取的好壞對后面的近似分析起著非常重要的作用。通常用實(shí)驗(yàn)設(shè)計(jì)方法(DOE)來選取樣本點(diǎn),如中心復(fù)合法、正交設(shè)計(jì)、拉丁超立方設(shè)計(jì)等,目的是以最少的實(shí)驗(yàn)數(shù)來獲取響應(yīng)和因素之間最多的信息,以便快速準(zhǔn)確地初始化近似模型。
基于支持向量機(jī)代理模型和粒子群優(yōu)化算法的基本過程如下:
a)DOE研究。探索設(shè)計(jì)空間,選擇樣本點(diǎn),選擇最具影響力的變量作為設(shè)計(jì)變量。
b)近似分析。目標(biāo)與約束的近似,即通過DOE的分析結(jié)果構(gòu)造支持向量機(jī)代理模型。
c)更新模型。通過實(shí)際仿真分析及時(shí)更新模型、提高精度。
d)支持向量機(jī)代理模型的粒子群優(yōu)化算法對設(shè)計(jì)空間的全局尋優(yōu)。
基于支持向量機(jī)代理模型的粒子群優(yōu)化算法流程如圖1所示。
4 算例
以反饋系統(tǒng)的功分器結(jié)構(gòu)優(yōu)化為例,驗(yàn)證該方法的有效性。功分器結(jié)構(gòu)和電磁場計(jì)算模型如圖2、3所示。
功分器優(yōu)化設(shè)計(jì)的理想目標(biāo)值為兩輸出端口的幅度比、相位差以及駐波值分別滿足0.5、0和1。結(jié)構(gòu)設(shè)計(jì)變量有L、R等10個(gè),其取值范圍如表1所示。
表1 結(jié)構(gòu)設(shè)計(jì)變量的取值范圍
設(shè)計(jì)變量取值范圍/mm設(shè)計(jì)變量取值范圍/mm
為了利用SVM建立設(shè)計(jì)結(jié)構(gòu)變量(輸入)與目標(biāo)性能(輸出)之間的非線性映射關(guān)系,本算例選用均勻?qū)嶒?yàn)設(shè)計(jì)采樣數(shù)據(jù)實(shí)驗(yàn)點(diǎn)[9]。首先對功分器的各設(shè)計(jì)變量均取25個(gè)水平,進(jìn)行10因子25水平均勻?qū)嶒?yàn)設(shè)計(jì),獲得25組設(shè)計(jì)變量的數(shù)據(jù)作為高頻電磁場有限元軟件HFSS的輸入,分別計(jì)算出功分器的駐波、幅度比和相位差。同理,再設(shè)計(jì)一個(gè)10因子11水平的均勻?qū)嶒?yàn)設(shè)計(jì),獲得11組數(shù)據(jù)。然后分別對25組學(xué)習(xí)數(shù)據(jù)和11組校驗(yàn)數(shù)據(jù)進(jìn)行歸一化處理,從而獲取SVM的學(xué)習(xí)樣本和校驗(yàn)樣本。
為了驗(yàn)證SVM代理模型的有效性,將檢驗(yàn)數(shù)據(jù)對該SVM模型進(jìn)行測試,獲得SVM代理模型的均方誤差(MSE)。表2給出了三個(gè)SVM代理模型訓(xùn)練的效果。結(jié)果充分表明SVM建立了正確的函數(shù)非線性映射關(guān)系。
功分器優(yōu)化屬于多目標(biāo)優(yōu)化問題。采用權(quán)重系數(shù)變換法,對三個(gè)目標(biāo)函數(shù)賦予相同的權(quán)重,轉(zhuǎn)換為單目標(biāo)優(yōu)化問題。
5 結(jié)束語
本文將支持向量機(jī)和粒子群算法應(yīng)用于結(jié)構(gòu)優(yōu)化設(shè)計(jì),探討了基于支持向量機(jī)的結(jié)構(gòu)優(yōu)化模型的構(gòu)建方法,采用粒子群算法對其優(yōu)化模型求解。算例表明,該方法準(zhǔn)確、高效、可行。實(shí)驗(yàn)設(shè)計(jì)和數(shù)值計(jì)算的樣本選擇、支持向量機(jī)代理模型構(gòu)建和粒子群優(yōu)化過程可實(shí)現(xiàn)完全分離,減小了優(yōu)化計(jì)算量,為結(jié)構(gòu)優(yōu)化問題提供一種新的思路。
參考文獻(xiàn):
[1]MYERS R H,MONTGAMERY D C,VINING G G,et al.Response surface methodology:a retrospective and literature survey[J].Journal of Quality Technology,2004,36(1):53-77.
[2]WACKERRNAGEL H. Multivariate geo-statistics[M]. Heidelberg: Springer-Verlag, 1995.
[3]李爍,徐元銘,張俊.復(fù)合材料加筋結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)響應(yīng)面優(yōu)化設(shè)計(jì)[J].機(jī)械工程學(xué)報(bào),2006,42(11):115-119.
[4]VAPNIK V N.Statistical learning theory[M]. New York: Springer, 1998.
[5]SCHOLKOPF B, SMOLA A.New support vector algorithm[J].Neural Computation,2000,12(5):1207-1245.
[6]MARCELINO L, IGNACIO S. Support vector regression for the simultaneous learning of a multivariate function and its derivatives[J].Neurocomputing,2005,69(8):42-61.
[7]KENNEDY J, EBERHART R C. Particle swarm optimization[C]//Proc of IEEE International Conference on Neural Networks.Pisca-taway,NJ:IEEE Press,1995:1942-1948.
[8]EBERHART R C, KENNEDY J. A new optimizer using particle swarm theory[C]//Proc of the 6th International Symposium on Micro Machine and Human Science.Nagoya, Japan: IEEE Press,1995:39-43.
[9]方開泰.均勻設(shè)計(jì)與均勻設(shè)計(jì)表[M].北京:科學(xué)出版社,1994.