李雅瓊
(阜陽(yáng)職業(yè)技術(shù)學(xué)院,安徽 阜陽(yáng) 236000)
?
基于模糊控制的遺傳算法優(yōu)化研究
李雅瓊
(阜陽(yáng)職業(yè)技術(shù)學(xué)院,安徽 阜陽(yáng) 236000)
模糊控制方法簡(jiǎn)單,特別適合不宜建?;騽?dòng)態(tài)特性不易掌握的系統(tǒng).但模糊控制易受人的經(jīng)驗(yàn)的影響,且不具有學(xué)習(xí)能力,有時(shí)很難達(dá)到預(yù)計(jì)的控制效果.而遺傳算法具有遺傳特性,與模糊控制結(jié)合后能給其帶來(lái)學(xué)習(xí)能力,且遺傳算法本身能進(jìn)行全局搜索,一般不會(huì)陷入局部最優(yōu)運(yùn)算,理論上兩者結(jié)合后可以達(dá)到更好的控制效果.以倒立擺模型為例,matlab仿真結(jié)果證明了兩者結(jié)合的可行性,且結(jié)合后能更快地得到最優(yōu)解.
模糊控制;遺傳算法;matlab仿真;倒立擺
在現(xiàn)今的工業(yè)控制中,智能控制已經(jīng)成為一種趨勢(shì),各學(xué)科各領(lǐng)域的理論、規(guī)律及算法等也被采用,像神經(jīng)網(wǎng)絡(luò)、遺傳算法、蟻群算法、模糊控制、專家系統(tǒng)等都被引入到智能控制中來(lái).從各專家學(xué)者的研究中,可以知道各種智能控制都有一定的優(yōu)缺點(diǎn).而且隨著控制精度等要求的提高,單純的某一種智能控制方法已不能滿足工業(yè)控制的需要,因而使得各控制方法之間的融合有了必要性.本文主要研究在模糊控制的基礎(chǔ)上用遺傳算法進(jìn)行優(yōu)化,并以倒立擺模型為例進(jìn)行matlab仿真,來(lái)證明其可行性.
模糊控制(Fuzzy Control)隸屬智能控制,是自動(dòng)控制領(lǐng)域一個(gè)重要的分支,是一種以模糊集合論、模糊語(yǔ)言變量和模糊邏輯推理為基礎(chǔ)的計(jì)算機(jī)數(shù)字控制技術(shù).1965年,美國(guó)的Zadeh創(chuàng)立了模糊集合論;隨后,1973年又定義了模糊邏輯控制并給出了相關(guān)的定理.在Zadeh的基礎(chǔ)上,1974年,英國(guó)的Mamdani第一次嘗試把模糊控制語(yǔ)句組成模糊控制器,并將其用于實(shí)踐:控制蒸汽機(jī)和鍋爐.由此,標(biāo)志著模糊控制理論的誕生[1].在家電、自動(dòng)化及其他行業(yè)[2],模糊控制解決了很多傳統(tǒng)控制方法無(wú)法解決的問(wèn)題,且取得了很多良好成效,因而對(duì)模糊控制的研究及改進(jìn)具有著十分重要的現(xiàn)實(shí)意義.
模糊控制是具有一定規(guī)則的專家系統(tǒng),系統(tǒng)中儲(chǔ)存的有人的經(jīng)驗(yàn)、常識(shí),通過(guò)一定的算法建模,將一定的輸入經(jīng)過(guò)模擬的人的思維和推理判斷后輸出,從而實(shí)現(xiàn)智能控制.
模糊控制的原理如圖1.模糊控制系統(tǒng)包括三個(gè)核心環(huán)節(jié),即模糊化、模糊邏輯決策和去模糊化(清晰化),其中的模糊化一般用隸屬度函數(shù)來(lái)實(shí)現(xiàn)[3].
圖1 模糊控制原理
模糊控制具有以下特點(diǎn):
(1)模糊控制無(wú)須建立精確的數(shù)學(xué)模型,依靠系統(tǒng)中存有豐富的常識(shí)和專家經(jīng)驗(yàn)或現(xiàn)場(chǎng)操作人員的知識(shí)和應(yīng)驗(yàn)即可控制,因而簡(jiǎn)單通俗易懂,且在實(shí)際應(yīng)用中能方便有效快捷地使用人的控制策略和經(jīng)驗(yàn).
(2)模糊控制可以在很多控制規(guī)則之間進(jìn)行模糊鏈接,能取得比常規(guī)控制器更優(yōu)的控制效果.
(3)模糊控制取自專家的經(jīng)驗(yàn)和知識(shí),并且模擬人的思維,因而具有相當(dāng)?shù)闹悄?
(4)使用模糊控制的系統(tǒng),魯棒性強(qiáng),抗干擾性強(qiáng).
(5)模糊控制中專家的經(jīng)驗(yàn)和知識(shí)很難充分利用,使得系統(tǒng)的自適應(yīng)能力也是有限的;而且經(jīng)驗(yàn)具有一定的主觀性,并非經(jīng)過(guò)嚴(yán)格的計(jì)算,因而模糊控制的精度不高.
鑒于這些特點(diǎn),模糊控制的適用范圍如下:1)很難建模、變化不顯著或不易掌握動(dòng)態(tài)特性的對(duì)象;2)時(shí)變、非線性和滯后系統(tǒng).
遺傳算法(Genetic Algorithm)是由美國(guó)的Holland教授在1975年他的論文“自然系統(tǒng)和人工系統(tǒng)的適配”首次提出[4],它源于達(dá)爾文的進(jìn)化論,并受孟德?tīng)栠z傳學(xué)的啟發(fā)得出,基本思想是模擬遺傳機(jī)制和物種進(jìn)化,在其后代種群中尋求最后解.
從生物遺傳學(xué)的角度,后代從他們的親代那繼承各種特性,適應(yīng)性好的后代存活下來(lái),并將特性好的基因遺傳給下一代,在遺傳過(guò)程中會(huì)發(fā)生變異,會(huì)更加適應(yīng)環(huán)境;而經(jīng)過(guò)了優(yōu)勝劣汰后具備了優(yōu)良遺傳基因的種群也更加適應(yīng)了環(huán)境[5].而遺傳算法正是受此思想的啟發(fā),將尋求問(wèn)題最優(yōu)解的過(guò)程模擬成尋找遺傳進(jìn)化中具有最優(yōu)基因最適應(yīng)環(huán)境的個(gè)體的過(guò)程.
在用遺傳算法解決問(wèn)題時(shí),先進(jìn)行問(wèn)題最優(yōu)化求解的描述,接著將問(wèn)題中的各參數(shù)指標(biāo)進(jìn)行編碼(即將各表現(xiàn)特性對(duì)應(yīng)成各基因,將求解空間對(duì)應(yīng)成個(gè)體種群到編碼空間),每個(gè)編碼即對(duì)應(yīng)成問(wèn)題的一個(gè)解,對(duì)應(yīng)著生物學(xué)中的單個(gè)個(gè)體或者染色體.對(duì)第一代群體進(jìn)行編碼后即形成初始種群,之后按照遺傳、適者生存和優(yōu)勝劣汰的原則,逐步形成越來(lái)越好,越來(lái)越適應(yīng)環(huán)境的個(gè)體,越來(lái)越接近最優(yōu)的解.而在每一代個(gè)體中,還要對(duì)個(gè)體進(jìn)行適應(yīng)度的計(jì)算,選擇適應(yīng)度好的個(gè)體(即基因好的個(gè)體),他們?cè)侔凑者z傳學(xué)的規(guī)律進(jìn)行組合交叉、變異,形成適應(yīng)度更好的個(gè)體.這樣模擬一代代遺傳,形成一代比一代好的種群,最終在末代種群中存在的最優(yōu)個(gè)體就可以近似地當(dāng)作問(wèn)題的最優(yōu)解.圖2是遺傳算法解決問(wèn)題的流程圖[6].
圖2 遺傳算法流程圖
遺傳是在整個(gè)種群中進(jìn)行的,因此遺傳算法可全局搜索最優(yōu)解,并具有以下特點(diǎn):(1)全局并行搜索,有好的運(yùn)行效率[7];(2)無(wú)需精確的目標(biāo)函數(shù)表達(dá)式;(3)魯棒性好,可信度高;(4)簡(jiǎn)單方便,適用范圍廣,在函數(shù)優(yōu)化、圖像處理、自動(dòng)控制、調(diào)度問(wèn)題、社會(huì)與經(jīng)濟(jì)、人工智能與科學(xué)計(jì)算等領(lǐng)域都有應(yīng)用.而且隨著應(yīng)用增多,很多專家學(xué)者不斷地深入研究,與其他算法、人工智能、兩字理論等相結(jié)合,改進(jìn)原有遺傳算法的缺陷,對(duì)遺傳算法進(jìn)行優(yōu)化,解決了諸如收斂速度慢、早熟等問(wèn)題.
3.1模糊控制和遺傳算法結(jié)合的必要性
通過(guò)前面兩部分的介紹,我們對(duì)模糊控制和遺傳算法有了簡(jiǎn)單的了解.盡管兩者都有各自的優(yōu)勢(shì),但是也有一些缺點(diǎn).
模糊控制的缺點(diǎn):(1)無(wú)法主動(dòng)獲取知識(shí),尤其當(dāng)控制對(duì)象復(fù)雜時(shí),不僅計(jì)算量大而且很難控制;(2)依賴于專家的知識(shí)經(jīng)驗(yàn)?zāi)芰Γ憩F(xiàn)出來(lái)的性能參差不齊,無(wú)統(tǒng)一的標(biāo)準(zhǔn),學(xué)習(xí)能力和適應(yīng)環(huán)境的能力都較差.
遺傳算法的缺點(diǎn):(1)易出現(xiàn)早熟,即算法收斂過(guò)早;(2)用遺傳算法時(shí),需要進(jìn)行編碼,但編碼方式不唯一,這會(huì)導(dǎo)致可能的編碼方式選擇不甚合理以及表現(xiàn)不確定;(3)需要進(jìn)行計(jì)算機(jī)編程以及人為改動(dòng)控制;(4)算法后期,收斂到最優(yōu)解的速度變慢;(5)在精度方面,沒(méi)有權(quán)威的定量分析方法,沒(méi)有現(xiàn)成的理論依據(jù),需要人為多次實(shí)驗(yàn)總結(jié)摸索.
模糊控制和遺傳算法各有缺點(diǎn),但是如果將兩者結(jié)合起來(lái),就能使其優(yōu)點(diǎn)得到發(fā)揚(yáng),不足得到改進(jìn).如模糊控制無(wú)法主動(dòng)獲取知識(shí),正好遺傳算法具有父代向子代遺傳基因的特點(diǎn),這樣只要兩者結(jié)合就可以給模糊控制獲取知識(shí)的能力;而將模糊控制用于遺傳算法,也可改善遺傳算法早熟的問(wèn)題,進(jìn)而可以使兩種算法得到優(yōu)化,能更有效率的尋求問(wèn)題的最優(yōu)解.
3.2遺傳算法對(duì)模糊控制的改進(jìn)方法
首先針對(duì)圖1中虛線部分的模糊控制器,在設(shè)計(jì)時(shí),定義誤差E、誤差變化△E、輸出U的模糊語(yǔ)言變量為:負(fù)大、負(fù)中、負(fù)小、零、正小、正中、正大.
這三者的模糊論域?yàn)椋簕 -3, -2, -1, 0, 1, 2, 3 },其隸屬度函數(shù)為三角形隸屬函數(shù),隸屬函數(shù)曲線見(jiàn)圖3.
圖3 隸屬函數(shù)曲線
由圖3可得出三個(gè)模糊變量的隸屬度賦值表(表1):
表1 模糊變量的賦值表
根據(jù)經(jīng)驗(yàn),確定模糊規(guī)則如下[8]
if Eiand △Eithen Uij﹐1≦ i ≤ 4 , 1 < j ≦4
最終得出輸出控制量為[9]
下面用遺傳算法對(duì)上述的模糊控制進(jìn)行優(yōu)化.因?yàn)檎`差E和誤差變化△E各7個(gè)語(yǔ)言變量能組成49個(gè)規(guī)則,而輸出U所對(duì)應(yīng)的[-3,3]之間的7個(gè)數(shù)需要3位二進(jìn)制數(shù)來(lái)表示,所以將E、△E組成的49個(gè)規(guī)則下各取一個(gè)與U組合在一起即產(chǎn)生一個(gè)147位的3位二進(jìn)制數(shù),這個(gè)個(gè)體我們稱為原始個(gè)體,它表示總的規(guī)則集合.
按照上面原始個(gè)體的產(chǎn)生方法,隨機(jī)生成M個(gè)個(gè)體,并將這M個(gè)個(gè)體當(dāng)成遺傳算法中的第0代種群,讓他們進(jìn)行自由復(fù)制、雜交、變異.適應(yīng)度高的個(gè)體產(chǎn)生的后代中會(huì)產(chǎn)生適應(yīng)度更高更適應(yīng)環(huán)境的個(gè)體,如此一代代進(jìn)行下去,最終能得到滿足條件的最優(yōu)個(gè)體,即為待解決問(wèn)題的最優(yōu)解.此過(guò)程需要介紹四個(gè)內(nèi)容:
(1)適應(yīng)度
個(gè)體的適應(yīng)度函數(shù)可表示如下
e(x)=y(x)-y′,y為輸出,y′為期望輸出.
(2)復(fù)制
計(jì)算出每個(gè)個(gè)體被選中的概率p為
將每個(gè)個(gè)體按適應(yīng)度從高到低進(jìn)行排序,復(fù)制排序前1/3的個(gè)體各2份,中間1/3的各一份.
(3)雜交
雜交是隨機(jī)進(jìn)行的,這個(gè)隨機(jī)不僅指雜交的個(gè)體可以隨機(jī),同時(shí)個(gè)體雜交時(shí)的雜交點(diǎn)也可以隨機(jī).假設(shè)種群中的個(gè)體i,j兩個(gè)體進(jìn)行雜交,若它們分別用二進(jìn)制i(a1,a2…a147),j(b1,b2…b147)表示,雜交點(diǎn)發(fā)生在最后一個(gè)點(diǎn),則雜交后的個(gè)體則是i(a1,a2…b147),j(b1,b2…a147).
(4)變異
變異也是隨機(jī)的,當(dāng)然有好的也有壞的,好的變異會(huì)使適應(yīng)度增加,壞的變異則會(huì)使適應(yīng)度減小.適應(yīng)度小的可能會(huì)被淘汰.
若個(gè)體i(a1,a2…a147)發(fā)生變異,假設(shè)變異點(diǎn)發(fā)生在左邊數(shù)第一個(gè),則變異后的個(gè)體i變成i(a1′,a2…a147).
這里用倒立擺的仿真來(lái)證明用遺傳算法優(yōu)化模糊控制的優(yōu)越性.圖4是倒立擺的圖形,倒立擺模型是一個(gè)典型的自動(dòng)控制模型,常被用來(lái)做教學(xué)和科學(xué)研究.倒立擺系統(tǒng)屬于非線性系統(tǒng),具有不穩(wěn)定、響應(yīng)快、變量多的特點(diǎn)[10].
圖4 倒立擺模型
對(duì)于圖4中的倒立擺模型,先給出相關(guān)參數(shù).設(shè)桿子的質(zhì)量為m,小車的質(zhì)量為M,作用與小車的力為F,桿與垂直方向的夾角為θ,擺桿的角速度為α,小車位置為x,小車摩擦系數(shù)為b,擺桿的慣量為I,則得出倒立擺系統(tǒng)方程為
再結(jié)合小車的受力分析,拉普拉斯變換等整理后得到傳遞函數(shù)[11]:
上式中,q=[(M+m)(I+ml2)-(ml)2].
仿真時(shí)模糊控制隸屬函數(shù)采用的是三角形隸屬函數(shù),且設(shè)m=0.2kg,M=1.5kg,l=0.5m, F=50N,I=ml2/3,g=9.8m/s2,雜交率和變異率分別取0.8和0.06.
經(jīng)過(guò)matlab仿真后的波形圖見(jiàn)圖5和圖6.
圖5是算法優(yōu)化前后擺角控制波形圖.上面紅色顯示的角度較大的波形是僅用模糊控制仿真得到的,經(jīng)過(guò)藍(lán)色指令即遺傳算法優(yōu)化后得到黃色的波形圖.很明顯,經(jīng)過(guò)遺傳算法優(yōu)化后,角度控制效果有明顯改善,且收斂也快.
圖6是經(jīng)過(guò)遺傳算法優(yōu)化,迭代50次的角度和迭代次數(shù)波形圖,波形圖顯示隨著迭代次數(shù)的增加,擺角逐漸減小,最終能得到一個(gè)符合要求的結(jié)果.
圖5 算法優(yōu)化前后擺角控制波形圖
圖6 遺傳算法迭代中角度波形
本文主要通過(guò)對(duì)模糊控制用遺傳算法來(lái)優(yōu)化,使系統(tǒng)具有了一定的學(xué)習(xí)能力,從而達(dá)到提高控制效果的目的.在具體仿真過(guò)程選用倒立擺這種常見(jiàn)模型,模糊控制采用三角形隸屬函數(shù),然后再結(jié)合遺傳算法進(jìn)行編碼、遺傳、雜交、變異等,進(jìn)行matlab仿真.從仿真后的波形可以看出,經(jīng)過(guò)遺傳算法優(yōu)化后,倒立擺的角度控制能更快地達(dá)到一定的擺角.因此我們可以得出結(jié)論:經(jīng)過(guò)遺傳算法優(yōu)化過(guò)的模糊控制具備學(xué)習(xí)能力,且能加快收斂,改善控制.
[1]蔚東曉,賈霞彥.模糊控制的現(xiàn)狀與發(fā)展[J].自動(dòng)化與儀器儀表, 2006,(6):4-7.
[2]葛新成,胡永霞.模糊控制的現(xiàn)狀與發(fā)展概述[J].現(xiàn)代防御技術(shù),2008,(3):51-55.
[3]馬長(zhǎng)華,于世海,朱偉興.基于遺傳算法的模糊控制規(guī)則化的研究[J].江蘇大學(xué)學(xué)報(bào):自然科學(xué)版, 2003,(4):69-73.
[4]邊霞,米良. 遺傳算法理論及其應(yīng)用研究進(jìn)展[J]. 計(jì)算機(jī)應(yīng)用研究,2010,(7):2429-2429.
[5]崔珊珊. 遺傳算法的一些改進(jìn)及其應(yīng)用[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué)碩士學(xué)位論文,2010.
[6]吳宇軒. 遺傳模糊控制及其在優(yōu)化控制中的應(yīng)用研究[D].大慶:東北石油大學(xué)碩士學(xué)位論文, 2013.
[7]馬永杰,云文霞. 遺傳算法研究進(jìn)展[J]. 計(jì)算機(jī)應(yīng)用研究,2012,(4):1201-1206.
[8]王學(xué)惠,田成方.微機(jī)模糊控制理論及其應(yīng)用[M].北京:航空工業(yè)出版社,1987.
[9]胡寧,王東云,趙東標(biāo),等. 關(guān)于遺傳算法模糊控制的研究[J].南京航空航天大學(xué)學(xué)報(bào),2009,(5):544-548.
[10]孟巍.遺傳算法在倒立擺模糊控制系統(tǒng)中的應(yīng)用研究[D].合肥:合肥工業(yè)大學(xué)碩士學(xué)位論文,2007.
[11]固高科技有限公司.倒立擺與自動(dòng)控制原理實(shí)驗(yàn)[M]. 深圳:固高科技有限公司,2005.
(責(zé)任編校:晴川)
Research of Genetic Algorithm Based on Fuzzy Control
LI Yaqiong
(Fuyang Vocational and Technical College, Fuyang Anhui 236000, China)
Fuzzy control is a simple intelligent control method. This method is especially suitable for the system that is difficult to be modeled or to be mastered in dynamic characteristics. However, fuzzy control is easily influenced by people’s experience, and does not have the ability to learn, so sometimes it is hard to reach the expected control effect. On the contrary, genetic algorithm which can perform a global research and will not get into local optimal operation has the hereditary capacity. So, genetic algorithm can bring fuzzy control learning ability and better control effect. Based on the model of inverted pendulum, the matlab simulation results prove the feasibility of the combination between fuzzy control and genetic algorithm. The combination of fuzzy and genetic algorithm can get the optimal solution more quickly.
fuzzy control; genetic algorithm; Matlab simulation; inverted pendulum
2016-08-20
阜陽(yáng)職業(yè)技術(shù)學(xué)院校級(jí)科研項(xiàng)目(批準(zhǔn)號(hào):2014KYXM07);省級(jí)質(zhì)量工程機(jī)電一體化技術(shù)教學(xué)團(tuán)隊(duì)項(xiàng)目(批準(zhǔn)號(hào):2014jxtd058).
李雅瓊(1986— ),女,安徽阜陽(yáng)人,阜陽(yáng)職業(yè)技術(shù)學(xué)院講師,碩士.研究方向:機(jī)電一體化.
TP18;TP273
A
1008-4681(2016)05-0058-04