孫建勛 潘 雷 谷良賢
西北工業(yè)大學,西安,710072
敏感性分析是多學科設(shè)計優(yōu)化的重要工具,可分為一維函數(shù)和多維函數(shù)的敏感性分析。目前,常用的一維敏感性分析方法有差商法、復步長法、逆波蘭表示法、符號分析法和自動微分法等5種[1],而多維敏感性分析則有敏感性矩陣法、滯后耦合伴隨法等[2]。這些方法在進行函數(shù)敏感性計算時都需要進行大量函數(shù)值計算,從而使得敏感性分析的代價極其巨大。研究表明,在一次優(yōu)化循環(huán)中,有70%以上的計算費用用于函數(shù)敏感性分析[3]。因而,降低敏感性分析費用,尋找快速有效的敏感性分析方法一直是敏感性分析的一個重要研究方向[4]。
響應面法是一種常用的近似技術(shù),它通過對函數(shù)的一系列已知點進行擬合從而推測函數(shù)的變化趨勢[5]。本文結(jié)合響應面法特點,提出一種基于響應面法的函數(shù)敏感性分析方法。該方法計算簡單,適于快速敏感性分析。在優(yōu)化過程中引入該方法能夠減少目標函數(shù)計算次數(shù),加快優(yōu)化收斂過程,減少優(yōu)化費用。
基于多項式的響應面法通常采用高階多項式,其中最常用的是二階響應面,也稱二次響應面。用η表示二次響應面模型的響應量,則具有n個變量的二次響應面函數(shù)為
當給定一組已知數(shù)據(jù)時,則可利用最小二乘法對式(1)進行求解。
將待擬合函數(shù)y=f(X)在X0點展開,得
其中,▽f(X0)為函數(shù)f在X0點的梯度,即敏感性;Hf(X0)為函數(shù)f在X0點的Hessian矩陣;o(‖X‖3)表示余項為三階無窮小量。對比式(1)與式(2)可知,多項式響應面(response surface method,RSM)近似的主要思想仍為Taylor展開的思想,響應面的系數(shù)從某種程度上近似反映了原函數(shù)的一階梯度與二階梯度。
實際問題中,函數(shù)往往以隱函數(shù)的形式表示,因而有必要研究隱函數(shù)情況下的敏感性與響應面系數(shù)的關(guān)系??紤]最一般的情況,狀態(tài)變量u為該學科設(shè)計變量Xd、耦合設(shè)計變量Xs以及耦合狀態(tài)變量Ys的函數(shù),即u=f(Xd,Xs,Ys),對應的響應面可描述為
式中,β為待定系數(shù)。
對式(3)求全微分:
則在任一點(Xd,Xs,Ys)處,根據(jù)全微分關(guān)系du=▽fdx可知
式(5)即為響應面法計算任一點梯度的近似計算公式。
需要注意的是,在進行系統(tǒng)全局敏感性計算時,耦合狀態(tài)變量Ys的微分dYTs需通過各個學科的響應面進行求解。分別按上述方法對每個子系統(tǒng)進行處理,并假定一個系統(tǒng)只含有一個狀態(tài)變量,則n個子系統(tǒng)中共含有n個dYs,構(gòu)成一個n元線性方程組。解此方程組則可求得各學科的敏感性。
顯然,這種基于響應面法的敏感性分析方法的優(yōu)點在于計算簡單,只需要根據(jù)響應面的系數(shù)求解若干個由式(5)組成的線性方程組,避免了大量調(diào)用原函數(shù),尤其是對于存在狀態(tài)變量耦合的系統(tǒng),可以避免狀態(tài)變量的迭代求解過程。因而該方法簡單快捷,可用于快速敏感性分析。
采用一個三元顯函數(shù)算例(式(6))來測試基于RSM的函數(shù)敏感性計算能力:
圖1為部分參數(shù)固定情況下的函數(shù)圖像,由圖1可知,該函數(shù)的敏感性變化范圍比較大,變化情況多樣,適于敏感性計算性能測試。
圖1 x2、x3 固定時測試函數(shù)y(x1)圖像
采用二階分塊響應面近似方法[6],首先檢驗該RSM曲面擬合精度。在設(shè)計空間中按照均勻試驗設(shè)計方法選取45個試驗點,其中x1維5個測試點,其他兩維都是3個測試點。圖2為測試結(jié)果,其中,大部分計算結(jié)果都在解析解附近,近似結(jié)果與解析結(jié)果的最大誤差不超過5%。因而,采用分塊RSM有效地擬合了原設(shè)計空間,可以用于梯度近似計算。
圖2 RSM近似性能圖像
在整個設(shè)計空間內(nèi)按照均勻試驗設(shè)計的方法選取112個測試點,其中x1維7個測試點,其他兩維都是4個測試點。圖3給出了RSM在測試點處計算得到的近似敏感性值和解析值的比值。表1給出了圖3部分測試點的解析結(jié)果、近似結(jié)果和計算誤差。
表1 圖3中的典型點敏感性結(jié)果
圖3 RSM梯度近似結(jié)果和解析值比值
圖3表明,RSM方法近似梯度計算結(jié)果整體性能較好,但存在部分點近似結(jié)果誤差較大。結(jié)合表1可以看出,當解析梯度數(shù)值較大時,RSM方法近似梯度計算得到的結(jié)果和解析結(jié)果誤差不大,如點35、點89處的結(jié)果。而當解析結(jié)果接近0時,即當原函數(shù)接近其極點時,RSM方法計算結(jié)果和原函數(shù)的解析結(jié)果會有較大的相對誤差,甚至出現(xiàn)符號反向的情況,但此時絕對誤差卻很小,如點67處的x1維梯度值,解析結(jié)果為0.01,近似結(jié)果為-0.009,兩者相對誤差高達190%,而絕對誤差小于0.02,不及該點其他維梯度絕對誤差的1%。同樣,點73處x1維梯度值的解析結(jié)果和近似結(jié)果有著較大的相對誤差,但兩者的絕對誤差則很小,不足該點處其他維梯度絕對誤差的0.5%。與其他維敏感性相比,該維的計算誤差可以忽略。
圖4給出了在x2、x3維固定時,RSM方法沿x1維對3個自變量的梯度計算結(jié)果與解析結(jié)果的比值變化圖。x2、x3維的近似梯度計算結(jié)果比較滿意,除x3維個別點誤差在15%附近外,其余結(jié)果誤差都在10%以內(nèi)。對該結(jié)果進行分析可得出與圖3同樣的結(jié)論。
圖4 x1維近似梯度和解析梯度的比值
敏感性分析的一個重要用途是用于優(yōu)化設(shè)計,下面用一個實例來檢驗基于響應面近似的敏感性快速分析策略的性能。該算例用于計算在兩沖量作用下共面橢圓軌道轉(zhuǎn)移問題,如圖5所示。選取優(yōu)化變量為轉(zhuǎn)移軌道的近地點幅角ω、半長軸a和偏心率e,優(yōu)化目標為最小化軌道轉(zhuǎn)移的能量需求,模型表述為
式中,下標0表示初始軌道參數(shù);下標f表示終端軌道參數(shù)。
圖5 兩沖量共面橢圓軌道轉(zhuǎn)移
在上述條件下每次軌道轉(zhuǎn)移需要的沖量大小計算過程見文獻[7]。
對問題歸一化處理,設(shè)初始軌道與目標軌道的半長軸長度均為0.5、近地點幅角分別為0、-π/6,偏心率均為0.1。選用序列二次規(guī)劃法進行優(yōu)化計算,并分別采用有限差分法和基于RSM的敏感性快速計算法獲得優(yōu)化過程需要的梯度信息,當函數(shù)敏感性小于0.1時采用有限差分法獲得敏感性。優(yōu)化得到的最優(yōu)轉(zhuǎn)移軌道參數(shù)為(a,w,e)= (5.438,0.499,0.001),此時需要的轉(zhuǎn)移能量大小為0.176。
圖6所示為兩種方法的收斂過程,該圖表明,兩種方法中目標函數(shù)的收斂過程很接近,這表明基于RSM的敏感性分析法可有效用于優(yōu)化過程。
圖6 優(yōu)化收斂過程
由圖6b可知,基于RSM的敏感性近似優(yōu)化過程的目標函數(shù)計算次數(shù)要少于基于有限差分優(yōu)化過程的目標函數(shù)計算次數(shù)。主要原因是,響應面法在迭代開始大量計算目標函數(shù),生成響應面。在迭代后期采用快速敏感性分析法,不需要計算目標函數(shù)。有限差分法則自始至終都需要進行目標函數(shù)計算?;赗SM近似的優(yōu)化過程總共循環(huán)了39次,目標函數(shù)計算次數(shù)為237;基于有限差分的優(yōu)化過程總共循環(huán)了44次,目標函數(shù)計算次數(shù)為244。總的來看,采用RSM敏感性近似計算的優(yōu)化過程目標函數(shù)計算次數(shù)要少。
(1)RSM在大部分情況下能夠有效近似目標曲面的敏感性。但在目標曲面極點附近,即目標曲面的敏感性較小時,RSM敏感性近似結(jié)果較差。
(2)基于RSM的敏感性計算方法能夠有效用于優(yōu)化過程,減少優(yōu)化過程的目標函數(shù)計算次數(shù),加快收斂過程,并得到理想結(jié)果。
(3)基于RSM方法的函數(shù)敏感性分析計算簡單,在非極點附近計算精度較高,是一個良好的快速敏感性分析工具。
[1]蔡毅,邢巖,胡丹.敏感性分析綜述[J].北京師范大學學報(自然科學版),2008,44(1):9-16.
[2]鐘毅芳,陳柏鴻,王周宏.多學科綜合優(yōu)化設(shè)計原理與方法[M].武漢:華中科技大學出版社,2006.
[3]Edmond P,Pelletier D,Etienne S.A Sensitivity E-quation Method for Compressible Subsonic Laminar Airfoil Flows[C]//23rd AIAA Applied Aerodynamics Conference.Ontario,Canada,2005:AIAA 2005-4601.
[4]Martins J,Kroo I,Alonso J.An Automated Method for Sensitivity Analysis Using Complex Variables[C]//38th Aerospace Sciences Meeting and Exhibit.Reno,NV,2000:AIAA-2000-0689.
[5]余大勝,康海貴.響應面法計算結(jié)構(gòu)可靠度的回顧[J].工業(yè)建筑,2006,36:238-242.
[6]潘雷,谷良賢.分塊響應面法研究[J].計算機工程與應用,2009,45(19):37-40.
[7]楊嘉墀.航天器軌道動力學與控制[M].北京:宇航出版社,2001.