本發(fā)明涉及飛行器控制領(lǐng)域,具體涉及一種基于核遞歸最小二乘算法的自適應(yīng)飛行器魯棒控制方法,通過參考模型來表征期望的飛行特性,改善控制精度,并降低運(yùn)算負(fù)擔(dān)。
背景技術(shù):
現(xiàn)代飛行器的氣動(dòng)布局往往不能滿足穩(wěn)定性能要求,而且伴隨著復(fù)雜的空情干擾和系統(tǒng)參數(shù)的改變,為了獲得理想的飛行品質(zhì),需要設(shè)計(jì)飛行器自適應(yīng)魯棒控制系統(tǒng)。為了解決這個(gè)問題,模型參考自適應(yīng)(modelreferenceadaptivecontrol,mrac)方案設(shè)計(jì)飛行器自適應(yīng)魯棒控制系統(tǒng),以參考模型表征期望飛行特性(蘊(yùn)含良好的穩(wěn)定性和操縱性),并使實(shí)際輸出漸近跟蹤參考輸出。近年來,應(yīng)用該理論設(shè)計(jì)的自動(dòng)駕駛儀已經(jīng)成功應(yīng)用到飛行器上。
在mrac控制系統(tǒng)設(shè)計(jì)中,高品質(zhì)的模型辨識(shí)和精確的在線控制是獲得良好控制性能的關(guān)鍵。遞歸最小二乘算法(recursiveleastsquares,rls)是一種最小化平方誤差代價(jià)函數(shù),遞歸式尋找抽頭權(quán)系數(shù)的線性算法。遞歸最小二乘算法利用已知的時(shí)刻抽頭權(quán)系數(shù)向量,通過簡(jiǎn)單的迭代更新,從而求出時(shí)刻抽頭權(quán)系數(shù)向量。
在i-1時(shí)刻,已知訓(xùn)練樣本集
可見,當(dāng)新樣本對(duì){xi,yi}出現(xiàn)時(shí),需要計(jì)算出新抽頭權(quán)系數(shù)向量wi,其代價(jià)函數(shù)為:
然而,rls算法中不需要重新計(jì)算wi的值,而是能夠由wi-1遞歸式計(jì)算得到,從而減少了其計(jì)算量,提高了計(jì)算效率。圖1給出了rls算法的結(jié)構(gòu)框圖。
表1rls算法更新流程
由于pi矩陣的維數(shù)等于輸出向量維數(shù)l且保持不變,遞歸最小二乘算法每次更新的時(shí)間和空間復(fù)雜度均為o(l2)。遞歸最小二乘算法將計(jì)算負(fù)荷均勻地分布到每個(gè)循環(huán)中,從而在樣本序列連續(xù)獲得的在線時(shí)間序列預(yù)測(cè)應(yīng)用中具有顯著優(yōu)勢(shì)。
核遞歸最小二乘算法(kernelrecursiveleastsquares,krls)擴(kuò)展了rls算法對(duì)非線性數(shù)據(jù)的處理能力,它將非線性數(shù)據(jù)通過mercer核函數(shù)映射到高維特征空間轉(zhuǎn)化為線性問題,再利用rls算法在特征空間線性擬合。這種mercer核函數(shù)的映射過程經(jīng)常稱為“核技巧”,它不需要顯式知道輸入樣本在特征空間內(nèi)映射的形式,只需將映射的內(nèi)積通過mercer核函數(shù)計(jì)算出來即可。該技巧利用較為簡(jiǎn)單的核函數(shù)計(jì)算,替代了高維特征空間內(nèi)映射的復(fù)雜計(jì)算。
假定輸入樣本為xp,輸入樣本在特種空間內(nèi)映射為
其中,xp,xq為輸入樣本,
將輸入樣本
給定特征矩陣
由式(4)得到krls算法新代價(jià)函數(shù):
針對(duì)離線辨識(shí),參考極限學(xué)習(xí)機(jī)(extremelearningmachine,elm)訓(xùn)練方法可以取消迭代過程,代價(jià)函數(shù)(5)可改寫為:
minimize:
subjectto:hjαi=y(tǒng)j-ξj
式中,hj為第j組樣本與i組總樣本在特征空間映射的內(nèi)積,hj=[k(xj,x1),...,k(xj,xi)],ξj是對(duì)應(yīng)于樣本xj的訓(xùn)練誤差,yj是目標(biāo)輸出值,c為常數(shù)。
基于kkt(karush-kuhn-tucker)理論,訓(xùn)練問題等價(jià)于如下的二重優(yōu)化問題:
式中,λj是對(duì)應(yīng)于樣本xj的拉格朗日算子。由此,得到式(6)的kkt優(yōu)化條件:
式中,λ=[λ1,...,λi]t。把式(7)和(8)代入式(9)得到:
式中,y=[y1,...,yi]t。
考慮在線控制系統(tǒng),與rls算法相對(duì)應(yīng),krls算法的目的是尋找滿足代價(jià)函數(shù)(5)值最小的系數(shù)向量αi,且不需要隨著每次新樣本而重新計(jì)算,而是由αi-1遞歸式計(jì)算出αi的值。為避免在每次更新中進(jìn)行矩陣求逆運(yùn)算,定義核逆矩陣
表2krls算法更新流程
由表2可見,核逆矩陣qi的維數(shù)等于輸入樣本數(shù)量i。因此,krls算法一次更新的時(shí)間和空間復(fù)雜度均為o(i2),即其復(fù)雜度會(huì)隨著訓(xùn)練樣本量而不斷增加。
由于krls算法計(jì)算復(fù)雜度會(huì)隨著在線運(yùn)算迭代次數(shù)而不斷增加,而計(jì)算機(jī)物理處理能力有限,因此需要限制樣本核函數(shù)維數(shù)增長(zhǎng),降低計(jì)算復(fù)雜度。應(yīng)用特征值提取的降低核函數(shù)維度的方法,在迭代過程中可以去除核函數(shù)一些不相關(guān)的冗余數(shù)據(jù)信息,壓縮樣本核函數(shù)維數(shù),更有利于在實(shí)時(shí)控制系統(tǒng)中實(shí)現(xiàn)改善控制精度并降低運(yùn)算負(fù)擔(dān)的效果。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于針對(duì)上述現(xiàn)有技術(shù)中的問題,提供一種基于核遞歸最小二乘算法的自適應(yīng)飛行器魯棒控制方法,使得控制系統(tǒng)具有較好的控制精度以及較低的運(yùn)算負(fù)擔(dān)。
為了實(shí)現(xiàn)上述目的,本發(fā)明基于核遞歸最小二乘算法的自適應(yīng)飛行器魯棒控制方法包括:通過離線辨識(shí)器與在線控制器兩部分組成反饋調(diào)節(jié)系統(tǒng)進(jìn)行自適應(yīng)調(diào)節(jié);離線辨識(shí)器:在飛行器實(shí)際模型輸入和輸出數(shù)據(jù)的基礎(chǔ)上,利用核遞歸最小二乘算法離線辨識(shí)一個(gè)與所測(cè)系統(tǒng)等價(jià)的模型;在線控制器:在精確辨識(shí)飛行器實(shí)際模型的基礎(chǔ)上,根據(jù)系統(tǒng)輸入和輸出數(shù)據(jù),利用改進(jìn)核遞歸最小二乘算法在線調(diào)整控制器的輸出量,實(shí)現(xiàn)自適應(yīng)魯棒控制;所述的改進(jìn)核遞歸最小二乘算法基于特征值提取,分別根據(jù)主成分分析以及奇異值分解進(jìn)行核矩陣的正交分解,從而實(shí)現(xiàn)樣本核函數(shù)的壓縮與降維,去除核函數(shù)中一些不相關(guān)的冗余數(shù)據(jù)信息。
離線辨識(shí)器的計(jì)算模型按照以下步驟搭建:
1.1)辨識(shí)模型定義;
基于并聯(lián)辨識(shí)模型的飛行器系統(tǒng)描述為:
y(t)=f(u(t),u(t-t),...,u(t-pt),y(t-t),...,y(t-nt))(11)
式中,u(t)表示系統(tǒng)輸入信號(hào),y(t)表示系統(tǒng)輸出信號(hào),f(·)表示未知非線性函數(shù),由過去n時(shí)刻的輸出信號(hào)和p時(shí)刻的所有輸入信號(hào)構(gòu)成,t是采樣時(shí)間;
選擇{u(t),u(t-t),...,u(t-pt),y(t-t),...,y(t-nt)}和y(t)作為辨識(shí)器的輸入xt和輸出yt,式(11)表示為:
yt=f(xt)(12)
1.2)辨識(shí)器設(shè)計(jì);
基于核遞歸最小二乘算法,根據(jù):
辨識(shí)器的輸出為:
式中,ht=[k(xt,x1),...,k(xt,xn)],{x1,...xn,y1,...,yn}表示訓(xùn)練樣本,n表示樣本個(gè)數(shù),辨識(shí)目標(biāo)是使辨識(shí)系統(tǒng)的輸出與實(shí)際系統(tǒng)的輸出誤差
根據(jù)式
式中,k是mercer核矩陣,[k]i,j=k(xi,xj),i=1,...,n,j=1,...,n,y=[y1,...,yn]t。
所述在線控制器的設(shè)計(jì)目的是獲得控制系統(tǒng)輸入u,使得飛行器系統(tǒng)輸出y(t)準(zhǔn)確跟蹤由參考模型rm產(chǎn)生的任何期望輸出軌跡y*(t)。
在線控制器的計(jì)算模型按照以下步驟進(jìn)行搭建:
2.1)控制模型定義;
參考模型由飛行器的飛行品質(zhì)標(biāo)準(zhǔn)產(chǎn)生,參考模型輸出y*(t)表示為過去l時(shí)刻的輸入信號(hào)和過去m時(shí)刻輸出信號(hào)的函數(shù):
y*(t)=p[y*(t-t),...,y*(t-mt),r(t),r(t-t),...,r(t-lt)](15)
式中,p[·]是光滑的連續(xù)函數(shù),控制器系統(tǒng)描述為:
u(t)=g[y*(t),y(t-t),...,y(t-nt),u(t-t),...,u(t-pt)](16)
式中,映射函數(shù)g[·]存在且唯一,控制器的目標(biāo)是逼近未知的映射函數(shù)g[·];
將式(15)代入式(16)得到:
u(t)=g[p[y*(t-t),...,y*(t-mt),r(t),r(t-t),...,r(t-lt)],y(t-t),...,y(t
-nt),u(t-t),...,u(t-pt)](17)
在上述公式中用y來代替y*:
u(t)=r[y(t-t),...,y(t-mt),r(t),r(t-t),...,r(t-lt)](18)
式中,r[·]是光滑的連續(xù)函數(shù);選擇[y(t-t),...,y(t-mt),r(t),r(t-t),...,r(t-lt)]和u(t)作為控制器在t時(shí)刻的輸入xt和輸出ut:
ut=r(xt)(19);
2.2)控制器設(shè)計(jì);
映射函數(shù)r[·]是未知的,采用改進(jìn)核遞歸最小二乘算法逼近未知的r[·],構(gòu)造控制器計(jì)算控制量u(t);控制器的輸入是當(dāng)前和過去的參考信號(hào)以及過去的飛行器系統(tǒng)輸出;
控制器的輸出等于:
式中,
在改進(jìn)核遞歸最小二乘算法控制器中,假設(shè)辨識(shí)誤差忽略不計(jì),由:
得到:
式中,
飛行器控制系統(tǒng)輸出為是類pid控制器和改進(jìn)核遞歸最小二乘算法控制器輸出量總和:
改進(jìn)核遞歸最小二乘算法設(shè)計(jì):
2.3.1)對(duì)一個(gè)給定的矩陣a∈rm×m,計(jì)算矩陣a的karhunen-loève變換矩陣
a)矩陣a進(jìn)行歸一化處理,得到矩陣b,使得:
b)計(jì)算矩陣b的協(xié)方差矩陣:
c=cov(b)(25)
c)計(jì)算矩陣c的特征向量v和特征值m:
v-1cv=m(26)
式中,m是特征值的對(duì)角矩陣;
4)對(duì)特征值m進(jìn)行降序排序,同時(shí)相應(yīng)對(duì)特征向量進(jìn)行排序,得到排序后的特征矩陣
5)根據(jù)特征值,選擇前n’個(gè)主成分,n’≤n,得到:
2.3.2)對(duì)于矩陣a∈rm×n,存在一個(gè)正交矩陣u=[u1,...,um]∈rm×m和一個(gè)正交矩陣v=[v1,...,vn]∈rn×n,使utav=diag(σ1,...,σp}∈rm×n,p=min{m,n},
σ1≥σ2≥…≥σp≥0,σi是矩陣a的特征值,向量ui和vi分別是第i個(gè)左奇異向量和右奇異向量;根據(jù)golub-reinsch算法,運(yùn)算復(fù)雜度為o(m2n+mn2+n3);
假設(shè)m>n,對(duì)于u(:,1:n)=[u1,...,un],運(yùn)算復(fù)雜度變?yōu)閛(mn2+n3);
如果r<rank(a),令:
那么:
a*=u(:,1:r)sv(:,1:r)t,其中s=diag(σ1,...,σr),u(:,1:r)=[u1,...,ur],v(:,1:r)=[v1,...,vr];定義x=[x1,...,xn]是一個(gè)所有元素相互獨(dú)立的向量,那么ax≈bz,此時(shí),b=u(:,1:r)s,z=v(:,1:r)tx是一個(gè)r×1的向量,利用bz實(shí)現(xiàn)對(duì)ax的逼近。
計(jì)算出特征向量v和特征值m,選擇超過最高特征值10%的特征值作為保留成分,l為保留成分的數(shù)量,保留下來的特征向量表示為
t個(gè)核函數(shù)被替換為新的l個(gè)核函數(shù),降維后的核函數(shù)變成:
h′(xt)=h(xt)v1(32)
選擇線性核函數(shù):
h’(xt)表示為[k(xt,x1′),...,k(xt,xl′)],其中xi′={[x1,...,xt]v1}(:,i);
qt′=us(34)
同時(shí),目標(biāo)輸出量yt變?yōu)椋?/p>
yt′=v2(:,1:l)tyt(35)
最終逼近結(jié)果為:
f=k′(xt)qt′yt′(36)。
在線控制器測(cè)量核函數(shù)相似度時(shí)給定兩個(gè)核函數(shù):hold=[k(xt-1,x1),...,k(xt-1,xn)]表示上一時(shí)刻的信息,hnew=[k(xt,x1),...,k(xt,xn)]代表當(dāng)前時(shí)刻的信息,比對(duì)值定義為:
式中,<hold,hnew>f表示hold和hnew的frobenius范數(shù),ka(hold,hnew)用來測(cè)量hold和hnew兩個(gè)核函數(shù)相似度;ka(hold,hnew)越大,相似度越高,反之亦然。
由于在mrac控制系統(tǒng)設(shè)計(jì)中,高品質(zhì)的模型辨識(shí)和精確地在線控制是獲得良好控制性能的關(guān)鍵。與現(xiàn)有技術(shù)相比,本發(fā)明所采納的核遞歸最小二乘算法,建立的辨識(shí)模型能夠精確地匹配飛行器非線性模型,實(shí)現(xiàn)辨識(shí)模型和被控對(duì)象的最小結(jié)構(gòu)差別。本發(fā)明在此基礎(chǔ)上,采用基于特征提取降低核函數(shù)維度的改進(jìn)核遞歸最小二乘算法,解決了樣本核函數(shù)維數(shù)隨迭代次數(shù)增長(zhǎng)的固有缺陷,壓縮樣本核函數(shù)維數(shù)并自適應(yīng)在線調(diào)整控制器輸出量,在實(shí)時(shí)控制系統(tǒng)中實(shí)現(xiàn)了改善控制精度以及降低運(yùn)算負(fù)擔(dān)的效果。本發(fā)明設(shè)計(jì)模型參考自適應(yīng)的飛行器魯棒控制系統(tǒng)時(shí),考慮該算法運(yùn)算復(fù)雜度實(shí)時(shí)增長(zhǎng)的缺陷,利用特征值提取進(jìn)行核函數(shù)降維,從而達(dá)到降低運(yùn)算負(fù)擔(dān)以改善控制效果。本發(fā)明構(gòu)建了一個(gè)模型參考自適應(yīng)空值魯棒控制系統(tǒng),并對(duì)其進(jìn)行仿真驗(yàn)證,結(jié)果表明該控制系統(tǒng)具有較好的控制效果和很強(qiáng)的實(shí)時(shí)性。
附圖說明
圖1遞歸最小二乘算法rls結(jié)構(gòu)框圖;
圖2本發(fā)明模型參考自適應(yīng)魯棒控制系統(tǒng)結(jié)構(gòu)框圖;
圖3核遞歸最小二乘算法辨識(shí)器結(jié)構(gòu)框圖;
圖4本發(fā)明改進(jìn)核遞歸最小二乘算法控制器結(jié)構(gòu)框圖;
圖5飛行器期望相應(yīng)圖;
圖6控制系統(tǒng)跟蹤效果圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步的詳細(xì)說明。
基于核遞歸最小二乘算法的模型參考自適應(yīng)飛行器魯棒控制系統(tǒng)按以下方法搭建:
1.krls離線辨識(shí)器;
1.1辨識(shí)模型定義;
并聯(lián)辨識(shí)模型是一種經(jīng)典的建立非線性動(dòng)態(tài)系統(tǒng)模型的方法,即外輸入非線性自回歸滑動(dòng)平均模型(nonlinearauto-regressivemovingaveragewithexogenousinputsmodel,narmax)。該模型對(duì)于辨識(shí)過程中所用的全部輸入序列,系統(tǒng)都是有界輸入有界輸出(bibo)穩(wěn)定的。飛行器系統(tǒng)的可以描述為:
y(t)=f(u(t),u(t-t),...,u(t-pt),y(t-t),…,y(t-nt))(11)
式中,u(t)表示系統(tǒng)輸入信號(hào),y(t)表示系統(tǒng)輸出信號(hào),f(·)表示未知非線性函數(shù),它由過去n時(shí)刻的輸出信號(hào)和p時(shí)刻的所有輸入信號(hào)構(gòu)成,t是采樣時(shí)間。如圖4所示,選擇{u(t),u(t-t),...,u(t-pt),y(t-t),...,y(t-nt)}和y(t)作為辨識(shí)器的輸入xt和輸出yt,
式(11)可以表示為:
yt=f(xt)(12)
1.2辨識(shí)器設(shè)計(jì);
設(shè)計(jì)辨識(shí)器的目的就是逼近未知非線性函數(shù)f(·)。
基于krls算法,根據(jù)式(5),辨識(shí)器輸出為:
式中,ht=[k(xt,x1),...,k(xt,xn)],{x1,...xn,y1,...,yn}表示訓(xùn)練樣本,n表示樣本個(gè)數(shù)。辨識(shí)目標(biāo)就是使辨識(shí)系統(tǒng)的輸出與實(shí)際系統(tǒng)的輸出誤差
根據(jù)式(10),權(quán)值αt取:
式中,k是mercer核矩陣,[k]i,j=k(xi,xj),i=1,...,n,j=1,...,n,y=[y1,...,yn]t。
2.m-krls在線控制器;
2.1控制模型定義;
控制器設(shè)計(jì)的目的是獲得控制系統(tǒng)輸入u,使得飛行器系統(tǒng)輸出y(t)可以準(zhǔn)確跟蹤由參考模型rm產(chǎn)生的任何期望輸出軌跡y*(t)。參考模型由飛行器飛行品質(zhì)標(biāo)準(zhǔn)產(chǎn)生。
因?yàn)閰⒖寄P捅旧硎且粋€(gè)動(dòng)態(tài)系統(tǒng),參考模型輸出y*(t)可以表示為過去l時(shí)刻的輸入信號(hào)和過去m時(shí)刻輸出信號(hào)的函數(shù):
y*(t)=p[y*(t-t],...,y*(t-mt),r(t),r(t-t),...,r(t-lt)](15)
式中,p[·]是光滑的連續(xù)函數(shù)??刂破飨到y(tǒng)可以描述為:
u(t)=g[y*(t),y(t-t),...,y(t-nt),u(t-t),...,u(t-pt)](16)
式中,映射函數(shù)g[·]存在且唯一。因此,控制器的目標(biāo)是逼近未知的映射函數(shù)g[·]。
將式(15)代入式(16)得到,
u(t)=g[p[y*(t-t),...,y*(t-mt),r(t),r(t-t),...,r(t-lt)],y(t
-t),...,y(t-nt),u(t-t),...,u(t
-pt)](17)
顯然,控制輸入u是關(guān)于飛行器控制響應(yīng)y和參考信號(hào)y*,y的函數(shù)。如果飛行器可以精確跟蹤任意軌跡,那么y*=y(tǒng)。因此,我們可以在上述公式中用y來代替y*,
u(t)=r[y(t-t),...,y(t-mt),r(t),r(t-t),...,r(t-lt)](18)
式中,r[·]是光滑的連續(xù)函數(shù)。
如圖5所示,選擇[y(t-t),...,y(t-mt),r(t),r(t-t),...,r(t-lt)]和u(t)作為控制器在t時(shí)刻的輸入xt和輸出ut:
ut=r(xt)(19)
2.2控制器設(shè)計(jì):
映射函數(shù)r[·]是未知的,采用m-krls逼近未知的r[·],構(gòu)造控制器計(jì)算控制量u(t)??刂破鞯妮斎胧钱?dāng)前和過去的參考信號(hào)以及過去的飛行器系統(tǒng)輸出??刂破鞯妮敵龅扔冢?/p>
式中,
控制器設(shè)計(jì)的難點(diǎn)在于期望的控制量ut是未知的,不能直接獲得逼近誤差δut,對(duì)應(yīng)于表2中的et。在m-krls控制器中,假設(shè)辨識(shí)誤差忽略不計(jì),跟蹤誤差δu由辨識(shí)器計(jì)算得到。
可知,
可以輕易得到,
式中,
線性的類pid控制器在一定的確定的工作范圍內(nèi),用來控制系統(tǒng)的線性動(dòng)態(tài)。那么,飛行器控制系統(tǒng)輸出可以看成是類pid控制器和m-krls控制器輸出量的總和:
2.3m-krls算法;
2.3.1pca方法;
pca是一種在無監(jiān)督降維中常用的非線性特征提取方法。pca通過線性變換將原始數(shù)據(jù)變換為一組各維度線性無關(guān)的表示,可用于提取數(shù)據(jù)的主要特征分量,常用于高維數(shù)據(jù)的降維。對(duì)一個(gè)給定的矩陣a∈rm×m,pca的目標(biāo)是計(jì)算矩陣a的karhunen-loève變換矩陣
1)矩陣a進(jìn)行歸一化處理,得到矩陣b,使得:
2)計(jì)算矩陣b的協(xié)方差矩陣:
c=cov(b)(25)
3)計(jì)算矩陣c的特征向量v和特征值m:
v-1cv=m(26)
式中,m是特征值的對(duì)角矩陣。
4)對(duì)特征值m進(jìn)行降序排序,同時(shí)相應(yīng)對(duì)特征向量進(jìn)行排序,得到排序后的特征矩陣
5)根據(jù)特征值,選擇前n’個(gè)主成分,n’≤n。因此可以得到:
2.3.2svd方法;
矩陣a∈rm×n,存在一個(gè)正交矩陣u=[u1,...,um]∈rm×m和一個(gè)正交矩陣v=[v1,...,vn]∈rn×n,使得utav=diag(σ1,...,σp)∈rm×n,p=min{m,n},σ1≥σ2≥…≥σp≥0。σi是矩陣a的特征值,向量ui和vi分別是第i個(gè)做左奇異向量和右奇異向量。尋找矩陣u和v的過程即就是奇異值分解(svd)。
根據(jù)golub-reinsch算法,運(yùn)算復(fù)雜度為o(m2n+mn2+n3)。假設(shè)m>n,對(duì)于u(:,1:n)=[u1,...,un],運(yùn)算復(fù)雜度變?yōu)閛(mn2+n3)。
如果r<rank(a),令:
那么,
換句話說,a*是矩陣a的最佳2范數(shù)逼近。a*=u(:,1:r)sv(:,1:r)t,其中s=diag(σ1,...,σr),u(:,1:r)=[u1,...,ur],v(:,1:r)=[v1,...,vr]。定義x=[x1,...,xn]是一個(gè)所有元素相互獨(dú)立的向量,那么ax≈bz,此時(shí),b=u(:,1:r)s,z=v(:,1:r)tx是一個(gè)r×1的向量??梢?,矩陣b的維度遠(yuǎn)低于原矩陣a,利用bz可以實(shí)現(xiàn)對(duì)ax的逼近。
2.3.3核函數(shù)相似度準(zhǔn)則;
測(cè)量核函數(shù)相似度是判斷數(shù)據(jù)冗余的關(guān)鍵技術(shù)。常用的基于信息和基于距離的方法容易丟失核函數(shù)的位置信息。本發(fā)明提出核比對(duì)方法(kernelalignmentmethod,ka)。給定兩個(gè)核函數(shù),hold=[k(xt-1,x1),...,k(xt-1,xn)]表示上一時(shí)刻的信息,hnew=[k(xt,x1),...,k(xt,xn)]代表當(dāng)前時(shí)刻的信息,比對(duì)值定義為:
式中,<hold,hnew>f表示hold和hnew的frobenius范數(shù)。ka(hold,hnew)用來測(cè)量hold和hnew兩個(gè)核函數(shù)相似度。ka(hold,hnew)越大,相似度越高,反之亦然。ka(hold,hnew)表明了hnew的鑒別能力,同時(shí)評(píng)估了核函數(shù)的冗余度。
2.3.4m-krls算法流程;krls隨著迭代步長(zhǎng)的增長(zhǎng)帶來了巨大的計(jì)算負(fù)擔(dān),最終呈現(xiàn)出了一個(gè)“肥胖”的核最小二乘算法。同時(shí),核矩陣kt以及它的變型qt包含了越來越多不相關(guān)的信息反而減弱核最小二乘算法的泛化能力。以往的算法中,核函數(shù)維度越高,逼近精度越高,顯然越多的輸入數(shù)據(jù)流產(chǎn)生的核將帶來更好的逼近效果。但是,由于計(jì)算機(jī)物理存儲(chǔ)的限制,難以靠過多的核來獲取最佳的控制性能。在本發(fā)明中,我們引入了一種無監(jiān)督的特征值提取降維方法,刪除數(shù)據(jù)冗余信息并降低運(yùn)算復(fù)雜度。當(dāng)“肥胖”的核最小二乘算法經(jīng)過pca處理成為“苗條”的核最小二乘算法,降維后的qt可以進(jìn)行下一步迭代而不損失原有核矩陣信息。同時(shí),krls方法可以自主進(jìn)行核函數(shù)的刪減與更新。
pca處理針對(duì)qt∈rt×t代表了核函數(shù)ht和輸出f之間的聯(lián)系的成分權(quán)重。我們可以利用這些權(quán)重里的線性相關(guān)性和存在的偏差來減少核函數(shù)的數(shù)量。指定一個(gè)值l,使qt的維度從t減小到l。在進(jìn)行pca降維處理過程中,根據(jù)2.3.1,可以計(jì)算出特征向量v和特征值m。選擇超過最高特征值10%的特征值作為我們即將保留的成分,l即為保留成分的數(shù)量。保留下來的特征向量表示為
于是,原來的t個(gè)核函數(shù)被替換為新的l個(gè)核函數(shù),降維后的核函數(shù)變成:
h′(xt)=h(xt)v1(32)
在我們的工作中,選擇線性核函數(shù):
“核技巧”在線性條件下只需要直接計(jì)算不同樣本數(shù)據(jù)的內(nèi)積。因此,h′(xt)可以表示為[k(xt,x1′),...,k(xt,xl′)],其中xi′={[x1,...,xt]v1}(:,i)。
svd處理針對(duì)
qt′=us(34)
同時(shí),目標(biāo)輸出量yt變?yōu)椋?/p>
yt′=v2(:,1:l)tyt(35)
最終的逼近結(jié)果為:
f=k′(xt)qt′yt′(36);
表3m-krls算法更新流程
仿真例
考慮一個(gè)高性能戰(zhàn)斗機(jī)的縱軸控制問題。當(dāng)戰(zhàn)斗機(jī)以150ft/s和攻角15deg在2000ft高空飛行,飛行器的局部非線性攝動(dòng)方程可以描述為:
式中,
仿真根據(jù)一級(jí)飛行品質(zhì)要求,俯仰角速度指令相應(yīng)的傳遞函數(shù)為