索美霞 張永立 李夢婕 易國榮



摘 要:為了解決傳統粒子群算法(PSO)容易“早熟”、陷入局部最優以及灰狼算法(GWO)收斂速度慢的問題。首先,采用GWO算法的個體極值更新策略來實現個體包圍式向最優值趨近,融入PSO算法的速度更新策略來實現群體向最優值的趨近,并且在原始粒子群算法基礎上加入線性慣性權重遞減來提高算法的收斂速度,從而提出了一種基于灰狼算法和改進的粒子群算法(IPSO)的融合優化算法(GW-IPSO);其次,通過6個經典算例進行仿真試驗,將融合算法與PSO算法、IPSD算法、灰狼和粒子群結合算法(GW-PSO)進行對比;最后,應用融合算法對二級直線倒立擺的控制器設計進行參數尋優。結果表明:針對6個標準測試函數,混合算法的30次試驗結果平均值更接近最優值,且標準差幾乎都是最小的;應用在倒立擺控制問題上,系統在5 s左右進入穩定狀態。融合后的GW-IPSO算法能夠在一定程度上避免早熟和陷入局部極值的問題發生,并且能夠很好地應用于控制器設計過程中參數尋優問題。
關鍵詞:算法理論;粒子群算法;灰狼算法;倒立擺;控制器設計
中圖分類號:TP183 文獻標識碼:A DOI: 10.7535/hbgykj.2023yx03008
Research on the fusion of PSO and GWO
SUO Meixia ZHANG Yongli LI Mengjie YI Guorong
(1.School of Automation and Electrical Engineering, Tianjin University of Technology and Education, Tianjin 300222, China; 2.Tianjin Key Laboratory of Information Sensing and Intelligent Control, Tianjin 300222, China; 3.School of Informatics, Beijing Institute of Technology, Zhuhai, Guangdong 519088, China)
Abstract:The purpose of this paper is to solve the problems that traditional particle swarm optimization (PSO) algorithm is prone to "precocious", easy to fall into local optimum, and the grey wolf optimization (GWO) algorithm converges slowly. Firstly, the individual extreme value update strategy of GWO algorithm was used to realize the individual enveloping approach to the optimal value, the speed update strategy of the PSO algorithm was integrated to achieve the approach of the population to the optimal value, and the linear inertia weight reduction was added to improve the convergence speed of the algorithm on the basis of the original particle swarm algorithm, so as to propose an optimization algorithm (GW-IPSO) based on the fusion of gray wolf algorithm and improved particle swarm algorithm. Secondly, through six classical examples, the GW-IPSO algorithm was compared with the PSO algorithm, the improved particle swarm algorithm, the gray wolf and the particle swarm combination algorithm. Finally, the fusion algorithm was applied to optimize the parameters of the controller design of the two-stage linear inverted pendulum. The experimental results show that for the six standard test functions, the average value of the 30 experimental results of the GW-IPSO algorithm is closer to the optimal value, and the standard deviation is almost the smallest. Applied to the inverted pendulum control problem, the system enters a stable state in about 5 seconds. The GW-IPSO algorithm can avoid the problems of precocious maturation and falling into local extremes to a certain extent, and can be well applied to the parameter optimization problem in the controller design process.
Keywords:algorithmic theory; particle swarm optimization; grey wolf optimization;invert pendulum; controller design
當前,遺傳算法、人工免疫算法、灰狼算法(grey wolf optimization,GWO)、粒子群算法(particle swarm optimization,PSO)、模擬退火算法等智能優化算法越來越被廣泛地應用于各種領域[1]。通過人們不斷地探索和研究,發現傳統的智能優化算法最大的缺點就是容易陷入局部最優值。GWO算法不易受參數影響,簡單易于實現,已被應用在微電網、特征提取、圖像分割、車間調度等領域,但算法后期收斂速度較慢[2]。PSO算法主要通過群體內個體之間的信息共享來完成尋優,原理簡單,易于實現,收斂速度快,但是平衡全局的能力差[3],個體“自我認知”和“社會認知”部分的權重是搜索的關鍵因素,當算法參數不合適或者優化問題局部最優的欺騙性太強就很容易陷入局部最優。目前,針對優化算法容易陷入局部最優的問題主要有2個方面的改進方法:一是從算法自身進行研究,對參數設置、算法流程進行改進,提高算法性能,例如王鵬飛等[4]提出的改進收縮因子的粒子群優化算法,通過引入壓縮因子方程,改進了粒子群算法速度迭代公式,減少了因學習因子設置不當對算法造成的影響;李二超等[5]提出了一種自適應粒子速度和位置更新策略,采用基于Logistic混沌呈非線性變化的慣性權重,以此來加快算法的收斂速度、平衡算法的全局和局部搜索能力、提高收斂精度。二是基于算法融合的思想,通過對不同算法的優缺點進行分析比較,取長補短,產生新的融合算法來提升算法性能。如趙經緯等[6]采用自適應慣性因子和學習因子,并引入遺傳變異策略和精英保留策略,提出了一種改進的粒子群算法(improved particle swarm optimization,IPSO)。本文采用第2種算法改進方法,分析粒子群算法和灰狼算法的優缺點,提出灰狼算法和改進的粒子群算法的融合優化算法(grey wolf-improved particle swarm optimization,GW-IPSO)。
倒立擺是最典型的多變量、高階次、非線性、強耦合、自然不穩定系統。倒立擺系統的穩定控制是控制理論中的典型問題,傳統倒立擺穩擺常采用PID控制和LQR控制,其中LQR控制方法中Q,R矩陣的取值尤為重要,但目前還沒有明確的計算方式,通常需要根據經驗值來進行試湊,過程繁瑣、耗時耗力。因此許多學者通過智能優化算法來確定相關參數[7-8]。為了驗證算法的優越性,本文將GW-IPSO算法應用在倒立擺控制系統上,通過仿真試驗與傳統試湊法進行了對比。
1 算法及其融合策略
1.1 PSO算法
粒子群算法,最初是由Kennedy和Eberhart提出的。算法中每個粒子通過與群體中其他粒子之間的協作與競爭而尋求到最優解[9]。其進化過程見式(1)和式(2):
1.2 GWO算法
1.3 算法融合
粒子群算法和灰狼算法的融合策略主要包含基于GWO算法的個體極值更新、基于PSO算法的速度更新、以及慣性權重線性遞減3個方面的融合與改進。
首先,GWO算法中的核心思想就是由α狼、β狼、δ狼3個等級的狼引導群體進行位置更新,可以彌補粒子群算法中單一的最優個體引導迭代策略的缺陷。同時灰狼算法采用的是包圍式的向最優值趨近的策略。所以將這一核心思想融入到算法內部,可以提高算法的全局搜索能力。
但是,GWO算法中沒有涉及到群體向最優位置移動速度的更新。因此,在GWO算法的基礎上,融入粒子群算法的速度更新思想,如式(6)和式(7)所示:
2 算例驗證與結果分析
2.1 標準測試函數
為證明改進算法的性能,使用單峰函數、多峰函數和固定多峰函數3種具有不同特點的標準測試函數測試改進算法的有效性,表1給出了具體的標準測試函數。采用原始粒子群算法(PSO)、加入慣性權重遞減的改進粒子群算法(IPSO)、灰狼和粒子群的結合算法(grey wolf-particle swarm optimization,GW-PSO)、本文提出的融合算法(GWO-IPSO)分別對6個標準測試函數進行30次仿真試驗,取適應度值的平均值和標準差進行比較。同時為保證試驗結果的客觀性,均選取相同的參數值,具體對比結果如表2所示。
2.2 時間復雜性分析
2.3 適應度函數
3 LQR參數尋優
通過算法的測試也可以看出GW-IPSO算法的性能較為穩定,因此,將其應用于二級直線倒立擺LQR控制器的權矩陣Q,R的優化選取,并與傳統LQR穩擺控制效果進行對比。
3.1 二級倒立擺拉格朗日數學建模
圖3所示為二級直線倒立擺的物理模型,主要由1個可以沿直線運動的小車和2個可以自由旋轉的擺桿組成。現假設每一級倒立擺都是均勻剛體,驅動力無延遲地施加于小車,且運動過程中系統所有的摩擦阻力足夠小,可忽略不計[15-17],具體物理參數如表4所示。
3.2 仿真試驗
4 結 語
本文針對粒子群算法和灰狼算法的各自優缺點,融合了GWO算法的個體極值更新、PSO算法的速度更新和慣性權重線性遞減的迭代方法,提出了GW-IPSO融合算法。在算法參數相同的前提下,與PSO算法、IPSO算法、GW-PSO算法分別對6個標準測試函數進行尋優,得出以下結論。
1)從30次試驗結果來看,GW-IPSO算法尋優結果平均值更接近最優值,并且標準差比其他3個算法小1~15個數量級。
2)從6個測試函數的適應度值變化曲線來看,GW-IPSO算法在一定程度上能夠很好地跳出局部最優值,且收斂速度較快。
3)從對測試函數f1,f2,f5的30次仿真試驗平均運行時間來看,GW-IPSO算法的平均運行時間分別為0.340 6,0.171 9,0.156 2 s均比GW-PSO算法運行時間短。
通過將GW-PSO算法應用于二級直線倒立擺LQR控制器設計中權矩陣Q和R的參數尋優上,系統在5 s左右進入穩定狀態,與傳統試湊法相比,擺桿的超調量更小,小車的位移也更小。
但目前該算法仍然存在可能陷入局部最優值的問題。因此,今后可以嘗試將多次運行的最優值作為下次運行的初值,來提升算法精度。
參考文獻/References:
[1] 范偉倫,衛鑫,熊威.模擬退火——免疫粒子群融合算法研究[J].中國設備工程,2021(19):99-101.
[2] 杜衛康.基于GWO-PSO融合算法的USV群體對抗動態避障與協同圍捕[D].長春:吉林大學,2022.DU Weikang.USV Group Adversarial Dynamic Obstacle Avoidance and Cooperative Hounding Based on the GWO-PSO Fusion Algorithm[D].Changchun:Jilin University,2022.
[3] 梁景泉,周子程,劉秀燕.粒子群算法改進灰狼算法的機器人路徑規劃[J].軟件導刊,2022,21(5):96-100.LIANG Jingquan,ZHOU Zicheng,LIU Xiuyan.Robot path planning based on particle swarm optimization improved grey wolf algorithm[J].Software Guide,2022,21(5):96-100.
[4] 王鵬飛,任麗佳,高燕.基于改進收縮因子的粒子群優化算法[J].電子科技,2022,35(5):14-18.WANG Pengfei,REN Lijia,GAO Yan.PSO algorithm based on improved contraction factor[J].Electronic Science and Technology,2022,35(5):14-18.
[5] 李二超,高振磊.改進粒子速度和位置更新公式的粒子群優化算法[J].南京師大學報(自然科學版),2022,45(1):118-126.LI Erchao,GAO Zhenlei.Particle swarm optimization algorithm with improved particle velocity and position update formula[J].Journal of Nanjing Normal University (Natural Science Edition),2022,45(1):118-126.
[6] 趙經緯,張君毅,李佳.基于改進粒子群的分布式通信干擾資源分配[J].河北工業科技,2023,40(1):52-58.ZHAO Jingwei,ZHANG Junyi,LI Jia.Distributed communication jamming resource allocation method based on improved particle swarm optimization[J].Hebei Journal of Industrial Science and Technology,2023,40(1):52-58.
[7] 王瑩.粒子群算法優化的改進及其在直線二級倒立擺系統中的應用研究[D].青島:山東科技大學,2020.WANG Ying.Improvement of Particle Swarm Optimization and Its Application in Linear Double Inverted Pendulum System[D].Qingdao:Shandong University of Science and Technology,2020.
[8] 彭慧剛.改進粒子群算法在二級倒立擺控制系統中的研究[D].武漢:湖北工業大學,2016.PENG Huigang.Research on Improved Particle Swarm Optimization Algorithm in Double Stage Inverted Pendulum Control System[D].Wuhan:Hubei University of Technology,2016.
[9] 王萬良,金雅文,陳嘉誠,等.多角色多策略多目標粒子群優化算法[J].浙江大學學報(工學版),2022,56(3):531-541.WANG Wanliang,JIN Yawen,CHEN Jiacheng,et al.Multi-objective particle swarm optimization algorithm with multi-role and multi-strategy[J].Journal of Zhejiang University (Engineering Science),2022,56(3):531-541.
[10]董如意,唐玉玉,桑可可.基于改進粒子群算法的PID控制器參數整定優化[J].吉林化工學院學報,2022,39(7):18-21.DONG Ruyi,TANG Yuyu,SANG Keke.Optimization design of PID controller based on particle swarm optimization algorithm[J].Journal of Jilin Institute of Chemical Technology,2022,39(7):18-21.
[11]邵士凱,石偉龍,杜云.基于粒子群算法的固定時間多約束無人機軌跡規劃[J].河北科技大學學報,2022,43(3):259-267.SHAO Shikai,SHI Weilong,DU Yun.Fixed time multi-constraint UAV trajectory planning based on particle swarm optimization[J].Journal of Hebei University of Science and Technology,2022,43(3):259-267.
[12]李真,王帆,王冉珺.一種結合灰狼算法的粒子群優化算法[J].計算機測量與控制,2021,29(10):217-222.LI Zhen,WANG Fan,WANG Ranjun.An improved particle swarm optimization algorithm[J].Computer Measurement & Control,2021,29(10):217-222.
[13]李佳園,李耀南,惠繼錄.灰狼優化算法的應用綜述[J].數字技術與應用,2022,40(9):10-13.
[14]陳貞,閆明晗.一種改進的灰狼優化算法[J].延邊大學學報(自然科學版),2022,48(3):250-254.CHEN Zhen,YAN Minghan.An improved grey wolf optimization algorithm[J].Journal of Yanbian University (Natural Science Edition),2022,48(3):250-254.
[15]于蕾,方蒽,紀雯.一階倒立擺系統建模與仿真研究[J].電子世界,2021(15):25-26.
[16]周長斌.基于直線電機倒立擺的控制算法及控制器設計[D].合肥:合肥工業大學,2018.ZHOU Changbin.Control Algorithm and Controller Design Based on Inverted Pendulum System of Linear Motor[D].Hefei:Hefei University of Technology,2018.
[17]王鵬飛,杜忠華,牛坤,等.基于改進粒子群算法的倒立擺LQR優化控制[J].計算機仿真,2021,38(2):220-224.WANG Pengfei,DU Zhonghua,NIU Kun,et al.LQR optimal control of inverted pendulum based on improved particle swarm optimization algorithm[J].Computer Simulation,2021,38(2):220-224.
[18]張永立.空間多級倒立擺非線性控制方法研究[D].大連:大連理工大學,2011.ZHANG Yongli.Research on Nonlinear Control Technique for Spherical Mult-rod Inverted Pendulum System[D].Dalian:Dalian University of Technology,2011.
[19]張繼榮,張天.基于改進粒子群算法的PID控制參數優化[J].計算機工程與設計,2020,41(4):1035-1040.ZHANG Jirong,ZHANG Tian.Optimization of PID control parameters based on improved particle group algorithm[J].Computer Engineering and Design,2020,41(4):1035-1040.
[20]賀遲來,徐曉龍,鐘曉偉,等.基于改進粒子群算法的旋轉倒立擺PID參數整定[J].自動化技術與應用,2021,40(12):10-15.HE Chilai,XU Xiaolong,ZHONG Xiaowei,et al.PID parameters tuning of rotary inverted pendulum based on improved particle swarm optimization algorithm[J].Techniques of Automation and Applications,2021,40(12):10-15.
[21]龐新雨,范繼祥,王阿南.基于PSO-LQR的二級旋轉倒立擺控制系統設計[J].哈爾濱師范大學自然科學學報,2019,35(5):26-32.PANG Xinyu,FAN Jixiang,WANG Anan.Design of control system based on PSO-LQR for double rotary inverted pendulum[J].Natural Science Journal of Harbin Normal University,2019,35(5):26-32.