郭鵬程,張力平,趙 頓
(長安大學,陜西 西安 710000)
在控制方法中,PID控制器是最早的控制方法之一[1]。PID算法的性能主要依賴于控制參數(shù)的優(yōu)化,傳統(tǒng)優(yōu)化方法有通過專家提供經驗、Z-N法和單純形法。前者依賴于操作者的經驗,而后兩者中,ZN法的控制過程復雜,普通人員難以操作,單純形法的超調量大,達到穩(wěn)定的時間比較長[2]。雖說智能算法已取得了不錯的成績,例如粒子群算法、遺傳算法等。其中,粒子群算法以其實現(xiàn)容易、收斂速度快等優(yōu)點被重視[3]。但還存在一定的缺點。
蟻群算法是基于種群的啟發(fā)式仿生進化算法,該算法運用的正反饋機制與分布式并行計算機制[4],容易與其他方法相結合,具有較強的收斂性和魯棒性[5]。本研究采用蟻群算法與模擬退火法融合的算法優(yōu)化PID參數(shù),不僅克服了傳統(tǒng)PID調節(jié)的缺陷,還對蟻群算法調節(jié)PID進行改進。
蟻群算法是由意大利學者M.Dorigo等人提出的,對自然界螞蟻的尋徑方式進行模擬而得出的一種仿生進化算法[6]。較優(yōu)路徑上的信息素濃度越來越高,其他路徑的信息素隨著時間流逝不斷地揮發(fā),最終會形成最優(yōu)路徑。
設螞蟻數(shù)量和城市數(shù)量分別為m和n,城市i和j之間的距離為dij,τij(t)表示t時刻城市i和j路徑上的信息素濃度。t時刻,螞蟻k從城市i轉移到城市j的概率如下所示:
其中,α為信息素重要程度因子;β為啟發(fā)函數(shù)重要程度因子。值越大,搜索隨機性減弱,且可能會造成局部最優(yōu)。
在螞蟻釋放信息素的同時,各個路徑的信息素會逐漸消失,所以當螞蟻完成一次循環(huán)后,信息素濃度需實時更新,即:
其中,ρ表示信息素揮發(fā)濃度,△τij表示所有螞蟻在路徑上釋放的信息素之和,△τkij表示第k只螞蟻在城市i和j的路徑上釋放的信息素濃度。ρ較小時,則搜索重復路徑,直接影響算法的隨機性能和全局搜索能力;ρ過大時,則信息素揮發(fā)得相對較多,會產生過多無用搜索操作,降低算法的收斂速度。
蟻群算法優(yōu)化PID的步驟:
1)初始化參數(shù)。包括螞蟻個數(shù)、最大迭代次數(shù)、信息素蒸發(fā)系數(shù)、轉移概率常數(shù)等。
2)隨機生成螞蟻初始位置,計算出適應度值,設為初始信息素,計算狀態(tài)轉移概率。
3)更新位置。對于螞蟻位置越界采用邊界吸收方式進行處理,將螞蟻位置控制在限定范圍之內。
4)更新信息素。
5)滿足終止條件,結束搜索過程,輸出優(yōu)化值;不滿足,則繼續(xù)迭代優(yōu)化。
由以上對蟻群算法的描述,在傳統(tǒng)的蟻群算法中,α和ρ的取值固定,會造成在不同時段其重要性無法發(fā)揮,影響收斂速度和全局搜索能力。為了在加快收斂速度和避免局部收斂間達到平衡,將模擬退火算法(Simulated Annealing,SA)與蟻群算法相互容納。模擬退火算法思想利用了實際物理退火的熱力學過程中熔融固體粒子的統(tǒng)計熱力學規(guī)律與數(shù)學上求解復雜組合優(yōu)化問題的類似性[7]。物理退火通過加溫過程、等溫過程以及冷卻過程使粒子熱運動減弱,能量下降,得到晶體結構。具體優(yōu)化方式如下:在每次迭代T中每只螞蟻i都有初始解FV0,設定初始溫度T0=TT0,從領域函數(shù)中產生新解FV,并計算目標的差值DC=FV-FV0,DC小于零,則接受新解;DC大于零,則通過Metropolis過程以exp(-DC/T)>rand的概率接受新解,然后退溫T0=T0*DS(DS為0~1之間的數(shù)),溫度未達到條件則重復之前的操作,溫度到達則將螞蟻數(shù)目i=i+1;再次進行搜索,一次迭代完成后T=T+1,再次迭代直到迭代結束。具體流程圖如圖1所示。
圖1 優(yōu)化流程圖
控制系統(tǒng)結構如圖2所示。
圖2 控制系統(tǒng)結構圖
為了分析算法的可行性,在MATLAB R2018b平臺進行仿真測試,在Simulink中建立PID控制模型,建立蟻群算法(ANT)和蟻群與模擬退火融合算法(ANT-SA)的m文件。通過運行m文件調用PID控制系統(tǒng)模型,將PID的參數(shù)kp、ki、kd進行賦值,運行PID系統(tǒng)模型并返回目標函數(shù),以便蟻群算法(ANT)和蟻群與模擬退火融合算法(ANT-SA)判斷結果優(yōu)劣,從而找出最優(yōu)解。
為了驗證其性能,從峰值時間tp、超調量δ和調節(jié)時間ts這三個方面進行對比。如圖3所示。
圖3 仿真效果圖
由圖3可知,蟻群模擬退火算法融合調節(jié)PID相比使用傳統(tǒng)方式調節(jié)PID以及蟻群算法調節(jié)PID綜合性能更加優(yōu)良。具體仿真參數(shù)如表1所示。
表1 仿真性能
由仿真實驗結果可知,與傳統(tǒng)PID和ANT調節(jié)PID相比,ANT-SA調節(jié)PID在超調量和調節(jié)時間方面有著明顯的優(yōu)勢;在峰值時間上ANT-SA算法調節(jié)PID也比ANT調節(jié)PID優(yōu)良,進而驗證了蟻群算法和模擬退火算法融合后對PID控制的有效性。
針對傳統(tǒng)PID調節(jié)方式存在的問題,提出一種將蟻群算法和模擬退火算法融合(ANT-SA)后用于調節(jié)PID參數(shù)的整定方法,使用MATLAB R2018b/Simulink進行仿真。仿真結果表明,ANT-SA算法在PID調節(jié)中體現(xiàn)了超調量小、調節(jié)時間短和響應時間較快的優(yōu)勢,控制效果理想。