杜振華 諶海云 曾 歡 石明江
1. 西南石油大學電氣信息學院,成都610500
2. 中海油節能環保服務有限公司,天津300457
多目標系統最優控制主要研究存在多個目標泛函時,在給定的狀態約束條件下尋求最優控制律并達到決策者所需的最優。在工程實際中,多個指標之間往往相互沖突、相互矛盾,一方利益的獲得會導致另一方利益的受損。決策者則會通過自身的經驗給予各個指標不同的權重。這種傳統的設計方法偏離了實際數值意義上的最優。
從上世紀90年代起,一些學者提出了針對二次性能指標的多目標最優控制,諸如Khargnnekar 和Rotea 的凸優化方法[1],Salukvadze 的向量值法[2],Shtessel 的比例損耗原理及我國學者張成科的小波逼近法[3]。這些傳統方法的數值計算十分復雜,且對問題性質有著要求。
進化計算的發展對復雜問題的尋優提供了有效方法,本文將現代控制論與多目標進化算法結合,通過構建免疫克隆選擇算法求解多目標情況下的最優控制問題。并針對具有較多先驗知識的決策者,提出了一種用層次分析法分配多目標之間權重的方法。
隨著空間技術的發展及最短時間問題的提出,最優控制理論逐漸發展起來,其基本數學模型如下:
一個被控系統可以用下式表征

式中,x 描述被控對象的n個獨立變量,u 為控制量,f(x,u,t)是描述被控對象動態特征的n 維矢值函數。則存在一個容許控制ui(t),i = 1,2,…,r;ui(t)≤M,使得性能指標取極小。

那么多目標的系統則表述為:
尋求最優控制律ui(t),i = 1,2,…,r,同時使得如下指標取極小值

層次分析法(Analytical Hierachy Process,AHP)是一種整理和綜合人們主觀判斷的客觀分析方法,也是一種定性與定量分析相結合的系統分析方法,它在經濟學領域的應用較為普遍,但對于控制系統而言也可以借鑒這一方法。對于具有大量先驗經驗的工程師而言,已經對多個目標之間相互比對的重要程度有了主觀意見,就可以采用層次分析法客觀的確定主觀決策的權重大小。
層次分析法的重點就是建立判斷矩陣并求解判斷矩陣的最大特征根λmax對應的歸一化特征向量W,然后對判斷矩陣進行一致性檢驗,如果檢驗通過,則該特征向量就是各目標的加權系數。下面以一個三性能指標的二階積分系統為例說明層次分析法在優化控制中的使用方法。
假設如下一個二階積分系統

其性能指標為

首先根據Saaty 教授提出的標度法(如表1 所示)對各目標相對于其他目標的兩兩比較重要性來確定判斷矩陣B。然后通過和積法(或方根法)求判斷矩陣B 的最大特征根λmax,再由式(8)和(9)求出一致性指標CI 和一致性比率CR,檢驗B 的一致性,最后求λmax的歸一化特征向量W。

表1 標度法
采用和積法求取判斷矩陣B 的最大特征根λmax及其歸一化特征向量W,其步驟如下:
1) 將判斷矩陣B 的每一列元素作正規化處理

2) 將每一列經正規化后的判斷矩陣按行相加


則W = (W1,W2,…,Wr)T即為B 的最大特征根λmax對應的歸一化特征向量。
4) 計算判斷矩陣B 的最大特征根

判斷矩陣B 的滿意一致性可用一致性比率CR檢驗

稱CI 為判斷矩陣B 的一致性指標,CI 越小,B的最大特征根λmax越接近完全一致性判斷矩陣的最大特征根。當CR <0.1 時,則判斷矩陣B 具有滿意一致性。否則,判斷矩陣B 不具有滿意一致性,需要對判斷矩陣B 進行調整。
按照上述方法對假設的二階積分系統的性能指標進行權值計算,首先根據3個指標重要性的兩兩比較來建立判斷矩陣B,如表2 所示。然后用和積法進行計算,可得λmax= 3.009 ,RI = 0.580 ,CI =0.005 ,CR = 0.09 <0.1 ,通過一致性檢驗,得到各目標的權值為W1= 0.540 ,W2= 0.163 ,W3=0.297 。

表2 判斷矩陣
則該二階積分系統的性能指標為

在一些工程實際中,工程師對各指標的重要程度不具有先驗經驗或者各專家關于指標重要程度有分歧,則可通過交互式決策方法供決策者來協調多項指標。
對于多目標優化問題而言,目標解的好壞無法用傳統意義上的“好壞”來衡量,這意味著不能采用傳統的基于導數信息的優化技術或傳統的啟發式隨機搜索方法(模擬退火、遺傳算法、人工免疫算法等)來求解該問題。因此,多目標優化算法的提出是解決此類問題的關鍵,區別于傳統的計算方法,本文采用改進的免疫克隆選擇多目標優化算法來求解這類問題。
多目標優化問題(MOP)可用如下數學表達式描述:
給定決策向量X = (x1,x2,…,xn)∈Ω,它滿足下列約束

設有r個優化目標,且這r個優化目標是相互矛盾的,一方收益會導致一方利益受損,則優化目標可以表示為

尋求X*= ()使得F(X*)最優,且滿足式(10)的2個約束條件。在此基礎上給出如下幾個重要定義。
定義1 如果X 滿足約束條件(10),則稱X 為可行解。所有可行解組成的集合稱為可行解集合,記為Ω。
定義2 設X 和X*是多目標優化問題候選解集中的任意2個非等值個體,假定X*是非支配的(Pareto-占優),則需要滿足如下條件:
1)對于所有的子目標,X*不比X 差,即fk(X*)≤fk(X),(k = 1,2,…,r);
2)至少存在一個子目標,使得X*比X 好,即?q ∈{1,2,…,r}, 至 少 有 一個 子 目 標 使fq(X*)<fq(X)。其中,r 為子目標的數量,此時可用“ >”表示兩者的關系,即X*>X。
定義3 若X*∈Ω,且不存在其他的使得成立,且其中至少一個是嚴格不等式,則稱X*是minF(X)的Pareto最優解
定義4 Pareto 最優解集在其目標函數空間中的表現形式稱為Pareto 邊界(或稱為Pareto front),Pareto 最優邊界PF*定義為:

免疫是生物體的一種生理機能,生物依靠這種功能識別“自己”和“非己”成分,從而破壞和排斥進入人體的抗原物質,或人體本身所產生的損傷細胞和老化細胞等,以維持人體的健康。本文所用算法主要模仿了脊椎動物的免疫應答及免疫記憶過程。圖1 為人體免疫應答過程的一個簡化示意圖,為更清楚的描述這一過程與算法的對應關系,現給出以下定義。

圖1 生物免疫應答過程
抗原:抗原(antigen)是指能刺激機體免疫系統引發免疫應答而產生抗體和致敏淋巴細胞,并能與之發送特異性結合而產生免疫效應的物質。在多目標優化問題中,抗原定義為目標函數或目標函數的變換函數。
抗體:抗體是指免疫系統受到抗原刺激后,B 淋巴細胞轉化為漿細胞并產生能與抗原發生特異性結合的免疫球蛋白(immunoglobulin,Ig),該免疫球蛋白即為抗體。在人工免疫系統中一般指問題的候選解,與進化算法中的個體相似,抗體的集合稱為抗體群。
設抗體a 代表一個候選解,a = (a1,a2,…,an),那么一個規模為N 的抗體群定義為:A = {a1,a2,…,aN}。
抗體-抗原的親和力:抗體和抗原的作用是通過力或化學鍵實現的,抗體單個結合部位與單價抗原(或表位)的結合力稱為親和力(affinity)。反映整體抗體分子與抗原之間總的結合力稱為親合力(avidity)。在單目標的人工免疫系統一般是指抗原的適應度,在多目標情況下可以是抗體的支配與非支配情況或序值。
抗體-抗體親和度:抗體與抗體間的結合能力稱之為抗體-抗體親和度。在人工免疫系統中,一般指候選解間的距離。
克隆:克隆是指通過無性生殖而產生遺傳上均一的生物群,即具有完全相同的遺傳物質組成的一群細胞或者生物個體。在多目標情況下克隆主要實現候選解的復制,克隆比通常取5 ~10。
克隆操作Rcc 定義為:當對第it 代群體A(it)={a1(it),a2(it),…,aN(it)}進行克隆操作時,可以表示為:

3.2.1 算法編程及測試
(1)編碼
對于連續變量而言,二進制編碼存在嚴重缺陷,傳統的二進制編碼,在處理個體擁擠距離時,通常是采用相似度函數進行判別。但是相似度函數的判別結果有時和實際情況大相徑庭。例如1000000000和0111111111 這2個個體,在表現型空間中是相鄰的點,具有最小的歐氏距離,但是在基因型空間中卻具有很大的Hamming 距離。因此本文采用實數編碼。
對于函數優化問題,實數編碼最為有效,并且已經證實,在函數優化和約束優化領域,實數編碼比二進制和Gray 編碼更為有效。實數編碼的遺傳算子大體上有4 類:傳統算子、算數算子、基于方向的算子和隨機算子。本文采用傳統算子。
(2)進化算子
高斯變異(Gaussian Mutation)是改進算法對重點搜索區域大局部搜索性能的另一種變異操作方法。所謂高斯變異操作是指進行變異操作時,用符合均值為m,方差為δ2的正太分布的一個隨機數來替換原有基因值。高斯變異的具體操作過程是:
1)每個染色體上都進行變異操作,變異的基因位選擇方式為

2)對每一個變異點,以概率pm 從對應基因的取值范圍內取一隨機數來取代原有基因值。新基因由下式計算得到:
設xk為變異點,其取值范圍是,則令

當問題的抗體約束范圍較廣時,高斯變異方法所得的Pareto 最優解分布的均勻性會變差。因此,在這種情況可以使用均勻變異算子。均勻變異是用抗體約束范圍內均勻分布的隨機數來取代變異基因位,其MATLAB 程序表述為如下:

算法中,chrom 表示需要進行變異操作的抗體,pm 為變異概率,bound 為變異基因位的取值范圍,通常以矩陣形式描述。
3)選擇算子
克隆選擇操作是從抗體各自克隆增殖后的子代中選擇優秀的個體,從而形成新的抗體群。一個抗體能否被選擇到下一代中,主要取決于其是否為非支配抗體。這樣就需要將抗體群劃分為支配抗體群和非支配抗體群,這也是算法的主要時間復雜度所在。本文采用擂臺法進行非支配操作,其時間復雜度為O(rmN)。
擂臺法構造進化群體的Pareto 最優解集時,每一輪從構造集中選一個解作為擂臺主,其余個體依次打擂臺,失敗者則被淘汰出局,勝者成為新的擂臺主,并繼續該輪比較。一輪比較后,最后的擂臺主即為非支配個體。按這種方法進行下一輪的比較,直到構造集中的被支配個體都被淘汰出局。算法的時間復雜度為O(rmN),式中r 為目標數,m 為非支配個體數,N 為群體大小,比起NSGA-II 算法的復雜度(O(rN2))有所降低。
4)種群修剪
為保持種群良好的分布性和均勻性,需要對種群進行修剪。其重要思想是:計算抗體之間的聚集距離,并以此分配適應值,兩端個體分配無窮大適應值,以此來選取非支配且聚集距離大的個體產生新的種群。這樣還能保證抗體規模維持在設定范圍內,而不至于過渡繁殖。
5)依概率免疫記憶
對抗原進行進化操作時,按概率保留一定的非支配抗原作為精英,以此為算法必然收斂的前提。為驗證算法的性能,選取了kur,MOP5 和MOP7 三個標準測試函數。圖2 為免疫克隆選擇多目標優化算法的算法流程圖。圖3(a)~(c)分別為免疫克隆選擇多目標優化算法的kur,MOP5 和MOP7 函數測試結果。圖3(d)為NSGA-II 算法的MOP5 測試結果。相比而言,由于算法省去了二進制到十進制的轉換及交叉等操作,比起NSGA -II 的執行時間更短。由圖3(c)和(d)比較可見針對3個目標的測試結果,免疫克隆選擇多目標優化算法的Pareto 最優解分布更廣泛,要優于NSGA-II。
用交互式決策方法來求解多目標系統最優控制問題需要將算法與模型仿真相結合。在Matlab 環境下建立算法的M 文件,并通過語句assignin(ws,‘var’,val)和[t,x,y]= sim(model,timespan)建立多目標免疫優化算法與需求解問題的Simulink 仿真模型之間的聯系。為說明交互式決策法及免疫克隆選擇多目標優化算法在求解實際問題時的有效性,本文以飛機增穩控制器的設計為例進行說明。
3.3.1 示例

圖2 免疫克隆選擇多目標優化算法流程

圖3 算法測試結果
高性能飛機的飛行包線范圍很廣,要滿足高空高速,低空低速的要求,且在受到自然環境影響(如自然風)下仍能保證較好的穩定度,僅依靠飛機的氣動外形設計很難實現,因此需要在飛機中加入增穩系統,以提高飛機的穩定性和操縱性。這類為增加和改善飛機穩定性的控制系統稱為增穩系統(Stability Augmentation Systems,簡稱SAS)。由于本文只為說明免疫算法對多目標系統的優化控制方法,故對SAS 這一多輸入多輸出系統做以下簡化:1)飛機模型采用縱向小擾動線性化模型,其線性化平衡點處于飛行包線內低空高速區域;2)將問題簡化為狀態調節器,不考慮指令輸入;3)僅考慮垂直風干擾,迎角的初始條件為5°的偏轉。使用王青在文獻[4]中提供的數據,建立以下狀態空間模型


圖4 免疫克隆選擇多目標優化算法求解LQR 控制器
式中,狀態向量x = [υ,α,q,θ]T,各元素分別代表速度的變化百分比、迎角、俯仰角速率、俯仰角;u =[ξp,ξT]T,各元素分別代表升降舵的偏轉和油門桿的位置。LQR 全狀態反饋最優調節器的性能指標選取如下:

對于該問題的性能給出3個指標,分別為:升降舵控制輸入的最大值max(u)、迎角輸出的峰值時間tp和超調量σ 以及估計誤差的ITAE。如圖4 所示,為免疫克隆選擇算法結合多指標飛機增穩LQR控制器設計的流程圖。算法得到的抗原經計算得到LQR 的反饋陣參數并賦給Simulink 環境下的控制器。用模型進行仿真,將仿真后得到的性能指標參數又返回給多目標免疫算法,算法根據這一數值進行免疫操作。整個計算過程以此循環,直到算法滿足終止條件。
圖5 為3個性能指標的Pareto 最優邊界。表3為從非支配集中任意選出的5 組抗體得到的控制器參數。圖7 為系統的Simulink 仿真模型。圖6 為從表3 中選取的第1 組控制參數和第5 組參數進行仿真所獲得的迎角輸出曲線,由曲線可知,同樣獲得飛機增穩控制的同時,系統的性能指標的極小值取值有所不同,如圖6(a)對應的控制器系統穩定性及穩定時間均劣于圖6(b)對應的控制器,但是圖6(a)對應的控制器所消耗的控制能量卻小于后者。因此,決策者可根據計算所得的控制器參數來協調多項系統指標以達到最優控制。

圖5 Parcto最優邊界

表3 控制器可選參數

圖6 系統迎角仿真曲線

圖7 增穩系統的Simulink 仿真模型
對多目標系統的最優控制方法進行了深入研究,并根據設計者先驗知識的多少提出了2 種新的解決方法:層次分析法和交互式決策法。不同于以往解決方法,交互式決策法的數值計算難度小,且不依賴或很少依賴求解問題。不論是線性或非線性、連續或非連續問題均能夠求解其最優控制參數,還能兼顧多項性能指標。在所采用的算法方面,本文針對現有算法的不足,設計了免疫克隆選擇多目標優化算法來求解多目標問題,通過測試表明算法性能良好,能夠用于多目標系統最優控制參數的求解。本文所提方法不僅可以應用在多指標情況下的LQR 設計,還可以應用在多指標要求下的油田最優采收率、煉油過程中的換熱和加催化等的控制以及直升機懸停控制等諸多方面。
[1]Khargonekar P P,Rotea M A. Multiple Objective Optimal Control of Linear System:The Quadratic Norm Case[J]. IEEE Trans. Automatic Control,1991,36(1):14-24.
[2]Salukvadze M E. Vector-valued Optimization Problem in Control Theory[M]. Academic,New York,1979.
[3]張成科.多目標最優控制的小波逼近解[J]. 數學的實踐與認知,2006,36(8):176-183.(Zhang C K.Ap proximation Solution for Multiple Criteria Optimum Control Problem Via Wavelet[J]. Mathematics in Practice and Theory,2006,36(8):176-183.)
[4]王青,陳宇,張穎昕,侯硯澤. 最優控制—理論、方法與應用[M].北京:高等教育出版社,2011.(Wang Q,Chen Y,Zhang Y X,Hou Y Z. Optimal Control—Theory,Methods and Applications[M].Beijing:Higher Education Press,2011.)
[5]Shtessel Y B. Principle of Proportional Damages in a Multiple Criteria LQR Problem[J]. IEEE Trans. Automatic Control,1996,41(3):461-464.
[6]Holland J H. Adaptation in Natural And Artificial Systems:An Introductory Analysis With Applications to Biology,Control,and Artificial Intelligence[M]. 1st Edition,Ann Arbor,MI:The University of Michigan Press,1975;2nd edition,Cambridge,MA:MIT Press,1992.
[7]Schaffer J D. Multiple Objective Optimization With Vector Evaluated Genetic Algorithms[C]. Proceedings of 1st International Conference on Genetic Algorithms and Their Applications. Hillsdale:Lawrence Erlbaum Associates,Inc.,1985:93-100.
[8]Deb K,Pratab A,Agarwal S,et al. A fast and Elitist Multi-objective Genetic Algorithm:NSGA-II[J]. IEEE Transactions on Evolutionary Computation,2002,6(2):182-197.
[9]Coello Coello C A,Cruz Cortés N. An Approach to Solve Multiobjective Optimization Problems Based on An Artificial Immune System[C]. Proceedings of 1st International Conference on Artificial Immune System,Canterbury,2002:212-221.
[10]鄭金華.多目標進化算法及其應用[M]. 北京:科學出版社,2007.(Zheng J H. Multi-objective Evolutionary Algorithm and Application [M]. Beijing:Science Press,2007.)
[11]Jiao L C,Gong M G,Shang R H,et al. Clonal Selection with Immune Dominance and Anergy Based Multiobjective Optimization[C]. Proceedings of 3rd International Conference on Evolutionary Multi-crite-rion Optimization,Berlin:Springer,2005:474-489.
[12]焦李成,尚榮華,馬文萍,公茂果,李陽剛,劉芳.多目標優化免疫算法、理論和應用[M]. 北京:科學出版社,2010. (Jiao Licheng,Shang Ronghua,Ma Wenping,Gong Maoguo,Li Yanggang,Liu Fang. The Theory and Application of Multi-objective Optimization Immune Algorithm[M].Beijing:Science Press,2010.)
[13]Knowles J D,Corne D W,Deb K.Multiobjective Problem Solving form Nature[M].New York:Springer,2008.
[14]Gong T,Cai Z X. Natural Computation of Immune Elearning System[C]//Proc. of 3rd Int’1 Conf. on Computational Intelligence,Robotics and Autonomous Systems,Singapore,2005:13-16.