胡朝江,楊全法,李曉沖,袁有志
(北京航空技術研究中心,北京 100076)
最優(yōu)控制問題的計算方法很多,歸納起來,可以分為直接法和間接法兩大類[1]。直接法中的參數(shù)化就是通過把控制變量、狀態(tài)變量和時間參數(shù)化的方法來進行求解,這種方法具有簡單、直觀的特點。但參數(shù)化方法也存在很多不足之處,其中最重要的一點就是,利用參數(shù)化方法轉化得到的非線性規(guī)劃問題由于維數(shù)過高,求解難度較大,因此嚴重影響了這種算法的推廣應用。為此,有必要對該算法進行改進,從而使該算法更適合于求解最優(yōu)控制問題。
一般的最優(yōu)控制問題可描述為:確定隨時間而變化的容許控制向量,使得由一組非線性微分方程所描述的動力學系統(tǒng)由初始狀態(tài)0過渡到終端狀態(tài)f,并同時使某一性能指標J達到最小,如能量消耗最小,過渡時間最短等[1]。
參數(shù)化方法求解最優(yōu)控制問題的基本思路是將控制狀態(tài)的時間歷程參數(shù)化,從而得到一個高維非線性規(guī)劃子問題,通過對轉化而得的高維非線性規(guī)劃問題的求解,從而獲得對應的最優(yōu)控制問題的解。
由于對高維非線性規(guī)劃問題求解難度很大,因此影響了該算法的推廣使用。為此,經過分析認為,對一類最優(yōu)控制問題在對其參數(shù)進行離散化時,可以僅對其控制變量的時間歷程參數(shù)化,而不需對其狀態(tài)變量的時間歷程也參數(shù)化,就極大地降低了轉化而得的非線性規(guī)劃子問題的維數(shù),從而使求解變得容易。
改進算法僅對控制變量參數(shù)進行離散化處理,而對狀態(tài)變量的值,在已知狀態(tài)初值和控制規(guī)律的情況下,則可通過積分動力學微分方程進行求解。因此,最優(yōu)控制問題就轉換成了以節(jié)點處的控制變量取值為變量的非線性規(guī)劃子問題,而動力學微分方程也轉換為以節(jié)點處的控制變量值為自變量的非線性約束條件??紤]到將要求解的最優(yōu)控制問題的終端時間不給定,為此,由最優(yōu)控制理論可知,對應的泛函指標可采用下面的形式
式中:J為目標函數(shù);x為狀態(tài)向量;u為控制向量;T為終端時間;L為x,u和時間t的標量函數(shù)。為此,對應的改進算法如下:
1.2.1 將終時不給定的最優(yōu)控制問題化為終時給定的最優(yōu)控制問題,方法是:
1)設終端時間T為可變參數(shù),引入新的時間變量τ∈[0,1],定義 t=Tτ;
2)引入增廣狀態(tài)變量及狀態(tài)方程:xn+1=TL(x,u,t),xn+1(0)=0,將目標泛函化為:min J=J[x(1)],x(1)=[x1(1),…,xn(1),xn+1(1)]T。
1.2.2 將對應的最優(yōu)控制問題化為非線性規(guī)劃子問題,方法是:
1)將時間區(qū)間τ∈[0,1]m等分,得到m+1個節(jié)點;
2)引入一組向量 pi作為節(jié)點 τi,i=0,1,…,m-1處控制變量的估計值,節(jié)點之間控制變量值由相鄰兩點線性插值確定。
1.2.3 建立的非線性規(guī)劃子問題目標函數(shù)為
即此時的目標函數(shù)變成了以節(jié)點處的控制變量值pi和終端時間T為自變量的函數(shù),其中控制和狀態(tài)變量滿足相應的約束條件。
1.2.4 求解相應的非線性規(guī)劃子問題
由于所轉化而成的非線性規(guī)劃子問題與同時離散狀態(tài)變量和控制變量時所轉化而成的非線性規(guī)劃子問題相比,所得的非線性規(guī)劃子問題的維數(shù)大幅降低,因而極大地降低了求解問題的維數(shù),因此,用一般的非線性規(guī)劃問題求解方法就可以順利求解。對要求解的非線性規(guī)劃子問題,采用了序列二次規(guī)劃算法進行求解,求解的基本步驟如下[2]:
1)初始化:給定最優(yōu)控制問題的微分方程階數(shù)n,節(jié)點數(shù)m,控制變量階數(shù)q,狀態(tài)初值x0,狀態(tài)終值xf,控制變量在節(jié)點處的初始估計值,積分時間參數(shù)T估計值,控制變量及時間T的上、下限約束等;
2)梯度及函數(shù)計算:
計算函數(shù) x(1)及約束 x(1)-xf,這里=[p0,p1,…,pm-1,T]
3)求解二次規(guī)劃子問題的搜索方向△yk;
4)修正當前解 yk+1=yk+ △yk;
5)若當前解滿足誤差要求,則最佳解求出,停止計算。否則,若當前迭代次數(shù)小于最大迭代次數(shù),則繼續(xù)迭代,否則,停止計算,計算失敗。
低空風切變對飛機的飛行安全威脅很大[3],為此利用改進算法求解了飛機在低空風切變中的最優(yōu)著陸軌跡控制問題。為了簡化問題的求解,假設飛機在鉛垂平面內運動,風場也作用在飛機運動的鉛垂平面內,則在風切變中的飛機質心運動方程可描述如下
方程中:m為飛機質量;g為重力加速度;V為飛行速度;P為發(fā)動機推力,為油門位移和飛行速度及高度的函數(shù);Y、X分別為飛機升力、阻力,均為迎角、飛行速度、飛行高度及機翼面積的函數(shù);θ為飛機下滑的軌跡角;α為飛機迎角;x、h為分別為飛機在水平和垂直方向的位移;ux,uy分別為風速在水平和垂直方向的分量。
風切變模型具有下面的形式[4]
式中:ux0和uy0分別表示水平和垂直風幅值;T0為穿越下沖暴流的總飛行時間。
飛機在風切變中著陸的最優(yōu)控制問題可描述為通過對迎角α和油門δp的適當控制,使飛機能夠穿越風切變區(qū)并安全著陸。飛機狀態(tài)變量初值和終值分別為
控制變量滿足的上下限約束條件
式中罰系數(shù)k的取法如下
風場強度取為(ux0,uy0)=(16 m/s,8 m/s)。
利用改進的參數(shù)化算法求解所得的結果如圖1~圖3所示。
圖1 迎角控制律Fig.1 Control law about AOA
圖2 油門控制律Fig.2 Control law about throttle
圖3 風切變中的飛行軌跡Fig.3 Flight path in wind shear
其中圖1為求得的迎角控制規(guī)律,圖2為求得的油門控制規(guī)律,圖3為相應的飛機在風切變中著陸的軌跡。圖3中虛線為正常無風情況下的著陸軌跡,點化線為風場強度為(ux0,uy0)=(0,2 m/s)時,仍按無風情況下進行控制的著陸軌跡,實線為風場強度為(16 m/s,8 m/s)時按改進算法求出的飛機在風切變中的著陸軌跡。由圖3的點劃線可知,當飛機遭遇風切變時,如不采取相應的控制方法,則即使遭遇較弱的風切變流場,飛機也很難安全著陸,主要表現(xiàn)為飛機提前接地。而由圖3的實線可知,如采取正確的控制方法,即使飛機遭遇較強的風切變,也可以保證安全著陸。同時該算例也說明,本文提出的最優(yōu)控制算法,可以順利求解一類最優(yōu)控制問題。
最優(yōu)控制問題是航空航天以及國民經濟建設的許多領域都會面臨的問題,如何求解最優(yōu)控制問題是人們普遍關心的話題。已有的求解方法中,每種方法各有其利弊,本文針對直接求解方法的不足進行了必要的改進,改進后的算法一是大幅降低了轉換而得的非線性規(guī)劃子問題的維數(shù),降低了問題的求解難度;二是縮短了求解最優(yōu)控制問題的時間,有利于實現(xiàn)實時最優(yōu)控制,三是有利于求解多控制變量問題。因此,通過改進,非常有利于參數(shù)化算法在求解最優(yōu)控制問題上的推廣應用。
[1]呂顯端.最優(yōu)控制理論基礎[M].北京:科學出版社,2008.
[2]張立衛(wèi).最優(yōu)化方法[M].北京:科學出版社,2010.
[3]胡朝江.大風機風切變告警系統(tǒng)[J].中國民航大學學報,2008,26(5):23-25.
[4]MIELE A,WANG T.Optimal Landing Trajectories in the Presence of Windshear[J].Journal of optimization and applications,1988,58(2):165-202.