陳 靜
(天津職業(yè)技術(shù)師范大學(xué)信息技術(shù)工程學(xué)院,天津 300222)
由于醫(yī)學(xué)的迅速發(fā)展,腦的結(jié)構(gòu)方面的研究已經(jīng)相當(dāng)成熟,腦的行為包括:思考、感覺、聽覺、語言、運(yùn)動、觸覺、視覺、平衡等,腦就是高級神經(jīng)中樞所在地,控制人的這些行為。其中小腦部位主要是控制人體的平衡,而兩輪自平衡機(jī)器人具有擬人的特點(diǎn),需要有平衡控制器去負(fù)責(zé)系統(tǒng)的平衡,模擬小腦的控制機(jī)理對于構(gòu)建自平衡機(jī)器人的控制系統(tǒng)是有效的。
20 世紀(jì)60 年代,神經(jīng)生理學(xué)的諸多研究學(xué)者(Brindley 等)提出了如果平行纖維(parallel fiber)和浦肯野細(xì)胞(Purkinje cell)之間的神經(jīng)鍵連接是可修改的,那么就可以形成記憶。1968 年,F(xiàn)lourens 意識到了小腦的動力學(xué)功能,他指出小腦的功能就是協(xié)調(diào)運(yùn)動。對于運(yùn)動來說小腦不是必須的,但是沒有小腦,肢體的運(yùn)動就會出現(xiàn)急動、震顫、不牢固和不精確。Ito[1]將內(nèi)模(internal model)的概念引入神經(jīng)生理學(xué),提出內(nèi)模是學(xué)習(xí)或訓(xùn)練的產(chǎn)物,中樞神經(jīng)系統(tǒng)(central nervous system,CNS)利用內(nèi)模進(jìn)行運(yùn)動控制,并且提出了前向模型(forward model)假設(shè)。缺點(diǎn):前向型內(nèi)模反饋增益小,反饋延遲大,中樞神經(jīng)組織難以完全依賴前向模型進(jìn)行運(yùn)動和控制,不利于運(yùn)動控制的快速性和平穩(wěn)性。1987 年,Kawato 等[2]提出逆向模型(inverse model),后又提出反饋誤差學(xué)習(xí)模型[3](feedback-error-learning model),期望軌跡和實(shí)際軌跡的差值作為前向模型的學(xué)習(xí)訓(xùn)練信號,同時解決了不同誤差信息的歸一化。根據(jù)Kawato 的觀點(diǎn),前向內(nèi)部模型預(yù)測行為序列并且聯(lián)合反饋控制能夠被用來克服時間延遲??梢哉f,F(xiàn)EL 機(jī)制是為了建立中樞神經(jīng)系統(tǒng)(CNS)中與運(yùn)動神經(jīng)學(xué)習(xí)和控制(motor learning and control)相關(guān)的小腦計(jì)算模型而提出的一種逆向模型,是一種“目標(biāo)引導(dǎo)”的學(xué)習(xí)方法,是生物學(xué)領(lǐng)域比較合理的監(jiān)督式運(yùn)動學(xué)習(xí)機(jī)制。針對非線性平衡控制問題,2007 年,一種基于反饋誤差學(xué)習(xí)(FEL)的在線自適應(yīng)控制機(jī)制[4]被成功用于倒立擺的平衡控制,這一學(xué)習(xí)機(jī)制在一定程度上說明了小腦在保持身體平衡中所起的作用。研究人員在構(gòu)造系統(tǒng)的自適應(yīng)逆控制方法中也選擇了反饋誤差學(xué)習(xí)[5],并將該方法用于電機(jī)的速度控制中[6]。近年來,有研究人員在非線性系統(tǒng)中將反饋誤差學(xué)習(xí)方法構(gòu)造擾動觀測器[7]用于神經(jīng)生理學(xué)領(lǐng)域。研究人員針對帕金森病的康復(fù)過程,進(jìn)行了基于反饋誤差學(xué)習(xí)的魯棒自適應(yīng)控制器設(shè)計(jì)的仿真研究[8],為平衡系統(tǒng)的自適應(yīng)性控制提供了參考,并且已有研究人員為自平衡機(jī)器人構(gòu)建了模擬小腦功能的控制系統(tǒng)[9-11]。
鑒于反饋誤差學(xué)習(xí)在感覺運(yùn)動系統(tǒng)控制中的自適應(yīng)優(yōu)勢,將其運(yùn)用于自平衡機(jī)器人的自主學(xué)習(xí)控制中,成為一個較為合理的解決方案。本文用反饋誤差學(xué)習(xí)構(gòu)建自平衡車的平衡控制中樞,通過誤差與反饋誤差的比例參數(shù)進(jìn)行自適應(yīng)學(xué)習(xí)的參數(shù)調(diào)節(jié),研究比例參數(shù)對學(xué)習(xí)性能的影響,并與反饋控制效果進(jìn)行對比。
反饋誤差學(xué)習(xí)機(jī)制的基本結(jié)構(gòu)如圖1所示。圖中xd(t)為期望軌跡,是ufb(t)反饋控制器的輸出;uff(t)為前饋神經(jīng)網(wǎng)絡(luò)自適應(yīng)控制器的輸出;u(t)= uff(t)+ufb(t)為作用于被控對象的控制量;x(t)為系統(tǒng)狀態(tài)。學(xué)者已經(jīng)證明反饋誤差學(xué)習(xí)的收斂性。
自平衡機(jī)器人是典型的非線性欠驅(qū)動系統(tǒng),常被研究人員用來驗(yàn)證算法性能[12-15],本研究利用Lagrange方法建立了自平衡機(jī)器人的數(shù)學(xué)模型,該模型的系統(tǒng)狀態(tài)(6 個變量)包括機(jī)器人傾角、左右輪角位移、傾角速度、左右輪角速度,均為可測的狀態(tài),向量定義為系統(tǒng)輸入量有2 個,左右輪的輸入轉(zhuǎn)矩τl和τr,系統(tǒng)擾動有3 個,分別為上體受到的轉(zhuǎn)矩?cái)_動和左、右輪的轉(zhuǎn)矩?cái)_動。
為了便于分析該動力學(xué)模型并對機(jī)器人設(shè)計(jì)控制器,定義系統(tǒng)的狀態(tài)變量為其中,則以轉(zhuǎn)矩為控制量的系統(tǒng)非線性動力學(xué)方程為:
機(jī)器人模型參數(shù)如表1所示。
表1 機(jī)器人參數(shù)
基于改進(jìn)的反饋誤差學(xué)習(xí)的小腦內(nèi)模自適應(yīng)控制結(jié)構(gòu)如圖2所示。
圖2 小腦內(nèi)模自適應(yīng)控制結(jié)構(gòu)
圖中,小腦內(nèi)模的輸入神經(jīng)元為感覺皮質(zhì)(SC),隱含層神經(jīng)元為顆粒細(xì)胞(GC),輸出層神經(jīng)元為普肯野細(xì)胞(PC),輸入層到隱含層的連接權(quán)值通過苔狀纖維(mossy fibers,MF)與GC 之間的突觸進(jìn)行修飾,隱含層和輸出層的權(quán)值更新通過平行纖維(parallel fibers,PF)與普肯野細(xì)胞之間的突觸進(jìn)行修正。學(xué)習(xí)過程中通過下橄欖(inferior olive,IO)融合學(xué)習(xí)信號,實(shí)現(xiàn)小腦內(nèi)模的自適應(yīng)學(xué)習(xí)。
這里采用一個典型的單隱含層BP 網(wǎng)絡(luò)(6-6-2結(jié)構(gòu),輸入層6 個神經(jīng)元,隱含層6 個神經(jīng)元,輸出層2 個神經(jīng)元)作為小腦內(nèi)模,如果用w 表示小腦內(nèi)模的權(quán)值,則權(quán)值更新公式為:
式中:e=(xd-x)∈R6×1;uff∈R2×1;ufb∈R6×2;0>η>1 為小腦內(nèi)模的學(xué)習(xí)率;0≤μ≤1;kT≥0。
計(jì)算過程中用到的神經(jīng)網(wǎng)絡(luò)運(yùn)算公式為:
式中:N1為隱含層神經(jīng)元輸入信號;A1為隱含層神經(jīng)元輸出信號;N2為輸出層神經(jīng)元輸入信號;A2為輸出層神經(jīng)元輸出信號;W1為輸入層神經(jīng)元到隱含層神經(jīng)元之間的連接權(quán)值;b1為隱含層神經(jīng)元的偏置量;W2為隱含層神經(jīng)元到輸出層神經(jīng)元之間的連接權(quán)值;b2為輸出層神經(jīng)元的偏置量?;谑剑?)所示的各權(quán)值更新公式為:
為了實(shí)現(xiàn)自平衡機(jī)器人的平衡控制,機(jī)器人的期望狀態(tài)xd=[0;0;0;0;0;0],機(jī)器人的初始傾角為9°,機(jī)器人的仿生控制結(jié)構(gòu)如圖3所示。
圖3 機(jī)器人仿生控制結(jié)構(gòu)
基于小腦內(nèi)模的控制流程如下。
第一步:隨機(jī)初始化神經(jīng)網(wǎng)絡(luò)的權(quán)值,初始化學(xué)習(xí)參數(shù):μ=0.5(可調(diào)參數(shù)),η=0.5,k=[1,1,1,1,1,1;1,1,1,1,1,1];第二步:不斷采樣誤差e 和ufb值作為網(wǎng)絡(luò)學(xué)習(xí)的數(shù)據(jù);第三步:根據(jù)式(4)進(jìn)行參數(shù)的更新;第四步:計(jì)算小腦內(nèi)模的輸出uff和ufb的和,作為機(jī)器人的控制輸入,作用于機(jī)器人,使機(jī)器人狀態(tài)發(fā)生更新。返回第二步,不斷循環(huán),一直到學(xué)習(xí)條件終止為止(如控制失敗,或者平衡時間達(dá)到期望時間)。
在MATLAB2009a 軟件中進(jìn)行SIMULINK 仿真實(shí)驗(yàn),仿真結(jié)果如圖4-7所示。
仿真中所用的關(guān)鍵參數(shù)如下。
反饋控制器的增益矩陣為:
圖4 μ=0.5 時機(jī)器人平衡效果
圖5 對比結(jié)果1
圖6 對比結(jié)果2
圖7 不同參數(shù)μ下的控制效果對比
實(shí)驗(yàn)過程中,存儲了μ 取值不同時的結(jié)果數(shù)據(jù),并將傾角的控制效果進(jìn)行了對比,當(dāng)μ 取值較小時,平衡的初始時刻控制的傾角超調(diào)相對較小,但是運(yùn)行的結(jié)束時刻會有發(fā)散現(xiàn)象,通過分析發(fā)現(xiàn),μ 的較小取值,使得學(xué)習(xí)率取決于誤差,而經(jīng)過反饋增益矩陣的反饋誤差作用較小,導(dǎo)致了控制效果不佳。通過增加μ 值,使得反饋誤差起決定性作用時,控制效果達(dá)到理想狀態(tài),而且傾角的超調(diào)量并沒有太大變化,但是控制的穩(wěn)定性有所加強(qiáng),從這個角度也可以看出反饋誤差學(xué)習(xí)的優(yōu)勢。
本文提出了基于反饋誤差學(xué)習(xí)的小腦內(nèi)模自適應(yīng)控制方法,用于自平衡機(jī)器人的平衡控制,比較了在不同參數(shù)下的控制效果,通過對比可以看出,反饋誤差學(xué)習(xí)的自適應(yīng)控制優(yōu)勢,通過與傳統(tǒng)反饋控制方法的比較也可以看出基于反饋誤差學(xué)習(xí)的小腦內(nèi)模在自平衡機(jī)器人穩(wěn)定平衡控制的優(yōu)勢較為明顯,可以有效解決自平衡機(jī)器人的自適應(yīng)穩(wěn)定平衡控制。