李羿良 張英 陳冠宇 趙夢薇 林超
摘 要
多目標優(yōu)化算法可以對控制系統(tǒng)的多個控制目標進行控制優(yōu)化,具有普適性強、靈活性高和優(yōu)化結(jié)果全面的優(yōu)點。多目標優(yōu)化算法種類較多,不同種類的算法針對具體問題求解的適用性存在差異[1]。針對控制優(yōu)化問題的求解,對三種典型多目標優(yōu)化算法的適用性進行研究。選擇三項不同類型的應(yīng)用案例,分別對三種典型多目標優(yōu)化算法的求解性能進行試驗與分析,在此基礎(chǔ)上確定出一種最適用于控制優(yōu)化的多目標優(yōu)化算法,可對多目標控制優(yōu)化問題中算法的選擇提供指導(dǎo)和參考。
關(guān)鍵詞
多目標優(yōu)化算法,控制優(yōu)化,適用性研究
中圖分類號: U463.33? ? ? ?文獻標識碼: A
DOI:10.19694/j.cnki.issn2095-2457.2020.19.078
0 引言
控制優(yōu)化問題的優(yōu)化目標往往不止一個,當多個優(yōu)化目標之間存在沖突時,該控制優(yōu)化問題就成為多目標優(yōu)化問題。通常多個優(yōu)化目標難以同時達到絕對的最優(yōu),但可以達到相互制約條件下的相對最優(yōu),即Pareto最優(yōu)。所有Pareto最優(yōu)解的集合形成了多目標優(yōu)化問題的最優(yōu)邊界,因此求解多目標優(yōu)化問題的本質(zhì)是找到該問題的最優(yōu)邊界。理論上,采用多目標優(yōu)化算法對多目標優(yōu)化問題進行求解,可以無限逼近最優(yōu)邊界從而得到理論最優(yōu)解集。但由于多目標優(yōu)化算法種類較多,在解決不同的優(yōu)化問題時,不同的算法之間存在較大的性能差異。適用性更好的算法可以在得到更好結(jié)果的同時節(jié)省計算時間和計算力。因此需要對不同多目標優(yōu)化算法在控制優(yōu)化中的適用性進行研究。根據(jù)所采用智能優(yōu)化算法的不同,可以對多目標優(yōu)化算法進行分類。目前常用的多目標優(yōu)化算法包括多目標進化算法、多目標蟻群算法和多目標粒子群算法[2]。為了避免算法自身缺陷對控制參數(shù)優(yōu)化帶來的不利因素,確保優(yōu)化效果,本文利用標準測試函數(shù)和兩個典型控制優(yōu)化模型對這三種典型多目標優(yōu)化算法分別進行性能試驗和結(jié)果分析,在此基礎(chǔ)上確定出一種最適用于控制優(yōu)化的多目標優(yōu)化算法。
1 三種典型多目標優(yōu)化算法的描述[3]
1.1 多目標優(yōu)化問題與多目標優(yōu)化算法的一般化描述
多目標優(yōu)化算法是一種以Pareto支配關(guān)系為基礎(chǔ)對多目標優(yōu)化問題進行求解的算法。多目標優(yōu)化算法的核心步驟是針對每一次迭代后的種群,依據(jù)Pareto支配關(guān)系尋找當前Pareto最優(yōu)解集,然后通過智能優(yōu)化算法的更新法則對該解集進行迭代更新,迭代完成后最新的Pareto最優(yōu)解集就是優(yōu)化問題的解。
1.2 多目標進化算法
多目標進化算法種類繁多,雖然每個種類的具體算法各不相同,但它們的基本思路是一致的:通過對種群B(t)執(zhí)行評價、選擇和變異等操作產(chǎn)生下一代種群B(t+1);在每一代進化過程中,首先將種群B(t)中所有的非劣解個體都復(fù)制到外部集A(t)中,然后運用截斷算子剔除A(t)中的受支配解和一些距離較近的非劣解,以盡快得到分布均勻的下一代外部集A(t+1);并且按照精英集中度Pe(t)從A(t+1)中選擇一定數(shù)量的優(yōu)秀個體與A(t)種群交配;在進化結(jié)束時,將外部集中的非劣解個體作為最優(yōu)解輸出。多目標進化算法的一般框架如圖1所示。
本文測試的典型多目標進化算法采用Matlab2010b中自帶的NSGA2函數(shù),即改進型非劣排序遺傳算法,于2002年提出。該算法作為一種典型多目標進化算法,常被作為其他多目標優(yōu)化算法的比較對象[4]。
1.3 多目標蟻群算法
蟻群算法通過模擬蟻群通過信息素尋找目標的方式進行尋優(yōu)。當一只螞蟻移動到一個新的點時,會根據(jù)此點對應(yīng)的目標函數(shù)值釋放信息素,同時信息素會隨著迭代步數(shù)的增長慢慢消散。蟻群的移動以搜索范圍內(nèi)各點積聚的信息素作為參考因素,趨向于信息素積聚較多的點移動。由此形成一種正反饋機制,即最優(yōu)路徑上的信息素數(shù)量越來越大,而其他路徑上的信息素數(shù)量卻會隨著迭代步數(shù)增長而消減,最終整個蟻群會找出最優(yōu)路徑,實現(xiàn)優(yōu)化問題的求解[5]。
本文測試的典型多目標蟻群算法通過Pareto支配關(guān)系來決定螞蟻釋放信息素的多少,通過全局最優(yōu)經(jīng)驗指導(dǎo)保持算法的多樣性并簡化搜索方式,通過基于最大活動范圍的行進策略加強局部搜索能力。算法步驟如圖2所示。
1.4 多目標粒子群算法
粒子群算法是由Kennedy和Eberhart于1995年受鳥類群體行為研究結(jié)果的啟發(fā)而提出的一種基于群體智能的計算技術(shù)。在粒子群算法中,每個粒子代表解空間的一個可行解,粒子在搜索空間以各自的速度飛行,飛行速度根據(jù)自身最優(yōu)位置、群體最優(yōu)位置和隨機因素進行動態(tài)調(diào)整。多次迭代后粒子群將收斂于最終的群體最優(yōu)位置,即為最優(yōu)化問題的解。
本文測試的多目標粒子群算法對每次迭代的結(jié)果進行Pareto支配篩選,根據(jù)篩選結(jié)果更新外部精英集,迭代結(jié)束后外部精英集即為多目標優(yōu)化問題的解集。算法具體步驟如圖3所示。
2 多目標優(yōu)化算法的評價指標
多目標優(yōu)化算法的目標是快速搜索逼近真實Pareto最優(yōu)前端并且在其上均勻分布,因此評價一個多目標進化算法的性能可以從4個方面去考慮[6]:
(1)收斂性:評價所求Pareto最優(yōu)解集到真實Pareto最優(yōu)前端的趨近程度。
(2)分布性:評價所求Pareto最優(yōu)解集在目標空間分布的均勻程度。
(3)覆蓋性:評價兩組Pareto最優(yōu)解相互支配的程度。
(4)搜索速度:評價算法求解優(yōu)化問題的速度。
Zitzter等人[7]對多目標優(yōu)化評估指標進行了分類研究。本課題中選擇了4個目前常用的評估指標,具體為距離指標[8]GD、分布性指標[9]SP、覆蓋指標[7]C和運行時間t。
2.1 距離指標GD