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