国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于遺傳算法的PID參數(shù)的優(yōu)化控制策略

2013-09-10 00:45李樹青柳州柳工叉車有限公司廣西柳州545006
自動(dòng)化博覽 2013年3期
關(guān)鍵詞:適應(yīng)度交叉遺傳算法

李樹青(柳州柳工叉車有限公司,廣西 柳州 545006)

1 引言

PID(Proportional-Intigral-Differential)控制是比例積分微分控制的簡稱。在生產(chǎn)過程自動(dòng)控制的發(fā)展歷程中,PID控制是歷史最久且生命力最強(qiáng)的基本控制方式之一。其優(yōu)點(diǎn)主要體現(xiàn)在以下兩個(gè)方面:(1)簡單實(shí)用,易于實(shí)現(xiàn),性能優(yōu)良。PID控制器具有簡單而固定的形式,原理也不復(fù)雜,使用起來很方便,控制效果也很好。(2)魯棒性能優(yōu)良。其控制品質(zhì)對被控對象特性的變化不大敏感,在很寬的操作條件范圍內(nèi)都能保持較好的魯棒性。由于具有這些優(yōu)點(diǎn),PID控制被廣泛應(yīng)用于工業(yè)與民用領(lǐng)域,并取得了很好的經(jīng)濟(jì)效果。但PID參數(shù)復(fù)雜繁瑣的參數(shù)整定過程一直困擾著工程技術(shù)人員,用經(jīng)驗(yàn)規(guī)則加試湊的方式來調(diào)整PID控制參數(shù),往往費(fèi)時(shí)且難以滿足控制要求,因此,研究PID參數(shù)整定技術(shù)具有十分重要的工程實(shí)踐意義。遺傳算法(Genetic Algorithm,CA)為PID參數(shù)的優(yōu)化整定提供了新的途徑。遺傳算法只依賴于適應(yīng)度函數(shù),不需知道對象的全部信息,這樣即使在對象模型不確定的情況下,它仍可根據(jù)對象的輸出情況對PID控制器中的參數(shù)進(jìn)行優(yōu)化,而且遺傳算法的群體優(yōu)化機(jī)制使得它可能找到全局最優(yōu)解。

2 PID控制

2.1 PID控制原理

PID控制器本身是一種基于“過去”、“現(xiàn)在”和“未來”信息估計(jì)的簡單控制算法。常規(guī)PID調(diào)節(jié)器是一種應(yīng)用廣泛、技術(shù)成熟的控制方法。PID控制的基本思想是將偏差的比例、積分和微分三參數(shù)通過線性組合構(gòu)成控制器,對被控對象進(jìn)行控制,采用PID控制時(shí),系統(tǒng)控制品質(zhì)的優(yōu)劣取決于上述三參數(shù)的整定。如圖1所示。

圖1 PID控制系統(tǒng)原理框圖

PID控制器根據(jù)給定值r(t)和實(shí)際輸出值y(t)構(gòu)成控制偏差

將偏差按比例、積分和微分通過線性組合構(gòu)成控制量,對被控對象進(jìn)行控制,其控制規(guī)律為:

式中,kp——比例系數(shù);T1——積分時(shí)間常數(shù);TD——微分時(shí)間常數(shù)。

PID控制器各校正環(huán)節(jié)作用如下:

(1)比例環(huán)節(jié)。及時(shí)成比例地反映控制系統(tǒng)的偏差信號,偏差一旦產(chǎn)生,控制器立即產(chǎn)生控制作用,以減少偏差。

(2)積分環(huán)節(jié)。主要用于消除靜差,提高系統(tǒng)的無差度。

(3)微分環(huán)節(jié)。能反映偏差信號的變化趨勢,并能在偏差信號值變大之前,在系統(tǒng)中引入一個(gè)有效的早期修正信號,從而加快系統(tǒng)的動(dòng)作速度減少調(diào)節(jié)時(shí)間。

3 遺傳算法及其對PID整定原理

3.1 遺傳算法的原理

3.1.1 遺傳算法概述

遺傳算法(Genetic Algorithms,GA)是1962年由美國Michigan大學(xué)的Holland教授提出的模擬自然界遺傳機(jī)制和生物進(jìn)化而成的一種隨機(jī)并行搜索優(yōu)化方法。他將“優(yōu)勝劣汰,適者生存”的生物進(jìn)化理論引入優(yōu)化參數(shù)的編碼串群體中,按所選擇的適應(yīng)度值函數(shù)并通過遺傳中的選擇、交叉和變異對個(gè)體進(jìn)行篩選,使適應(yīng)度值高的個(gè)體被保留下來,組成新的群體,新的群體既繼承了上一代的信息,又優(yōu)于上一代。這樣周而復(fù)始,群體中的個(gè)體適應(yīng)度值不斷提高,直至滿足一定的條件。

3.1.2 遺傳算法的主要特點(diǎn)

(1)遺傳算法是對參數(shù)的編碼進(jìn)行操作,而非對參數(shù)本身;

(2)遺傳算法是從許多點(diǎn)開始進(jìn)行操作,而非局限于一點(diǎn);

(3)遺傳算法是通過目標(biāo)函數(shù)來計(jì)算適配值,而不需要其他推導(dǎo),從而對問題的依賴性較小;

(4)遺傳算法的尋優(yōu)規(guī)則是由概率決定的,而非確定性;

(5)遺傳算法在解空間進(jìn)行高效啟發(fā)式搜索,而非盲目地窮舉或完全隨機(jī)搜索;

(6)遺傳算法對于待尋優(yōu)的函數(shù)基本無限制,它既不要求函數(shù)連續(xù),也不要求函數(shù)可微,既可以是數(shù)學(xué)解析式所表示的顯函數(shù),又可以是映射矩陣甚至是神經(jīng)網(wǎng)絡(luò)的隱函數(shù),因而應(yīng)用范圍較廣;

(7)遺傳算法具有并行計(jì)算的特點(diǎn),因而可通過大規(guī)模并行計(jì)算來提高計(jì)算速度;

(8)遺傳算法更適合大規(guī)模復(fù)雜問題的優(yōu)化;

(9)遺傳算法計(jì)算簡單,功能強(qiáng)。

3.1.3 遺傳算法的基本操作

(1)復(fù)制(Reproduction Operator)

復(fù)制是從一個(gè)舊種群中選擇生命力強(qiáng)的個(gè)體串產(chǎn)生新種群的過程。根據(jù)位串的適配值拷貝,也就是指具有高適配值的位串更有可能在下一代中產(chǎn)生一個(gè)或多個(gè)子孫。他模仿了自然現(xiàn)象,應(yīng)用了達(dá)爾文的適者生存理論。復(fù)制操作可以通過隨機(jī)數(shù)方法來實(shí)現(xiàn)。若用計(jì)算機(jī)程序來實(shí)現(xiàn)。此外,還可以通過計(jì)算方法實(shí)現(xiàn),其中較典型的幾種方法為適應(yīng)度比例法、期望值法、排位次法等。

(2)交叉(Crossover Operator)

復(fù)制操作能從舊種群中選擇出優(yōu)秀者,但不能創(chuàng)造新的染色體。而交叉模擬了生物進(jìn)化過程中的繁殖現(xiàn)象,通過兩個(gè)染色體的交換組合,來產(chǎn)生新的優(yōu)良品種。它的過程為:在匹配池中任選兩個(gè)染色體,隨機(jī)選擇一點(diǎn)或多點(diǎn)交換點(diǎn)位置;交換雙親染色體右邊的部分,即可得到兩個(gè)新的染色體數(shù)字串。交換體現(xiàn)了自然界中信息交換的思想。交叉有一點(diǎn)交叉、多點(diǎn)交叉、還有一致交叉、順序交叉和周期交叉。

(3)變異(Mutation Operator)

變異運(yùn)算用來模擬生物在自然的遺傳環(huán)境中由于各種偶然因素引起的基因突變,它以很小的概率隨機(jī)改變遺傳基因(表示染色體的符號串的某一位)的值。在染色體以二進(jìn)制編碼的系統(tǒng)中,它隨機(jī)地將染色體的某一個(gè)基因由1變?yōu)?,或由0變?yōu)?,若只有選擇和交叉,而沒有變異,則無法在初始基因組合以外的空間進(jìn)行搜索,使進(jìn)化過程在早期就陷入局部解而進(jìn)入終止過程,從而影響解的質(zhì)量。為了在盡可能大的空間中獲得質(zhì)量較高的優(yōu)化解,必須采用變異操作。

3.1.4 遺傳算法的構(gòu)成要素

(1)染色體編碼方法:基本遺傳算法使用固定長度的二進(jìn)制符號來表示群體中的個(gè)體,其等位基因是由二值符號集{0,1}所組成。初始個(gè)體的基因值可用均勻分布的隨機(jī)值來生成。

(2)個(gè)體適應(yīng)度評價(jià):基本遺傳算法與個(gè)體適應(yīng)度成正比的概率來決定當(dāng)前群體中每個(gè)個(gè)體遺傳到下一代群體中的概率多少。為正確計(jì)算這個(gè)概率,要求所有個(gè)體的適應(yīng)度必須為正數(shù)或零。應(yīng)此,必須先確定由目標(biāo)函數(shù)到個(gè)體適應(yīng)度之間的轉(zhuǎn)換規(guī)則。

(3)遺傳算子:基本遺傳算法使用下述三種遺傳算子:

選擇運(yùn)算使用比例選擇算子;

交叉運(yùn)算使用單點(diǎn)交叉算子;

變異運(yùn)算使用基本位變異算子或均勻變異算子。

(4)基本遺傳算法的運(yùn)行參數(shù):有下述4個(gè)運(yùn)行參數(shù)需要提前設(shè)定:

M:群體大小,即群體中所含個(gè)體的數(shù)量,一般取為20~100;

G:遺傳算法的終止進(jìn)化代數(shù),一般取為100~500;

pc: 交叉概率,一般取為0.4~0.99;

pm:變異概率,一般取為0.0001~0.1。

3.1.5 遺傳算法的應(yīng)用步驟

對于一個(gè)需要進(jìn)行優(yōu)化的實(shí)際問題,一般可按下述步驟構(gòu)造遺傳算法:

第一步:確定決策變量及各種約束條件,即確定出個(gè)體的表現(xiàn)型X和問題的解空間;

第二步:建立優(yōu)化模型,即確定出目標(biāo)函數(shù)的類型及數(shù)學(xué)描述形式或量化方法;

第三步:確定表示可行解的染色體編碼方法,即確定出個(gè)體的基因型x及遺傳算法的搜索空間;

第四步:確定解碼方法,即確定出由個(gè)體基因型x到個(gè)體表現(xiàn)型X的對應(yīng)關(guān)系或轉(zhuǎn)換方法;

第五步:確定個(gè)體適應(yīng)度的量化評價(jià)方法,即確定出由目標(biāo)函數(shù)值f(x)到個(gè)體適應(yīng)度F(x)的轉(zhuǎn)換規(guī)則;

第六步:確定遺傳算法的有關(guān)運(yùn)行參數(shù),即M,G,pc,pm等參數(shù)。

3.2 遺傳算法對PID整定

3.2.1 遺傳算法對PID整定的原理

遺傳算法對PID控制參數(shù)的整定,就是在已知控制PID控制策略為的情況下,利用遺傳算法對PID控制器參數(shù)進(jìn)行尋優(yōu),尋找合適的控制參數(shù)集使給定的性能指標(biāo):為最優(yōu)。

實(shí)現(xiàn)這一優(yōu)化尋優(yōu)過程如下:

(1)參數(shù)的確定及表示

首先確定參數(shù)范圍,該范圍一般是由用戶給定,然后由精度的要求,對其進(jìn)行編碼。選取二進(jìn)制字串來表示每一個(gè)參數(shù),并建立與參數(shù)間的關(guān)系。再把二進(jìn)制串連接起來就組成一個(gè)長的二進(jìn)制字串 ,該字串為遺傳算法可以操作的對象。

(2)選取初始種群

因?yàn)樾枰幊虂韺?shí)現(xiàn)各個(gè)過程,所以采用計(jì)算機(jī)隨機(jī)產(chǎn)生初始種群。針對二進(jìn)制編碼而言,先產(chǎn)生0~1之間均勻分布的的隨機(jī)數(shù),然后規(guī)定產(chǎn)生的隨機(jī)數(shù)0~0.5之間代表0,0.5~1之間代表1。此外,考慮到計(jì)算的復(fù)雜程度來規(guī)定種群的大小。

(3)適配函數(shù)的確定

一般的尋優(yōu)方法在約束條件下可求得滿足條件的一組參數(shù),在設(shè)計(jì)中從該組參數(shù)中尋找一個(gè)最好的。衡量一個(gè)控制系統(tǒng)的指標(biāo)有三個(gè)方面:穩(wěn)定性、準(zhǔn)確性和快速性。上升時(shí)間反映了系統(tǒng)的快速性,上升時(shí)間越短,控制進(jìn)行的越快,系統(tǒng)品質(zhì)也就越好。

如果單純追求系統(tǒng)的動(dòng)態(tài)特性,得到的參數(shù)很可能使控制信號過大,在實(shí)際應(yīng)用中會(huì)因系統(tǒng)中固有的飽和特性而導(dǎo)致系統(tǒng)不穩(wěn)定,為了防止控制能量過大,在目標(biāo)函數(shù)中加入控制量。因此為了使控制效果更好,我們給出了控制量,誤差和上升時(shí)間作為約束條件。因?yàn)檫m應(yīng)函數(shù)同目標(biāo)函數(shù)相關(guān),所以目標(biāo)函數(shù)確定后,直接將其作為適配函數(shù)進(jìn)行參數(shù)尋優(yōu)。最優(yōu)的控制參數(shù)也就是在滿足約束條件下使f(x)最大時(shí),x所對應(yīng)的控制器參數(shù)。

(4)遺傳算法的操作

首先利用適應(yīng)度比例法進(jìn)行復(fù)制。即通過適配函數(shù)求適配值,進(jìn)而求每個(gè)串對應(yīng)的復(fù)制概率。復(fù)制概率與每代字串的個(gè)數(shù)的乘積為該字串在下一代中應(yīng)復(fù)制的個(gè)數(shù)。復(fù)制概率大的在下一代中將有較多的子孫,相反則會(huì)被淘汰。

其次進(jìn)行單點(diǎn)交叉,交叉概率為pc。從復(fù)制后的成員里以pc的概率選取字串組成匹配池,交叉的位置也是隨機(jī)確定的。

最后以概率pm進(jìn)行變異。假如每代有15個(gè)字串,每個(gè)字串12位,則共有15×12=180個(gè)串位,期望的變異串位數(shù)為180×0.100=2(位),即每代中有倆個(gè)串位要由1變?yōu)?或又0變?yōu)?。

初始種群經(jīng)過復(fù)制,交叉及變異得到新一代種群,該種群經(jīng)解碼后代入適配函數(shù),觀察是否滿足約束條件,若不滿足,則重復(fù)以上操作直到滿足為止。約束條件由具體問題所定,只要各目標(biāo)函數(shù)在規(guī)定范圍內(nèi),則終止計(jì)算。以上操作過程可用圖2表示。

圖2 遺傳算法的流程圖

3.2.2 遺傳算法對PID整定的具體步驟

(1)確定各參數(shù)的大致范圍和編碼長度并編碼;

(2)隨機(jī)產(chǎn)生n個(gè)體構(gòu)成初始種群 P(0);

(3)將種群中各個(gè)體解碼成對應(yīng)的參數(shù)值,用此參數(shù)求代價(jià)函數(shù)值J 和適應(yīng)函數(shù)值f,取J=1/f;

(4)應(yīng)用復(fù)制、交叉和變異算子對種群P(t)進(jìn)行操作,產(chǎn)生下一代種群P(t+1);

(5)重復(fù)步驟(3)和(4),直至參數(shù)收斂或達(dá)到預(yù)定的指標(biāo)。

4 遺傳算法程序設(shè)計(jì)

4.1 基于實(shí)數(shù)編碼遺傳算法的PID整定

設(shè)被控對象為二階傳遞函數(shù):

采樣時(shí)間為1ms,輸入指令為一階躍信號。

為獲取滿意的過渡過程動(dòng)態(tài)特性,采用誤差絕對值時(shí)間積分性能指標(biāo)作為參數(shù)選擇的最小目標(biāo)函數(shù)。為了防止控制能量過大,在目標(biāo)函數(shù)中加入控制輸入的平方項(xiàng)。選用式3作為參數(shù)選取的最優(yōu)指標(biāo):

式3中,e(t )為系統(tǒng)誤差,u(t) 為控制器輸出,ts為上升時(shí)間,w1,w2,w3為權(quán)值。

為了避免超調(diào),采用了懲罰功能,即一旦產(chǎn)生超調(diào),將超調(diào)量作為最優(yōu)指標(biāo)的一項(xiàng),此時(shí)最優(yōu)指標(biāo)為:

式4中,w3為權(quán)值,且為被控對象輸出。取w1=0.999,w2=0.001,w3=2.0,w4=100。

4.2 設(shè)計(jì)程序并仿真

(1)定義遺傳算法中使用的樣本個(gè)數(shù)為30,進(jìn)化代數(shù)為100代,交叉概率為 Pc=0.90,變異概率為 Pm=0.033。參數(shù)kp的取值范圍為[0,20],ki,kd的取值范圍為[0,1],參照參考文獻(xiàn)設(shè)計(jì)程序并運(yùn)行,得到如下結(jié)果:

經(jīng)過100代的進(jìn)化,獲得的優(yōu)化參數(shù)如下:PID整定結(jié)果為 kp= 17.9472,ki= 0.2678 ,kd= 0.5689,性能指標(biāo)是J= 23.8378代價(jià)函數(shù)J的優(yōu)化過程和采用整定后的PID控制階躍響應(yīng)如圖3和圖4。

圖3 、圖4 PID控制階躍響應(yīng)圖

從圖3、4可知,當(dāng)進(jìn)化到27代時(shí),已得到最優(yōu)解,且調(diào)節(jié)過程良好。

通過對程序的分析,發(fā)現(xiàn)了一些可改進(jìn)的地方,在程序中,只是對父代的一個(gè)最優(yōu)解進(jìn)行了替代保留,并沒有把適應(yīng)度小的個(gè)體(即差的個(gè)體)去除,這樣,差的個(gè)體與好的個(gè)體同概率交叉和變異,減少了下一代出現(xiàn)更優(yōu)解的可能性。

(2)定義遺傳算法中使用的樣本個(gè)數(shù)為30,進(jìn)化代數(shù)為100代,交叉概率為 Pc=0.90,變異概率為 Pm=0.033。參數(shù)kp的取值范圍為[0,20],ki,kd的取值范圍為[0,1],修改原程序。在對父代進(jìn)行適應(yīng)度排序后,把最好的10個(gè)個(gè)體進(jìn)行強(qiáng)制交叉,并把交叉結(jié)果替代最差的10個(gè)個(gè)體,這樣,下一代出現(xiàn)更優(yōu)解的可能性大大增加了,收斂速度也大大加快了。

運(yùn)行修改后的程序,經(jīng)過100代的進(jìn)化,獲得的優(yōu)化參數(shù)如下:PID整定結(jié)果為kp= 17.9668, ki= 0.2678 , kd= 0,性能指標(biāo)是J= 23.7153代價(jià)函數(shù)J的優(yōu)化過程和采用整定后的PID控制階躍響應(yīng)如圖5和圖6。

圖5 、圖6 運(yùn)行修改后的程序,PID控制階躍響應(yīng)圖

從圖5、6可知,通過保留的較優(yōu)個(gè)體的增加、較優(yōu)個(gè)體強(qiáng)制交叉后替代較差個(gè)體,系統(tǒng)收斂速度大大增加,得到的最優(yōu)個(gè)體也更好,在3到5代的遺傳后已得到最優(yōu)解,且不影響調(diào)節(jié)過程。

5 結(jié)語

遺傳算法操作簡單、魯棒性強(qiáng)、易于并行化,是一種高效的優(yōu)化搜索方式。遺傳算法具有全局搜索能力,能快速達(dá)到全局收斂。將遺傳算法應(yīng)用于PID控制器的參數(shù)尋優(yōu)。在合理設(shè)計(jì)相關(guān)遺傳算子的前提條件下,可以快速搜索到優(yōu)化的參數(shù)值。經(jīng)過仿真實(shí)驗(yàn)證明是一種可行的且效率較高的算法,它解決了經(jīng)典PID控制算法在實(shí)際應(yīng)用中存在的缺陷,提高了算法的尋優(yōu)精度和收斂速度。但是,由于隨著自適應(yīng)遺傳算法所處理的數(shù)據(jù)量的增加,運(yùn)算時(shí)間較長。減少迭代次數(shù)和初始群體數(shù),可以減少運(yùn)行時(shí)間,但又會(huì)使所得結(jié)果的精度降低,這也是它的不足之處。故而需要優(yōu)化程序,使之收斂速度加快,才能據(jù)此減少迭代次數(shù),以保證結(jié)果的精度。

[1]陶永華,尹怡欣,葛蘆生.新型PID控制及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2003.

[2]周明,孫樹棟.遺傳算法原理及應(yīng)用[M.北京:國防工業(yè)出版社,2002.

[3]劉金琨.先進(jìn)PID控制及其Matlab仿真[M].北京:電子工業(yè)出版社,2003.

[4]陳在平,杜太行.控制系統(tǒng)計(jì)算機(jī)仿真與CADMatlab語言應(yīng)用[M].天津:天津大學(xué)出版社,2001.

[5]雷英杰.MATLAB遺傳算法工具箱及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2005.

[6]玄光男, 程潤偉.遺傳算法與工程優(yōu)化[M].北京:清華大學(xué)出版社,2004.

[7](美)米凱利維茨(Michalewicz,Z.).演化程序:遺傳算法和數(shù)據(jù)編碼的結(jié)合[M].北京:科學(xué)出版社,2000.

[8]Mitsuo Gen, RunweiCheng.Genetic Algorithms and Engineering Design[S].Wiley-IEEE,1997.

猜你喜歡
適應(yīng)度交叉遺傳算法
改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
菌類蔬菜交叉種植一地雙收
基于遺傳算法的高精度事故重建與損傷分析
“六法”巧解分式方程
基于遺傳算法的智能交通燈控制研究
一種基于改進(jìn)適應(yīng)度的多機(jī)器人協(xié)作策略
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
連數(shù)
連一連
基于改進(jìn)多島遺傳算法的動(dòng)力總成懸置系統(tǒng)優(yōu)化設(shè)計(jì)