余 哲 王志國(guó) 劉 飛
(江南大學(xué)輕工過(guò)程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室)
模糊控制具有能夠適用于復(fù)雜工況等特性,在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用[1]。 一個(gè)模糊控制系統(tǒng)的控制效果,在一定程度上取決于規(guī)則表的建立和隸屬度函數(shù)的選取,選取得好會(huì)使控制系統(tǒng)適應(yīng)復(fù)雜的工業(yè)過(guò)程[2]。 傳統(tǒng)選取規(guī)則表的方式,大多是根據(jù)工業(yè)知識(shí)、專家經(jīng)驗(yàn)等,但因?yàn)榻?jīng)驗(yàn)的差異性使得規(guī)則表和隸屬度函數(shù)的選取大相徑庭,難以推廣,并且過(guò)程繁瑣。 因此,模糊控制領(lǐng)域?qū)W者關(guān)注的重點(diǎn)一般都在如何對(duì)模糊規(guī)則和隸屬度函數(shù)進(jìn)行優(yōu)化上。
Karr C L和Gentry E J早在1993年就進(jìn)行了隸屬度函數(shù)問(wèn)題方面的研究,其主要的成果是采用SGA(簡(jiǎn)單遺傳算法)對(duì)論域中語(yǔ)言變量的模糊集進(jìn)行重新設(shè)定, 構(gòu)成了自適應(yīng)控制系統(tǒng)[3]。Buckley J J認(rèn)為可以優(yōu)先確定隸屬度函數(shù)的形狀,如矩形、三角形等,然后對(duì)構(gòu)成這些形狀的參數(shù)進(jìn)行尋優(yōu)[4]。此外,Thrift P則是在固定隸屬度函數(shù)的前提下,對(duì)整個(gè)模糊規(guī)則庫(kù)進(jìn)行尋優(yōu)[5]。屈文忠和邱陽(yáng)針對(duì)多變量模糊控制系統(tǒng),提出采用遺傳算法來(lái)設(shè)計(jì)模糊規(guī)則,這種方法不但適合非常復(fù)雜的控制系統(tǒng),同時(shí)也能提高模糊控制器的魯棒性[6]。張景元通過(guò)對(duì)遺傳算法的改進(jìn),使得模糊控制系統(tǒng)能夠在一定程度上實(shí)現(xiàn)規(guī)則表的自適應(yīng),并且控制效果較理想[7]。董海鷹等的研究則側(cè)重于基于多種群的變論域方面,也實(shí)現(xiàn)了模糊規(guī)則的自整定[8]。 以上研究成果的不局限性是在優(yōu)化過(guò)程中分別對(duì)隸屬度函數(shù)和模糊控制規(guī)則進(jìn)行單獨(dú)處理,沒(méi)有考慮到二者之間存在的內(nèi)在聯(lián)系, 割裂后的二者只能代表模糊控制器的一部分,因此上述方法通常只是做到了局部最優(yōu)。 與上述研究不同的是,Homaifar A和McCormick E首次同時(shí)考慮隸屬度函數(shù)和規(guī)則表[9],但是卻沒(méi)有考慮到在進(jìn)化進(jìn)程中以及初始設(shè)置時(shí)可能出現(xiàn)的規(guī)則相互矛盾的問(wèn)題,并且在整個(gè)整定過(guò)程中同時(shí)有可能出現(xiàn)某些值域沒(méi)有被覆蓋的現(xiàn)象,導(dǎo)致產(chǎn)生失控點(diǎn)。
筆者結(jié)合現(xiàn)有的研究成果,兼顧隸屬度函數(shù)和規(guī)則表,提出了一種新的尋優(yōu)算法。 其創(chuàng)新之處在于:將內(nèi)模思想引入模糊控制,僅調(diào)節(jié)濾波器參數(shù)就可以實(shí)現(xiàn)對(duì)控制回路P、I、D這3個(gè)參數(shù)的調(diào)節(jié);沒(méi)有割裂隸屬度函數(shù)和規(guī)則表,在優(yōu)化過(guò)程中同時(shí)對(duì)兩者進(jìn)行尋優(yōu),從而實(shí)現(xiàn)控制器的整體優(yōu)化;以系統(tǒng)的累積絕對(duì)誤差作為算法的適應(yīng)度函數(shù),與傳統(tǒng)指標(biāo)相比,能夠更好地反映系統(tǒng)的整體性能。
考慮如圖1所示的單變量反饋控制回路。
圖1 單變量反饋控制回路結(jié)構(gòu)
圖1中,G(s)和C(s)分別為過(guò)程模型和PID控制器,r(t)、e(t)、u(t)和y(t)分別為設(shè)定值、控制誤差、控制輸入信號(hào)和輸出信號(hào)。
式中 τc1——期望的濾波器時(shí)間常數(shù)。
將式(4)中的e-θs用一階泰勒公式逼近,近似為e-θs≈1-θs。 再由圖1可知,當(dāng)期望閉環(huán)傳遞函數(shù)為Cc1(s)并且已知時(shí),考慮過(guò)程對(duì)象G(s)的模型是二階時(shí)滯,則可得控制器C(s)為:
一般而言,τ應(yīng)該大于系統(tǒng)延遲時(shí)間θ, 因?yàn)楫?dāng)τ<θ時(shí),控制回路的響應(yīng)會(huì)十分激烈甚至振蕩;當(dāng)τ過(guò)大時(shí),系統(tǒng)的輸出響應(yīng)過(guò)程會(huì)變得遲緩。 綜合考慮系統(tǒng)響應(yīng)的快速性、 魯棒性, 根據(jù)文獻(xiàn)[8],當(dāng)τ=θ時(shí),系統(tǒng)的性能最為理想。
模糊內(nèi)模PID控制的主要思想是通過(guò)不同的規(guī)則得到不同的濾波器時(shí)間常數(shù)τ, 使得當(dāng)過(guò)程模型參數(shù)發(fā)生變化時(shí)也能得到較為滿意的控制效果。 其結(jié)構(gòu)如圖2所示。
圖2 模糊內(nèi)模PID控制回路結(jié)構(gòu)
圖2中,IMC-PID是控制器,F(xiàn)uzzy是模糊控制器,ec(t)是控制誤差的變化率。
筆者建立二維的模糊控制器,分別以控制誤差和控制誤差的變化率作為輸入,把模糊控制器輸出當(dāng)濾波器時(shí)間常數(shù)τ的變化, 從而實(shí)現(xiàn)對(duì)內(nèi)模PID控制器參數(shù)的在線整定。
模糊控制器的輸入是控制誤差e(t)和誤差的變化率ec(t),模糊控制器的輸出u(t)則定義為濾波器的增量Δτ。 則實(shí)際的濾波器時(shí)間常數(shù)為:
式中 τ0——濾波器時(shí)間常數(shù)初值。
內(nèi)??刂破鞯臑V波器時(shí)間常數(shù)τ的選取決定了系統(tǒng)的魯棒性和動(dòng)態(tài)穩(wěn)態(tài)特性,因此需要選定合適的值作為初始值,由前文可知,當(dāng)τ=θ時(shí),系統(tǒng)性能最好。 此時(shí)對(duì)應(yīng)的PID參數(shù)分別為:
模糊控制器的輸入e(t)、ec(t)和輸出u(t)的語(yǔ)言變量分別表示為E、EC和U,它們相應(yīng)的模糊子集如下:
隸屬度函數(shù)是決定系統(tǒng)控制性能好壞的重要因素。 通常,如果在誤差值比較小的情況下,就選擇相對(duì)來(lái)說(shuō)比較窄尖的隸屬度函數(shù);如果誤差值比較大,那么就選擇相對(duì)來(lái)說(shuō)比較寬胖的隸屬度函數(shù)。 筆者根據(jù)人為經(jīng)驗(yàn)選取如圖3所示的初始隸屬度函數(shù)。
圖3 e(t)、ec(t)、u(t)的隸屬度函數(shù)
通過(guò)分析可知:τ越小, 系統(tǒng)響應(yīng)速度越快,上升時(shí)間越短,但會(huì)造成超調(diào)量增大;如果τ取適中,被控對(duì)象的響應(yīng)曲線穩(wěn)定平緩上升,不會(huì)出現(xiàn)超調(diào);如果τ過(guò)大,則控制器起主要作用的是比例控制, 過(guò)強(qiáng)的比例作用使得系統(tǒng)響應(yīng)遲鈍,上升時(shí)間大幅增加。 筆者根據(jù)人為經(jīng)驗(yàn)選定表1所示的模糊規(guī)則表。
表1 模糊內(nèi)模控制器初始模糊規(guī)則表
合理的規(guī)則表和隸屬度函數(shù)能使系統(tǒng)達(dá)到較好的控制效果。 僅僅只優(yōu)化前文所述的規(guī)則表,其解的空間高達(dá)55×5,這是一個(gè)非常龐大的數(shù)值。 顯然傳統(tǒng)的優(yōu)化方法很難解決解空間太大的問(wèn)題,需要找到一種能適用于解空間龐大問(wèn)題的算法。遺傳算法(GA)不失為一種優(yōu)秀的解決此類問(wèn)題的算法,它是Holland根據(jù)自然界中適者生存的法則和基因遺傳的思想提出的一種優(yōu)化算法。GA算法十分適用于復(fù)雜且解空間巨大的一類問(wèn)題。 因此筆者選用GA算法作為尋優(yōu)算法,對(duì)模糊控制器進(jìn)行優(yōu)化,尋優(yōu)結(jié)構(gòu)如圖4所示。
圖4 基于GA算法的模糊控制器尋優(yōu)結(jié)構(gòu)
利用遺傳算法對(duì)模糊控制器進(jìn)行整體優(yōu)化,就是要同時(shí)考慮隸屬度函數(shù)和規(guī)則表。 首先就是要將隸屬度函數(shù)和規(guī)則表數(shù)字化,從簡(jiǎn)便、可操作性方面考慮,筆者直接使用十進(jìn)制編碼對(duì)隸屬度函數(shù)和模糊控制規(guī)則表數(shù)字化。
由上文可知,筆者選取三角形為隸屬度函數(shù)的形狀,因此直接以三角形兩個(gè)底邊端點(diǎn)的坐標(biāo)作為編碼尋優(yōu)對(duì)象。 以誤差E為例:{NB(-1,an),NS(-1,an,0),ZO(an,0,ap),PS(0,ap,1),PB(ap,1)},對(duì)語(yǔ)言變量誤差變化率EC和控制量U也進(jìn)行同樣操作。 由以上分析可知,3個(gè)隸屬度函數(shù)的待優(yōu)化變量為6個(gè),也就是3個(gè)三角形各自的底邊端點(diǎn),它們的編碼表示為an、bn、cn、ap、bp、cp。
由上文可知, 筆者將模糊控制的效果分為5個(gè)等級(jí), 因此首先選定5個(gè)整數(shù)來(lái)代表模糊語(yǔ)言的5個(gè)語(yǔ)言值(NB、NS、ZO、PS、PB)從而達(dá)到將模糊控制表數(shù)字化的先決條件。 表1所示的控制規(guī)則表, 其編碼為 {55443 54434 44344 43445 34455}。
將上述兩部分相加, 形成了最終的編碼,該編碼包括了模糊控制器的隸屬度函數(shù)選取和規(guī)則表的制定,示意如下:
可以看出, 該編碼串的前部分為規(guī)則表,由于筆者以二維控制器為例,因此規(guī)則共計(jì)5×5=25條,后部分為隸屬度函數(shù),共計(jì)6位編碼,通過(guò)對(duì)以上共計(jì)31位編碼的尋優(yōu)就達(dá)到了對(duì)模糊控制器的優(yōu)化。
適應(yīng)度值表示種群個(gè)體的優(yōu)劣程度,它是遺傳算法進(jìn)行的關(guān)鍵點(diǎn)。 在尋優(yōu)過(guò)程中希望保存大量?jī)?yōu)秀的個(gè)體,快速淘汰劣質(zhì)的個(gè)體,也就是適應(yīng)度高的存活概率大, 適應(yīng)度低的存活概率小。同時(shí)由實(shí)際經(jīng)驗(yàn)得到,評(píng)估系統(tǒng)的性能應(yīng)當(dāng)充分考慮到動(dòng)態(tài)特性和穩(wěn)態(tài)特性, 也就是其響應(yīng)時(shí)間、調(diào)節(jié)時(shí)間、超調(diào)量及誤差等因素,因此需要找到一個(gè)滿足上述要求的性能指標(biāo)。 同時(shí)這個(gè)遺傳算法要求個(gè)體適應(yīng)度越大越好,所以筆者采用系統(tǒng)的累積絕對(duì)誤差(IAE)作為性能指標(biāo),其表達(dá)式為:
寶勝黨委狠抓“明責(zé)、履責(zé)、驗(yàn)責(zé)、問(wèn)責(zé)”四個(gè)關(guān)鍵動(dòng)作,通過(guò)實(shí)施黨建“書記工程”項(xiàng)目,把黨建工作的整體內(nèi)容進(jìn)行分解,細(xì)化任務(wù),確定階段目標(biāo),真正夯實(shí)基層黨組織書記主體責(zé)任,推動(dòng)基層黨建工作真正落地到位。
在自然界中,生物的繁衍進(jìn)化變異離不開(kāi)基因的遺傳,遺傳算法很好地體現(xiàn)了這一點(diǎn),遺傳算法主要通過(guò)3種方式——選擇、 交叉和變異來(lái)產(chǎn)生新的個(gè)體。
選擇。 選擇過(guò)程是模擬自然界適者生存的形式, 也就是個(gè)體按照他們的適應(yīng)度繁衍的方式。其過(guò)程是,通過(guò)個(gè)體對(duì)環(huán)境的不同適應(yīng)程度(由決定,其中n為種群規(guī)模,fi為群體中第i個(gè)個(gè)體的適應(yīng)度)決定被復(fù)制個(gè)體。 因此適應(yīng)度高的個(gè)體能夠有較大的概率保存并繁衍下去。
交叉。 與選擇不同,交叉不是將父代基因復(fù)制而是產(chǎn)生新個(gè)體的方式,它是通過(guò)某種結(jié)合的方式使兩條染色體相互交換某些基因,以此形成新的染色體。 具體可表示如下:變異。 與交叉類似,它也是產(chǎn)生新個(gè)體的方式,與交叉不同的是它是在原有染色體的基礎(chǔ)上畸變出原本沒(méi)有的基因,形成新的染色體。 具體可表示如下:
通過(guò)變異提高遺傳算法的局部搜索能力,同時(shí)維持群體的多樣性,也就是充分滿足解的多樣性和全局性,防止出現(xiàn)部分收斂的現(xiàn)象。
基于遺傳算法的模糊控制器尋優(yōu)過(guò)程如下:
a. 確定遺傳參數(shù)。 主要包括初始種群、迭代次數(shù)、染色體和變異概率。
b. 計(jì)算初始種群的適應(yīng)度總值、平均值和最大值。
c. 選擇。 根據(jù)達(dá)爾文的優(yōu)勝劣汰法則,計(jì)算出每個(gè)個(gè)體的適應(yīng)度值和平均適應(yīng)度值的比值,若小于1則拋棄,反之則保留。
d. 交叉。 從父代染色體隨機(jī)選取兩條染色體,在隨機(jī)位置進(jìn)行染色體的交換。
e. 變異。產(chǎn)生0~1之間的隨機(jī)數(shù),每次比較隨機(jī)數(shù)和設(shè)定的變異概率的大小,若隨機(jī)數(shù)小于變異概率,則進(jìn)行變異操作;若隨機(jī)數(shù)大于變異概率,則跳過(guò)變異操作。
f. 判斷是否滿足終止條件。 若滿足條件則停止迭代,不滿足條件則繼續(xù)迭代。
g. 在最終的染色體種群中選取適應(yīng)度值最大的染色體,此時(shí),將該染色體反編碼就得到了最優(yōu)的隸屬度函數(shù)和規(guī)則表。
對(duì)于給定的傳遞函數(shù):
為驗(yàn)證筆者所提算法的有效性,利用上述過(guò)程對(duì)象進(jìn)行仿真實(shí)驗(yàn), 采用第3節(jié)所述模糊控制器對(duì)它進(jìn)行控制,采用筆者所提算法對(duì)模糊控制器進(jìn)行優(yōu)化。
初始種群規(guī)模n=10,遺傳代數(shù)P=40,采樣時(shí)間T=0.35s,比例因子Ku=Ke=Kec=1。 分別記錄迭代10、20、30次的實(shí)驗(yàn)結(jié)果,其中仿真時(shí)間為200s,所有的適應(yīng)度值見(jiàn)表2。
表2 適應(yīng)度值
由表2可以看出,隨著迭代次數(shù)的增加,適應(yīng)度呈遞增狀態(tài)。 這說(shuō)明,在經(jīng)過(guò)30次迭代后取得了較滿意的控制效果。
初始狀態(tài)(未進(jìn)行優(yōu)化操作)和進(jìn)化到第10、20、30代時(shí)的階躍響應(yīng)曲線如圖5所示。
圖5 不同迭代次數(shù)時(shí)系統(tǒng)的響應(yīng)曲線
由圖5可知,采用筆者所述算法優(yōu)化后,系統(tǒng)的控制效果得到明顯提升,超調(diào)量明顯下降,上升時(shí)間也減少, 由計(jì)算可得系統(tǒng)IAE值也大幅減小。優(yōu)化后的隸屬度函數(shù)如圖6~8所示,規(guī)則見(jiàn)表3。
圖6 優(yōu)化后e(t)的隸屬度函數(shù)
圖7 優(yōu)化后ec(t)的隸屬度函數(shù)
圖8 優(yōu)化后u(t)的隸屬度函數(shù)
表3 最優(yōu)模糊規(guī)則表
為了擺脫人為經(jīng)驗(yàn)對(duì)模糊規(guī)則和隸屬度函數(shù)確定的局限性,筆者提出了一種基于遺傳算法的模糊內(nèi)模PID控制尋優(yōu)算法, 在缺乏甚至沒(méi)有人為經(jīng)驗(yàn)時(shí)也能夠找到最優(yōu)的模糊規(guī)則表和相應(yīng)的隸屬度函數(shù)。 同時(shí),結(jié)合模糊控制與內(nèi)模控制的優(yōu)化,在線整定系統(tǒng)濾波器參數(shù),可使系統(tǒng)控制效果兼顧動(dòng)態(tài)性、穩(wěn)態(tài)性和魯棒性。