張少白,諸明倩
(南京郵電大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 南京 210003)
人的小腦能夠感知和控制各種各樣的運(yùn)動(dòng),小腦皮質(zhì)中的三層結(jié)構(gòu)-分子層、顆粒層和浦肯雅細(xì)胞層對(duì)于運(yùn)動(dòng)控制有著至關(guān)重要的作用。皮質(zhì)內(nèi)存在五種神經(jīng)元,它們分別是:星形細(xì)胞(stellate cell,SC)、高爾基細(xì)胞(Golgi cell,GO)、顆粒細(xì)胞(granule cells,GC)、浦肯雅細(xì)胞(Purkinje cell,PC)以及籃狀細(xì)胞(basket cell,BC)。正是這五種神經(jīng)元的相互作用,才促使小腦能夠完成各種復(fù)雜的功能。
由于小腦對(duì)于運(yùn)動(dòng)控制的強(qiáng)大作用,促使很多研究人員致力于小腦模型的構(gòu)建與研究,并且取得了一定的成果。首先出現(xiàn)了一種關(guān)于小腦功能的理論[1]。Albus修正和擴(kuò)展了該理論,提出并發(fā)表了新的關(guān)于小腦功能的理論[2],基于這一理論,Albus創(chuàng)建了著名的小腦模型CMAC,并成功地應(yīng)用于機(jī)器人手臂協(xié)調(diào)運(yùn)動(dòng)控制[3]。Albus之后,相繼出現(xiàn)了許多關(guān)于機(jī)器人小腦模型的研究。例如,美國(guó)Illinois大學(xué)的Adams教授對(duì)小腦運(yùn)動(dòng)神經(jīng)學(xué)習(xí)(ML)進(jìn)行研究,提出了重要的假設(shè)和猜想,即小腦運(yùn)動(dòng)神經(jīng)控制(MC)的結(jié)構(gòu)是閉環(huán)的和反饋的[4-5]。日本著名學(xué)者Ito,基于自動(dòng)控制原理中的內(nèi)模原理,提出了小腦內(nèi)模的概念并認(rèn)為,內(nèi)模是學(xué)習(xí)或訓(xùn)練的產(chǎn)物[6]。美國(guó)Harvard大學(xué)教授Houk等在這一領(lǐng)域有諸多貢獻(xiàn),他們?cè)O(shè)計(jì)了一個(gè)小腦模型,用在一個(gè)非線性的彈簧與金屬塊實(shí)驗(yàn)裝置上,進(jìn)行運(yùn)動(dòng)控制實(shí)驗(yàn)[7];后來,他們又設(shè)計(jì)了一個(gè)眼球平滑運(yùn)動(dòng)的小腦預(yù)測(cè)模型[8]。日本著名的機(jī)器人學(xué)者Kawato對(duì)小腦模型和機(jī)器人控制進(jìn)行了深入研究,基于人工神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)了一種小腦模型,用于多關(guān)節(jié)機(jī)械臂的運(yùn)動(dòng)控制[9];之后,又基于BP網(wǎng)絡(luò)為機(jī)器人設(shè)計(jì)了一個(gè)小腦四域計(jì)算模型[10-11];Kawato在北京舉行的ICNNB國(guó)際會(huì)議上演示了基于小腦模型學(xué)習(xí)行走的人性化機(jī)器人,并再次闡述了機(jī)器人與動(dòng)物神經(jīng)系統(tǒng)的關(guān)系[12]。
以上學(xué)者對(duì)于小腦模型本身的研究做出了杰出的貢獻(xiàn),也有另外一些學(xué)者另辟蹊徑,將模糊邏輯與傳統(tǒng)的小腦模型CMAC相結(jié)合,也就是在其輸入層引入模糊集合的隸屬度概念,這樣做的目的有兩個(gè),一是為了對(duì)客觀世界進(jìn)行更加真實(shí)的描述,因?yàn)槟:椒▽?duì)于客觀對(duì)象的描述更具一般性;二是為了對(duì)模糊推理映射的計(jì)算以及模糊控制進(jìn)行簡(jiǎn)化,而且還增加了模糊制的學(xué)習(xí)功能,使其應(yīng)用起來更加方便有效。而文中考慮到現(xiàn)在已經(jīng)存在很多有關(guān)模糊小腦模型神經(jīng)網(wǎng)絡(luò)的研究,但是用的都是CMAC模型,對(duì)具有仿生意義的小腦模型還未涉及,故將該理論運(yùn)用于仿生小腦模型,以提高其性能。
文中擬構(gòu)建的小腦模型主要用于手臂運(yùn)動(dòng)控制,為此將對(duì)Hoff-Arbib模型進(jìn)行簡(jiǎn)單介紹,因?yàn)樗且环N經(jīng)典的手臂運(yùn)動(dòng)模型。為了對(duì)各種條件下手的預(yù)成型以及手臂運(yùn)動(dòng)進(jìn)行相應(yīng)的解釋,包括所抓取對(duì)象的位置、方向以及抓握角度的變化,Hoff和Arbib曾在文獻(xiàn)[13]中特地構(gòu)建了一種控制模型,這種模型主要是基于最小加速度(minimumjerk)的最優(yōu)標(biāo)準(zhǔn)進(jìn)行構(gòu)建的。模型中的手和手臂被單獨(dú)控制,而延伸與抓取之間的協(xié)調(diào)需要通過選取確定抓取角度的形成和手臂延伸到目標(biāo)所需的時(shí)間這兩項(xiàng)中的最大值作為持續(xù)輸入信號(hào)來完成。
手臂的控制規(guī)則如下所示:
(1)
其中,x表示位置;t表示用于產(chǎn)生最小加速度的目標(biāo)物體;D為剩余時(shí)間。
針對(duì)生物系統(tǒng)傳入以及傳出時(shí)存在的延時(shí)問題,文獻(xiàn)[14]給出了解決方案,也就是在Hoff-Arbib模型的基礎(chǔ)上加入了小腦模塊以及剩余時(shí)間預(yù)測(cè)部分,其中小腦模型可以用來學(xué)習(xí)被控體前向模型。
具體的小腦神經(jīng)系統(tǒng)如圖1所示,它是具有輸入輸出連接的。該系統(tǒng)將目標(biāo)位置、速度以及加速度通過苔蘚纖維輸入到小腦模塊,這些輸入分為五組群碼,它們來自不同的子系統(tǒng)。這五組群碼分別表示目標(biāo)與當(dāng)前位置間的位置差,當(dāng)前運(yùn)動(dòng)命令的傳出副本,以及脊髓傳入信號(hào)的延時(shí)狀態(tài)信息,也就是位置、速度和加速度。文獻(xiàn)[15]中對(duì)它進(jìn)行了具體的說明。而文中用于與模糊邏輯相結(jié)合并進(jìn)行仿真的小腦神經(jīng)系統(tǒng)正如圖1中所示。
圖1 具有輸入輸出連接的小腦神經(jīng)系統(tǒng)
1965年,Zadeh教授發(fā)表論文《模糊集合》(fuzzy set),該論文的發(fā)表標(biāo)志著模糊數(shù)學(xué)的誕生。模糊集合的基本思想就是把經(jīng)典集合中的絕對(duì)隸屬關(guān)系靈活化,也就是元素對(duì)“集合”的隸屬度不再局限于取0或1,而是可以取從0到1間的任一數(shù)值。要實(shí)現(xiàn)這一點(diǎn),就需要引入隸屬函數(shù)的概念,用它來描述處于中間過渡階段的事物對(duì)于差異雙方的傾向性。而隸屬度就用來表示元素屬于集合的程度。
可以將此模糊理論用于模糊控制,它是基于模糊推理、模糊語(yǔ)言變量、模糊集合的,其控制規(guī)則就是人類所累積的先驗(yàn)知識(shí)以及專家經(jīng)驗(yàn)。模糊控制的重點(diǎn)是模擬人對(duì)系統(tǒng)的控制,要實(shí)現(xiàn)這種控制就需要在被控對(duì)象的基礎(chǔ)上運(yùn)用模糊控制器進(jìn)行近似推理等手段。在此期間需要著重考慮的是如何確定模糊變量的隸屬度函數(shù),以及如何制定相應(yīng)的控制規(guī)則。
與傳統(tǒng)控制相比,模糊控制存在許多優(yōu)勢(shì),比如它適于解決非線性系統(tǒng)的控制問題,具有良好的魯棒性以及自適應(yīng)性,可以用于時(shí)變、時(shí)滯系統(tǒng),而這些優(yōu)勢(shì)均是由于模糊控制只需要根據(jù)相關(guān)的規(guī)則與數(shù)據(jù)進(jìn)行設(shè)計(jì),而不需要精確的數(shù)學(xué)模型。
模糊系統(tǒng)的核心是知識(shí)庫(kù),它存儲(chǔ)了有關(guān)模糊控制器的一切知識(shí),其中包含具體應(yīng)用領(lǐng)域中的相關(guān)知識(shí)以及要求的控制目標(biāo),這些知識(shí)對(duì)于模糊控制器的性能起著決定性作用。
模糊系統(tǒng)和神經(jīng)網(wǎng)絡(luò)之間存在著一些明顯的區(qū)別與聯(lián)系。第一它們對(duì)于知識(shí)的表達(dá)方式不同,模糊系統(tǒng)可以用來表達(dá)人類總結(jié)的一些經(jīng)驗(yàn)性知識(shí),這樣更方便于人們?nèi)ダ斫?,而神?jīng)網(wǎng)絡(luò)則比較抽象,難以直觀地去理解,因?yàn)樗枋龅氖呛芏鄶?shù)據(jù)間的復(fù)雜函數(shù)關(guān)系;第二它們對(duì)于知識(shí)的存儲(chǔ)方式有所不同,模糊系統(tǒng)通常將知識(shí)存在規(guī)則集中,而神經(jīng)網(wǎng)絡(luò)將知識(shí)存在權(quán)系數(shù)中,但是兩者都是分布式存儲(chǔ)的;第三它們對(duì)于知識(shí)的運(yùn)用方式不同,模糊系統(tǒng)計(jì)算量比較小,因?yàn)樗瑫r(shí)激活的規(guī)則不是很多,而神經(jīng)網(wǎng)絡(luò)計(jì)算量比較大,因?yàn)樯婕暗皆S多相關(guān)的神經(jīng)元,但它們都是并行處理的;第四它們獲取知識(shí)的方式不同,模糊系統(tǒng)的規(guī)則并不是自動(dòng)獲取的,而是由專家提供或設(shè)計(jì),而神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)的功能,無(wú)需人為設(shè)置也可以從輸入輸出樣本中自動(dòng)學(xué)習(xí)權(quán)系數(shù)[16]。
鑒于以上分析,如果將兩者相結(jié)合,將更加便于解決實(shí)際應(yīng)用中的相關(guān)問題。而模糊神經(jīng)網(wǎng)絡(luò)的概念也由此產(chǎn)生,它將模糊系統(tǒng)和神經(jīng)網(wǎng)絡(luò)相互融合,從而達(dá)到互補(bǔ)的效果。模糊神經(jīng)網(wǎng)絡(luò)具有學(xué)習(xí)、聯(lián)想、識(shí)別、自適應(yīng)和模糊信息處理等功能。其本質(zhì)就是將常規(guī)的神經(jīng)網(wǎng)絡(luò)輸入模糊輸入信號(hào)和模糊權(quán)值。典型的模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)總共有六層。
第一層是輸入層,輸入的是精確值。x1、x2表示兩個(gè)輸入變量。第二層能夠?qū)⑤斎胱兞磕:?,也就是隸屬函數(shù)層。
(2)
(3)
其中,m表示輸入變量x1的模糊度,n表示x2的模糊度,第二層總共有m+n個(gè)神經(jīng)元;μAiμBi分別表示x1和x2的隸屬度函數(shù)。
第三層一共有m*n個(gè)節(jié)點(diǎn),這些節(jié)點(diǎn)表示模糊規(guī)則,該層也稱“與”層。該層節(jié)點(diǎn)個(gè)數(shù)與第二層有關(guān),每個(gè)節(jié)點(diǎn)只與第二層中前m個(gè)節(jié)點(diǎn)中的一個(gè)和后n個(gè)節(jié)點(diǎn)中的一個(gè)相連。
第四層中有q個(gè)節(jié)點(diǎn),表示輸出變量模糊度劃分個(gè)數(shù),該層也稱“或”層。該層與第三層的連接為全互連,連接權(quán)值為wkj(k=1,2,…,q;j=1,2,…,m*n)。wkj在訓(xùn)練中是可以調(diào)試的,它表示每條規(guī)則的置信度。
第五層是反模糊化層,輸出的是精確值,該層與第四層的連接為全互連。
模糊小腦模型是在上面介紹的具有認(rèn)知功能的小腦模型的基礎(chǔ)上,加入模糊邏輯的概念,也就是將當(dāng)前的輸入—理想及目標(biāo)位置(PP)、理想速度和加速度(PM)模糊化,引入模糊集合的隸屬度概念,從而提高小腦模型的學(xué)習(xí)收斂速度和精度。圖2是模糊小腦模型結(jié)構(gòu)圖。
由圖2可知,模糊小腦模型包含兩種映射,分別為:R:X→M,E:M→A。
2.1.1 映射算法
采用的映射算法為:
(4)
其中,qi(xi)為輸入矢量;mi,k為qi(xi)映射到中間變量M中的地址;Na為所激活單元的個(gè)數(shù);k為激
圖2 模糊小腦模型結(jié)構(gòu)圖
活單元的序數(shù),k=0~(Na-1)。
2.1.2 隸屬度函數(shù)
(1)單變量隸屬度函數(shù)。
單變量隸屬度函數(shù)定義為:
(5)
其中,σj為一個(gè)系數(shù),可以自由選擇,對(duì)隸屬度函數(shù)圍繞中心點(diǎn)的寬度起到了決定性作用;而中心點(diǎn)就是公式中的cj,其中j表示第j個(gè)隸屬度函數(shù);‖x-cj‖通常表示x和cj之間的距離;Ψ是一個(gè)在cj處取得最大值的函數(shù),它是徑向?qū)ΨQ的,會(huì)隨著‖x-cj‖增大而快速衰減到0。對(duì)于給定的輸入x∈Rn,只有一小部分單元被激活,這些單元的中心靠近x,是由映射X→M決定。
根據(jù)以上分析,可以推算出被激活的中心點(diǎn),推算公式為:
(6)
文中選用的是最常用的高斯函數(shù):
(7)
從相鄰兩個(gè)隸屬函數(shù)的重疊可以推算出方差σj[16]:
(8)
(9)
其中,μc∈(0,1],需要事先進(jìn)行設(shè)計(jì)。
(2)多變量的隸屬度函數(shù)。
關(guān)于多維輸入向量,定義其隸屬度函數(shù):
μ(x)=Φ(μ1,μ2,…,μn)
(10)
其中,Φ()表示相乘運(yùn)算,也就是:
(11)
該映射可以得到M在A中所激活單元的位置,數(shù)目依然是Na。X→M映射確定后,就可以通過智能查表的方法確定X在A的位置,也就是:
ai=E(Λ,μ)
(12)
其中,Λ為張量積,其值為m1×m2×…×mn,所激活的單元表示為:
aT={a1,a2,…,aNa}
(13)
輸出映射P表示為:
y=aTh(x)w
(14)
其中,aT為激活單元位置向量;x為輸入向量;h(x)為隸屬度函數(shù)矩陣,可以表示成:
(15)
根據(jù)定義,此時(shí)只需計(jì)算被激活單元的隸屬度函數(shù)值,其他數(shù)值均為0。
首先將誤差函數(shù)定義成:
(16)
計(jì)算權(quán)重w的方法是:
(17)
模糊小腦模型具有較強(qiáng)的自適應(yīng)性,它可以根據(jù)所激活單元的隸屬度函數(shù)值以及這些值的平方和來確定權(quán)值的修改程度。通過對(duì)高斯函數(shù)中心點(diǎn)位置以及方差的學(xué)習(xí),可以使函數(shù)逼近能力增強(qiáng)。高斯函數(shù)中的兩個(gè)參數(shù)可以定義為:
(18)
(19)
因?yàn)槟:`屬度函數(shù)是通過感受野函數(shù)定義的,所以輸出對(duì)于輸入xi的導(dǎo)數(shù)可以根據(jù)上面提出的方程計(jì)算,公式的推導(dǎo)過程為:
(20)
圖3是一個(gè)雙關(guān)節(jié)機(jī)械臂的模型,其中M表示各個(gè)關(guān)節(jié)的質(zhì)量,L表示長(zhǎng)度,g表示重心。仿真考慮了任意一個(gè)端點(diǎn)的質(zhì)量,端點(diǎn)的效應(yīng)力f=[fxfy]T。
表1給出了手臂模型的各種參數(shù),其中I表示轉(zhuǎn)動(dòng)慣量。
圖3 雙關(guān)節(jié)機(jī)械臂模型
ParametersDefault valuesParametersDefault valuesM11.60L10.50M21.50L20.60M30.00Lg10.18I10.30Lg20.21I20.35g0.00
通過Matlab實(shí)驗(yàn)平臺(tái),模糊小腦模型對(duì)機(jī)械臂做一系列測(cè)試。系統(tǒng)總共要做30次手臂延伸運(yùn)動(dòng)。實(shí)驗(yàn)方法在文獻(xiàn)[17]中已有詳細(xì)描述,在三十次學(xué)習(xí)之后,手臂的跟蹤性能已經(jīng)得到了明顯改善。圖4為學(xué)習(xí)之后的跟蹤性能圖。
圖4 學(xué)習(xí)后跟蹤性能
預(yù)定運(yùn)動(dòng)軌跡從中心點(diǎn)開始,向八個(gè)方向的目標(biāo)勻速移動(dòng),圖中的細(xì)黑線為預(yù)設(shè)軌跡,粗黑線為學(xué)習(xí)三十次之后的跟蹤軌跡。從圖中可以看出,在多次學(xué)習(xí)之后,模型的跟蹤性能得到了顯著提高,此時(shí)與理想軌跡的誤差已經(jīng)很小了。由此可見,該模型能夠像小腦模型一樣實(shí)現(xiàn)對(duì)手臂的控制。
為了比較該模型和小腦模型的性能差異,對(duì)小腦模型也進(jìn)行相同的實(shí)驗(yàn),將兩者的跟蹤誤差進(jìn)行比較,如圖5所示。
圖5 學(xué)習(xí)實(shí)驗(yàn)跟蹤誤差
由圖5可知,通過在認(rèn)知小腦模型的輸入部分引入模糊集合的隸屬度概念,能夠在幾次學(xué)習(xí)之后產(chǎn)生精確的軌跡,而且與原模型相比具有更高的控制精度。
文中對(duì)認(rèn)知小腦模型的研究另辟蹊徑,將注意力集中于小腦模型的輸入部分,引入模糊集合的概念。通過對(duì)認(rèn)知型小腦模型和模糊理論的簡(jiǎn)單介紹,說明了兩者結(jié)合的可能性,提出模糊小腦模型的想法。最后,將新模型與原模型對(duì)于手臂的控制誤差進(jìn)行對(duì)比,有效地說明了模糊小腦模型能夠提高控制精度。
但是該模型還存在一些不足,比如在考慮提高小腦模型精度的同時(shí)并沒有過多考慮各種擾動(dòng)的問題,當(dāng)存在擾動(dòng)時(shí),該模型在精度方面是否依然優(yōu)于原模型還有待研究。