鄒龍寬,李英祥
(1.成都信息工程大學(xué) 通信工程學(xué)院, 成都 610225)
LAMBDA算法(最小二乘模糊度去相關(guān)算法)被廣泛應(yīng)用于GPS載波相位差分的整周模糊度解算過程中。載波相位差分解算大致分為3個(gè)過程[1]:①使用普通最小二乘估計(jì)法求出整周模糊度的浮點(diǎn)解及其協(xié)方差矩陣;②使用整數(shù)最小二乘估計(jì)法求整周模糊度固定解;③求解基線固定解。由于在原始浮點(diǎn)解及其協(xié)方差矩陣的基礎(chǔ)上,用整數(shù)最小二乘估計(jì)法得出整數(shù)解時(shí),整數(shù)解相關(guān)性大,其搜索空間狹長,搜索效率比較化[2],因此在第二步的過程中,在求出固定解之前,使用Z變換對(duì)其進(jìn)行去相關(guān),去相關(guān)后的模糊度搜索空間形狀更規(guī)范[3],在超維情況下,搜索效率也將大大提高[4]。
本文簡要介紹了LAMBDA算法的基本原理,包括搜索過程及常數(shù)X2的選擇;在文章最后,對(duì)搜索空間進(jìn)行了可視化仿真實(shí)驗(yàn)。在此實(shí)驗(yàn)的基礎(chǔ)上,對(duì)二維情況下Z變換前后搜索空間及相關(guān)整數(shù)點(diǎn)進(jìn)行分析。實(shí)驗(yàn)表明,Z變換后的整周搜索空間更規(guī)范,相關(guān)整數(shù)點(diǎn)更少。綜上所述,本文針對(duì)搜索空間的可視化仿真實(shí)驗(yàn),使得Z變換的效果更直觀。
在GPS載波相位測量中,雙差觀測方程的線性化形式可表示為[4]:
式中,若觀測的衛(wèi)星數(shù)為N,則y表示載波相位的雙差觀測值矢量;a為N-1維列向量,表示兩衛(wèi)星間的雙差整周模糊度,為N-1維列向量;b表示與基站構(gòu)成的基線矢量矩陣,其維度為(N-1)×3;A是雙差整周模糊度矩陣的系數(shù),其值為-1;B為原觀測方程在線性化的過程中衍生的微分項(xiàng)矩陣,其維度為(N-1)×3;e表示觀測過程中的噪聲。運(yùn)用普通最小二乘法對(duì)(1)式求解可得出a、b的浮點(diǎn)解及其協(xié)方差矩陣如式(2)所示:
得出浮點(diǎn)解及協(xié)方差矩陣后,進(jìn)行如式(3)的整周模糊度求解:
式中,屬于N-1維整數(shù)空間,其搜索空間是一個(gè)以a為中心的N-1維超橢球體,而搜索效率與橢球體的形狀和尺寸(X)有很大的聯(lián)系。而由浮點(diǎn)解及其構(gòu)成的協(xié)方差矩陣相關(guān)性大,其構(gòu)成的搜索空間形狀狹長,搜索效率低,基于此,在對(duì)它進(jìn)行整周模糊度解算前,對(duì)浮點(diǎn)解及其協(xié)方差矩陣進(jìn)行Z變化,以使搜索空間較為規(guī)范,Z變換的轉(zhuǎn)換公式如式(4)所示[1]:
式中,變換矩陣Z滿足以下4個(gè)條件[4]:
1)模糊度變換矩陣中的元素為整數(shù);
2)變換前后的模糊度體積保持不變(網(wǎng)格點(diǎn));
3)變換后的模糊度方程之間的乘積減少;
4)變化后的協(xié)方差矩陣相關(guān)性減少。
基于以上4個(gè)條件,通過一系列的高斯變換和置換過程構(gòu)建Z變換矩陣后,式(3)的整數(shù)搜索變換經(jīng)過式(4)變換得到式(5)所示的搜索:
將模糊度協(xié)方差陣分解:
式中,L為對(duì)角線元素為1的下三角矩陣;D為對(duì)角矩陣,它們可從的Cholesky分解因子得出。若Z等于L-1,則下式成立:
在形式上,雖然式(5)與式(3)相似,但從(7)式可以看出,經(jīng)過Z變換后的協(xié)方差矩陣Qz^近似等同于對(duì)角矩陣,其在空間上的形狀更規(guī)范。
由式(7)可將(5)展開得到以下式子:
可看出,式(8)構(gòu)成的搜索空間是一個(gè)n維的超橢球空間,它以N-1維向量z為中心,常數(shù)X2決定橢球的大小。LAMBDA算法將在該橢球體內(nèi)搜索所有可能構(gòu)成的整數(shù)解。
顯然,符合式(8)條件的zi也符合式(9):
由式(9)可以看出,zi的左右兩邊構(gòu)成第i維的搜索空間,在此搜索空間內(nèi)按整數(shù)從大到小開始搜索,每次只驗(yàn)證一個(gè)整數(shù)。如果當(dāng)次搜索,第i維空間的整數(shù)值確定,則可按照同樣方法搜索第i-1維中的整數(shù);否則搜索第i+1維中的整數(shù),而后再在第i維空間換一個(gè)整數(shù)繼續(xù)搜索[5]。經(jīng)歷上述的搜索過程后,如果在第1維空間中搜索到了相關(guān)整數(shù),則可確定一個(gè)整周模糊度的矢量解。如果為了提高搜索精度,需要p個(gè)整周模糊度的矢量解,按照上述過程迭代搜索p次即可。
χ2決定了超橢球空間的大小,它是一個(gè)常數(shù),決定了搜索效率的大小。合理選擇χ2的值可以避免搜索空間過大導(dǎo)致的搜索效率低以及搜索空間過小而造成的搜索失真等情況的發(fā)生[6]。在LAMBDA算法的搜索過程中,χ2的選取與整周模糊度度解的候選個(gè)數(shù)有關(guān),通常可以通過計(jì)算超橢球空間的容積的方法來選取χ2, 在一個(gè)超橢球空間中,其容積[6]如下所示:
在式(10)中,Vn表示單位超球體的容積,可以通過迭代的方式求得。而表示方差陣的行列式。在搜索過程中,候選整周模糊度與容積之間的關(guān)系如下式[5]:
式(11)中,[*]表示不超過*的最大整數(shù)。根據(jù)(9)、(10)兩式即可確定X2。此外,根據(jù)候選數(shù)與容積之間的關(guān)系,可確定橢球搜索環(huán)的大小,從而提高整周模糊度的解算效率。
在本文前面幾節(jié)的內(nèi)容中提到,Z變換前的搜索空間狹長,而Z變換后的搜索空間比較規(guī)范。由于三維(及以上)情況下,數(shù)據(jù)量大,且仿真效果不明顯,因此下面就在二維情況下,通過Matlab構(gòu)建二維圖像說明Z變換的實(shí)際意義。
由于Matlab提供了很多的繪圖工具包,其仿真效果比較好,因此整個(gè)可視化仿真實(shí)驗(yàn)在Matlab平臺(tái)下完成。
RTKLIB是東京海洋大學(xué)的高須知二教授開發(fā)的一款精密定位開源軟件包[7,8]。由于其定位精度較高、實(shí)用性好等特點(diǎn),在本次實(shí)驗(yàn)中,采用該該軟件包提供的Z變換算法程序。但軟件包并沒有獨(dú)立的Z變換程序文件,因此在本次仿真實(shí)驗(yàn)中筆者從RTKLIB的源文件提取Z變換程序,重新定義頭文件,并在Visual studio 2013下將其編譯成.dll 的動(dòng)態(tài)庫文件。將上述的頭文件及.dll文件導(dǎo)入項(xiàng)目文件目錄,并在相關(guān)的.m文件中加載。
在Matlab中,隨機(jī)構(gòu)造一個(gè)浮點(diǎn)解向量及其協(xié)方差矩陣,將得到的浮點(diǎn)解和協(xié)方差矩陣代入式(3),并畫出如圖1所示的整周模糊度的搜索空間示意圖。
圖1 Z變換前搜索空間示意
橢圓區(qū)域是由x、y軸構(gòu)成的Z變換之前的整周解的二維搜索空間。從圖中可以看出,這個(gè)搜索空間形狀不規(guī)范,長半軸狹長、短半軸相對(duì)較短,橢圓端點(diǎn)的切線與坐標(biāo)軸不平行。而對(duì)于橢圓區(qū)域內(nèi)的整數(shù)點(diǎn),如圖1所示的實(shí)心點(diǎn),在二維空間的分布不均勻,即單位空間內(nèi)整數(shù)點(diǎn)的分布不均勻。為了提高整周模糊度解的精度,避免周跳[9]等誤差現(xiàn)象的產(chǎn)生,需要把橢圓內(nèi)候選整數(shù)點(diǎn)附近的整數(shù)點(diǎn)考慮到搜索范圍內(nèi),如圖中的‘×’點(diǎn)所示。由于受到搜索空間相關(guān)性較大、搜索區(qū)域形狀等因素影響,這些相關(guān)點(diǎn)較多,當(dāng)在超維情況下,這些點(diǎn)在很大程度上將影響整周模糊度的搜索解算效率[6]。
調(diào)用上述動(dòng)態(tài)庫中的相關(guān)函數(shù)解出對(duì)應(yīng)的Z變換矩陣及條件方差矩陣D,將Z代入(5)式得出z,將得到的z和D代入(7)式,并畫出如圖2所示的整周模糊度解的搜索空間。
圖2 Z變換后的搜索空間示意
如圖2所示,橢圓區(qū)域是由x和y軸構(gòu)成的Z變換之后的整周解的二維搜索空間。從圖2與圖1的對(duì)比結(jié)果來看,圖2的整周搜索區(qū)域更規(guī)范,即橢圓頂點(diǎn)上的切線與坐標(biāo)軸平行,單位空間內(nèi)的整數(shù)點(diǎn)如圖2中橢圓內(nèi)實(shí)心點(diǎn)所示,在x、y軸二維空間內(nèi)分布更均勻。而為了避免周跳等現(xiàn)象額外納入搜索范圍的點(diǎn),如圖2中的‘×’點(diǎn),對(duì)比去相關(guān)前的橢圓外整數(shù)點(diǎn)減少了很多,在超維情況下,非相關(guān)整數(shù)點(diǎn)相應(yīng)地減少就更多了。
綜上,在對(duì)浮點(diǎn)解進(jìn)行整周模糊度搜索之前,利用Z變化對(duì)浮點(diǎn)解的協(xié)方差矩陣進(jìn)行去相關(guān)操作,雖然程序上及步驟上多了一些操作,但是在解算搜索效率上,由于去相關(guān)操作規(guī)范了整周模糊度解的搜索空間,減少了相關(guān)整數(shù)點(diǎn),從而減少了整體整數(shù)解算迭代次數(shù),提高了解算效率,降低了搜索時(shí)間。
LAMBDA算法的提出對(duì)于GPS雙差整周模糊度的解算有很大的意義。而LAMBDA算法的核心過程是:利用Z變換對(duì)浮點(diǎn)解去相關(guān),規(guī)范超橢球體形狀,減少與橢球體內(nèi)整數(shù)點(diǎn)相關(guān)的整數(shù)點(diǎn)以提高整周模糊的搜索效率。
從MATLAB算法的可視化仿真圖形可以看出,Z變換前后的搜索空間在搜索形狀上相差較大。當(dāng)上升到超維情況時(shí),Z變換前的相關(guān)整數(shù)點(diǎn)將更多,此時(shí)對(duì)原始浮點(diǎn)解進(jìn)行Z變換將大大減少相關(guān)整數(shù)點(diǎn),減少迭代次數(shù),提高搜索效率。