劉瑞明,王經(jīng)卓,龔成龍
(淮海工學(xué)院電子工程學(xué)院,江蘇連云港 222005)
自動控制技術(shù)是現(xiàn)代科技的主要體現(xiàn)之一,盡管傳統(tǒng)控制在國民生產(chǎn)、生活中已得到了廣泛應(yīng)用,但傳統(tǒng)控制有一個致命的缺點——必須建立描述被控對象的數(shù)學(xué)模型,這使得傳統(tǒng)控制方法的效果不能令人滿意甚至無法實現(xiàn)。
隨著第三次工業(yè)革命的開展,智能控制理論[1-2]在工業(yè)界的重要性越加顯現(xiàn)。但目前我國的智能控制教學(xué)大多通過基于教材的宣講式授課來實現(xiàn),對于生硬的理論推導(dǎo)和乏味的文字描述,學(xué)生興趣度不高,教學(xué)效果難以保證[3-4]。此外,智能控制課程的授課學(xué)時少,缺少實驗課程,難以保證教學(xué)效果。必須找到一種既能夠生動描述理論知識,又能讓學(xué)生積極動手參與的、互動式教學(xué)方式,調(diào)動學(xué)生的學(xué)習(xí)積極性,提高教學(xué)質(zhì)量。
根據(jù)高等教育心理學(xué)的基本原理,知識的感知規(guī)律,即組合律、活動律、強度律、差異律和對比律等[5],最能促進(jìn)大學(xué)生對知識產(chǎn)生有效感知的直觀形式主要有:言語直觀、實物直觀和模象直觀。但長期的教學(xué)經(jīng)驗說明,單純的語言直觀相對較難理解,尤其是理論性較強的課程教學(xué)中,學(xué)生接受度并不高,很難給學(xué)生留下鮮明、形象、逼真的映像,必須同時將實物直觀、模象直觀和言語直觀三種形式,相互配合使用,教學(xué)效果才能充分發(fā)揮。
基于以上教學(xué)理論,利用MATLAB的GUI設(shè)計技術(shù),本文開發(fā)出一套互動式教學(xué)演示系統(tǒng),對于智能控制這類理論性較強的課程來說,該系統(tǒng)能夠使學(xué)生直觀地觀察各種智能控制基本方法的原理及控制過程和控制效果,且能夠讓學(xué)生和系統(tǒng)互動,調(diào)動學(xué)生學(xué)習(xí)的積極性,使控制理論不再枯燥乏味,學(xué)生樂于接受,從而提高教學(xué)效果。
智能控制是一門交叉學(xué)科,是人工智能與自動控制交叉的結(jié)果,人工神經(jīng)網(wǎng)絡(luò)、模糊數(shù)學(xué)、專家系統(tǒng)、進(jìn)化計算等理論在控制學(xué)中的應(yīng)用就產(chǎn)生了各種智能控制方法,比如神經(jīng)網(wǎng)絡(luò)控制、模糊控制、專家系統(tǒng),還有對上述控制系統(tǒng)進(jìn)行優(yōu)化的遺傳算法。
神經(jīng)網(wǎng)絡(luò)控制,是人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)在自動控制領(lǐng)域中的應(yīng)用。人工神經(jīng)網(wǎng)絡(luò)簡稱神經(jīng)網(wǎng)絡(luò),是一種仿生學(xué)方法,是對腦神經(jīng)系統(tǒng)從結(jié)構(gòu)和功能上的一種模擬,具有并行性、魯棒性和非線性能力強等優(yōu)點,也可用于模式識別、數(shù)據(jù)挖掘等領(lǐng)域。典型的神經(jīng)網(wǎng)絡(luò)類型包括:BP神經(jīng)網(wǎng)絡(luò)、Hopfield網(wǎng)絡(luò)、徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)、小腦模型神經(jīng)網(wǎng)絡(luò)等。神經(jīng)網(wǎng)絡(luò)控制的研究分支包括:神經(jīng)網(wǎng)絡(luò)系統(tǒng)辨識、神經(jīng)網(wǎng)絡(luò)控制器、優(yōu)化計算等。典型的神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)包括:神經(jīng)網(wǎng)絡(luò)直接逆控制、神經(jīng)網(wǎng)絡(luò)監(jiān)督控制、神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制、神經(jīng)網(wǎng)絡(luò)內(nèi)膜控制、神經(jīng)網(wǎng)絡(luò)預(yù)測控制等。要想實現(xiàn)神經(jīng)網(wǎng)絡(luò)控制,必須設(shè)計合適的神經(jīng)網(wǎng)絡(luò),確定網(wǎng)絡(luò)的層數(shù)、各層的節(jié)點數(shù)、傳遞函數(shù)等。
模糊控制(Fuzzy Control,F(xiàn)C)是建立在人工經(jīng)驗基礎(chǔ)上的控制技術(shù),受熟練操作員通過實踐經(jīng)驗精確控制被控對象啟發(fā)而產(chǎn)生的一種控制方式。但模糊控制并不是經(jīng)驗主義,而是建立在堅實的、模糊數(shù)學(xué)理論基礎(chǔ)上的。模糊數(shù)學(xué)不模糊,所以通過模糊控制可以精確地控制各種復(fù)雜的被控對象。要想實現(xiàn)模糊控制,必須設(shè)計模糊控制器和模糊推理,確定隸屬度函數(shù)、模糊推理策略、模糊等級、模糊化和解模糊(逆模糊)的方法等。
遺傳算法(Genetic Algorithm,GA)也是一種仿生科學(xué),是對生物群體進(jìn)化過程中優(yōu)勝劣汰、適者生存的自然法則的一種模擬,是達(dá)爾文的進(jìn)化論和孟德爾的基因遺傳理論在優(yōu)化計算領(lǐng)域的應(yīng)用。理論上來說,它是一種全局優(yōu)化算法,其操作主要有復(fù)制、交叉和變異3個步驟。遺傳算法的使用必須將要處理的數(shù)據(jù)進(jìn)行染色體編碼,并選擇一個適應(yīng)度函數(shù)。遺傳算法很少單獨應(yīng)用于控制系統(tǒng),只能與其他智能控制方法混合使用。
MATLAB軟件是美國MathWorks公司出品的數(shù)學(xué)分析、科學(xué)研究和工程應(yīng)用的軟件,可用于數(shù)據(jù)可視化、算法研究開發(fā)、數(shù)據(jù)分析以及數(shù)值計算的高級計算語言和交互式軟件平臺,是各領(lǐng)域工程師進(jìn)行科學(xué)研究、模擬仿真、工程設(shè)計和結(jié)果驗證的常用工具。在自動控制領(lǐng)域,MATLAB開發(fā)了與之相關(guān)的、強大的分析、設(shè)計、仿真及應(yīng)用功能,各種控制工具箱(控制系統(tǒng)工具箱、系統(tǒng)辨識工具箱、模型預(yù)測控制工具箱、神經(jīng)網(wǎng)絡(luò)工具箱、模糊邏輯工具箱、魯棒控制工具箱等)的出現(xiàn),使之成為控制系統(tǒng)研究的最強大的工具,該軟件的熟練使用,已經(jīng)成為控制類學(xué)科的本科生和研究生的基本要求。現(xiàn)有的許多智能控制教材,都結(jié)合MATLAB的控制工具箱來輔助講解,以提高教學(xué)質(zhì)量。與智能系統(tǒng)相關(guān)的工具箱包括:
1.神經(jīng)網(wǎng)絡(luò)工具箱
神經(jīng)網(wǎng)絡(luò)工具箱(Neural Network Toolbox)包含了幾乎神經(jīng)網(wǎng)絡(luò)理論的所有功能,并一直跟蹤學(xué)術(shù)研究的最前沿,一些理論上較為成熟的、最新的神經(jīng)網(wǎng)絡(luò)算法,都可以找到對應(yīng)的功能模塊,現(xiàn)有的神經(jīng)網(wǎng)絡(luò)算法包括:感知器、線性網(wǎng)絡(luò)、Hopfield網(wǎng)絡(luò)、RBF網(wǎng)絡(luò)、BP網(wǎng)絡(luò)、回歸網(wǎng)絡(luò)、Elman網(wǎng)絡(luò)、Boltzmann網(wǎng)絡(luò)等,可滿足初級學(xué)者的學(xué)習(xí)和培訓(xùn)需要,也可以為各種高級用戶提供科學(xué)研究和工程應(yīng)用支持。
2.模糊邏輯工具箱
模糊邏輯工具箱(Fuzzy Logic Toolbox)由一批長期從事模糊數(shù)學(xué)和模糊控制研究的學(xué)者和工程師開發(fā),具有操作方便、圖形化設(shè)計界面、技術(shù)先進(jìn)、C代碼生成、獨立模糊推理等優(yōu)點,其功能強大、使用方便、實用性高的優(yōu)點。這些優(yōu)點給各層次的使用者留下了深刻印象,極大地推動了模糊控制技術(shù)的普及和發(fā)展。由于模糊數(shù)學(xué)的理論性強,學(xué)生理解困難,加之學(xué)生的工程經(jīng)驗不足,對控制系統(tǒng)的設(shè)計沒有足夠感性認(rèn)識,因而結(jié)合模糊邏輯工具箱的教學(xué)就可以較好地解決這樣的教學(xué)困局。
3.遺傳算法工具箱
較早的遺傳算法工具箱(Genetic Algorithm Toolbox)是由英國 Sheffield大學(xué)開發(fā)的 GATBX,并不是MATLAB自帶的工具箱,但具有其他工具箱的風(fēng)格,可以靈活配置使用。還有美國北卡羅來納大學(xué)開發(fā)的GAOT工具箱。從MATLAB 7.0版本以后,推出了MathWorks公司自帶的工具箱GADS,由于自身的優(yōu)勢,在可視化方面GADS要好于GATBX和GAOT,從模象直觀的角度講,更適合于輔助教學(xué)。
MATLAB可視化優(yōu)勢的一個重要體現(xiàn)就是其強大而方便的圖形用戶界面(Graphical User Interfaces,GUI)設(shè)計,通過窗口、菜單、按鈕、文字、坐標(biāo)系、光標(biāo)等元素,可以靈活地搭建美觀、友好的人機(jī)交互界面。通過GUI程序設(shè)計,能夠使各種操作功能的實現(xiàn)在人機(jī)交互中進(jìn)行,且使交互過程實現(xiàn)生動的可視化。MATLAB的GUI程序設(shè)計,編程簡單易用、靈活方便,與各種控制工具箱相結(jié)合,是控制類課程輔助教學(xué)的理想選擇。
隨著科學(xué)技術(shù)的不斷發(fā)展,智能控制技術(shù)已成為自動控制類專業(yè)本科學(xué)生及研究生教育的專業(yè)主干課程,但該學(xué)科屬于交叉性較強的學(xué)科,而且對學(xué)生的理論分析能力和實踐經(jīng)驗等基礎(chǔ)素質(zhì)要求較高,強調(diào)理論、技術(shù)與應(yīng)用相結(jié)合,按教學(xué)大綱的要求,神經(jīng)網(wǎng)絡(luò)、神經(jīng)網(wǎng)絡(luò)控制、模糊數(shù)學(xué)、模糊控制和遺傳算法為其主要教學(xué)內(nèi)容。對于上述內(nèi)容,國內(nèi)多數(shù)教材大多強調(diào)數(shù)學(xué)理論基礎(chǔ),實踐、實例內(nèi)容較少。盡管也有少數(shù)教材結(jié)合MATLAB工具進(jìn)行講解,但都是基于m語言的編程,還是不能提取學(xué)生的學(xué)習(xí)興趣,教師在授課時,只能采用板書或PPT進(jìn)行宣講,使教和學(xué)乏味枯燥。開發(fā)一種使教學(xué)過程變得生動有趣,使教學(xué)過程能夠互動,學(xué)生樂于接受的教學(xué)方法,是教學(xué)模式改革亟需解決的問題。
在智能控制技術(shù)的教學(xué)過程中,傳統(tǒng)的課堂宣講方式主要依靠言語直觀來為學(xué)生傳遞知識,但鑒于本課程的特點(交叉性強、理論聯(lián)系實際的必要性強),言語直觀很難給學(xué)生留下深刻、鮮明、逼真的映像。依據(jù)高等教育心理學(xué)的基本原理,我們擬采用實物直觀、模象直觀和言語直觀相結(jié)合的方式,三者相互配合、相互印證,學(xué)生實際動手,實現(xiàn)互動式教學(xué)。人工神經(jīng)網(wǎng)絡(luò)、模糊數(shù)學(xué)和遺傳算法對于初次接觸的學(xué)生來說,與以往的知識結(jié)構(gòu)相比,抽象性強,難以理解?;谥R的感知規(guī)律(包括強度律、差異律、組合律、活動律和對比律等)[5],筆者開發(fā)了一套教學(xué)演示系統(tǒng)(圖1)。本系統(tǒng)充分考慮智能控制技術(shù)課程的特點,可操作性強,學(xué)生實際動手操作,對各種控制方法的原理進(jìn)行演示和分析,可大大提高教學(xué)效果。
圖1為本文所開發(fā)的教學(xué)演示系統(tǒng)的操作界面,該系統(tǒng)是用MATLAB R2014b版本的GUI程序設(shè)計開發(fā)的。在本科學(xué)生的智能控制教學(xué)過程中,神經(jīng)網(wǎng)絡(luò)控制、模糊控制和遺傳算法為主要教學(xué)內(nèi)容。該系統(tǒng)將這三部分內(nèi)容作為3個主要模塊,分別設(shè)置3個功能區(qū)(神經(jīng)網(wǎng)絡(luò)控制功能區(qū)、模糊控制功能區(qū)和遺傳算法功能區(qū)),中間區(qū)域分配為演示區(qū),主要對各種控制方式的控制效果進(jìn)行互動演示,在每個功能區(qū)中都配置一個“理論分析”的展示區(qū),用來展示對應(yīng)智能控制算法的理論,比如公式推導(dǎo)、理論框架、原理圖等。
圖1 計算機(jī)圖形學(xué)演示系統(tǒng)界面
神經(jīng)網(wǎng)絡(luò)控制模塊,包括樣本預(yù)處理按鈕,對樣本的輸入輸出進(jìn)行組織,按照格式要求,構(gòu)成訓(xùn)練所需樣本集;傳遞函數(shù)按鈕,可以選擇合適的傳遞函數(shù)及其參數(shù);幾個單選按鈕,用于選擇想要演示的神經(jīng)網(wǎng)絡(luò)類型:單神經(jīng)元、感知器、BP網(wǎng)絡(luò)和RBF網(wǎng)絡(luò);被控對象按鈕用于確定被控對象的類型及參數(shù);演示按鈕用于啟動對應(yīng)的神經(jīng)網(wǎng)絡(luò)原理和控制過程的演示動畫。
模糊控制模塊,包括模糊化按鈕,通過選擇隸屬度函數(shù),對輸入進(jìn)行模糊化,作為模糊控制器的輸入;解模糊按鈕用于選擇解模糊的方法;輸入上下限編輯框用于確定輸入的最大值和最小值;模糊化等級編輯框,用于確定模糊等級,以便編輯模糊表;誤差模糊表和控制模糊表用于制定輸入量和控制量的模糊表;控制演示按鈕用于啟動模糊控制器作用于被控對象的演示動畫。
遺傳算法模塊,包括染色體編碼長度編輯框,用于確定二進(jìn)制染色體的位數(shù);群體大小編輯框用于確定群體中染色體的個數(shù);最大進(jìn)化代數(shù)編輯框用于規(guī)定進(jìn)化結(jié)束的代數(shù),即循環(huán)次數(shù)的上限;交叉概率和變異概率編輯框用于輸入兩個概率的數(shù)值;TSP問題求解按鈕將TSP問題作為實例,對遺傳算法的效果進(jìn)行動畫演示。
本演示系統(tǒng)主要實現(xiàn)對以上3個教學(xué)內(nèi)容進(jìn)行直觀演示,以幫助學(xué)生體會智能控制技術(shù)的原理和實踐,并深刻理解相應(yīng)的數(shù)學(xué)理論。
單神經(jīng)元是神經(jīng)網(wǎng)絡(luò)的基礎(chǔ),單神經(jīng)元的深刻理解,決定了學(xué)生對神經(jīng)網(wǎng)絡(luò)的接受程度,我們以單神經(jīng)元講解為例,說明該系統(tǒng)的在智能控制教學(xué)中的輔助作用。
單神經(jīng)元j的結(jié)構(gòu)示意圖如圖2所示,其中xi為神經(jīng)元的第i個輸入,Wij為第i個輸入(或神經(jīng)元)與當(dāng)前神經(jīng)元j之間的連接權(quán)值。∑表示求和運算,f表示傳遞函數(shù)(或轉(zhuǎn)移函數(shù)),Oj為當(dāng)前神經(jīng)元的輸出。單神經(jīng)元的數(shù)學(xué)模型可表示為
在圖2中,選擇單神經(jīng)元單選按鈕,點擊原理演示按鈕,可以演示單神經(jīng)元的數(shù)學(xué)模型和結(jié)構(gòu)示意圖,其中數(shù)學(xué)模型在神經(jīng)網(wǎng)絡(luò)控制模塊的下方,理論分析區(qū)演示,單神經(jīng)元的結(jié)構(gòu)示意圖在中央的演示區(qū)展示,這樣學(xué)生可以將數(shù)學(xué)模型和結(jié)構(gòu)圖對應(yīng),相互映證加深理解,結(jié)合課堂講解來加強教學(xué)效果。
圖2 單神經(jīng)元結(jié)構(gòu)示意圖
智能控制是一門多學(xué)科交叉的現(xiàn)代科學(xué)技術(shù),作為控制類專業(yè)學(xué)生的主干課程,學(xué)習(xí)難度較大。為了對智能控制課程進(jìn)行教學(xué)改革,提高教學(xué)質(zhì)量,本文利用MATLAB R2014b版本的GUI程序設(shè)計,開發(fā)了一套輔助教學(xué)系統(tǒng)——智能控制教學(xué)演示系統(tǒng),系統(tǒng)的互動演示功能,激發(fā)了學(xué)生的學(xué)習(xí)興趣,提高了該課程的教學(xué)質(zhì)量。
致謝:感謝江蘇省2015年度研究生教育教學(xué)改革研究與實踐課題(JGLX15_180)和2012年度校級高等教育研究課題對本論文的資助。
[1] 韓力群.智能控制理論及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2010.
[2] 李國勇.智能控制及其MATLAB實現(xiàn)[M].北京:電子工業(yè)出版社,2005.
[3] 余伶俐,蔡自興,肖曉明.智能控制精品課程教學(xué)改革研究[J].計算機(jī)教育,2010(19):35-39.
[4] 張允,張運波,侯麗華,等.應(yīng)用型本科“智能控制技術(shù)”課程教學(xué)改革的研究與實踐[J].電力教育,2012(36):52,58.
[5] 譚頂良.高等教育心理學(xué)[M].南京:河海大學(xué)出版社,南京師范大學(xué)出版社,2006.