孫 超,郭乃宇,嚴(yán)明蝶,丁建軍
(1.江漢大學(xué) 省部共建精細(xì)爆破國(guó)家重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430000; 2.江漢大學(xué) 智能制造學(xué)院,湖北 武漢 430000)
隨著現(xiàn)代化工業(yè)的發(fā)展,在工業(yè)控制領(lǐng)域中,為控制溫度、壓力、水位等連續(xù)變化的物理量[1-3],比例、積分、微分(proportional,integral and differential,PID)成為現(xiàn)代工業(yè)生產(chǎn)控制系統(tǒng)中最常見(jiàn)的系統(tǒng)之一[4]。對(duì)于PID 控制器,參數(shù)取值的差異會(huì)影響控制系統(tǒng)的優(yōu)劣,其關(guān)鍵在于3 個(gè)基本單元的參數(shù)搭配,可知決定整個(gè)PID 控制效果的關(guān)鍵為3 個(gè)單元參數(shù)的整定[5]。
常用的PID 參數(shù)整定法有實(shí)踐經(jīng)驗(yàn)整定法、ZN(Ziegler-Nichols)計(jì)算法[6]和C-C(Cohen-Coon)整定法[7]。但隨著被控對(duì)象的維數(shù)逐漸提高,需探究新的方法對(duì)關(guān)鍵參數(shù)值進(jìn)行尋優(yōu)。唐玉蘭等[8]在永磁式伺服電機(jī)上增加PID 控制器,使用粒子群算法進(jìn)行參數(shù)尋優(yōu),證實(shí)粒子群算法的優(yōu)越性。彭健等[9]使用雞群優(yōu)化算法求得PID控制器的最優(yōu)參數(shù),提升了控制系統(tǒng)的精度、響應(yīng)速度和魯棒性。Ren 等[10]使用粒子群算法對(duì)模糊控制PID 系統(tǒng)進(jìn)行優(yōu)化,應(yīng)用于圖書(shū)館智能機(jī)器人導(dǎo)航系統(tǒng)的改進(jìn),提高了導(dǎo)航路徑的準(zhǔn)確度。以上方法雖然較好地解決了PID 參數(shù)尋優(yōu)的問(wèn)題,但是隨著參數(shù)復(fù)雜度的提高,仍未解決局部最優(yōu)解的問(wèn)題。
近年來(lái),隨著工業(yè)領(lǐng)域控制系統(tǒng)性能需求的提高,粒子群算法易在局部求得最優(yōu)解的問(wèn)題越來(lái)越明顯,為解決這一問(wèn)題,需優(yōu)化粒子群算法[11-14]。于彥[15]對(duì)采用自適應(yīng)權(quán)重的粒子群進(jìn)行PID 控制器的參數(shù)優(yōu)化,雖然使得PID 的效果更好,但該方法會(huì)增大權(quán)重,影響收斂速度和瞬態(tài)響應(yīng)。徐克鋒等[16]基于天牛須搜索算法改進(jìn)粒子群算法,經(jīng)優(yōu)化后的控制器具有更好的控制性能,但采用天牛須搜索算法的收斂速度較慢,面對(duì)復(fù)雜問(wèn)題時(shí),易出現(xiàn)搜索失敗的情況。張繼榮等[17]將確定權(quán)重的方法由正弦確定改為余弦確定,獲得更好的實(shí)際效果,但基于該方法尋優(yōu)的PID 控制有較強(qiáng)的震蕩和較高的超調(diào)量。
本文提出了一種基于改進(jìn)自適應(yīng)粒子群的優(yōu)化算法,將絕對(duì)誤差積分(integral of absolute value of error criterion,IAE)準(zhǔn)則作為性能指標(biāo)函數(shù),將以最小值確定慣性權(quán)重法的自適應(yīng)算法引入標(biāo)準(zhǔn)粒子群優(yōu)化算法(particle swarm optimization, PSO)中,對(duì)采用Simulink 建立的PID 控制模型參數(shù)進(jìn)行尋優(yōu),并與基于實(shí)踐經(jīng)驗(yàn)整定法、標(biāo)準(zhǔn)粒子群算法和一般自適應(yīng)粒子群算法進(jìn)行參數(shù)尋優(yōu)的PID 控制系統(tǒng)的效果比較,提出的新方法表現(xiàn)出更好的控制效果。
作為在工業(yè)控制環(huán)境中最常用的控制器之一,PID 控制器是以比例單元(Proportion,P)、積分單元(Integration,I)和微分單元(Differentiation,D)3 個(gè)基本部分組成,其原理如圖1 所示。

圖1 PID結(jié)構(gòu)原理Fig.1 PID structure schematic diagram
PID 控制器以輸入和輸出之間的差異值作為對(duì)象,通過(guò)對(duì)3 個(gè)關(guān)鍵變量的調(diào)節(jié)控制被控對(duì)象。比例系數(shù)調(diào)節(jié)比例單元中參數(shù)值,會(huì)影響控制系統(tǒng)的響應(yīng)速度,并提高處于穩(wěn)態(tài)后系統(tǒng)的精度,用Kp表示;積分環(huán)節(jié)可消除穩(wěn)態(tài)誤差,使輸出值與給定值相同,并保持一致,其系數(shù)用Ki表示;微分環(huán)節(jié)能避免被控對(duì)象出現(xiàn)滯后,減少系統(tǒng)的超調(diào)和振蕩,降低穩(wěn)定裕度,微分系數(shù)用Kd表示。由圖1 可知,PID控制器的動(dòng)態(tài)方程如下:
式中:x(t)為目的信號(hào);y(t)為輸出結(jié)果;e(t)為x(t)與y(t)的差值;μ(t)為控制器輸出。
由式(2)可知,Kp、Ki和Kd的不同組合會(huì)影響PID 控制器的性能。因此PID 控制器的參數(shù)尋優(yōu)可獲得基本參數(shù)的最優(yōu)解,進(jìn)而確保控制器符合實(shí)際使用需求。
粒子群算法是早期研究人員根據(jù)群鳥(niǎo)捕食得到啟迪,開(kāi)發(fā)的優(yōu)化算法,其流程如圖2所示。

圖2 標(biāo)準(zhǔn)粒子群算法流程Fig.2 Flow chart of standard particle swarm optimization algorithm
將群鳥(niǎo)的個(gè)體均視為1 個(gè)粒子,所有粒子記作的群體對(duì)應(yīng)的鳥(niǎo)群,更新每個(gè)粒子的開(kāi)始速度與位置的表達(dá)式如下:
式中:ω為慣性權(quán)重;υi為粒子個(gè)體的速度;ci為粒子的學(xué)習(xí)因子;pi為粒子個(gè)體;pBest為粒子個(gè)體在每一步得出的解的最優(yōu)值;gBest 為粒子個(gè)體在全局中每一步得出的解的最優(yōu)值;ri為均勻隨機(jī)取值;k為迭代次數(shù)。
將c1、c2設(shè)置為c1=c2=2,r1、r2的取值是隨機(jī)的,但分布均勻,其取值均為-1~1。
由式(3)可知,粒子迭代更新的主要依據(jù)是pBest 和gBest。粒子展開(kāi)速度更新后,將影響下一代速度,群體的最優(yōu)解在更新后也會(huì)影響下一代粒子的速度,累加2 種影響的結(jié)果,獲得下一代粒子的速度。
粒子群算法中ω影響粒子的飛行速度,從而影響其搜索能力。ω的值越大,粒子飛行速度越快,搜索范圍更大,全局搜索能力加強(qiáng);ω的值越小,粒子飛行速度越慢,搜索范圍減小,局部搜索能力加強(qiáng)。因此ω值的選擇對(duì)整個(gè)PSO 的實(shí)際效果具有重要作用。
針對(duì)固定ω?cái)?shù)值可能導(dǎo)致算法產(chǎn)生局部最優(yōu)的問(wèn)題,基于自適應(yīng)的思路調(diào)整ω。采用傳統(tǒng)方法調(diào)整ω的表達(dá)式如下:
式中:ωmax、ωmin分別為ω的最大值和最小值;f為粒子的適應(yīng)度;favg為其平均值;fmax為其最大值。
當(dāng)ω較小時(shí),求得的解更接近最優(yōu)值,以該思路進(jìn)行優(yōu)化,以最小權(quán)值作為自適應(yīng)權(quán)重,根據(jù)不同適應(yīng)度計(jì)算求解ω,使其為適合使用的最佳值,其表達(dá)式如下:
當(dāng)f>favg時(shí),粒子與其最優(yōu)解之間仍相差較大,應(yīng)加大慣性權(quán)重,擴(kuò)大其搜索范圍,以便更加靠近最優(yōu)解;當(dāng)f<favg時(shí),粒子已較接近其最優(yōu)解,更需進(jìn)行局部搜索以探索最優(yōu)解。
為確定控制系統(tǒng)性能的優(yōu)良度,采用性能指標(biāo)作為判斷方法,常用的性能指標(biāo)有ISE、ITSE、IAE和ITAE4種,其表達(dá)式如下:
性能指標(biāo)不同,控制器的效果也不同,但其目的均是使e(t)更小。四者相比,ISE的速度較快,但震蕩也較大;ITSE在瞬態(tài)響應(yīng)后的偏差較小,但會(huì)導(dǎo)致系統(tǒng)進(jìn)入穩(wěn)態(tài)后的穩(wěn)定性較差;采用IAE的系統(tǒng)阻尼效果較好,瞬態(tài)響應(yīng)速度也較快,并能有效抑制系統(tǒng)的小偏差;ITAE的最大動(dòng)態(tài)偏差較大,用分析法計(jì)算較困難。IAE面對(duì)較小偏差時(shí)的效果較好,本文選擇IAE作為性能指標(biāo)函數(shù)。
對(duì)PID 控制系統(tǒng)3 個(gè)參數(shù)值尋優(yōu)的過(guò)程,是基于IAE計(jì)算獲得適應(yīng)度的函數(shù),并以較小值為基準(zhǔn)確定ω值以達(dá)到優(yōu)化PSO 的目的,隨后找尋PID 控制系統(tǒng)3 個(gè)基本參數(shù)的最優(yōu)解,確保系統(tǒng)達(dá)到更好的使用效果。采用該方法對(duì)PID 進(jìn)行參數(shù)尋優(yōu)的結(jié)構(gòu)圖如圖3所示。

圖3 改進(jìn)的粒子群算法優(yōu)化PID的結(jié)構(gòu)Fig.3 Structure diagram of improved particle swarm optimization PID
使用改進(jìn)后的粒子群算法優(yōu)化PID 參數(shù)時(shí),根據(jù)式(3)、式(4)更新粒子群的位置和速度,其流程如圖4所示。

圖4 改進(jìn)粒子群算法優(yōu)化PID控制系統(tǒng)流程Fig.4 Flow chart of improved particle swarm optimization PID control system
為驗(yàn)證經(jīng)改進(jìn)的粒子群對(duì)PID 參數(shù)值進(jìn)行尋優(yōu)后的系統(tǒng)性能,將實(shí)踐經(jīng)驗(yàn)整定法、標(biāo)準(zhǔn)粒子群算法、一般自適應(yīng)權(quán)重的粒子群算法及自適應(yīng)權(quán)重的粒子群算法分別應(yīng)用于對(duì)同一PID 調(diào)頻系統(tǒng)的參數(shù)尋優(yōu),并比較結(jié)果。
實(shí)驗(yàn)的過(guò)程中,粒子的數(shù)量為20,最大迭代次數(shù)為20,將粒子維度設(shè)為3,分別對(duì)應(yīng)求最優(yōu)解的3 個(gè)參數(shù),c1=c2=2,將粒子速度的初始值設(shè)為零,取值為[-1,1],防止粒子速度超出可用范圍而跳過(guò)最優(yōu)解。根據(jù)式(6)確定ω,增強(qiáng)粒子對(duì)局部和全局的搜索能力,將ωmax、ωmin分別設(shè)為0.9 和0.4。采用IAE作為適應(yīng)度函數(shù),利用其能使系統(tǒng)產(chǎn)生適當(dāng)阻尼的特性,減少系統(tǒng)誤差,提高系統(tǒng)穩(wěn)定性。
本文選取傳遞函數(shù)如下的PID 調(diào)頻系統(tǒng)作為被控對(duì)象:
式中:G為傳遞函數(shù);s為頻率。
PID 調(diào)頻系統(tǒng)的Simulink 仿真模型如圖5所示。

圖5 PID調(diào)頻系統(tǒng)Simulink仿真模型Fig.5 Simulink simulation model of PID frequency modulation system
輸入為階躍信號(hào),Error.mat 為性能指標(biāo)IAE的值,使用Matlab 2019編寫(xiě)仿真函數(shù)。
3 種粒子群算法的適應(yīng)度函數(shù)值曲線如圖6 所示。由圖6 可知,以本文提出的方法在收斂時(shí)的適應(yīng)值最低,在第4次迭代時(shí)接近收斂,其他2種方法的分別在第10次和第11次迭代趨于收斂。綜上所述,以最小值為準(zhǔn)進(jìn)行改進(jìn),PSO 收斂速度更快,且在收斂后的控制系統(tǒng)的精度更高。

圖6 3種粒子群優(yōu)化算法的適應(yīng)度函數(shù)值曲線Fig.6 Fitness function value curve of three particle swarm optimization algorithms
將4 種參數(shù)值整定的方法用作PID 控制系統(tǒng),其響應(yīng)曲線如圖7 所示,結(jié)果見(jiàn)表1。由圖7 和表1可知,經(jīng)多次整定,系統(tǒng)超調(diào)量為14.30%,調(diào)節(jié)時(shí)間為4.190 s,采用標(biāo)準(zhǔn)粒子群進(jìn)行參數(shù)尋優(yōu)后,系統(tǒng)的超調(diào)量降到了8.15%,調(diào)節(jié)時(shí)間為4.445 s,與經(jīng)驗(yàn)整定法相比,略有上升,可能是粒子迅速陷入局部極值所導(dǎo)致。自適應(yīng)粒子群算法解決了該問(wèn)題,使系統(tǒng)超調(diào)量下降到3.45%,調(diào)節(jié)時(shí)間減少到1.028 s。本文提出算法的超調(diào)量為3.20%,且調(diào)節(jié)時(shí)間減少為0.165 s,進(jìn)一步提高了系統(tǒng)性能。另外,經(jīng)本文提出算法優(yōu)化的PID 系統(tǒng)基本無(wú)振蕩,其他方法均略有振蕩,說(shuō)明該算法可提高系統(tǒng)的穩(wěn)定性。因此改進(jìn)的自適應(yīng)粒子群算法可優(yōu)化超調(diào)量、響應(yīng)速度、收斂速度等指標(biāo),同時(shí)提升了系統(tǒng)的穩(wěn)定性,控制系統(tǒng)其在實(shí)際應(yīng)用中具有良好的控制效果。

表1 4種參數(shù)優(yōu)化方法的PID整定結(jié)果Tab.1 PID tuning results of four parameter optimization methods

圖7 4種參數(shù)優(yōu)化方法的PID控制效果Fig.7 PID control effect of four parameter optimization methods
本文改進(jìn)了傳統(tǒng)自適應(yīng)粒子群算法中的自適應(yīng)權(quán)重算法,使慣性權(quán)重在局部始終以較小值迭代,提升了粒子的尋優(yōu)能力。采取IAE計(jì)算適應(yīng)度函數(shù),提升阻尼的選擇能力,提高系統(tǒng)的速度。使用該算法對(duì)PID 調(diào)頻系統(tǒng)展開(kāi)參數(shù)尋優(yōu),并與實(shí)踐經(jīng)驗(yàn)整定法、標(biāo)準(zhǔn)粒子群算法和一般自適應(yīng)粒子群算法的尋優(yōu)結(jié)果對(duì)比,結(jié)果顯示其超調(diào)量為3.2%,調(diào)節(jié)時(shí)間減少到0.165 s,與其他3 種方法相比,其振蕩更低,收斂速度更快,且可提升系統(tǒng)穩(wěn)定性,控制系統(tǒng)具有良好的控制效果。