莫興福 李沙
摘? 要:傳統(tǒng)PID控制系統(tǒng)普遍存在調節(jié)時間長、精度計算低、動態(tài)性能不穩(wěn)定等問題,提出將遺傳算法應用于增量式PID,通過選擇、交叉、變異等算子對PID各參數進行優(yōu)化整定。主要通過建立遺傳算法構建參數模型,在控制過程中采用實時穩(wěn)態(tài)追蹤手段及時調整PID控制參數。實驗結果表明,改進的遺傳算法函數可動態(tài)提高增量式PID參數,能有效減少大量計算性能和存儲空間,提高控制器動態(tài)性能,增強系統(tǒng)穩(wěn)定性和快速性。
關鍵詞:遺傳算法;增量式PID;控制器;MATLAB
中圖分類號:TP399? ? ? 文獻標識碼:A 文章編號:2096-4706(2020)03-0073-04
Abstract:The traditional PID control system generally has such problems as long adjustment time,low precision calculation,unstable dynamic performance,etc.,so the genetic algorithm is applied to incremental PID,and the parameters of PID are optimized and set by selection,crossover,mutation and other operators. In this study,the genetic algorithm was used to build the parameter model,and the real-time steady-state tracking method was used to adjust the PID control parameters in time during the control process. The experimental results show that the incremental PID parameters can be dynamically improved in the improved genetic algorithm function,which can effectively reduce a large amount of computing performance and storage space,improve the dynamic performance of the controller,and enhance the stability and rapidity of the system.
Keywords:genetic algorithm;incremental PID;controller;MATLAB
0? 引? 言
目前,設定PID參數的常用技術措施有很多種,但優(yōu)化增量式PID參數方法很少[1]。本文從智能算法的角度利用遺傳算法對增量式PID的參數進行優(yōu)化,最大的特點是不必要懂得被控對象的數學模型,經驗豐富的操作員可以直接對PID進行參數在線整定,或者根據系統(tǒng)誤差及誤差的變化率等參數進行手動調整。因此,在增量式PID控制器參數設定中,研究出基于遺傳算法的參考模型整定參數,可以完成實時自適應參數的優(yōu)化,增加系統(tǒng)的穩(wěn)定性和快速性,具有十分重要的意義和工程價值[2]。
1? PID控制器原理
PID控制器主要由比例(P)、積分(I)和微分(D)三大部分組成,它可以通過調整三個單元的參數Kp、Ki、Kd來整定動態(tài)特征不隨時間轉移而變化的系統(tǒng)。控制器的功能是把給定的比較基準和收集到的數據進行比較,然后通過該元件的輸入值和測量值之間的差異計算出新的輸入值進行輪回,直到達到穩(wěn)定水平狀態(tài)。為了讓系統(tǒng)數據更加精確和穩(wěn)定,PID必須能夠根據具體情況和歷史數據迭代調整新的參考值,才能夠讓系統(tǒng)全部數據達到或保持某種穩(wěn)定狀態(tài)。具體的工作流程圖如圖1所示,R(t)為給定值,y(t)為實際輸入值,M指偏差判斷。
說明:T為采樣周期,t為第t個采樣周期,此時的采樣偏差可以表為e(t)=e(t)-e(t-1),積分為e(t)+e(t+1)+…,可表示為,而微分就可以表示為:。由以上公式能夠看出數字調度的輸出U(t)與過去的全部差異信息相關,計算機對e(t)進行必要的累加,且運算量太大,消耗很多資源,所以需要引用增量式PID算法。
2? 增量式PID
增量型PID的實現(xiàn)是以式(1)(3)為基礎。第t個采樣周期的增量為U(t)-U(t-1),可以采用第t個采樣周期減去第t-1個采樣周期,最后得到增量型PID算法的表示公式:
3? 遺傳算法分析
遺傳算法(Genetic Algorithm,GA)是模仿自然界生物進化機制的一種算法,是計算機科學人工智能領域中用于解決最優(yōu)化的一種搜索啟發(fā)式算法,通過引入選擇、交叉、變異等算子到優(yōu)化進程中[3],可以形成有效的解決方案來優(yōu)化和搜索問題。
3.1? 選擇算子
選擇算子是建立在適合于評價的條件上,從群體中選擇優(yōu)質成員,放棄劣質個體的評價體現(xiàn),它最明顯的特點是以群體成員適應度評判標準為基礎,再使用有效的選擇方式(如輪盤賭選擇法)選擇最優(yōu)個體,使得算法跨過局部收斂障礙,向全局最優(yōu)解方向進化。當前最流行的方法有輪盤賭選擇法[3]、適應度比例法、隨機遍歷抽樣法和局部選擇法。本文以輪盤賭選擇法為例,其公式如下:
3.2? 交叉算子
交叉算子對遺傳算法的搜索能力具有極大的提升作用,它主要是根據交叉率來對兩個成員中的某些基因進行隨機的交換,使其產生新的基因組合,通過交叉將有益的基因重新組合在一起,從而使遺傳算法的搜索能力得到質的飛躍。目前流行的交叉算子方式是單點交叉,它為選擇的個體隨機選擇某個相同位置根據交叉概率進行交換,具體的操作是:在個體中抽樣設定一個交叉點,當實施交叉運算時,該點前或后的兩個成員的局部結構進行互換,并生成兩個新成員[4]。例如:
成員A=<10011001101>→新成員為:A=<100110000 10>;
成員B=<01000100010>→新成員為:B=<010001011 01>。
3.3? 變異算子
變異操作是改變部分串中的某些基因位點的值,從而提升遺傳算法的搜索能力,以保持種群的多樣性。一般來說,變異操作是指對群體中的個體碼串隨機抽取一個或多個基因座的基因做變換,(0,1)二值碼串中的基本變異如下所示:
成員A=<10011001101>→新成員A=<11010001101>。
說明:隨機抽樣在第2位和第5位進行變更,遺傳因子1和0互換,變異后產生新的個體。變異率的選擇范圍受種群數量、染色體長度等要素影響,一般取0.001~0.100。
4? 遺傳算法參數整定
在單純的遺傳算法中,有時候也會出現(xiàn)不收斂的情況,采用一種改進的遺傳算法優(yōu)化增量式PID參數,可使控制系統(tǒng)的性能最優(yōu)。其特點如下:
4.1? 合理的種群大小
在種群關系中,如果種群規(guī)模太小,容易出現(xiàn)近親交配的情況,并且產生出病態(tài)基因,造成染色體上的有效等位基因先天缺乏,從而影響種群的整體質量,即使采用較大概率的變異算子也無法挽回,而且變異算子大概率也會對種群中其他正?;虍a生極大的破壞作用[5]。如果種群規(guī)模太大,由于遺體算子存在隨機誤差,會妨礙小群體中正常的有效模式傳播,并且使得種群進化不能按照規(guī)定模式產生所預測的期望數量,浪費資源且結果很難收斂,導致穩(wěn)健性下降。因此,種群大小在20~100為佳。
4.2? 適應度函數的調整
如果群體規(guī)格較小時,群體中可能存在幾個個體適應度相對較高的情況,它們能遺傳到下一代的概率也較高,這樣種群的多樣性就會降低[6]。這時,需要適應度函數做出適當的調整,希望在遺傳算法的初級階段能夠對一些適應度較高的個體進行控制,以減少與其他個體之間的區(qū)別,保持種群的多樣性。因此,適應度函數在遺傳算法中起著重要的作用,它能直接影響著算法的優(yōu)劣。適應度函數的調整,主要參考了王沛元[5]創(chuàng)建的公式:
4.3? 確定個體評價方法
在遺傳算法中,個體能否遺傳到下一代,主要是看它在群體中適應度的大小,也就是Pi。在計算各個個體的遺傳概率之前,要求所有成員的適應度必須不能為負數,這樣才能正確計算出不同情況下每個個體的遺傳概率。如通過遺傳算法優(yōu)化求目標函數的最大值問題,應該變換公式如下:
5? 實驗實現(xiàn)與結果
改進遺傳算法結合增量式PID控制器公式不難發(fā)現(xiàn),對于這種不確定對象的PID優(yōu)化,實質上就是求解參數不確定系統(tǒng)的優(yōu)化問題??梢酝ㄟ^式(1)(2)來描述這類模型參數在一定的動態(tài)區(qū)域中存在變化的PID優(yōu)化命題[1]。在PID控制器中定義傳遞函數形式如下:
6? 結? 論
經過實驗對照剖析可知,遺傳算法整定的增量式PID控制器參數更為確切,由MATLAB軟件仿真試驗成果顯示,該方法相比原始增量式PID更能對系統(tǒng)的時間誤差進行有效控制,同時也使系統(tǒng)的動態(tài)特性和穩(wěn)態(tài)特性得到較好的提高。但是在調試過程中仍然存在一定的超調量和調節(jié)時間不穩(wěn)定的因素,需要進一步改進算法。
參考文獻:
[1] 曾豪勇,周思柱,易文君.基于MATLAB的增量式PID參數整定 [J].工業(yè)控制計算機,2014,27(6):69-70.
[2] 劉文瑞,趙磊,顏子荔.基于歸一化遺傳算法的PID控制器自適應整定 [J].科學技術創(chuàng)新,2019(19):61-62.
[3] 唐雪萍.基于遺傳算法的不確定對象PID優(yōu)化 [D].南昌:南昌航空大學.2011.
[4] 高成,龐家騰.基于遺傳算法對PID控制器參數的整定 [J].現(xiàn)代信息科技,2019,3(2):171-172.
[5] 王沛元.基于遺傳算法優(yōu)化PID參數的風電機組獨立變槳控制 [D].長沙:湖南大學,2018.
[6] 牛薌潔,王玉潔,唐劍.基于遺傳算法的PID控制器參數優(yōu)化研究 [J].計算機仿真,2010,27(11):180-182+230.