蘇曉慶,徐 工
(山東理工大學 建筑工程學院,山東 淄博 255000)
隨著海洋活動、導航定位和水下建筑物監測技術的發展,越來越迫切建立高精度的海底基準網,前提支撐條件是精確測定海底應答器的絕對位置[1]。國內外學者主要通過優化海洋動態控制網、改進水下框架網處理模型來提高水下應答器點的平面坐標,但對于水下應答器點高程位置仍有待改進[2]。將全球導航系統(global navigation satellite system,GNSS)和水聲測距安裝在多艘測量船,通過交匯雖然能夠確定基準網點的絕對坐標,但該方法尤其在深海中易受到聲速誤差的影響,精度較低且作業成本高[3]。利用船載換能器圍繞水下應答器實施走航式方法,確定應答器點絕對位置,在某程度可減緩深度帶來的測距誤差影響,提高應答器絕對位置的平面坐標,節約作業成本,然而在確定垂直解精度不高甚至不穩定[4,5]。
由GNSS浮標點與應答器之間的距離觀測方程為非線性方程,傳統方法是基于一階泰勒級數展開的線性化平差估計的近似理論,可是易受到線性化殘差、非線性強度和線性化初值的影響[6~8]。由于海平面近似共面且已知點和未知點垂直距離相差不遠,導致水下測距定位方程產生病態問題,會進一步降低線性化平差估計的有效性和精度。高斯牛頓算法在處理適定的GNSS偽距觀測方程時,具有較好的數值效果,但由于水下測距定位方程存在不適定性,高斯牛頓算法會由于設計矩陣而產生較強的不穩定特征,這也是致使水下應答器絕對位置坐標計算不穩定的主要原因,可通過考慮先驗深度約束的水下控制網點,或者采用非線性正則化算法,來克服水下應答器絕對位置不穩定的問題[9~11]。
水下應答器絕對位置計算過程中主要是由于矩陣取逆運算不穩定而致使迭代序列產生擾動,甚至導致高斯牛頓迭代算法解算失敗。可采用規避迭代矩陣求逆運算,來改善迭代序列的穩定性。因此,基于伴隨矩陣與逆矩陣的關系,導出了海底應答器定位的Landweber迭代算法,并對其進行了收斂性分析;然后,基于基于殘差最小準則給出了松弛參數確定公式;最后,通過水下定位實測數據,驗證該方法的有效性。
假設在海平面或水平面共布設n個GNSS浮標,通過精密單點定位技術,或者GNSS差分定位技術,來確定GNSS位置坐標,其GNSS浮標坐標的向量表達式為xi=[xi,yi,zi]T,觀測數據的向量表達式為L=[L1,L2,…,Ln]T,所對應的觀測誤差的向量表達式為ε=[ε1,ε2,…,εn]T。要求根據GNSS浮標點位置和觀測距離來確定海底應答器的幾何位置x=[x,y,z]T,應借助于非線性最小二乘進行求解,并且要求觀測數據和已知點坐標n≥4,即可列出水下測距定位方程的誤差方程為
V=d(x)-L
(1)
式中d(x)=[d1(x),d2(x),…di(x),…dn(x)]T,di(x)=‖xi-x‖2為應答器至GNSS浮標點的歐氏距離。由于水下測距定位方程為超定非線性方程,應借助無約束非線性最小二乘來求解,即,使其殘差在平方意義上取極小值
(2)
式中φ︰Rn|→R為非線性最小二乘目標函數,P為觀測權。運用無約束優化解法,非線性最小二乘解滿足下述正交條件
(3)
式中J(x)為Jacobian矩陣,正交條件方程是求解無約束化非線性最小二乘的重要方程,當處理殘差較小、非線性強度較弱的非線性模型時,可采用高斯牛頓法進行求解
(4)

Landweber L提出的Landweber迭代法是一類比較平穩的正則化數值算法,可用于處理非線性的不適定問題,對于觀測數據具有擾動情形下相對于Tikhonov正則化方法計算更穩定[13,14]。借鑒Landweber迭代算法最優化思想,導出了水下應答器絕對位置計算的Landweber迭代算法,該算法主要是通過伴隨矩陣與逆矩陣的關系,來避免設計矩陣求逆運算給數值解的影響,迭代公式為
(5)


(6)
式中I為單位矩陣。
殘差最小準則方法充分采用目標函數的導數信息和函數值信息,相比于傳統線搜索方法如黃金分割法和拋物線法具有一定優勢[15]。設第k+1次的擬合殘差為松弛因子的函數,即
minR(ω)=‖d(xk+1)-V(xk)‖2
=‖d(xk+ωkdxk)-V(xk)‖2
(7)
式中d(xk+1)為xk+1處的函數計算值,可將其在xk依據泰勒級數展開得
d(xk+1)≈d(xk)+J(xk)(xk+1-xk)
(8)


(9)
若要k+1次殘差最小,需滿足?R(ω)/?ω=0,考慮到迭代過程,則根據上式可得松弛因子的確定公式,即
(10)
根據殘差最小準則能夠自適應調整迭代步長,降低松弛參數對非線性數值算法收斂效率的影響,能夠在保證數值解穩定性前提下提高非線性數值算法的收斂效率。
采用南海觀測數據進行實驗,數據主要是測量船圍繞海底應答航行獲取,海底應答器大概在2 000 m左右,共采集了5圈數據。在其中1圈數據中,采集15個相鄰的觀測數據進行實驗。假設距離為等精度觀測,要求根據15個觀測數據來確定海底應答器的絕對位置。迭代終止條件為‖h(x)‖≤10-6,線性化初值為x0=[2 438 900,492 000,50]T。由于海平面近似共面,已知點與海底應答器近似共面,導致由水下觀測信息構成的測距定位方程依據泰勒級數線性化設計矩陣產生了不適定問題。經計算線性化設計矩陣條件數為cond(N)=1.27×107,這表明水下測距定位方程組具有嚴重的病態性。
圖1給出了截斷的部分Gauss-Newton和Landweber迭代法的點位迭代序列圖。圖1中,深色和淺色分別表示高斯牛頓算法和Landweber迭代算法,圖1中橫軸表示迭代次數,縱軸表示X、Y、Z三個方向的點位迭代序列值。由圖1可知,高斯牛頓法在各個方向產生了較強的不穩定特征,這主要是由于水下測距方程線性化后方程組設計矩陣具有病態性,導致高斯牛頓算法在矩陣求逆過程中由于數據誤差擾動而產生較強烈的不穩定特征。Landweber迭代算法在各個方向具有較好的數值穩定性,這是由于該算法基于伴隨矩陣與逆矩陣的關系來避免了法矩陣的求逆運算。

圖1 Gauss-Newton和Landweber部分點位迭代序列
表1給出線性化平差估計、高斯牛頓算法和Landweber的解算結果,由表1可知,線性化平差估計由于觀測態性和線性化初值的影響,解算不穩定且誤差較大。高斯牛頓算法收斂效率要比Landweber迭代算法快,但由圖1可發現,高斯牛頓算法由于觀測態性和數據誤差的影響;點位迭代序列及其不穩定。Landweber迭代算法通過避免設計矩陣求逆能夠解決水下測距定位方程的不適定問題,但實質為最速下降法,具有較低的收斂效率。

表1 不同方法的數值解算結果
為了進一步測試三種數值算法的收斂性,在不改變線性化初值的情況下,選擇兩圈數據進行實驗,分別標注為Ship01和Ship02。在Ship01和Ship02中隨機選取15個相鄰的數據運行100次進行測試,假設迭代次數大于1 001次時非線性數值算法無法收斂,如圖2所示。

圖2 不同非線性數值算法運行100次的測試結果
由圖2可知,在測試過程中,高斯牛頓算法對于不同觀測數據,求逆過程中所受到的不同觀測誤差擾動影響,直接影響了高斯牛頓算法的收斂性,經計算2圈觀測數據,高斯牛頓算法的最高失效率達到了32 %。對于相同的數據,Landweber迭代算法具有較好的收斂性。
圖3給定初值(2 400 000,490 000,50)時,兩種數值算法的運行100次的測試結果,由圖3可知,高斯牛頓迭代算法由于方程組態性和線性化初值的影響,失效率分別達到了95 %和87 %,表明水下應答器絕對位置計算過程中建議最好不要采用高斯牛頓算法。Landweber迭代算法仍然表現出較好的收斂性,其主要原因是,Landweber迭代算法實質為最速下降法,對初值具有較低的依賴性,而且通過避免矩陣求逆,解決了水下測距定位方程由于空間幾何構型布設產生的不適定問題。

圖3 改變初始條件不同非線性數值算法的測試結果
由于海平面近似共面且已知點和未知點垂直距離相差不遠,導致水下測距定位方程產生病態問題,傳統線性化平差估計易受到線性化初值和模型態性的影響,估計解不穩定且誤差較大。高斯牛頓算法,設計矩陣求逆過程由于方程組態性、線性化初值和觀測誤差擾動而產生強烈的不穩定,甚至無法收斂。為制約由于水下定位網結構引起的病態問題對參數估計解的影響,可通過避免迭代矩陣求逆運算來提高數值解的穩定性。以水下距離觀測非線性平差模型為基礎,導出了海底應答器計算的Landweber迭代法并對其進行了收斂性分析。基于殘差最小準則,給出了一種確定松弛參數的計算方法。該算法及其改進通過矩陣運算關系,規避了迭代矩陣的求逆運算,改善或緩解了水下測距定位方程的病態性,提高了數值解穩定性。最后經實驗驗證,該算法明顯提高了線性化平差估計解的精度,相對于高斯牛頓法具有較高的數值穩定性。