石春花, 劉 環(huán)
(1.長(zhǎng)治醫(yī)學(xué)院生物醫(yī)學(xué)工程系,長(zhǎng)治 046000;2.長(zhǎng)治醫(yī)學(xué)院計(jì)算機(jī)教學(xué)部,長(zhǎng)治 046000)
自抗擾控制器是一類不依賴精準(zhǔn)數(shù)學(xué)模型且對(duì)外負(fù)載擾動(dòng)具有較強(qiáng)補(bǔ)償能力的非線性控制器。與傳統(tǒng)PID控制、模糊控制等魯棒控制器所不同的是,自抗擾控制器可將模型內(nèi)部擾動(dòng)和外負(fù)載擾動(dòng)歸結(jié)為總擾動(dòng),通過(guò)擴(kuò)張狀態(tài)觀測(cè)器對(duì)擾動(dòng)進(jìn)行觀測(cè)和補(bǔ)償。因此針對(duì)自抗擾控制器的特點(diǎn),許多學(xué)者將自抗擾控制器應(yīng)用于各個(gè)控制領(lǐng)域中。如無(wú)人機(jī)控制[1]、四旋翼控制[2]、永磁同步電機(jī)控制[3]、微電網(wǎng)無(wú)功率控制[4]、雷達(dá)伺服系統(tǒng)[5]及風(fēng)力機(jī)變槳控制等[6]。由此可見(jiàn),自抗擾控制已經(jīng)應(yīng)用在越來(lái)越多的控制領(lǐng)域當(dāng)中。但是,非線性自抗擾控制器存在多耦合參數(shù)難以優(yōu)化的問(wèn)題,很大程度地影響了非線性自抗擾控制器的控制效果。很多學(xué)者通過(guò)將非線性自抗擾線性化,減少控制參數(shù)的方式解決參數(shù)難以優(yōu)化的問(wèn)題。但當(dāng)被控對(duì)象具有較強(qiáng)非線性或復(fù)雜特性時(shí),線性自抗擾難以實(shí)現(xiàn)控制目標(biāo)。因此越來(lái)越多的學(xué)者對(duì)非線性自抗擾參數(shù)優(yōu)化的問(wèn)題進(jìn)行了深入的研究。
Guo等[7]提出一種改進(jìn)粒子群算法的自抗擾參數(shù)整定策略,一定程度上提高了控制精度。Yin等[8]提出一種改進(jìn)的蟻群算法的自抗擾控制器參數(shù)整定策略,提高了參數(shù)在線優(yōu)化時(shí)間,但控制精度略低。費(fèi)倫等[9]提出一種變權(quán)重變異鴿群優(yōu)化算法自抗擾參數(shù)整定策略。易星等[10]提出一種雙種群鯨魚(yú)優(yōu)化算法的自抗擾參數(shù)整定策略,提高了控制精度。周志剛等[11]提出一種基于人群搜索算法的自抗擾參數(shù)優(yōu)化策略,提高了系統(tǒng)響應(yīng)速度和調(diào)節(jié)時(shí)間。Ge等[12]提出一種基于時(shí)間沉降的參數(shù)優(yōu)化策略。以上優(yōu)化策略均通過(guò)提高智能優(yōu)化算法的全局搜索精度來(lái)提對(duì)自抗擾參數(shù)進(jìn)行在線優(yōu)化。但單一提高算法的全局搜索精度難以平衡算法的全局和局部搜索精度,很難快速找到真正的全局最優(yōu)解。因此本文提出一種改進(jìn)的鯊魚(yú)優(yōu)化算法,對(duì)自抗擾參數(shù)進(jìn)行在線整定。
針對(duì)基本鯊魚(yú)優(yōu)化算法全局收斂精度不高以及易早熟收斂的問(wèn)題,通過(guò)非線性控制因子,廣義反向?qū)W習(xí)等策略進(jìn)行改進(jìn),平衡改算法的全局、局部搜索能力,提高了算法的整體性能和收斂速度,并將改進(jìn)的鯊魚(yú)算法用于自抗擾控制參數(shù)在線優(yōu)化,以四旋翼飛行器為被控對(duì)象進(jìn)行仿真實(shí)驗(yàn),對(duì)優(yōu)化后自抗擾控制器的控制精度和抗擾動(dòng)能力進(jìn)行驗(yàn)證。
自抗擾控制(auto disturbance rejection control, ADRC)控制器主要由三個(gè)部分組成。
(1)非線性微分跟蹤器(tracking differentiator, TD)安排過(guò)渡過(guò)程。TD作為一個(gè)動(dòng)態(tài)環(huán)節(jié),可對(duì)急劇變化輸入信號(hào)進(jìn)行平滑處理,并有效抑制信號(hào)噪聲干擾。其數(shù)學(xué)表達(dá)式為

(1)
式(1)中:x1(k)為被跟蹤的輸入信號(hào);x2(k)為輸入信號(hào)的微分;T為步長(zhǎng);r為調(diào)節(jié)因子,對(duì)跟蹤速率進(jìn)行調(diào)節(jié);h0為濾波因子;fst(·)為快速最優(yōu)控制綜合函數(shù),其數(shù)學(xué)表達(dá)式為

(2)
式(2)中:d=rh0;a的計(jì)算公式為

(3)
(2)擴(kuò)張狀態(tài)觀測(cè)器(extended state observer, ESO)將系統(tǒng)模型內(nèi)部擾動(dòng)以及外負(fù)載擾動(dòng)綜合成一個(gè)總擾動(dòng),ESO對(duì)這個(gè)總擾動(dòng)進(jìn)行觀測(cè)和補(bǔ)償,是可提高自抗擾控制器抗擾動(dòng)能力的關(guān)鍵組成部分。其數(shù)學(xué)模型如下:

(4)
式(4)中:y(k)是來(lái)自被控制對(duì)象的反饋信號(hào);δ為非線性函數(shù)的線性寬度;β01、β02和β03為誤差校正參數(shù),主要影響建模不確定性和干擾的適應(yīng)性,是三個(gè)待整定參數(shù);z1、z2和z3分別為對(duì)x1的估計(jì)、x2的估計(jì)以及對(duì)總擾動(dòng)的估計(jì);fal(·)函數(shù)的數(shù)學(xué)表達(dá)式為

(5)
(3)非線性狀態(tài)誤差反饋率(nonlinear state error feedback control law, NLSEF)。整個(gè)系統(tǒng)的干擾在NLSEF中得到補(bǔ)償,其數(shù)學(xué)表達(dá)式為

(6)
式(6)中:β1和β2為待整定參數(shù),決定控制系統(tǒng)的響應(yīng)速度。
因此,從式(1)~式(6)中可得,非線性自抗擾控制器待整定參數(shù)為β01、β02、β03、β1和β2。
鯊魚(yú)優(yōu)化算法[13](shark smell algorithm, SSA)與傳統(tǒng)群智能優(yōu)化不同,當(dāng)鯊魚(yú)發(fā)現(xiàn)獵物時(shí),會(huì)通過(guò)螺旋包圍的方式對(duì)獵物發(fā)起攻擊。此方式在算法中表現(xiàn)為,算法在尋優(yōu)過(guò)程中,會(huì)在接近全局最優(yōu)解的同時(shí)不斷擴(kuò)大包圍圈,增加了尋優(yōu)范圍。定義鯊魚(yú)優(yōu)化算法種群規(guī)模為N、維數(shù)為D,因此鯊魚(yú)優(yōu)化算法種群初始化的數(shù)學(xué)表達(dá)式為
Xi,j=[xi,1,xi,2,…,xi,D]
(7)
式(7)中,i=1,2,…,N,Xi,j表示第i個(gè)鯊魚(yú)第j個(gè)決策變量。此外,鯊魚(yú)在尋找獵物的時(shí)候,會(huì)不斷游向氣味更強(qiáng)的獵物,并且隨著氣味濃度的增加,鯊魚(yú)的速度也會(huì)增加。因此,鯊魚(yú)優(yōu)化算法的速度更新公式可表示為

(8)
式(8)中:j=1,2,…,D;k=1,2,…,kmax為迭代次數(shù);ηk∈[0,1]為速度控制率,為了保證鯊魚(yú)算法在每次迭代過(guò)程中的速度均可以達(dá)到梯度功能所指示的速度;R1和R2為均勻分布在0~1的隨機(jī)數(shù),目的是使算法在尋優(yōu)過(guò)程中具有一定的隨機(jī)性,防止算法過(guò)早收斂;OF為目標(biāo)函數(shù);αk為速度控制率,是0~1的隨機(jī)數(shù)。由于鯊魚(yú)游向獵物的速度為20~80 km,因此定義βk為速度限制率,保證鯊魚(yú)游向獵物的速度在限定范圍之內(nèi)。
鯊魚(yú)向前游動(dòng)所產(chǎn)生的位置是由先前的速度和位置所決定的,因此鯊魚(yú)優(yōu)化算法的位置更新公式為

(9)


(10)
式(10)中:R3為0~1的隨機(jī)數(shù),目的使鯊魚(yú)在游向獵物的同時(shí),會(huì)在游向路徑的周圍發(fā)起小范圍隨機(jī)性的搜索;m表示鯊魚(yú)算法每次迭代位置更新過(guò)程中,螺旋搜索點(diǎn)的個(gè)數(shù),并且m個(gè)搜索點(diǎn)是相連起來(lái)的。如果鯊魚(yú)在向獵物螺旋游動(dòng)過(guò)程中,發(fā)現(xiàn)m個(gè)搜索點(diǎn)中具有更高的搜索氣味,則鯊魚(yú)將改變游動(dòng)方向,朝具有更高搜索氣味的獵物發(fā)起攻擊。這種行為在算法中可表示為


(11)
傳統(tǒng)鯊魚(yú)優(yōu)化算法的種群初始化具有隨機(jī)性和無(wú)規(guī)律性,雖然在一定程度上降低了算法的復(fù)雜度,但同時(shí)在一定程度上降低了初始解的質(zhì)量,使初始粒子分布不均勻。根據(jù)研究表明,當(dāng)粒子過(guò)多的分布在局部最優(yōu)解的范圍內(nèi),會(huì)導(dǎo)致算法早熟收斂,陷入局部最優(yōu),同時(shí)會(huì)由于初始粒子遠(yuǎn)離全局最優(yōu)解,很大程度上降低了算法搜索速度,浪費(fèi)計(jì)算資源。因此針對(duì)上訴問(wèn)題,通過(guò)廣義反向?qū)W習(xí)策略,對(duì)鯊魚(yú)種群進(jìn)行初始化。
針對(duì)初始化種群的優(yōu)化算法而言,廣義反向?qū)W習(xí)策略是提高隨機(jī)優(yōu)化算法初始解質(zhì)量的一個(gè)重要方法。其主要思想是,計(jì)算初始化粒子和其反向點(diǎn)的適應(yīng)度函數(shù)值,并進(jìn)行貪婪選擇。同時(shí)為保證在求解反向解時(shí),邊界應(yīng)具有動(dòng)態(tài)變化的特性,以此改變對(duì)稱中心,達(dá)到增強(qiáng)種群多樣性,增大初始種群分布范圍的目的。反向點(diǎn)求解公式為所示。

(12)
式(12)中:aj為動(dòng)態(tài)邊界的下界;bj為動(dòng)態(tài)邊界的上界;xmin為初始解下界;xmax為初始解上界;k=rand(0,1)為動(dòng)態(tài)邊界伸縮控制量。與傳統(tǒng)反向?qū)W習(xí)策略相比,廣義反向?qū)W習(xí)策略可讓種群的初始分布范圍更加廣泛,確保全局最優(yōu)解在可行域范圍內(nèi),同時(shí)加快了算法的搜索速度。其初始化流程如下:
Step 1設(shè)種群規(guī)模為N,維數(shù)為D,并將全部粒子進(jìn)行初始化xi=(xi,1,xi,2,…,xi,D)。

Step 3計(jì)算初始粒子與其對(duì)應(yīng)的廣義反向點(diǎn)粒子的適應(yīng)度值,并進(jìn)行貪婪選擇,淘汰適應(yīng)度值較差的粒子,保留適應(yīng)度值較優(yōu)的粒子,完成種群初始化。
由式(10)可知,控制參數(shù)R3主要控制鯊魚(yú)在游動(dòng)路徑發(fā)起攻擊的攻擊范圍。在算法中可理解為粒子在尋優(yōu)過(guò)程中,粒子沿當(dāng)前路徑進(jìn)行搜索時(shí),通過(guò)控制參數(shù)R3在尋優(yōu)路徑外的范圍進(jìn)行一定規(guī)模的隨機(jī)性搜索,以此在尋優(yōu)過(guò)程中保持種群多樣性,提高全局搜索能力。但搜索范圍完全依賴隨機(jī)性,如在迭代后期,搜索隨機(jī)搜索范圍較大,會(huì)較大程度影響算法的收斂速度,浪費(fèi)搜索資源,不利于粒子的局部搜索和收斂。如在迭代前期,搜索范圍較小,使得隨機(jī)搜索范圍較小,難以提高算法的種群多樣性和全局搜索能力。綜上所述,粒子在迭代前期的應(yīng)具有較大的隨機(jī)搜索范圍,調(diào)高算法的全局搜索能力,更可能會(huì)將全局最優(yōu)解覆蓋到搜索范圍內(nèi)。粒子在迭代后期應(yīng)具有較小的隨機(jī)搜搜范圍,可以使粒子在全局最優(yōu)解附近進(jìn)行精確搜索,同時(shí)提高收斂速度。此外,算法在迭代過(guò)程中,全局搜索能力和局部搜索能力的大小應(yīng)周期性多輪交替,以此達(dá)到頻繁轉(zhuǎn)變?nèi)炙阉髂芰途植克阉髂芰Υ笮〉哪康摹R虼丝刂埔蜃覴3應(yīng)具有周期遞減的特性。改進(jìn)后的R3的數(shù)學(xué)表達(dá)式如式(13)所示。

(13)
式(13)中:φ為頻率調(diào)節(jié)因子,φ越大,搜索范圍調(diào)節(jié)頻率越大。由式(13)可知,在迭代前期,R′3的取值較大,隨機(jī)搜索范圍較大。在迭代后期,R′3的取值較小,隨機(jī)搜索范圍較小。因此改進(jìn)后的位置更新公式為

(14)
根據(jù)研究表明,群智能優(yōu)化算法在迭代更新過(guò)程中,種群中的粒子會(huì)不斷向當(dāng)前適應(yīng)度值較優(yōu)的粒子靠近,因此當(dāng)全局最優(yōu)解距當(dāng)前種群粒子的距離較遠(yuǎn)時(shí),由于種群中的粒子向局部最優(yōu)解靠攏,無(wú)法逃逸,算法就會(huì)陷入局部最優(yōu),早熟收斂。因此,針對(duì)上述問(wèn)題,將Levy變異策略引入算法尋優(yōu)過(guò)程中。Levy變異與二項(xiàng)式變異、混沌變異、柯西變異等傳統(tǒng)變異方式的不同之處在于,Levy變異的變異步長(zhǎng)遠(yuǎn)遠(yuǎn)高于以上傳統(tǒng)的變異方式,因此可以給粒子提供的變異范圍更廣。同時(shí),Levy變異的峰值相較其他傳統(tǒng)變異策略的峰值更高,因此可以給粒子提供更強(qiáng)的擾動(dòng)力,幫助粒子逃逸,跳出局部最優(yōu)。Levy分布與高斯分布和柯西分布的對(duì)比圖如圖1所示。

圖1 三種變異分布對(duì)比Fig.1 Comparison of three kinds of variation distribution
Levy變異產(chǎn)生新粒子的數(shù)學(xué)表達(dá)式為

(15)


(16)
由式(15)所知,Levy變異的峰值大小由參數(shù)ξ決定,因此,當(dāng)粒子陷入局部最優(yōu)時(shí),粒子所獲得的最大擾動(dòng)力也由參數(shù)ξ決定。通過(guò)大量實(shí)驗(yàn)可知,當(dāng)ξ=2時(shí),Levy變異近似于高斯變異,當(dāng)ξ=1時(shí),Levy變異近似于柯西變異,經(jīng)大量實(shí)驗(yàn),選取ξ=0.85,此時(shí)Levy變異的峰值最大,范圍最廣。
Step 1初始化種群規(guī)模N,維數(shù)D,全部粒子進(jìn)行初始化,并計(jì)算初始化個(gè)體的廣義反向點(diǎn)。
Step 2計(jì)算初始粒子與其對(duì)應(yīng)廣義反向點(diǎn)粒子的適應(yīng)度,并進(jìn)行貪婪選擇,完成種群初始化。
Step 3計(jì)算初始化后種群中全部個(gè)體的適應(yīng)度值,并進(jìn)行排序,找出適應(yīng)度值最小的個(gè)體位置作為最優(yōu)位置。
Step 4依照式(8)、式(14)和式(11)對(duì)鯊魚(yú)優(yōu)化算法的速度和位置進(jìn)行更新。
Step 5粒子進(jìn)行Levy變異操作。
Step 6判斷是若達(dá)到終止條件,是則輸出最優(yōu)個(gè)體,即算法找到的最優(yōu)解;否則,返回Step3。
為了驗(yàn)證所提改進(jìn)策略的有效性,選取10個(gè)基準(zhǔn)測(cè)試函數(shù),對(duì)GL-SSO算法進(jìn)行驗(yàn)證,并從全局搜索精度,全局局部搜索平衡能力以及收斂速度等方面對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析。10個(gè)測(cè)試函數(shù)如表1所示。

表1 測(cè)試函數(shù)
f1~f4為單峰測(cè)試函數(shù),f5~f8為多峰測(cè)試函數(shù),f9為非連續(xù)函數(shù),f10為固定維測(cè)試函數(shù)。其中單峰測(cè)試函數(shù)可用于分析算法的收斂速度,多峰測(cè)試函數(shù)可用于分析算法的全局收斂能力和全局局部搜索的平衡能力。此外為了更加明確地表現(xiàn)所提改進(jìn)算法GL-SSO的高效性,將GL-SSO的數(shù)值實(shí)驗(yàn)結(jié)果與雙種群差分鯊魚(yú)優(yōu)化算法(DSSO)[14]、自適應(yīng)反向?qū)W習(xí)鯊魚(yú)優(yōu)化算法(ISSO)[15]及均勻變異鯊魚(yú)優(yōu)化算法(SUSSO)[16]的數(shù)值實(shí)驗(yàn)結(jié)果相對(duì)比。其中GL-SSO相關(guān)控制參數(shù)為ξ=0.85,λ=1.5。其余三種優(yōu)化算法所需控制參數(shù)見(jiàn)相關(guān)文獻(xiàn)。
為保證實(shí)驗(yàn)的公平性,在實(shí)驗(yàn)時(shí),四種算法的種群規(guī)模均為100,維數(shù)均為50,實(shí)驗(yàn)平臺(tái)軟件硬件均相同。四種算法均實(shí)驗(yàn)30次,記錄結(jié)果的平均值、最小值、標(biāo)準(zhǔn)差,成功率以及平均求解時(shí)間。具體結(jié)果如表2、表3所示,其中最佳結(jié)果用加粗字體表示。

表2 四種算法測(cè)試結(jié)果比較

表3 求解成功率與求解平均時(shí)間
由表2、表3可知,對(duì)于單峰測(cè)試函數(shù)而言,四種算法均可以求解到最優(yōu)解,在測(cè)試函數(shù)f4上,ISSO算法求解的最小值要略高于GL-SSO。但除測(cè)試函數(shù)f4外,GL-SSO求解的平均值和最小值最小,說(shuō)明GL-SSO算法的局部搜索能力最強(qiáng),算法的收斂精度最高,收斂速度最快。其次,GL-SSO求解的標(biāo)準(zhǔn)差要小于其他三種測(cè)試函數(shù),說(shuō)明GL-SSO算法的魯棒性和穩(wěn)定性要高于其他三種算法。最后,GL-SSO的求解時(shí)間遠(yuǎn)小于其他三種算法的求解時(shí)間,說(shuō)明GL-SSO算法的收斂速度和種群多樣性要強(qiáng)于其他三種優(yōu)化算法。
對(duì)于多峰測(cè)試函數(shù)f7和f8而言,本文所提GL-SSO算法可以求解到理論最優(yōu)值,說(shuō)明相較其他三種算法,GL-SSO算法的全局勘探能力和局部開(kāi)發(fā)能力更為平衡,全局搜索能力較強(qiáng),種群豐富度更高,這是由于在GL-SSO算法中,控制因子R′3很好地控制了粒子在尋優(yōu)過(guò)程中的隨機(jī)尋優(yōu)范圍。此外,值得注意的是,對(duì)于測(cè)試函數(shù)f5而言,DSSO算法和SUSSO算法均早熟收斂陷入局部最優(yōu),但GL-SSO算法依然可以收斂,求解到最優(yōu)解,此外,對(duì)于全部多峰測(cè)試函數(shù)而言,GL-SSO算法求解的標(biāo)準(zhǔn)差均最小,說(shuō)明GL-SSO算法的穩(wěn)定性更強(qiáng),不易早熟收斂陷入局部最優(yōu),這是由于GL-SSO算法中引入Levy變異的關(guān)系,可以當(dāng)粒子陷入局部最優(yōu)時(shí),給予較強(qiáng)的擾動(dòng),幫助粒子逃逸。同時(shí),對(duì)于多峰測(cè)試函數(shù)而言,GL-SSO的求解時(shí)間小于其他三種算法的求解時(shí)間,說(shuō)明GL-SSO算法的收斂速度要強(qiáng)于其他三種優(yōu)化算法。
對(duì)于固定維多峰測(cè)試函數(shù)而言,四種算法均可以收斂到全局極值,說(shuō)明當(dāng)維數(shù)較低時(shí),四種算法均具有較強(qiáng)的收斂能力和尋優(yōu)穩(wěn)定性。
對(duì)GL-SSO算法的時(shí)間復(fù)雜度進(jìn)行反洗。首先,GL-SSO算法主要由廣義反向?qū)W習(xí),基于周期性遞減控制因子的位置更新以及Levy變異組成。設(shè)算法的種群規(guī)模為100,維數(shù)為200。GL-SSO算法的時(shí)間復(fù)雜度分析如下:廣義反向?qū)W習(xí)的時(shí)間復(fù)雜度為O(ND),位置更新和速度更新過(guò)程的時(shí)間復(fù)雜度O(ND),Levy變異的時(shí)間復(fù)雜度為O(ND),因此GL-SSO算法的時(shí)間復(fù)雜度為O(3ND)。其余ISSO算法、DSSO算法以及SUSSO算法三種優(yōu)化算法的時(shí)間復(fù)雜度分別為O(4ND)、O(3ND+2N)、O(4ND),四種算法的時(shí)間復(fù)雜度為同一量級(jí)。
將改進(jìn)后的鯊魚(yú)優(yōu)化算法用于非線性自抗擾控制參數(shù)在線整定,優(yōu)化后的自抗擾控制器可記為GL-SSO-ADRC。為了驗(yàn)證GL-SSO-ADRC的控制效果,以四旋翼飛行器為被控對(duì)象,對(duì)GL-SSO-ADRC的控制精度和抗擾動(dòng)能力進(jìn)行驗(yàn)證。由于四旋翼飛行器具有強(qiáng)耦合,非線性的特點(diǎn),要求控制器應(yīng)對(duì)模型內(nèi)部擾動(dòng)具有較強(qiáng)的觀測(cè)性,對(duì)模型的控制響應(yīng)速度應(yīng)具有高效性,因此ESO和NLSEF中的誤差矯正系數(shù)和系統(tǒng)相應(yīng)控制系數(shù)的整定尤為關(guān)鍵。
假設(shè),四旋翼飛行器在地面坐標(biāo)系下原點(diǎn)相對(duì)坐標(biāo)為Α=[x,y,z],歐拉角為B=[ψ,φ,γ],其中ψ為俯仰角,φ為滾動(dòng)角,γ為航向角。飛行器的轉(zhuǎn)動(dòng)角速度為ω=[ω1,ω2,ω3]。因此建立四旋翼飛行器動(dòng)力學(xué)方程:

(17)

基于四旋翼動(dòng)力學(xué)方程,構(gòu)建GL-SSO-ADRC的四旋翼控制流程圖如圖2所示。

圖2 基于改進(jìn)鯊魚(yú)優(yōu)化算法的自抗擾四旋翼控制流程Fig.2 Auto disturbance rejection four rotor control flow based on improved shark optimization algorithm
圖2中,ITAE為選取的評(píng)價(jià)指標(biāo),算法尋優(yōu)的終止條件為達(dá)到最大迭代次或者ITAE的評(píng)價(jià)指標(biāo)值小于等于0.01,若算法達(dá)到最大迭代次數(shù)時(shí),所求解的全部ITAE均大于0.01,則選取迭代過(guò)程中ITAE最小的一組參數(shù),作為ADRC的控制參數(shù)。此時(shí)應(yīng)將式(17)更改為自抗擾控制理論相對(duì)應(yīng)的數(shù)學(xué)表達(dá)形式:

(18)

為了驗(yàn)證本文方法的有效性,將GL-SSO、ISSO、DSSO和SUSSO四種算法整定后的自抗擾控制器基于ITAE指標(biāo)進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖3所示。可知,相較其他三種算法,GL-SSO-ADRC取得的評(píng)價(jià)函數(shù)ITAE最小,航向角、滾動(dòng)角及俯仰角的誤差均小于0.01,且評(píng)價(jià)函數(shù)值在迭代前期下降速度最快,達(dá)到穩(wěn)態(tài)的速度最快,說(shuō)明相較其他三種算法,GL-SSO-ADRC的尋優(yōu)速度最快,尋優(yōu)精度更高。
以四旋翼飛行器為被控對(duì)象,GL-SSO-ADRC為控制器,在MATLAB2014a中進(jìn)行仿真實(shí)驗(yàn),其中四旋翼飛行器模型參數(shù)如下所述m=1 kg,l=0.24 m,g=9.8 m·s-2,d=1.32×10-6N·s2,b=5.65×10-5m·s-2,Ix=8.25×10-3kg·m2,Iy=8.25×10-3kg·m2,Iz=13.85×10-3kg·m2,J=1.25×10-4kg·m2。整定后的自抗擾控制器參數(shù)如表4所示。
為了驗(yàn)證GL-SSO-ADRC的控制效果,分別對(duì)航向角、俯仰角、滾動(dòng)角及飛行高度進(jìn)行跟蹤實(shí)驗(yàn),并將實(shí)驗(yàn)結(jié)果與ISSO-ADRC、DSSO-ADRC和SUSSO-ADRC的實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比,具體結(jié)果如下。
4.3.1 飛行高度軌跡跟蹤
設(shè)飛行器初始高度為0 m,期望高度為2 m,系統(tǒng)輸出曲線如圖4所示。可知,GL-SSO-ADRC的相對(duì)超調(diào)量?jī)H為0.08%左右,系統(tǒng)達(dá)到穩(wěn)態(tài)時(shí)間為0.8 s,ISSO-ADRC的相對(duì)超調(diào)量為10%,穩(wěn)態(tài)時(shí)間為4.3 s,DSSO-ADRC的相對(duì)超調(diào)量為0.075%,穩(wěn)態(tài)時(shí)間為5.6 s,SUSSO-ADRC的相對(duì)超調(diào)量為15%,穩(wěn)態(tài)時(shí)間為6.3 s。在超調(diào)量對(duì)比上,GL-SSO-ADRC略低于DSSO-ADRC,但到達(dá)穩(wěn)態(tài)的時(shí)間遠(yuǎn)遠(yuǎn)短于DSSO-ADRC的穩(wěn)態(tài)時(shí)間。在超調(diào)量和達(dá)到穩(wěn)態(tài)時(shí)間的結(jié)果對(duì)比上,遠(yuǎn)遠(yuǎn)優(yōu)于ISSO-ADRC和SUSSO-ADRC,可以做到快速無(wú)超調(diào)的控制目標(biāo)。

圖4 高度及俯仰ITAE對(duì)比圖 Fig.4 Comparison chart of height track
4.3.2 航向角、俯仰角、滾動(dòng)角軌跡跟蹤
設(shè)定航向角初始角度為0°,期望輸入為15°增益的周期性方波,輸入頻率為0.1 Hz。俯仰角和滾動(dòng)角初始角度為0°,期望輸入為30°增益的周期性方波,輸入頻率為0.1 Hz。為了模擬在實(shí)際飛行中受到的噪音擾動(dòng),在控制過(guò)程中加入白噪聲模擬外界負(fù)載擾動(dòng),系統(tǒng)軌跡跟蹤誤差如圖5所示。

圖5 軌跡跟蹤誤差對(duì)比Fig.5 Comparison based on tracking error
從圖5(a)中可知,本文所提GL-SSO-ADRC相較其他三種控制算法,跟蹤誤差精度更高,僅為0.2°,最大誤差為0.8°。且系統(tǒng)對(duì)外負(fù)載擾動(dòng)的觀測(cè)和補(bǔ)償能力更強(qiáng),受到擾動(dòng)后,再次達(dá)到穩(wěn)態(tài)的時(shí)間最短,說(shuō)明ESO中的誤差矯正系數(shù)整定的更加合理,GL-SSO-ADRC的控制精度和抗擾動(dòng)更強(qiáng)。
從圖5(b)中可知,加入白噪聲擾動(dòng)后,GL-SSO-ADRC控制的俯仰角最大誤差僅為0.2°,在5 s左右基本完全對(duì)擾動(dòng)進(jìn)行了補(bǔ)償,相對(duì)比其他三種控制算法對(duì)外負(fù)載擾動(dòng)的補(bǔ)償效果更優(yōu),系統(tǒng)受到擾動(dòng)后,使系統(tǒng)達(dá)到穩(wěn)態(tài)的時(shí)間更短。
同樣,從圖5(c)中可知,GL-SSO-ADRC的最大誤差僅為0.3°,遠(yuǎn)遠(yuǎn)小于其他三種控制算法的最大誤差。此外,雖然在控制過(guò)程中,誤差曲線存在波動(dòng)的現(xiàn)象,這是由于航向角、俯仰角及滾動(dòng)角之間的耦合關(guān)系導(dǎo)致,但GL-SSO-ADRC的誤差波動(dòng)曲線遠(yuǎn)小于其他三種控制算法,且隨時(shí)間的增加,GL-SSO-ADRC的控制誤差越來(lái)越小。
綜上所述,GL-SSO算法有效地整定了ADRC的控制參數(shù),提高了ADRC的控制精度和抗擾動(dòng)能力,同時(shí)也提高了ADRC的響應(yīng)速度。
針對(duì)非線性自抗擾控制器控制參數(shù)難以整定,導(dǎo)致自抗擾控制器控制精度和抗擾動(dòng)能力降低的問(wèn)題,提出一種改進(jìn)的鯊魚(yú)優(yōu)化算法用于自抗擾控制器參數(shù)在線整定。針對(duì)傳統(tǒng)鯊魚(yú)優(yōu)化算法全局搜索能力不高以及早熟收斂的問(wèn)題,通過(guò)廣義反向?qū)W習(xí)初始化,Levy變異及周期性遞減控制因子加以改進(jìn),并通過(guò)數(shù)值對(duì)比仿真實(shí)驗(yàn)進(jìn)行驗(yàn)證了改進(jìn)策略的有效性。最后以四旋翼飛行器為被控對(duì)象,以整定后的自抗擾控制器控制飛行器的飛行高度和歐拉角,進(jìn)行軌跡跟蹤實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,整定后的自抗擾控制器很大程度地提高了控制器的控制精度和抗擾動(dòng)能力。