劉智城,楊向宇
(華南理工大學(xué) 電力學(xué)院,廣東 廣州 510640)
生物學(xué)家研究發(fā)現(xiàn),螞蟻在覓食過(guò)程中會(huì)留下一種分泌物,即信息素,也稱(chēng)外激素。螞蟻在運(yùn)動(dòng)過(guò)程中能感知這種物質(zhì)的存在及其濃度,并進(jìn)行路徑的選擇,同時(shí)會(huì)在所經(jīng)過(guò)的路徑上釋放信息素。信息素的濃度隨時(shí)間慢慢揮發(fā),因此在相同時(shí)間內(nèi),從巢穴到食物源所走的路徑越短,信息素殘留的濃度就越高,再次被螞蟻選中的概率就越大。蟻群的集體行為構(gòu)成了一種學(xué)習(xí)信息的正反饋機(jī)制,即通過(guò)個(gè)體之間的信息交流與相互協(xié)作最終找到最優(yōu)解。蟻群算法包含兩個(gè)基本階段:適應(yīng)階段和協(xié)作階段。在適應(yīng)階段,各候選解根據(jù)積累的信息不斷調(diào)整自身結(jié)構(gòu)。在協(xié)作階段,候選解之間通過(guò)信息交流,以期望產(chǎn)生性能更好的解[1]。
在蟻群優(yōu)化算法中,一個(gè)有限規(guī)模的人工螞蟻群體,可以相互協(xié)作地搜索用于解決優(yōu)化問(wèn)題的較優(yōu)解。每只螞蟻根據(jù)問(wèn)題所給的準(zhǔn)則,從被選的初始狀態(tài)出發(fā),建立一個(gè)可行解,或是解的一個(gè)組成部分。在建立問(wèn)題的解決方案時(shí),每只螞蟻都收集關(guān)于問(wèn)題特征和自身行為規(guī)則的信息。螞蟻既能獨(dú)立工作,又能共同行動(dòng),顯示了一種相互協(xié)作的行為。它們通過(guò)信息素進(jìn)行信息的交換。每只人工螞蟻都能夠找到一個(gè)解,但很可能是較差解。蟻群的所有個(gè)體建立起很多不同的解決方案,再通過(guò)相互協(xié)作找出高質(zhì)量的解[2]。人工螞蟻并不試圖完全模擬真實(shí)的螞蟻,但其具有真實(shí)螞蟻所沒(méi)有的能力,如:人工螞蟻有記憶所經(jīng)歷路徑的能力;能夠存儲(chǔ)螞蟻過(guò)去的信息,以便于攜帶有用的信息用于生成解決方案的優(yōu)劣度,控制解決方案。例如,在TSP問(wèn)題中,利用螞蟻的記憶,可以將螞蟻?zhàn)哌^(guò)的城市置于一個(gè)禁忌表中,來(lái)禁止螞蟻重復(fù)走過(guò)這些城市,進(jìn)而滿(mǎn)足TSP問(wèn)題的約束條件[1][3]。
在基本蟻群算法中,人工螞蟻的行為可以描述為:人工螞蟻通過(guò)相互的協(xié)作,在所求問(wèn)題的解中搜索可行解,人工螞蟻按照人工信息素濃度的大小和基于問(wèn)題的啟發(fā)式信息,在問(wèn)題空間移動(dòng)來(lái)構(gòu)造可行解。在此,信息素類(lèi)似于一種分布時(shí)的長(zhǎng)期記憶,這種記憶全局地分布于整個(gè)問(wèn)題的解空間中。當(dāng)人工螞蟻在問(wèn)題空間中移動(dòng)時(shí),在經(jīng)過(guò)的路徑上留下信息素,這些信息素反映了人工螞蟻在問(wèn)題空間覓食過(guò)程中的經(jīng)歷[4]。人工螞蟻在解空間中逐步移動(dòng)從而構(gòu)造問(wèn)題解,同時(shí)它們根據(jù)解的質(zhì)量在其路徑上留下相應(yīng)的濃度信息素。蟻群中的其他螞蟻傾向于沿著信息素濃度大的路徑前進(jìn),同樣螞蟻在這些路徑上留下自己的信息素,從而形成一種正反饋形式的強(qiáng)化學(xué)習(xí)機(jī)制,來(lái)指引蟻群找到高質(zhì)量的問(wèn)題解。蟻群算法還應(yīng)包括另外一種機(jī)制,即信息素的揮發(fā),螞蟻?zhàn)哌^(guò)路徑上的信息素隨著時(shí)間不斷揮發(fā),驅(qū)使螞蟻搜索解空間中新的領(lǐng)域,避免求解過(guò)程過(guò)早地收斂于局部最優(yōu)解[5]。蟻群算法必須有運(yùn)行停止標(biāo)準(zhǔn),即所求解達(dá)到預(yù)定的條件后,算法停止繼續(xù)求解。流程圖如圖1所示,其中NC為迭代次數(shù)。
圖1 基本蟻群算法流程圖
PID控制器系統(tǒng)的原理圖如圖2所示。
圖2 PID控制原理圖
其中:r(t)為輸入量,u(t)為控制量,y(t)為輸出量,e(t)為輸入與輸出之間的偏差量,即e(t)=r(t)-y(t)。連續(xù)時(shí),控制量與偏差量滿(mǎn)足:
(1)
離散時(shí),控制量與偏差量滿(mǎn)足如下差分方程和增量形式[1]:
(2)
(3)
式中:u(n)為本次控制量,e(n)為本次誤差,TI為積分時(shí)間常數(shù),TD為微分時(shí)間常數(shù),Kp為比例系數(shù),T為采樣周期。
在采樣周期已知的情況下,PID控制器只有3個(gè)參數(shù)需要確定,即:Kp、TI和TD,使某一控制性能達(dá)到最佳。
蟻群算法優(yōu)化PID參數(shù)的過(guò)程:
(4)
一次遍歷結(jié)束后,對(duì)每只螞蟻?zhàn)哌^(guò)的路徑進(jìn)行評(píng)價(jià)[6]。首先求得對(duì)應(yīng)的解,求解式為:
(5)
xi=(xiH-xiL)ei+xiL
(6)
再求取相應(yīng)的目標(biāo)函數(shù)。然后記錄下當(dāng)前的最佳路徑。接下來(lái)對(duì)各只螞蟻所經(jīng)歷路徑上的信息素進(jìn)行更新,即:
(7)
為了加強(qiáng)最佳路徑對(duì)螞蟻行為的影響,需要對(duì)其信息素進(jìn)行強(qiáng)化,即:
信息素更新完成后,進(jìn)入下一次遍歷,直到達(dá)到最大遍歷次數(shù)NC為止。最后,輸出在歷次遍歷過(guò)程中所選出的最佳路徑所對(duì)應(yīng)的解。
蟻群算法尋優(yōu)簡(jiǎn)單,魯棒性強(qiáng),是一種效率很高的優(yōu)化算法,它不依賴(lài)于數(shù)學(xué)模型,使處理問(wèn)題更具有適應(yīng)性、魯棒性。
對(duì)于一些復(fù)雜的實(shí)際系統(tǒng),用分?jǐn)?shù)階微積分建模要比整數(shù)階模型更準(zhǔn)確,對(duì)于分?jǐn)?shù)階模型則需要分?jǐn)?shù)階控制器來(lái)提高控制效果。分?jǐn)?shù)階PID控制器由于多了2個(gè)參數(shù),增加了控制的靈活度,對(duì)于分?jǐn)?shù)階系統(tǒng)的控制具有較好的效果,且對(duì)于整數(shù)階系統(tǒng)的控制,也具有一定的控制效果[7-8]。
整數(shù)階PID 控制器的傳遞函數(shù)描述為:
(8)
式中:U(s)為控制器的輸出;E(s)為控制器的誤差輸入。將式(8)中的微分和積分項(xiàng)的階次推廣到分?jǐn)?shù),即可得分?jǐn)?shù)階PID控制器的傳遞函數(shù)[2]。
(9)
式(9)中,當(dāng)λ=μ=1時(shí),Gf(s)就變?yōu)檎麛?shù)階PID控制器的傳遞函數(shù),因此整數(shù)階PID控制器是分?jǐn)?shù)階PID控制器的特殊形式。分?jǐn)?shù)階PID所對(duì)應(yīng)的時(shí)間域方程可以表示為:
u(t)=Kpe(t)+KiD-λe(t)+KdDμe(t)
(10)
式中D-λ、D-μ為分?jǐn)?shù)階微分算子。
從式(9)、式(10)可以看出,相比傳統(tǒng)PID 3個(gè)參數(shù)的整定來(lái)說(shuō),分?jǐn)?shù)階PID控制器的整定參數(shù)有5個(gè),比整數(shù)階控制器多了2個(gè)自由度,即:微分器和積分器的階次,因此分?jǐn)?shù)階PID更具有靈活性,能更加靈活的控制受控對(duì)象,可以得到更好的控制效果[9-10]。
某真空感應(yīng)爐溫度控制系統(tǒng)為二階慣性環(huán)節(jié),其傳遞函數(shù)為:
其中:τ1、τ2為真空感應(yīng)爐溫度控制系統(tǒng)的時(shí)間常數(shù),K為控制系統(tǒng)的比例系數(shù)。
當(dāng)τ1=12s、τ2=10s、K=1 000時(shí),其傳遞函數(shù)為:
為獲取滿(mǎn)意的控制效果,采用時(shí)間乘絕對(duì)誤差積分準(zhǔn)則(ITAE)作為目標(biāo)函數(shù),這種準(zhǔn)則能反映控制系統(tǒng)的快速性和精確性,具有較小的超調(diào)量和較快的響應(yīng)速度,即目標(biāo)函數(shù)為:
式中,e(t)為系統(tǒng)誤差,ts為SIMULINK仿真時(shí)間。
蟻群算法中使用的城市個(gè)數(shù)City=30,路徑數(shù)Path=10,螞蟻個(gè)數(shù)Antsize=40,信息素殘留系數(shù)取ρ1=0.8,ρ2=1.0,總遍歷次數(shù)取NC=20。
在應(yīng)用蟻群算法進(jìn)行優(yōu)化時(shí),為了避免所選取參數(shù)優(yōu)化范圍過(guò)大,考慮實(shí)際控制條件限制的前提下,先按經(jīng)驗(yàn)選取一組較好的參數(shù),然后再根據(jù)這組參數(shù)確定參數(shù)優(yōu)化范圍,利于節(jié)約計(jì)算量。本案例參數(shù)尋優(yōu)范圍為:KP∈[0,120]、KI∈[0,0.1]、Kd∈[0,0.1]、λ∈[0,1]、μ∈[0,1]。由于螞蟻路徑的選取是以隨機(jī)概率選取的,因此每次運(yùn)行的結(jié)果都不一樣,有差異,可多運(yùn)行幾次,選取控制效果最好的一組參數(shù)作為尋優(yōu)結(jié)果。
PID控制器優(yōu)化參數(shù)為:KP=110.771 2、KI=0.038 35、Kd=0.011 844,最優(yōu)參數(shù)所對(duì)應(yīng)的目標(biāo)函數(shù)值為:J=1.53×10-6。
分?jǐn)?shù)階PID控制器優(yōu)化參數(shù)為:KP=119.927 5、KI=0.065 5、Kd=0.032,λ=0.462、μ=0.145 5,最優(yōu)參數(shù)所對(duì)應(yīng)的目標(biāo)函數(shù)值為:J=1.229 3×10-6。
采用優(yōu)化整定后的PID控制階躍響應(yīng)和分?jǐn)?shù)階PID控制階躍響應(yīng)對(duì)比圖如圖3所示。
圖3 PID控制和分?jǐn)?shù)階PID控制階躍響應(yīng)對(duì)比圖
在0.025s~0.03s加入干擾信號(hào)后,采用優(yōu)化整定后的PID控制階躍響應(yīng)和分?jǐn)?shù)階PID控制階躍響應(yīng)的對(duì)比圖如圖4所示。
圖4 干擾影響下的PID控制和分?jǐn)?shù)階PID控制階躍響應(yīng)對(duì)比圖
由圖3-圖4可知(黑白印刷有疑問(wèn)可咨詢(xún)作者),基于蟻群算法優(yōu)化后,PID控制階躍響應(yīng)無(wú)超調(diào),調(diào)節(jié)時(shí)間短,響應(yīng)速度快;相比PID控制,分?jǐn)?shù)階PID控制階躍響應(yīng)無(wú)超調(diào),調(diào)節(jié)時(shí)間更短,響應(yīng)速度更快,目標(biāo)函數(shù)的值更小。有干擾的情況下,相比PID控制,分?jǐn)?shù)階PID控制的抗干擾能力更強(qiáng),魯棒性更好。
通過(guò)仿真分析對(duì)比可知,基于蟻群算法優(yōu)化的整數(shù)階PID控制器比傳統(tǒng)PID控制器具有更優(yōu)的性能;基于蟻群算法優(yōu)化的分?jǐn)?shù)階PID控制器相對(duì)于基于蟻群算法優(yōu)化的整數(shù)階PID控制器具有更短的調(diào)節(jié)時(shí)間,也沒(méi)有超調(diào),且響應(yīng)速度更快。