文章出處

摘 要: 自抗擾控制器在強干擾系統和大時滯條件下的控制效果不好,主要影響因素是靜態參數機制,為此設計了一種基于差分進化算法和粒子群算法聯合優化的自抗擾控制器。使用粒子群算法對自抗擾控制器中抗擴張狀態觀測器的動量估計系數進行在線優化,使用誤差閾值觸發啟動的伺服機制提高動態優化的計算速度,并使用差分進化算法的變異、交叉和選擇算子提高粒子群算法的多樣性,防止陷入局部最優值以提高算法的收斂精度。在熱工時滯系統中的實驗結果表明,改進后的算法在強干擾系統和大時滯條件下的控制效果得到提高,抗干擾性能和魯棒性得到提高。

  關鍵詞: 自抗擾控制器; 粒子群算法; 差分進化算法; 抗干擾; 魯棒性
  中圖分類號: TN02?34; TP183 文獻標識碼: A 文章編號: 1004?373X(2017)03?0092?04
  Design of active disturbance rejection controller based on
  joint optimization algorithm of PSODE
  REN Lu, HE Ping, ZHANG Xiaolei, GUO Xiulin
  (Faculty of Metallurgical and Energy Engineering, Kunming University of Science and Technology, Kunming 650093, China)
  Abstract: Since the active disturbance rejection controller in strong interference system and under large?delay condition has bad control effect due to the influence of the static parameter mechanism, an active disturbance rejection controller based on the joint optimization of the particle swarm optimization algorithm and difference evolution algorithm was designed. The particle swarm optimization algorithm is used to optimize the momentum estimation coefficient of the anti?expansion state observer in the controller online. The servo mechanism started by the error threshold trigger is adopted to improve the computation speed of the dynamic optimization. The mutation, crossover and selection operators of the difference evolution algorithm are employed to improve the diversity of the particle swarm optimization algorithm and prevent it from falling into the local optimum, so as to improve the convergence precision of the algorithm. The experimental results of the thermal time delay system show that the control effect of the improved controller in strong interference system and under large?delay condition is improved, and the anti?jamming performance and robustness are enhanced.
  Keywords: active disturbance rejection controller; particle swarm optimization; differential evolution algorithm; anti?jamming performance; robustness
  0 引 言
  自抗擾控制器[1](Active Disturbances Rejection Control,ADRC)因其不需受控對象具備精確的數學模型就能實現高精度控制,在魯棒性、抗干擾能力和響應速度方面具有獨特的優勢,在機器人控制、電機控制、電力系統和飛行控制等領域得到廣泛應用,具備較強的工業實用價值[2]。但是由于ADRC的相關參數較多,調整存在較大難度,因此目前對ADRC的改進優化算法較多,主要包括使用混沌粒子群[3]、免疫粒子群[4]和模擬控制[5]等算法優化的ADRC,這些改進算法有效提高了ADRC的參數調整效率,對ADRC的實際應用起到較好的促進作用,但還是采用靜態優化機制,而ADRC本身是參數線下靜態優化機制,在熱工系統之類的強干擾和大時滯環境系統下易導致輸出超調和不穩定,系統誤差易超差導致系統紊亂[6],針對這一缺陷,本文使用差分進化算法(Difference Hybrid Algorithm,DE)和粒子群算法(Particle Swarm Optimization Algorithm,PSO)的聯合算法對ADRC算法進行動態優化,利用PSO對ADRC內擴張狀態觀測器的動量估計系數進行優化,同時結合差分進化算法的變異、交叉和選擇算子提高粒子群算法的多樣性,防止PSO陷入局部最優值,提高PSO的全局搜索能力。   1 PSODE算法
  1.1 PSO算法
  PSO算法[7]是基于種群的隨機優化算法,模擬鳥群、昆蟲、魚群等的群集行為,算法初始化為一組隨機解,經迭代后獲得最優解,在各次迭代中粒子通過跟蹤局部最優解[Pbest]和全局最優解[Gbest]進行更新。在種群數目為[m]的群體中,在[D]維解空間中第[i]個粒子的位置為[xi=xi1,xi2,…,xid,]其中[i=1,2,…,m,]粒子速度為[vi=vi1,vi2,…,vid],將粒子位置代入到目標函數中能獲得適應值,設第[i]個粒子搜索到的最優位置為[Pi=Pi1,Pi2,…,Pid],整個群體獲取的最優位置為[Pg=Pg1,Pg2,…,Pgd],各粒子通過更新粒子速度和位置在整個狀態空間內搜索,如下所示:
  [vidt+1=vidt+c1randpid-xid+c2randpgd-xid] (1)
  [xidt+1=xidt+vidt+1] (2)
  式中:[c1,c2]為學習因子,又稱加速度常數;[rand?]是在區間[0,1]內的隨機函數。
  1.2 差分進化算法
  差分進化算法[8]的主要原理是按照雜交、變異和選擇等操作進行進化運算,通過雜交、變異后的新個體參與父體的競爭,根據新一代和父體的適應度好壞情況選擇適應度好的一代作為下一代。設[pkt]是在變異過程中的獨立個體,對其運算生成的變異個體[pkt+1]如下所示:
  [pkt+1=pr3t+ξ?pr1t-pr2t] (3)
  式中:[pr1,pr2,pr3]是從群體中任意選擇的三個互異個體;[ξ]為縮放因子,其功能是對變異運算的影響進行調整以提高變異運算的可控性。
  雜交操作是產生多樣性較好的個體,以便于群體的差分進化,通過獨立個體與變異個體的二項分布雜交運算重組,生成新型的雜交個體,雜交運算如下:
  [pkt+1=pk1t+1,pk2t+1,…,pkjt+1,…,pkDt+1] (4)
  [pkjt+1=pkjt+1,rand bj≤PCRpkjt,rand bj>PCR] (5)
  式中:[j∈1,D,][D]為解空間維數;[PCR]為變異概率且有[PCR∈0,1;][rand bj]是同一隨機數發生器的第[j]個值。在差分進化算法中選擇操作時使用遺傳替代最優原則,在子代進化指標優于父代時進行選擇替換,若子代并沒有優化則父代直接延續到子代。
  1.3 PSODE混合優化算法
  PSO算法和差分進化算法都是在群體內部的啟發算法,但PSO算法的全局搜索能力不足,容易陷入局部最優解[9],可通過改進群體多樣性方法提高算法的局部搜索能力,為此提出了粒子群算法與差分進化算法的混合優化算法,使用差分進化算法的交叉算子和選擇算子提高局部搜索和記憶能力,同時其變異算子在保證種群多樣性的同時可有效提高算法的相關性和檢索速度,綜合利用差分進化算法的變異、交叉、選擇算子確保種群中優秀個體的存在,并使算法避免陷入局部最優值。
  PSO算法使用非線性動態自適應慣性權重策略,慣性權重的更新過程如下:
  [ωt=ωe+ωs-ωe?e-k?t2/t2max] (6)
  式中:[ωs,ωe]分別為起始慣性權重和最終慣性權重;[k]為控制因子,對慣性權重隨時間變化曲線的平滑度進行控制。PSODE算法(Particle Swarm Optimization′s Differential Evolution Algorithm)的原理是在群體中某個粒子陷入局部最優值時,根據粒子群體方向確定后續位置的同時還要根據差分進化算法的最優個體信息確定后續位置,兩種算法的位置信息結合優化引導陷入局部最優的粒子向全局最優解的位置進化。為了預防算法在最大迭代次數完成之前位置更新陷入停滯,�O置變異機制產生新的位置,其運算如下:
  [xt+q+1k=Xmin+rand0,1?Xmax-Xmin] (7)
  式中:[Xmin,Xmax]為算法預設的搜索邊界;[rand0,1]為隨機生成的[0,1]區間內的隨機數,通過這種措施將使粒子不斷更新。
  2 組合優化的自抗擾控制器設計
  2.1 ADRC結構
  ADRC[10]主要由三個組成部分,對應的作用分別是:非線性跟蹤微分器,用于實現對系統輸入信號快速無超調跟蹤并給出良好的微分信號;擴張狀態觀測器,用于對系統的擾動和狀態進行估計;非線性狀態誤差反饋控制器,用于獲取控制量。一般情況下最簡單的ADRC只包含非線性狀態誤差反饋控制律,而最復雜的ADRC則由上述三個部分組成。典型的二階ADRC結構如圖1所示,其中[v(t)]是設定信號;[v1,v2]是[v(t)]和其微分的跟蹤信號;[e1,e2]是誤差;[y(t)]是被控系統的輸出;[w(t)]是系統擾動;[z1,z2]是輸出[y(t)]的跟蹤信號;[z3]是未知擾動的觀測值;[u0]是非線性狀態誤差反饋控制器輸出的控制信號;[u]是經擾動補償后的控制信號。
  非線性跟蹤微分器生成微分信號的同時為輸入控制信號提供過渡過程,其計算過程如下:
  [v1=v2v2=-fstv1,v2,vt,r,h0] (8)
  式中:[r]是跟蹤速度參數;[h0]是濾波因子。隨后擴張狀態觀測器估算ADRC與被控系統的內外擾動總和:
  [ε=z1-yz1=z2-β01fal(ε,α1,δ1)z2=z3-β02fal(ε,α2,δ1)+b0uz3=β03fal(ε,αe,δ1)] (9)
  式中:[β01,][β02,][β03]為擴張狀態觀測器的動量估計系數,決定了擴張狀態觀測器估算擾動量的準確性;[fal?]為非線性反饋函數[11]。狀態誤差反饋控制器則根據擴張狀態觀測器的狀態變量反饋值和非線性跟蹤微分器的微分信號計算輸出控制量,實際使用非線性PID控制算法如下:   [u0k=kpfale1(k),α1,δ1+kdfale2(k),α2,δ2] (10)
  由于ADRC的靜態估算機制不足,誤差估計范圍在面對系統干擾跳動大或者時滯嚴重時易超差,將會導致系統紊亂,因此本文引入差分進化算法和粒子群算法的聯合算法對ADRC進行動態優化,以提高ADRC強干擾系統和大時滯條件下的控制效果。
  2.2 ADRC優化
  PSODE混合優化算法從隨機解出發,通過差分進化算法控制PSO算法避免陷入局部最優解,從而快速獲取全局最優解,其實現結構簡單、計算速度快,可采用實數編碼,在實時在線優化算法中具有一定優勢。采用PSODE混合優化算法的ADRC結構如圖2所示,將PSODE混合優化算法置于擴張狀態觀測器之前,對擴張狀態觀測器的三個動量估計系數[β01,][β02,][β03]進行優化。
  由于ADRC本身具備抗干擾能力,因此在優化后的體系中為了確保PSODE混合優化算法的實時性,提高計算效率,設置一個誤差閾值[ηT,]在誤差超過該誤差閾值后實施PSODE的在線優化,并非每次運算都進行優化,從而在保證算法性能的同時有效減少優化時間。同時PSODE混合優化算法的復雜度較高,出手系統實時性考慮必須對PSODE算法進行兼容性改進。在PSODE算法中為確定差分進化后的選擇操作,需確定適應度[12]以比較父代個體與子代個體的優劣。為此設定粒子的密集度[Ni]的計算如下:
  [Ni=k=1Dfkmax-fkminfi+1k-fi-1k] (11)
  式中:[D]為解空間維數;[fi+1k, fi-1k]分別對應相鄰的兩個粒子的待優化函數值;[fkmax, fkmin]是對應待優化函數的極大值和極小值,并定義優勢度[Yi]的計算:
  [Yi=j=1qndi,j] (12)
  式中:[q]為鄰域范圍;[ndi,j]為粒子優勢值,在粒子[i]優于粒子[j]時取值為1,否則為0。在密集度和優勢度的基礎上定義PSODE算法的�m應度[F]為:
  [F=Kssess+Ke0ttetdt+KmpMpND] (13)
  式中:[et,ess,Mp]分別是反饋誤差、穩態誤差和超調量,[Ke,Kss,Kmp]分別是對應系數。這樣在PSODE算法運行中粒子選擇操作可根據適應度[F]確定變異個體和父代的優劣從而保留整個群體中的精英,使優化算法更容易獲取全局最優值。
  3 實驗驗證
  為了驗證本文的PSODE聯合優化算法的性能,在熱工時滯系統[13]這種典型的時滯系統中進行實驗驗證,并與ADRC和PSO優化的ADRC算法進行性能比較。熱工時滯系統的傳遞函數為:
  [Gps=1-αs1+Tps2kpe-τs] (14)
  式中:[kp,Tp,τ]均為系統狀態參數,隨鍋爐運行工況的變化而變化,實驗中使用[65%]負荷狀態,主要相關參數設置如表1所示。
  為測試各種算法的魯棒性,設置系統負載從[65%]跳變到[100%],對應各參數隨之跳變攝動,三種算法的階躍響應曲線如圖3所示。可見ADRC,PSO?ADRC和PSODE?ADRC三種控制器的輸出超調量分別為[23.75%,][14.53%]和[9.71%],但相較于ADRC的系統調節時間,PSO?ADRC和PSODE?ADRC的調節時間分別延長了67 s,81 s。
  為測試各種算法的魯棒性,設置一段較長時間的擾動信號,三種算法的階躍響應曲線如圖4所示。可見ADRC,PSO?ADRC和PSODE?ADRC三種控制器的輸出超調量分別為21.87%,9.13%和5.26%,但相較于ADRC的系統調節時間,PSO?ADRC和PSODE?ADRC的調節時間分別延長了52 s,62 s。
  從實驗結果可以看出,使用PSODE算法優化的自抗擾控制器相較于PSO?ADRC和ADRC的魯棒性和抗干擾性能均有一定程度的提升,但對應的調節時間也相應增加,在一定程度上影響了系統的實時性。
  4 結 語
  本文針對ADRC系統靜態估算機制不足導致在系統干擾跳動大或者時滯嚴重時適應性較差的缺陷,使用PSO算法和差分進化算法對ADRC在系統誤差超過閾值后實施在線優化,調節擴張狀態觀測器的動量估計系數從而提高擴張狀態觀測器估算擾動量的準確性,在保證實時性的同時提高ADRC在時滯嚴重和強干擾環境下的抗干擾性能。實驗結果表明,PSODE混合優化算法的ADRC魯棒性和抗干擾性能均得到提高,但系統復雜度增大導致實時性受到一定影響,這將是后續研究需要重點解決的問題。
  參考文獻
  [1] HAN J. From PID to active disturbance refection control [J]. IEEE transactions on industrial electronics, 2009, 56(3): 900?906.
  [2] 楊瑞光,孫明瑋,陳增強.飛行器自抗擾姿態控制優化與仿真研究[J].系統仿真學報,2010,22(11):2689?2693.
  [3] 宗陽,張科,王靖宇.一種基于模糊ADRC的舵機控制算法設計與實現[J].西北工業大學學報,2011,29(2):217?221.
  [4] 程啟明,程尹曼,汪明媚,等.基于混沌粒子群算法優化的自抗擾控制在蒸汽發生器水位控制中的應用研究[J].華東電力,2011,39(6):957?963.
  [5] 劉朝華,張英杰,章兢,等.基于免疫雙態微粒群的混沌系統自抗擾控制[J].物理學報,2011,60(1):69?74.
  [6] 張墩利,周國棟,張健.PSO動態優化的ADRC控制器研究[J].控制系統,2015,60(9):60?63.
  [7] 劉曉麗,胡翠華,李蘭英.基于微粒群優化的機器人自抗擾控制[J].現代電子技術,2009,32(10):25?26.
  [8] 劉波,王凌,金以慧.差分進化算法研究進展[J].控制與決策,2007,22(7):721?729.
  [9] 劉小華,林杰.基于遺傳粒子群混合算法的供應鏈調度優化[J].控制與決策,2011,26(4):501?506.
  [10] 楊婷婷,李愛軍,侯震,等.基于粒子群算法的自抗擾飛行控制器優化設計[J].計算機仿真,2009,26(9):59?61.
  [11] 張超,朱紀洪,高亞奎.基于最小拍觀測器的自抗擾控制器設計與性能分析[J].控制理論與應用,2015,32(1):29?34.
  [12] 于泓博,李會,韓德麗.基于PSODE的網格任務調度算法[J].計算機工程與設計,2012,33(4):1447?1451.
  [13] 張吉禮,趙天怡,盧振,等.環境試驗室熱工系統規則自提取模糊控制仿真[J].控制理論與應用,2010,27(4):457?465.
百度搜索“看文倉”,專業資料、生活學習,盡在看文倉,您的在線圖書館!
歡迎轉載:http://www.kanwencang.com/xuexi/20170310/117255.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()