余敏,羅建軍,王明明
1. 西北工業(yè)大學(xué) 深圳研究院,深圳 518057 2. 西北工業(yè)大學(xué) 航天動力學(xué)國家重點(diǎn)實(shí)驗(yàn)室,西安 710072
空間機(jī)器人被認(rèn)為是執(zhí)行空間在軌服務(wù)任務(wù)(例如維修失效衛(wèi)星)最有效的手段之一[1],為保證在軌服務(wù)任務(wù)的安全性和可靠性,對空間目標(biāo)進(jìn)行快速、準(zhǔn)確的運(yùn)動狀態(tài)預(yù)測成為亟需,而空間目標(biāo)大都呈現(xiàn)翻滾運(yùn)動模態(tài)[2]。
現(xiàn)有關(guān)于空間目標(biāo)的運(yùn)動預(yù)測主要是基于物理模型的方法,需要先基于視覺信息對目標(biāo)進(jìn)行重構(gòu)與建模。借助視覺敏感器和激光雷達(dá)傳感信息,通過多臺同步相機(jī)成像[3],結(jié)合圖像處理和點(diǎn)云數(shù)據(jù)處理技術(shù)對空間目標(biāo)進(jìn)行三維重構(gòu)[4-6],基于目標(biāo)歷史觀測運(yùn)動狀態(tài)的分幀序列進(jìn)行特征提取,獲得目標(biāo)的構(gòu)型和運(yùn)動狀態(tài)測量信息,進(jìn)而利用基于物理模型(例如非線性濾波)對目標(biāo)的未來運(yùn)動狀態(tài)進(jìn)行預(yù)測。由于空間自由漂浮的翻滾目標(biāo)幾乎不受外力/力矩作用[7],給定目標(biāo)的動力學(xué)參數(shù)和初始運(yùn)動狀態(tài),通過動力學(xué)積分可以得到目標(biāo)的未來運(yùn)動狀態(tài)?;谖锢砟P偷念A(yù)測方法的成功依賴于準(zhǔn)確估計(jì)目標(biāo)動力學(xué)參數(shù)和理想的建模假設(shè)。Hirzinger等[8]利用擴(kuò)展卡爾曼濾波方法預(yù)測一個(gè)慣性參數(shù)已知的目標(biāo)的線性運(yùn)動,但只能預(yù)測未來較短時(shí)間內(nèi)的運(yùn)動狀態(tài)。文獻(xiàn)[9] 利用無損卡爾曼濾波預(yù)測無人機(jī)的運(yùn)動狀態(tài)。Greenspan等[10]采用霍夫變換預(yù)測目標(biāo)位姿,但其更注重計(jì)算速度,沒有考慮預(yù)測效果。Hillenbrand和Lampariello[3]利用線性最小二乘方法對自由漂浮目標(biāo)進(jìn)行辨識和運(yùn)動估計(jì),提出一種有效的長周期目標(biāo)運(yùn)動預(yù)測方法,但由于旋轉(zhuǎn)運(yùn)動的非線性特性,該方法對目標(biāo)旋轉(zhuǎn)運(yùn)動的預(yù)測效果不佳。借助視覺反饋系統(tǒng),Aghili[11]利用卡爾曼濾波估計(jì)自由漂浮目標(biāo)的動力學(xué)參數(shù)和狀態(tài),考慮了目標(biāo)的不確定特性和數(shù)據(jù)噪聲。上述方法雖然能夠?qū)臻g目標(biāo)進(jìn)行預(yù)測,但是預(yù)測條件和前提假設(shè)較為嚴(yán)苛,很少考慮運(yùn)動預(yù)測的計(jì)算效率。
近年來,機(jī)器學(xué)習(xí)的興起為目標(biāo)運(yùn)動預(yù)測問題提供了一種新的解決思路。類似于人的感知行為,從過去的經(jīng)驗(yàn)中預(yù)測未來的事件,機(jī)器學(xué)習(xí)方法通過對大量數(shù)據(jù)的學(xué)習(xí),尋找過去事件與未來事件的隱含關(guān)系。Amalia等[12]利用部分可觀測馬爾科夫過程預(yù)測動態(tài)環(huán)境的狀態(tài)遷移,在擁擠的環(huán)境中為機(jī)器人進(jìn)行自主導(dǎo)航。Sung等[13]從目標(biāo)的觀測數(shù)據(jù)中通過聚類分析提取其運(yùn)動模式,利用隱馬爾科夫過程預(yù)測其未來運(yùn)動狀態(tài),但是隱馬爾科夫過程預(yù)測的準(zhǔn)確率相對較低。Peng和BAI[14]利用支持向量機(jī)、神經(jīng)網(wǎng)絡(luò)和高斯過程回歸[15](Gaussian Process Regression, GPR)3種機(jī)器學(xué)習(xí)方法進(jìn)行了軌道預(yù)測的研究,并對比分析了3種方法的優(yōu)劣,發(fā)現(xiàn)支持向量機(jī)的預(yù)測效果不如神經(jīng)網(wǎng)絡(luò)和GPR的預(yù)測效果。事實(shí)上,當(dāng)神經(jīng)網(wǎng)絡(luò)存在無限個(gè)隱層節(jié)點(diǎn)時(shí),該神經(jīng)網(wǎng)絡(luò)等價(jià)于高斯過程回歸[16]。GPR是一種基于貝葉斯理論和統(tǒng)計(jì)學(xué)習(xí)理論發(fā)展起來的監(jiān)督式機(jī)器學(xué)習(xí)方法。Heravi和Khanmoh ammadi[17]利用GPR對運(yùn)動目標(biāo)進(jìn)行長周期運(yùn)動預(yù)測。Kim等[18]提出一種魯棒自回歸GPR,預(yù)測擁擠環(huán)境中行人的運(yùn)動。由于GPR是一種靈活的非參數(shù)推斷方法,非參數(shù)特性直接導(dǎo)致其計(jì)算量較大的缺陷。為提高計(jì)算效率,相關(guān)研究者們提出了多種近似GPR方法,其中Snelson[19]提出的稀疏偽輸入高斯過程(Sarse Peudo-input Gaussian Pess, SPGP)回歸方法,被認(rèn)為是最有效的近似GPR方法之一。
本文的創(chuàng)新之處在于提出一種兼顧計(jì)算效率和預(yù)測精度的啟發(fā)式機(jī)器學(xué)習(xí)方法,在較少數(shù)據(jù)驅(qū)動的情形下,仍然能夠精確實(shí)時(shí)地預(yù)測未來有限時(shí)域內(nèi)空間翻滾目標(biāo)的運(yùn)動狀態(tài)。基于SPGP回歸,用較少的偽數(shù)據(jù)集代替目標(biāo)的真實(shí)觀測數(shù)據(jù),結(jié)合先驗(yàn)知識和數(shù)據(jù)知識,不斷更新學(xué)習(xí)結(jié)果,進(jìn)而預(yù)測目標(biāo)未來有限時(shí)域內(nèi)的運(yùn)動狀態(tài)(包括位置和姿態(tài))。為保證良好的目標(biāo)預(yù)測效果,利用馬爾科夫鏈蒙特卡洛法代替原SPGP中的共軛梯度優(yōu)化方法,優(yōu)化偽數(shù)據(jù)等信息,避免由于學(xué)習(xí)數(shù)據(jù)較少,造成優(yōu)化過程陷入局部極小值,在提高計(jì)算效率的同時(shí),保證空間翻滾目標(biāo)長期運(yùn)動預(yù)測的精確性。
如圖1所示,將空間翻滾目標(biāo)簡化為一個(gè)長方剛體,為便于分析,取其上點(diǎn)A為抓捕點(diǎn)。目標(biāo)的本體坐標(biāo)系otxtytzt固連于目標(biāo),其原點(diǎn)位于目標(biāo)質(zhì)心。
圖1 空間翻滾目標(biāo)及其上抓捕點(diǎn)AFig.1 Space tumbling target with grapple fixture A
定義目標(biāo)的轉(zhuǎn)動慣量為Ι=diag(Ιx,Ιy,Ιz),其翻滾角速度為ω=[ωx,ωy,ωz]T,空間翻滾目標(biāo)的歐拉動力學(xué)方程在otxtytzt中的分量可表示為
(1)
(2)
式中:A(q)為本體坐標(biāo)系到慣性坐標(biāo)系的姿態(tài)變換矩陣;inv(A)表示對矩陣A求逆。
圖2 抓捕點(diǎn)A的運(yùn)動軌跡Fig.2 Motion trajectory of grapple fixture A
由圖2可知,空間翻滾目標(biāo)的運(yùn)動狀態(tài)呈現(xiàn)極其復(fù)雜的非線性運(yùn)動特性,已有的運(yùn)動預(yù)測算法,例如最小二乘估計(jì)方法并不能有效預(yù)測目標(biāo)的非線性運(yùn)動[3]。本文所提基于機(jī)器學(xué)習(xí)的方法由于其本身非線性概率建模原則,能夠有效預(yù)測非線性運(yùn)動,且不需要目標(biāo)的動力學(xué)模型,僅需要目標(biāo)運(yùn)動狀態(tài)的觀測數(shù)據(jù)。
本節(jié)建立空間翻滾目標(biāo)的真實(shí)動力學(xué)模型目的如下。
1) 闡述空間翻滾目標(biāo)的運(yùn)動形式,說明所提算法對此類非線性翻滾運(yùn)動預(yù)測的適用性。
2) 利用建立的動力學(xué)模型生成目標(biāo)的歷史觀測數(shù)據(jù),作為學(xué)習(xí)算法中的訓(xùn)練數(shù)據(jù)。
3) 利用真實(shí)模型的仿真數(shù)據(jù)對比預(yù)測算法的運(yùn)動預(yù)測數(shù)據(jù),分析預(yù)測誤差。
高斯過程[15]是任意有限個(gè)具有聯(lián)合高斯分布的隨機(jī)變量的集合,由其均值函數(shù)m(x)和協(xié)方差函數(shù)k(x,x′)表示。一個(gè)高斯過程表述為
f(x)~GP(m(x),k(x,x′))
(3)
假設(shè)潛在函數(shù)f(X)具有零均值的高斯先驗(yàn)分布,即
(4)
θ=argmax(lnp(y|X,θ))
(5)
y=f(X)+ε
(6)
式中:ε為零均值高斯白噪聲。式(6)可等效為如下似然函數(shù):
(7)
給定新的測試輸入數(shù)據(jù)x*,那么對應(yīng)輸出數(shù)據(jù)y*的預(yù)測分布為
(8)
式中:
(9)
其中:k*=k(x*,xn)為測試輸入數(shù)據(jù)x*和訓(xùn)練數(shù)據(jù)xn的協(xié)方差向量。類似地,K**=K(x*,x*)。
為提高目標(biāo)運(yùn)動預(yù)測的計(jì)算效率,本文采用稀疏偽輸入高斯過程回歸方法,通過分析目標(biāo)真實(shí)觀測數(shù)據(jù)的特點(diǎn),利用啟發(fā)式優(yōu)化方法優(yōu)化真實(shí)數(shù)據(jù),得到與真實(shí)數(shù)據(jù)具有相似分布特性的稀疏的偽訓(xùn)練數(shù)據(jù),實(shí)現(xiàn)對目標(biāo)實(shí)時(shí)、準(zhǔn)確的運(yùn)動狀態(tài)預(yù)測。
(10)
式中:kx=k(xm,xn)
推導(dǎo)得到真實(shí)數(shù)據(jù)集的似然函數(shù)為
(11)
式中:
(12)
(13)
根據(jù)貝葉斯準(zhǔn)則,得到偽輸出數(shù)據(jù)的后驗(yàn)分布如下:
(14)
給定新的測試輸入數(shù)據(jù)x*,聯(lián)立式(10)和式(14),計(jì)算預(yù)測為
(15)
式中:
在稀疏偽輸入高斯過程訓(xùn)練時(shí),一般采用共軛梯度法優(yōu)化超參數(shù)以及偽輸入。然而,梯度優(yōu)化法對隨機(jī)初始值敏感,優(yōu)化過程容易陷入局部極小解,即機(jī)器學(xué)習(xí)中常見的過擬合現(xiàn)象。那么,較差的訓(xùn)練結(jié)果加上訓(xùn)練數(shù)據(jù)較少,所建立的概率模型無法充分學(xué)習(xí)目標(biāo)的潛在運(yùn)動規(guī)律,進(jìn)而無法構(gòu)建準(zhǔn)確的預(yù)測分布信息,導(dǎo)致預(yù)測精度降低。對于所提的目標(biāo)運(yùn)動預(yù)測問題,為保證較高的計(jì)算效率,又不影響稀疏偽輸入高斯過程回歸的預(yù)測效果,本文采用啟發(fā)式優(yōu)化算法聯(lián)合優(yōu)化訓(xùn)練過程中的超參數(shù)和偽輸入,克服由于對隨機(jī)初始值敏感的問題造成的預(yù)測效果不佳。
馬爾科夫鏈蒙特卡羅(Markov Chain Monte Carlo, MCMC)法[20]是統(tǒng)計(jì)模擬領(lǐng)域中著名的啟發(fā)式優(yōu)化方法,通過對狀態(tài)空間進(jìn)行大量采樣和游走,能夠有效解決由隨機(jī)初始化造成的局部極小問題,本文利用MCMC優(yōu)化訓(xùn)練過程中的偽輸入以及超參數(shù)。
首先給出馬爾科夫鏈及其平穩(wěn)分布特性,作為MCMC優(yōu)化算法的基礎(chǔ)。
3.2.1 馬爾科夫鏈及其平穩(wěn)分布
具有馬爾科夫性質(zhì)的隨機(jī)狀態(tài)變量b1,b2,…,bn可以構(gòu)建一條馬爾科夫鏈,如下:
P(bt+1=b′|bt,bt-1,…)=P(bt+1=b′|bt)
(16)
式中:P為轉(zhuǎn)移概率矩陣。
給定初始狀態(tài)的概率分布π0和固定的轉(zhuǎn)移概率矩陣P,那么未來狀態(tài)的概率分布為
(17)
無論選取什么初始概率分布π0,經(jīng)過足夠次數(shù)的狀態(tài)轉(zhuǎn)移,馬爾科夫鏈最終都會收斂于同一個(gè)穩(wěn)定的狀態(tài)概率分布,此收斂現(xiàn)象是大多數(shù)馬爾科夫鏈(非周期馬爾科夫鏈)的共同行為。此收斂行為由轉(zhuǎn)移概率矩陣P決定,最終平穩(wěn)的概率分布計(jì)算為
p(b)=Pn,n→∞
(18)
3.1.2 馬爾科夫鏈蒙特卡洛優(yōu)化
由于馬爾科夫鏈能收斂到平穩(wěn)分布,很自然的想法就如何構(gòu)造一個(gè)轉(zhuǎn)移概率矩陣為P的馬爾科夫鏈,使得該馬爾科夫鏈的平穩(wěn)分布恰好是p(b)。那么,無論從何種初始狀態(tài)出發(fā),沿著該馬氏鏈轉(zhuǎn)移,最終都會收斂到期望的概率分布,同時(shí)得到期望概率分布的若干樣本。
馬爾科夫鏈的收斂性質(zhì)主要由轉(zhuǎn)移概率矩陣P決定,因此以馬爾科夫鏈方式做大量采樣的關(guān)鍵在于如何構(gòu)造P,以得到期望分布p(b)。為此,引入以下定理。
定理1(細(xì)致平穩(wěn)條件)如果非周期馬爾科夫鏈的轉(zhuǎn)移概率矩陣P和概率分布π(b)滿足:
π(bi)pij=π(bj)pji,?i,j
(19)
則π(b)為該馬爾科夫鏈的平穩(wěn)分布。
假設(shè)一個(gè)轉(zhuǎn)移概率矩陣為Q的馬爾科夫鏈,qij表示從狀態(tài)bi轉(zhuǎn)移到狀態(tài)bj的概率。通常情況下:
p(bi)qij≠p(bj)qji
(20)
即細(xì)致平穩(wěn)條件不成立,此時(shí)狀態(tài)分布p(b)并非該馬爾科夫鏈的平穩(wěn)分布。引入接受率α,并使得
p(bi)qijαij=p(bj)qjiαji
(21)
為使得式(21)成立,基于對稱性原則,取
αij=p(bj)qji,αji=p(bi)qij
此時(shí),式(21)顯然成立。令
q′ij=qijαij
q′ji=qjiαji
式(21)可改寫為
p(bi)q′ij=p(bj)q′ji
(22)
原轉(zhuǎn)移概率矩陣為Q的馬爾科夫鏈就轉(zhuǎn)化成一個(gè)轉(zhuǎn)移概率矩陣為Q′的新馬爾科夫鏈,而新鏈恰好滿足細(xì)致平穩(wěn)條件,其平穩(wěn)分布為p(b)。
接受率αij的物理含義是在原馬氏鏈上,以狀態(tài)bi從qij的概率轉(zhuǎn)移到狀態(tài)bj時(shí),以αij的概率接受這個(gè)轉(zhuǎn)移。注意,如果αij取值過小,那么在采樣過程中,馬爾科夫鏈將拒絕大量的跳轉(zhuǎn),馬爾科夫鏈遍歷所有的狀態(tài)空間將耗費(fèi)大量時(shí)間,收斂速度變慢。為提高采樣過程中的接受率,取
(23)|
即同比例放大接受率αij和αji。
對于稀疏偽輸入最優(yōu)化求解問題,期望的目標(biāo)函數(shù)是偽輸入關(guān)于真實(shí)數(shù)據(jù)的極大似然函數(shù)(式(13)),即MCMC算法中期望的平穩(wěn)分布。不同于梯度優(yōu)化算法在每次迭代優(yōu)化中追求更優(yōu)的解,MCMC算法在每次迭代過程中以一定的概率α接受次優(yōu)解,從而具備從局部極小值中跳出的能力。因此,無論給定何種初始猜想值,經(jīng)過足夠次數(shù)的隨機(jī)采樣后,MCMC算法將克服由于隨機(jī)初始猜想造成的敏感性問題最終找到全局最優(yōu)解,保證稀疏偽數(shù)據(jù)的質(zhì)量,進(jìn)而構(gòu)造更準(zhǔn)確的預(yù)測分布信息。
表1 MCMC-SPGP算法Table 1 MCMC-SPGP algorithm
采用多步直接預(yù)測策略,所提稀疏偽輸入高斯過程回歸的多步預(yù)測表達(dá)式為
MCMC-SPGP(yt,yt-1,…)
(24)
對于空間翻滾目標(biāo)上任一抓捕點(diǎn),其運(yùn)動狀態(tài)可以表示為[ri,qj]T,i=x,y,z,j=1,2,3,4.其中,ri為位置信息,qj為姿態(tài)信息。根據(jù)式(24),目標(biāo)的長期預(yù)測表達(dá)式為
(25)
為驗(yàn)證所提MCMC-SPGP算法的正確性,首先利用Snelson驗(yàn)證SPGP算法的原始數(shù)據(jù)測試所提算法,同時(shí)與標(biāo)準(zhǔn)高斯過程(Gaussian Process, GP)和SPGP的回歸效果進(jìn)行對比,仿真結(jié)果如圖3所示。
圖3 3種算法的Snelson數(shù)據(jù)預(yù)測分布Fig.3 Predictive distributions for Snelson’s data of three algorithms
Snelson數(shù)據(jù)[21]包含200個(gè)訓(xùn)練數(shù)據(jù)和301個(gè)測試數(shù)據(jù)。利用基于高斯過程的回歸模型,學(xué)習(xí)訓(xùn)練數(shù)據(jù)與測試輸入數(shù)據(jù)之間的隱含規(guī)律,求解301個(gè)測試輸入數(shù)據(jù)對應(yīng)的輸出數(shù)據(jù)的預(yù)測分布。GP算法利用完整的200個(gè)訓(xùn)練數(shù)據(jù)去學(xué)習(xí)隱含規(guī)律,而SPGP和MCMC-SPGP算法中僅利用20個(gè)偽數(shù)據(jù)代替真實(shí)的200個(gè)訓(xùn)練數(shù)據(jù)。
圖3中藍(lán)線是預(yù)測分布的均值,兩條紅線是標(biāo)準(zhǔn)偏差,品紅色星號為真實(shí)的測試輸出值。注意,在圖3的圖3(b)和圖3(c)中,上方的紅色加號表示隨機(jī)初始偽輸入x軸位置信息,其y軸信息無物理意義。由圖3可知,3種算法都能獲得良好的回歸效果,驗(yàn)證了所提MCMC-SPGP算法的正確性。
為說明所提算法的優(yōu)越性,從均方根誤差和計(jì)算效率2個(gè)方面,對圖3做進(jìn)一步數(shù)據(jù)分析,分析結(jié)果見表2。
表2 3種算法的性能對比Table 2 Performance comparison of three algorithms
由表2可知,MCMC-SPGP算法的均方根誤差略高于GP和SPGP算法,但近似相等。在訓(xùn)練階段,GP和SPGP算法均采用共軛梯度方法優(yōu)化超參數(shù)等,GP算法的訓(xùn)練時(shí)間是0.489 1 s,SPGP算法的訓(xùn)練時(shí)間是0.879 7 s,因?yàn)镾PGP算法中還需要優(yōu)化偽輸入,因此其訓(xùn)練時(shí)間高于GP算法。所提MCMC-SPGP算法的訓(xùn)練時(shí)間為1.079 8 s,其優(yōu)化超參數(shù)、偽輸入的時(shí)間與MCMC算法中設(shè)置的打靶次數(shù)有關(guān),為保證良好的回歸效果,打靶次數(shù)設(shè)置為2 000次。在預(yù)測階段,GP算法的預(yù)測時(shí)間為0.008 4 s,SPGP和MCMC-SPGP算法的預(yù)測時(shí)間分別為0.000 8 s和0.000 7 s。稀疏偽輸入高斯過程的預(yù)測效率是標(biāo)準(zhǔn)高斯過程預(yù)測效率的10倍,進(jìn)一步說明了所提MCMC-SPGP算法在保證良好的回歸效果的同時(shí),也保證了較高的預(yù)測效率。
第1節(jié)給出了空間翻滾目標(biāo)的運(yùn)動模型,以此目標(biāo)為運(yùn)動預(yù)測的研究對象。目標(biāo)的轉(zhuǎn)動慣量為I=[50.3,0,0;0,105.18,0;0,0,105.97] kg·m2,目標(biāo)初始翻滾角速度為[-4,-2,-4](°)/s。所提基于機(jī)器學(xué)習(xí)的預(yù)測模型僅需要目標(biāo)歷史運(yùn)動的觀測數(shù)據(jù),作為學(xué)習(xí)算法的輸入數(shù)據(jù)。給定目標(biāo)的歷史運(yùn)動狀態(tài)數(shù)據(jù)(包括位置和姿態(tài),即[ri,qj]T,i=x,y,z,j=1,2,3,4),利用標(biāo)準(zhǔn)GP算法進(jìn)行目標(biāo)的運(yùn)動預(yù)測。
給定0~20 s內(nèi)的目標(biāo)運(yùn)動狀態(tài)數(shù)據(jù),采樣時(shí)間為0.1 s,則有201個(gè)訓(xùn)練數(shù)據(jù),利用標(biāo)準(zhǔn)GP算法預(yù)測后續(xù)20 s內(nèi)目標(biāo)的運(yùn)動狀態(tài),預(yù)測結(jié)果如圖4所示。
圖4的前2幅圖中,藍(lán)色曲線代表目標(biāo)位置和姿態(tài)的真實(shí)信息,綠色曲線代表GP算法預(yù)測分布的均值。由圖4可以看出,在20~40 s的測試階段,預(yù)測均值與真實(shí)數(shù)據(jù)幾乎吻合,位置預(yù)測誤差在毫米級別,姿態(tài)預(yù)測誤差不超過0.01。此外,由于高斯過程回歸模型滿足一致性條件[12],預(yù)測誤差隨預(yù)測時(shí)間逐漸增加,因此越遠(yuǎn)離訓(xùn)練數(shù)據(jù),其預(yù)測誤差越大。上述仿真結(jié)果說明GP算法對空間翻滾目標(biāo)的長期運(yùn)動預(yù)測效果良好。
圖4 利用GP算法的翻滾目標(biāo)運(yùn)動預(yù)測結(jié)果Fig.4 Simulation results by GP algorithm for motion prediction of tumbling target
與4.2節(jié)中所有仿真條件相同,本小節(jié)利用SPGP算法預(yù)測目標(biāo)的運(yùn)動狀態(tài)。在SPGP算法中,給定目標(biāo)歷史運(yùn)動觀測的201個(gè)數(shù)據(jù),基于極大化邊際似然函數(shù)原則,通過共軛梯度法優(yōu)化得到20個(gè)偽數(shù)據(jù)集,作為訓(xùn)練數(shù)據(jù)。預(yù)測結(jié)果如圖5所示。
圖5 利用SPGP算法的翻滾目標(biāo)運(yùn)動預(yù)測結(jié)果Fig.5 Simulation results by SPGP algorithm for motion prediction of tumbling target
圖5中,紅色加號表示隨機(jī)初始偽輸入x軸位置信息,其y軸信息無物理意義。圖5的前七幅圖中,藍(lán)色曲線代表目標(biāo)位置和姿態(tài)的真實(shí)信息,綠色曲線代表SPGP算法預(yù)測分布的均值。顯然,單純利用SPGP算法的預(yù)測效果較差,特別是對于目標(biāo)的位置預(yù)測,位置預(yù)測的最大誤差為0.6 m,姿態(tài)預(yù)測誤差達(dá)到了0.1。這是由于在訓(xùn)練過程中,利用共軛梯度法優(yōu)化偽輸入和超參數(shù)時(shí),對隨機(jī)初始猜想敏感,容易陷入局部極小解,從而導(dǎo)致SPGP算法在稀疏數(shù)據(jù)條件下,無法充分學(xué)習(xí)到訓(xùn)練數(shù)據(jù)與測試數(shù)據(jù)之間的潛在聯(lián)系。
與4.2節(jié)中所有仿真條件相同,本小節(jié)利用所提MCMC-SPGP算法預(yù)測目標(biāo)的運(yùn)動狀態(tài)。在MCMC-SPGP算法中,給定目標(biāo)歷史運(yùn)動觀測的201個(gè)數(shù)據(jù),基于極大化邊際似然函數(shù)原則,通過MCMC算法優(yōu)化得到20個(gè)偽數(shù)據(jù)集,作為訓(xùn)練數(shù)據(jù)。在MCMC優(yōu)化過程中,打靶次數(shù)設(shè)置為2 000次。預(yù)測結(jié)果如圖6所示。
圖6 利用MCMC-SPGP算法的翻滾目標(biāo)運(yùn)動預(yù)測結(jié)果Fig.6 Simulation results by MCMC-SPGP algorithm for motion prediction of tumbling target
由圖6可以看出,本文所提MCMC-SPGP算法對空間翻滾目標(biāo)的長期運(yùn)動預(yù)測效果良好。在20~40 s的測試階段,預(yù)測均值與真實(shí)數(shù)據(jù)基本吻合,位置預(yù)測誤差不超過0.02 m,姿態(tài)預(yù)測誤差不超過0.02。為說明所提算法的高效性,從訓(xùn)練時(shí)間和預(yù)測時(shí)間2個(gè)方面,對4.2節(jié)、4.3節(jié)和4.4節(jié)仿真算例做進(jìn)一步數(shù)據(jù)分析,分析結(jié)果見表3。
表3 3種算法的計(jì)算時(shí)間對比
由表3可知,在訓(xùn)練階段,GP和SPGP算法均采用共軛梯度方法進(jìn)行超參數(shù)等的優(yōu)化,訓(xùn)練時(shí)間分別為2.017 7 s、4.582 6 s。本文所提MCMC-SPGP算法的訓(xùn)練時(shí)間為0.932 4 s,明顯優(yōu)于GP和SPGP算法的訓(xùn)練時(shí)間。在預(yù)測階段,GP算法的預(yù)測時(shí)間為0.044 0 s,SPGP和MCMC-SPGP算法的預(yù)測時(shí)間分布為0.004 2 s和0.003 6 s。雖然SPGP算法預(yù)測效率較高,但預(yù)測效果不好。而本文所提MCMC-SPGP算法不僅顯著提高了預(yù)測效率,同時(shí)保證了良好的預(yù)測效果。
圖7的前3幅圖中,品紅色實(shí)心點(diǎn)代表含噪聲的訓(xùn)練數(shù)據(jù)。2條正紅色曲線代表標(biāo)準(zhǔn)偏差,灰色區(qū)域是置信度為95%的置信區(qū)間。藍(lán)色曲線代表目標(biāo)位置的真實(shí)信息,綠色曲線代表MCMC-SPGP算法預(yù)測分布的均值。由圖7可以看出,當(dāng)數(shù)據(jù)含有噪聲時(shí),所提算法的預(yù)測效果依舊良好,位置預(yù)測誤差不超過0.04 m,姿態(tài)預(yù)測誤差不超過0.05,且真實(shí)數(shù)據(jù)都落在置信區(qū)間內(nèi),驗(yàn)證了所提算法的魯棒性。顯然,隨著噪聲數(shù)量級的增大,預(yù)測效果會降低,很多文獻(xiàn)中也給出了更詳盡的應(yīng)對噪聲的處理方法[22],但這不是本文的重點(diǎn)研究內(nèi)容。
圖7 考慮噪聲利用MCMC-SPGP算法的 翻滾目標(biāo)運(yùn)動預(yù)測結(jié)果Fig.7 Simulation results by MCMC-SPGP algorithm with noise for motion prediction of tumbling target
本文提出了一種純數(shù)據(jù)驅(qū)動方式的空間翻滾目標(biāo)運(yùn)動預(yù)測方法,總結(jié)如下:
1) 基于監(jiān)督式機(jī)器學(xué)習(xí)領(lǐng)域中的稀疏偽輸入高斯過程回歸方法,給定目標(biāo)運(yùn)動的歷史觀測數(shù)據(jù),實(shí)現(xiàn)了對空間翻滾目標(biāo)運(yùn)動狀態(tài)的實(shí)時(shí)長期預(yù)測,且對數(shù)據(jù)噪聲具有一定的魯棒性。
2) 利用啟發(fā)式馬爾科夫鏈蒙特卡洛優(yōu)化方法,在訓(xùn)練過程中聯(lián)合優(yōu)化偽輸入和超參數(shù),解決了隨機(jī)初始猜想造成的敏感性問題,避免了稀疏偽輸入高斯過程回歸方法對于目標(biāo)長期運(yùn)動預(yù)測問題的過擬合現(xiàn)象,提高了目標(biāo)運(yùn)動預(yù)測的預(yù)測精度。
[21] GAO Y S. Github[EB/OL].(2013-11-13)[2020-04-27].http:11gitub.com/tyanshuaicao/gp_cholqr.