李 軍, 張觀東
(蘭州交通大學(xué) 自動(dòng)化與電氣工程學(xué)院,蘭州 730070)
對于機(jī)器人軌跡跟蹤控制系統(tǒng)設(shè)計(jì)而言,建立準(zhǔn)確且可靠的系統(tǒng)模型,有利于改善控制的動(dòng)靜態(tài)品質(zhì)[1]。但是在實(shí)際工程中,由于機(jī)器人是一個(gè)非線性和不確定性系統(tǒng),難以獲取其精確的數(shù)學(xué)模型。因此,實(shí)際中常采用神經(jīng)網(wǎng)絡(luò)[2-3]和模糊系統(tǒng)[4]等方法對機(jī)器人建模與辨識,以實(shí)現(xiàn)對機(jī)器人的高精度跟蹤控制。近年來,SVM[5-7]、ELM(Extreme Learning Machine)[8-9]等新的計(jì)算智能方法在一般非線性系統(tǒng)辨識、機(jī)器人建模與控制方面也已取得成功應(yīng)用。
SVM方法在算法實(shí)現(xiàn)中將優(yōu)化問題的求解轉(zhuǎn)化對偶的全局二次凸優(yōu)化問題,LS-SVM作為SVM的延伸,僅涉及到求解KKT線性方程組問題,但都存在隨著訓(xùn)練數(shù)據(jù)規(guī)模的增加而引起的核矩陣運(yùn)算困難等問題。另外一類如KPCA[10]等方法也存在著求解過程中內(nèi)存消耗較大的類似問題。文獻(xiàn)[11]提出一種FVS方法,它將輸入數(shù)據(jù)通過核技術(shù)映射至高維特征空間,從特征空間上的訓(xùn)練數(shù)據(jù)集中選取相關(guān)的數(shù)據(jù)向量構(gòu)成特征空間的一個(gè)基底,稱之為特征子空間,再將訓(xùn)練數(shù)據(jù)投影至子空間,應(yīng)用經(jīng)典的線性判別或線性回歸方法建立分類或回歸模型,在基準(zhǔn)分類及回歸問題上取得了很好的效果。文獻(xiàn)[12]將FVS與支持向量數(shù)據(jù)描述(SVDD)方法結(jié)合,成功應(yīng)用于TE化工過程監(jiān)控中。
另一方面,考慮到標(biāo)準(zhǔn)SVM方法不能處理多輸出的問題,通常僅考慮對系統(tǒng)的每一輸出單獨(dú)應(yīng)用單輸出的SVM方法進(jìn)行辨識或控制,但這忽視了系統(tǒng)多輸出之間的耦合性,具有一定的應(yīng)用局限性。文獻(xiàn)[13]給出了一種多輸出SVM方法,并成功應(yīng)用于超光譜圖像的遙感生物物理學(xué)參數(shù)估計(jì)中。多輸出SVM方法保持了在ε不敏感損失函數(shù)下具有緊湊與稀疏解的優(yōu)點(diǎn)。鑒于FVS與MSVM方法的各自優(yōu)點(diǎn),針對復(fù)雜的機(jī)器人系統(tǒng)非線性辨識問題,本文提出一種FVS-MSVM方法,通過應(yīng)用于液壓驅(qū)動(dòng)機(jī)器人油壓辨識、6 自由度(Degree Of Freedom,DOF)工業(yè)機(jī)器人PUMA 560逆向運(yùn)動(dòng)學(xué)辨識及7 DOFSARCOS仿生機(jī)器人逆向動(dòng)力學(xué)辨識的實(shí)例中,還與現(xiàn)有的其它辨識方法及相關(guān)文獻(xiàn)的結(jié)果在同等條件進(jìn)行比較,以驗(yàn)證本文方法的有效性。
FVS方法在高維特征空間選取相關(guān)的數(shù)據(jù),即特征向量,形成特征子空間的基底,從而抓住了特征空間中全部數(shù)據(jù)向量的幾何結(jié)構(gòu)特性。
給定數(shù)據(jù){x∈Rn,yi∈RQ},i=1,2,…,M,變換至特征空間F上, 即有x→φ(x)∈RN。 定義X={φ(x1)φ(x2)…φ(xM)}, 核函數(shù)k(xi,xj)=φ(xi)Tφ(xj), 簡記為ki,j, 則有核矩陣K=XTX, 其元素為ki,j。
對核矩陣可進(jìn)行中心化處理, 特征空間的數(shù)據(jù)φ(xi)簡記為φi, 則有數(shù)據(jù)均值
(1)
式中:bj=1/M。 因此,核矩陣中心化后為
(2)
式中: 單位矩陣IM∈RM×M, 矩陣BM的列向量為b=(b1,…,bM)T。
(3)
式中:ΦS={φS1,…,φSL}, 權(quán)系數(shù)向量ai∈RM×L。
(4)
(5)
為了使δi取得最小值, 則需將式(5)對ai求偏導(dǎo), 可得
(6)
(7)
因此,
(8)
針對FV的內(nèi)積, 可定義核矩陣KSS及核函數(shù)向量kSi如下:
式(8)可變形為
(9)
針對F中所有數(shù)據(jù)xi(i=1,2,…,M;xi∈Rn)為找到滿足最小化式(9)的特征子空間S, 則有
(10)
由式(10)針對給定的集合S, 可分別定義局部適應(yīng)度(local fitness)JSi與全局適應(yīng)度(global fitness)JS,即有
(11)
(12)
由式(11)與式(12)可知,求解式(10)可轉(zhuǎn)化為
(13)
注意,一旦全體φ(xi)∈S, 式(12)的最大值為1, 式(4)的δi值為0。 因此, 隨著L的增加, 僅需使用(M-L)個(gè)余下的數(shù)據(jù)計(jì)算選取式(13)。
FVS方法是一種前向順序選擇FV的迭代方法。在第一次迭代時(shí),選擇具有最大全局適應(yīng)度的數(shù)據(jù)作為FV, 即使得JS為最大。 與此同時(shí),基于局部適應(yīng)度JSi選擇下一個(gè)候選基向量, 對于目前的基向量而言, 該JSi的值最小, 即在幾何結(jié)構(gòu)上,候選基向量與當(dāng)前基向量之間夾角θi最大。 除第一次迭代之外,算法實(shí)現(xiàn)過程中用最小的JSi選擇新的基向量, 也就是特征向量(FV)并計(jì)算全局適應(yīng)度。JS是單調(diào)遞增的, 因?yàn)樾碌腇Vs與前一次的FVs一樣,可以重構(gòu)出所有的數(shù)據(jù)。隨著迭代過程的進(jìn)行,所選擇的FVs近似于正交,最終使得數(shù)值解滿足要求且穩(wěn)定。
另外,在每次迭代時(shí),均需計(jì)算新的全局適應(yīng)度,與此同時(shí),還需再次用局部適應(yīng)度尋找下一個(gè)最好的候選FV。為避免計(jì)算矩陣的逆,從降低計(jì)算復(fù)雜度方面考慮,可采用分塊求逆法,僅當(dāng)KSS不再是數(shù)值可逆時(shí),終止該操作。
為完成算法的遞推實(shí)現(xiàn)過程,在第L次迭代過程中,也即選擇第L個(gè)FV時(shí), 需由式(11)計(jì)算第個(gè)局部適應(yīng)度, 式(12)分子項(xiàng)可表示為
(14)
式中:S(L)={S1,…,SL}表示第L次迭代時(shí)的基向量集合, 因此它包含了L個(gè)已選擇的FVs。為遞推計(jì)算的方便,定義:
(15)
則式(14)等價(jià)于
(16)
且有
(17)
式中:kS(L)i∈RL是第(L-1)次迭代時(shí)向量kS(L-1)i的增廣, 即第L次迭代時(shí)增加了所選擇的FV=SL, 這也表明
S(L)=S(L-1)∪{SL}
(18)
考慮到核矩陣KS(L)S(L)的分塊求逆, 由式(16)及式(17),式(15)變換為
(19)
式中:cL=ψS(L-1)SL-kSLSL為標(biāo)量,hS(L)i∈RL。
算法的停止條件是JS達(dá)到設(shè)定值,或者FV達(dá)到預(yù)置數(shù)目。FVS方法的算法具體實(shí)現(xiàn)步驟如下:
步驟1設(shè)置迭代終止參數(shù): 全局適應(yīng)度JS的上界maxFitness, 及應(yīng)選擇FVs的數(shù)目N并且置迭代次數(shù)L=0及特征子空間S為空, 適應(yīng)度變量fitness=0,由式(2)對核矩陣K中心化。
步驟4判斷是否達(dá)到終止條件,若未達(dá)到則重復(fù)執(zhí)行步驟3,否則,選取FV的過程結(jié)束,S={S1,…,SL}。
第一次迭代時(shí),涉及到全部數(shù)據(jù)的核矩陣計(jì)算,所以計(jì)算復(fù)雜度為O(M2),L>1的迭代過程由于使用遞推計(jì)算,其計(jì)算復(fù)雜度為O(ML2)。
FVS方法中的核函數(shù)可以選取常見的高斯核函數(shù),其形式為
k(xi,xj)=exp{-‖xi-xj‖2/(2δ2)}
(20)
特征子空間S被選定后, 所有數(shù)據(jù)可投影至該特征子空間中??紤]以點(diǎn)積形式計(jì)算xi在S中的投影zi時(shí),zi應(yīng)為
(21)
考慮以正交投影形式計(jì)算xi在S中的投影zi時(shí),zi應(yīng)為
(22)
考慮到SVM方法在建模方面的優(yōu)勢,將FVS方法看作數(shù)據(jù)預(yù)處理,可以與SVM方法組合,形成一類新的建模方法。
所有訓(xùn)練數(shù)據(jù)點(diǎn)xi均由式(21)經(jīng)點(diǎn)積投影至特征子空間,變換后數(shù)據(jù)集為(zi,yi)。 由于標(biāo)準(zhǔn)的單輸出ε-SVM無法處理多輸出問題,核嶺回歸(KRR)可處理多輸出問題但失去了解的稀疏性。在單輸出ε-SVM的基礎(chǔ)上, 可給出多輸出ε-SVM方法, 此時(shí)需考慮每一單獨(dú)輸出之間的耦合關(guān)系,可能會獲得更精確的結(jié)果。設(shè)MSVM的權(quán)值矩陣W=[w1,…,wQ], 偏置b=[b1,…,bQ], 需對如下所示的目標(biāo)函數(shù)進(jìn)行最小化優(yōu)化求解,即有
(23)
受KRR方法的啟發(fā), 可使用L2范數(shù)的ε不敏感損失函數(shù),各維輸出能在唯一的限制條件下產(chǎn)生單一的支持向量。因此,式(23)中的ε-損失函數(shù)L(u)為
(24)
為了不增加計(jì)算復(fù)雜度,式(23)的優(yōu)化求解可通過迭代重加權(quán)最小二乘(IRWLS)[13]算法進(jìn)行, 直至找到最優(yōu)解。 令k為迭代次數(shù),Wk,bk為當(dāng)前解。 首先,對式(23)中的L(u)進(jìn)行一階泰勒展開, 式(23)的近似表達(dá)為
(25)
此時(shí),可對式(24)進(jìn)行二次逼近,即
(26)
式(26)表明它是一個(gè)加權(quán)最小二乘問題,權(quán)值與考慮yi各個(gè)輸出的先驗(yàn)知識的上一次求解有關(guān)。為優(yōu)化式(23),可通過優(yōu)化式(25)求得其下降方向,然后用基于線性搜索算法計(jì)算下一步的解。因此, IRWLS算法的具體實(shí)現(xiàn)步驟如下:
步驟2由式(25)的解求得WS,bS, 定義式(23)的下降方向?yàn)?/p>
(27)
步驟3計(jì)算下一步的解,即
式中:ηk為步長,它的計(jì)算可應(yīng)用文獻(xiàn)[14]提出的反向跟蹤算法。
求解WS,bS時(shí),由于各維輸出之間無耦合,故可令式(26)的梯度方程為零,即
(28)
式(28)可表示為線性系統(tǒng)方程,即
(29)
式中:yj=[y1j,…,yMj], (Da)ij=[aiδ(i-j)],δ為脈沖函數(shù),Ψ=[φ(z1),…,φ(zM)]T,a=[a1,…,aM]T,I為所有元素為1的列向量。
(30)
式中: (K1)ij=k1(zi,zj)。 對于單輸出的ε-SVM, 則有
(31)
圖1 FVS-MSVM方法的流程圖Fig.1 Flowchart of FVS-MSVM method
液壓驅(qū)動(dòng)機(jī)器人(hydraulic actuator)由液壓驅(qū)動(dòng)器中油壓實(shí)施控制,即通過液壓驅(qū)動(dòng)器閥門開度位置u控制油壓y的大小,閥門燃油進(jìn)入驅(qū)動(dòng)器給機(jī)器人臂供能。因此,通過控制閥門的開度u,可控制油壓y的大小,進(jìn)而可控制機(jī)器人臂的所處位置。數(shù)據(jù)來源于文獻(xiàn)[16],實(shí)際采集過程中,閥門的開度位置u為輸入,油壓y為系統(tǒng)輸出,共獲取1 024組數(shù)據(jù)。圖2給出了閥門開度位置u與油壓y的實(shí)際測量值波形,由圖可知,當(dāng)閥門開度位置u呈現(xiàn)階躍變化時(shí),由于機(jī)械共振現(xiàn)象,油壓測量值顯現(xiàn)出震蕩行為。
圖2 閥門開度與油壓測量值的時(shí)間序列Fig.2 Measured values of opening and pressure
對于液壓驅(qū)動(dòng)機(jī)器人油壓系統(tǒng),其辨識模型可表示為
(32)
式中:ny,nu分別為模型輸出及輸入的階次。實(shí)驗(yàn)中前一半為訓(xùn)練數(shù)據(jù),余下部分為測試數(shù)據(jù)。取辨識模型的ny=3,nu=2。 FV的最大數(shù)目N=50, 全局適應(yīng)度閾值JS=0.989, 式(20)中的δ=2。
圖3(a)給出了基于FVS-MSVM液壓驅(qū)動(dòng)機(jī)器人油壓在線辨識結(jié)果,圖中黑色實(shí)線為期望輸出,黑色虛線為FVS-MSVM實(shí)際輸出,圖3(b)給出了全局適應(yīng)度JS與FV數(shù)目之間的變化關(guān)系曲線,隨著FV數(shù)目的增加, 當(dāng)JS=0.989時(shí), FV的數(shù)目為34。由圖3可見,所提方法可呈現(xiàn)出較好的辨識效果。
表1進(jìn)一步給出了FVS-MSVM方法與其它不同方法的訓(xùn)練時(shí)間對比,及在測試數(shù)據(jù)集的辨識結(jié)果數(shù)值比較。其中,基于文獻(xiàn)[17]的AR-SOM神經(jīng)網(wǎng)絡(luò)方法, 選取13×14的二維網(wǎng)絡(luò)結(jié)構(gòu), 鄰域?qū)挾圈?=5.65,σT=0.01; 在ELM方法中,隱含層節(jié)點(diǎn)考慮可加性節(jié)點(diǎn),節(jié)點(diǎn)數(shù)目為30,隱含層節(jié)點(diǎn)參數(shù)在[-1,1]之間隨機(jī)確定;KPCA-SVM方法中,取非線性主元為8。由表1可知, FVS-MSVM方法在訓(xùn)練時(shí)間及辨識精度上均具有明顯的優(yōu)勢。
圖3 油壓輸出的辨識結(jié)果Fig.3 Identification result of oil pressure output
本文方法還與文獻(xiàn)[16]采用小波神經(jīng)網(wǎng)絡(luò)方法的結(jié)果進(jìn)行了對比。其中,文獻(xiàn)[16]的RMSE=0.467, 本文方法的結(jié)果明顯占優(yōu)。
表1 不同方法的性能指標(biāo)對比Tab.1 Evaluation of performance indicator for different method
采用FVS-LR/SVM實(shí)現(xiàn)了對6 DOF工業(yè)機(jī)器人PUMA 560逆向運(yùn)動(dòng)學(xué)系統(tǒng)的辨識以及7 DOF SARCOS仿生機(jī)器人動(dòng)力學(xué)系統(tǒng)建模。實(shí)驗(yàn)中,針對不同的辨識對象,分別選取不同的全局適應(yīng)度閾值與特征子空間基向量數(shù)量N等參數(shù),所有辨識對象FVS均使用高斯核函數(shù)。
本節(jié)實(shí)驗(yàn)選擇FVS-MSVM方法對復(fù)雜的PUMA 560工業(yè)機(jī)器人的運(yùn)行軌跡進(jìn)行建模與重現(xiàn),PUMA 560工業(yè)機(jī)器人具有6有自由度,其所有關(guān)節(jié)均為旋轉(zhuǎn)關(guān)節(jié),文獻(xiàn)[18]給出PUMA 560機(jī)器人D-H (Denavit-Hartenberg)參數(shù)及詳細(xì)的工作過程。這個(gè)任務(wù)的目標(biāo)是在執(zhí)行可能包含重復(fù)狀態(tài)的任一軌跡時(shí),估計(jì)PUMA 560機(jī)器人手臂的關(guān)節(jié)角度。因此,描述末端執(zhí)行器的軌跡的笛卡爾空間 (任務(wù)空間)坐標(biāo)x(t)∈R3為輸入變量,6個(gè)關(guān)節(jié)角θ(t)∈R6為輸出變量。完成這一任務(wù)的逆向運(yùn)動(dòng)學(xué)辨識模型為
(33)
式中:nx、nθ分別為模型輸入及輸出的階次。
實(shí)驗(yàn)中,使機(jī)器人末端執(zhí)行器在任務(wù)空間內(nèi)執(zhí)行“figure-eight”路徑任務(wù),使用文獻(xiàn)[19]的Matlab robotics toolbox,可獲取數(shù)據(jù){x(t),θ(t)}。共收集700組數(shù)據(jù),其中600組為訓(xùn)練樣本,余下部分為測試樣本。
實(shí)驗(yàn)中,選取FV的最大數(shù)目N=300,全局適應(yīng)度JS的閾值0.99, 式(20)的δ=5。 令辨識模型中的nθ=9,nx=1。 圖4(a)給出了在測試數(shù)據(jù)集上對PUMA 560機(jī)器人6個(gè)關(guān)節(jié)角的模型估計(jì)值與實(shí)際值的對比結(jié)果,圖中的實(shí)線為關(guān)節(jié)角的實(shí)際輸出,虛線為FVS-MSVM模型的估計(jì)輸出。圖4(b)給出了FV 與全局適應(yīng)度JS之間的關(guān)系曲線, 當(dāng)JS達(dá)到閾值時(shí), FV等于14,此時(shí),算法停止。圖4(c)則給出了末端執(zhí)行器在笛卡爾空間內(nèi)再生軌跡與實(shí)際的“figure-eight”軌跡對比的效果圖,圖中的符號“?!睘槟┒藞?zhí)行器軌跡的實(shí)際輸出,“*”為FVS-MSVM的模型估計(jì)輸出。由圖4的結(jié)果看出,針對MIMO機(jī)器人任務(wù)空間的辨識,F(xiàn)VS-MSVM方法具有很好的應(yīng)用效果。
表2進(jìn)一步給出了FVS-MSVM方法與其它不同方法的訓(xùn)練時(shí)間對比,以及在測試數(shù)據(jù)集的辨識結(jié)果數(shù)值比較。其中,基于AR-SOM神經(jīng)網(wǎng)絡(luò)方法, 選取34×36的二維網(wǎng)絡(luò)結(jié)構(gòu),鄰域?qū)挾圈?=3.5,σT=0.01; 在ELM方法中,隱含層節(jié)點(diǎn)考慮可加性節(jié)點(diǎn),節(jié)點(diǎn)數(shù)目為30,隱含層節(jié)點(diǎn)參數(shù)在[-1,1]之間隨機(jī)確定;KPCA-SVM方法中,取非線性主元為12。由表2可知, FVS-MSVM方法無論在訓(xùn)練時(shí)間上還是在辨識精度方面均具有明顯的優(yōu)勢。
圖4 PUMA560機(jī)器人逆向運(yùn)動(dòng)學(xué)辨識結(jié)果Fig.4 Identification result of inverse kinematics for PUMA 560
表2 關(guān)節(jié)角6辨識結(jié)果對比Tab.2 Comparison of identification results for angular trajectories of joint 6
本節(jié)實(shí)驗(yàn)考慮具有7 自由度(DOF)的SARCOS仿生機(jī)器人臂的逆動(dòng)力學(xué)建模問題。數(shù)據(jù)集取自文獻(xiàn)[20],由48,933輸入-輸出數(shù)據(jù)對構(gòu)成。建模任務(wù)是為規(guī)劃機(jī)器人的軌跡由某個(gè)起始狀態(tài)至規(guī)定狀態(tài),需要在每一時(shí)刻確定機(jī)器人的關(guān)節(jié)位置、速度及加速度,由此計(jì)算出為實(shí)現(xiàn)這一軌跡所需要的關(guān)節(jié)力矩,這是一個(gè)逆動(dòng)力學(xué)建模問題。模型輸入的第1~7維為關(guān)節(jié)位置,8~14維為關(guān)節(jié)速度,15~21維為關(guān)節(jié)加速度,模型輸出則為7個(gè)關(guān)節(jié)轉(zhuǎn)矩,即由21維輸入映射至7維輸出。由機(jī)器人在任務(wù)空間中運(yùn)動(dòng)約7.5 min,以50 Hz的采樣頻率可獲得數(shù)據(jù)。實(shí)驗(yàn)選取第20 000~30 000個(gè)數(shù)據(jù)對,其中95%為訓(xùn)練數(shù)據(jù)集,余下數(shù)據(jù)為測試集。
考慮到訓(xùn)練數(shù)據(jù)的規(guī)模使得計(jì)算核矩陣時(shí)易導(dǎo)致內(nèi)存溢出等問題,將數(shù)據(jù)分區(qū),然后對每個(gè)區(qū)域內(nèi)的數(shù)據(jù)子集進(jìn)行特征向量選取,最終進(jìn)行合并,形成一個(gè)特征子空間。將訓(xùn)練數(shù)據(jù)按5個(gè)分區(qū)分別選取特征向量,每個(gè)分區(qū)的FV最大數(shù)目均為N=500,JS的閾值為0.999 98, 核參數(shù)δ=2。
圖5僅給出了基于FVS-MSVM 方法對關(guān)節(jié)轉(zhuǎn)矩2與關(guān)節(jié)轉(zhuǎn)矩4的建模效果與實(shí)際值的對比,圖中實(shí)線為關(guān)節(jié)轉(zhuǎn)矩的實(shí)際輸出,虛線為模型的估計(jì)輸出。由圖5看出本文方法具有較好的建模精度。圖6給出了訓(xùn)練時(shí),數(shù)據(jù)分區(qū)1至分區(qū)4的FV與其全局適應(yīng)度之間的關(guān)系曲線。由圖6可知,當(dāng)各分區(qū)的JS達(dá)到預(yù)先設(shè)置的閾值時(shí),分區(qū)1的FV為136,分區(qū)2的FV為141,分區(qū)3的FV為197,分區(qū)4的FV為128,分區(qū)5的FV為130。因此,總的FV數(shù)目為737。
圖5 基于FVS-MSVM轉(zhuǎn)矩2與轉(zhuǎn)矩4辨識結(jié)果Fig.5 Comparison of identification results for torque 1 and torque 4 using FVS-MSVM method
圖5僅給出了基于FVS-MSVM 方法對關(guān)節(jié)轉(zhuǎn)矩2與關(guān)節(jié)轉(zhuǎn)矩4的建模效果與實(shí)際值的對比,圖中實(shí)線為關(guān)節(jié)轉(zhuǎn)矩的實(shí)際輸出,虛線為模型的估計(jì)輸出。由圖4看出本文方法具有較好的建模精度。圖6給出了訓(xùn)練時(shí),數(shù)據(jù)分區(qū)1至分區(qū)4的FV與其全局適應(yīng)度JS之間的關(guān)系曲線。由圖6可知,當(dāng)各分區(qū)的JS達(dá)到預(yù)先設(shè)置的閾值時(shí),分區(qū)1的FV為136,分區(qū)2的FV為141,分區(qū)3的FV為197,分區(qū)4的FV為128,分區(qū)5的FV為130。因此,總的FV數(shù)目為737。
表3進(jìn)一步給出在測試數(shù)據(jù)集上,針對關(guān)節(jié)轉(zhuǎn)矩1,本文方法與其他方法的建模結(jié)果對比。其中, AR-SOM神經(jīng)網(wǎng)絡(luò)方法,選取16×22的二維網(wǎng)絡(luò)結(jié)構(gòu), 鄰域?qū)挾圈?=80,σT=0.001; ELM方法的隱含層節(jié)點(diǎn)考慮可加性節(jié)點(diǎn),節(jié)點(diǎn)數(shù)目為40,隱含層節(jié)點(diǎn)參數(shù)在[-1,1]之間隨機(jī)確定;KPCA-SVM方法中,取非線性主元為100。由表3可知, FVS-MSVM方法在訓(xùn)練時(shí)間及建模精度上均具有較明顯的優(yōu)勢。
圖6 FV與全局適應(yīng)度關(guān)系曲線Fig.6 FV and global fitness relationship curve
表3 轉(zhuǎn)矩1辨識結(jié)果對比Tab.3 Comparison of identification results using different method for torque1
針對復(fù)雜的機(jī)器人非線性建模與辨識問題,鑒于FVS與MSVM方法的各自優(yōu)點(diǎn),本文提出一種FVS-MSVM方法。FVS方法具有對數(shù)據(jù)包含的內(nèi)在特征進(jìn)行預(yù)提取的優(yōu)點(diǎn),對映射至高維特征空間的數(shù)據(jù),考慮幾何結(jié)構(gòu),由核技術(shù)提取相關(guān)的數(shù)據(jù)向量,張成高維特征空間的一個(gè)基底,所選擇的特征向量形成一個(gè)特征子空間。在此基礎(chǔ)上,可將訓(xùn)練數(shù)據(jù)投影至該特征子空間上,基于MSVM方法建立辨識模型,MSVM方法保持了基于標(biāo)準(zhǔn)ε不敏感損失函數(shù)的單輸出SVM方法所具有的緊湊與稀疏解特性。
為驗(yàn)證FVS-MSVM方法的有效性,應(yīng)用于液壓驅(qū)動(dòng)機(jī)器人的油壓辨識、PUMA 560工業(yè)機(jī)器人逆向運(yùn)動(dòng)學(xué)辨識、SARCOS仿生機(jī)器人逆向動(dòng)力學(xué)建模中。在同等條件下與AR-SOM、SVM、LS-SVM、ELM、KPCA-SVM及FVS-LR方法進(jìn)行了比較。結(jié)果表明,所提方法具有很好的建模與辨識精度,模型的泛化性能好。進(jìn)一步的研究是探討不同核函數(shù)對建模精度的影響,以及延伸應(yīng)用非線性系統(tǒng)控制中。